Chapter 7 Communicating

把消息视为带意图和前后条件的行动,比较言语行为、KQML、FIPA ACL 与 JADE。

学习目标

  • 能把消息视为带意图与前后条件的行动
  • 能比较 KQML 与 FIPA ACL 的消息类型
  • 能用 JADE 实现一次双向通信

为什么必须先冻结联合模型

先预测:一条缺少 performative 的消息会引发什么问题?带着判断进入本页。

把消息视为带意图和前后条件的行动,比较言语行为、KQML、FIPA ACL 与 JADE。 代理通信语言不仅定义字段,还定义 communicative act 的意图、可行前置条件和期望效果;互操作需要会话协议、内容语言与本体同时兼容。 本页不以单个代理“看起来聪明”为通过条件,而是检查联合状态、偏离动机、失败传播和可重放证据。

直觉、对象与计算合同

贯穿场景是:买方代理发起请求、接收提案、确认并处理超时。参与者、可观察信息、行动集、偏好或目标、环境转移、协议版本和终止条件必须在运行前固定,不能在看到结果后修改效用或阈值。

messageeffect=performative×content×context×protocolstatemessage_effect = performative × content × context × protocol_state

公式用于公开关系与前提,不替代正式证明或实证测量。语法兼容不代表语义兼容,协议状态和本体版本必须共同验证。 本页重点防范:接收方识别 INFORM 字段,却在错误会话状态接受了过期内容

通信
通信KQML 与 FIPA ACL;点击节点查看详情1KQML2FIPA ACL3对话
KQML 协议

外层消息格式:performative + 内容 + 本体声明。tell、ask-if、achieve 等原语。

正式目录节点:解释与联合验证

下列目录节点逐项映射到解释、页面专属实验和章末答案。每个节点都必须指出它改变哪个联合状态以及什么观测会推翻结论;单纯出现术语不计覆盖。

Chapter 7 Communicating

“Chapter 7 Communicating”描述消息行为或会话规则,字段可解析不代表意图、上下文和状态都有效。 在“代理通信语言不仅定义字段,还定义 communicative act 的意图、可行前置条件和期望效果;互操作需要会话协议、内容语言与本体同时兼容。”这条联合因果链中,本节点重点检查言语行为;只改变一个条件并保存联合轨迹,若出现“接收方识别 INFORM 字段,却在错误会话状态接受了过期内容”,就在首个分叉停止。

7.1 Speech Acts

“7.1 Speech Acts”描述消息行为或会话规则,字段可解析不代表意图、上下文和状态都有效。 在“代理通信语言不仅定义字段,还定义 communicative act 的意图、可行前置条件和期望效果;互操作需要会话协议、内容语言与本体同时兼容。”这条联合因果链中,本节点重点检查KQML;只改变一个条件并保存联合轨迹,若出现“接收方识别 INFORM 字段,却在错误会话状态接受了过期内容”,就在首个分叉停止。

7.1.1 Austin

“7.1.1 Austin”细化本单元的正式问题,需要映射到参与者、信息、行动、结果和失败边界。 在“代理通信语言不仅定义字段,还定义 communicative act 的意图、可行前置条件和期望效果;互操作需要会话协议、内容语言与本体同时兼容。”这条联合因果链中,本节点重点检查FIPA ACL;只改变一个条件并保存联合轨迹,若出现“接收方识别 INFORM 字段,却在错误会话状态接受了过期内容”,就在首个分叉停止。

7.1.2 Searle

“7.1.2 Searle”细化本单元的正式问题,需要映射到参与者、信息、行动、结果和失败边界。 在“代理通信语言不仅定义字段,还定义 communicative act 的意图、可行前置条件和期望效果;互操作需要会话协议、内容语言与本体同时兼容。”这条联合因果链中,本节点重点检查会话状态;只改变一个条件并保存联合轨迹,若出现“接收方识别 INFORM 字段,却在错误会话状态接受了过期内容”,就在首个分叉停止。

7.1.3 The plan-based theory of speech acts

“7.1.3 The plan-based theory of speech acts”描述消息行为或会话规则,字段可解析不代表意图、上下文和状态都有效。 在“代理通信语言不仅定义字段,还定义 communicative act 的意图、可行前置条件和期望效果;互操作需要会话协议、内容语言与本体同时兼容。”这条联合因果链中,本节点重点检查JADE;只改变一个条件并保存联合轨迹,若出现“接收方识别 INFORM 字段,却在错误会话状态接受了过期内容”,就在首个分叉停止。

7.1.4 Speech acts as rational action

“7.1.4 Speech acts as rational action”描述消息行为或会话规则,字段可解析不代表意图、上下文和状态都有效。 在“代理通信语言不仅定义字段,还定义 communicative act 的意图、可行前置条件和期望效果;互操作需要会话协议、内容语言与本体同时兼容。”这条联合因果链中,本节点重点检查言语行为;只改变一个条件并保存联合轨迹,若出现“接收方识别 INFORM 字段,却在错误会话状态接受了过期内容”,就在首个分叉停止。

7.2 Agent Communication Languages

“7.2 Agent Communication Languages”描述消息行为或会话规则,字段可解析不代表意图、上下文和状态都有效。 在“代理通信语言不仅定义字段,还定义 communicative act 的意图、可行前置条件和期望效果;互操作需要会话协议、内容语言与本体同时兼容。”这条联合因果链中,本节点重点检查KQML;只改变一个条件并保存联合轨迹,若出现“接收方识别 INFORM 字段,却在错误会话状态接受了过期内容”,就在首个分叉停止。

7.2.1 KQML

“7.2.1 KQML”描述消息行为或会话规则,字段可解析不代表意图、上下文和状态都有效。 在“代理通信语言不仅定义字段,还定义 communicative act 的意图、可行前置条件和期望效果;互操作需要会话协议、内容语言与本体同时兼容。”这条联合因果链中,本节点重点检查FIPA ACL;只改变一个条件并保存联合轨迹,若出现“接收方识别 INFORM 字段,却在错误会话状态接受了过期内容”,就在首个分叉停止。

7.2.2 The FIPA Agent Communication Language

“7.2.2 The FIPA Agent Communication Language”描述消息行为或会话规则,字段可解析不代表意图、上下文和状态都有效。 在“代理通信语言不仅定义字段,还定义 communicative act 的意图、可行前置条件和期望效果;互操作需要会话协议、内容语言与本体同时兼容。”这条联合因果链中,本节点重点检查会话状态;只改变一个条件并保存联合轨迹,若出现“接收方识别 INFORM 字段,却在错误会话状态接受了过期内容”,就在首个分叉停止。

7.2.3 JADE

“7.2.3 JADE”描述消息行为或会话规则,字段可解析不代表意图、上下文和状态都有效。 在“代理通信语言不仅定义字段,还定义 communicative act 的意图、可行前置条件和期望效果;互操作需要会话协议、内容语言与本体同时兼容。”这条联合因果链中,本节点重点检查JADE;只改变一个条件并保存联合轨迹,若出现“接收方识别 INFORM 字段,却在错误会话状态接受了过期内容”,就在首个分叉停止。

常见误区

术语

小结

  • 消息视为带意图和前后条件的行动
  • 代理通信语言定义意图、前置条件和期望效果
  • 互操作需会话协议、内容语言与本体同时兼容
  • 语法兼容不代表语义兼容
  • 错误会话状态中不应接受过期消息内容

容易踩的坑

误区 1

现象 → 消息不带 performative 原因 → 接收方不知如何处理 修法 → 每条消息声明意图类型

误区 2

现象 → 对话无超时机制 原因 → 双方互等形成死锁 修法 → 每步设截止期与终止分支

误区 3

现象 → 自造消息格式 原因 → 互操作性丧失 修法 → 遵循 FIPA ACL 标准

练习与答案

前后导航

练习

练习

问题 1: performative 是什么?

问题 2: KQML 与 FIPA ACL 的关系?

问题 3: 设计一个三轮报价协商的消息序列。(独立实现)

讨论

评论区加载中…