针对PV/ess的电动汽车充电站协同管理:一种多智能体深度强化学习方法

175 阅读3分钟

针对PV/ess的电动汽车充电站协同管理:一种多智能体深度强化学习方法

Cooperative Management for PV/ESS-Enabled Electric Vehicle Charging Stations: A Multiagent Deep Reinforcement Learning Approach


  • 主要内容:动态数据下的实时调度
  • 特别点:使用多智能体,基于CommNet,多个agent参数共享

主要思想

  • 系统描述

    • N个充电站(EVCS),用向量CC表示,一个充电站属于一个公司(用向量YY表示),一个公司有多个充电站。充电站与储能设备(ESS)相连,属于一个公司的EVCS可以共享ESS的能量。用向量PP表示PV系统,将太阳能转化。向量EE表示ESS和EVCS的连接。向量LL表示充电站负荷。向量VV表示PV产生的能量。向量HH表示车辆用电需求。

      image-20230711112809256

    • **状态空间:**包括ESS状态、电价状态和负荷状态。用向量OO表示每个EVCS与ESS相连(EE)的充电量。向量DD表示总的需求D=L+HD=L+H。最终状态用向量SS表示,stn=[otn,Eg,nmin,Eg,nmax,pricet,pricetavg,vtn,dtn]s^n_t=[o^n_t,E^{min}_{g,n},E^{max}_{g,n},price_t,price_t^{avg},v^n_t,d^n_t];其中E限制在一个安全范围内,所以有最大和最小值;电力价格会随着时间变化,所以设定一个24小时内的平均价格供EVCS参考。

    • **动作空间:**用向量FF表示纯需求,F=max{DV,0}F=max\{D-V,0\}。EVCS首先使用相连的ESS的电力,不足时使用共享电力,称之需求能量,用向量WW表示,W=max{F(OEg,nmin),0}W=max\{F-(O-E^{min}_{g,n}),0\}。当W不为0时,则需购买或使用共享电力。ESS有剩余电力(可以提供给共享)表示为向量UU

      image-20230711115300167

      而对于不足的EVCS需要购买,购买的电力用JJ表示,J=max{Wnnutn,0}J=max\{W-\sum_{n'\neq n}u_t^{n’},0\},会优先使用距离最近的ESS的电力。用向量QQ表示EVCS被提供的共享能量Qn={qtn,0,...,qtn,m,...,qtn,N1}Q^n=\{q_t^{n,0},...,q_t^{n,m},...,q_t^{n,N-1}\},满足所有共享需求后仍有剩余的用向量BB表示,B=UQB=U-Q

      共享都不足时,需要购买,购买电力 = max{不足能量 - 其他ESS可提供的能量,0}

      动作分为充电动作和放电动作。能量操作最小单位为ΔuΔu,动作向量A={Δu,...,KΔu,+Δu,...,+KΔu}A=\{-Δu,...,-KΔu,+Δu,...,+KΔu\}KΔuKΔu为充放电的最大量,在状态sts_t下的动作约束为:

      image-20230711181044550

      直连ESS充电量在最小值和ΔuΔu之间时进行充电操作,否则都可执行

      用函数ESS(atn)ESS(a^n_t)表示充入ESS系统ene_n的能量,U(atn)U(a^n_t)表示充电或放电的数量。

      image-20230711184422677

    • 奖励

      • rtotaln=rpn+rbn+rsn+ronr^n_{total}=r^n_p+r^n_b+r^n_s+r^n_o 分为三个:EVCS耗费的成本RpR_p,充电效益RbR_b,过充损失RoR_o

      • rpn=(jjn+ESS(atn))pricetr^n_p=-(j^n_j+ESS(a^n_t))*price_t,如果售出的能量大于购买的能量,会得到奖励。否则,负奖励作为惩罚。

        成本 = -(直冲的能量+购买的能量 )* 价格

      • image-20230711190227987

        充电量-最小电量 > 需求的话,充电效益=需求 *价格 *系数,超过需求的部分作为共享能量UU;否则 效益=(充电量-最小电量)* 价格

      • rsn=mnqtn,mpricetr^n_s=\sum_{m\neq n}q_t^{n,m} * price_t ,表示使用共享能量而减少的购买成本

      • ron=((btn+U(atn))Eg,nmax)pricetr^n_o=−((b^n_t + U(a^n_t))−E^{max}_{g,n}) * price_t,表示充电量大于最大直冲量时的过充损失

        过充损失 = -[(满足所有共享需求后仍有的剩余 + 充电量)- 最大直冲量] *价格

  • 算法

    • 基于CommNet

      image-20230711193632037


实验

  • image-20230711194349307

    在其他agent policy变化时,CommNet会通信(计算每个agent隐层的Mean作为agent输入的一部分)

    平均推理时间为0.002714秒,可以用于实时系统中