私は jsprit を使用して、ドライバーが複数回デポに戻らなければならないシナリオで、時間枠で配達を行うドライバーをルーティングしています。
私たちが直面している問題は、車両の容量が 20 個の小包と 30 個の小包を配達する場合、アルゴリズムでは、ドライバーが 20 個の小包を受け取り、10 個の小包を降ろしてから、残りのために戻ってくることがよくあります。最初のピックアップで必要な 10 個の小包。これらのアイテムは腐りやすい場合があるため、これは問題です。そのため、輸送時間が短いほど良い.
輸送中の小包にコストを追加することに基づいて、ソフト制約またはアクティビティ コストを追加することを考えていますが、重い状態管理とボリューム トラッキングが必要と思われるため、これを行う方法がわかりません。もう 1 つのオプションは、後処理ステップとして物事をシフトすることですが、これもきれいに感じられません。
何か不足していますか?ありがとうございました!