1.由人工鱼群算法改进的移动行为模型
鱼群的聚群行为是指鱼在游动过程中为了保证自身的生存和躲避危害会自然地聚集成群,鱼聚群时所遵守的规则有三条。分隔规则:尽量避免与临近伙伴过于拥挤;对准规则:尽量与临近伙伴的平均方向一致;内聚规则:尽量朝临近伙伴的中心移动[1]。
其中,对准原则和分隔原则保证了鱼群中的鱼能够按照指定的方向进行游动,每一条鱼都能在保证安全距离的情况下倾向于与自己的邻居保持方向上的一致。聚群行为示意图如图2-1所示,其中箭头方向为鱼头指向方向,受聚群行为影响,鱼群中的鱼前进方向相似,且各自之间存在一定的间距。
对应于车辆,车群行驶过程中,群体中的个体亦倾向于与自己的邻居保持一致[2]。基于此,移动行为模型设计如下:
约定讨论空间上存在有限可观测车辆,每辆车以固定速率运动。给定时刻,个体运动方向为上一时刻它的“邻居”运动方向的平均。考虑到道路实际情况,当两辆车的距离小于某一特定值rn时才会成为邻居。邻居的定义如下
图2-1 鱼群聚群行为模型
其中,xk(t)、yk(t)为个体在道路平面上的二维坐标,rn≥0为邻域半径,记邻居个数为nk(t)=Nk(t)。个体速度向量定义为V=|v|[cosα,cosβ],其中|v|是运动速率,α、β为速度向量与两条坐标轴的夹角,即方向角。则个体k运动方向的迭代规则为
个体运动速率为vn=|v|,个体k的迭代规则为
按照上述规则,所有鱼群中的个体同步运动,这种运动是一个时步一个时步地完成的,受力大小如下:
2.由人工鱼群算法改进的集群行为模型
鱼群的追尾行为如下:当鱼群中的一条或几条鱼发现食物时,其临近的伙伴会尾随其快速到达食物点。
将鱼群的追尾行为与鱼群的聚群行为中的内聚原则和分割原则结合,保证了鱼群中的鱼处于以下的行为状态:当找到食物或者遇到危险时,鱼群中的鱼会向目标鱼游去,当两者之间的距离太远时,鱼会加速向目标鱼游动,以期尽快获得食物或逃离危险;反之,当两者之间的距离太近时,为了避免碰撞,鱼会减速控制与目标鱼之间的距离,从而实现避撞[2]。
基于以上分析,将巡航状态下车辆所处状态与鱼群中的鱼所处状态进行对比,有如下结果:由于车辆所处空间为二维,鱼所处空间为三维,将集群行为的探测区间与前进方向限定在平面内;其次,由于高速路和城市快速路上的车辆,其下一时刻的运动方向主要由其前方车辆影响,所以将探测范围限定在前方左右各45°、半径为300m的范围内。车辆行为的逻辑步骤如下:
步骤一:车辆在行驶过程中,需要判断在前方可探测区间内,是否有符合集群条件的车辆存在。如果有,探测出相应车辆的位置,计算出相对距离,并进行下一步。
步骤二:寻找最近的车辆并向其行驶,当i车与j车的距离R大于r时,表现为吸引力作用,记为fattract,并且距离越近吸引力越大,以保证车辆总是向离自己最近的前方目标车行驶,i车加速向j车行驶,其受力大小为
当4≤x≤16且且|yj-yi|>|xi-xj|且yj>yi
当i车与j车距离R小于等于r时,表现为排斥力作用,记为fexclude。并且距离越小时,排斥力越大,以保证车辆之间的避撞。此时,i车减速以保持与前车距离,受力大小为
(www.xing528.com)
当4≤x≤16且且|yi-yj|>|xi-xj|且yj<yi
当两车距离等于r时,两车之间距离保持稳定,两车之间没有势力场作用[3]。也就是达到了稳定状态,这时,i车和j车之间的距离即期望车距。
集群行为的探测范围和相应距离示意图如图2-2所示。
图2-2 集群行为模型示意图
3.道路两侧对车辆运行方向的限制
为了适应车道环境,保证车辆的行驶发生在车道限制范围内,当车辆行驶至与道路边界距离一定范围内(4m)时,将受到路侧的斥力,斥力大小与车辆离路侧的距离成正相关,当车辆离路侧越近时,受到的斥力越大;反之,当车辆离路侧越远时,受到的斥力越小[3]。斥力的大小需要合理选取,以保证车辆具有合理的动力学特性且能够有效地保证避撞。经过多次实验,并分析数据,我们认为下面的设定是合理的。其受力大小如下
froad的受力条件和所能产生的作用如图2-3所示。
图2-3 路侧限制受力示意图
4.车辆速度控制
为了使车辆行驶状态尽可能与现实情况保持一致,在规定车速初始状态在合理范围内的同时,也需要控制车速在行驶过程中保持稳定。基于此,引入车速控制模型[4]。当车速在沿道路方向的分量大于某一值时,将受到与速度方向相反的力,以控制车辆的最高速度,使车辆不要超速,保证行驶安全;当车速在沿道路方向的分量小于某一值时,将受到与速度方向相同的力,控制车辆的最低速度,以保证较高的行驶效率,以免发生拥堵。结合高速公路的车速限制,我们假设车速需要稳定在15~30m/s范围内,考虑到车辆的加速能力和制动水平,结合实际需求,经过多次实验,得到下列受力模型,受力大小为
5.侧向防撞限制
不同于集群行为模型的受力条件和考虑方式,每辆车在行驶过程中应该避免与旁边车辆发生碰撞,故在车辆行驶过程中其左右足够近的范围内的车辆,会给本车一个斥力,从而避免发生剐蹭。如图2-4所示,对于车群中每一辆车而言,在其左右侧前方各45°,半径a=4m范围内,如果探测到有其他邻居车辆,则本车会受到邻居给的斥力作用,防止碰撞[5,6]。
图2-4 侧向防撞模型示意图
而探测范围选定为侧前方45°,有效地与集群行为模型区分的同时,避免了重复受力,避免前车速度无限制加快,超出可控范围。力的大小与车间相互距离成正比,记为fcar,其大小为
当且|yi-yj|<|xi-xj|且yj>yi
6.整体算法与模型分析
根据以上分析,在t时刻第i辆车所受合力为f=fcar+fspeed+froad+faccract+fexclude+ffinish(2-12)
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。