Я применяю VRP-пример optaplanner с временными окнами и получаю возможные решения всякий раз, когда я определяю временные окна в диапазоне 24 часов (с 00:00 до 23:59). Но мне нужно:
- Управляйте длительными поездками, когда я знаю, что время между выездом со склада и первым посещением или продолжительность между посещениями будет более 24 часов. Так что в настоящее время он не дает мне эффективных решений, потому что формат TW имеет 24-часовой формат. Бывает, что при применении правила оценки arrivalAfterDueTime время прибытия всегда выше, чем dueTime, потому что dueTime находится в диапазоне (с 00:00 до 23:59), а arrivalTime - это следующий день.
Я подумал, что мне следует взять каждый TW каждого клиента и добавить к нему еще TW, по одному на каждый запланированный день. Например, если я планирую поездку на 3 дня, то у меня будет 3 временных окна для каждого Клиента. Примерно так: если Клиент 1 доступен с [08: 00-10: 00], то предположим, что он также будет доступен с [32: 00-34: 00] и [56: 00-58: 00], которые являются эквивалент той же TW на последующие дни. Точно так же я обрабатываю время как long, преобразованное в миллисекунды.
Я не знаю, правильный ли это путь, моя консультация была бы больше о некоторых идеях, как приблизиться к этому ограничению, возможно, у вас есть аналогичная проблема, и любая идея для меня была бы очень признательна.
Извините за формулировку, я говорю по-испански. Спасибо.