首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我如何在任何逻辑中使用状态图来控制单个行人类型的代理行为?

我如何在任何逻辑中使用状态图来控制单个行人类型的代理行为?
EN

Stack Overflow用户
提问于 2020-05-18 11:47:13
回答 1查看 219关注 0票数 0

我试图做一个行人模型,在那里,个人行人的行为需要被控制。我能用行人代理人的状态来做吗?

更新:很抱歉我最初的问题不够清楚

main

jaywalker (代理人)

运行时屏幕截图

来自数据源的jaywalker代理

在第一张图片(主要),我有一个简单的行人模型(行人代理)通过两个路口。最初,所有的jaywalker代理都处于“步行”状态&有色黄色(图2),但是每当一些代理靠近另一个代理(在jaywalker代理表示中显示的三角形范围内的接近平均值)时,它们就会向它们发送消息"HI“&社会化。如果某人是社会化的,那么他们就会从“步行者”状态转变为“社会化”状态(并变成红色)&向其他在他的三角范围内的人发送信息(“视野”三角形)。第一个11个社交活动是由main (在模型启动时)发出的消息直接完成的&11个jaywalker代理正在接收它,并进入“社会化”状态。问题是在我的图表中,它显示了前11个社会化,但是在模型运行时,代理的颜色没有变化。其次,在这11次社交活动之后,特工们并不是在社交,也没有向处于他三角范围内的其他人传递任何信息。

因此,我很困惑如何让我的代理从一个状态图移动到另一个状态图,同时使用步行街库对运动行为进行建模。我是否错过了连接步行街图书馆和代理状态图的任何步骤?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-19 09:30:53

您似乎没有告诉PedSource创建"JayWalker“类型的定制代理。试试这个:

  1. 删除您的人口,不需要
  2. 确保您的JayWalker代理类型在其属性中被定义为行人:

  1. 在您的PedSource中,确保它创建"JayWalker“代理,如下所示。(您应该选择JayWalker,其中我的屏幕选择"MyPed")

或者,您可以让PedSource将创建的"MyPed“代理添加到自定义填充中,但可能对您来说并不必要。

PS:请理解PedSource正在创建代理,不要为此使用您的用户。阅读更多关于PedSource和人口的内容,并做一些教程来更好地理解这些基本概念:-)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61868867

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档