技术领域
[0001] 本发明涉及电力市场交易与经济优化领域,尤其涉及一种基于分散式P2P协商机制与学习方案的能源超市交易优化方法。
相关背景技术
[0002] 近些年来,一个新的概念“能源超市”出现在电力市场设计中,以推进能源供应和消费灵活性、多样性、局部性和低排放。同时越来越多的市场参与者以一种更加灵活多样的方式参与到电力市场交易中,从传统单一的能源购买者或出售者转型为具有独立决策能力的能源产消者。在此环境下,如何构建合理有效的“能源超市”即新型电力市场交易平台,充分保障市场交易主体的权益与隐私,合理安排能源交易配置,是目前研究的重点。
[0003] 现阶段电力市场交易研究中,交易优化模型是极为重要的课题。如今虽存在一些关于交易优化模型的研究,但都有所不足,主要有两个方面:其一,传统的优化方法只提供了一个产消者交易的总交易功率,而无法计算每笔交易的功率;其二,现有研究中最佳能源价格与交易量仅取决于成功交易的消费者,实际交易中未成功交易的产消者会根据交易情况改变自身要求从而达到成功交易的目标,若不考虑该情况则结果会与实际情况存在偏差,降低了可靠性,导致结果没有参考性且造成交易经济损失以及能源浪费。
具体实施方式
[0083] 本部分将结合说明书附图来说明该发明的具体实施方法。
[0084] 如附图1‑3所示,本发明提出的一种基于分散式P2P协商机制与学习方案的能源超市交易优化方法,包括如下步骤:
[0085] (1)分析能源超市交易主体框架信息;
[0086] (2)按照交易框架信息构建P2P能源交易模型;
[0087] (3)采用分散式交替方向乘子法(ADMM)变形P2P能源交易模型;
[0088] (4)利用拉格朗日乘子法与KKT条件求解交易模型中决策变量迭代公式;
[0089] (5)建立分散式学习方案调整交易模型中产消者目标函数参数;
[0090] (6)通过循环迭代求解产消者定价与购售电方案。
[0091] 下面对本发明的实施方法进行展开说明:
[0092] 步骤一:分析能源超市交易主体框架信息,该部分主要步骤如下:
[0093] (1)分析能源超市交易信息,绘制产消者通信图。
[0094] 定义G(t)为产消者之间的通信图。由于产消者之间为双边交易,所以G(t)是无方向的。此外,G(t)是一个二部图,它的节点集由两个与买卖产消者相关联的不相交子集组成,而不是一个完全连通图。每个节点只与另一个子集中的其他节点通信,而不与同一子集中的节点通信。图2给出了G(t)示意图。
[0095] (2)根据产消者通信图计算G(t)的关联矩阵、邻接矩阵、度矩阵和拉普拉斯矩阵等参数。
[0096] 定义产消者i的相邻节点集合为Ni(t),即t时刻除产消者i以外的参与能源交易通信的产消者的集合;E(t)代表关联矩阵;A(t)代表邻接矩阵,aij为邻接矩阵中代表连接关系的元素,等于1与0时分别代表产消者i和产消者j在时间t时是相连接的与不连接的;
[0097] D(t)代表度矩阵, 其中diag代表D(t)为di(t)所构成的n×n维的对角矩阵,n为产消者的总个数,为定义符号, 代表产消者i与所有相邻产消者j的连接关系元素之和;拉普拉斯矩阵为L(t)=D(t)‑A(t)。
[0098] 步骤二:按照交易框架信息构建P2P能源交易模型,该部分主要步骤如下:
[0099] 根据步骤一中所得通信参数,构建如下P2P能源交易模型。
[0100] (1)构建产消者i成本函数:
[0101]
[0102]
[0103] Ci,3(Pi(t))=βPi,tr(t) (3)
[0104] 其中:Ci,1(Pi(t))、Ci,2(Pi(t))、Ci,3(Pi(t))分别为产消者i的行为变化成本、交易成本和实施成本;ai(t)、 为反映产消者随时间变化的复杂行为的参数;Pij(t)为产消者i对产消者j之间的交易量;Pi(t)为反映产消者i与相邻产消者之间交易量的向量;Pi,tr(t)为产消者i的总交易量;dij为双方贸易权重,也称为贸易系数;β为固定比率,反映通过电力网络执行交易的实施成本。
[0105] 将公式(1)、(2)、(3)相加求和,其中公式(1)、(3)中相同项合并,得到产消者i的总成本如下,其中 bi(t)为公式(1)、(3)相加所合并的项的系数:
[0106]
[0107] (2)建立产消者i约束条件:
[0108]
[0109]
[0110] 其中 分别为产消者i交易下限和上限;T为交易总时段,t代表交易时段;Pji(t)为产消者j对产消者i之间的交易量,应为Pij(t)的相反数。
[0111] (3)构建能源超市整体优化(P2P能源交易)模型:
[0112]
[0113] 当产消者i是购能者时,Pij(t)≤0,当产消者i是售能者时,Pij(t)≥0。
[0114] 步骤三:采用分散式交替方向乘子法(ADMM)变形P2P能源交易模型,该部分主要步骤如下:
[0115] 传统求解P2P交易模型的方法只能提供产消者最优总功率Pi,tr,却不能提供每笔交易的单个交易功率Pij。分散式ADMM方法允许每个产消者解决自己的局部优化问题,同时与其他产消者协商,最终达到全局优化。为推导出每个成功交易的电量与能源价格,采用分散式ADMM改进步骤二中P2P能源超市交易模型。
[0116] (1)为表示方便,将公式(7)中约束条件以集合方式表示,并定义满足约束条件的表示方法。定义参数如下:
[0117]
[0118]
[0119]
[0120]
[0121] P代指交易向量; 是交易向量Pi的集合;Pi为反映产消者i与相邻产消者之间交易量的向量;ni代表与产消者i相邻的产消者个数; 代表ni维元素都为1的向量的转置;Ωeq、Ωineq、Ieq(P)、Iineq(P)是上述公式定义的集合与值。
[0122] (2)采用分散式ADMM方法改写P2P能源交易模型。
[0123]
[0124] 其中,Ci(Pi)中是交易向量, 为新设置变量,与变量P同指交易向量,定义集合后优化问题被重写,使得等式约束和不等式约束被分成不同的集合,对应于变量P和X;公式(12)为ADMM的标准形式。
[0125] 步骤四:利用拉格朗日乘子法与KKT条件求解交易模型中决策变量迭代公式,该部分主要步骤如下:
[0126] 利用拉格朗日乘子法与KKT条件求解所改进的能源超市交易模型。
[0127] (1)为求解所改进的交易模型,定义增广拉格朗日函数:
[0128]
[0129] 其中ρ为标准惩罚参数,且ρ>0;u为拉格朗日乘子。接下来,通过求解以下优化问题可得到三个变量第k+1次迭代值。
[0130] (2)结合KKT条件求解决策变量迭代值:
[0131]
[0132] 上标k、k+1代表第k、k+1次迭代的值;Ψ与 为满足KKT条件的正定矩阵,令Ψ=ψI、其中I为单位矩阵,ψ、φ为任意满足KKT条件的值;κ为任意满足KKT条件的迭代参数。
[0133] 公式(14)中Ψ是满足KKT条件的任意正定矩阵,故而用一个常数ψ乘上一个单位矩阵I来表示,如此可以将矩阵运算简化为常数运算,式(15)中便使用ψ而非Ψ来运算,同理。
[0134] 具体决策变量优化模型如下。
[0135] X变量更新:
[0136]
[0137] 其中Xi为产消者i的交易向量,它的正负取决于下一个时间段的产消者i将作为购买方还是售卖方。无论什么情况下,上述优化模型都是一个二次凸优化问题,并且可以分解到每个用户,即它是完全分散的,因此它可以很容易的通过嵌入在每个用户中的任何独立软件解决。
[0138] P变量更新:
[0139]
[0140] 要获得Pk+1的更新,就需要求解上述数学规划模型。令λij>0表示为与上述约束相关联的拉格朗日乘数。因为公式(16)是具有二次成本函数和线性等式的凸优化问题,所以强对偶成立并应用KKT条件,因此得到下式:
[0141]
[0142] 其中 代表第k次迭代产消者i与产消者j针对不等式约束的交易向量; 代表第k次迭代产消者i与产消者j的拉格朗日乘子数; 代表第k次迭代产消者i与产消者j针对等式约束的交易向量; 为第k+1次迭代产消者i与j之间的交易价格。
[0143] 每个产消者的能源交易价格与电量迭代公式如下:
[0144]
[0145]
[0146] 其中 由下式计算而来:
[0147]
[0148]
[0149]
[0150] L为拉普拉斯算子矩阵;vec()代表叠加向量算法,式中表示叠加i维度的向量为一个大矩阵。
[0151] 步骤五:建立分散式学习方案调整交易模型中产消者目标函数参数,该部分主要步骤如下:
[0152] 在上述模型中还存在不足,最佳能源交易价格与交易量取决于成功交易的产消者,而实际情况下,它们只是所有参与的产消者的子集。因此需要采用一种学习方案调整产消者的成本函数,供产消者尝试失败时使用。
[0153] 谈判失败的原因可能时能源价格不满或者是因为购买销售约束使得 所以以下方基于最优交易的分析公式来改变产消者交易参数。
[0154]
[0155] ai、bi、aj、bj为公式(4)中产消者i与产消者j的成本函数的参数。
[0156] 因此,交易失败者保持成本函数参数ai不变。如果它们是购(售)能者,则降低(增加)bi值,从而 也会随着购(售)能而增加(减少)。这个过程一直重复直到 满足购买时>0,售出时<0的要求。若交易量不满足要求时便保持bi不变,减小ai。
[0157] 步骤六:通过循环迭代求解产消者定价与购售电方案,该部分主要步骤如下:结合步骤三、四、五循环迭代求解最优化交易。
[0158] 在某个时间段内的交易优化流程见图3,初始化后,在第k次迭代更新式(17)中的值,随后更新式(15)、(18)、(19)中X、P和价格的值,循环迭代直到式(23)满足要求为止。当式(23)=0时,即总交易为0,则按照步骤五中更改bi值,后带回初始化后重新迭代计算;当交易量不为0时,再判断是否满足交易量要求,不满足则再按步骤五中更新ai值,后带回初始化后重新迭代计算,若满足则结束,求得最优交易方案。