AnyLogic Agent 变量的初始化



我是AnyLogic新手。当我定义代理类型并向其添加参数时,我可以调用构造函数

MyAgentType agent1 = new MyAgentType(param1, param2, ..., paramn)

参数在新实例上设置,可用于工作流和其他功能 - 很好。

现在我想在同一代理类型上定义一些变量,但由于它是一个变量,它不包含在构造函数中,需要在实例化后显式设置。但是,如果我现在尝试使用 enter.take(agent1( 将此新实例注入到流程图中,则流程图中的代理似乎"丢失"了变量值(断点显示它为 null(。

我错过了什么?

输入块应该用于插入模型中已经存在的代理作为总体的一部分...当此总体存在(例如称为 myAgents(时,您可以改为执行MyAgentType agent1 = add_myAgents(param1,param2, ...,paramn),它将模型中的代理作为该总体的一部分包含在模型中,然后您可以安全地执行 agent1.variable=x;然后输入.take(agent1(;

似乎当您生成一个不属于具有 enter 块的群体的新代理时,它只是将变量重置为其初始值,并可能重置代理中的其他所有内容(参数除外(......我不知道为什么。

最新更新