2016-04-25 102 views
0

我在Anylogic中有一個混合模型,其中一些代理必須將部分(也是代理)添加到Discrete Event Simulation QUEUE。在Anylogic中添加/將代理添加到隊列中

從QUEUE獲取代理通過queue1.removeFirst();完成,但我似乎無法找到相當於添加的東西。 我試過addAgentToContents沒有運氣...

回答

1

您不能直接向代理隊列添加代理。

要麼你把一個源對象放在它的前面,並將其「Arrival defiend by」屬性設置爲「inject()」。還要將其「新代理」類型設置爲零件。當您的代理想要將一部分添加到隊列中時,您可以調用source.inject()並將一部分添加到隊列中。

或者,如果您已經創建了部件代理,則可以使用代理中的端口並使用連接器將其鏈接到您的隊列。這兩個對象都可以在「Agents」庫中找到。

希望這可以幫助

+0

謝謝本傑明。我一直試圖建立連接,但我仍然需要以某種方式「發送」該部分。有'send'方法,但它只能處理消息...你知道如何做到這一點嗎? – jacandau

+0

消息可以是任何類型的,不只是一個字符串。如果您檢查Javadoc是否爲端口發送方法,它會告訴您參數「msg」的類型是「Object」,這意味着它可以是任何東西。 – Benjamin

+1

使用Enter過程模塊將Part代理程序「發送」回到流程圖 – jacandau