Вам нужно значительно упростить это, прежде чем вы сможете решить это.
Учитывая размер, вам, вероятно, понадобится разбить его на различные подзадачи каким-либо образом.Разложение проблемы с маршрутизацией автомобиля довольно сложно, но есть некоторые исследовательские работы.
Кроме того, для выполнения работы иногда требуется один техник, а иногда два - сложно, если вы не можете упростить дальнейшее упрощение.Если вы не можете упростить, то у вас есть «синхронизированная» проблема маршрутизации транспортных средств (этот термин используется в исследовательской литературе), которую, я подозреваю, вы, вероятно, не сможете решить, просто используя OR Tools.Возможные способы упрощения:
Можете ли вы предположить, что команда из 2 техников работает вместе целый день, поэтому вы просто смоделируете их как единый маршрут?Итак, у вас есть несколько маршрутов, которые являются одним техническим специалистом, и несколько маршрутов, которые являются 2 техническими специалистами, НО 2 отдельных маршрута по 1 техническому специалисту каждый НИКОГДА не собираются вместе, чтобы выполнять работу с двумя техническими специалистами?
Работы, требующие 2 техников, длятся целый день, поэтому вам не нужно моделировать независимость между маршрутами 2х1 техников, работающих вместе на работе 2 техников?Т.е. вам не нужно моделировать задержку для технического специалиста Б, если технический специалист А выполняет другую работу, прежде чем выполнять совместную работу?
Достаточно ли редки задания для 2 техников, чтобы можно было автоматически планировать задания для 1 техника, а затем поручить планировщику вручную распределять задания для 2 техников вокруг них?
Навыки должны быть относительно простыми.Другие вещи, которые вы, возможно, должны рассмотреть:
Вам нужно моделировать несколько дней одновременно?
Является ли это автомобиль в реальном времени / динамичныйпроблема маршрутизации или статическая?Наше видео здесь дает простое объяснение разницы.Если у вас есть рабочие места, которые забронированы в тот же день, когда они были обработаны, или продолжительность рабочих мест не определена (то есть вы не знаете, сколько времени они будут занимать), то у вас есть проблема маршрутизации в реальном времени, которую необходимо устранить /решается иначе, чем в статическом случае.