Лекция 15 Обобщенные задачи коммивояжера и связь с задачей на разрыв контуров.pptx
- Количество слайдов: 23
Лекция 15 ОБОБЩЕННЫЕ ЗАДАЧИ КОММИВОЯЖЕРА И ПЛАНАРНЫЕ ГРАФЫ
СОДЕРЖАНИЕ 1. Обобщенные задачи коммивояжера и их решение перебором. 2. Связь обобщенной задачи коммивояжера и задачи о максимальной циркуляции. 2
ЧАСТЬ 1 ОБОБЩЕННЫЕ ЗАДАЧИ КОММИВОЯЖЕРА 3
Содержательные постановки обобщенных задач коммивояжера 1. Разомкнутая постановка задачи: коммивояжер должен объехать заданное подмножество городов, затратив минимум средств на путешествие либо минимум средств на максимальный переход. 2. Замкнутая постановка задачи: коммивояжер должен объехать заданное подмножество городов вернуться в город из которого стартовал, затратив минимум средств на путешествие либо минимум средств на максимальный переход. 4
Основные отличия от «классических» постановок 1. К посещению коммивояжером обязательны только вершины заданного подмножества. 2. Отсутствует ограничение на число посещений каждой вершины. 5
Графовая интерпретация «классической» замкнутой задачи коммивояжера 2 3 1 7 4 6 5 Гамильтонов контур а 1=1, 2, 3, 4, 7, 5, 6, 1 -. Гамильтонов контур а 2=5, 3, 4, 6, 1, 2, 7, 5 -. 6
Графовая интерпретация обобщенной замкнутой задачи коммивояжера Подмножество «обязательных» вершин : {1, 2, 4}. 3 2 4 1 5 Исходный граф – полный, на рисунке показаны только возможные решения Возможные решения: «желтый» , «красный» или «зеленый» контуры (последний – сложный контур). 7
Обозначения и определения 8
Формальная постановка «классической» аддитивной замкнутой задачи коммивояжера 9
Формальная постановка обобщенной аддитивной замкнутой задачи коммивояжера 10
Решение обобщенной замкнутой задачи коммивояжера перебором (обязательными являются вершины 1, 2, 3. ) 12 1 1 5 2 9 4 1 3 10 4 2 0 0 0 1 1 1 ∞ 0 0 0 1 1 0 1 ∞ 0 0 0 1 1 1 0 ∞ 0 0 0 1 1 ∞ - - - - - 0 12 0 0 3 2, 3 3, 1 1, 3 4, 3 3, 4 4, 1 1, 4 2, 1 1, 2 R - 2 3, 2 0 0 0 1 1 1 16 - - - - - 0 0 0 1 1 20 0 0 1 1 25 11
САМОСТОЯТЕЛЬНО На орграфе G(X, U), заданном матрицей М, решить замкнутую обобщенную задачу коммивояжера при условии, что «обязательными» являются все вершины множества Х. М 0 1 0 2 0 0 3 0 0 10 0 0 4 5 0 0 12
Графовая интерпретация «классической» разомкнутой задачи коммивояжера Стартовая вершина первого пути. 2 3 1 7 4 6 L 1=1, 2, 3, 4, 7, 5, 6 -. L 2=5, 3, 4, 6, 1, 2, 7 -. 5 Стартовая вершина второго пути. 13
Формальная постановка «классической» аддитивной разомкнутой задачи коммивояжера 14
Графовая интерпретация обобщенной разомкнутой задачи коммивояжера Подмножество «обязательных» вершин : {1, 2, 4}, стартовая вершина – « 1» , терминальная – « 4» . 3 2 4 1 5 Исходный граф – полный, на рисунке показаны только возможные решения Возможные решения: «желтый» , «красный» или «зеленый» пути (последний – сложный путь). 15
Формальная постановка «обобщенной» аддитивной разомкнутой задачи коммивояжера 16
Решение обобщенной разомкнутой задачи коммивояжера перебором (обязательными являются вершины 1, 2, 3; стартовая – 1, терминальная - 3) 12 1 1 5 2 9 4 1 3 10 4 2 0 0 0 0 1 1 ∞ 0 0 0 1 0 1 ∞ 0 0 0 0 1 1 0 ∞ 0 0 0 0 1 1 1 ∞ - - - - - 0 12 0 0 3 2, 3 3, 1 1, 3 4, 3 3, 4 4, 1 1, 4 2, 1 1, 2 R - 2 3, 2 0 0 0 1 1 1 11 - - - - - 0 0 0 1 1 15 0 1 0 0 0 0 1 13 17
Самостоятельно Решить перебором разомкнутую обобщенную задачу коммивояжера на графе G(X, U) при условии, что : стартовой вершиной является первая, терминальной – третья, обязательными вершинами: 1, 2, 3. 3 1 4 2 2 5 7 9 11 1 2 3 4 8 3 10 6 18
ЧАСТЬ 2 Связь задачи на разрыв контуров в сильносвязном орграфе и обобщенной задачи коммивояжера 19
Алгоритм 1 Шаг 1. На сильносвязном планарном взвешенном орграфе G(X, U) определить величину минимального разреза R или максимальной циркуляции S. Шаг 2. Построить орграф G’(X’, U’), двойственный графу G(X, U). Шаг 3. Модифицировать G’(X’, U’), добавив к каждой дуге множества U’ параллельную и встречно ориентированную дугу с нулевым весом. Полученный орграф обозначить G”(X”, U”). Шаг 4. На G”(X”, U”) решить обобщенную замкнутую задачу коммивояжера при условии, что множество обязательных вершин равно Х”. Длину пути коммивояжера обозначить R 1. Шаг 5. Сравнить величины R, S, и R 1. 20
ПРИМЕР 1, шаг 1 Исходный орграф G(X, U) 3 1 Контуры: Y 1 = 1 -3 -1; Y 2=2 -3 -2; Y 3=1 -2 -3 -1. 2 9 2 1 7 3 Задача о максимальной циркуляции S S= Y 1 + Y 2 + Y 3 ―> max; Y 1 + Y 3 ≤ 9; Y 2 + Y 3 ≤ 7; Y 1≤ 2; Y 2≤ 1; Y 3≤ 3; Yi =1, 0: i= 1, 2, 3. Ответ: Y 1=2; Y 2=1; Y 3=3; s max =6 Задача о минимальном разрезе R 2 3 1 1 3 2 R min = 6. 21
ПРИМЕР 1 ШАГИ 2 - 4 Построение двойственного орграфа G’(X’, U’) 4 2 2 3 1 1 7 Построение G”(X”, U”) Решение обобщенной (добавленные нулевые задачи коммивояжера дуги окрашены синим) на G”(X”, U”) 0 0 2 2 3 3 11 0 7 0 9 0 0 2 2 0 9 3 3 1 3 2 4 1 3 4 1 R 1 = 6. 22
САМОСТОЯТЕЛЬНО Пользуясь приведенной ниже матрицей М построить граф G(X, U), определить на нем максимальную циркуляцию S и минимальный разрез R, затем построить двойственный ему орграф G’(X’, U’), преобразовать его в G”(X”, U”), и на этом графе решить обобщенную задачу коммивояжера. Ответ R 1 сравнить с S и R. M 0 0 0 1 9 0 0 0 3 2 0 0 0 1 7 0 23
Лекция 15 Обобщенные задачи коммивояжера и связь с задачей на разрыв контуров.pptx