基于Vega Prime的虚拟现实车辆智能运动模拟
来源:第三维度 作者:罗元,谢波,彭卫兵,成赟凌,任爱珠 单位:清华大学 土木工程系 浙江工业大学 建筑工程学院
摘要:基于虚拟车辆坐标和车辆运动状态对比实现了车辆运动控制方法,通过研究车辆自由行驶、跟驰和变道实现了车辆的虚拟车辆相应的运动策略,利用 Vega Prime相关碰撞检测机制,实现了车辆信号控制,并在 Vega Prime平台上使用 VC++编程实现了虚拟车辆的智能运动模拟,最后采用北京五道口区域交通流 实 际 算 例 验 证 了 模 拟 方 法 的 有 效 性。研 究 结 果 表 明:通 过 对 Vega Prime进行二次开发,可以实现高沉浸感、高人机交互的虚拟车辆智能运动模拟,模拟仿真结果与交通实际情况相符。
虚拟现实(Virtual reality)技术是近年来随着多媒体技术的成熟开始发展的一种新兴技术,它具有沉浸感强、人机互动良好等特点,这些特点决定了虚拟现实技术尤其适合于交通模拟研究和应用。目前国内外关于虚拟车辆运动模拟的相关研究并不多见,其中成果最为显著的是 FORUM8公司开发的UC-win/Road软件[1]。该软件具有强大的三维建模功能,能够快速简便地根据用户需求定制三维虚拟环境和模拟交通流运行.但由于 UC-win/Road SDK对车辆运动模拟二次开发的支持不够,用户不能基于该软件开发出多种不同类型的交通运行状况模拟插件.此 外,南 京 大 学 的 Ye Xiaoling 等[2]、英 国Swansea 大 学 的 Gareth Ayres 等[3]、美 国 North Carolina 大 学 的 Jur van den Berg 等[4]、日 本Takusho ku大学的Sang Bao feng等[5]、中国海洋大学的王春[6-7]、天津城市建设学院的费娜[8]以及昆明理工大学的易涛等研究者[9-10]在不同的虚拟现实平台上一定程度地实现了虚拟车辆运动模拟,主要存在虚拟现实的交通流模拟不完善、对车辆运动的处理过于简单或更多的将重点放在数值模拟等缺点。
笔者通过 VC++ 对 Vega Prime进行 二 次 开发,对虚拟现实车辆智能运动进行模拟,研究如何在现有条件下实现高沉浸感、高人机交互的虚拟车辆智能运动模拟,以进一步探索虚拟现实技术应用于交通领域的适用性以及发展前景。
1 车辆运动控制
为了了解车辆运动状态,首先要知道车辆坐标:首先将道路划分为确切的区域,这样就可以知道道路和道路交叉口的确切范围,从而知道任何一个坐标属于哪个区域.通过对比车辆坐标与相应区域坐标,得到车辆的位置信息,进而确定车辆当前运动状态是直行或是转向。
其次,由于车辆加速运动的计算需要知道该次运动的累计时间,因此定义一个枚举变量来表示车辆的运动状态,每帧运动状态的对比,可以得知车辆运动状态是否改变,从而知道是否应该将该次车辆运动的总时间清零。
通过车辆位置判断和状态对比,程序就能够准确地掌握车辆当前运动状态,从而能够根据情况确定是否需要改变运动状态、怎么改变,并通过控制车辆加速度变化,实现控制虚拟车辆的运动状态。
2 车辆运动策略
为模仿真实世界中车辆的运动策略,必须建立虚拟车辆与交通流之间的关系,也就是车辆与周边其他车辆的关系.只有建立了这样的关系,车辆才会对周围车辆运行状态的改变做出相应反应,从而模拟真实交通流中,驾驶员对周围环境的随机应变。
建立车辆之间的关系需要 使 用 Vega Prime中的vpIsector Bump 类和 vpIsector LOS 类来 对 其 他车辆进行碰 撞 检 测[11].vpIsectorBump定义 了6条自检测器坐标出发、向x,y,z正负半轴方向延伸的线段,通过检测这6条线段是否与某个物体相交来反馈碰撞检测的结果,用户可以自己设定这些检测线 段 的 长 度;vpIsectorLOS 用 于 处 理 视 线 查 询(Line Of Sight),自检测器坐标沿该坐标系y 轴正方向定义一条线段,检查线段是否与别的物体相交,返回相交点坐标及相交线长度,用户可以自定义线段长度。
2.1 自由行驶策略
根据文献,当本车辆与前车时间车间距大于8s或者前后车距大于125m 时,车辆进入自由行驶状态[12-13]。为了 判 断 该 状 态,需 要 采 用 vpIsector LOS 检测器,将检测线段长度l设为l=min(8v,125),其中v是本车辆当前速度.如果检测线段无法检测到车辆,则车辆平稳加速至道路限速,暂不考虑道路交叉口信号灯对车辆速度的影响,则车辆只有在变道或者转弯时速度可能发生改变,具体假定如下:
1) 不考虑车辆速度的微小波动,在自由行驶状态时车辆尽可能地严格按照车道最高限速行驶。
2) 车辆加速度与车辆发动机功率及档位有关,不同车辆在不同情况下加速能力不同,笔者统一选取此自由加速度为10m/s2。
3) 车辆径变道以后,如果速度小于变道后车道的最高限速,则自由加速至该车道最高限速行驶,如果速度大于变道后车道最高限速,则迅速自由减速(本文取该加速度为-5m/s2)至该车道最高限速。
4) 假设自由行驶的车辆在进入路口白实线区域时开始减速准备转弯,每条道路的白实线区域都不太一样,不过在模拟中将该区域统一为道路交叉口前25m,假设道路交叉口限速为vlimit,一旦 进 入道路交叉口区域,根据车辆当前速度与道路交叉口限速,可以轻易求出车辆在白实线区域的加速度为

式中:aint为车辆在车道白实线区域的加速度;v为车辆当前 速 度;lint为白实线区域长度.车 辆 在 道 路 交叉口中间匀速行驶,过了交叉口再自由加速到车道最高限速。
2.2 跟驰策略
结合虚拟现实车辆运动模拟的特性,选择 Aron的 GM 跟驰模型来模拟车辆跟驰运动,其公式[14]为

式中α,β,γ在车辆加速时分别取2.46,0.14,0.18,减速时分别取2.45,0.655,0.676[7]。
当局部交通量较大时,可能出现跟驰车辆逐渐减速至停止的情况,此时车辆速度为0,加速度也为0。然后随着交通流的疏散,在前车开始运动后,检测器能够检测到前车车速,从而让本车辆重新获得一个向前加速度,也跟着缓慢地开始运动.由于驾驶员反应时间不一,标准差较大,同时也是为了节省存储空间,在本课题中没有考虑驾驶员的反应时间,不过Aron的车辆跟驰模型中加速度的计算已经包 含 对反应时间的考虑,因此对模拟的影响不大。
2.3 变道策略
为简化模拟,在车辆变道的过程中省略了车辆调整车头的运动过程,直接让车辆从平行于原车道方向变为朝向相邻车道一侧,再从该状态变为与车道同向,变道过程中车辆速度保持不变.这样虽然会导致车辆运动状态的不连续,不过从时间和空间上都与真实的变道过程相差无几,因此对于交通流的模拟没有太大影响。
车辆变道需要在当前车道和相邻车道上都有足够的空间.如图1,2所示.图1,2中l,w 代表车辆长和宽,h1,h2 代表相邻两车道宽度,θ为车辆变 道 轨迹与车道方向的交角.由于车辆变道的过程的时间短,而车辆加速度相对也不大,所以可以假设在车辆变道过程中,所有车辆都维持匀速运动状态,速 度不变。

图1 车辆变道状态一

图2 车辆变道状态二
在车辆变道状态时,为避免本车辆 N 侧前方与本车道前车 A 相 撞,必 须 使 车 N 与 车 A 隔 开 一 定距离,该距离称为安全距离.定义车 N 与车 A 之间的安全距离为d1,通过 几 何 关 系 可 知d1 计算 公 式如下:

式中vA 为车 A 的速度.只有当车 N 与车 A 之间距离大于d1 时,车辆变道才不会撞或者剐蹭到前面的车辆.通过位于车辆几何中心的vpIsectorLOS检测器,可以得到车 N 与车 A 间距以及车 A 的速度,从而检验两车间距是否大于d1。
在车辆变道状态二时,为了避免车 N 与车 B发生追尾,同样需要计算车 N 与车 B之间的安全距离d2.计算公式如下:

式中vB 为车 B的速度.值得注意的是,为了确保车N 与车 B不追尾,而且车 N 在变道后有足够的时间调整自身的速度,在d2 中增加了一项2v,即车辆以当前速度,在2s中内走过的距离.按照交通流理论的定义,车头时距小于2s时车辆处于紧急跟驰状态,如果车头时距再小就有追尾的危险,因此,多增加2v的距离可以确保车 N 能够有充足的空间调整自身状态,避免与车 B追尾的发生[12]。
而同时也应该注意,在车 N 侧后方的车 C也应该避免在车 N 变道以后与之相撞或追尾.由于在状态一之后,车 N 就已经越过了相邻车道的中轴线,从而可以被车 C的vpIsectorLOS检测器感知,所以在状态一时,车 N 与车 C之间要有足够的空间以避免两车相撞,取此距离为2vC,vC 是车 C 的速度,由此可以得出车 N 与车 C之间的安全距离为

从式(3—5)可以看出:为了计算出d1,d2,d3 必须知道车 N 变 道 时 的 轨 道 夹 角θ.根据 经 验 可 知θ在车速越大的时候越小,从而车辆变道所需要的轨迹越长;而在车速越小时越大,车辆变道的轨迹也越短.由于汽车一般都有一个最大偏转角,故用抛物线来拟合θ如下:

从式(6)可 知:当车辆速度变大时,θ角以 更 快的速度减小,这也符合车辆驾驶的一般常识:当车速越快时,越难以控制车辆的转向。
经过安全距离检查后,如果安全距离满足要求,则车辆可以执行变道;如果安全距离不满足要求就无法执行变道。
3 车辆信号控制
为了模拟真实的信号控制,根据红、黄、绿 三 种灯的显示时间,需要依次将三种灯中的一种的渲染掩码设置为0xFFFFFFFF,而另外两个灯的渲染掩码则设为0.这样 VegaPrime就会渲染当前需要亮的灯而不渲染另外两个灯,信号灯就能够显示当前需要的某一个特定颜色的灯而不显示另外两个.过了相应的时间后,再将亮的灯的渲染掩码设置为0,而将下一个要亮的灯的掩码设置为0xFFFFFFFF,交替反复就能够实现信号灯的控制。
而车辆在行驶时,为检测信号灯,专门为信号灯设置一个vpIsectorLOS碰撞检测器,该检测器可以根据需要调节检测范围.因为信号灯实体比较细小,检测器的检测线段不一定能够恰好触碰到信号灯,所以为了确保检测效果,需要用一个隐形的长方体(设置该长方体渲染掩码为0)将整个信号灯包裹起来,如图3所示,形成一个面积较大的碰撞检测面,确保车辆检测线就不会错过信号灯。

图3 交通信号灯碰撞检测效果
4 实例验证
为了验证笔者提出的车辆智能运动模拟方法的有效性,本研究设计了模拟试验来对车辆在不同交通流密度下的运动进行考察.图4为笔者建立的五道口地区的虚拟环境的道路平面图,由于该虚拟模型是几乎完全按照五道口地区的实际情况建立的,可以使用五道口地区的实际交通数据对笔者的车辆运动控制方法进行验证。
如图4所 示,该 地 区 的 主 要 干 道 有 4 条,分 别是:成府路、中关村东路、荷清路和双清路;交通信号

图4 五道口地区平面图
灯有4个,分别位于图4中 A,B,C,D 等处;主要的车辆出入口有8个,分别是:成府路西口、成府路东口、中关村东路南口、荷清路南口、荷清路北口、双清路北口和位于清华大学校内的清华1和清华2出入口,其中由于清华1和清华2出入口的车流量很小,故对此二车辆出入口忽略不计。
笔者根据实际交通量情况,设计了如图5所示的4条车辆运动线路,并分别统计了在道路交通较为通畅和道路交通较为拥挤的两种情况下,真实车辆在图5中所示的4条线路上运行所花费的平均时间时间,如表1所示。

表1 不同交通状况下车辆沿设计线 路运行花费的真实时间
值得注意的是,表1中的车辆运行时间都是除去了各个道路交叉口的信号灯等待时间后进行多次统计得到的平均值,之所以要去除信号灯等待时间是因为信号灯等待时间长而且具有很大的随机性,对单一车辆的运行时间会造成很大的影响,为了尽可能的排除这样的影响所以需要剔除信号灯的等待时间.经过剔除之后,上述车辆运行时间的标准差均不超过其平均值的15%,说明数据合理且准确。
笔者将虚拟环境中的车辆密度依据同一时段进行的交通流量统计数据进行设定,以模拟真实交通环境,然后为虚拟车辆设计了如图5所示的同样的4条线路,并通过试验多次测试虚拟车辆在交通通畅和交通拥 堵 时 分 别 通 过4条线路所使用的时间(不考虑信号灯的影响),最后得到虚拟车辆在不同交通状况下通过设计路线的平均时间,如表2所示。

图5 车辆运动路线
根据同时进行的交通流量统计调查可以得知,在交通通畅时五道口地区的总车辆数约为900辆,而在交通拥堵时五道口地区的总车辆数约为1400辆。

表2 不同交通状况下虚拟车辆沿设计线路运行花费的时间
从表1,2的对比中可以发现:当五道口地区总车辆数较小,交通流运行较通畅时,虚拟现实模拟的结果与实际测量的结果十分相近,两者差值不超过10%(最大差值为路线一,9.8%);而当总车辆数较大,交通运行较拥堵时,虚拟结果都小于、甚至远远小于实 际 测 量 结 果,两 者 差 值 超 过 了 30% (路 线一),对比结果如图6所示。

图6 不同交通状态下真实车辆与虚拟车辆运动时间对比
对比的结果说明:在总体交通量较小的情况下,虚拟现实车辆之能运动模拟能够很好地再现真实世界中车辆在同样交通状况下的运动,从而能够在时间上较为准确地模拟真实的车辆运动.而当总体交通量较大时,在路线一、路线二和路线四的虚拟车辆运行模拟中,虚拟车辆运行的时间都远小于实际车辆的运行时间,与实际车辆的运行时间出现了较大的差别,而在路线三的虚拟车辆运行模拟中,虚拟车辆的运行时间虽然也小于实际车辆的运行时间,但相比其它三条路线的情况而言,要与实际时间接近得多。
通过进一步分析可以发现,路线一、路线二和路线四都要经过双清路路段,而在实际的交通流调查中可以发现,由于双清路西侧与铁道相近,该铁路经常有火车通过,此时双清路必须封闭道路,导致出现短暂的堵塞;而在铁路 以 东50m,又有 一 个 道 路交叉口(双清路与清华东路交叉口,不在虚拟环境范围内),该交叉口与地图中的 B交叉口(双清路与荷清路交叉口)距离过近,导致常常出现两个交叉口之间的车辆堵塞;此外,B交叉口处人流量和非机动车流量极大,且 往 往 不 遵 从 红 灯 停、绿灯行的交通规则,常常乱穿马路,导致车辆通过道路交叉口时容易迟滞。
以上三个原因综合起来,导致了在真实的交通中,双清路与荷清路交叉口处车流极为缓慢,从而在双清路中车数量极多,且由于车辆不遵守交通规则,为了抢夺空位抢占非机动车道甚至逆向行驶的情况常常发生,导致双清路的两个方向都行驶缓慢,成为五道口地区的一个局部堵塞点.而在虚拟现实车辆智能运动模拟中,暂时无法模拟以上几点交通干扰因素,虚拟车辆都完全遵守交通规则,不会出现因为抢道等原因而造成的堵塞,能够以最大的协作效率运行,因此需要通过双清路的车辆能够尽快地完成自己的行程,使用远小于实际时间的时间就完成了自己的路程.而在五道口地区别的道路中,由于并没有出线双清路那样的拥堵情况,所以虚拟车辆运行的时间与真实车辆运行的时间相差无几,这也是路线三即使在交通流拥堵的情况下也能够较好地模拟真实车辆运行时间的原因。
通过上面的分析可以看出:虚拟车辆总体来说能够较好地模拟真实车辆运行的情况,尤其是在没有太多交通干扰因素的情况下,虚拟车辆能够很好地再现真实车辆在交通环境中的运动,说明笔者的车辆智能模拟方法是准确有效的,能够真实地模拟车辆在交通流中的各种运动策略。
5 结 论
首先实现了虚拟车辆对自身运动的控制,然后进一步研究并实现了虚拟车辆在不同交通情况下的运动策略,包括车辆自由行驶、车辆跟驰、车辆变道以及信号控制时车辆的不同策略,实现了车辆的智能化运动模拟,并且通过实际算例验证了笔者提出的车辆智能化模拟方法的有效性,为虚拟现实交通流模拟打下了基础。
参考文献:
[1] 何 征,伊 藤 裕 二.虚拟现实仿真软件在土木工程中的应用[C]//第二届工程建设计算机应用创新论坛.上 海:第 二 届 工程建设计算机应用创新论坛组委会,2009:256-261.
[2] YE Xiao ling,YANG Yan-hua,ZOU Li-ping.Researchon theap plication of virtua lreality technology intran sportation[C]//Mechanic Automation and Control Engineering,Wuhan:Conference Publications of MACE 2010 International Conference,2010:2887-2890.
[3] AYRESG,MEHMOODR.On discover ingroad trafficin for mation using virtual reality simulations[C]//11th Computer Modelling and Simulation,Cambridge:Conference Publica-tions of Computer Modelling and Simulation 2009 International Conference,2009:411-416.
[4] VANDENBERGJ,SEWALLJ,LIN M,etal.Virtualized traffic:recons tructing traffic flows fromdis cretespatio-tempo-raldata[C]//VirtualReality Conference,LA:Conference Publications of Virtual Reality Conference,2009:183-190.
[5] SANGBao-feng,MIZUNO K,FUKUIY,etal.Introducing recognitionratios fo rurban traffi cflows imulationin virtual cities[C]//Proceedingsofthe 8th International Conferenceon Virtual Reality Continuum and its Applicationsin Industry, NY:Conference Publications of the 8th International Conferenceon Virtual Reality Continuum and its App licationsin Industry,2009:267-270.
[6] WANGChun,CHENGe,LIUYan-yan,etal.Virtual reality based integrated traffic simulation for urban planning[C]//Computer Scienceand Software Engineering,Wuhan:Conference Publications of Computer Science and Software Engineering International Conference,2008:1137-1140.
[7] 王春.基 于 VR/GIS一体化城市微观交通虚拟仿真系统的 研究与应用[D].青岛:中国海洋大学,2010.
[8] 费娜.虚拟现实技术在城市交通仿真系统中的应用研究[D].天津:天津城市建设学院,2009.
[9] 易 涛.基于虚拟现实技术的高速公路交通流微观仿真研究[D].昆明:昆明理工大学,2003.
[10] 万钢.基于 VEGA 的虚拟现实应用研究[D].西 安:西 北 工 业大学,2005.
[11] Presagis USA Inc.Vega prime programmer’sguide[DB/CD].Montreal:PrsagisUSAInc,2010.
[12] 陆化普.交通规划理论与方法[M].北 京:清 华 大 学 出 版 社,1998.
[13] 张智勇,荣建,任福田.跟车模型研究综述[J].公路交通科技,2004,21(8):108-113.
[14] GAZISDC,HERMANR,ROTHERYR W.Nonlinear follow the leader models of traffic flow [J]. Opearations Researeh,1961,9(4):913-933.
上一篇:基于Unity3D的撒肥机三维建模与作业环境仿真平台的搭建[ 01-20 ]
下一篇:请不要把VR教育仅仅当作风口[ 10-17 ]