CORBA技术在动态交通分配系统中的应用
2.2 实时DTA框架
实时DTA系统由以下功能单元组成:(1)一致性检查;(2)一致性更新;(3)O-D估计(O即Origin,D即Destination,O-D估计即起迄点出行分布矩阵估计);(4)O-D预测;(5)状态估计;(6)状态预测;(7)交通分配;(8)用户界面;(9)数据库:(10)管理。这些功能单元之间相互作用并与ATMS数据库相互作用。其中(1)负责检查真实系统和DTA仿真器与(3)之间的一致性,主要是比较预测的状态变量和实际的状态变量,一旦超过事先规定的阈值,即向(2)报告;(2)基于(1)的报告更新DTA仿真器和(4);(3)基于监视系统的实时测量值和历史O-D数据,估计当前道路网络的起迄点出行矩阵;(4)基于当前O-D估计结果、当前网络状态和历史O-D数据,产生未来时段的O-D预测;(5)把给定的非常短的仿真间隔(几秒钟)的路径决策与(2)产生的调节结合来仿真交通流的类型;(6)仿真更长时间的交通流的类型并提供未来时段(javascript:window.open(this.src);" style="cursor:pointer;"/>20~30min)的路径决策;(7)根据系统最优和用户平衡等不同用户要求提供路径决策:(8)提供用户接口;(9)最小化其他单元请求的等待时间和最大化吞吐量;(10)提供所有单元间的控制以维持系统稳定并防止故障,同时保证系统同步。显然,实时DTA系统的设计应基于层次结构。最高层,即管理单元,其他单元各自被映射到一个不同的专用处理器,见图3。
3 基于CORBA的DTA系统
3.1 AMH框架下的DTA系统
多处理机/并行计算对实时DTA系统相当重要。在实时DTA系统中,一些功能周期性执行;另一些功能非周期性地被其他功能触发。因此,设计时,最根本的一点是把握每个功能单元的执行周期。
可以把所有循环集成在一个异步多层次AMH(Asynchronous Multi-Horizon)框架中。在AMH框架中,各功能在不同层次的分布式处理器上实现。每个功能以周期性模式、非周期性模式或联合活动模式运行。周期性活动模式下,基于执行循环定时执行;非周期性活动模式下,只有当其他功能发出一个事件调用请求时才执行;联合活动模式下,一个功能定时执行,同时允许其他功能触发以启动一个新功能的运行。也就是说,在当前执行循环中,当接收到一个调用请求时,将从下一个执行循环的起点开始新功能的运行。这个策略非常重要,保证系统对环境变化实时响应,同时维持整个DTA系统的可靠和稳定。
3.2 ILU框架下的DTA系统
在CORBA环境下实现实时DTA系统最好使用中间语言统一体ILU(Inter Language Unification),因为ILU是共享的,可用性更好。ILU支持创建新的对象、远程过程调用和异步调用。一旦一个ILU对象被创建,它就通知ILU服务器其已经存在。通过这个服务器,每个对象都能获得其他对象的信息。此后,每个对象均能远程访问其他任何对象,就像在同一台机器上。
实时DTA系统可以由三个主要对象组成:操作对象、GUI和ATMS数据库,见图4。CORBA中的对象需要被指定为服务器或客户机。服务器定义为一个接收客户机请求并执行这个请求的对象;客户机定义为一个向服务器发送请求的对象。一个对象也可以同时被指定为客户机和服务器。它既能发送也能接收请求。
javascript:window.open(this.src);" style="cursor:pointer;"/>
在实时DTA系统中,三个对象均被指定为客户机和服务器。在操作对象下设计六个子操作对象。每个子操作对象在一个运行周期工作。在状态估计对象下设计一致性检查和一致性更新两个对象,是因为这两个对象与状态估计对象直接作用。GUI负责输入指令输出结果。ATMS数据库包括实时监视数据、系统输出、历史数据及其中的相互作用。
动态交通分配是保证智能交通系统运行的核心手段。基于CORBA技术设计实时运行的动态交通分配系统是恰当的解决方案。国际上这方面的研究尚处于系统测试阶段,而国内更是刚刚起步。本文对这一框架进行初步探讨,期待有更多的学者深入研究,开发出真正实用的实时动态交通分配系统,以促进智能交通系统的发展。