我是靠谱客的博主 冷傲荷花,最近开发中收集的这篇文章主要介绍基于Distflow的最优潮流模型(OPF)--模型推导篇,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

开篇

前言:自打上期内容火电机组经济调度建模及求解——基础篇推出以后,有小伙伴留言:“不考虑潮流问题的经济调度都是耍流氓。”作为一个有文化的流氓,我们尝试着为大家科普潮流计算。对于电力系统而言,潮流计算是一个非常复杂且重要内容,如果我们推文中有什么不准确的地方,欢迎大家批评指正。

在讲潮流计算之前,需要回答以下八个问题:

  1. 什么是电力系统潮流?(答案来源:度娘)

    答案1:电力系统在运行时,在电源电势激励作用下,电流或功率从电源通过系统各元件流入负荷,分布于电力网各处,称为电力潮流。
    答案2:电力系统中的潮流是指,电网中各节点电压、线路上有功功率、无功功率的稳态分布。

  2. 什么是潮流计算?

    电力系统潮流计算就是对复杂电力系统正常和故障条件下稳态运行状态的计算。(《电力系统分析》——韩祯祥)

  3. 为什么要进行潮流计算?

    潮流计算的目标是求取电力系统在给定运行方式下的节点电压和功率分布,用以检查系统各元件是否过负荷、各点电压是否满足要求、功率的分布和分配是否合理以及功率损耗等。(《电力系统分析》——韩祯祥)

  4. 潮流计算的应用场景有哪些?

    对现有电力系统的运行和扩建、对新的电力系统进行规划设计以及对电力系统进行静态和暂态稳定分析都是以潮流计算为基础。(《电力系统分析》——韩祯祥)

  5. 什么是最优潮流(Optimal power flow, OPF)?

    最优潮流是从电力系统稳定运行的角度来调整系统中各种控制设备的参数,在满足节点正常功率平衡及各种安全指标的约束下,实现目标函数最小化的优化过程。(答案来源:度娘)

  6. 最优潮流计算什么?

    由于最优潮流是同时考虑网络的安全性和经济性的分析方法,是传统的经济调度方法无法取代 的,因此在复杂电力系统的可靠性分析、电力系统的安全运行、传输阻塞的经济控制、经济调度、能量管理系统等方面得到广泛的应用。其目标函数通常包括:发电费用最小、电力系统网损耗最小等。(答案来源:度娘)

  7. 在计算最优潮流的时候,为什么需要对模型进行进行松弛?

    建立的最优潮流模型是非凸模型,而目前大部分求解器只能求解凸优化问题。因此,为了保证模型在允许的运行时间内得到可行解或最优解,必须进行松弛。

  8. 常见的松弛方法有哪些?

    • 线性松弛——松弛后的模型求解速度快,精度低;
    • 二阶锥松弛——松弛后的模型求解速度中,精度中;
    • 半定矩阵松弛——松弛后的模型求解速度慢,精度高(涉及复数决策变量,需要一些特殊的求解器)。

鲁迅先生讲过,中国人喜欢采用折中的方式处理事情,所以,本期推文我们就利用二阶锥规划的方法对非凸潮流模型进行松弛,建立基于Distflow的潮流模型。

Part 1 标准潮流模型-OPF

在最优潮流模型中,通常是已知电力系统的结构(如IEEE-33节点)以及负荷参数,用于确定发电机的输出功率,实现发电成本最小( ∑ i ∈ N c i p i g sum_{i in mathcal{N}} c_{i}p_{i}^g iNcipig)或者系统网损最小( ∑ i ∈ N r i j l i j sum_{i in mathcal{N}} r_{i j}l_{i j} iNrijlij)的目标。本模型以最小化发电成本为例,建立基于Distflow的潮流模型:
∑ i ∈ N c i ( p i + p i c ) 变量:  { P i j , Q i j } , { l i j } , { v i } , { p i , q i } s . t .   p j = ∑ k : j → k P j k − ∑ i : i → j ( P i j − r i j l i j ) , ∀ j ∈ N q j = ∑ k : j → k Q j k − ∑ i : i → j ( Q i j − x i j l i j ) , ∀ j ∈ N v j = v i − 2 ( r i j P i j + x i j Q i j ) + ( r i j 2 + x i j 2 ) l i j , ∀ ( i , j ) ∈ E p i ‾ ≤ p i ≤ p i ‾ , ∀ i ∈ N q i ‾ ≤ q i ≤ q i ‾ , ∀ i ∈ N v i ‾ ≤ v i j ≤ v i ‾ , ∀ i ∈ N l i j ≤ l i j ‾ , ∀ ( i , j ) ∈ E ∥ 2 P i j 2 Q i j l i j − v i ∥ 2 ≤ l i j + v i , ∀ i ∈ N , ∀ ( i , j ) ∈ E begin{aligned} & sum_{i in mathcal{N}}c_{i}left(p_{i}+p_{i}^{c}right) \ & text{变量:} left{P_{i j}, Q_{i j}right},left{l_{i j}right},left{v_{i}right},left{p_{i}, q_{i}right} \ s.t. & p_{j}=sum_{k: j rightarrow k} P_{j k}-sum_{i: i rightarrow j}left(P_{i j}-r_{i j} l_{i j}right), forall j in mathcal{N} \ & q_{j}=sum_{k: j rightarrow k} Q_{j k}-sum_{i: i rightarrow j}left(Q_{i j}-x_{i j} l_{i j}right), forall j in mathcal{N} \ & v_{j}=v_{i}-2left(r_{i j} P_{i j}+x_{i j} Q_{i j}right)+left(r_{i j}^{2}+x_{i j}^{2}right) l_{i j}, forall(i, j) in mathcal{E} \ & underline{p_i} leq p_i leq overline{p_i}, forall i in mathcal{N} \ & underline{q_i} leq q_i leq overline{q_i}, forall i in mathcal{N} \ & underline{v_i} leq v_{i j} leq overline{v_i}, forall i in mathcal{N} \ & l_{i j} leq overline{{l}_{i j}}, forall(i, j) in mathcal{E} \ &begin{Vmatrix} 2 P_{i j} \ 2 Q_{i j} \ l_{i j}-v_{i} end{Vmatrix}_{2} leq l_{ij}+v_{i}, forall i in mathcal{N}, forall(i, j) in mathcal{E} end{aligned} s.t. iNci(pi+pic)变量: {Pij,Qij},{lij},{vi},{pi,qi}pj=k:jkPjki:ij(Pijrijlij),jNqj=k:jkQjki:ij(Qijxijlij),jNvj=vi2(rijPij+xijQij)+(rij2+xij2)lij,(i,j)Epipipi,iNqiqiqi,iNvivijvi,iNlijlij,(i,j)E2Pij2Qijlijvi2lij+vi,iN,(i,j)E
变量包括:

  1. P i j P_{i j} Pij Q i j Q_{i j} Qij:支路有功和无功功率
  2. p i p_{i} pi q i q_{i} qi:节点有功和无功功率
  3. v i j v_{i j} vij l i j l_{i j} lij:支路电压、电流幅值的平方

参数包括:

  1. N mathcal{N} N E mathcal{E} E:节点和支路的集合,其中 i i i j j j:表示节点, ( i , j ) (i,j) (i,j)表示支路
  2. c i c_{i} ci:发电成本, p i c p_{i}^{c} pic:负载的有功功率
  3. r i j r_{i j} rij x i j x_{i j} xij:支路电阻和电抗
  4. ∙ ‾ underline{bullet} ∙ ˉ bar{bullet} ˉ:变量 ∙ bullet 的下界和上界

好啦,看到上面公式的小伙伴是不是对这个模型一脸懵,想知道它是怎样推导出来的,别急,咱们一步步地推导。其中,潮流模型推导所需要的储备知识包括但不限于:

  • 复数的概念以及复数的基本运算:幅值、相角、共轭等;
  • 凸集的概念
    • 判断模型是否非凸;
    • 模型变量的松弛;
    • 约束松弛——主要涉及二阶锥松弛。

本期推文中,潮流模型的主要推导过程为:

  • 建立潮流模型架构;
  • 列写支路潮流方程;
  • 对非凸潮流模型进行松弛 { 相 角 松 弛 非 凸 约 束 松 弛 begin{cases}相角松弛\非凸约束松弛end{cases} {
  • 模型的适用条件。

Part 2 基于Distflow潮流模型的推导过程

电力系统最优潮流模型-架构

∑ i ∈ N c i p i g 最小化发电成本——针对发电机有功功率 s . t .   潮流方程 V i ‾ ≤ ∣ V i ∣ ≤ V i ‾ , ∀ i ∈ N 节点电压幅值约束 s i g ‾ ≤ s i g ≤ s i g ‾ , ∀ i ∈ N 发电机功率约束(包括有功和无功功率) ∣ I i j ∣ ≤ I i j ‾ , ∀ ( i , j ) ∈ E 线路电流幅值约束 begin{aligned} & sum_{i in mathcal{N}} c_{i}p_{i}^g quad text{最小化发电成本——针对发电机有功功率} \ s.t. & textbf{潮流方程} \ & underline{V_i} leq | V_{i} | leq overline{V_i}, forall i in mathcal{N} quad text{节点电压幅值约束} \ & underline{s_i^g} leq s_i^g leq overline{s_i^g}, forall i in mathcal{N} quad text{发电机功率约束(包括有功和无功功率)} \ & | I_{i j}| leq overline{{I}_{i j}}, forall(i, j) in mathcal{E} quad text{线路电流幅值约束} end{aligned} s.t. iNcipig最小化发电成本——针对发电机有功功率潮流方程ViViVi,iN节点电压幅值约束sigsigsig,iN发电机功率约束(包括有功和无功功率)IijIij,(i,j)E线路电流幅值约束

说明:

  1. 除潮流方程外,所列出的电压、电流和发电机功率约束都是线性约束;
  2. s i g s_i^g sig是发电机发出的复功率,包括实部(有功功率)和虚部(无功功率)两部分,其表达式为: s i g = p i g + j q i g s_i^g=p_i^g+jq_i^g sig=pig+jqig
  3. p i g p_i^g pig为发电机功率 s i g s_i^g sig的实部,也就是有功功率,即: p i g = R e   s i g p_i^g= Re s_i^g pig=Re sig
  4. V i V_{i} Vi I i j I_{i j} Iij是电压和电流的向量,也就是说电压、电流由幅值 ∣ V i ∣ | V_{i} | Vi ∣ I i j ∣ | I_{i j}| Iij和相角 ∡ V i measuredangle V_{i} Vi ∡ I i j measuredangle I_{i j} Iij构成;
  5. 电流 I i j I_{i j} Iij是双向流动的,可以由节点 i i i 流向节点 j j j ( i → j i rightarrow j ij),也可以由节点 j j j 流向节点 i i i ( j → i j rightarrow i ji)。

支路潮流方程

支路示意图

声明:

  1. 假定输电线路不考虑并联支路,即:输电线路视为串联阻抗 z i j z_{i j} zij
  2. 规定由节点 i i i 流入节点 j j j 的方向为正方向;
  3. 节点 i i i 的注入功率等于发电机的发电功率减去负载功率,即: s i = s i g − s i c s_i=s_i^g-s_i^c si=sigsic
  4. s i s_i si 是节点的复功率,其中, p i p_i pi 为有功功率( p i = R e   s i p_i=Re s_i pi=Re si), q i q_i qi 为无功功率( q i = I m   s i q_i=Im s_i qi=Im si)
  5. s i c s_i^c sic 表示负载的复功率。
    在上述假设和声明的基础上,支路潮流方程包括:

V i − V j = z i j I i j , ∀ ( i , j ) ∈ E 电压方程/欧姆定律 S i j = V i I i j ∗ , ∀ ( i , j ) ∈ E 支路首端功率 ∑ k : j → k S j k − ∑ i : i → j ( S i j − z i j ∣ I i j ∣ 2 ) = s j , ∀ j ∈ N 节点功率平衡 begin{aligned} & V_{i}-V_{j}=z_{i j}I_{i j}, forall(i, j) in mathcal{E} quad text{电压方程/欧姆定律} \ & S_{i j}=V_{i}I_{i j}^{*}, forall(i, j) in mathcal{E} quad text{支路首端功率} \ & sum_{k: j rightarrow k} S_{j k}-sum_{i: i rightarrow j} left(S_{i j}-z_{i j}| I_{i j}|^2right)=s_j, forall j in mathcal{N} quad text{节点功率平衡} end{aligned} ViVj=zijIij,(i,j)E电压方程/欧姆定律Sij=ViIij,(i,j)E支路首端功率k:jkSjki:ij(SijzijIij2)=sj,jN节点功率平衡

其中:

  1. I i j ∗ I_{i j}^{*} Iij 表示电流的共轭。(使用共轭电流的原因请参考《电路原理》中“正弦稳态电路的功率”等相关章节的内容)
  2. ∑ k : j → k S j k sum_{k: j rightarrow k} S_{j k} k:jkSjk 为从节点 j j j 流出到下游节点 k k k 的总功率(与节点 j j j 连接的下游支路可能不止一条,所以需要求和);
  3. ∑ i : i → j S i j sum_{i: i rightarrow j} S_{i j} i:ijSij为从节点 i i i 注入节点 j j j 的总功率(与节点 j j j 连接的上游支路可能不止一条,所以需要求和);
  4. z i j ∣ I i j ∣ 2 z_{i j}| I_{i j}|^2 zijIij2 是从节点 i i i 传输到节点 j j j 的支路功率损耗。

非凸最优潮流模型

m i n   ∑ i ∈ N c i p i g = ∑ i ∈ N c i ∗ R e ( s i + s i c ) 变量:  { S i j } , { I i j } , { V i } , { s i } s . t .   V i − V j = z i j I i j , ∀ ( i , j ) ∈ E S i j = V i I i j ∗ , ∀ ( i , j ) ∈ E ∑ k : j → k S j k − ∑ i : i → j ( S i j − z i j ∣ I i j ∣ 2 ) = s j , ∀ j ∈ N V i ‾ ≤ ∣ V i ∣ ≤ V i ‾ , ∀ i ∈ N s i g ‾ ≤ s i g ≤ s i g ‾ , ∀ i ∈ N ∣ I i j ∣ ≤ I i j ‾ , ∀ ( i , j ) ∈ E begin{aligned} & min sum_{i in mathcal{N}} c_{i}p_{i}^g=sum_{i in mathcal{N}} c_{i}*Re(s_i+s_i^c) \ & text{变量:} left{S_{i j}right},left{I_{i j}right},left{V_{i}right},left{s_{i}right} \ s.t. & V_{i}-V_{j}=z_{i j}I_{i j}, forall(i, j) in mathcal{E} \ & S_{i j}=V_{i}I_{i j}^{*}, forall(i, j) in mathcal{E} \ & sum_{k: j rightarrow k} S_{j k}-sum_{i: i rightarrow j} left(S_{i j}-z_{i j}| I_{i j}rvert^2right)=s_j, forall j in mathcal{N} \ & underline{V_i} leq | V_{i} rvert leq overline{V_i}, forall i in mathcal{N} \ & underline{s_i^g} leq s_i^g leq overline{s_i^g}, forall i in mathcal{N} \ & | I_{i j}rvert leq overline{{I}_{i j}}, forall(i, j) in mathcal{E} end{aligned} s.t. min iNcipig=iNciRe(si+sic)变量: {Sij},{Iij},{Vi},{si}ViVj=zijIij,(i,j)ESij=ViIij,(i,j)Ek:jkSjki:ij(SijzijIij2)=sj,jNViViVi,iNsigsigsig,iNIijIij,(i,j)E

非线性项( V i I i j ∗ V_{i}I_{i j}^{*} ViIij z i j ∣ I i j ∣ 2 z_{i j}| I_{i j}|^2 zijIij2) 所导致的非凸约束包括:
S i j = V i I i j ∗ , ∀ ( i , j ) ∈ E ∑ k : j → k S j k − ∑ i : i → j ( S i j − z i j ∣ I i j ∣ 2 ) = s j , ∀ j ∈ N begin{aligned} & S_{i j}=V_{i}I_{i j}^{*}, forall(i, j) in mathcal{E} \ & sum_{k: j rightarrow k} S_{j k}-sum_{i: i rightarrow j} left(S_{i j}-z_{i j} | I_{i j}|^2right)=s_j, forall j in mathcal{N} \ end{aligned} Sij=ViIij,(i,j)Ek:jkSjki:ij(SijzijIij2)=sj,jN

支路潮流的松弛

支路潮流的相角松弛:OPF-ar
由于上述模型中存在非凸项,造成模型求解困难。为了方便现有商业求解器的求解,采用相角松弛的方法实现非凸约束的松弛。在松弛过程中所涉及的变量包括: { S i j } left{S_{i j}right} {Sij}, { I i j } left{I_{i j}right} {Iij}, { V i } left{V_{i}right} {Vi}, { s i } left{s_{i}right} {si}。通过去掉电流、电压的相角,保留幅值,并令 l i j = ∣ I i j ∣ 2 l_{i j}=| I_{i j}|^2 lij=Iij2, v i = ∣ V i ∣ 2 v_{i}=| V_{i}|^2 vi=Vi2 可得最优潮流模型所需变量: { P i j , Q i j } left{P_{i j},Q_{i j}right} {Pij,Qij}, { l i j } left{l_{i j}right} {lij}, { v i } left{v_{i}right} {vi}, { p i , q i } left{p_{i},q_{i}right} {pi,qi}

  1. 节点功率平衡约束(有功、无功)

{ 松弛前: ∑ k : j → k S j k − ∑ i : i → j ( S i j − z i j ∣ I i j ∣ 2 ) = s j , ∀ j ∈ N 松弛后: 有功:   p j = ∑ k : j → k P j k − ∑ i : i → j ( P i j − r i j l i j ) , ∀ j ∈ N 无功:   q j = ∑ k : j → k Q j k − ∑ i : i → j ( Q i j − x i j l i j ) , ∀ j ∈ N left{ begin{array} {ll} &text{松弛前:} &sum_{k: j rightarrow k} S_{j k}-sum_{i: i rightarrow j} left(S_{i j}-z_{i j}| I_{i j}|^2right)=s_j, forall j in mathcal{N}\ &text{松弛后:}\ && textbf{有功:} p_{j}=sum_{k: j rightarrow k} P_{j k}-sum_{i: i rightarrow j} left(P_{i j}-r_{i j}l_{i j}right), forall j in mathcal{N} \ && textbf{无功:} q_{j}=sum_{k: j rightarrow k} Q_{j k}-sum_{i: i rightarrow j} left(Q_{i j}-x_{i j}l_{i j}right), forall j in mathcal{N} end{array} right. 松弛前:松弛后:k:jkSjki:ij(SijzijIij2)=sj,jN有功: pj=k:jkPjki:ij(Pijrijlij),jN无功: qj=k:jkQjki:ij(Qijxijlij),jN

  1. 支路首端功率的相角松弛
    S i j = V i I i j ∗ S_{i j}=V_{i}I_{i j}^* Sij=ViIij两侧取平方或者两侧各乘以共轭,去掉相角、保留幅值。其推导过程为:

  S i j = V i I i j ∗ 等式两侧乘以各自的共轭 ⇔   S i j S i j ∗ ⏟ S i j = P i j + j Q i j S i j ∗ = P i j − j Q i j = V i V i ∗ ⏟ ∣ V i ∣ 2 I i j ∗ I i j ⏟ ∣ I i j ∣ 2 ⇔   ( P i j + j Q i j ) ( P i j − j Q i j ) = ∣ V i ∣ 2 ⏟ v i ∣ I i j ∣ 2 ⏟ l i j ⇔   P i j 2 + Q i j 2 = v i l i j begin{aligned} & S_{i j}=V_{i}I_{i j}^* \ text{等式两侧乘以各自的共轭} & Leftrightarrow underbrace{S_{i j}S_{i j}^*}_{ begin{array}{l} & S_{i j}=P_{i j}+jQ_{i j}\ & S_{i j}^*=P_{i j}-jQ_{i j} end{array}} =underbrace{V_{i}V_{i}^*}_{|V_{i}|^2}underbrace{I_{i j}^*I_{i j}}_{|I_{i j}|^2} \ Leftrightarrow & (P_{i j}+jQ_{i j})(P_{i j}-jQ_{i j})=underbrace{| V_{i}|^2}_{v_i}underbrace{| I_{i j}|^2}_{l_{i j}} \ Leftrightarrow & P_{i j}^2+Q_{i j}^2=v_il_{i j} end{aligned} 等式两侧乘以各自的共轭 Sij=ViIij Sij=Pij+jQijSij=PijjQij SijSij=Vi2 ViViIij2 IijIij (Pij+jQij)(PijjQij)=vi Vi2lij Iij2 Pij2+Qij2=vilij

首端功率表达式为:
{ 松弛前:  S i j = V i I i j ∗ 松弛后:  l i j = P i j 2 + Q i j 2 v i left{ begin{array} {ll} & text{松弛前:} &S_{i j}=V_{i}I_{i j}^*\ & text{松弛后:} &l_{i j}=frac{P_{i j}^2+Q_{i j}^2}{v_i} end{array} right. {松弛前: 松弛后: Sij=ViIijlij=viPij2+Qij2

  1. 电压方程/欧姆定律
    S i j = V i I i j ∗ S_{i j}=V_{i}I_{i j}^* Sij=ViIij 带入 V i − V j = z i j I i j V_{i}-V_{j}=z_{i j}I_{i j} ViVj=zijIij 可得

V j = V i − z i j S i j ∗ V i ∗ begin{aligned} V_{j}=V_{i}-z_{i j}frac{S_{i j}^{*}}{V_{i}^{*}} end{aligned} Vj=VizijViSij

等式两端各乘以自身的共轭,去掉相角可得:
v j = V j V j ∗ = ( V i − z i j S i j ∗ V i ∗ ) ( V i ∗ − z i j ∗ S i j V i ) = V i V i ∗ ⏟ v i − ( z i j ∗ S i j + z i j S i j ∗ ) ⏟ 两者相加,虚部抵消 + z i j z i j ∗ S i j S i j ∗ V i V i ∗ ⏟ I i j = S i j V i = v i − 2 R e ( z i j ∗ S i j ) + ∣ z i j ∣ 2 l i j = v i − 2 ( r i j P i j + x i j Q i j ) + ( r i j 2 + x i j 2 ) l i j begin{aligned} v_{j}& =V_{j}V_{j}^*=(V_{i}-z_{i j}frac{S_{i j}^{*}}{V_{i}^{*}})(V_{i}^*-z_{i j}^*frac{S_{i j}}{V_{i}}) \ & =underbrace{V_{i}V_{i}^{*}}_{v_{i}}-underbrace{(z_{i j}^{*}S_{i j}+z_{i j}S_{i j}^{*})}_text{两者相加,虚部抵消}+ z_{i j}z_{i j}^* underbrace{frac{S_{i j}S_{i j}^{*}}{V_{i}V_{i}^{*}}}_{I_{i j}=frac{S_{i j}}{V_{i}}} \ & =v_{i}-2Re(z_{i j}^{*}S_{i j})+| z_{i j}|^2l_{i j} \ & =v_{i}-2(r_{i j}P_{i j}+x_{i j}Q_{i j})+(r_{i j}^{2}+x_{i j}^{2})l_{i j} end{aligned} vj=VjVj=(VizijViSij)(VizijViSij)=vi ViVi两者相加,虚部抵消 (zijSij+zijSij)+zijzijIij=ViSij ViViSijSij=vi2Re(zijSij)+zij2lij=vi2(rijPij+xijQij)+(rij2+xij2)lij
因此,电压平衡方程的表达式为:
{ 松弛前:  V i − V j = z i j I i j 松弛后:  v j = v i − 2 ( r i j P i j + x i j Q i j ) + ( r i j 2 + x i j 2 ) l i j left{ begin{array} {ll} & text{松弛前:} &V_{i}-V_{j}=z_{i j}I_{i j}\ & text{松弛后:} &v_{j}=v_{i}-2(r_{i j}P_{i j}+x_{i j}Q_{i j})+(r_{i j}^{2}+x_{i j}^{2})l_{i j} end{array} right. {松弛前: 松弛后: ViVj=zijIijvj=vi2(rijPij+xijQij)+(rij2+xij2)lij
相角松弛后的支路潮流模型:OPF-ar

因为该模型中,电压、电流相角( ∡ V i measuredangle V_{i} Vi ∡ I i j measuredangle I_{i j} Iij)可以取任意值,因此称之为相角松弛(Angle relaxation, ar)后的潮流模型:
m i n   ∑ i ∈ N c i ( p i + p i c ) 变量:  { P i j , Q i j } , { l i j } , { v i } , { p i , q i } s . t .   p j = ∑ k : j → k P j k − ∑ i : i → j ( P i j − r i j l i j ) , ∀ j ∈ N q j = ∑ k : j → k Q j k − ∑ i : i → j ( Q i j − x i j l i j ) , ∀ j ∈ N v j = v i − 2 ( r i j P i j + x i j Q i j ) + ( r i j 2 + x i j 2 ) l i j , ∀ ( i , j ) ∈ E l i j = P i j 2 + Q i j 2 v i , ∀ ( i , j ) ∈ E v i ‾ ≤ ∣ v i ∣ ≤ v i ‾ , ∀ i ∈ N p i g ‾ ≤ p i g ≤ p i g ‾ , ∀ i ∈ N q i g ‾ ≤ q i g ≤ q i g ‾ , ∀ i ∈ N l i j ≤ I i j ‾ , ∀ ( i , j ) ∈ E begin{aligned} & min sum_{i in mathcal{N}} c_{i}(p_i+p_i^c) \ & text{变量:} left{P_{i j}, Q_{i j}right},left{l_{i j}right},left{v_{i}right},left{p_{i}, q_{i}right} \ s.t. & p_{j}=sum_{k: j rightarrow k} P_{j k}-sum_{i: i rightarrow j} left(P_{i j}-r_{i j}l_{i j}right), forall j in mathcal{N} \ & q_{j}=sum_{k: j rightarrow k} Q_{j k}-sum_{i: i rightarrow j} left(Q_{i j}-x_{i j}l_{i j}right), forall j in mathcal{N} \ & v_{j}=v_{i}-2(r_{i j}P_{i j}+x_{i j}Q_{i j})+(r_{i j}^{2}+x_{i j}^{2})l_{i j}, forall(i, j) in mathcal{E} \ & l_{i j}=frac{P_{i j}^2+Q_{i j}^2}{v_i}, forall(i, j) in mathcal{E} \ & underline{v_i} leq | v_{i} | leq overline{v_i}, forall i in mathcal{N} \ & underline{p_i^g} leq p_i^g leq overline{p_i^g}, forall i in mathcal{N} \ & underline{q_i^g} leq q_i^g leq overline{q_i^g}, forall i in mathcal{N} \ & l_{i j} leq overline{{I}_{i j}}, forall(i, j) in mathcal{E} end{aligned} s.t. min iNci(pi+pic)变量: {Pij,Qij},{lij},{vi},{pi,qi}pj=k:jkPjki:ij(Pijrijlij),jNqj=k:jkQjki:ij(Qijxijlij),jNvj=vi2(rijPij+xijQij)+(rij2+xij2)lij,(i,j)Elij=viPij2+Qij2,(i,j)Evivivi,iNpigpigpig,iNqigqigqig,iNlijIij,(i,j)E

至此,非线性项( V i I i j ∗ V_{i}I_{i j}^{*} ViIij z i j ∣ I i j ∣ 2 z_{i j}| I_{i j}|^2 zijIij2) 所导致的三个非凸约束通过相角松弛变成了凸约束。然而,由于二次及二次以上的等式约束非凸,因此,等式约束 l i j = P i j 2 + Q i j 2 v i l_{i j}=frac{P_{i j}^2+Q_{i j}^2}{v_i} lij=viPij2+Qij2 的存在导致模型非凸。

支路潮流的凸松弛:OPF-cr
由于 OPF-ar 中存在二次等式约束 l i j = P i j 2 + Q i j 2 v i l_{i j}=frac{P_{i j}^2+Q_{i j}^2}{v_i} lij=viPij2+Qij2 ,导致模型非凸,为实现模型求解,需要进一步放大可行域。将该等式约束的 ′ = ′ '=' =松弛为 ′ ≥ ′ 'geq' 后(Convex relaxation, cr), l i j ≥ P i j 2 + Q i j 2 v i l_{i j}geqfrac{P_{i j}^2+Q_{i j}^2}{v_i} lijviPij2+Qij2可以改写为旋转二阶锥规划(Second Order Cone Programming, SOCP)的形式:
  P i j 2 + Q i j 2 ≤ l i j v i ⇔   P i j 2 + Q i j 2 ≤ ( l i j + v i ) 2 − ( l i j − v i ) 2 4 ⇔   ( 2 P i j ) 2 + ( 2 Q i j ) 2 + ( l i j − v i ) 2 ≤ ( l i j + v i ) 2 ⇔   ∥ 2 P i j 2 Q i j l i j − v i ∥ 2 ≤ l i j + v i begin{aligned} & P_{i j}^2+Q_{i j}^2leq l_{i j}{v_i} \ Leftrightarrow & P_{i j}^2+Q_{i j}^2leq frac{left(l_{i j}+{v_i}right)^2-left(l_{i j}-{v_i}right)^2}{4} \ Leftrightarrow & left(2P_{i j}right)^2+left(2Q_{i j}right)^2+left(l_{i j}-{v_i}right)^2leq left(l_{i j}+{v_i}right)^2 \ Leftrightarrow & begin{Vmatrix} 2 P_{i j} \ 2 Q_{i j} \ l_{i j}-v_{i} end{Vmatrix}_{2} leq l_{ij}+v_{i} end{aligned}  Pij2+Qij2lijvi Pij2+Qij24(lij+vi)2(lijvi)2 (2Pij)2+(2Qij)2+(lijvi)2(lij+vi)2 2Pij2Qijlijvi2lij+vi
其中, ∣ ∣ ∙ ∣ ∣ 2 ||{bullet}||_2 2表示 ∙ {bullet} 的二范数。松弛后的表达式可以用商业求解器 (Cplex、Gurobi等) 实现OPF模型的求解。

小结——模型的适用条件

  1. 该模型适用于辐射状网络(radial networks),对于环状网络(mesh networks)不一定适用,需要加装移项变压器;
  2. 二阶锥松弛是紧的,具体证明请见文章:Branch Flow Model: Relaxations and Convexification—Part I & II。

作者| 雷克波、李同学
审核| 雷克波、李同学
校正| 丁同学
欢迎大家关注公众号获取最新资讯

参考资料

  1. 北京交通大学许寅老师的教学视频(第3讲-锥规划及其在能源系统优化中的应用 Part I);
  2. Farivar M , Low S H . Branch Flow Model: Relaxations and Convexification—Part I & II [J]. IEEE Transactions on Power Systems, 2013.

往期内容回顾

9. 火电机组经济调度建模及求解——基础篇
8. Python|Gurobi——零基础学优化建模-终章
7. Python|Gurobi——零基础学优化建模-压轴篇:多目标优化
6. Python|Gurobi——零基础学优化建模-分段模型线性化(PWL)
5. Python|Gurobi——零基础学优化建模-QCP
4. Python|Gurobi——零基础学优化建模-NLP
3. Python|Gurobi——零基础学优化建模-MIP
2. Python|Gurobi——零基础学优化建模-LP
1. Python|Gurobi——零基础学优化建模

最后

以上就是冷傲荷花为你收集整理的基于Distflow的最优潮流模型(OPF)--模型推导篇的全部内容,希望文章能够帮你解决基于Distflow的最优潮流模型(OPF)--模型推导篇所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(34)

评论列表共有 0 条评论

立即
投稿
返回
顶部