Events AnyLogic离散事件模型唯一标识符

Events AnyLogic离散事件模型唯一标识符,events,unique,anylogic,Events,Unique,Anylogic,我正在用AnyLogic建立一个离散事件模型。我想为进入流程的每个代理分配唯一的ID。我包括一个变量ID和另一个变量clientID。当实体得到这个时。clientID=ID++;在出口处。我注意到有多个代理获得完全相同的ID。有没有办法在每个代理进入系统时为其分配唯一的ID?您需要了解基于代理的工作原理: 如果代理持有变量ID,那么每个代理都有自己的ID值。因此,当每个代理单独执行ID++代码时,它们都会获得相同的值 每个代理在创建时已经有一个由AnyLogic分配的唯一ID。您可以使用myA

我正在用AnyLogic建立一个离散事件模型。我想为进入流程的每个代理分配唯一的ID。我包括一个变量ID和另一个变量clientID。当实体得到这个时。clientID=ID++;在出口处。我注意到有多个代理获得完全相同的ID。有没有办法在每个代理进入系统时为其分配唯一的ID?

您需要了解基于代理的工作原理:

如果代理持有变量ID,那么每个代理都有自己的ID值。因此,当每个代理单独执行ID++代码时,它们都会获得相同的值

每个代理在创建时已经有一个由AnyLogic分配的唯一ID。您可以使用myAgent.getIndex检索它


希望这有助于

每个代理都有唯一的id,它是在内部生成的,可以通过getId函数返回

也可以按照您的描述生成唯一ID。然后,您应该在画布上使用clientID变量创建自定义代理类型。源块应创建此类型的新代理。Main在画布上应该有一个名为ID的变量。源块在退出时的操作代码应该是:agent.clientID=ID++

顺便说一句,getIndex调用是不安全的,因为它返回填充中的代理索引。若种群规模发生变化,种群内的代理指数也可能发生变化。getIndex可以为不同的代理返回相同的索引,以防它们处于不同的群体中。最后,对于独立代理,getIndex总是返回-1