
- •Пояснювальна записка
- •Вступление
- •II Для заданного графа знайти
- •III Минимизация логической функции
- •IV Выполнение синтеза конечного автомата по заданной совмещенной таблице перехода-выхода
- •V Составить программу: Минимизация логических выражений аналитическим методом Выводы
- •Список використаної літератури
- •Пояснювальна записка
- •2013 Зміст
- •Розв’язок поставленої задачі
- •1.2. Використання метода Форда-Фалкерсона для обчислення максимальної пропускної здатності.
- •1.3. Мережеве планування
- •Розв’язок поставленої задачі
- •2.1. Мінімізація логічних функцій.
- •Розв’язок поставленої задачі
- •2.2. Синтез скінченного автомату.
- •Розв’язок поставленої задачі
- •3.1. Представлення оператора case за допомогою кв-граматики
- •Розв’язок поставленої задачі
- •Висновки
- •Список використаної літератури
Розв’язок поставленої задачі
Крок 1.
Покладемо
в
і зафарбуємо вершину 0
d (1) =∞;
d (2) = ∞;
d (3) = ∞;
d (4) = ∞;
d (5) = ∞;
d (Z) = ∞;
Крок 2.
Поточна
змінна
d
(1) = min
{d
(1), +
C
(0, 1)} = min
{∞, 0+9} = 9;
d
(2) = min
{d
(2), +
C
(0, 2)} = min
{∞, 0+∞} = ∞;
d (3)=
min {d(3),
+ С(0, 3)} = min {;
0+∞} = ∞;
d (4)=
min {d(4),+
С(0, 4)} = min {;
0+8} = 8;
d (5)=
min {d(5),+
С(0, 5)} = min {;
0+∞} = ∞;
d (Z)=
min {d(Z),+
С(0, Z)}
= min {;
0+∞} = ∞;
min {d(1), d(2), d(3), d(4), d(5), d(Z)}=min {9, ∞, ∞, 8, ∞, ∞,}=8. Фарбуємо вершину 4.
Крок 3.
Поточна
змінна
.
d
(1)=min
{d(1),
+C
(4,1)}=min
{9,8+∞}=9;
d
(2)=min
{d(2),
+C
(4,2)}=min
{∞,8+∞}=∞;
d
(3)=min
{d(3),
+C
(4,3)}=min
{∞,8+8}=16;
d
(5)=min {d(5),
+
С (4,5)}=min {;8+8}=16;
d (Z)=min
{d(Z),
+
С (4,Z)}=min
{;8+∞}=∞;
min {d(1), d(2), d(3), d(5), d(Z)}=min {9,∞,16,16,∞}=9.
Фарбуємо вершину 1.
Крок 4.
Поточна
змінна
.
d
(2)=min
{d(2),
+C
(1,2)}=min
{∞,9+6}=15;
d
(3)=min
{d(3),
+C
(1,3)}=min
{16,9+4}=13;
d
(5)=min {d(5),
+
С (1,5)}=min {16;9+∞}=16;
d (Z)=min
{d(Z),
+
С (1,Z)}=min
{;9+∞}=∞;
min {d(2), d(3), d(5), d(Z)}=min {15,13,16,∞}=13.
Фарбуємо вершину 3.
Крок 5.
Поточна
змінна
.
d
(2)=min
{d
(2), +
C
(3,2)}=min
{15,13+7}=15;
d
(5)=min {d (5), +
С (3,5)}=min {16;13+4}=16;
d (Z)=min
{d (Z),
+
С (3,Z)}=min
{;13+∞}=∞;
min {d (2), d (5), d (Z)}=min {15,16,∞}=15.
Фарбуємо вершину 2.
Крок 6.
Поточна
змінна
.
d
(5)=min {d (5), +
С (2,5)}=min {16;15+∞}=16;
d (Z)=min
{d (Z),
+
С (2,Z)}=min
{;15+3}=18;
min {d (5), d (Z)}=min {16,18}=16.
Фарбуємо стік.
Крок 7.
Знайдемо
найкоротший шлях графу за формулою
С
(2,Z)==18-15=3;
С (1,2)=
=15-9=6;
С
(3,2)==15-13=2
– не задовольняє умові;
С
(0,1)==9-0=9;
Висновок: Найкоротший шлях є єдиним: 0-1-2-Z. Він дорівнює 16 одиницям.
1.2. Використання метода Форда-Фалкерсона для обчислення максимальної пропускної здатності.
Теорема про максимальну пропускну спроможність мережі сформульована Фордом і Фалкерсоном так: максимальний розмір потоку Rmax через мережу S дорівнює мінімальній пропускній спроможності cmin її простих перетинів. Ця теорема покладена в основу задачі визначення максимальної пропускної спроможності мережі.
Короткі теоретичні відомості
Нехай S є довільна, частково орієнтована мережа, кожному ребру u якої приписано невід’ємне число c(u) – пропускна спроможність.
Потоком у мережі S називається пара (f,w), де w – деяка орієнтація всіх неорієнтованих ребер мережі, а f(u)- задана на множині всіх ребер функція з невід’ємними значеннями, що не перевищують пропускних спроможностей, і така, що у кожній внутрішній вершині α виконується закон Кірхгофа, відповідно до якого сума значень потоку по ребрах, що входить у вершину, дорівнює сумі потоків по ребрах, що виходить із вершини.
0 f(u) c(u) для усіх вершин мережі;
R()
= 0 для усіх внутрішніх вершин, де
а () (відповідно '()) - множина всіх ребер, що виходять із (відповідно вхідних у ) при орієнтації w.
Оскільки
сума значень R()
по усіх вершинах мережі, включаючи
полюси, дорівнює нулю (кожне ребро є
вихідним для однієї вершини і вхідним
для іншої), то
.
Значення
називаєтьсявеличиною
потоку.
Перетином мережі називається множина ребер, при видаленні яких мережа стає незв’язною, причому полюса попадають у різні компоненти зв’язності.
Перетин називається простим, якщо при видаленні будь-якого ребра, він перестає бути перетином. Для кожного ребра простого перетину можна зазначити ланцюг, що проходить через це ребро, але не проходить через інші ребра даного перетину.
Якщо у
зв’язній
мережі віддалиться простий перетин,то
мережа розпадеться рівно на дві частини:
ліву та праву,що містить
і
відповідно. Кожне ребро простого перетину
зв’язує
вершини з різних частин.
Ребро перетину називається прямим, якщо воно в мережі не орієнтоване, або орієнтоване зліва праворуч, у противному випадку воно називається оберненим. Буде орієнтоване ребро прямим чи оберненим, залежить від вибору перетину.
Опис алгоритму Форда-Фалкерсона
Крок №1. Всі дуги задані в інженерній мережі позначаються, як невикористанні (I)
Крок № 2. Рухаючись зліва направо, від джерела до стоку, зверху донизу, від одного маршруту до наступного вибирається поточний маршрут і фіксуються пропускні спроможності вхідних до нього дуг, з яких вибираються мінімальні. Застосовується віднімання мінімальної пропускної спроможності з пропускних спроможностей всіх інших дуг цього маршруту. Якщо в результаті отримаємо довжину дуги, яка дорівнює 0, вона буде позначатися, як цілком використана (R). При невід’ємних числах IR – частково використана.
Крок №3. Якщо всі маршрути з джерела в стік переглянуті, то виконується розрахунок максимального потока шляхом підсумовування мінімальних пропускних спроможностей, отриманих для кожного маршруту.
Розв’язок поставленої задачі
Надалі для обчислення максимальної величини потоку заданого графа використовуватимуться наступні позначки:
І — ресурси не використані;
IR — ресурси використані частково;
R — ресурси використані у повному обсязі.
Крок 1. Оберемо один із довільних маршрутів. Наприклад, цей маршрут складається з дуг (0,1),(1,2),(2,Z).
Отримаємо дугу (2,Z), на якій ресурси використанні повністю і подальше використання якої неможливе у знаходженні максимального потоку заданого графа.
Крок 2. Оберемо інший довільний маршрут. Нехай він складається з дуг (0,1),(1,3),(3,5),(5,Z).
.
Отже,отримаємо дві дуги (1,3) та (3,5), на яких ресурси повністю використанні, і їх подальше використання неможливе у пошуку максимального потоку заданого графа.
Крок 3. Оберемо наступний маршрут. Припустимо,що він складається з ребер (0,1), (1,4),(4,5),(5,Z).
.
Отже, отримаємо дугу (0,1), ресурси якої повністю використанні, і її подальше використання неможливе у пошуку максимального потоку заданого графа.
Крок 4. Оберемо наступний довільний маршрут. Наприклад, цей маршрут складається з дуг (0,4),(4,5),(5,Z).
.
Отже, отримаємо дугу (4,5), ресурси якої повністю використанні.
Таким чином, більше немає маршрутів від джерела до стоку.
Висновок: максимальна величина потоку заданого графа дорівнює 15 одиницям.