2016-12-05 3 views
-1

ルーティングが新しくなりました。私はこのように機能するモデルを作りたいと思っています。複数のトラックが複数のトラックを使用して複数の結果として配信されています

私は2台のトラックAとBを持っています。トラックAはデポから納品されるアイテムを拾い上げます。 2番目のデポからもアイテムを受け取る必要があります。時間窓のため、第2のピックアップ位置時間窓の前に最初のピックアップ後に2回のデリバリーを行うことができる。

トラックBは最初のデポからピックアップして、アイテムを配達するだけです。

デポ2のピックアップと結果として得られるデリバリーの関係を明確にする必要があるので、jspritが2番目のデポ商品の一部をトラックBに割り当てようとしないようにする必要があります。また、ピックアップ後に行われる。それは次のようになります結果

:私は私の友人グーグルでトローリング数時間を費やしてきたが、解決策を見つけていない

TruckA P1 D1a D1b P2 D1c D2a D2b D1d etc 
TruckB P1 D1a D1b D1c D1d... 

Stackoverflow_RelatedJobs_13_and_21_inSameRoute_21_first モデルに適合すると思われます。

この例はかなり基本的なもので、2つのジョブと1つのルートを扱っています。私は複数の配達で複数のルートとピックアップに対処する必要があります。

私はそれにはソフト制約などが含まれていることを理解していますが、どうすればよいか、どうやって作成するのか分かりません。

誰もがすでにこれを行い、助けてもらえますか?

答えて

0

私が正しく理解していれば、何を達成したいことはもしそうならデポ2でピックアップされるアイテムは、トラックB.

に行くべきではないということです、あなたが達成するために、ルートの制約を使用することができますそれ。ウォークスルー制約ドキュメントで提供されているthe exampleを参照することができます。

新しい車両がトラックBであり、挿入されるジョブがデポ2でピックアップされるものである場合、または現在のルートにそのようなジョブが含まれている場合は、falseを返しますハード経路コストラクションである)かペナルティを返す(ソフトルート制約の場合)。

+0

こんにちは黄と応答に感謝します。それは、トラックが配送をする場合は、最初に配送される商品をピックアップする必要があることを確認することです。したがって、1ピックアップと5デリバリの入力は、2ピックアップ(各トラックに1つ)の出力と、トラックに分割された5つのデリバリをもたらす可能性があります。 サービスモデルを使用しています。出荷モデルでは、ピックアップ1回につき1回の配送のみが可能です。 – gmax

関連する問題