《1 智能交通系统ITS》

1 智能交通系统ITS[1]

当今世界各国的大城市无不存在着交通拥堵问题。美国1976—1997年, 每年车辆公里数以77 %的速度上升, 可是同期道路建设里程的增长数仅为2 %;在城市交通的高峰期, 54 %的车辆处于拥堵状态。由于交通拥堵, 人们每天消耗在上下班的时间比平时平均多了1.5 h, 同时导致商业车辆在交通运输中的延误, 增加了运输成本。然而有限的土地和经济制约等因素使得道路建设不可能达到相对满意的里程数, 所以需要在不增加扩张路网规模的前提下, 提高交通路网的通行能力。这就要综合运用现代信息与通讯技术等手段来提高交通运输的效率。

日本、美国和西欧等发达国家为了解决所面临的交通问题, 竞相投入大量资金和人力, 大规模地进行道路交通运输智能化的研究试验。起初进行道路功能和车辆智能化的研究。随着研究的不断深入, 系统功能扩展到道路交通运输的全过程及其有关服务部门, 发展成为带动整个道路交通运输现代化的智能运输系统, 也称智能交通系统 (intelligent transportation system, ITS) 。智能运输系统的服务领域为:先进的交通管理系统 (ATMS) 、出行信息服务系统 (ATIS) 、商用车辆运营系统 (CVOS) 、电子收费系统 (ETC) 、公共交通运营系统 (ATPS) 、应急管理系统 (ERP) 、先进的车辆控制系统 (AVCS) 。智能运输系统实质上就是利用高新技术对传统的运输系统进行改造而形成的一种信息化、智能化、社会化的新型运输系统。它使交通基础设施能发挥最大的能效, 从而获得巨大的社会经济效益。主要表现在:提高交通的安全水平;提高道路网的通行能力;提高汽车运输生产率和经济效益。

《2 移动agent》

2 移动agent[2]

智能交通系统技术作为一门新兴技术, 其卓越作用已经得到体现, 但是技术的迅猛发展和信息的快速膨胀使人们在组织、共享、使用信息时又不断面临新的挑战:如何高效地组织和共享信息;信息既要分布, 又要紧密结合;如何使系统支持不断改变、发展的服务要求;如何使系统支持实时的连续媒体服务;如何在系统中有效地支持移动计算。传统的技术难以满足这些要求, 需要新的标准、技术使分布处理系统体现高度的智能协作性及移动性。移动agent技术当为首选。

移动agent的概念是20世纪90年代初由General Magic公司在推出商业系统Telescript时提出的, 简单地说, 移动agent是一个能在异构网络中自主地从一台主机迁移到另一台主机并与其他agent或资源交互的程序, 它实际上是agent技术与分布式计算技术的混血儿。传统的RPC客户和服务器间的交互需要连续的通信支持;而移动agent可以迁移到服务器上, 与之进行本地高速通信, 这种本地通信不再占用网络资源。

移动agent具有很多优点, 移动agent技术通过将服务请求agent动态地移到服务器端执行, 使得此agent较少依赖网络传输这一中间环节而直接面对要访问的服务器资源, 从而避免了大量数据的网络传送, 降低了系统对网络带宽的依赖;移动agent不需要统一的调度, 由用户创建的agent可以异步地在不同节点上运行, 待任务完成后再将结果传送给用户;为了完成某项任务, 用户可以创建多个agent, 同时在一个或若干个节点上运行, 形成并行求解的能力;此外它还具有自治性和软智能路由器的功能。

移动agent的上述优点如果可以无缝应用在智能交通系统中, 将会带来一个巨大的革新, 笔者在深入研究智能交通系统、协作移动计算的基础上, 以移动agent为研究工具, 在网络管理、无线通信、交通控制系统、仿真系统、地理信息系统等方面探讨了移动agent在智能交通系统中的应用, 本文即为此工作的总结。

《3 移动agent在智能交通系统中的应用》

3 移动agent在智能交通系统中的应用

《3.1 移动agent在ITS网络管理中的应用》

3.1 移动agent在ITS网络管理中的应用

由于智能交通系统必须实时监测交通流, 其系统稳定性就显得十分重要。随着网络技术的不断发展完善, ITS也越来越依靠网络传输信息, 其外部设备 (包括检测器、信号灯控制器、VMS板、ETC中的IC卡扫描器等) 和子系统 (如ATMS、ATIS、AVCS等) 的通信必须保证安全畅通。除了在系统建立和升级维护时需要建立严格的网络体系和保证有足够的容错能力, 如设置多余的接口、预留一定的通信能力外, 还应该在网络中应用网络管理系统, 这两点是保证ITS安全正常运行的必要条件。同时应用网络管理还可完成ITS中自动侦察故障、远程配置和控制、网络部件管理、即插即用、动态分配资源等功能。

传统的网络管理协议SNMP缺乏实时性和协作性, 因此可以在传统的网络管理系统中引入移动agent思想, 基于移动agent的网络管理模型由三个主要的部件组成:a. 网管站 (manager) ; b. 移动agent (MA) ; c. 具有移动agent执行环境的被管节点 (managed node) 。

网管站负责生成并派遣移动agent处理它收集到的数据。移动agent可以按照网管站预先规定的路线和策略在各被管节点间迁移并进行网管操作和收集数据。被管节点上存在移动agent执行环境和系统agent, 执行环境接受移动agent并且提供对本地资源的访问, 移动agent与系统agent交互完成网管站赋于它的网管任务。如图1所示。

《图1》

 

 

图1使用移动agent的网络管理结构模型

Fig.1 Network management model using mobile agent

网管站给用户提供一个接口 (如GUI) , 根据用户的要求生成一个移动agent、指定它的任务和执行策略并将它派遣出去。移动agent的另一些特性如迁移路线 (计划) 以及管理信息的安全等都要在网管站派遣agent之前确定。当移动agent收集到所需的信息回到网管站后, 网管站处理这些信息并将结果反馈给用户 (管理员) 。当网管站派出一个移动agent后, 它又可以向其他的agent分派任务, 这样就实现了网络管理操作的异步性。同时, 网管站跟踪移动agent的活动并随时准备响应来自其他网管站的请求。

移动agent是可以自由迁移的代码和数据, 它在被管节点上执行预先安排好的网管任务。在派遣移动agent之前, 管理员在网管站上已经安排了这些任务。移动agent的迁移计划是一些将被访问的被管节点的列表。移动agent具有一定的智能, 它必须具备足够的知识来处理各种管理情况, 因为一旦网管站派遣出移动agent后, 它将很少干预agent的行为, 移动agent要能够根据各被管节点和线路的具体情况做出动态的判断和决定, 如寻找下一个目的节点、选择最优的迁移路径以及处理在迁移过程中发现异常情况等, 移动agent可以决定是执行预先指定的任务还是选择其他更合适的操作, 这样可以提高移动agent的响应性能并能更加有效地利用网络资源。

为了评价基于移动agent的ITS网络管理系统的性能, 笔者做了性能分析。在很多情况下, 评价一个网络应用和服务的性能时, 响应时间 (response time) 是主要指标。网络管理应用的总响应时间主要取决于以下几个方面:远程节点的CPU速度和内存容量、网络带宽、消息的类型以及应用的复杂程度等, 所以总响应时间可近似表示为

Ττ=tm+ta+td

其中tm为网管操作在网管站上的执行时间, ta为agent (SNMP agent或MOBILE agent) 完成具体的网管任务消耗的时间, td为网络延迟。

图2a和图2b分别为应用SNMP (传统的C/S模式) 和应用移动agent的时间分配情况。tm1为从网管站到agentA1的迟延, t1m为从agentA1到网管站的迟延。在SNMP中, 对于n个节点agent, 网管站需要创建n次请求, 而在移动agent系统中只要1 次。所以网管站的本身时间消耗为

ΤmSΝΜΡ=ntmΤmΜΟBΙLE=tm

另外, 假定各分布的节点间传输数据的时延

《图2》

 

 

图2 SNMP和移动agent系统的时间分配

Fig.2 Time distribution of SNMP and MOBILE agent

相同 (tm1=t1m=…=tmn=…=t12=t23…=t) , 则SNMP的总网络迟延td为2 nt, 移动agent为 (n+1) t, 则两个系统的Tτ分别为

ΤτSΝΜΡ=2nt+ntm+taΤτΜΟBΙLE=(n+1)t+tm+ta

《图3》

 

 

图3响应时间对比

Fig.3 Response ratio

从图3中可以看出, 当被管节点数目增大时, 应用移动agent的网络管理系统的总响应时间大大低于SNMP agent。

《3.2 移动agent在ITS无线通信中的应用》

3.2 移动agent在ITS无线通信中的应用

无线通信技术将移动通信中的车辆与调度指挥控制中心紧密地连接起来, 并传输各种交通信息 (如交通流量、动态信号显示信息、事故求援信息等) , 保证不间断地通信联络, 因此它在ITS中是必不可少的。但是无线数据通信一般频带较窄, 在城市里还存在很强的多径干扰, 频率使用将受到一定的限制, 而ITS又需要传输视频信息, 这些都成为技术瓶颈。移动agent的卓越特性非常适合于低带宽、丢包率高的无线网络环境。

移动agent方式和C/S方式的区别之一在于:在C/S方式中, 客户方的请求和服务方的处理结果都要在网上传递, 每次应答的信息都要在网上交互。而采用移动agent方式时, 请求服务的客户方agent移动到服务方提供的agent上下文环境中, 客户agent和服务方的交互都在此上下文环境进行, 同时中间结果和冗余信息不必在网络上传输。这样, 一方面可以减少网络占用, 另一方面又可以克服网络传输延时的影响。最后, 客户agent把处理结果传回给客户方, 它本身在服务方上下文环境中消亡, 不必移回客户方。对传统C/S分布式计算模式和所采用的移动agent计算模式的性能进行了比较。假设客户方的某服务请求需要在客户方和服务方之间进行N次交互才能完成, 并假设Treq为一次交互请求在网上传送的平均时间, Tqueue为一次交互请求在服务方队列中的平均等待时间, Tproc为一次交互请求的平均处理时间, Trspn为一次交互结果在网上的平均传送时间, 于是得到:

C/S方式 完成服务所需要的时间为

ΤC/S=Ν(Τreq+Τqueue+Τproc+Τrspn)(1)

移动agent方式完成服务所需要的时间为

Τagent=Ν(Τqueue+Τproc)+Τreq+Τrspn(2)

由以上分析可以推导出二者的时间差为

ΤC/S-Τagent=(Ν-1)(Τreq+Τrspn)(3)

由式 (3) 可以清楚看出, 完成客户方的服务请求需要客户方和服务方的交互次数越多, 移动agent方式的优越性就越明显。

《3.3 移动agent在ITS控制系统中的应用》

3.3 移动agent在ITS控制系统中的应用

城市交通的重要性、系统复杂性以及传统交通控制策略与方法固有的局限性, 使得城市交通系统控制面临机理变革与更新的挑战。在城市交通控制中对一组大量的信号进行优化控制是一个很复杂的问题, 尽管现有的研究已经得到一定的应用, 但对于大量剧烈变化的交通情况 (如交通事故) , 控制效果就急剧下降。其中存在的主要困难是:交通信号数目巨大, 缺乏准确的参考模型以及局部信号的优化有可能导致其他区域的交通恶化。

一种可行的方案就是利用移动agent的高智能协作性, 它是由移动agent自身的通信语言来实现的。移动agent通信语言 (ACL) [3]基于语言行为理论 (speech act) , 定义了agent及服务设施间协商过程的语法和语义。目前常用的ACL主要有KQML (knowledge query and manipulation language) 和FIPA (foundation of physical intelligent agent) , 它们的格式非常接近, 这里只讨论KQML。

KQML分为三层:内容层、消息层和通信层。内容层包含消息的实际内容, KQML可以携带任何语言表达的内容, 包括表达为ASCII码或二进制代码的语言;通信层描述低级的通信参量, 如发送者、接收者和与通信有关的唯一标识符;消息层是KQML语言的核心, 它的主要作用是识别传输消息所采用的网络协议, 给出发送者对内容的态度或意图, 即语言行为或原语 (performatives) , 如基本操作原语 (tell、deny) 、基于知识数据库的操作原语 (insert、delete) 、基本响应原语 (error、sorry) 、基本查询原语 (evaluate、reply、ask-if) 、能力宣告原语 (advertise) 、网络操作原语 (register、forward) 和协调器操作原语 (broker-one) 等。行为原语定义了可作用于agent的知识库和目标库的各种许可的操作。值得一提的是, 开发者可以自己扩充KQML来扩展现有的系统。

交通领域中由于其物理拓扑结构的分布性使它很适合应用agent方法。一个agent能根据其行为产生的效用大小选取合理的行动, 并且能在多agent环境中, 通过对其他agent决策建模来协调与它们之间的行为, 实时更新知识库信息, 这样就提供了一种在松散耦合的子系统之间进行协调的机制, 通过增强子系统的自治能力提高控制系统的控制能力。

根据文献[4], 一个可能的基于agent的控制体系结构为:

1) 决策层 主要由城市交通控制决策系统组成, 其功能是根据路网结构、交通需求预测及交通阻塞等因素对整个交通路网的运行状况做出评估, 其目的是寻求总体控制效果最优, 相当于一个管理agent, 运用其优越的推理能力和规划能力使系统运行在最优状态。

2) 战略控制层 由若干区域协调控制系统构成, 接受局部路况信息和信号时限条件, 在接受决策层综合评估的基础上, 自主决定相应的控制策略, 进而以最优化控制相应路网运行的交通流为目标, 并及时将交通需求预测和控制效果传送给决策层, 作为其评估的参考。

3) 战术控制层 由若干路口控制系统构成, 根据来自执行层的实时交通监测数据的分析处理结果及战略控制层的协调控制指示, 确定适当的控制策略。同样要将本层的控制结果反馈给战略控制层, 作为决策依据。

4) 执行层 包括监测器、信号控制器和信号灯等设备。通过执行层对路况进行检测, 将数据传送到战术控制层进行分析和控制。此层对应于agent系统的任务层, 具体面对底层执行结构完成对硬件的控制。

《3.4 移动agent在ITS仿真系统中的应用》

3.4 移动agent在ITS仿真系统中的应用

为了能让ITS真正发挥巨大威力, 大量的实验必不可少, 但是由于交通系统的特殊性, 不可能拿实实在在的各种汽车在各种交通环境下反复测试;需要一些仿真系统, 通过网络, 仿真汽车、道路、交叉口、信号灯随时间变化的状态来模拟、评估一些新型的控制策略或协议。但一个新协议从制定到大规模使用是一个漫长的过程, 涉及到厂家硬件平台的更新、用户的获得和安装等一系列过程, 因此网络更新的速度远远跟不上层出不穷的网络应用和服务。对于研究人员来讲, 动态可编程网络为测试新的控制策略提供了一个平台, 因此可以在不破坏常规网络服务的情况下, 实施有规模的模拟。

一种可行的方案是利用移动agent来实现可编程网络框架。框架中包含一组传统节点, 如果使此节点上具有了agent的执行环境及活动模块 (含有定制的协议, 用ANEP协议封装) , 便称其为活动节点。通过移动agent把相关的活动模块利用agent迁移协议ATP携带到目的传统节点上, 使其转化为活动节点, 这样节点间的应用程序便可有效地交互, 实施仿真、模拟。

《3.5 移动agent在ITS地理信息系统中的应用》

3.5 移动agent在ITS地理信息系统中的应用

地理信息系统GIS配合车辆定位系统GPS或惯性导航定位系统INS, 通过车辆导航定位和车辆监控调度管理, 可以加强道路、车辆、驾驶员以及管理人员的联系, 实现道路交通管理自动化和车辆行驶智能化, 有效解决交通拥堵现象, 从而提高道路通行能力, 以确保道路运输效率和行车安全。具体可提供电子地图显示功能、标注当前车位功能、地物分类索引及标注点状地物功能、最佳路径选择功能、路质等地况信息提示功能。

但是当前分布式GIS的研究还处于研究起步阶段, 目前已有的GIS产品远未达到人们预期的目标, 分布式GIS存在着多方面的问题以及面临着多方面的挑战 [5]

1) 网上数据资源的使用  面对汪洋大海般的地理空间信息, 一个普通的GIS用户利用现有的手段是很难应付的。一方面GIS用户不知道如何确切地表达对真正想要的地理信息资源的需求, 不知道如何更准确、更有效地寻找资源;另一方面, 地理空间信息提供者缺乏有效的手段, 实时地将地理空间信息主动提供给需要的用户。

2) 多数据源  对于辅助决策而言, 一个地图操作或空间数据所涉及的地理空间数据常常分布在不同的数据源上, 数据的管理、获取、访问等处理起来就非常困难。

3) 分布计算  现有的分布式GIS大多是一种点到点的简单C/S结构, 或者是多层C/S结构, 服务的角色都是固定的, 所有的计算只能在服务器上进行, 服务提供者相对集中, 并不能真正实现分布计算。

4) 合作能力  GIS的应用往往需要相关领域的几个部门一起合作, 比如在城市综合交通系统中, 包括交通、电力、电信等部门, 这些部门之间有着错综复杂的关系, 现有的GIS技术很难真正实现部门间的实时协商。

利用移动agent技术, 可以把整个GIS系统中的agent分为三类:系统管理agent、GIS功能agent 和接口agent, 每个GIS agent都是由一个控制子系统、功能子系统、通信接口、人机界面及数据资源组成的有机实体, 具有独立性、自主性、交互性、智能性、实时性、用户透明性等特点。

《4 结束语》

4 结束语

智能交通系统作为现代交通的新概念, 已经对国民经济产生了不可估量的作用。应意识到ITS是一种全新的思想, 但不是最终的构想, 更不是最后的发展阶段, 它应该将道路交通工程、系统工程、控制理论、信息科学、人工智能等多学科综合起来。笔者从人工智能、信息科学的角度, 对移动agent在ITS中的应用做了一些有益的探索, 以期对提高ITS的智能性、实时性产生一定的作用。