发明内容
基于此,有必要针对上述技术问题,提供一种基于天牛须搜索算法的电动汽车充电调度方法、装置、计算机设备和存储介质。
一种基于天牛须搜索算法的电动汽车充电调度方法,所述方法包括:
获取多辆待充电的电动汽车对应的充电订单,并确定各个充电订单对应的充电时段和充电总量;所述充电时段包括至少一个充电子时段;
根据各个充电订单对应的充电子时段和充电总量,获取不同的多组充电方案;每组充电方案中包括多个充电订单各自对应的充电方案信息,所述充电方案信息为每辆电动汽车在各个充电子时段对应的预期充电负荷;
根据天牛须搜索算法,对多组充电方案进行更新;
获取各个充电子时段对应的居民用电负荷最值,并根据更新后的每组充电方案和各个充电子时段对应的居民用电负荷最值,确定每组充电方案对应的用电负荷峰谷差;其中,所述用电负荷峰谷差为用电总负荷最大值和用电总负荷最小值的差;
从更新后的多组充电方案中,确定出用电负荷峰谷差最小的目标充电方案,并根据所述目标充电方案,向所述多辆待充电的电动汽车发送充电指令。
可选地,所述获取各个充电子时段对应的居民用电负荷最值,包括:
获取预设时间范围内的居民用电负荷预测曲线;所述预设时间范围包括所有充电子时段;
根据所述居民用电负荷预测曲线,获每个充电子时段对应的居民用电负荷最大值和居民用电负荷最小值,作为该充电子时段对应的居民用电负荷最值。
可选地,所述根据更新后的每组充电方案和各个充电子时段对应的居民用电负荷最值,确定每组充电方案对应的用电负荷峰谷差,包括:
根据更新后每组充电方案中各个充电订单对应的充电方案信息,确定每组充电方案中,各个充电子时段对应的预期充电负荷总量;
针对每组充电方案,根据各个充电子时段对应的居民用电负荷最值和预期充电负荷总量,确定各个充电子时段对应的用电负荷范围,根据各个用电负荷范围,获取用电总负荷最大值和用电总负荷最小值,并根据所述用电总负荷最大值和所述用电总负荷最小值的差值,确定用电负荷峰谷差。
可选地,所述根据天牛须搜索算法,对多组充电方案进行更新,包括:
根据多组充电方案,确定多个天牛对应的位置信息;其中,每个天牛的位置信息对应一组充电方案,位置信息中的各个分量与充电方案中各辆电动汽车在各个充电子时段的预期充电负荷对应;
根据每个天牛的位置信息和预设的适应值函数,确定每个天牛对应的适应值;
根据各个天牛当前的适应值,确定群体最优位置信息和每个天牛对应的个体最优位置信息;
针对每个天牛,根据所述群体最优位置信息和该天牛对应的个体最优位置信息,确定天牛左须与天牛右须的距离,根据所述距离、群体最优位置信息和个体最优位置信息,确定更新速度,并根据所述更新速度对当前位置进行更新,获取更新后的位置信息;
根据每个天牛的当前位置信息,得到更新后的多组充电方案。
可选地,所述根据各个天牛当前的适应值,确定群体最优位置信息和每个天牛对应的个体最优位置信息,包括:
获取历史群体最优位置对应的第一历史适应值,并比较所述第一历史适应值和各个天牛当前的适应值,将最大的适应值所对应的位置信息作为群体最优位置信息;
以及,
获取每个天牛的历史个体最优位置对应的第二历史适应值;
针对每个天牛,从该天牛对应的第二历史适应值和当前的适应值中,确定最大的适应值,并将最大的适应值所对应的位置信息,作为该天牛的个体最优位置信息。
可选地,所述根据所述群体最优位置信息和该天牛对应的个体最优位置信息,确定天牛左须与天牛右须的距离,包括:
获取缩放因子;
针对每个天牛,获取所述群体最优位置信息和该天牛个体最优位置信息之差的范数,并根据所述范数和所述缩放因子的乘积,确定天牛左须与天牛右须的距离;
所述根据所述距离、群体最优位置信息和个体最优位置信息,确定更新速度,包括:
获取预设的速度更新函数,所述速度更新函数与所述距离、群体最优位置信息和个体最优位置信息关联;
根据所述速度更新函数,确定更新速度;
其中,所述速度更新函数为:
其中,ω是惯性权重,c
1,c
2为学习因子,
为更新速度,
为初始速度,
为天牛随机生成的标准化方向向量,d
i k为天牛左须与天牛右须的距离,
为第k次更新时的天牛左须质心坐标,
为第k次更新时的天牛右须质心坐标,
为天牛左须质心坐标对应的适应值,
为天牛右须质心坐标对应的适应值,
为第k次更新时的个体最优位置信息,
为第k次更新时的群体最优位置信息,
为天牛当前的位置信息,矩阵点乘表示同型矩阵对应元素相乘。
可选地,在所述根据各个天牛当前的适应值,确定群体最优位置信息的步骤之后,所述方法还包括:
确定当前变异概率,并在所述当前变异概率大于概率阈值时,从所述群体最优位置信息中的多个分量中,选择预设数量的分量进行更新;
所述分量的更新方式如下:
pgk t+1=pgk t×(1+Arandn)
其中,A为扰动幅值,randn为服从标准正态分布的随机变量。
一种基于天牛须搜索算法的电动汽车充电调度装置,所述装置包括:
充电订单获取模块,用于获取多辆待充电的电动汽车对应的充电订单,并确定各个充电订单对应的充电时段和充电总量;所述充电时段包括至少一个充电子时段;
充电方案获取模块,用于根据各个充电订单对应的充电子时段和充电总量,获取不同的多组充电方案;每组充电方案中包括多个充电订单各自对应的充电方案信息,所述充电方案信息为每辆电动汽车在各个充电子时段对应的预期充电负荷;
充电方案更新模块,用于根据天牛须搜索算法,对多组充电方案进行更新;
峰谷差获取模块,用于获取各个充电子时段对应的居民用电负荷最值,并根据更新后的每组充电方案和各个充电子时段对应的居民用电负荷最值,确定每组充电方案对应的用电负荷峰谷差;其中,所述用电负荷峰谷差为用电总负荷最大值和用电总负荷最小值的差;
充电模块,用于从更新后的多组充电方案中,确定出用电负荷峰谷差最小的目标充电方案,并根据所述目标充电方案,向所述多辆待充电的电动汽车发送充电指令。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如上任一项所述方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上任一项所述方法的步骤。
上述一种基于天牛须搜索算法的电动汽车充电调度方法、装置、计算机设备和存储介质,通过确定各个充电订单对应的充电时段和充电总量,每个充电时段包括至少一个充电子时段,可以根据各个充电订单对应的充电子时段和充电总量,获取不同的多组充电方案,根据天牛须搜索算法,对多组充电方案进行更新,获取各个充电子时段对应的居民用电负荷最值,并根据更新后的每组充电方案和各个充电子时段对应的居民用电负荷最值,确定每组充电方案对应的用电负荷峰谷差,进而可以从更新后的多组充电方案中,确定出用电负荷峰谷差最小的目标充电方案,并根据目标充电方案,向多辆待充电的电动汽车发送充电指令,实现了根据电动汽车的充电总量进行充电方案的编排,并及时向电动汽车发送对应的充电指令,能够实时快速地获取并执行适当的充电方案,有效提高电网稳定性和发电利用率。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,提供了一种基于天牛须搜索算法的电动汽车充电调度方法,该方法可以应用于用电调度系统和多辆待充电的电动汽车组成的应用环境中。其中,用电调度系统可以用独立的服务器或者是多个服务器组成的服务器集群来实现;电动汽车可以具有对应的车载终端,车载终端可用于与车辆用户进行交互,并与用电调度系统通信连接,或者,电动汽车可以通过车载终端与独立终端通信连接,用电调度系统通过该独立终端实现与车载终端之间的数据交互,独立终端可以但不限于是各种智能手机、笔记本电脑、平板电脑、便携式可穿戴设备。
本实施例以该方法应用于用电调度系统进行举例说明,在本实施例中,如图1所示,该方法包括以下步骤:
步骤101,获取多辆待充电的电动汽车对应的充电订单,并确定各个充电订单对应的充电时段和充电总量;所述充电时段包括至少一个充电子时段。
在实际应用中,当需要对待充电的电动汽车进行充电时,终端可以确定电动汽车对应的充电总量和期望充电时段,并根据充电总量和期望充电时段,生成充电订单,向用电调度平台发送该充电订单。
其中,期望充电时间段包括期望开始时间和期望结束时间,期望开始时间也可以称为订单开始时间,期望结束时间也可以更为订单结束时间。
当需要对电动汽车进行充电时,用户可以触发车载终端或独立终端的预设按钮,输入充电总量和期望充电时段,响应于用户操作,车载终端或独立终端可以根据用户输入的信息生成充电订单。或者,车载终端或独立终端可以按照预设时间间隔获取电动汽车当前的电量,并在电量低于预设电量阈值时,确定充电时段和充电总量。
在本实施例中,用电调度平台可以与多个终端通信连接,通过该连接获取到多辆待充电的电动汽车对应的充电订单,通过对充电订单进行读取,获取充电订单信息,可以确定各个充电订单对应的充电总量,并根据期望充电时段确定该订单的充电时段,其中,每个充电时段可以包括至少一个充电子时段。
具体而言,可以获取电网系统中实时负荷的更新时间间隔,并根据更新时间间隔,对预设时间进行划分,则划分后的每个时间段则为一个充电子时段。例如,若电网系统中实时负荷的更新时间间隔为5分钟,则一天二十四小时可以划分为24*(60/5)个充电子时段。
用电调度系统在接收到多个充电订单后,可以针对多个充电订单生成订单标记Γ={1,2,...,N},第i个充电订单中可以包括以下由终端发送的充电订单信息:
order(i)=[期望开始时间,期望结束时间,充电总量]
为便于确定期望开始时间与期望结束时间各自对应的充电子时段,从而确定充电时段,用电调度系统可以对终端发送的充电订单信息进行转换,针对任一充电订单,可以得到如下所示的充电订单信息
其中,z1表示期望开始时间的时(h),z2表示期望开始时间的分钟(min),z3表示期望结束时间的时(h),z4表示期望结束时间的分钟(min),z5表示充电总量(kwh)。
则期望开始时间对应的充电子时段Nstart可通过下式确定:
Nstart=z1*12+z2//5+2
期望结束时间的对应的充电子时段Nend可通过下式确定:
Nend=z3*12+z4//5-1
根据期望开始时间对应的充电子时段Nstart和期望结束时间的对应的充电子时段Nend的差值,可以确定充电时段,充电时段中包含的充电子时段对应数量m可通过下式确定:
m=(Nend-Nstart)//6
其中,符号“//”表示对其取整。
步骤102,根据各个充电订单对应的充电子时段和充电总量,获取不同的多组充电方案;每组充电方案中包括多个充电订单各自对应的充电方案信息,所述充电方案信息为每辆电动汽车在各个充电子时段对应的预期充电负荷。
在实际应用中,在确定各个充电订单对应充电时段所包含的充电子时段后,针对每个充电订单,可以根据充电总量,分配该充电订单中各个充电子时段对应的预期充电负荷,生成该充电订单对应的充电方案信息,则各个充电订单对应的充电方案信息,可以构成一组充电方案。通过改变一个或多个充电方案信息,可以得到不同的多组充电方案。
具体的,每个充电订单对应的充电方案信息如下所示:
xi=[x1 i,x2 i,..,xj i,..,xm i]
其中,xj i表示第j个充电子时段对应的预期充电负荷。在一示例中,为了便于后续对不同充电订单的充电方式进行同时编排,可以统一各个充电订单初始化的充电子时段的数量,针对未安排进行充电的充电子时段,其对应的预期充电负荷可以设置为0。
步骤103,根据天牛须搜索算法,对多组充电方案进行更新。
在获取到初始化的多组充电方案后,可以根据天牛须搜索算法,分别对各组充电方案进行更新。
天牛须搜索算法(Beetle Antennae Search,BAS),也可以称为甲壳虫须搜索算法,其对应的生物原理为:当天牛觅食时,天牛并不知道实物在哪里,而是根据食物气味的强弱来觅食。天牛有两只触角(也称为天牛须),如果左边触角收到的气味强度比右边大,那下一步天牛就往左飞,否则就往右飞,通过该方法可以有效找到食物。
步骤104,获取各个充电子时段对应的居民用电负荷最值,并根据更新后的每组充电方案和各个充电子时段对应的居民用电负荷最值,确定每组充电方案对应的用电负荷峰谷差。
作为一示例,用电总负荷为每个充电子时段内居民用电负荷和预期充电负荷总量之和,用电负荷峰谷差为多个充电子时段中,用电总负荷最大值和用电总负荷最小值的差。
在具体实现中,可以获取各个充电子时段对应的居民用电负荷最值,针对更新后的每组充电方案,可以根据每组充电方案在各个充电子时段的用电情况,以及各个充电子时段对应的居民用电负荷最值,确定每个充电子时段的用电范围,进而可以结合各个充电子时段的用电范围,确定用电总负荷最大值和用电总负荷最小值,并根据两者的差值得到充电方案对应的用电负荷峰谷差。
步骤105,从更新后的多组充电方案中,确定出用电负荷峰谷差最小的目标充电方案,并根据所述目标充电方案,向所述多辆待充电的电动汽车发送充电指令。
在确定每组充电方案对应的用电负荷峰谷差之后,可以从更新后的多组充电方案中,确定出对应用电负荷峰谷差最小的充电方案,作为目标充电方案,并根据目标充电方案,向多辆待充电的电动汽车分别发送对应的充电指令,进行充电。在发送充电指令时,用电调度系统可以通过与车载终端
在本实施例中,通过确定各个充电订单对应的充电时段和充电总量,每个充电时段包括至少一个充电子时段,可以根据各个充电订单对应的充电子时段和充电总量,获取不同的多组充电方案,根据天牛须搜索算法,对多组充电方案进行更新,获取各个充电子时段对应的居民用电负荷最值,并根据更新后的每组充电方案和各个充电子时段对应的居民用电负荷最值,确定每组充电方案对应的用电负荷峰谷差,进而可以从更新后的多组充电方案中,确定出用电负荷峰谷差最小的目标充电方案,并根据目标充电方案,向多辆待充电的电动汽车发送充电指令,实现了根据电动汽车的充电总量进行充电方案的编排,并及时向电动汽车发送对应的充电指令,能够实时快速地获取并执行适当的充电方案,有效提高电网稳定性和发电利用率。
并且,相较于传统的有序用电调度方式中依赖于充电站进行用电管理,本申请通过直接向电动汽车发送充电指令,有效降低充电设施的配置成本。
在一个实施例中,所述获取各个充电子时段对应的居民用电负荷最值,可以包括如下步骤:
获取预设时间范围内的居民用电负荷预测曲线;所述预设时间范围包括所有充电子时段;根据所述居民用电负荷预测曲线,获每个充电子时段对应的居民用电负荷最大值和居民用电负荷最小值,作为该充电子时段对应的居民用电负荷最值。
在具体实现中,以获取预设时间范围内的居民用电负荷预测曲线,如获取24小时内的居民用电负荷预测曲线R(x)。其中,居民用电负荷曲线反映预设时间范围内预测的居民用电负荷,可以是时间与居民用电负荷之间的函数;预设时间范围包括所有的充电子时段。
在得到居民用电负荷预测曲线后,可以根据该曲线,确定每个充电子时段内,居民用电负荷最大值和居民用电负荷最小值,并将居民用电负荷最大值和居民用电负荷最小值确定为该充电子时段对应的居民用电负荷最值。具体的,针对居民用电负荷预测曲线R(x),可以定义p(i)max表示居民用电负荷预测曲线在第i个充电子时段的最大值,即p(i)max=max(R(i));定义p(i)min表示居民用电负荷预测曲线在第i个充电子时段的最小值,即p(i)min=min(R(i))。
在本实施例中,可以根据所述居民用电负荷预测曲线,获每个充电子时段对应的居民用电负荷最大值和居民用电负荷最小值,作为该充电子时段对应的居民用电负荷最值,为后续确定每组充电方案对应的用电负荷峰谷差提供数据处理基础。
在一个实施例中,如图2所示,所述根据更新后的每组充电方案和各个充电子时段对应的居民用电负荷最值,确定每组充电方案对应的用电负荷峰谷差,可以包括如下步骤:
步骤201,根据更新后每组充电方案中各个充电订单对应的充电方案信息,确定每组充电方案中,各个充电子时段对应的预期充电负荷总量。
在具体实现中,更新后的每组充电方案中包括各个充电订单对应的充电方案信息,在每一充电方案信息中,包括电动汽车在其对应的各个充电子时段上的预期充电负荷,则针对更新后的每组充电方案,可以根据其中的多个充电方案信息,确定各个充电子时段对应的预期充电负荷总量。
步骤202,针对每组充电方案,根据各个充电子时段对应的居民用电负荷最值和预期充电负荷总量,确定各个充电子时段对应的用电负荷范围,根据各个用电负荷范围,获取用电总负荷最大值和用电总负荷最小值,并根据所述用电总负荷最大值和所述用电总负荷最小值的差值,确定用电负荷峰谷差。
针对每组充电方案,在确定各个充电子时段对应的预期充电负荷总量后,可以根据各个子时段对应的居民用电负荷最值,确定各个充电子时段对应的充电负荷范围,该充电负荷范围可以基于充电子时段内,居民用电负荷与预期充电负荷总量之和的最大值,以及居民用电负荷与预期充电负荷总量之和的最小值确定。
通过对比同一充电方案在不同充电子时段对应的用电负荷范围,可以确定出充电时段内的用电总负荷最大值和用电总负荷最小值,用电总负荷最大值和用电总负荷最小值可以属于同一充电子时段,也可以分属于不同的充电子时段。
在实际应用中,用电负荷最大值可以通过自由变量Lmax表示,则任意充电子时段对应的居民用电负荷预测曲线的最大值加上预期充电负荷总量,小于或等于Lmax,即xi+p(i)max;用电总负荷最小值可以通过自由变量Lmin表示,任意充电子时段对应的居民用电负荷预测曲线的最小值加上预期充电负荷总量,大于Lmin,即xi+p(i)min。
在确定出用电总负荷最大值和用电总负荷最小值后,可以确定两者的差值,并将两者的差值作为用电负荷峰谷差。
在本实施例中,针对每组充电方案,可以根据各个充电子时段对应的居民用电负荷最值和预期充电负荷总量,确定各个充电子时段对应的用电负荷范围,根据各个用电负荷范围,获取用电总负荷最大值和用电总负荷最小值,并根据用电总负荷最大值和用电总负荷最小值的差值,确定用电负荷峰谷差,为后续基于用电负荷峰谷差确定最优充电方案提供数据基础。
在一个实施例中,所述根据天牛须搜索算法,对多组充电方案进行更新,包括:
步骤301,根据多组充电方案,确定多个天牛对应的位置信息;其中,每个天牛的位置信息对应一组充电方案,位置信息中的各个分量与充电方案中各辆电动汽车在各个充电子时段的预期充电负荷对应。
在实际应用中,在确定出多组充电方案后,可以基于多组充电方案,生成多个天牛各自对应的位置信息。具体而言,针对每组充电方案,可以根据充电方案中各个充电订单在各个充电子时段对应的预期充电负荷,生成一天牛的位置信息,该位置信息可以是D维的向量,位置信息中的多个分量,分别与各个充电订单在各个充电子时段的预期充电负荷对应。则N个用电调度方案可以得到种群规模为N的天牛群,各个天牛共同构成了目标函数的D维解空间。
步骤302,根据每个天牛的位置信息和预设的适应值函数,确定每个天牛对应的适应值。
作为一示例,适应值函数可以是用电总负荷最大值和用电总负荷最小值的差值,即用电负荷峰谷差对应的函数,可以表示为Lmax-Lmin,在种群迭代更新过程中,其优化目标为获取min(Lmax-Lmin)。
步骤303,根据各个天牛当前的适应值,确定群体最优位置信息和每个天牛对应的个体最优位置信息。
作为一示例,群体最优位置信息,可以是针对所有天牛对应的所有位置信息中,对应适应值最优的位置信息,可以表示为Pm=(pm1,pm2,...,pmn);个体最优位置信息可以是针对每个天牛,在其位置信息更新过程中,所有位置信息中对应适应值最优的位置信息,可以表示为Pi=(pi1,pi2,...,pin)。
在获取到各个天牛当前的适应值后,通过对各个天牛当前的适应值和历史参考适应值进行比较,确定群体最优位置信息和每个天牛对应的个体最优位置信息。
步骤304,针对每个天牛,根据所述群体最优位置信息和该天牛对应的个体最优位置信息,确定天牛左须与天牛右须的距离,根据所述距离、群体最优位置信息和个体最优位置信息,确定更新速度,并根据所述更新速度对当前位置进行更新,获取更新后的位置信息。
步骤305,根据每个天牛的当前位置信息,得到更新后的多组充电方案。
作为一示例,更新速度可以是指更新后天牛的移动速度,更新速度包括速度大小和速度方向。
在实际应用中,在得到群体最优位置信息和各个天牛对应的个体最优位置信息后,针对每个天牛,可以将群体最优位置信息和个体最优位置信息,分别作为该天牛的天牛左须和天牛右须,进而可以根据群体最优位置信息和个体最优位置信息,确定天牛左须和天牛右须之间距离。
在确定该距离后,可以根据该距离,群体最优位置信息和个体最优位置信息,获取更新速度,并根据该更新速度,对天牛的位置信息进行更新,将更新后的位置信息作为当前的位置信息,进而可以根据各个天牛当前的位置信息中的每一分量,确定与各天牛分别对应的充电方案,得到更新后的多组充电方案。
在本实施例中,根据群体最优位置信息和该天牛对应的个体最优位置信息,确定天牛左须与天牛右须的距离,根据距离、群体最优位置信息和个体最优位置信息,确定更新速度,并根据更新速度对位置信息进行更新,进而基于每个天牛当前的位置信息,得到更新后的多组充电方案,能够对粒子群优化算法和天牛须搜索算法进行结合,基于天牛须搜索算法,在充电方案的每次更新中,对充电方案对应的天牛在解空间中的位置进行判断,在每次迭代中,通过对个体的天牛左须和天牛右须进行比较,可以有效解决在使用传统粒子群优化算法进行充电方案更新时,个体优化策略因缺乏对当前个体周围局部信息的获取,在多维复杂的解空间中,难以获取稳定的解且容易倾向局部最优解的问题,有效提高对不同群体和迭代阶段的自适应性。
在一个实施例中,在对各个充电方案中的充电方案信息进行更新时,可以设置等式约束条件和不等式约束条件,其中,等式约束条件可以如下所示:
a·x=b
其中,a=(1,...,1,0,0),b=z5*2。
不等式约束条件可以为:Ax≤B
其中,A=(A1,A2,A3)T,B=(B1,B2,B3)T,B3为变压器最大负荷,A1、A2、A3、B1、B2为如下所示的矩阵:
A3=(0,0,…,1,0)1×(m+2)
其中,-1表示在对应充电子时段对电动汽车进行放电,1表示在对应充电子时段对电动汽车进行充电,0表示在对应充电子时段处于不工作状态。
B1=(-p(1)max,…,-p(m)max)T
B2=(p(1)min,…,p(m)min)T
在一个实施例中,所述根据各个天牛当前的适应值,确定群体最优位置信息和每个天牛对应的个体最优位置信息,包括:
获取历史群体最优位置信息对应的第一历史适应值,并比较所述第一历史适应值和各个天牛当前的适应值,将最大的适应值所对应的位置信息作为群体最优位置信息;以及,获取每个天牛的历史个体最优位置信息对应的第二历史适应值;针对每个天牛,从该天牛对应的第二历史适应值和当前的适应值中,确定最大的适应值,并将最大的适应值所对应的位置信息,作为该天牛的个体最优位置信息。
在具体实现中,在对各个天牛进行位置信息的更新过程中,可以记录每次更新是对应的群体最优位置信息和个体最优位置信息。具体的,可以根据初始化的多个充电方案,确定多个天牛对应的初始化的位置信息,并将各个位置信息代入至适应值函数中,得到各个天牛对应的适应值,通过比较各个天牛的适应值,确定出当前的群体最优位置信息,并将其作为下次位置信息更新时的历史群体最优位置信息。针对每个天牛,可以将初始化的位置信息所对应的适应值,确定为该天牛当前的个体最优位置信息,并将其作为下次位置信息更新时的历史个体最优位置信息。
在首次进行充电方案更新时,在确定各个天牛当前的适应值后,可以获取历史群体最优位置信息对应的第一历史适应值,并将第一历史适应值和个天牛当前的适应值进行比较,进而可以将最大的适应值所对应的位置信息作为群体最优位置信息,并采用当前的群体最优位置信息对历史群体最优位置信息进行更新。
同时,可以获取每个天牛的历史个体最优位置信息对应的第二历史适应值,针对每个天牛,可以从该天牛对应的第二历史适应值和当前的适应值中,确定最大的适应值,并将最大的适应值所对应的位置信息,作为该天牛的个体最优位置信息,并且可以采用当前的个体最优位置信息对历史个体最优位置信息进行更新。
在本实施例中,根据各个天牛当前的适应值,将最大的适应值所对应的位置信息作为群体最优位置信息,以及根据每个天牛对应的第二历史适应值和当前的适应值中最大的适应值,确定个体最优位置信息,能够在后续方案更新过程中,基于群体最优位置信息和个体最优位置信息进行速度更新和位置更新,有效提高收敛速度,为实时快速、准确地获取最优的充电方案提供基础。
在一个实施例中,所述根据所述群体最优位置信息和该天牛对应的个体最优位置信息,确定天牛左须与天牛右须的距离,可以包括如下步骤:
获取缩放因子;针对每个天牛,获取所述群体最优位置信息和该天牛个体最优位置信息之差对应的范数,并根据所述范数和所述缩放因子的乘积,确定天牛左须与天牛右须的距离。
在实际应用中,可以获取缩放因子,该缩放因子可以是对计算结果进行缩小或放大的参数。在一示例中,缩放因子可以随迭代次数的增加而变化,具体的,缩放因子可以通过如下所示的公式进行更新:
其中,βmax为更新过程中缩放因子的最大值,βmin为更新过程中缩放因子的最小值,T为最大更新次数,t为当前更新的次数。
在本实施例仲,针对每个天牛,可以获取群体最优位置信息与该天牛对应个体最优位置信息之差的范数,并将该范数与缩放因子的乘积,确定为该天牛对应的天牛左须与天牛右须之间的距离,具体公式如下所示:
di k=β‖Pm-Pi‖
其中,di k为天牛左须与天牛右须之间的距离,β为缩放因子,Pm为群体最优位置信息,Pi为个体最优位置信息。
所述根据所述距离、群体最优位置信息和个体最优位置信息,确定更新速度,可以包括如下步骤:
获取预设的速度更新函数,所述速度更新函数与所述距离、群体最优位置信息和个体最优位置信息关联;根据所述速度更新函数、距离、群体最优位置信息和个体最优位置信息,确定更新速度。
在本实施例仲,在确定天牛左须与天牛右须之间的距离后,可以获取预设的速度更新函数,该速度更新函数与天牛左须和天牛右须之间的距离、群体最优位置信息和个体最优位置信息关联,进而可以将距离、群体最优位置信息和个体最优位置信息代入到速度更新函数中,确定更新速度。
其中,速度更新函数可以如下式所示:
其中,ω为惯性权重,c
1,c
2为学习因子,
为更新速度,
为初始速度,
为天牛随机生成的标准化方向向量,d
i k为天牛左须与天牛右须的距离,
为第k次更新时的天牛左须质心坐标,
为第k次更新时的天牛右须质心坐标,
为天牛左须质心坐标对应的适应值,
为天牛右须质心坐标对应的适应值,
为第k次更新时的个体最优位置信息,
为第k次更新时的群体最优位置信息,
为天牛当前的位置信息,矩阵点乘表示同型矩阵对应元素相乘。
其中,惯性权重ω可以通过如下所示公式进行更新:
上式中,βmax为更新过程中缩放因子的最大值,βmin为更新过程中缩放因子的最小值,T为最大更新次数,t为当前更新的次数。
天牛随机生成的标准化方向向量
可以通过如下所示的公式进行更新:
其中,rand(n,1)为(0,1)之间的随机数构成的n维向量。
天牛左须质心坐标和天牛右须质心坐标可以通过下式确定:
其中,xk为天牛i当前的位置信息,d为质心到须的距离。
在本实施例中,可以根据群体最优位置信息和个体最优位置信息对应的范式,以及缩放因子,确定天牛左须与天牛右须之间的距离,并将该距离以及群体最优位置信息、个体最优位置信息代入到预设的速度更新函数中,为后续进行用电调度方案的更新提供基础。
在一个实施例中,所述根据所述更新速度对位置信息进行更新,可以通过如下所示的公式进行更新:
其中,
为天牛更新前的位置信息,
为天牛更新后的位置信息。
在一个实施例中,在所述根据各个天牛当前的适应值,确定群体最优位置信息的步骤之后,所述方法还可以包括如下步骤:
确定当前变异概率,并在所述当前变异概率大于概率阈值时,从所述群体最优位置信息中的多个分量中,选择预设数量的分量进行更新;
所述分量的更新方式如下:
pgk t+1=pgk t×(1+Arandn)
其中,A为扰动幅值,randn为服从标准正态分布的随机变量。
在具体实现中,当迭代过程出现早熟收敛现象时,群体最优位置为一局部最优解,而个体往往会向群体最优位置靠拢,此时个体将聚集在该局部最优解附近,导致失去从其他位置获取更优解的机会。
基于此,在本实施例中可以对群体最优位置信息进行变异操作。在实际应用中,可以确定当前变异概率,并根据当前变异概率判断是否对群体最优位置信息进行更新,当变异概率待遇预设的概率阈值时,则可以从群体最优位置信息的多个分量重,随机选择预设数量的分量进行更新。
具体的,在判断是否变异时,针对种群规模为N的天牛种群,每个天牛的位置信息可以通过坐标位置向量X
i表示,对应于天牛的位置信息
则天牛种群对应的种群标准差σ可以通过如下所示的式子确定:
其中,σ0为归一化因子,该归一化因子可以取种群初始化时未归一化的种群标准差,Xavg为群体质心,可以通过下式计算得到:
则当前变异概率可以通过下式确定:
其中,ωpσ为变异概率标准差权重,ωpt为变异概率迭代次数权重,b为变异概率偏移常数,为种群标准差。
在本实施例中,可以确定当前变异概率,并在当前变异概率大于概率阈值时,从群体最优位置信息的多个分量中,选择预设数量的分量进行更新,能够将群体最优位置扰动出局部最优解,使得迭代过程可以实现进一步的收敛,通过对群体最优位置的多维随机扰动实现跳出局部最优解,使得用电调度方案的更新过程不受梯度和初始值的影响,具有通用性和计算结果精度高、收敛快的特点。
在一个实施例中,在确定出目标充电方案后,可以判断充电子时段对应的居民用电负荷和预期充电负荷总量的和,是否超出变压器最大负荷。若否,则可以基于该目标充电方案,进行充电;若是,则需要对充电方案进行调整,在调整时,可以根据时间顺序,找出导致两者之和超出变压器最大负荷的一个或多个充电订单,例如,可以对最近新增的若干个充电订单进行调整。
为了使本领域技术人员能够更好地理解上述步骤,以下通过一个例子对本申请实施例加以示例性说明,但应当理解的是,本申请实施例并不限于此。
在实际应用中,居民的实时负荷5分钟更新一次,即居民用电负荷负荷预测曲线5分钟更新一次,以5分钟为更新时间间隔,24小时可以划分为N个充电子时段,其中,N=1*12*24。确定接收m个充电订单的当前时间,并根据当前时间确定对应的充电子时段,记作i,则i+1时刻及之后的充电方案可能需要调整。
如图3所示,针对m个充电时段在充电子时段i+1与充电子时段N之间的充电订单(m=1,...,n),在基于最小用电负荷峰谷差,确定优化目标函数,并采用天牛须搜索的粒子群优化算法进行求解,获取到目标充电方案后,可以确定每个充电订单对应的充电方式,并将第j(j=i+1,...,N)个充电子时段加上其他在第j个充电子时段计划编排的负荷(包括居民用电负荷和其他充电订单对应的预期充电负荷),与变压器所能承受的最大负荷进行比较。
若小于变压器的最大负荷,则无需调整充电策略,可以按照充电计划向各辆待充电的电动汽车发送充电指令,在开始时间和结束时间确定的时段内进行充电。若大于变压器的最大负荷,则可以根据时间顺序,找出导致两者之和超出变压器最大负荷的一个或多个充电订单,返回到基于最小用电负荷峰谷差,确定优化目标函数,并采用天牛须搜索的粒子群优化算法进行求解的步骤。
应该理解的是,虽然图1-3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1-3中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图4所示,提供了一种基于天牛须搜索算法的电动汽车充电调度装置,所述装置包括:
充电订单获取模块401,用于获取多辆待充电的电动汽车对应的充电订单,并确定各个充电订单对应的充电时段和充电总量;所述充电时段包括至少一个充电子时段;
充电方案获取模块402,用于根据各个充电订单对应的充电子时段和充电总量,获取不同的多组充电方案;每组充电方案中包括多个充电订单各自对应的充电方案信息,所述充电方案信息为每辆电动汽车在各个充电子时段对应的预期充电负荷;
充电方案更新模块403,用于根据天牛须搜索算法,对多组充电方案进行更新;
峰谷差获取模块404,用于获取各个充电子时段对应的居民用电负荷最值,并根据更新后的每组充电方案和各个充电子时段对应的居民用电负荷最值,确定每组充电方案对应的用电负荷峰谷差;其中,所述用电负荷峰谷差为用电总负荷最大值和用电总负荷最小值的差;
充电模块405,用于从更新后的多组充电方案中,确定出用电负荷峰谷差最小的目标充电方案,并根据所述目标充电方案,向所述多辆待充电的电动汽车发送充电指令。
在一个实施例中,所述峰谷差获取模块404,包括:
预测曲线获取子模块,用于获取预设时间范围内的居民用电负荷预测曲线;所述预设时间范围包括所有充电子时段;
最大最小值获取子模块,用于根据所述居民用电负荷预测曲线,获每个充电子时段对应的居民用电负荷最大值和居民用电负荷最小值,作为该充电子时段对应的居民用电负荷最值。
在一个实施例中,所述峰谷差获取模块404,包括:
预期充电负荷总量获取子模块,用于根据更新后每组充电方案中各个充电订单对应的充电方案信息,确定每组充电方案中,各个充电子时段对应的预期充电负荷总量;
用电负荷峰谷差确定子模块,用于针对每组充电方案,根据各个充电子时段对应的居民用电负荷最值和预期充电负荷总量,确定各个充电子时段对应的用电负荷范围,根据各个用电负荷范围,获取用电总负荷最大值和用电总负荷最小值,并根据所述用电总负荷最大值和所述用电总负荷最小值的差值,确定用电负荷峰谷差。
在一个实施例中,所述充电方案更新模块403,包括:
位置信息确定子模块,用于根据多组充电方案,确定多个天牛对应的位置信息;其中,每个天牛的位置信息对应一组充电方案,位置信息中的各个分量与充电方案中各辆电动汽车在各个充电子时段的预期充电负荷对应;
适应值获取子模块,用于根据每个天牛的位置信息和预设的适应值函数,确定每个天牛对应的适应值;
最优位置信息确定子模块,用于根据各个天牛当前的适应值,确定群体最优位置信息和每个天牛对应的个体最优位置信息;
位置信息更新子模块,用于针对每个天牛,根据所述群体最优位置信息和该天牛对应的个体最优位置信息,确定天牛左须与天牛右须的距离,根据所述距离、群体最优位置信息和个体最优位置信息,确定更新速度,并根据所述更新速度对当前位置进行更新,获取更新后的位置信息;
更新方案获取子模块,用于根据每个天牛的当前位置信息,得到更新后的多组充电方案。
在一个实施例中,所述最优位置信息确定子模块,包括:
群体最优位置信息确定单元,用于获取历史群体最优位置对应的第一历史适应值,并比较所述第一历史适应值和各个天牛当前的适应值,将最大的适应值所对应的位置信息作为群体最优位置信息;
以及,
历史适应值获取单元,用于获取每个天牛的历史个体最优位置对应的第二历史适应值;
个体最优位置信息确定单元,用于针对每个天牛,从该天牛对应的第二历史适应值和当前的适应值中,确定最大的适应值,并将最大的适应值所对应的位置信息,作为该天牛的个体最优位置信息。
在一个实施例中,所述位置信息更新子模块,包括:
缩放因子获取单元,用于获取缩放因子;
距离确定单元,用于针对每个天牛,获取所述群体最优位置信息和该天牛个体最优位置信息之差的范数,并根据所述范数和所述缩放因子的乘积,确定天牛左须与天牛右须的距离;
所述位置信息更新子模块,还包括:
更新函数获取单元,用于获取预设的速度更新函数,所述速度更新函数与所述距离、群体最优位置信息和个体最优位置信息关联;
更新速度确定单元,用于根据所述速度更新函数,确定更新速度;
其中,所述速度更新函数为:
其中,ω是惯性权重,c
1,c
2为学习因子,
为更新速度,
为初始速度,
为天牛随机生成的标准化方向向量,d
i k为天牛左须与天牛右须的距离,
为第k次更新时的天牛左须质心坐标,
为第k次更新时的天牛右须质心坐标,
为天牛左须质心坐标对应的适应值,
为天牛右须质心坐标对应的适应值,
为第k次更新时的个体最优位置信息,
为第k次更新时的群体最优位置信息,
为天牛当前的位置信息,矩阵点乘表示同型矩阵对应元素相乘。
在一个实施例中,所述装置还包括:
分量更新模块,用于确定当前变异概率,并在所述当前变异概率大于概率阈值时,从所述群体最优位置信息中的多个分量中,选择预设数量的分量进行更新;
所述分量的更新方式如下:
pgk t+1=pgk t×(1+Arandn)
其中,A为扰动幅值,randn为服从标准正态分布的随机变量。
关于一种基于天牛须搜索算法的电动汽车充电调度装置的具体限定可以参见上文中对于一种基于天牛须搜索算法的电动汽车充电调度方法的限定,在此不再赘述。上述一种基于天牛须搜索算法的电动汽车充电调度装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储充电方案对应的数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于天牛须搜索算法的电动汽车充电调度方法。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取多辆待充电的电动汽车对应的充电订单,并确定各个充电订单对应的充电时段和充电总量;所述充电时段包括至少一个充电子时段;
根据各个充电订单对应的充电子时段和充电总量,获取不同的多组充电方案;每组充电方案中包括多个充电订单各自对应的充电方案信息,所述充电方案信息为每辆电动汽车在各个充电子时段对应的预期充电负荷;
根据天牛须搜索算法,对多组充电方案进行更新;
获取各个充电子时段对应的居民用电负荷最值,并根据更新后的每组充电方案和各个充电子时段对应的居民用电负荷最值,确定每组充电方案对应的用电负荷峰谷差;其中,所述用电负荷峰谷差为用电总负荷最大值和用电总负荷最小值的差;
从更新后的多组充电方案中,确定出用电负荷峰谷差最小的目标充电方案,并根据所述目标充电方案,向所述多辆待充电的电动汽车发送充电指令。
在一个实施例中,处理器执行计算机程序时还实现上述其他实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取多辆待充电的电动汽车对应的充电订单,并确定各个充电订单对应的充电时段和充电总量;所述充电时段包括至少一个充电子时段;
根据各个充电订单对应的充电子时段和充电总量,获取不同的多组充电方案;每组充电方案中包括多个充电订单各自对应的充电方案信息,所述充电方案信息为每辆电动汽车在各个充电子时段对应的预期充电负荷;
根据天牛须搜索算法,对多组充电方案进行更新;
获取各个充电子时段对应的居民用电负荷最值,并根据更新后的每组充电方案和各个充电子时段对应的居民用电负荷最值,确定每组充电方案对应的用电负荷峰谷差;其中,所述用电负荷峰谷差为用电总负荷最大值和用电总负荷最小值的差;
从更新后的多组充电方案中,确定出用电负荷峰谷差最小的目标充电方案,并根据所述目标充电方案,向所述多辆待充电的电动汽车发送充电指令。
在一个实施例中,计算机程序被处理器执行时还实现上述其他实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。