仅创建一个自定义边的原始解决方案在这里:Repast Java: Creating a custom edge agent to schedule specific actions
1)。现在,我需要创建多种类型的自定义边来充当唯一代理(例如,在我的模型中,我具有路由代理,供应链接代理,关系链接代理)。我是否必须重复链接中描述的上述过程? (即添加另一个专用的CustomEdgeCreator类和名称不同的CustomEdge类),还是有更有效的方法?
2)。给定以上Zombie模型中的示例,我注意到通过CustomEdgeCreator方法创建的自定义边缘不会使边缘代理类在GUI中可见,这不便于跟踪与边缘代理相关的相关属性。
也无法从边缘代理执行数据收集。我已将每个边缘的权重设置为2,但图表中显示的总和为0。
以上问题导致了一个重要问题:边缘类别与普通座席类别有何不同?
关于您的第一点:由于您要将每个网络投影与特定的EdgeCreator实例相关联,因此有可能使EdgeCreator构造函数接受您希望该网络投影创建的Link类型。这可能会使事情更加简化。
关于第二点:除非您将创建的边添加到上下文中,否则它不会显示为真正的代理。因此,在创建网络链接时,您可以将其添加到上下文中,并且它应该同时显示在代理表中和用于数据收集的目的。