代理通信:传统方法与承诺协议的对比及工程应用
1. 传统方法的局限性
传统的代理通信方法在抽象层次较低时,除了最简单的情况,设计和维护都很困难,很难将利益相关者的业务需求映射到所产生的协议中。其灵活性较差,代理在运行时几乎没有灵活性,协议本质上规定了代理的框架,任何偏离协议的行为,无论从业务角度看多么合理,都被视为违规。不过,检查代理是否符合协议相对容易,在计算上类似于验证一个字符串是否能被有限状态机接受,但这种便利性是以牺牲灵活性为代价的。
2. 传统 AI 方法
2.1 方法起源
传统 AI 方法从两个相关的起点发展而来。第一个起点是广义的人机交互,特别是自然语言理解,旨在开发一种工具,帮助用户从数据库获取信息或执行简单事务,如预订火车票。随着工具变得更加主动,它们被视为代理,不同用户的代理之间也可以相互通信。第二个起点是构建分布式基于知识的系统,每个代理包含推理器和知识表示,通信只是共享知识的一种方式。这两种方法都基于两个假设:成员代理使用相同的知识表示,并且代理之间基本是合作的。
2.2 KQML
20 世纪 80 年代出现了代理通信语言,知识查询和操作语言(KQML)具有一定的通用性。KQML 假设每个代理维护一个基于知识(更准确地说是信念)断言描述的知识库,提出了一些重要的原语,如查询和告知。但 KQML 存在诸多限制,其主要假设是通信的代理是合作的且由同一设计者设计,当代理具有自主性时,可能会产生虚假消息。此外,KQML 没有为代理设计者提供明确的基础来选择消息类型和指定内容,导致设计者常使用单一消息类型,这使得不同团队开发的代理之间难以实现互操作性。
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



