2016-07-16 6 views
0

私はVRPで学校プロジェクトをやっています。私が解決しようとしている問題は、複数のポイントを持つルートを生成することです。ルートはそれぞれ時間ウィンドウで実行する必要があります。jspritで日付ウィンドウを使用する

私の問題は、このアルゴリズムは、0時から始まるので、jspritの時間窓に日付(UNIXタイムスタンプ)を変換する方法です。私は時間間隔をずらしてしまっているのですか、それとも私が行方不明のベストプラクティスがありますか?

ありがとうございました。

+0

jspritが単位とらわれません。時間を分または秒で定義することもできます。定義された参照ポイント(時間は何ですか?)だけが必要です。その後、いつでも実際の日時に変換することができます。 「私は時間間隔をずらしていますか?」と私はあなたが何を求めているのか分かりません。 – roganjosh

+0

通常、UNIXのタイムスタンプでは0の時刻は1970年です.jspritの時刻0はアルゴリズムの開始点です。時間単位は問題ではない、問題は0と大きな数字であるタイムスタンプの間のギャップです。デルタが意味することは、提供されているすべてのタイムスタンプに現在のタイムスタンプを差し引いて、ギャップがないようにしなければならない場合です。 –

+0

その場合、はい、我々はこれに同意しています。あなたは賢明な新しいunixタイムスタンプを見つけてゼロを表してから、あなたのタイムウィンドウをこの位置からのオフセットとして定義する必要があります。それでは、あなたはさらに時間単位の定義方法を決める必要があります。私はあなたの心の中でこれを過度に複雑にしたと思う。 00:00は1439(分)までの時間ゼロであり、私は毎日解決します。私が24時間稼働して1週間解決しようと思えば、私は10080で終​​わります。 – roganjosh

答えて

1

が編集されました。

Jspritはユニットに依存しません。あなたは、作業したいユニットを選択します。

私は私の週は月曜日から日曜日に実行することを選ぶことができる、と私は分単位で単位を定義したいです。この場合、月曜日の午前9時は時間540(9 * 60)です。それとも、秒単位で定義することもできます。その場合、同じ時刻は32400(9 * 60 * 60)です。時間単位が一貫していれば問題はありません。

UNIXタイムスタンプは、ほぼ確実に問題に不必要です。設定した時間にソリューションを実行します。一般的に、離散問題の解を探しており、設定した間隔でアルゴリズムを実行します。これは、常に、現在の問題に関連する日時にjspritの「抽象的な」出力を取り込む(例えば、時刻678に到着する)データムポイントを与えます。

このように、私は7月25日に7月19日にアルゴリズムを実行することができましたが、を知っています。到着時間の解は7月25日00:00に基づいています。分。

ボトムライン:JSpritはではありませんは時間0として解を呼び出します。任意のシステムで定義する任意の時点として時間0が必要です。日曜日の深夜、教皇フランシス、何の就任式は、基本的に:)

関連する問題