Главная Случайная страница



Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать неотразимый комплимент Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника







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





 

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

 

 

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

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

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

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).

 








Date: 2015-09-19; view: 1536; Нарушение авторских прав



mydocx.ru - 2015-2021 year. (0.017 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию