我是Jason (代理语言)的初学者,在Jason中使用多智能体模拟进行社会模拟项目。我刚开始学习Jason,所以我是这个声明式类型语言的初学者。我想模拟随时间变化的人的行为。
// the code statement might be
Like an agent have characteristics
Age=30 years
Marital status = unmarried
education= college
employment= unemployed
etc etc
现在我想虚拟模拟多个智能体,模拟20年。因此,基于已经定义的标准,我想知道代理人生活中发生了哪些转变(未婚向结婚,或从大学到大学的教育,或从失业到就业等)。
我需要关于在Jason中模拟的指导,如何处理?
感谢你们所有人
发布于 2015-08-29 06:06:59
在Jason中,您定义了agent相信什么以及agent有什么目标。还有一个实现这些目标的计划的概念。信念代表了智能体可用的信息。例如,根据智能体自身的信息,智能体的年龄是30岁。
age(30)[Source(self)].
Status(single)[Source(self)].
例如,agent认为它喜欢其他agent:
likes(anotherAgent).
目标表示代理想要实现的事务状态,例如,您的代理可能想要写一本书或找到一份工作:
!write(book).
!find(job).
除了这些目标之外,我们还可以定义测试目标来检查是否满足条件:
?married(A).
AgentSpeak计划具有以下一般结构:
triggering_event : context <- body.
·其中:
您应该定义计划,这些计划可以帮助将代理的状态从单身更改为已结婚或从失业状态更改为找到工作。例如,代理可能需要首先检查它是否认识某人,或者如果已经知道,代理应该检查它是否喜欢某人,或者您需要定义为选择合作伙伴的代理的偏好的任何其他规则。
有一个book可以帮助你开始:在Jason网站上也有一个active mailing list。
https://stackoverflow.com/questions/31108176
复制相似问题