微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Anylogic 中的条件资源池

如何解决Anylogic 中的条件资源池

我正在尝试制作一个 Seize 块,以根据通过该块的代理类型从不同的资源池中进行选择。

我的第一次尝试是在 Seize 块中创建资源集参数的动态引用,如图所示:

image of dynamic value in Resource set

if(agent instanceof Pala || agent instanceof Torre){
    Extensibles;
}else{
    Camabajas3e;
}

其中 ExtensiblesCamabajas3e 是资源池名称

但我收到错误消息:“类型不匹配:无法从 ResourcePool 转换为 ResourcePool[][]。”

我的第二次尝试是将两个资源池都包含在列表中,而是使用参数“资源选择条件”和以下代码

agent.vehículo==unit.vehículo 

vehículo 是流程图中每种代理类型和资源池中每种资源类型内的参数。

但我收到错误消息:“vehículo connot be resolve or is not a field”但它是代理和资源内部的参数。

我做错了什么?我该如何解决

谢谢。

解决方法

使用同一个池的单位而不是(替代)资源发送

并在代码中这样写:

(agent instanceof Pala || agent instanceof Torre) ? Extensibles : Camabajas3e

对于第二个选项,您实际上可以使用您所做的,但您需要告诉 anylogic 您的代理类型是什么..

agent.vehiculo==((ResourceType)unit).vehiculo

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。