1. Задачи / Образцы выполненных СРС 1-12 МАТЕСО / 12 / Солнцева Светлана, СРС 12(со звездочкой)
.docФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ РОССИЙСКОЙ ФЕДЕРАЦИИ
ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ТОМСКИЙ ПОЛИТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
Кафедра ОСУ
Самостоятельная работа студента №12*
Задача о коммивояжере (другой способ решения)
Выполнила: студентка группы 8512
Солнцева Светлана Сергеевна
Проверил: Ротарь В.Г.
ТОМСК
2004
ЗАДАНИЕ
Решить задачу о коммивояжере, используя венгерский метод и алгоритм Флада. Необходимо найти маршрут коммивояжера, который бы включал в себя все города, при этом представлял из себя один единственный обход, т.е. в каждый город коммивояжер будет въезжать и выезжать один раз. Минимизировать транспортные издержки С.
ХОД РАБОТЫ
-
Задача в формальном виде выглядит следующим образом:
при условиях
Запишем матрицу транспортных издержек Сij, используя код ФИО:
Cij |
1 |
2 |
3 |
4 |
5 |
6 |
1 |
∞ |
16 (О) |
13 (Л) |
15 (Н) |
24 (Ц) |
6 (Е) |
2 |
3 (В) |
∞ |
19 (С) |
3 (В) |
6 (Е) |
20 (Т) |
3 |
13 (Л) |
1 (А) |
∞ |
1 (А) |
19 (С) |
6 (Е) |
4 |
18 (Р) |
4 (Г) |
6 (Е) |
∞ |
3 (В) |
15 (Н) |
5 |
1 (А) |
19 (С) |
16 (О) |
13 (Л) |
∞ |
24 (Ц) |
6 |
6 (Е) |
3 (В) |
1 (А) |
19 (С) |
3 (В) |
∞ |
Этап 1: подготовительный этап, использующий венгерский метод (алгоритм Флада):
-
Переход Сij => C´ij (ищем в каждой строке матрицы Сij минимальный элемент). Тогда коэффициент приведения матрицы , следовательно, .
-
Переход С´ij => C´´ij (ищем в каждом столбце матрицы С´ij минимальный элемент). Тогда коэффициент приведения матрицы , следовательно, .
-
Операции (1) и (2) этапа 1 обеспечили в каждой строке и в каждом столбце появление хотя бы одного ноля.
-
Найдем минимальное количество линий, вычеркивающих все ноли в матрице, оно равно 6 (количество независимых нолей также равно 6), и ранг матрицы равен 6, следовательно, условие оптимальности соблюдается:
rСij = число независимых нолей
Cij |
1 |
2 |
3 |
4 |
5 |
6 |
min |
|
C'ij |
1 |
2 |
3 |
4 |
5 |
6 |
|
C''ij |
1 |
2 |
3 |
4 |
5 |
6 |
1 |
∞ |
16 |
13 |
15 |
24 |
6 |
6 |
|
1 |
∞ |
10 |
7 |
9 |
18 |
0 |
|
1 |
∞ |
10 |
7 |
9 |
18 |
0 |
2 |
3 |
∞ |
19 |
3 |
6 |
20 |
3 |
|
2 |
0 |
∞ |
16 |
0 |
3 |
17 |
|
2 |
0 |
∞ |
16 |
0 |
3 |
17 |
3 |
13 |
1 |
∞ |
1 |
19 |
6 |
1 |
|
3 |
12 |
0 |
∞ |
0 |
18 |
5 |
|
3 |
12 |
0 |
∞ |
0 |
18 |
5 |
4 |
18 |
4 |
6 |
∞ |
3 |
15 |
3 |
|
4 |
15 |
1 |
3 |
∞ |
0 |
12 |
|
4 |
15 |
1 |
3 |
∞ |
0 |
12 |
5 |
1 |
19 |
16 |
13 |
∞ |
24 |
1 |
|
5 |
0 |
18 |
15 |
12 |
∞ |
23 |
|
5 |
0 |
18 |
15 |
12 |
∞ |
23 |
6 |
6 |
3 |
1 |
19 |
3 |
∞ |
1 |
|
6 |
5 |
2 |
0 |
18 |
2 |
∞ |
|
6 |
5 |
2 |
0 |
18 |
2 |
∞ |
|
|
|
|
|
|
|
|
|
min |
0 |
0 |
0 |
0 |
0 |
0 |
|
|
|
|
|
|
|
|
Находим оптимальные ноли и определяем их позиции:
Ноли |
1 |
2 |
3 |
4 |
5 |
6 |
1 |
|
|
|
|
|
0 |
2 |
0 |
|
|
0 |
|
|
3 |
|
0 |
|
0 |
|
|
4 |
|
|
|
|
0 |
|
5 |
0 |
|
|
|
|
|
6 |
|
|
0 |
|
|
|
Позиции оптимальных нолей:
-
i = 1, j =6
-
i = 2, j =4
-
i = 3, j =2
-
i = 4, j =5
-
i = 5, j =1
-
i = 6, j =3
Эти позиции совпадают с позициями, полученными в СРС №12. Таким образом, маршрут обхода выглядит следующим образом:
Следовательно, целевая функция при минимизации принимает следующее значение:
Z (X)min = 6 + 3 + 1 + 3 + 1 + 1 = 15