おはようございます。私は AnyLogic プラットフォームを初めて使用し、会社のビジネス プロセスをマッピングするために使用したいので、AnyLogic プラットフォームの研究を開始しました。ツールのプロセス モデル ライブラリを使用してさまざまな部門をモデル化し、部門間の情報の流れがどのように実装されているかを調査することを計画しています。
私のダイアグラムは「ソース」要素とさまざまな「アセンブラー」要素で構成され、最後の要素 (アセンブラー) がゲートウェイとして機能することを望みます。状況をよりよく説明するために、簡単な図を同封します(例)。
''sourceA'' と ''sourceB'' (異なる部門に置かれている) が、2 つのカスタム エージェントで実装された 2 つの異なるドキュメントを生成するとします (たとえば、''sourceA'' から生成されたエージェントには ''orderID'' パラメータがあり、エージェントは ''orderID'' パラメータを持っています)。 ''sourceB'' には ''qualityCheckID'' パラメーターがあります) は、アセンブラー コンポーネント (別の部門に配置されます) に到達する前に、それぞれのキューで伝達されます。部門が同期されていないため、高い確率でキューがシミュレーション中に整列されません (queue[10] = agent.orderID が 10 に設定され、queue[10] = agent.qualityIDCheck が 9 に設定されます)。アセンブラがゲートウェイとして機能して、''orderID'' が ''
ドキュメントを読むと、エージェントは空いているときにアセンブラー ポートに到達し、それ以外の場合はキューで待機することがわかりました。非同期化が原因で、アセンブラー ポートには、orderID が qualityCheckID と等しくないエージェントが存在する可能性があります。この場合、アセンブラーの出力が生成されることは望ましくありません。必要なエージェントがポートではなくキューにあるため、「アセンブラー」はキュー内を検索して、対応するエージェントが存在するかどうかを確認し、存在する場合はキューから削除する必要があります (間違ったエージェントをポートはこの最後のものをキューに入れ、出力を生成します)
このシナリオをどのように実装できるかを理解するのを手伝ってくれる人がいます。