【问题标题】:Anylogic send a new order using getNearestAgentByRouteAnylogic 使用 getNearestAgentByRoute 发送新订单
【发布时间】:2018-09-21 07:20:14
【问题描述】:

配送中心(代理)将工作订单发送到制造中心(GIS 地图上多个位置的代理)

在分销代理处,我在下面添加了代码

TestOrder testorder = new TestOrder (this); 

// "this" 是分发代理的位置

send (testorder, getNearestAgentByRoute(main.manufacturingcenters)); 

// 将测试订单发送到最近的代理

然后我在制造中心代理中设置“输入”,代理类型为 TestOrder。

但是,模拟中没有输入,下面的代码显示错误

send (testorder, getNearestAgentByRoute(main.manufacturingcenters)); 

【问题讨论】:

    标签: agent anylogic


    【解决方案1】:
    • "this" 是分发代理,而不是分发代理的位置...testOrder(this) 表示您的 testOrder 代理有一个参数是分发代理.. 对吗?如果不是,那你就有问题了……我假设 testOrder 是一种代理类型,否则你将无法使用 send 函数发送任何内容。
    • send (testorder, getNearestAgentByRoute(main.manufacturingcenters); 最后缺少一个括号。这是您收到错误的原因之一。
    • 如果您有流程建模库中的输入元素,要在输入块中生成代理,您需要执行enter.take(agent);

    【讨论】:

    • 感谢您的回复!我按照您在 1 和 2 中提到的设置系统。我收到此错误消息“制造中心无法解析为变量”
    • 因为manufacturingcenters 可能是一种代理类型......而不是代理群体......这是一种可能性......但它可以是许多其他的东西
    • manufacturingcenters 是由 GISpointcollections 创建的代理群体。嗯,,,模拟工作完美,但只有测试订单没有在制造中心捕获。如果有其他问题,我会调查并更新谢谢!
    猜你喜欢
    • 2022-01-23
    • 2018-10-24
    • 2022-01-20
    • 2012-10-26
    • 2021-06-10
    • 2017-08-08
    • 2015-08-19
    • 2016-01-23
    • 1970-01-01
    相关资源
    最近更新 更多