《城市道路交通仿真系统软件设计.pdf》由会员分享,可在线阅读,更多相关《城市道路交通仿真系统软件设计.pdf(3页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第!卷第期#$!年%月交 通 运 输 工 程 学 报&()*+,-.)+-/0+*1.)+*2 3 )4+4/*5*6/*7 7)/*68,9!:9;7 3$!%作者简介=邹智军?!%A B男B江西吉安人B同济大学工程师B博士B从事交通仿真研究!C?#$!A$D$城市道路交通仿真系统软件设计邹智军B杨东援?同济大学 交通运输学院B上海#$%#A摘要=以.&.;?.*6 E/.)+-/0;/F(,+4/*A仿真系统为例B介绍了仿真系统开发中所采用的一些软件设计技术B包括系统结构设计G主流程设计以及界面设计H关键词=交通仿真I软件设计I界面设计中图分类号=JK%L文献标识码=MN O P Q R
2、S T UV U W X Y ZO P T S Z O S _ T S P P X N X ab c S Q X O ZN d W Q U ae f ge h i j k l B m nopqr l s t k u l?;0 v ,-.)+*2 3 )4+4/*B.*6 E/J*/w 7)2/4 x B;v+*6 v+/#$%#By v/*+Az W Q T S Q=.+/*6.&.;?.*6 E/.)+-/0;/F(,+4/*A2 x 2 4 7 F+2+*7|+F3,7 B4 v/23+3 7)/*4)1(0 7 22 F7 7 x2 -4+)71 7 2/6*4 7 0 v*/(7 2
3、Bv/0 v+)77 F3,x 7 1/*4 v 71 7 w 7,3 F7*4 -2/F(,+4/*2 x 2 4 7 FB/*0,(1/*62 x 2 4 7 F+)0 v/4 7 0 4()71 7 2/6*B2 x 2 4 7 F F+/*-,1 7 2/6*+*1/*4 7)-+0 71 7 2/6*!U dR O T W=4)+-/02/F(,+4/*I2 -4+)71 7 2/6*I/*4 7)-+0 71 7 2/6*交通仿真分析技术有准确G直观G灵活方便的特点B是研究复杂道路交通系统的一种有效手段H仿真模型建模和仿真系统开发是道路交通仿真研究的两个基本内容H.&.;?.*6
4、E/.)+-/0;/F(,+4/*A系统是在道路交通仿真模型的基础上所开发的道路交通仿真软件系统H.&.;系统开发应用了面向对象软件设计技术G软件系统设计技术以及其它相关软件设计技术B其中的面向对象软件设计技术已另文介绍B本文着重介绍该系统的软件系统结构设计G系统主流程设计G软件界面设计等内容H.&.;仿真系统简介.&.;?.*6 E/.)+-/0;/F(,+4/*A仿真系统是一个城市道路交通微观仿真软件系统B能够为城市道路几何设计G交通控制与管理方案设计G交通流理论研究及交通工程人员培训等提供一个直观G高效G灵活的实验和测试平台H图!是.&.;仿真系统运行的一个动画画面H图!.&.;仿真系统
5、运行的一个动画画面#.&.;系统的系统结构系统结构设计主要是对系统全局结构的高层进行决策B将系统划分为子模块B并确定系统结构H.&.;仿真系统划分为以下几个子模块=?!A交互式输入模块利用交互式用户界面输入系统运行所需的数据H万方数据!#文件式输入模块利用数据文件形式输入系统运行所需的数据$!%#数据预处理模块对输入数据进行排除异常错误的预处理$!仿真过程模块仿真整个系统的变化过程是()(*仿真系统的核心模块$!+#仿真运行数据处理模块对仿真运行整个过程的数据进行分析处理$!,#动画演示模块以动画形式演示系统的仿真过程$()(*仿真系统的系统结构如图所示$图()(*仿真系统的系统结构-()
6、(*系统的主流程()(*仿 真 系 统 采 用./0 1 2 3455,6 7开 发()(*仿真系统的主流程如图%所示$8()(*系统的界面设计8 6 9数据输入()(*仿真系统需要如下基本输入数据:&6;6;路网拓扑结构数据对实际的路网按仿真模型的要求构造为以节点路段节段!相同线型和横断面的一段路段#车道等为基本元素的网络拓扑关系数据库$网络拓扑关系数据库反映了路段与节点的流入流出关系路段与路段之间的连接关系路段内节段之间的连接关系出行需求以及指定线路图%()(*系统的主流程的公交车出行需求$&6;6&交通控制及管理方案初始状态数据各交叉口信号灯的初始状态交通标志标线的设置位置等$目前()(
7、*仿真系统主要采用数据库文件方式进行数据输入少量数据采用了交互式的图形输入$应该指出的是友好的图形化输入界面能够给用户的使用提供更大的方便是关系到仿真系统实用化的关键问题$在这方面()(*仿真系统还有待于进一步改进$当然在任何情况下数据文件的输入方式都是一种重要的数据输入方式$8 6?仿真结果输出()(*仿真系统的仿真结果采用动画输出数据文件输出两种方式$其中动画输出是仿真结果的直观表达而数据文件输出则是仿真结果的定量分析$&6 6;仿真结果的动画输出仿真结果的动画输出界面包括三类实体:!;#静态实体指道路的边缘线车道划分线停车线交通标志标线公交站台等空间位置和状态均不发生变动的实体$这些实体
8、在图形输出过程中只需输出一次而不需要在每个仿真间隔重复输出$静态实体实际上是动画输出界面的背景$A第%期邹智军等:城市道路交通仿真系统软件设计万方数据!#半动态实体指信号灯$虽然其空间位置不发生变动$也不需要在每个仿真间隔重复输出$但需要在给定的时刻改变输出的内容%信号灯的颜色&半动态实体也是动画输出界面的背景&!#动态实体指路网中运动的车辆$需要在每个仿真间隔在不同的位置输出车辆的图形以反映其运动过程&仿真结果的动画输出是一个典型的在静态背景上的多物体运动画面&仿真动画输出所涉及的主要技术有(!)#基于光栅操作的动画实现动画的基本实现方式是把运动物体从原位置擦去$然后再在新的位置上重画&然而
9、$由于可能出现动态实体与静态实体的重叠$如车辆与车道上的交通标线*车道线*停车线等经常会发生位置重叠&因此$如果只是简单地将动态实体!车辆#的覆盖区域擦去$则必然会将动态实体所遮盖的静态实体也同时擦掉&采用光栅+,-操作可以很好地解决这一问题&光栅+,-操作是将新的输出画面与已存储在显卡帧存储器的数据进行+,-逻辑操作$如果进行一次+,-操作则将新画面绘制在显示设备的背景画面上$如果连续进行二次+,-操作则将新画面从显示设备上擦去$而不会影响显示设备上原来的背景画面&!#内存输出设备的使用由于是多物体输出$为避免因输出先后影响视觉效果的真实性$先将所有输出对象输出到兼容内存输出设备中$再从内存
10、输出设备拷贝到实际输出设备上&这样就可以做到所有要输出的实体同时输出&!#动画画面的抖动处理如果动态实体前后两次输出的图象在位置上相差较大$或者两次输出的时间间隔较长均会产生画面的抖动感&因此$为了减少画面的抖动$应尽量减少动态实体的先后位置差以及输出的时间差&动态实体连续两个间隔的输出时间差主要由计算机的性能*设置的时钟频率*程序的算法所决定&从程序设计角度应尽可能优化算法$使在既定计算机性能的情况下计算动态实体新位置所需的时间长度小于时钟频率所确定的仿真时间间隔&例如$如果计算机的时钟频率指定为每)./0发送一输出指令$则要求所有动态实体计算在下一仿真间隔的新位置所花费的时间小于)./0&
11、否则$即使输出指令已发出而计算尚未完成$仍然无法实现既定的输出&动态实体的先后位置差的减少可以通过适当地输出图形的剪裁来实现&图1表示的是一辆车辆在二个连续时刻的位置&图中2区域为车辆在前一时刻的位置区域$3区域为后一时刻的位置区域$4区域为2区域与3区域的重叠区域&动画的实现方式可以是将2区域擦去再将3区域输出$但这样做会因为先后两次输出的位置相差明显而产生视觉上的抖动&注意到4区域实际上完全可以保留在画面上$而不必要做先擦去又画出的5无用功6&显然$如果只将2区域中的非4区域擦去$而将3区域中的非4区域输出$这样前后两次输出的位置差减少$因而动画效果更为平滑&图1一辆车辆在二个连续时刻的位
12、置1 7 7 仿真结果的数据文件输出8 9 8:仿真系统记录了所有车辆在整个仿真时段内的每个仿真间隔的状态$并在此基础上进行了统计以反映路网的交通状态变化过程&输出的主要数据有(按给定时段统计的路段的交通量*车速*行程时间*排队长度*停车延误*停车次数等&8 9 8:仿真系统通过;4提供的数据库接口将大部分的输出数据以?3数据库形式存储$当然也可转化为其它通用的数据处理分析软件!如 A B C D#的数据形式&因此8 9 8:仿真系统的输出数据只定位于输出基本数据$而对这些数据的进一步分析处理$如提供一些简明的图表表达等$则可以借助其它通用软件来实现&E结语系统结构设计*主流程设计和界面设计是仿真软件系统设计的重要内容&本文所提出在8 9 8:仿真系统开发中所采用的相关软件设计技术可以为同类研究提供借鉴&参考文献(F)G邹智军H城市道路交通仿真研究F G H上海(同济大学$.HF G罗振东H计算机图形学原理和方法F?G H上海(复旦大学出版社$)I I J HJJ交通运输工程学报.)年万方数据