
- •8.1. Основні поняття теорії графів
- •8.2. Засоби завдання графів. Зважені графи та мережі
- •8.3. Потоки на мережах. Поняття розрізу
- •8.4. Задача про максимальний потік
- •Загальна постановка
- •8.4.2. Алгоритм Форда-Фалкерсона
- •8.4.3 Приклад
- •8.5. Задача про найкоротшу відстань
- •8.5.1. Загальна постановка
- •8.5.2. Алгоритм розв’язування
- •8.5.3. Приклад
- •8.6. Транспортна задача у сітьовій постановці
- •Висновки
- •Контрольні запитання
- •9.1. Властивості нелінійних задач
- •9.2. Деякі поняття та визначення
- •9.3. Задачі опуклого програмування
- •9.4. Аналіз цільової функції на екстремум
- •9.5. Алгоритми розв’язку найпростіших нелінійних задач
- •9.5.1 Метод множників Лагранжа
- •9.5.2. Градієнтні методи
- •Висновки
- •Контрольні запитання
- •Список літератури
- •Основні поняття теорії графів.....................................................193
8.5. Задача про найкоротшу відстань
8.5.1. Загальна постановка
Задача про найкоротшу відстань є типовою транспортною задачею у сітьовій постановці. Вона об’єднує не тільки клас транспортних задач, до неї можна звести низку прикладних виробничих задач:
про заміну обладнання;
знаходження найнадійнішого маршруту;
про мінімізацію аварійних ситуацій;
проектування та ін.
Щоб розв’язати задачу у сітьовій постановці треба знайти топологію мережі та величини пропускних спроможностей .
У термінах задачі лінійного програмування математична модель цієї задачі має такий вигляд:
цільова функція
обмеження
(початковий пункт),
(кінцевий пункт),
для
та
.
Таку модель можна розвязувати симплекс-методом, але для сітьових задач розроблено простіші методи розв’язування, тому недоцільно для таких задач використовувати симплекс-метод.
8.5.2. Алгоритм розв’язування
Обчислювальна процедура розвязування задачі розглядається для мережі без циклів і з однією початковою та кінцевою вершиною.
Заздалегідь всі вершини І графа G мають бути упорядковані, тобто пронумеровані згідно з напрямком дуг зліва направо.
Кожна дуга повинна
мати оцінку
– відстань
від і-ї
до
j-ї
вершини.
Алгоритм знаходження найкоротшої відстані від до такий.
Розбити множини вершин І на дві підмножини . Первісно у множину
входить тільки одна вершина: і = 1, тобто джерело .
Вибір вершини
з
і знаходження оцінки
Закріплення за -ю вершиною оцінки
.
Переведення -ї вершини з підмножини
у підмножину та привласнення їй наступного номера і.
Перехід до наступної вершини
.
Перевірка, чи всі вершини переглянуто, тобто, чи дійшов процес розв’язування до кінцевої вершини . Якщо так, то перехід до п.7, якщо ні, то перехід до п.2.
Знаходження найкоротшої відстані
та будування найкоротшого шляху
.
Блок-схема алгоритму наведена на рис. 8.9.
8.5.3. Приклад
Знайти найкоротшу відстань для мережі, зображеної на рис.8.10.
2
6 7
2 5
2 4 1 5
1 6 3 7 6 11
0 6
8 1 4
4 7
Рис.8.10
Кожна
дуга має оцінку
.
Закріплення оцінки
за
Включення
=
Рис.8.9
Приймаємо
для початкової вершини
Тоді
.
Відстань
шляху
.
Шлях (1, 3, 4, 6).