You are on page 1of 5

2006 年第 4 期  中  国  航  海 No. 4 Dec.

2006
总第 69 期   NAVIGATION OF CHINA Serial No. 69

文章编号 :1000 - 4653 (2006) 04 - 0082 - 04

船舶避碰多 Agent 决策支持系统的设计


刘宇宏 ,  胡甚平 ,  施朝健 ,  王胜正
( 上海海事大学 , 上海 200135)

摘  要 : 建立了一个船舶避碰 ( SCA) 多 Agent ( 主体) 决策支持系统 ( SCA2MADSS) ,设计了 SCA2MADSS 的组织结构 ,并


给出该结构的形式化描述 ,提出了船舶避碰联盟的概念及其构造原则 ,根据在避碰决策制定过程中功能的不同 ,分
别建立了 Control - Agent 、
Union - Agent 、
Ship - Agent 和 VTS - Agent 四种智能主体模型 ,并重点介绍了 Ship - Agent 的 BDI
结构模型 。
关键词 : 水路运输 ; 船舶避碰 ; 多主体系统 ; 主体
中图分类号 : K2    文献标识码 :A

The Design of a Multi2Agent Decision Support


System for Ship Collision Avoidance
LIU Yu2hong ,  HU Shen2ping ,  SHI Chao2jian ,  WANG Sheng2zheng
( Shanghai Maritime University , Shanghai 200135 , China)

Abstract : A multi2agent decision support system for ship collision avoidance ( SCA2MADSS) is presented in this paper. Its
organization structure is designed and a formalized description of the structure is given. The concept of ship collision avoidance
union and its construction principle are also put forward. The four kinds of intelligent agent model , i. e. Control- Agent , Union -
Agent , Ship - Agent and VTS - Agent , are established separately , the BDI structure model of the Ship- Agent is discussed
specially.
Key words : Waterway transportation ; Ship Collision Avoidance ( SCA) , Multi - Agent System (MAS) ; Agent

  船舶航行在一个开放式的动态环境中 , 每艘船
1  SCA2MADSS 的特点
[ 1 ,2 ]
都是可以独立操纵并具有智能性和理性的行为主
体 ,它具有不完全的信息和问题求解能力 ,并能够预 目前 ,MAS 有 5 种常用的分类标准 : 根据 Agent
测其他船舶的动态 ,通过 AIS 与其他船舶进行通信 , 的自主性 、
根据对动态性的适应方法 、
根据系统功能
而其自身的反应和动作又可以对其他船舶产生影 结构及 Agent 关于世界知识的存储和根据控制结
响 。这些都与 agent 的特点十分相符 。因此 ,提出以 构 。综合以上 5 种 MAS 的分类标准 ,SCA2MADSS 具
互利和缓解整体碰撞危险局面为目标的多 Agent 避 有如表 1 所示的特点 。
碰 决 策 支 持 系 统 , 即 SCA2MADSS ( Multi2Agent 1. 1  灵活 Agent
Decision Support System for Ship Collision Avoidance) 。 在 SCA2MADSS 中 ,每艘参与避碰的船舶被视为
将每艘船视为一个理性 agent ,将多船避碰决策过程 一个 Agent ( 即 Ship - Agent ) , 每个 Ship - Agent 具有独
视为一个多 Agent 决策过程 ,利用 agent 的智能性和 立求解问题和操纵的能力 。Ship - Agent 间通过通信
多 agent 的协作能力来解决船舶避碰问题 ,从而在一
来获得彼此的信息和意图 , 并依据这些信息来进行
定程度上实现了人 、 船合一的思想 ,降低了多船避碰
下一步的决策 。但根据系统进一步研究的需要 , 在
问题求解的难度 , 为解决船舶避碰问题提供了一条
解决某些问题时 ( 如紧迫局面或有 VTS - Agent 参与
新途径 。
避碰时 ) , 某些 Ship - Agent 需要受控于其它 Agent

收稿日期 :2006208220
基金项目 : 高等学校博士学科点专项科研基金 (20050254001) ,霍英东教育基金会高等院校青年教师基金课题项目 (02542052FN580001)
作者简介 : 刘宇宏 (19712) ,女 ,博士 ,副教授 ,主要从事导航与智能信息处理的研究 。E2mail :yhliu @cen. shmtu. edu. cn

© 1994-2007 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net
刘宇宏 ,等 : 船舶避碰多 Agent 决策支持系统的设计 83

( Ship - Agent 或 VTS - Agent ) 。 (2) 对于 SCA2MADSS 中的各个 Ship - Agent 而


言 ,需要网络控制 ,即它们之间通过消息传递构成了
表 1  SCA2MADSS 的特点
控制结构 ,并随着会遇局面的变化 ,这种控制结构可
控制 Agent 和 自主 灵活 以动态地改变 。
Agent 自主性 被控 Agent Agent Agent
( 3) 对于每个 Ship - Agent 内部而言 , 需要层次
√ 控制 ,即 Ship - Agent 内部的各个实体或模块是呈现
动态性的适应 系统拓扑结构不变 系统拓扑结构可变 层次结构的 ,有些模块既控制其下层的模块 ,同时又
方法 √ 受控于其上层的模块 。

系统功能结构
同构型系统 异构型系统 2  SCA2MADSS 的组织结构及其形式

化描述
Agent 关于世 反应式 黑板式 分布存储
  MAS 的组织结构是指系统中 Agent 之间的信息
界知识的存储 √
关系和控制关系 ,以及问题求解能力的分布模式 ,即
集中控制 层次控制 网络控制 研究如 何 有 效 地 将 各 个 Agent 组 织 起 来 , 以 便 使
控制结构分类
√ √ √ Agent 之间以及 Agent 与环境之间的通讯 、
协商和协
作能够顺利进行 。不同的组织结构构成的系统 , 其
1. 2  系统拓扑结构可变 行为方式是不同的 ,因此性能也不同 ,所以应该针对
在 SCA2MADSS 中 ,船舶的会遇局面会随着时间 具体问题选择合适的组织结构 。
的推移不断变化 , 并不是当前海图范围内的所有船 一般地 ,MAS 的组织形式主要有行政管理组织
舶都要加入到避碰决策过程中来 , 而是根据局面的 结构 、问题求解组织结构和完全自治式组织结构三
变化不断地有船舶加入决策联盟 , 也有船舶退出决 种 。对于 SCA2MADSS ,采用了将行政管理组织结构
策联 盟 。这 里 开 发 了 相 应 的 控 制 机 制 使 系 统 中 和问题求解组织结构相结合的一种混合式组织结
Ship - Agent 可 以 被 动 态 地 创 建 和 删 除 , 使 Ship - 构 ,即管理避碰问题求解组织结构 。该结构包含一
Agent 可以动态地加入或退出某一决策联盟 , 同时 个管理 Agent ( Control - Agent ) 和若干应用 Agent ( 多个
Ship - Agent 间的关系也可以动态地被修改 。 Ship - Agent 和一个 VTS - Agent ) , 管理 Agent 可以对
1. 3  同构型系统 应用 Agent 以 某 种 方 式 进 行 统 一 管 理 , 参 与 解 决
在 SCA2MADSS 中 ,各个 Ship - Agent 也许是不同 Agent 间的任务划分与分配 、 共享资源的分配与管理
类型船舶的模型化 , 其相应数据和操纵能力是各不 以及冲突的消解等 。应用 Ship - Agent 之间是平等
相同 的 , 但 就 系 统 整 体 而 言 , 每 个 Ship - Agent 在 的 ,当需要进行避让决策时 ,多个应用 Ship - Agent 形
SCA2MADSS 中的地位和功能结构是相同的 , 它们只 成一种动态组织结构 , 即联盟 , 进行通信与协作 , 以
是通过通信实现 Agent 间的协调合作 , 以期能够更 求解避碰问题 。当联盟形成后 , 每个联盟有一个联
好地解决避碰问题 。 盟 Agent (Union - Agent ) ,负责管理本联盟中的 Agent ,
1. 4  布存储 维护各成员的信息等 。在某些特殊情况下 , 可以启
在 SCA2MADSS 中 ,通过开发相应的通信协议和 动 VTS - Agent 制定避碰决策并对所有 Ship - Agent 进
消息机制 ,使得每个 Ship - Agent 可以将数据封装成 行控制 ,所以 VTS - Agent 是一种特殊的应用 Agent 。
消息的形式传递给其它 Ship - Agent , 从而实现知识 根据以上分析 ,对 SCA2MADSS 的组织结构可以
共享和协作问题求解 。 进行如下形式化的描述 :
1. 5  综合控制 若单个 Agent 实体定义为 A i ,记为 :
对 SCA2MADSS 的控制是系统有效运行的基础 。 A i = Ship - Agent | VTS - Agent | Control - Agent |
针对系统不同的层面 ,需要不同的控制策略 。 Union - Agent ( 1)
( 1) 对于 SCA2MADSS 的整体而言 , 需要集中控 则定义集合 A 为全体 Agent 的集合 :
制 ,即由一个控制 Agent ( Control - Agent ) 来负责整个 A = { A 1 , A 2 , …, A N } ( 2)
系统 的 控 制 , 如 Ship - Agent 的 创 建 和 删 除 , Ship - 式 ( 2) 中 N 为当前 Agent 实体总数目 。
Agent 间关系的修改及其通信控制等 。 Agent 模型 Agent2model 定义为 :Agent 的内部状

© 1994-2007 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net
84         中  国  航  海 2006 年第 4 期

态和主要智能活动 。 Ω 表示系统作用的外部世界环境 。
Agent2model = < D , K , I , Local2solving , 联盟的策略是建立在联盟结构之上的行为约束
Coordinate2control , Communication , Percept > ( 3) 函数 ,各种函数之间是相互关联或相互制约的 。
式中 ,D 、K 和 I 分别表示 A i ( 1 ≤i ≤N ) 内部的数据 Union2strategy = < Knowledge2distributing , Task2
库、
知识库和意图库 ; partition , Coordination2control , Communication , Conflict2
Local2solving 表示 A i 局部行为的能力 ; reconcile > ( 6)
Coordinate2control 表示 A i 的协调控制能力 ; 式 ( 6 ) 中 , Knowledge2distributing 是 知 识 分 布 策 略 ;
Communication 表示 A i 的通信能力 ; Task2partition 是任务划分策略 ; Coordination2control 是
协作控制策略 ; Communication 是通信策略 ; Conflict2
Percept 表示 A i 感知和模型化其它 Agent 及外
reconcile 是冲突消解策略 。
部环境的能力 。
在 SCA2MADSS 中 ,Ship - Agent 实时地计算与周
Agent 联盟模型 Union2model 定义为 : 为解决某
围其他船舶之间的运动参数 , 并判断本船与其它船
一问题 , 由多个 A i 及一组有关联盟结构 、
约束和策
舶之 间 是 否 存 在 碰 撞 危 险 。若 危 险 存 在 , 告 之
略构成的集合 ,联盟中的每个 A i 必须满足这组约束
Control - Agent 本船及与之存在碰撞危险的船号 , 由
和策略 。
Control - Agent 创建避碰联盟 。由于每艘船都在实时
 Union2model = < Union2structure ,Union2strategy >
地计算与周围其他船舶的碰撞危险度 , 所以可能会
( 4)
形成了多个联盟 , 如果两个联盟的 Φ 相等 , 则合并
联盟模型由联盟结构 Union2structure 和联盟策
为一个联盟 。
略 Union2strategy 两部分构成 。联盟结构用于说明联
根据以上定义 , SCA2MADSS 的组织结 构 模 型
盟的基本成员 、
职能 、
责任分布 、
联盟目标以及承担
SCA2MADSS2model 可以形式化地表示为 :
某种职能的联盟成员之间的相互关系 。 M

Union2structure = < Φ , Role , Responsibility ,  SCAMS2model = ∪Union2model j ( j ≤M ≤N ) ( 7)


j=1

Goal , Co2relation , Ω > ( 5) 式 ( 7) 中 M 为 Agent 联盟的总数目 。


式 ( 5) 中 ,Φ 是 A 的幂集合的元素 ,即 综合以上描述 ,对 SCA2MADSS 组织结构可如图
Φ = { A 1 , A 2 , …, A n } ∈2 A , n ≤ N ; 1 所示 。
  Role 是联盟职能 ( 联盟所必须的功能成分) 的集 3  SCA2MADSS 中 Ship - Agent 的 BDI
合 ,Role = { rol1 , rol2 , …, rol R } , roli 为各种职能的定
模型
义 , R 为职能总数 。
Responsibility 是责任分配的集合 , 表示 Role 在   BDI ( Belief2Desire2Intention ) 是一种描述主体的
Φ 中的分配状况 。若 A irol j ( A i ∈Φ ,rol j ∈Role ) 表示 信念 - 愿望 - 意图的 Agent 结构 。其体系结构是一
A i 能够完成 rol j 所定义的职能 ,则 A i 能够承担的所
个实际的推理结构 ,并兼具有慎思型和反应型 Agent
的特 点 。对 于 Ship - Agent , 这 里 采 取 了 基 于 PRS
有职能可以用一个集合来表示 :
rol rol rol ( Procedure Reasoning System) 变体的 BDI 结构 ,如图 2
 Capacity ( A i ) = { A i j1 , A i j2 , …, A i jr } ( 1 ≤jk ≤R ,
所示 。
k = 1 ,2 , …, r)
  Ship - Agent BDI 结 构 的 各 部 分 功 能 描 述 如
这样 ,Responsibility = 6 Capacity ( A i ) ;

[3 ]
:
Goal 是联盟的目标集合 。 Goal = { g1 , g2 , …, 1. 信念数据库 : 用于存储 Ship - Agent 关于其当
gk } ,每个目标 gi ( i ≤k ) 都存在一个责任的集合 , 表 前航行环境 、
船舶自身以及本船与其它相关 Ship -
示该目标由哪些承担相应职能的 Agent 联合完成 。 Agent 间的事实数据或信息 。
Co2relation 是系统完成联盟目标集合的 Agent 之   2. 信念知识库 : 用于存储与船舶航行和航海避
间可能存在的相互关系集合 ,即 碰有关的领域知识 , 既可以包括以产生式规则表示
Co2relation = {rel1 ,rel2 , …,rel p } 的知识 ( 如船舶避碰规则 、会遇态势 、
避碰阶段等 ) ,
式中 rel k = ( A i , A j ) (1 ≤k ≤P) 表示 A i 与 A j 上的二 以框架形式表示的航海案例 , 也可以包括以过程形
元关系 。针对船舶避碰领域问题 , 这里的相互关系 式表示的知识 ( 如船舶运动参数和碰撞危险度的计
可以是有关职能 、
优先权限 、
通信 、
相对位置等 ; 算等) 。

© 1994-2007 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net
刘宇宏 ,等 : 船舶避碰多 Agent 决策支持系统的设计 85

图 1  SCA2MADSS 的组织结构图

念知识库中有关的一些知识 。

4  SCA2MADSS 的工作机制
SCA2MADSS 中的工作机制描述如下 :
1. Control - Agent 根据用户的操作进行外界环
境设置 ,并创建 Ship - Agent , 包括 : Ship - Agent 定位 、
空间分配 、参数设置 、操作能力认定等 ;
2. 系统给每个 Ship - Agent 分配时间片 ;
3. Ship - Agent 获得时间片后 , 通过计算 、
推理
和通信等方式得到关于其它船舶的各种静态和动态
的数据与信息 ,并判断本船是否与其它船舶间存在
图 2  Ship - Agent 的 BDI 结构
碰撞危险 。若无碰撞危险 , 转 2. ; 若存在碰撞危险 ,
  3. 愿望目标库 : 用于存储整个避碰过程中多个 转 4. ;
Ship - Agent 的总体目标 ( 或全局目标 ) 和每个 Ship - 4. Ship - Agent 向 Control - Agent 发出危险信号 ,
Agent 的个体目标 ( 或局部目标) 以及为实现这些目 并将本船及与本船存在碰撞危险的船舶标号告知
标所需要完成的多个相应的子目标 。 Control - Agent ,由 Control - Agent 确定避碰任务 , 创建
4. 意图模型库 : 用于存储实现愿望目标库中各 Union - Agent , 设置参数 , 并向相应的 Ship - Agent 发
种目标的问题求解模型或决策策略 。不同类型的外 送任务描述信息和联盟通告 , 从而形成一个会遇避
界环境 、会遇阶段和会遇态势下 ,Ship - Agent 需要不 让联盟 。若两个联盟的 Φ 相等 ,则被合并为一个联
同类型的决策策略 。 盟;
5. 通信 : 用于实现 Ship - Agent 之间的信息传 5. 收到联盟通告的 Ship - Agent 加入联盟 , 并接
输 。建立起了基于船舶间 AIS 消息传送的多 Agent 受相应的 Union - Agent 管理 。在 Union - Agent 的协
通信机制 ,开发了基于 AIS 消息的 Agent 通信语言和
作管理下 , 联盟内的 Ship - Agent 各自进行计算 、

基于 Speech Act 理论的 Agent 通信原语 ,并制定各通
理、
判断等智能活动 , 并进行相互通信 , 根据求解目
信原语的状态转移图 。
标 ,采取相应的协作机制 ,如 Ship - Agent 协商的方式
6. 感知 : 是 Ship - Agent 除通信方式以外获得信
或 VTS - Agent 直接管理的方式等 , 求得避让方案 。
息的形式 ,主要包括自身数据的设置和外界环境信
在此 过 程 中 , Union - Agent 还 要 不 断 监 督 各 Ship -
息的获取 。
Agent 的状态 , 以便确定哪些 Ship - Agent 加入该联
7. 行动 : Ship - Agent 在获得决策结果后将采取
盟 ,哪些 Ship - Agent 退出该联盟 ;
相应的避让操作 , 而这一系列的操作将会对其它
Ship - Agent 产生一定的影响 。 6. 若联盟内的 Ship - Agent 间已不存在碰撞危

8. 协同推理器 : 是 Ship - Agent 进行“思维”活动 险 ,则注销该联盟 ,删除 Union - Agent ,转“2. ”。

的核心 ,根据愿望目标库中当前的目标和信念数据 ( 下转第 89 页)


库中的数据 ,选择意图模型库中的意图 ,进而激活信

© 1994-2007 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net
黄洪琼 ,等 : 港口吞吐量预测的动态平滑参数新模型 89

演变 ,必须注意到这种演变有其历史特点 , 譬如 : 改
革开放对经济增长的促进作用 ; 世界产业结构调整
导致中国制造业大发展 ; 中国加入 WTO 的促进作用
等等 。故而 ,作为管理决策人员在实际操作时 ,还需
兼顾考虑诸如经济 、 人口 、
资源 、
综合运输网等影响
因子 。

参 考 文 献

[ 1 ]  陈国庆 ,赵一飞 . 相同腹地港口吞吐量预测方法 [J ].

图 4  集装箱吞吐量 3 种预测结果比较图 上海交通大学学报 ,2006 ,40 (4) :7012704.


[ 2 ]  许长新 , 严以新 , 张  萍 . 基于系统动力学的港口吞
表 2  集装箱吞吐量 3 种预测误差结果比较一览表 吐量预测模型 [J ]. 水运工程 , 2006 , (5) :26228.
方法 1 方法 2 方法 3 [ 3 ]  陈  宁 ,朱美琪 ,余珍文 . 基于对数二次指数平滑的港
SS E 3. 060 9 e + 005 2. 907 3 e + 005 6. 304 6 e + 004 口吞吐量预测 [J ]. 武汉理工大学学报 ,2005 , ( 9 ) :772
MARE 0. 191 3 0. 211 5 0. 144 9 79.
MAXARE 0. 553 8 0. 923 1 0. 769 2 [ 4 ]  杨  靳 ,邵哲平 . 港口吞吐量计量预测分析 [J ]. 中国
航海 , 2005 , (3) :54256.
[ 5 ]  米翠兰 . 二次指数平滑法的研究与应用 [J ] . 华北煤
4  结语
炭医学院学报 ,2000 ,2 (5) :5242525.
我们建立的动态指数平滑优化模型 , 由于最终 [ 6 ]  张忠平 . 指 数 平 滑 法 [M] . 北 京 : 中 国 统 计 出 版 社 ,
的 min SS E 是借助原始的时间序列对α 进行自适应 1996.
[7 ] 
“预测方法和技术的应用研究”
课题组 ,中国预测技术
优选后得到的 ,加之平滑中每一项的权重随着 α 的
发展研究 [J ]. 预测 ,1991 , (5) :10217.
变化都在不停地自动调整 , 因此新模型及其算法不
[ 8 ]  徐大江 . 预测模型参数的指数平滑估计法及其应用的
仅没有改变指数平滑法的基本特征 , 而且对时间序 进一步研究 [J ]. 系统工程理论与实践 ,1999 , ( 2 ) :252
列的适应能力更强 。从而使指数平滑应用的初值选 37.
取、参数确定 、预测偏差等问题获得了较好的解决 。 [ 9 ]  张德洪 ,顾家骏 . 运输船舶 船 型 技 术 经 济 论 证 方 法
进一步地 ,此方法可以推广到其它阶数的指数平滑 [M]. 北京 : 人民交通出版社 ,1989.
预测方法中 。从上海港口吞吐量及集装箱吞吐量预 [10 ]  高仁祥 ,张世英 ,刘豹 . 非线性经济建模与预测新思路
探讨 [J ]. 系统工程理论与实践 ,1997 , (7) : 7211.
测的实例表明 ,该方法取得了良好的预测结果 。
[11 ]  唐炎森 . 指数平滑预测公式与平滑系数 [J ]. 统计与信
  该模型可以用来解释二十几年来港口吞吐量的
息论坛 ,1998 , (1) :38243.

( 上接第 85 页) 社 ,2002.
[2 ]  李  英 . 多 Agent 系统及其在预测与智能交通系统中的
5  结语 应用 [M]. 上海 : 华东理工大学出版社 ,2004.
[3 ]  刘宇宏 . 船舶避碰智能决策支持系统 的 设 计 与 实 现
给出了一个基于 Multi2Agent 思想设计的船舶避
[J ]. 中国航海 ,2004 , (4) :32238.
碰决策支持系统模型 , 即 SCA2MADSS , 对系统的组 [4 ]  Mark F. Wood , Scott DeLoach. An Overview of the
织结构进行了形式化描述 , 同时建立了 Ship - Agent Multiagent Systems Engineering Methodology [ C ] . Lecture
的 BDI 结构 , 并对其中部分功能予以了实现 。SCA2 Notes in Computer Science. Vol. 1957 , Springer Verlag ,
MADSS 为研究船舶避碰问题提供了一个平台 , 在此 Berlin , January 2001 , 2072221.
[5 ]  Peter Stone , Manuela Veloso. Multiagent Systems : A Survey
基础上可以对各类决策方法及多 Agent 学习技术等
from a Machine Learning Perspective [ J ] . Autonomous
进行研究 。此外 , 由于篇幅所限 , 关于 SCA2MADSS
Robotics , 2000 ,81 (3) :3452383.
中通信机制的设计与实现部分将在其它文章中作详 [6 ]  徐  潼 . 多 Agent 系统体系结构和协作研究 [D ] . 南京 :
细论述 。 南京理工大学硕士学位论文 ,2003.

参 考 文 献

[1 ]  张维明 . 智能协作信息技术 [M] . 北京 : 电子工业出版

© 1994-2007 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net