АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Задача коммивояжера

Читайте также:
  1. VI. Общая задача чистого разума
  2. В задачах 13.1-13.20 даны выборки из некоторых генеральных совокупностей. Требуется для рассматриваемого признака
  3. ВАША ЗАДАЧА
  4. Вопрос 2 Проверка и оценка в задачах со случайными процессами на примере решения задач экозащиты, безопасности и риска.
  5. Вот дела не задача
  6. Глава 10 Системный подход к задачам управления. Управленческие решения
  7. ГЛАВА 2.1. ЗАЩИТА ИННОВАЦИЙ КАК ЗАДАЧА УПРАВЛЕНИЯ ИННОВАЦИОННЫМИ ПРОЦЕССАМИ
  8. Глава 4. Математические основы оптимального управления в экономических задачах массового обслуживания
  9. Двойственная задача
  10. Двойственная задача линейного программирования.
  11. Доклад о задачах власти Советов
  12. Доклад об экономическом положении рабочих Петрограда и задачах рабочего класса на заседании рабочей секции Петроградского совета рабочих и солдатских депутатов

 

Коммивояжеру, находящемуся в Париже, необходимо посетить три города. Он получил информацию о стоимости проезда самолетом в каждый из выбранных городов и стоимость проезда из одного города в другой. На основе добытых данных он составил матрицу стоимостей (см. табл.) проезда в выбранные города и обратно. Зная матрицу стоимостей коммивояжеру надо так составить маршрут путешествия, чтобы затраты на путешествие были бы минимальными и чтобы выполнялось требование: каждый пункт посещается только один раз.

 

 

Пункты Париж Берлин Рим Лондон
Париж        
Берлин        
Рим        
Лондон        

Математическая модель задачи выглядит следующим образом.

Целевая функция имеет вид:

0x11+270× x12+430× x13+160× x14+70× x21+0× x22+160x23+10x24+200× x31+130x32+0× x33+ +350× x34+210× x41+160x42+250× x43+0× x44® min,

Ограничения имеют вид:

x11+x21+x31+x41=1,

x12+x22+x32+x42=1,

x13+x23+x33+x43=1.

x14+x24+x34+x44=1,

x11+x12+x13+x14=1,

x21+x22+x23+x24=1,

x31+x32+x33+x34=1,

x41+x42+x43+x44=1,

u2-u3+3× x23£ 2,

u2-u4+3× x24£ 2,

u3-u2+3× x32£ 2,

u3-u4+3× x34£ 2,

u4-u2+3× x42£ 2,

u4-u3+3× x43£ 2.

Вид электронной таблицы, созданной для решения задачи, представлен на рис. 40. Значения переменных xij располагаются в блоке B3:E6. В данном блоке ячейки, расположенные по диагонали обнулены (пункт назначения не может быть одновременно пунктом прибытия) и выделены, для удобства задания ограничений. Даны стоимости проезда из города в город (блок B11:E14). Для вычислений необходимо задать размерность задачи n (количество городов)- ячейка F16.

Рис. 40

Целевая функция расположена в ячейке F8. Ограничения находятся в блоках B7:E7 (коммивояжер въезжает один раз в каждый город) и F3:F6 (коммивояжер выезжает из каждого города один раз) (см. рис. 40 и 41). Вид электронной таблицы в режиме отображения формул представлен на рис. 41. В задаче коммивояжера есть ряд специфических ограничений по дополнительным переменным ui (см. мат модель). Формулы этих ограничений находятся в блоке ячеек B17:E19. Значения самих переменных располагаются в блоке B8:E8.

На рис. 42 представлена запись условий задачи в окне "Поиск решения". Как известно, дополнительные переменные не относятся к целевой функции, но они, также как и xij, являются изменяемыми, поэтому адреса содержащих их ячеек должны быть введены в поле Изменяя ячейки одновременно с адресами переменных целевой функции.

Операцию ввода удобно проводить с помощью мыши. Необходимо установить курсор ввода в поле Изменяя ячейки, затем выделить мышью блок ячеек переменных целевой функции, нажать <Ctrl> и, удерживая эту клавишу, выделить мышью блок ячеек рабочего листа, отведенный для переменных ui. В поле ввода адреса блоков отделяются ";" (см. рис. 42).

Рис. 41

Перечислим ограничения, которых не видно на рис. 42: $C$4=0; $D$5=0; $E$6=0; $F$3:$F$6=1.

Рис. 42

Первая запись в группе Ограничения представляет собой совокупность ограничений по дополнительным переменным ui. Каждая ячейка блока в левой части неравенства содержит формулу одного ограничения (см. рис. 41 и мат. модель), правую часть представляет одно значение, равное n-2, содержащееся в F18. Такая запись означает, что каждая ячейка блока $B$17:$D$19 меньше либо равна 2 (4-2=2).

В поиске решения нельзя явно задать ограничение i¹ j. Исходя из смысла переменных xij можно предположить, что значения тех xij, для которых i=j (расположенных по диагонали в блоке переменных), всегда должны быть равны 0 и ввести соответствующие ограничения. В группе Ограничения таких ограничений четыре: $B$3=0, $C$4=0, $D$5=0, $E$6=0.

По результатам поиска решения найден ответ задачи: из Парижа коммивояжер летит в Лондон, оттуда в Рим, затем в Берлин, откуда возвращается в Париж. Общая стоимость перелета составит 610 д. е. (см. рис. 40).

 


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.)