как учесть изменения пользователя в результате и учесть их в VRP - PullRequest
0 голосов
/ 29 января 2019

Я работаю над одним VRP (проблема маршрутизации транспортных средств), чтобы составить план обслуживания пикапов и отбрасывания, так как VRP - сложная проблема NP, пользователь редактирует план в соответствии со своими требованиями. Теперь я планирую учитывать их модификацию при подготовке плана.с чего начать для того же?

1 Ответ

0 голосов
/ 10 февраля 2019

Самый простой способ включить экспертные знания в оптимизатор VRP - это использовать ограничения.Посмотрите документацию JSprit об ограничении в качестве отправной точки, если вы используете JSprit.Если доступного типа ограничений недостаточно для моделирования знаний, которыми владеет ваш эксперт, вам, возможно, придется покопаться глубже и поиграть с функцией стоимости и стратегией поиска.

Получение ограничений автоматически от улучшений, сделанных экспертом в предыдущем маршруте, будет трудным.Может быть много причин для любого изменения маршрута - трудно сказать, почему эксперт сделал изменение, если они не сообщают вам явно.Если возможно, попросите эксперта четко определить ограничения.Например, вместо того, чтобы просто изменить маршрут, чтобы задание с адреса X и задание с адреса Y обслуживалось транспортным средством 1, эксперт скажет вашей системе: «Адрес X и адрес Y всегда должны обслуживаться одним и тем же транспортным средством».

Кстати, поскольку это довольно общий алгоритмический вопрос, вы можете попробовать разместить его на Compute Science Stack Exchange .

...