APP下载

基于云计算的电力系统快速静态安全分析方法

2021-06-21赵瑞锋王海柱郭文鑫卢建刚曾坚永

计算机应用与软件 2021年6期
关键词:静态子系统潮流

赵瑞锋 李 波 王海柱 郭文鑫 卢建刚 曾坚永

(广东电网有限责任公司电力调度控制中心 广东 广州 510600)

0 引 言

电力系统静态安全分析本质是一系列的潮流计算,当电力系统各个运行方式下某元件(电抗、断路器等)退出后,在此状态下进行潮流计算作为分析的基础。潮流计算结果用来校验系统是否有元件过负荷、母线过电压等。传统的电力系统潮流分析是利用单个或多个处理机进行就地计算,而随着电网运行的数据大幅增加,需要处理数据增幅也较高,计算资源已成为大规模潮流计算的瓶颈[1-4]。

从网格计算、分布式计算,伴随大规模信息化进程演化和发展而来的云计算,善于整合众多分布式计算机,形成巨量数据的高效储存、分析、运算能力,在分配算法的基础上可以充分利用储存能力高和运算能力强的特点,快速分配、执行任务,自由灵活扩展和调用,同时可靠性、经济性也符合要求。在电力系统中合理运用云计算技术,在云计算平台上形成的电力系统的分析计算平台,充分利用电网已有的硬件软件资源,对提高电网安全运行水平和数据处理能力具有极大的现实意义[5-6]。

云计算环境下电力系统静态安全分析包括并行算法和云计算任务分配算法两个方面。前推回代法及以此方法为拓展的潮流计算方法是目前配电网潮流计算中最常用的算法。但前推回代法存在并行化程度并不高的问题;也有研究将预处理共轭梯度法和牛顿迭代法相结合,但共轭梯度法对通信资源响应要求较高,进而降低了算法的扩展性。本文将牛顿迭代法中的雅可比矩阵做适当的分裂,来提高并行效率。云计算任务分配算法分为静态分配算法和动态分配算法[7-8]。静态资源分配算法指的是在资源分配过程中分配策略是固定的,不采用反馈机制,这类算法主要包括遗传算法、蚁群算法、轮转算法等;其优点是简单、快速、分配方案合理。但算法的决策过程耗时过长,不能充分发挥云计算的特点。动态分配算法采用反馈机制调整策略的参数,还可以稍微调整分配策略,使系统的资源能够合理利用,优点是随时掌握云计算的实时情况,适应性较强。但对应分配算法较为复杂,实时监控的能源消耗也大,策略不合适也会引起负荷不均衡。本文依据电力系统静态安全分析特点,综合并行运算计算时间和相互通信过程,给出一种合理利用云平台资源缩短计算时间的任务分配方法。

1 静态安全分析云计算并行算法

1.1 基于分裂松弛牛顿法的迭代并行计算方法

利用计算机求解各类非线性问题,其本质为利用迭代方式实现非线性代数问题的解的近似,对非线性代数方程组的数值迭代求解方法是求解的关键。

考虑非线性方程组:

(1)

式中:F为非线性映射;Ω是RN中任一有界集,X是Ω的一个向量,同时假定F为光滑函数。

解方程组式(1)的牛顿法为:

xk+1=xk-F′(xk)-1F(xk)k=0,1,…

(2)

其牛顿方程组为:

F′(xk)x=F′(xk)xk-F(xk)

(3)

作如下替换:

(4)

进一步可得:

A(xk)x=b(xk)

(5)

令Mt(xk)、Nt(xk)、Et均是N×N矩阵,t=1,2,…,α,α为分裂重数,若满足以下两条件:

1)A(xk)=Mt(xk)-Nt(xk),Mt(xk)-1存在;

则三元组(Mt(xk),Nt(xk),Et)称为矩阵A(xk)的一个多分裂[10-13],式(5)进一步写成:

xm+1=Mt(xk)-1Nt(xk)xm+Mt(xk)-1b(xk)t=1,2,…,α

(6)

用权矩阵Et组合α个方程组,可得:

(7)

假定让迭代停留在第l步,经计算可得:

xk,l=xk,0+[H(xk)l-I]+

[H(xk)l-1+…+I]G(xk)b(xk)

(8)

因又有如下关系:

(9)

第l步迭代式可进一步写成:

xk,l=xk,0-[H(xk)l-1+…+I]G(xk)[F′(xk)xk,0-F′(xk)xk+F(xk)]

(10)

设xk,0=xk,记xk,l=xk+1,则得牛顿-并行矩阵多分裂算法的迭代格式:

xk+1=xk-[H(xk)l-1+…+I]G(xk)F(xk)

(11)

对m=0,1,…,运算步骤大致如下:

(1) 各并行运算器单独计算如式(12)的局部迭代,求解yt可直接求解也可进行迭代运算。

yt=Mt(xk)-1Nt(xk)xm+Mt(xk)-1b(xk)

(12)

(2) 完成后将局部迭代值结果yt送到指定处理器主机按照式(13)进行加权平均而得到整体迭代值,然后将xm+1送回各处理机以开始下一步局部迭代。

(13)

1.2 潮流计算矩阵的多重分裂算法

在采用直角坐标系的前提条件下,基于牛顿法的电力系统潮流计算可由下列方程描述[13-16]:

ΔW=-JΔV

(14)

式中:

雅可比矩阵中各元素通过偏导数求得,当i≠j如式(15)所示,当i=j如式(16)所示:

(15)

(16)

式中:Pi为PQ、PV节点注入的有功功率,Qi为PV节点注入的无功功率;Gij为自导纳,Bij为互导纳;ei为迭代过程中节点电压的实部;fi为迭代过程中节点电压的虚部,ej为平衡点电压的实部;fj分别为平衡点电压的虚部。

迭代运算求解修正方程过程中,雅可比矩阵各元素的数值不断变换,其为节点电压的函数;雅可比矩阵中i≠j的部分中的元素的表达式只用到导纳矩阵中的对应元素。若节点导纳矩阵的互导纳为0,则雅可比矩阵的互导纳也为0。因此,可参考节点导纳矩阵的稀疏矩阵的求解技巧求解分块形式的雅可比矩阵的修正方程。根据雅可比矩阵的特点,雅可比矩阵可按下式进行分裂:

(17)

式中:Y为节点导纳矩阵。

如图1所示,配电网可以根据其联络线划分子系统S1,S2,…,Sn,对于其中任一子系统,其与外部的连接可以用等值负荷及连接阻抗来等效。等值负荷必须保证联络线两端的传输功率的相同,这样子系统内的潮流计算仅与等效的连接阻抗和负荷参数有关。在电力系统分析计算中这种等效可在每次迭代过程中进行更新,因此任一子系统可以分别独立求解,根据待计算系统的子系统划分确定多重分裂矩阵的分裂重数α,各子系统内部的矩阵分裂按照式(17)进行。

图1 配电网子系统互联示意图

2 静态安全分析云计算任务分配算法

采用多重分裂矩阵方法进行电力系统静态安全分析过程中,因其联络线间等效参数的相互传递,必然涉及多运算过程的并行处理以及相互间信息的传递,有必要协调各个并行运算过程的通信时间和计算时间,最大限度利用云平台的计算能力。

图2是多运算过程并行处理的一个典型示例。将并行的单一运算过程分为收到指令、分析和执行三个部分,每个单一运算过程可以与其他单一运算过程同时运行。多个单运算过程在时间上可以在不同的处理器上交错重叠地并行工作,因而缩短了整体任务的运行时间[9]。假定收到指令、分析和执行的运行时间为t1、t2、t3, 在t1和t2之间,另外的单一运算过程可以进行指令操作,第k+1单一运算过程在进行分析时,第k单一运算则可进行执行操作。在云平台中,每个并行过程可对应于一个虚拟运算器。

图2 多运算过程并行处理的一个典型示例

为保证各并行过程运算结果的先后差异,也为实现各子过程信息流的同步推进,所有的运算周期采用统一的时钟信号进行控制,此时钟信号称为固定运算周期。考虑到各并行过程在运算过程中的传输及延时,各并行过程的划分会因通信需要增多而增加传输延迟,从而一定程度上降低了因细分子过程带来的运行速率的加快,因此分析使得任务完成时间最短的并行过程的设置个数是其中的关键。

设需要完成的指令条数为p,子过程数目为q,指令运算时间T=t1+t2+t3,通信的传输延迟为μ,则任务完成时间T(p)可由下式表示:

(18)

所有任务完成最短时间可转化为如式(19)所示的函数求最优解问题。

(19)

考虑到子过程的数目应为正整数,则最优解的子过程数qb可由下式表示:

(20)

由此可得算法的具体步骤为:

(1) 计算取指令、分析和执行三个子过程的运行时间分别为t1,t2,t3;锁存器传输延时为μ;

(3) 计算qb。

上述最优解可用于静态安全分析计算云计算任务分配。将其应用于云计算任务分配首先要先对潮流计算中每个指令的运算时间TN0和通信的延迟时间μ进行预评估,其中对于通信的延迟时间可通过所采用云平台的系统配置得到。对指令运算时间的评估可按以下方法进行:对于节点数为N的潮流计算,按照所采用云平台单虚拟机中已有的运行时间进行样本评估,得到评估运算时间TN,设除去平衡节点后有α个节点且迭代次数为kN,对于上文分裂算法的潮流计算,每次迭代都需要计算雅可比矩阵和非平衡节点的有功功率和无功功率,则该潮流计算的指令运算时间TN0可由下式进行估算:

(21)

得到指令运算时间后,按照式(20)通过优化算法确定该并行运算过程的子过程数最优解qb,即为当前计算任务分配qb个虚拟机。将N节点的潮流计算的每一次迭代过程通过计算任务按照计算次序依次分配给qb个虚拟机,虚拟机也按次序接受任务,即按照从1到qb的次序接受任务,每个虚拟机在一轮qb个计算任务中仅接受一次任务,第qb个虚拟机接受完任务后再从第一个虚拟机按次序接受计算任务。通过以上过程实现协调考虑运算时间和通信时间的合理分配,可进一步缩短静态安全分析计算的运行时间。

3 静态安全分析云计算流程和步骤

完成电力系统潮流计算矩阵方程的分裂后按照前文所述方法进行计算,计算流程图如图3所示。设f为云计算环境下最优虚拟运算器数,k为迭代次数,第r台虚拟机为fr(r=1,2,…,f),针对分裂后的矩阵并行计算步骤如下所示:

图3 计算流程图

(1) 在fr中赋初始值x0,存储雅可比矩阵和节点导纳矩阵,设置计算精度ε和k等于0。

(2) 在fr中按式(12)进行迭代计算,并将计算结果传递至主虚拟运算器。

(3) 并行计算各潮流运算结果Vk+1=Vk+ΔVk+1,判断前后次迭代输出是否满足精度ε,如果所有虚拟机都成立,则输出ΔV,若不满足精度要求,则转到步骤(2)。

4 实验验证

4.1 实验平台及运行结果

为了验证上述算法,本文采用IEEE33节点和292节点的配电网系统数据。应用阿里云的云服务器ECS作为运算平台,ECS系统架构如图4所示。ECS主机CPU是16核,内存64 GB,采用OSS对象存储存放电网模型文件、断面文件和潮流图等,OSS存储容量为1 TB,通过与传统计算方法对比,验证本文算法的有效性[17-18]。

图4 ECS系统架构

本文提出的云计算环境下电力系统静态安全分析算法包含并行算法和云计算任务分配算法两部分。为验证本文的分配算法和并行计算算法提升计算速率的有效性,将本文算法与配网潮流计算中当前较为常用的前推回代法、任务分配的贪心算法进行了实验对比。贪心算法的基本思路是将问题的某一变量作为优化目标,然后进行分级处理,将大问题划分为多个步骤,按步执行求解,任一过程的分配求解均按照既定的最优原则,从而使得整个问题找到最优解。本文实验中采用的贪心算法思路为:以整体计算时间最小为优化目标安排有M个虚拟机完成N个任务,计算进行中的每一个步都按其完成时间最小虚拟机完成当前任务,进而达到时间最优解。其最终目标与本文寻求最短计算时间的目标一致。

将33节点系统化为3个子系统,292节点系统化为6个子系统,实验结果如表1-表4所示。表1为资源分配贪心算法下,采用本文分裂算法与前推回代法的不同虚拟机数目的33节点潮流计算时间对比。表2为资源分配贪心算法下,采用本文分裂算法与前推回代法的不同虚拟机数目的292节点潮流计算时间对比。表3为本文资源分配算法下,采用本文分裂算法与前推回代法的不同虚拟机数目的33节点潮流计算时间对比。表4为本文资源分配算法下,采用本文分裂算法与前推回代法的不同虚拟机数目的292节点潮流计算时间对比。

表1 贪心算法下,不同迭代算法33节点实验结果

表2 贪心算法下,不同迭代算法292节点实验结果

表3 本文算法下,不同迭代算法33节点实验结果

表4 本文算法下,不同迭代算法292节点实验结果

4.2 结果分析

采用本文的方法可以有效利用云平台资源实现潮流计算效率的提高。从33节点和292节点的实验结果可以看出,本文的分裂并行算法在节点扩展和云平台虚拟机增加的情况下有更好的适应性,可有效缩短计算时间,从而能够适应当前电网规模不断扩大情况下的分析计算任务需求。由于虚拟机之间的通信过程也会影响算法的效率,虚拟机数量的提升不能带来计算效率的线性变化,实验结果显示本文的计算任务分配算法可进一步缩短计算过程,同时在云平台虚拟机数目增多的情况下,相比之前的分配算法可以更加充分利用云平台的各种资源,避免虚拟机资源的浪费,为在有限资源上实现更大规模的快速计算提供了空间。实验也表明,将分裂并行算法和任务分配算法结合后的基于云计算的电力系统快速静态安全分析方法可以合理利用云平台资源丰富的优势解决电力系统分析计算规模和要求日益提高的现实问题。

5 结 语

本文提出一种电力系统快速静态安全分析云计算的实现方法,包括分裂并行算法和云计算任务分配算法两部分。利用多重分裂牛顿法,通过对雅可比矩阵进行分裂和子系统的划分,实现静态安全分析潮流方程的并行计算。对于并行计算任务在云计算中的分配,综合考虑运算时间和相互间通信时间,确定运算时间最小值的子过程划分,并将任务依次分配给各子过程。所提方法迭代次数较少,计算时间较短,并行效率较高,具有较好的可扩展性,是充分利用云计算海量存储和计算能力快速求解大型非线性方程组的一种有效方法,通过实验算例验证了分裂并行算法和云计算任务分配算法的可行性和有效性,对提高云计算环境下的电力系统静态安全分析效率有一定的实用意义。

猜你喜欢

静态子系统潮流
最新进展!中老铁路开始静态验收
静态随机存储器在轨自检算法
猜猜他是谁
网络空间供应链中入侵检测及防御子系统的投资机制研究
网络空间供应链中入侵检测及防御子系统的投资机制研究
基于HTML5静态网页设计
团队与知识管理的关系研究
潮流
潮流
潮流