LINUX.ORG.RU

Решение транспортной задачи и оптимизация маршрутов.

 , pgrouting, , транспортная задача


0

2
дано:
  множество нарядов с адресами, приоритетами, желаемым интервалом времени посещения данной точки;
  множество сервисных сотрудников;
  множество транспортных средств (кол-во тс <= кол-во сотрудников. так что есть высокая вероятность что одно тс будет развозить N сотрудников);
  множество отправных станций (на каждой станции присутствует N сотрудников и M тс);
  геоданные в PostgreSQL/PostGIS с pgRouting (планирую брать из OSM);

требуется:
  получить оптимальное распределение точек посещения по сотрудникам;
  получить оптимальный маршрут обхода точек для каждого сотрудника;
  получить оптимальный маршрут развоза сотрудников транспортным средством;

пока что представляю себе это примерно так:
  каждая отправная станция привязывается к некоторому району/районам и обслуживает только их;
  для каждой отправной станции по точкам в принадлежащих районах:
    получаем геоданные по адресам и строим граф all-to-all (или все таки биграф?) используя рассчитанные длины маршрутов между узлами; 
    по полученному графу используя информацию о кол-ве тс и кол-ве сотрудников пускаем один из алгоритмов решения транспортных задач (какой?);
    ?????;
    PROFIT???77;

собственно /r/ истории [не]успеха, пинки в верном направлении и просто дискач.

в ИД не хватает продолжительности нахождения сотрудника на точке

anonymous
()

каждая отправная станция привязывается к некоторому району/районам и обслуживает только их;

Искуственное ограничение. Зачем?

И еще об ограничениях. По какому критерию оптимизация, по «желаемым интервалам времени посещения данной точки»?

anonymous
()

Цены таких решений в области > 100.000 ЕВР.

Но вот тебе пару ключевых слов, которые помогут сориентироваться: Математическая область: Operations Research: Класс проблем: Rich VRP (VRP=Vehicle routing problem), (Rich=complex constraints). Complexity: NP.

У тебя какое образование?

anonymous
()
Ответ на: комментарий от anonymous

в ИД не хватает продолжительности нахождения сотрудника на точке
И еще об ограничениях. По какому критерию оптимизация, по «желаемым интервалам времени посещения данной точки»?

продолжительностью можно пренебречь. я уже подумал что для прототипа можно исключить расчет реальной длины маршрута и использовать расстояние между точками. надо для начала хотя бы простенький прототип с базовыми функциями.

exception13 ★★★★★
() автор топика
Ответ на: комментарий от exception13

продолжительностью можно пренебречь

Ты понимаешь, что тогда у тебя модель в корне меняется и ее прототип бесполезен?

Если продолжительность(П) != 0, то транспорт развозит сотрудников, потом их собирает. Да, в этом случае придется оптимизировать два потока. Да, придется заложить сотруднику время ожидания. Но эта модель ближе к ИД.

Если П==0 то, кол-во транспорта _должно_ равняться кол-ву сотрудников, а у тебя сотрудников может быть больше.

anonymous
()

если размерность невелика, а задача считается не в динамике, то может помочь простой перебор.

иначе надо строить модель. в приведенной вводной не обозначены критерии оптимальности. от степени нелинейности полученной модели будут зависеть дальнейшие шаги.

ien
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.