我在Anylogic仍然很新,但到目前为止真的很享受。
我有一个简单的模型,它有一个名为“乘客”的独立代理。在乘客里面,我有一个名为' WITH_CHILDREN'它的默认值是randomTrue(0.5)。
在我的主要流程中,我希望乘客能够获得' WITH_CHILDREN'在特定的延迟过程中需要更长的时间。
我认为它会像(在延迟的输入操作中):
if(passenger.WITH_CHILDREN == true){
delayTime = triangular(1,5,15);
else{
delayTime = triangular(0,1,1.5);
}
然而,这有很多错误:( 我想把它从代理链接到反对设置延迟的百分比,因为我有未来的百分比参数将用于其他延迟....如果这是有道理的。
任何帮助将不胜感激,谢谢! :d
答案 0 :(得分:1)
您可以使用以下代码直接在延迟块的延迟时间内定义它:
agent.WITH_CHILDREN ? triangular(1,5,15) : triangular(0,1,1.5)
并且因为图像优于1000个单词(我在图像中犯了一个错误......它是代理人而不是乘客。
当你在动作中使用delayTime时,它只是一个可读的变量,你无法改变它。
了解一下?和:这里的java中的运算符: http://www.cafeaulait.org/course/week2/43.html