私は Simpy を初めて使用し、複雑な依存関係を持つプロセス スケジューラをモデル化する方法を理解するのに苦労しています。
私の問題の概要:
- 入り口からアイテムが入った箱を受け取る倉庫があります。ボックスはキューに入れられ、処理されるのを待ちます。
- 各ボックスには目的の部屋があり、ベルトコンベアを使用してそこに出荷する必要があります。ベルトコンベアが複数の部屋にサービスを提供します。
- オペレーターは列に並んだ箱を見て、ベルトと目的の部屋の両方が利用可能な場合にのみ、適切なベルトコンベアに箱を置きます。オペレーターはボックスを順番に送信しますが、処理できないボックスはスキップします。
- 部屋の中で箱を開けると、オブジェクトを保管するのに一定の時間がかかります。この間、部屋は他のボックスを受け取ることができません。
- オブジェクトが保管された後、空のボックスは、入ってきたのと同じベルトコンベアを使用して倉庫の出口に送られます。
- オペレーターは、どのコンベア ベルトと部屋が空いているかを常に把握しています。
私の質問は、この演算子をモデル化する方法です。これまでのところ、Simpy でこれを行うエレガントな方法は見つかりませんでした。基本的に、次の 3 つの条件が満たされた場合にのみ起動するプロセスが必要です。a) 部屋が空いている。b) この部屋宛ての列にボックスがあり、c) 部屋に行くためのベルトは無料です。
既存の例へのアイデア、アドバイス、またはポインタは大歓迎です。ありがとうございました!