2016-01-09 3 views
1
  • Как оптимизировать Optaplanner для выбора самого быстрого маршрута? См. Выделенную точку на изображении ниже. Это длительный маршрут.

Optimized routeOptaplanner принимает самый быстрый путь

Примечание: Транспортные средства не должны возвращаться депо. Я думаю, что я не могу использовать CVRPTW как arrivalAfterDueTimeAtDepot является строгим жестким ограничением (и, кроме того, у меня нет ограничений по времени).

  • Как мы можем написать ограничение для выбора транспортного средства меньшей емкости?
    Например, клиенту требуется всего 3 предмета, и у нас есть два автомобиля с 4 и 9 емкостями. Похоже, что Optaplanner выбирает первый автомобиль по порядку ввода по умолчанию.
+1

Как с помощью OptaPlanner выбрать назначение предметов для транспортных средств (https://en.wikipedia.org/wiki/Bin_packing_problem) и использовать https://en.wikipedia.org/wiki/Dijkstra%27s_algorithm для поиска пути? – oskopek

ответ

1

Я предполагаю, что он берет синий автомобиль для центра Бенгалуру, потому что зеленый цвет уже на полную мощность.

Проверьте, что такое оценка (рассчитывается через Solver.getScoreDirectorFactory()), если вы вручную разместите это местоположение в зеленой поездке и замените транспортные средства зеленого и синего маршрута. Если это хуже (или нарушает жесткое ограничение), то это нормально, что OptaPlanner выбирает другое решение. В этом случае у вашей функции счета есть ошибка (или вы понимаете, что не хотите этого решения вообще). Но если это действительно лучший результат, то <localSearch> OptaPlanner (например, Late Acceptance) должен найти его (особенно при масштабировании, потому что иронически локальные оптические объекты - большая проблема при уменьшении). Вы можете попытаться добавить <subchainSwapMoveSelector> и т. Д., Чтобы ускорить локальную оптимизацию.

Если вы хотите вести поиск более (что часто не очень хорошая идея), вы можете определить планирования прочности значения компаратора для сортировки небольших автомобилей до больших транспортных средств и использовать в строительстве эвристического WEAKEST_FIT (_DECREASING).

Смежные вопросы