当前位置: 首页 > 知识库问答 >
问题:

deleteSelf()中出错:代理应属于某个总体

司寇阳曦
2023-03-14

我有以下模型,其中我有一个托盘代理和一个盒子代理,在托盘代理中有一群盒子。托盘到达后,叉车将它们移到桌子上,然后它们进入“延迟”模块,该模块将托盘带到箱式流程的入口模块。在底部,流程图叉车从托盘上移走盒子,并将它们移动到一个节点,如图所示。一旦所有的箱子都从托盘上搬走,叉车就把托盘搬出来,然后它们就沉下去了。

当前,移除的框被添加到队列中,并保留在队列中。我想用水槽把它们移走/摧毁。当我添加接收器而不是/或在队列之后时,我会得到以下错误

Exception during discrete event execution:
root.pallets[0].boxes[-1]:
Error in deleteSelf(): Agent should belong to some population
java.lang.RuntimeException: root.pallets[0].boxes[-1]:
Error in deleteSelf(): Agent should belong to some population

有没有办法绕过这个错误。我在托盘代理内部的状态图中从托盘中移除盒子,该状态图循环直到所有盒子被移除:

if (boxes.size() > 0){
Box b = boxes(0);
b.box_location = this.getXYZ();
remove_boxes(b);
get_Main().enter.take(b);
current_N_Boxes--;}

共有1个答案

戚祺
2023-03-14

在进程中流动的代理必须存在于总体中。在尝试删除它们之前,您正在从它们的总体中(在托盘代理中)删除这些框,因此出现错误。

有几种处理方法:

>

  • 使用批处理/取消批处理或拾取/丢弃块来“正确地”使代理内部的代理同时使父代理和子代理在不同时间通过进程移动。(AnyLogic处理默认总体中仍存在未批处理/丢弃的代理。)

    在Main中的主总体中创建box代理,并使用托盘代理中的集合来引用其中的box。然后你可以从托盘中“移除”他们(通过从托盘的集合中移除他们),同时保持他们在主群体中,直到他们结束他们的部分过程。

  •  类似资料:
    • 本文向大家介绍Oracle 错误代码整理总结,包括了Oracle 错误代码整理总结的使用技巧和注意事项,需要的朋友参考一下 常见错误: ORA-00001:违反唯一约束条件(主键错误) ORA-00028:无法连接数据库进程 ORA-00900:无效sql语句 ORA-00904:字段名写错或是建表时最后一个字段有逗号 ORA-00907:缺少右括号 ORA-00911:无效字符 ORA-0091

    • 在我的AWS账户上,我几乎没有VPC。我正在试图找到一种方法来列出位于某个专有网络下的所有资源。 谢谢

    • 问题内容: 我想编写一个查询,该查询返回所有行,直到某一列值的总和达到某个值为止。 例如在下表中: 如果我要获取行,直到列的总和等于7。 如果我要获取行,直到列的总和等于13。 问题答案: 这是一种应在MySQL中工作的方法: 在这种情况下,它涉及计算运行总计并选择记录,而运行总计小于或等于给定数字。 SQL小提琴

    • 我正在我的服务器debian上安装mediaproxy。请查看下面粘贴的错误。我也尝试过安装依赖项,但仍然会发生此错误。我需要帮助。 root@server:/usr/local/src/mediaproxy-2.5。2# ./设置。py build运行build运行build\u py运行build\u ext building'mediaproxy。接口。系统_conntrack'扩展x86_

    • 问题内容: 我的网站有一些链接样式,CSS如下: 这里是一个的jsfiddle展示他们是如何 应该 在各自不同的状态看: :link =蓝色文字没有装饰 :visited =灰色文字加下划线 :hover =浅蓝色背景的白色文本 在和工作正常,但由于某些原因,国拒绝显示下划线。在使用Firebug或检查器的Chrome和Firefox中,我可以看到实际的样式,文本为灰色,只有它拒绝状态。 关于我在

    • 我做了一个机器人在python与硒,但我有一个错误,我不能通过。 我的脚本运行了X次,每次使用一个新的代理,问题是有时代理不工作和脚本崩溃