我的源代码在"On at exit“字段中有以下代码: TRUCK.ID_number =参数;参数=参数+ 1;
然后,每辆卡车都会收到身份证: 1,2,3,.
问题是所有的卡车都在同一时间流通,看起来每次都会生成一辆新卡车,代码运行时会重置所有卡车的ID。
例如:当在源中创建了卡车4 (ID = 4)时,所有其他卡车都会接收ID 4,因此我无法知道每辆卡车的正确ID。
我做错了什么?
发布于 2017-02-04 06:15:20
几件事。首先,您需要在agent代码框中使用关键字onExit。所以就你而言,agent.ID_number=parameter。请阅读这些在AnyLogic代码框中随处可见的特定关键字。我把它叫做“魔法灯泡”,也可以看到我关于这个话题的博客:
神奇的灯泡
其次,新创建的代理自动获得一个唯一的索引(如果它们属于同一个群体)。您可以在您的卡车代理中使用getIndex()方法访问它。
发布于 2017-02-04 22:22:45
答案是:使用entity.ID_number=parameter
https://stackoverflow.com/questions/42035540
复制相似问题