使用 .inject() 时指定代理属性
Posted
技术标签:
【中文标题】使用 .inject() 时指定代理属性【英文标题】:Specifying agent properties when using .inject() 【发布时间】:2020-12-20 09:03:11 【问题描述】:出于逻辑测试的目的,我使用了一个触发“source.inject()”的可点击按钮。代理的上述逻辑取决于代理特征。因此,在测试模型逻辑时,最好控制它们在启动期间获得的特性。在源块的 inject() 函数上搜索 AnyLogic 文档并没有显示任何强制初始特征的方法。
我尝试过使用“add_patients();”这允许创建代理,我可以根据需要在括号内指定特征。但是,如果我使用此功能,代理将不会进入状态图。
【问题讨论】:
【参考方案1】:不要使用源,而是使用输入块,然后您可以控制代理的参数。所以代替 source.inject() 你会这样做:
Patient patient=add_patients(a,b,c,d);
enter.take(patient);
当然,您需要在某个地方定义一组患者来执行此操作。
如果您没有大量的代理,那么您可以这样做
Patient patient=new Patient(a,b,c,d);
enter.take(patient);
【讨论】:
Felipe,感谢您提供的非常有用的答案!我有一个汽车人口,但不能使用这些命令向人口中添加一辆新车。这有什么问题?以上是关于使用 .inject() 时指定代理属性的主要内容,如果未能解决你的问题,请参考以下文章