Страницы: 1
RSS
Решение оптимизационной задачи о назначении, Необходимо распределить автобусы разной вместимости на конкретные рейсы с учетом мощности пассажиропотока на них
 
Известны параметры рейсов на 860 автобусных маршрутах: начальный и конечный остановочный пункты, количество пассажиров за рейс, длина рейса. Также даны вместимости имеющихся автобусов. Надо распределить автобусы по рейсам так, что бы минимизировать выполняемые при этом место-километры автобусов, при условии не превышения вместимости автобуса. Подробности в прилагаемом файле.
 

Добрый день, Сергей.

Что пытались сделать и с какой конкретно проблемой столкнулись – не написано, и в файле параметры Поиска решения пустые. Собственно, и просьб в сообщении нет.

Файл посмотрел, сочувствую – такие задачи встроенным в Excel Поиском решения не решить из-за ограничения – не более 200 переменных.

 
Добрый день. Спасибо за ответ.
Я знаю по поводу ограничений Excel. Думал может их можно как-то обойти... или на C написать макрос...
 
Сергей,
думаю, что попытать счастья можно, но в платной ветке форума: Работа
 
Цитата
написал:
Думал может их можно как-то обойти... или на C написать макрос...
Перебирать все варианты - жизни не хватит.
Вариант - перебирать большое количество вариантов по Монте-Карло, фиксируя минимальное значение решения.
Лучше на оптимизированном коде в C, конечно, чтобы больше вариантов было за разумное время.
Вот здесь использовал такой подход, но на другой задаче
 
Спасибо.  Но я в программировании вообще никак(
 
Если задача теоретическая или учебная, то уменьшить количество переменных и объяснить причину.
Или попытаться использовать какой-нибудь другой солвер, например, OpenSolver, не имеющих таких ограничений на количество переменных. Можно вместо Excel использовать LibreOffice, там вроде OpenSolver и используется.  
Но много вариантов перебрать также не получится, так как перебор через пересчет формул на листе - медленный.
Если же задача коммерческая, то она же будет иметь приличный коммерческий эффект, в т.ч. и с учетом затрат на заказ коммерческого решения.
 
Добрый день! Заинтересовала эта задача.
Если она состоит в том, чтобы из для каждого из 860 маршрутов подобрать вместимость автобуса на нем, то вариант решения в файле. Так я понял ограничения записанные справа. Тут сольвер не нужен. В двух строках был 0 в строке и кроме того дважды 90 пассажиров в столбце.
 
Цитата
Алексей Абраменко написал: ... заинтересовала эта задача
Добрый вечер, Алексей!
У Вас все выглядит логично, мне нравится!
Формулы можно немного упростить, но это не важно.
В реальных задачах должно еще существовать ограничение на автомобильный парк – сколько автомобилей определенной вместимости имеется, от этого зависит решение. Но здесь, похоже, задача теоретическая.
 
Пока не понял, что тут сделано))) разберусь.
а по поводу двух нулей - значит два рейса совсем без пассажиров. Два автобуса по 90 - значит две разных марки автобуса, просто с одинаковой вместимостью.
задача теоретическая. Но это не вся задача. Это только ее часть. Дальше ещё нужно думать, но я пока не могу сформулировать это в табличном виде..
спасибо за помощь.
Страницы: 1
Наверх