私が表現して自動化しようとしている現実の問題があります。私はそれを次のように簡略化して抽象化しました:
- nの作業場所があります(P1、P2、...、Pn)。
- 各場所、Pnにはキー、Knがあります。
- ワーカーがm人います(W1、W2、...、Wm)。
- Pnで働くためには、労働者はKnを持たなければなりません。
- 各キーは、労働者が保持するか、取引所Eに残しておくことができます。
ワーカーはいつでもExchangeにアクセスして、要求されていないキーを取得したり、他のユーザーが使用できるようにいくつかのキーをドロップしたりできます。
現在、厳格な順序で完了する必要がある外因性の作業スケジュールがあります。例えば:
- 2016-04-21 W1はP6で働く必要があります
- 2016-04-21 W2はP3で働く必要があります
- **鍵の交換が必要です**
- 2016-04-22 W3はP3で働く必要があります
- 2016-04-22 W2はP6で働く必要があります
同じ日に決してではないが、スケジュールのある時点でPnで働く必要のある労働者はいくつもいる可能性がある
私たちは知っています:
- すべてのキーの開始場所(労働者またはEのいずれか)
- 各ワーカーが満たす必要がある将来の作業指示
それで、私はこの全体の状況をモデル化するのに苦労しています。データ構造とアルゴリズムを提案して、それを把握し、各ワーカーのエクスチェンジへのトリップの最適化を開始するために検討する必要がありますか?
私が最小限にしたいのは、Eへの旅行の総数です。2番目の目標は、労働者が不釣り合いな数の旅行をしないようにすることです。
前もって感謝します!!