jason入门讲稿.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
jason入门讲稿

4.2.1 开发工具及理念 开源软件Jason的开发语言主要是Java和AgentSpeak。Jason对开发多Agent系统提供了很好的支持,可以很方便的创建Agent、协调Agent之间的相互通讯、Agent认知环境与环境相互作用从而改变环境等。 4.2.1.1 Agent构建 在AgentSpeak中,一个Agent是由一系列的bs(Bliefs)—信念(Agent的初始化信念集)和一系列ps(Plans)—计划(Agent的计划库)。at对应的P表示的是定义符号(定义一个信念),而f对应的A是一个行为符号(表示一个行为)。注意bs中的at应该是“实”的,即信念是实的,如变量在这里是不允许的。在AgentSpeak中,“实”的用小写字母,而虚的,如变量,用大写字母表示。 AgentSpeak中的计划plan表示agent在环境中能执行的基本动作,由上图的p来表示,p所指向的te是触发事件(表示了计划的目的),ct是计划执行的条件,h是一组行为、意图或信念更新序列;te:ct为计划中的头部,h则是它的体。那么Agent中的一组计划是有ps所指向的计划列表。每一个规划的头部都有一个ct,它是规划能否正常执行的条件。ct必须是由Agent信念对规划是否可行的逻辑推理结果。 ct为true,或是条件表达式,依据当前信念判断条件是否为真。 触发事件te可以是增加或减少Agent的信念集(分别用+at,-at来表示),或者是增加或减少一个意图(分别由+g和-g来表示)。由原子行为,意图和信念更新组成的h是计划的体。 行为A由行为标志符和参量表示。是Agent可执行的原子行为。 意图g由前缀和标志符表示,可以是achievement goal(前缀用! 表示,) 或 test goals(前缀用? 表示)。achievement goal在实际应用中可产生子计划的执行(以+!g为标志的计划)。而test goals是查询信念库是否有相应的信念,如有,则从信念库中取出相应的信念;如果没有,则产生事件+?g,如果有相匹配的计划,则执行,如无,则fail,因为no applicable plans,此时仍然可能试执行-?g计划,如果依然没有该计划,则丢弃此意图并告知用户。 Test Goals Test goals are normally used to retrieve information from the belief base, or to check if something we expected is indeed believed by the agent, during the execution of a plan body. One may wonder why we do not use the context of the plan to get all the necessary information before the agent starts on its course of action. Conceptually, the context should be used only to determine if the plan is applicable or not (i.e. whether the course of action has a chance of succeeding), and practically we may need to get the latest information which might only be available, or indeed might be more recently updated, when it is really necessary. For example, if the agent is guaranteed to have some information about a target’s coordinates, which are constantly updated, and only needed before a last action in the course of action defined by the plan body, then it would make more sense to use ?coords(Target, X, Y); just before that action than to include coords(Target, X, Y) in the context. In this particular example of test goal, presumably t

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档