- •6.1. Основні властивості задач динамічного програмування та недоліки методу
- •6.2. Загальна математична модель
- •6.3. Розв’язування дискретних задач
- •Рекурентне співвідношення
- •6.3.2. Таблиця оптимальних розв’язків
- •6.3.3. Приклад
- •6.4. Випадок двосторонніх обмежень на змінні
- •6.5. Задачі з багатьма видами ресурсів
- •6.6. Неперервні моделі
- •6.7. Задача управління запасами
- •Висновки
- •Контрольні запитання
- •7.1. Класифікація задач дискретного програмування
- •7.2. Лінійні цілочислові задачі
- •7.2.1. Метод відтинання. Додаткове обмеження
- •7.2.2. Перший алгоритм Гоморі
- •Приклад
- •7.3. Задачі з бульовими змінними
- •7.3.1. Задача про призначення
- •7.3.2. Угорський метод
- •7.3.3. Приклад
- •7.3.4. Задача про кільцевий маршрут
- •Метод розгалужень і меж
- •Початкова матриця
- •7.3.6. Приклад
- •Висновки
- •Контрольні запитання
7.3.4. Задача про кільцевий маршрут
Зміст
задачі про кільцевий маршрут: треба
обійти т
точок, у кожній з яких необхідно побувати
тільки один раз; маршрут має бути
кільцевим. Витрати на перехід від і-ї
до
-ї
точки відомі і дорівнюють величинам
.
Знайти кільцевий маршрут з мінімальними
сумарними витратами.
До цієї задачі можна звести задачі оптимального використання транспортних засобів (наприклад, бензозаправник, молокорозвізник та інше), знаходження послідовності обробки деталей верстатами, обробка замовлень агрегатами (чи цехами) з точки зору мінімізації простоїв агрегатів за причиною їх переналагодження та інші задачі повного обходу множини точок.
Якщо
згідно з вимогами перехід від і-ї
до
-ї
точки неможливий (тобто
має
місце заборона
-зв’язку)
то відповідне значення
.
Математична модель задачі про кільцевий маршрут наступна:
цільова функція
,
о
бмеження
– умова тільки одного входу та одного виходу з
точки;
– умова
тільки двох станів змінних: 0 та 1;
– умова
виключення петель з маршруту;
маршрут у вигляді замкнутого контуру.
За нашого часу найефективнішим методом розв’язування задачі є метод розгалужень і меж, який подалі розглядається.
Цей метод передбачає знаходження оптимального варіанта за кілька етапів, причому на кожному етапі ведеться оцінка означеної множини допустимих варіантів, з яких визначають найперспективніші. Таке зменшення кількості допустимих варіантів дозволяє уникнути повного перебору варіантів.
Метод розгалужень і меж включає наступні етапи розв’язування:
знаходження нижньої оцінки цільової функції для множини допустимих варіантів;
складання можливих варіантів розгалужень пошуків кільцевих маршрутів;
знаходження оцінок знайдених розгалужень маршрутів і вибір з них перспективного напрямку пошуку;
складання продовження розгалуження перспективного напрямку допустимих варіантів;
вибір оптимального варіанта кільцевого маршруту.
Вперше цей метод був застосований у 1960 р. до задач цілочислового програмування, у 1963 р. – відповідно до задачі кільцевого маршруту.
Метод розгалужень і меж
Цей метод ґрунтується на твердженні, що оптимальний план задачі про кільцевий маршрут з початковою матрицею збігається з оптимальним планом задачі для повністю зведеної матриці.
Розв’язування задачі методом розгалужень і меж здійснюється у такій послідовності (блок-схема показана на рис. 7.5).
Знаходження повністю зведеної матриці. Для цього у кожному і-му рядку початкової матриці вибирається мінімальний елемент
і знаходяться нові значення
,
потім у одержаній матриці вибирається мінімальний елемент у кожній -й колонці і знаходяться нові значення
.
Наслідком такого перетворення є повністю зведена матриця , в якій у кожній -й колонці та кожному і-му рядку є хоча б один нульовий елемент. Для цієї матриці знаходиться величина
,
яка є нижньою межею значення цільової функції усіх допустимих варіантів кільцевих маршрутів.
Побудова напрямків, які належить оцінити згідно із значенням нижньої межі цільової функції. З цією метою для кожного елемента
