У меня есть большая проблема с VRP с более чем 10000 остановками. Разработка эвристики строительства занимает много времени, независимо от того, какие опции используются, включая фильтры и другие трюки.Эвристика строительства на VRP - медленная работа на больших наборах данных
Алгоритмы перемещения и свопа обычно работают хорошо, как только они начинаются, но для решения фазы строительства требуется 30 минут.
Любые предложения по вариантам, которые могут обеспечить лучший результат? Я чувствую, что Optaplanner слишком строг на этапе строительства, когда более простой вариант может быть лучшим балансом.
Config, которая, кажется, работает лучше всего выглядит следующим образом:
<constructionHeuristic>
<queuedEntityPlacer>
<entitySelector id="placerEntitySelector">
<cacheType>PHASE</cacheType>
<selectionOrder>SORTED</selectionOrder>
<sorterManner>DECREASING_DIFFICULTY</sorterManner>
</entitySelector>
<changeMoveSelector>
<entitySelector mimicSelectorRef="placerEntitySelector" />
<filterClass>org.optaplanner.examples.vehiclerouting.domain.solver.CustomerSelectionFilter</filterClass>
</changeMoveSelector>
</queuedEntityPlacer>
</constructionHeuristic>
Приветствия, ник
Да пожалуйста, напишите конфигурацию –
добавление следующего помогло много, но оно замедляется до конца. 1 selectedCountLimit> –
Nick
Итак, я рассмотрел это дальше. Я заметил следующее поведение, которое должно превышать количество лимитов, чем количество транспортных средств в противном случае всегда выбирается транспортное средство 1. Это говорит о том, что подход CH всегда состоит в том, чтобы всегда пытаться заполнить первый автомобиль и – Nick