发明内容
有鉴于此,本发明的目的在于提供一种基于模糊逻辑的车联网中继节点选择方法。
为达到上述目的,本发明提供如下技术方案:
一种基于模糊逻辑的车联网中继节点选择方法,包括以下步骤:
S1:各个车辆节点将自身的状态消息,包括车辆行驶速度,方向,位置以及信道状态;封装到信标消息中,通过单跳广播的形式传输给一跳范围内的邻居车辆;车辆节点会接收到来自邻居车辆节点的信标消息,以获取一跳范围内各个邻居车辆节点的状态;
S2:当车辆检测到前方因交通事故或道路坍塌等交通异常事件时,将生成紧急消息,将该车辆称之为源节点,源节点将通过模糊逻辑确定一跳范围内的邻居车辆节点的转发优先级,并选取优先级最大的车辆节点作为中继节点,将中继节点的ID信息写入紧急数据包,对该紧急消息进行广播;
S3:周边的邻居车辆节点将判断该紧急消息是否被接收过,若是,则丢弃该紧急消息,若否,则执行步骤S4;
S4:接收到紧急消息的邻居车辆节点将判断源节点的运动方向是否与自身行驶方向一致,若是,则执行步骤S5,若否,则丢弃该紧急消息;
S5:接收到紧急消息的邻居车辆节点将判断自身是否处于源节点的后方,若是,则执行步骤S6,若否,则丢弃该紧急消息;
S6:接收到紧急消息的邻居车辆节点将判断自身是否是源节点选取的中继节点,若是,将对该紧急消息进行广播,若否,则丢弃该紧急消息;
S7:源节点在一定时间内没有收到中继节点广播的紧急消息,将对该紧急消息进行重广播,以确保紧急消息的可靠性。
进一步,在所述步骤S1中,信标消息通过车载单元OBU来获取,并且以固定周期的单跳广播形式在一跳范围内进行传输,该信标消息的内容包括车辆的运动速度,行驶方向,所在位置坐标以及信道状况。
进一步,所述步骤S2具体步骤如下:
S21:在源节点将要广播紧急消息时,计算源节点一跳范围内的邻居节点车辆的覆盖范围L,信道忙闲比CBR,移动因素M;
S22:分别确定所述的覆盖范围L,信道忙闲比CBR以及移动因素M对应的模糊隶属度函数,并确定模糊推理系统中的模糊规则库;
S23:将计算得到的覆盖范围L,信道忙闲比CBR以及移动因素M作为模糊推理系统的输入,并计算其对应的模糊输出值;
S24:利用重心法来去模糊化,得到模糊推理系统的精确值,该值即为车辆的转发优先级;
S25:得到一跳范围内所有邻居节点车辆的转发优先级后,选取其中转发优先级值最大的车辆节点作为中继节点。
进一步,所述覆盖范围L,信道忙闲比CBR以及移动因素M通过以下公式进行计算:
其中R为车辆一跳通信半径,(x,y)为车辆所在的位置坐标;
其中n表示信道检测次数,ki=1表示信道繁忙,ki=0表示信道空闲;
其中vr表示当前车辆节点的移动速度,vmin和vmax分别表示一跳广播范围内所有车辆中的最小和最大移动速度。
进一步,在所述步骤S7中,针对源节点没有收到选中的中继节点广播的紧急消息这一情况,源节点在广播紧急消息包后将启动一个定时器,在计时时间内若没有收到中继节点广播的消息,源节点车辆将重新选择中继节点进行紧急消息的广播,以确保消息的可靠性。
本发明的有益效果在于:由于车辆的高速移动性,车辆获取到周边邻居车辆节点的消息具有滞后性,使得其难以精确判断周边车辆情况,本发明将结合模糊逻辑在处理不精确消息方面的优势,提出一种基于模糊逻辑的车联网中继节点选择方法。该方法综合考虑了车辆的覆盖范围、信道忙闲比以及移动因素,通过建立合适的模糊推理规则来得到车辆作为中继节点的转发优先级,车辆将转发优先级最大的邻居车辆节点作为下一跳的中继节点,有效降低了中继节点的数目,从而避免产生“广播风暴”的问题,使得紧急消息能够快速可靠地传输。
本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书来实现和获得。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
其中,附图仅用于示例性说明,表示的仅是示意图,而非实物图,不能理解为对本发明的限制;为了更好地说明本发明的实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
本发明实施例的附图中相同或相似的标号对应相同或相似的部件;在本发明的描述中,需要理解的是,若有术语“上”、“下”、“左”、“右”、“前”、“后”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此附图中描述位置关系的用语仅用于示例性说明,不能理解为对本发明的限制,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。
本实施例提供一种基于模糊逻辑的车联网中继节点选择方法。
图1为本发明的场景示意图,源节点车辆V1发现前方的交通异常事件,生成紧急消息,在其一跳范围内选择了V2作为其中继节点,将该紧急消息广播出去。在本实施例中,所有车辆节点都配备了GPS系统以及无线信号收发装置,由此可以获得车辆的位置信息,车辆之间可以相互通信;所有车辆节点通过周期性的信标消息(周期为100ms)来获取周边相邻节点的状态信息,如车辆所处的地理位置,车辆的信道状况,车辆的速度以及行驶的方向。
图2为本发明的模糊推理过程的示意图,模糊推理是利用隶属度函数取得各规则的合适程度,然后综合各个规则的合适度来得到适当的推理结果,即使规则条件部分的命题不完全一致,也能依据合适度的高低比较得到合适的推理结果。其主要由三个主要子系统组成:模糊器,推理机和解模糊器。基本操作是,应用模糊器将清晰的输入映射到模糊集,再根据相应的IF-THEN规则进行模糊推理。最后,解模糊器将解决方案转换为具体的输出。
本方法具体包括以下步骤:
步骤S1:各个车辆节点将自身的状态消息(如车辆行驶速度,方向,位置以及信道状态等)封装到信标消息中,通过单跳广播的形式传输给一跳范围内的邻居车辆;同理,车辆节点也会接收到来自邻居车辆节点的信标消息,以获取一跳范围内各个邻居车辆节点的状态。
步骤S2:当车辆检测到前方因交通事故或道路坍塌等交通异常事件时,将生成紧急消息,将该车辆称之为源节点,源节点将通过模糊逻辑确定一跳范围内的邻居车辆节点的转发优先级,并选取优先级最大的车辆节点作为中继节点,将中继节点的ID信息写入紧急数据包,对该紧急消息进行广播。
步骤S21:转发优先级由覆盖范围L,信道忙闲比CBR以及移动因素M来决定,其中:
覆盖范围L用来表征在广播范围内的车辆节点与能够接收到广播消息的相邻节点之间的空间平均距离。使用距离均值方法来计算该空间平均距离。为了计算这个度量,需要使用从GPS中获取的位置信息,一组点(xi,yi)的空间平均值计算如下:
在本章中,这组点即一跳通信范围内的所有邻居节点,其中n表示节点数量。如果车辆位于(x,y)处,利用下式计算其到空间平均值的归一化距离:
其中,是广播消息的传输半径。当L较小时,这意味着接收消息的车辆节点距离发送消息的车辆较近,表明它应该不倾向于转发消息,即不适合作为中继节点。因此,L值越大的节点越适合成为中继节点。
信道忙闲比CBR定义为在一定的检测时间内,信道检测为繁忙状态的时间所占的比例。信道忙闲比还可以用来表征当前车辆节点的密度,其值越高表明当前车辆节点所处位置的车辆节点越密集。信道忙闲比通过周期内多次信道检测的平均值进行计算,计算公式如下:
其中n表示信道检测次数,ki=1表示信道繁忙,ki=0表示信道空闲。通过CBR可以对当前节点所处网络状态做出评估,CBR越高,表明该车辆节点繁忙时间越多,所处地区的节点分布也越密集,此时若进行消息的转发,会加大消息碰撞的概率,加重网络的负担。因此,CBR值越小的车辆节点越适合成为中继节点。
移动因素M用来表征车辆节点在一跳广播范围内相对移动速度的大小,其计算方法如下:
其中vr表示当前车辆节点的移动速度,vmin和vmax分别表示一跳广播范围内所有车辆中的最小和最大移动速度。M越大表明车辆移动速度越快。移动速度越快的车辆节点会频繁的更新周边邻居车辆节点的状态信息,并且会距离发送紧急消息的中继节点越来越近,若该车辆节点成为下一个中继节点,由于其与上一个中继节点的广播范围重合度较高,不仅会加大网络中消息的冗余,也使得紧急消息在下一次广播中覆盖的车辆节点更少。因此在这种情况下,M越小的车辆更有资格成为中继节点来转发紧急信息。
步骤S22:分别确定所述的覆盖范围L,信道忙闲比CBR以及移动因素M对应的模糊隶属度函数。
图3为覆盖范围L的隶属度函数,对车辆节点与能够接收到广播消息的相邻节点之间的空间平均距离,即覆盖范围进行模糊化,模糊集合可划分为小,中,大(LS,LM,LB)三个等级。
图4为信道忙闲比CBR的隶属度函数,对信道处于繁忙状态所占比例进行模糊化,模糊集合可以划分为低,中,高(CL,CM,CH)三个等级。在车辆节点的一跳范围内,当CBR的值低于0.3则认为该值处于低等级,当CBR的值高于0.6时,则认为该值处于高等级。
图5为移动因素M的隶属度函数,对车辆节点在一跳广播范围内相对移动速度的大小进行模糊化,模糊集合可以划分为慢,中,快(MS,MM,MF)三个等级。并制定如下的IF-THEN模糊规则库:
步骤S23:将计算得到的覆盖范围L,信道忙闲比CBR以及移动因素M作为模糊推理系统的输入,并计算其对应的模糊输出值。下面以覆盖范围,信道忙闲比与移动因素的值L,C,M={0.7,0.2,0.2}来说明推理过程。
由图3可知,此时覆盖范围的隶属度函数值为:
LB=0.8,LM=0.2
由图4可知,此时信道忙闲比的隶属度函数值为:
CL=1
由图5可知,移动因素的隶属度函数值为:
MS=0.6,MM=0.4
对各个影响因素的隶属度进行组合,从而得出以下四条规则:
R1={LB=0.8,CL=1,MS=0.6}
R2={LB=0.8,CL=1,MM=0.4}
R3={LM=0.2,CL=1,MS=0.6}
R4={LM=0.2,CL=1,MM=0.4}
通过查阅模糊规则库可知,规则R1对应模糊规则库中的规则1,其获得的转发优先级为Perfect;规则R2对应库中的规则2,其获得的转发优先级为Good;规则R3对应库中的规则10,其获得的转发优先级为Good;规则R4对应库中的规则11,其获得转发优先级为Acceptable。
步骤S24:利用重心法来去模糊化,得到模糊推理系统的精确值,该值即为车辆的转发优先级。
图6为确定的输出的转发优先级函数,即确定模糊规则库中优先级{Terrible,Bad,Acceptable,Good,Perfect}的模糊输出隶属度。如对规则R1-R4中的隶属度取最小值可得:Perfect隶属度为0.6,Good隶属度为0.4和0.2,Acceptable隶属度为0.2;再对属于相同优先级的隶属度取最大值最终可得:Perfect隶属度为0.6,Good隶属度为0.4,Acceptable隶属度为0.2。
图7为去模糊化示意图,由该图可以得到精确的转发优先级隶属度,根据重心法求得阴影部分的重心,其计算公式如下:
根据其横坐标落在的位置即可得出该节点具备成为中继节点来转发消息的优先级隶属度。
步骤S25:得到一跳范围内所有邻居节点车辆的转发优先级后,选取其中转发优先级值最大的车辆节点作为中继节点。
步骤S3:周边的邻居车辆节点将判断该紧急消息是否被接收过,若是,则丢弃该紧急消息,若否,则执行步骤S4。
步骤S4:接收到紧急消息的邻居车辆节点将判断源节点的运动方向是否与自身行驶方向一致,若是,则执行步骤S5,若否,则丢弃该紧急消息。
步骤S5:接收到紧急消息的邻居车辆节点将判断自身是否处于源节点的后方,如图1中A区域所示,若是,则执行步骤S6,若否,则丢弃该紧急消息。
步骤S6:接收到紧急消息的邻居车辆节点将判断自身是否是源节点选取的中继节点,若是,将对该紧急消息进行广播,如图1中V2与V3分别为选中的中继节点,若否,则丢弃该紧急消息。
步骤S7:源节点在一定时间内没有收到中继节点广播的紧急消息,将对该紧急消息进行重广播。在通信过程中,可能会出现由于车辆节点非常稀疏从而导致周边没有邻居节点,还有可能出现选中的中继节点没有对紧急消息进行转发而未能一次广播成功。这些异常情况的发生概率虽然较低,但为了增加设计方案的鲁棒性,保障紧急消息的投递率,将进行如下的重传策略:针对源节点车辆没有收到选中的中继节点广播的紧急消息包这一情况,源节点车辆在广播紧急消息包后将启动一个定时器,将该定时器时间设为200ms,在计时时间内若没有收到中继节点广播的消息,源节点车辆将重新选择中继节点进行紧急消息的广播,以确保消息的可靠性。
图8为本发明流程图。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。