技术领域
本发明涉及车联网与边缘计算技术领域,具体涉及一种基于状态预测的动态资源分配策略。
背景技术
为了解决道路交通中频繁出现的交通事故、交通拥堵等现象,需要对道路交通进行科学管理,从而提高道路的交通安全和效率。车联网是物联网衍生的一种面向智能交通的网络,车联网就是把车作为一个智能个体,通过无线自组织网络技术让道路上的车辆组成通信网络,利用多种异构网络来实现车与车(Vehicle to Vehicle,V2V)之间、车与基础设施(Vehicle to Infrastructure,V2I)之间、车与行人(Vehicle to Pedestrians,V2P)之间、车与云端(Vehicle to Cloud,V2C)之间以及车与家(Vehicle to Home,V2H)的互联互通。车联网一方面通过交互交通安全信息和驾驶辅助信息来增强车辆用户驾驶的安全性,能有效的减少交通事故发生率并提升交通效率;另一方面通过为车辆用户提供导航、娱乐等服务来增强其行驶的舒适性。
随着用户需求的增长,车联网诞生了许多应用,如车载导航与定位、道路拥塞分析、编队行驶、碰撞预警、自动驾驶等,这些业务囊括了信息服务类、交通效率类和驾驶安全类。然而,当前车辆普遍存在计算、存储资源匮乏的现象,因此车辆节点在为用户提供车联网服务时常常依赖于边缘计算,将密集的计算任务卸载到边缘服务器,边缘服务器利用自身强大的计算能力来处理车辆的计算任务,然后将计算结果反馈给车辆节点。同时,边缘计算的基本思想是将计算能力部署在靠近数据源的地方进行数据处理,因此边缘节点与传统云计算相比,具有更低的时延、更小的能源消耗和更安全的数据隐私。然而与之相对应的,在网络边缘中存在着由不同厂家设计生产的海量边缘设备,这些设备具有较强的异构性,为了合理的利用资源,提高资源的使用效率,需要设计一套行之有效的资源分配策略来指导边缘节点进行资源分配。
为了合理的利用资源,提高资源利用效率,当前研究者为边缘计算服务器提出了许多资源分配策略,然而大多数研究的资源分配方案都是基于静态环境部署的,在快速变化的车联网环境中,由于车辆的移动性,边缘计算系统的资源最佳分配方案可能会随着时间的变化而发生变化,因此静态的资源分配策略无法适用于车联网环境。同时,边缘节点的状态变化也会带来额外的能源消耗,在一定程度上,由于状态变化带来的能源消耗比空载状态下的能源消耗更多。因此,为节省系统资源的总能耗,资源分配策略还需要考虑边缘节点因状态变化引起的额外能耗。
综上所述,如何在边缘计算系统中满足车辆节点提高车联网服务时的资源需求的情况下,解决车辆的移动性和状态变化带来的额外能源消耗时问题的关键。
发明内容
为了解决上述问题,本发明提供一种基于状态预测的动态资源分配策略,通过动静结合的资源分配策略来适应车联网的动态环境,通过预测算法来减少边缘节点状态的变化,进而减少系统的能源消耗。
一种基于状态预测的动态资源分配策略,包括以下步骤:
S1、将系统的服务时间T划分为离散的时间间隙,车辆节点在每个时间间隙请求服务器资源;
S2、采集系统在当前时间间隙t的状态数据,将采集数据带入资源分配模型中,将资源分配模型作为目标函数,使用拉格朗日乘子算法和KKT条件对目标函数进行求解,得到最优解,根据计算出来的最优解为车辆节点分配资源;
S3、资源分配后,车辆节点将计算任务卸载到分配的边缘节点,计算边缘节点的剩余资源量,并将边缘节点的剩余资源量按照从大到小的顺序进行排序(c
S4、将当前时间间隙前k个边缘节点的剩余资源量之和与下一个时间间隙内边缘服务器集群的资源请求总量Z进行比较,若满足条件
S5、令t=t+1,执行步骤S2-S5,进行下一时间间隙t=t+1的资源分配计算和时间间隙t=t+2时刻的边缘节点状态预测和状态更新,直到服务时间间隙达到系统的服务时间T。
进一步的,资源分配模型包括:
其中
资源分配模型的限制条件为:
其中,τ表示每个时间间隙的时间周期,D
进一步的,利用线性回归算法预测下一个时间间隙内边缘服务器集群的资源请求总量Z包括:边缘节点在t-1时刻根据当前状态计算出t时刻的预测值,计算公式包括:
其中,
进一步的,在当前时间间隙t对车辆节点进行边缘节点资源分配时,优先为车辆节点分配剩余资源量大的边缘节点。
有益效果:
本发明针对传统资源分配策略在车联网环境中由于车辆移动性导致的资源分配方案不适应问题,提出动静结合的动态资源分配策略,将服务时间均匀划分为时间间隙,在每个时间间隙实现最优资源分配方案,在宏观上随时间变化实时调整资源分配方案,使其适应快速变化的车联网环境。
本发明针对考虑边缘节点由于状态变化带来的额外能源消耗,通过线性回归算法预测资源请求总量,通过对边缘节点的剩余资源量进行排序,确定边缘节点的状态,减少状态变换的次数,进而减少系统的能源消耗。
附图说明
下面结合附图和具体实施方式对本发明做进一步详细的说明。
图1为本发明实施例的边缘计算在车联网中的应用场景示意图;
图2为本发明实施例的基于状态预测的动态资源分配的流程图;
图3为本发明实施例的单轮静态请求资源分配流程图;
图4为本发明实施例的多轮动态请求资源分配流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
针对边缘计算服务器在为车辆节点提供资源时面临的车辆移动性和资源异构性问题,本发明提出一种基于状态预测的动态资源分配策略,旨在满足车辆提供车联网服务的资源需求的前提下,最大化节省边缘计算系统的能源消耗。请参见附图2,基于状态预测的动态资源分配策略包括两个阶段:单轮静态请求阶段和多轮动态请求阶段,其中:单轮静态请求阶段主要包括系统的建模、资源分配方案、凸优化证明和凸优化问题求解;多轮动态请求阶段主要包括下一时隙资源使用量预测、边缘节点剩余资源排序、边缘节点状态确定;针对传统资源分配策略在车联网环境中由于车辆的移动性导致最优资源分配方案失效问题,利用动静相结合的资源分配方案对其进行改进,针对由于边缘服务器状态变化带来的能量损耗问题,利用状态预测对其进行改进,使得本发明的资源分配策略在环境适应性和节能方面有很大的提升。针对传统资源分配策略在车联网环境中由于车辆的移动性导致最优分配方案不适应的问题,从时间离散化的角度对其进行改进。将时间均匀的划分为时间间隙,在每个时间间隙以系统能源消耗最小为目标建立资源分配方程,并将该问题转化为凸优化问题,然后使用拉格朗日乘子算法和KKT条件求解,避免了传统的资源分配策略无法适应快速变化的动态车联网环境的问题。
S1、参见附图1,图1为本发明的边缘计算在车联网中的应用场景示意图。在一个实施例中,进行边缘计算中的服务器可以是基站服务器、小区机房服务器等。在车联网环境中,传统资源分配策略由于车辆的移动性会导致最优分配方案不适应的问题,为了有效解决该问题,本发明考虑从时间离散化的角度对其进行改进,将系统的服务时间T划分为离散的时间间隙t,t∈{1,2,…,Γ},每个时间间隙的时间周期为τ,即T=Γ*τ,其中Γ表示时间间隙的个数。在每个时间间隙t,资源分配策略需要根据车辆节点的实际资源请求情况来进行调整。假设有N个边缘节点{1,2,…,N},有M个车辆节点{1,2,…,M},每个车辆节点在当前时间间隙t内的计算任务为{1,2,…,R},车辆节点i的计算任务r对应所需的数据量为
令t的初始值为0,即初始时刻t=0。
S2、参照附图3,采集系统在当前时间间隙t的状态数据,将采集数据带入资源分配模型中,将资源分配模型作为目标函数E,使用拉格朗日乘子算法和KKT条件对目标函数E进行求解,得到最优解,根据计算出来的最优解为车辆节点分配资源。
1)采集系统在当前时间间隙t的状态数据,采集的数据包括:车辆到边缘节点的位置d,车辆的任务数R,车辆节点到边缘节点的传输功率(假设发送功率和接收功率相同)
2)将采集数据带入资源分配模型中,将资源分配模型作为目标函数E,构造目标函数E的拉格朗日函数:L(D
3)通过梯度迭代拉格朗日乘子μ,获得优化变量的最优解。
4)判断最优解是否满足时间约束,如果不满足,则返回步骤1),如果最优解满足时间约束,则根据计算出来的最优解为车辆节点分配资源。
在一个实施例中,资源分配模型的构建包括如下步骤:
1)分析并构建能耗计算模型,根据现有研究可知,单个CPU周期的能耗为:E=kf
2)分析并构建通信模型,通信模型的时间包括卸载时间T
3)在每个时间间隙t内,以系统的能源消耗最小化为目标,构建资源分配模型:
其中
令
其中,E表示系统的总功耗,
资源分配模型的限制条件为:
可简化为:
其中T
4)资源分配问题是一个凸优化问题,证明过程包括:将资源分配模型E作为目标函数,对目标函数E求各个优化变量的二阶偏导数,对函数f=T
S3、在为车辆节点分配边缘节点资源后,车辆节点将计算任务卸载到分配的边缘节点,车辆节点卸载的任务会占用边缘节点的资源进行任务计算。现有的边缘计算技术中,在为车辆节点分配资源时,所有服务器都处于打开状态,会出现部分服务器会一直空转,而另外部分服务器会因为请求频繁变化状态的情况,由于边缘节点状态的频繁改变带来的额外能源消耗的问题,造成系统不必要的能源损耗,为了降低系统的能源消耗,可以考虑在下一个时间间隙使用最少的边缘节点完成车辆节点的任务计算,减少边缘节点状态的变化,进而减少整个系统的能源消耗。首先计算当前时间间隙t边缘节点的剩余资源量,并将边缘节点的剩余资源量按照从大到小的顺序进行排序(c
在一个实施例中,利用线性回归算法预测下一个时间间隙内边缘服务器集群的资源请求总量Z包括:
线性回归算法所用到的训练数据是边缘节点的历史资源使用总量,边缘节点在t-1时刻根据当前状态计算出t时刻的预测值,将边缘节点在当前时刻t的资源使用量作为真实值Y
(1)平方误差的矩阵表示为:
SE=(Y-XW)
(2)对回归系数W求导得:SE‘=X
(3)令导数为零可得最佳回归系数
(4)将上述最佳回归系数
利用上述线性回归算法进行预测资源请求总量减小了计算开销,实现了轻量性,同时预测利用历史数据获得精确的回归系数向量,使得预测结果更加精确,保证了预测数据的可靠性。
S4、将当前时间间隙边缘节点的剩余资源量最大的前k个之和
S5、令t=t+1,执行步骤S2-S5,进行下一时间间隙t=t+1的资源分配计算,以及时间间隙t=t+2时刻的边缘节点状态预测和状态更新,直到服务时间间隙达到系统的服务时间T,如附图4所示。
需要说明的是,本领域普通技术人员可以理解实现上述方法实施例中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-0nly Memory,ROM)或随机存储记忆体(RandomAccess Memory,RAM)等。
以上所述仅是本申请的具体实施方式,应当指出,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
机译: 一种基于模型的在线优化方法来限制车辆的状态变量,该方法用于预测车辆的状态变量
机译: 一种基于模型的在线优化方法来限制车辆的状态变量,该方法用于预测车辆的状态变量
机译: 一种基于模型的系统参数预测的方法,例如车辆的能量存储速度或充电状态