动态语言在动态交通情景建模中的应用

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:huashaosile
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:在总结了常见的动态交通情景的基础上开展了情景的建模,使得动态情景抽象化,利用模型就能表示各種复杂的动态交通情景。在动态交通情景仿真中,应用动态语言表达动态交通情景模型,扩展了传统汽车驾驶模拟器的能力,使得汽车驾驶模拟器在模拟多种动态交通情景时配置更灵活,特别是在构造紧急或危险情形时能实现更细粒度的状态参数配置以及更加灵活的运动逻辑设计,提升汽车驾驶模拟器的研究效能。
  关键词:动态语言;汽车驾驶模拟器;脚本;动态交通情景模型;Lua
  中图分类号:TP39文献标识码:A 文章编号:1009-3044(2009)33-9500-03
  Application of Dynamic Language in Modeling the Dynamic Traffic Scene
  SUN Ran1,2,3, HU Wei-yi1
  (1.School of Computer Science and Technology, Wuhan University of Technology, Wuhan 430063, China; 2.Engineering Research Center of Transportation Safety (Ministry of Education), Wuhan University of Technology, Wuhan 430063, China; 3.Intelligent Transportation Systems Research Center, Wuhan University of Technology, Wuhan 430063, China)
  Abstract: Summarize a set of familiar dynamic traffic scene and found a model that can express any kind of complex scenes. During the simulation of dynamic traffic scene, apply the dynamic language to denote the model, it enlarges the ability of the traditional vehicle driving simulator, brings it a positive effect on flexible configuration when the simulator is processing a variety of dynamic traffic scenes. Especially in the construction of emergency or dangerous scenes, the model denoted by the dynamic language makes the configuration of state parameters and the designing of movement logic more exactly than ever before. It means that the research efficiency of the simulators are advanced.
  Key words: dynamic language; vehicle driving simulator; script; model of dynamic traffic scene; Lua
  随着汽车驾驶模拟器在交通安全中的广泛应用,各种特殊交通场景的开发越来越受到重视。特殊的交通场景一方面可以供驾驶员进行训练,学习紧急情况下的避让及车辆控制技巧,另一方面可以获得很难从交通事故发生现场获得的危险情形下驾驶员的状态及其操作行为特性数据,这类数据对于研究分析事故发生机理具有十分重要的意义[1-2]。
  动态危急交通情景的构建虽然已经取得了一定的成果,但实际应用于汽车驾驶模拟器的还是较少,应用的范围也比较窄,效果不理想[3]。目前动态情景建模与仿真中存在的问题主要有以下两点:1)动态情景的建模:对于典型的危险情景的建模分析,国内外均局限于一两种典型的情景,对动态情景高层次的抽象建模研究得还比较少;2)可扩展性:现有的一些动态危险场景的模拟,都是针对单一的具体的危险场景模型,不能根据不同实验的需要实时配置多种情景。
  针对以上问题,本文提出了相应的解决办法:对常见的动态情景进行抽象,建立了动态交通情景的模型,然后利用动态言语来对模型进行表达,实现了对多种情景的灵活配置。同时,将动态语言承载的动态交通情景模型应用于驾驶模拟器进行仿真验证,实验证明该模型能模拟出交通环境中常见的突发情景,效果较好。
  1 动态交通情景模型
  交通环境包括静态和动态两种交通场景,静态场景是指环境中静止的物体,静态交通场景和该场景中物体的运动即构成了动态的交通情景[4]。动态情景的设计主要包括:对象、对象运动的触发条件、对象的运动轨迹和对象的运动方式等[5]。
  通过对近年来发生的典型交通事故进行分析,总结出容易发生事故的动态情景有:
  1) 行人违规过马路:某一时刻,行人在道路的某一处,从路的一端向另一端运动;
  2) 交叉口闯红灯:某一交叉口处,当行驶方向的交通灯状态为红灯时,一车辆闯红灯行驶;
  3) 后方车辆超车:在道路上的某一位置时,后方车辆突然加速超车;
  4) 前方车辆紧急刹车:在道路上的某一位置时,前方的车辆紧急刹车。
  为了便于分析归纳上述情景的共性,找出其共有的模式,这里提炼出情景的主要要素后采用形式化的方法对情景进行转换表达。
  情景1用五元组表述为:S1=
  用相同的方法对情景2分析,得到五元组:S2=
  情景3的四元组为:S3=
  情景4的四元组为:S4=
  其中o表示情景中对象(人、车);p表示位置(道路中的位置);v表示速度,a表示加速度;t表示对象出现的时间,d为车的行驶方向,l为该方向交叉口交通灯的状态。
  对上述四个n元组观察归纳,可以看出:虽然n元组的元素的个数不同,但n元组中均有表示对象的元素o, 表示对象运动的速度v以及对象的位置p。
  考察其他几个不同的元素:S1中的时间t可以归结为物体出现的初始条件之一;S2中的d, l两个元素也都是该动态情景发生的初始条件;S3, S4中的a主要是描述物体的运动情况,可以作为和速度相关的参数。所以,4个情景用一种更抽象的模式可以表示为如下所示的一个三元组:
  S=
  其中,object表示动态情景中的运动对象,trigger表示对象的出现或者对象的运动需满足的初始条件即触发条件,action表示情景中对象的运动。
  这三个元素又有其各自的参数集合,每个元素的可选参数见表1。
  情景中这三类元素的按照一定的规则作用就形成了完整的动态情景,通过对上述四个n元组和它们表示的情景的观察分析,得出情景元素作用示意图如图1所示。
  如图1所示,在情景中定义一至多个对象,对象中预定义一系列操作。当模拟器中发生被监听的事件时(即对象触发条件满足时),经过事件响应函数的处理,相应的创建对象或者执行对象中预定义动作的操作便被执行。
  2 模型的动态语言表达
  动态语言也称为脚本语言,是介于标签语言和静态语言之间的语言。动态语言的特点有:语法简单、易懂,易于学习;可扩展性强,可以非常容易的C、C++、Java等语言整合;解释性,即无需编译而是由解释器动态解释执行,避免了开发过程中多次编译而获得快速的交互[6]。
  动态情景建模后,需要把模型转化为计算机能识别的语言,以便于在模拟器软件中使用。本文为了最大化动态情景模型应用的可扩展性,采用动态语言来承载模型,形成动态语言模型文件,供模拟器软件读取。
  为了体现模型中元素的作用过程,本文采用特定的脚本语言Lua来实现模型的完整描述。根据它的特点,对动态情景模型进行描述的具体过程如下:
  1) 对象:由于对象初始条件较多,不同对象的条件也不同,所以采用Lua中提供的table数据类型来表示对象和对象的初始参数[7]。在table中定义变量o,其值对应于具体的情景对象。对象的参数将以table成员的形式存在于table中。这些参数用于记录情景对象的初始位置、运动速度等属性。汽车驾驶模拟器中通过对table中key的遍历即可获取情景对象的属性值。
  2) 触发器:触发器机制的建立相对比较复杂。其工作大致应包括两部分内容:一是设定触发条件的阈值,如对象在情景中的位置,对象和主车的距离等。阈值的设定可以在trigger table中设置相应的key。再就是制定验证给定条件是否满足的判断逻辑和事件被触发后的执行逻辑,这两种逻辑可以统称为响应逻辑。这一过程需要从模拟器软件中实时获取所需参数值,因此需要模拟器实现相应的脚本系统数据交换功能。响应逻辑则需要在脚本中以函数的形式来实现。
  3) 运动:对象的运动涉及到逻辑和具体的环境,所以对象的运动也需由专门的函数来表达。运动函数用来控制对象的运行,其中也包含了事件的监听和触发条件的验证,当事件触发或条件满足时,即让对象按照参数设定的速度和轨迹开始运动,与此同时实时获取周围环境信息,按照避让规则,通过调整速度和运行轨迹实施避让动作。
  以行人过马路为例,将此情景利用Lua语言进行表述,示例如表2。
  表2中的脚本中使用了模拟器提供的接口,主要有主车类和行人类。主车类中使用了主车的位置变量,行人类中使用了行人构造器、行人的位置、行人行走的距离、行人运动方法以及停止运动的方法。
  由于脚本中可以方便的使用模拟器中的提供的类,变量和方法等接口,所以在脚本中定义的动态情景可以达到在模拟器中定义的动态情景相同的效果。而脚本语言的特性,使得脚本能同时配置多种复杂的情景以及灵活的设计运动时的逻辑。
  因此,只要模拟器中提供相应的接口,然后按照上面的脚本模式就可以描述任意复杂的动态情景。脚本描述动态情景模型不仅限于模拟器中,只要仿真软件中可以提供内部对象的相关接口,就可以使用该方式来配置多种情景和设计逻辑。
  3 仿真示例
  动态情景模型的验证是在汽车驾驶模拟器软件系统上进行的,脚本和模拟器软件的交互过程如图2所示。
  为验证动态场景模型和进行场景的仿真,在模拟器现有框架基础上增加了用于脚本解析的脚本引擎及用于动态场景构造的场景管理器。脚本通过引擎的解析,在动态场景管理器的调度下与模拟器进行信息的交互。整个交互过程分为3个阶段:首先加载脚本,动态场景管理器从引擎获取场景、对象的定义,然后模拟器核心模块中根据管理器获取的信息,定义部分场景;接着是触发器设定阶段,场景管理器将从引擎获取的触发函数向模拟器模块注册,模拟器调用该函数,设定触发器;最后是监听和事件响应阶段,模拟器模块每帧对触发器设定的事件进行监听,当事件发生时,通过与管理器交互进行事件的响应,即执行引擎解析到的创建对象逻辑或运动函数。
  在模拟器软件中,载入表2定义的行人脚本,行人过马路的动态情景仿真示例如图3所示。
  图3仿真了行人過马路的动态情景:a)图中行人的运动条件已满足,行人正在过马路,b)图中为行人过马路时的规避动作即车距离人足够近时,行人停止过马路在路中等候。当车辆从行人旁边驶过后,行人继续过马路。用户可以根据该情景的模拟结果,调整自己的参数来进行进一步试验,得到各种参数下的驾驶员反应,以及会导致交通事故的参数值域,为验证危险场景模型提供数据支撑。
  4 结论
  本文对常见动态交通情景进行了抽象建模,并利用动态语言进行模型的表达。在模拟器平台下,使用lua脚本描述具体动态情景,通过仿真实例来验证建模的可行性。可以看出,使用动态语言相比于其他方式能更加方便地构造动态情景和设定情景中的运动逻辑。情景仿真所获取的数据能够为研究易发生交通事故的危险场景提供准确的数据支持,使得此类研究工作的基础更为坚实。在后续的工作中,将进一步研究动态情景模型的可扩展性和模型用于危险场景研究的效能提升。
  参考文献:
  [1] 梁坤.驾驶模拟器危险视景研究[D].昆明:昆明理工大学,2005.
  [2] 周欢.道路交通安全致因分析虚拟场景设计与实现[D].武汉理工大学,2008(5).
  [3] Ying Wang,Wei Zhang,Su Wu,etc.Simulators for Driving Safety Study–A Literature Review[A].Lecture Notes in Computer Science[C].Heidelberg:Springer berlin,2007:584-593.
  [4] 高嵩,张晖,周欢,等.基于LandXML数据可视化技术的道路交通仿真三维场景快速生成方法[J].交通与计算机,2008,(4).
  [5] 谢春荣,万华森,熊坚.基于汽车驾驶模拟器的危险场景设计研究[J].交通与计算机,2008,3(26):133-135.
  [6] 刘睿.动态语言面面观[J].软件世界,2007,(5).
  [7] Roberto Ierusalimschy.Lua程序设计[M].北京:电子工业出版社,2008.
其他文献
这是流传已久的一个笑谣话说某移动通信公司的老总一日外出,适逢内急,不得不进入一家收费公厕,进门时交了钱,出门时又被拦住了,老总不解,收费的说:进去的时候交了,出来的时候还要再交
TD—SCDMA作为我国通信业百年史上第一个拥有自主知识产权的国际标准,是我国推进自主创新国家战略的重要里程碑。在党中央、国务院以及政府相关部门的大力支持下,TD-SCDMA产业
国务院总理温家宝11月5日主持召开国务院常务会议,研究部署进一步扩大内需促进经济平稳较快增长的措施。近两个月来,世界金融危机日趋严峻,为抵御国际经济环境对我国的不利影响,
副猪嗜血杆菌病是由副猪嗜血杆菌(Hps)引起的一种细菌性传染病.从疑似发生副猪嗜血杆菌病的河南新乡某猪场采集病猪呼吸道分泌物和心包积液,并对样品进行细菌分离培养、形态观
赭曲霉毒素A(Ochratoxin A,OTA)普遍存在于谷物等粮食和动物饲料中,是一种可以引起癌症的霉菌毒素。为了快速检测OTA,利用荧光染料PicoGreen识别双链DNA原理,建立了一种基于核
科技更新层出不穷.2007年值得我们期待的科技看点从上瘾疫苗.到未来核电站再到解决缺水的新技术,等等,可以说新科技将带给我们快乐的2007年。以下是美国《大众科学》杂志总结的八
为提高浙江省各级兽医系统实验室的检测能力,对省内40个兽医实验室H7 N9流感病毒抗体检测(H7N9-AI Ab),A型口蹄疫病毒抗体检测(A-W Ab)和小反刍兽疫病毒检测(PPRV)比对.结果表明,参
今年6月,我买了台新电脑。我之所以在3个月后才写此文,是在经过了3个月的试用后,才能对这台电脑怍出从硬件到软件的完全评估,结论是——100分。
目的 对5例中国散发Brugada综合征患者进行SCN5A基因突变位点检测.方法 采用直接测序法对5例散发Brugada综合征患者进行SCN5A基因碱基突变位点的检测,测序结果用Chromas软件
目的观察小钛板坚强固定术治疗下颌骨骨折的疗效。方法将150例下颌骨骨折患者随机分为观察组和对照组各75例。对照组行小钢板固定术,观察组行钛板坚强内固定术。结果两组患者