Автор Тема: Помогите разобраться. Задача коммивояжера  (Прочитано 3083 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Свет77

  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Необходимо проложить маршрут минимальный по стоимости. Стоимость поездки из города в город дана в таблице:
   1   2   3   4   5   6   
        M   16   17   3      6      12   
   14   M   11   1   0   15   
   9   0   M   3   6   6   
   0   0   10   M   9   7   
   3   4   1   16   M   8   
   5   8   0   10   4   M   

Возьмем в качестве произвольного маршрута:
X0 = (1,2);(2,3);(3,4);(4,5);(5,6);(6,1)
Тогда F(X0) = 16 + 11 + 3 + 9 + 8 + 5 = 52

i j   1   2   3   4   5   6   di
1   M   16   17   3   6   12   3
2   14   M   11   1   0   15   0
3   9   0   M   3   6   6   0
4   0   0   10   M   9   7   0
5   3   4   1   16   M   8   1
6   5   8   0   10   4   M   0


i j   1   2   3   4   5   6
1   M   13   14   0   3   9
2   14   M   11   1   0   15
3   9   0   M   3   6   6
4   0   0   10   M   9   7
5   2   3   0   15   M   7
6   5   8   0   10   4   M


i j   1   2   3   4   5   6
1   M   13   14   0   3   9
2   14   M   11   1   0   15
3   9   0   M   3   6   6
4   0   0   10   M   9   7
5   2   3   0   15   M   7
6   5   8   0   10   4   M
dj   0   0   0   0   0   6


i j   1   2   3   4   5   6
1   M   13   14   0   3   3
2   14   M   11   1   0   9
3   9   0   M   3   6   0
4   0   0   10   M   9   1
5   2   3   0   15   M   1
6   5   8   0   10   4   M

H = ∑di + ∑dj
H = 3+0+0+0+1+0+0+0+0+0+0+6 = 10

Шаг №1.

i j   1   2   3   4   5   6   di
1   M   13   14   0(4)   3   3   3
2   14   M   11   1   0(4)   9   1
3   9   0(0)   M   3   6   0(1)   0
4   0(2)   0(0)   10   M   9   1   0
5   2   3   0(1)   15   M   1   1
6   5   8   0(4)   10   4   M   4
dj   2   0   0   1   3   1   0

d(1,4) = 3 + 1 = 4; d(2,5) = 1 + 3 = 4; d(3,2) = 0 + 0 = 0; d(3,6) = 0 + 1 = 1; d(4,1) = 0 + 2 = 2; d(4,2) = 0 + 0 = 0; d(5,3) = 1 + 0 = 1; d(6,3) = 4 + 0 = 4;
Наибольшая сумма констант приведения равна (3 + 1) = 4 для ребра (1,4), следовательно, множество разбивается на два подмножества (1,4) и (1*,4*).
Исключение ребра (1,4) проводим путем замены элемента d14 = 0 на M, после чего осуществляем очередное приведение матрицы расстояний для образовавшегося подмножества (1*,4*), в результате получим редуцированную матрицу.

i j   1   2   3   4   5   6   di
1   M   13   14   M   3   3   3
2   14   M   11   1   0   9   0
3   9   0   M   3   6   0   0
4   0   0   10   M   9   1   0
5   2   3   0   15   M   1   0
6   5   8   0   10   4   M   0
dj   0   0   0   1   0   0   4

Нижняя граница гамильтоновых циклов этого подмножества:
H(1*,4*) = 10 + 4 = 14
Включение ребра (1,4) проводится путем исключения всех элементов 1-ой строки и 4-го столбца, в которой элемент d41заменяем на М, для исключения образования негамильтонова цикла.
В результате получим другую сокращенную матрицу (5 x 5), которая подлежит операции приведения.
После операции приведения сокращенная матрица будет иметь вид:

i j   1   2   3   5   6   di
2   14   M   11   0   9   0
3   9   0   M   6   0   0
4   M   0   10   9   1   0
5   2   3   0   M   1   0
6   5   8   0   4   M   0
dj   2   0   0   0   0   2

Сумма констант приведения сокращенной матрицы:
∑di + ∑dj = 2
Нижняя граница подмножества (1,4) равна:
H(1,4) = 10 + 2 = 12 ≤ 14
Поскольку нижняя граница этого подмножества (1,4) меньше, чем подмножества (1*,4*), то ребро (1,4) включаем в маршрут с новой границей H = 12

ВОПРОС:  d(1,4) = 3 + 1 = 4;d(2,5) = 1 + 3 = 4; d(6,3) = 4 + 0 = 4. Почему выбрали (1,4)?

 

ПОМОГИТЕ!!!!! Надо прорешать срочно ДУ!Очень очень очень надо

Автор Angrymelon

Ответов: 15
Просмотров: 15276
Последний ответ 17 Февраля 2012, 09:53:38
от Angrymelon
Не знаю как найти производную, помогите найти производную

Автор мимоза

Ответов: 2
Просмотров: 11108
Последний ответ 09 Декабря 2010, 15:40:15
от glora
помогите упростить выражение (2+√6)(3√2-2√3)

Автор Я ученик

Ответов: 3
Просмотров: 12238
Последний ответ 07 Сентября 2014, 18:20:34
от Dimka1
Помогите решить систему уравнений из заданий ЕГЭ, ответ я знаю, а как решить не знаю

Автор Valera16

Ответов: 2
Просмотров: 11573
Последний ответ 03 Апреля 2010, 18:28:25
от Valera16
Интегралы! Помогите решить интегралы

Автор dimon5501

Ответов: 4
Просмотров: 11836
Последний ответ 19 Марта 2010, 23:10:59
от stioneq