AnyLogic存储子Agent中路径找不到错误排查求助
AnyLogic 路径找不到错误排查方案
错误详情
离散事件执行期间异常:
root.storageRooms[0].storePalletinRoom.moveToBayT.freeSpaceSendTo:
路径找不到! {agent=11, source={level=level, pos=(10.0, 265.0, 0.0)}, target={level=v_level, pos=(25.0, -35.0, 0.0)}}
排查与解决步骤
- 验证跨Level网络连通性:
错误显示源节点在level、目标在v_level,即使已配对LevelGate,仍需确认:存储Agent内v_level的LevelGate属性connectedLevel是否正确指向主模型的level;同时检查两个Level的导航节点是否通过LevelGate形成连通路径,而非孤立网络。 - 检查导航网络初始化完整性:
查看f_createnetwork函数,确认所有创建的Storage、RectangularNode对象都已通过network.add(...)加入同一导航网络;运输器使用的navigationNetwork需与该网络完全一致,避免跨网络调用导致路径查找失败。 - 确认目标位置的合法性:
目标坐标(25.0, -35.0, 0.0)需落在v_level的可导航范围内,且无静态障碍物(如未设置为“可穿过”的对象)阻挡。运行仿真时开启显示导航网络选项,直观检查源、目标点是否在连通的网络路径中。 - 调整Agent创建与网络初始化顺序:
通过按钮创建存储Agent时,确保f_createnetwork函数在Agent初始化阶段完成全部网络节点创建,再执行主模型与存储Agent的LevelGate配对操作,避免因网络未完全初始化触发运输逻辑。 - 核对运输器移动配置:
检查执行运输的运输器,确认其允许跨Level移动的属性已开启,且导航规则未限制路径搜索范围。
内容的提问来源于stack exchange,提问作者Jeanri Gerber
相关产品推荐
相关产品推荐

