CN116861031A - 基于图计算的电力潮流计算方法、系统、设备及介质 - Google Patents
基于图计算的电力潮流计算方法、系统、设备及介质 Download PDFInfo
- Publication number
- CN116861031A CN116861031A CN202310423537.8A CN202310423537A CN116861031A CN 116861031 A CN116861031 A CN 116861031A CN 202310423537 A CN202310423537 A CN 202310423537A CN 116861031 A CN116861031 A CN 116861031A
- Authority
- CN
- China
- Prior art keywords
- node
- matrix
- power
- graph
- edge
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004364 calculation method Methods 0.000 title claims abstract description 278
- 239000011159 matrix material Substances 0.000 claims description 355
- 238000010586 diagram Methods 0.000 claims description 88
- 238000000034 method Methods 0.000 claims description 88
- 238000000354 decomposition reaction Methods 0.000 claims description 57
- 230000005540 biological transmission Effects 0.000 claims description 29
- 238000003860 storage Methods 0.000 claims description 22
- 238000002347 injection Methods 0.000 claims description 19
- 239000007924 injection Substances 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 16
- 230000008030 elimination Effects 0.000 claims description 13
- 238000003379 elimination reaction Methods 0.000 claims description 13
- 238000010276 construction Methods 0.000 claims description 4
- 238000004422 calculation algorithm Methods 0.000 description 40
- 230000008569 process Effects 0.000 description 37
- 238000012937 correction Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 10
- 238000012545 processing Methods 0.000 description 10
- 238000004458 analytical method Methods 0.000 description 7
- 239000000243 solution Substances 0.000 description 7
- 238000006467 substitution reaction Methods 0.000 description 6
- 230000008676 import Effects 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 5
- 238000003780 insertion Methods 0.000 description 4
- 230000037431 insertion Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 241000282376 Panthera tigris Species 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000013499 data model Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 239000000725 suspension Substances 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 238000010248 power generation Methods 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/06—Energy or water supply
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Economics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Health & Medical Sciences (AREA)
- Pure & Applied Mathematics (AREA)
- Software Systems (AREA)
- Algebra (AREA)
- Computing Systems (AREA)
- Public Health (AREA)
- Water Supply & Treatment (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Supply And Distribution Of Alternating Current (AREA)
Abstract
本发明属于电力自动化领域,公开了一种基于图计算的电力潮流计算方法、系统、设备及介质,通过基于图结构的矩阵分解方法、基于图结构的功率变化量计算方法、基于图结构的前代计算方法以及基于图结构的回代计算方法,以图描述的方式来表达矩阵计算过程,将电力潮流计算任务放在图数据库中完成,以此减少反复的数据导入导出操作,且能充分利用图数据库的分布式并行计算能力,以提升电力多源异构数据计算的效率,实现了软件层面存算一体的电力图计算方法,在遇到大型稀疏的电力图时,不需要频繁从图数据库中将数据导入图计算引擎中,提高了矩阵运算效率,提升电力图计算效率。
Description
技术领域
本发明属于电力自动化领域,涉及一种基于图计算的电力潮流计算方法、系统、设备及介质。
背景技术
随着人工智能与大数据技术的发展,数据已成为当前时代的主要生产要素,与之对应的数据来源与数据种类也越来越多,人们所面临的分析计算任务越来越复杂,这使得多源异构数据的融合成为一种新的趋势。面对基于大规模多源异构数据融合的分析挖掘场景,传统的关系型数据模型越来越难以满足这种复杂任务需求。图数据库作为一种新型的非关系型数据库,非常适用于处理实体间的关联关系,尤其是现实世界中具备图模式的数据。现有的图模式应用场景,如推荐系统、道路交通及生物医学等在利用图数据库时,主要使用常规的图计算算法,如最短路径算法及社区检测算法等。而很多图应用场景除了需要这些常规图计算算法外还会涉及大量的矩阵计算。
目前很少有直接在图上或在图数据库中完成矩阵计算的相关研究。图数据结构本质上也是矩阵的一种表达形式,目前主流的图数据库产品大都侧重于对图数据的存储及查询分析,缺少原生对矩阵计算的支持。例如,在图计算方面,为快速求解潮流计算问题,刘克文等人给出一种基于整体同步并行计算模型的全节点并行迭代算法。在利用佩奇排序实现并行机制的基础上,用图数据模型实现了电力网络全节点的并行的潮流迭代计算。
但是,现有的图计算方法求解潮流计算的缺点主要是存算分离,主要是利用图计算引擎中的图计算算子进行计算,在遇到大型稀疏的电力图时,由于少有原生图数据库支持矩阵运算相关的接口或功能函数,这种方法需要频繁从图数据库中将数据导入图计算引擎中,直接导致了矩阵运算效率不高,影响潮流计算效率。
发明内容
本发明的目的在于克服上述现有技术的缺点,提供一种基于图计算的电力潮流计算方法、系统、设备及介质。
为达到上述目的,本发明采用以下技术方案予以实现:
本发明第一方面,提供一种基于图计算的电力潮流计算方法,包括:
S1:根据电力系统的拓扑结构图,得到电力系统的节点导纳矩阵以及雅克比矩阵的左上角方块矩阵和右下角方块矩阵;
S2:构建雅克比矩阵的左上角方块矩阵和右下角方块矩阵的消去树,基于所述消去树进行节点层数划分,并为电力系统的各节点赋值层数属性;
S3:基于各节点的层数属性,按照从0到最大层数的顺序遍历各节点,并通过基于图结构的矩阵分解方法,将雅克比矩阵进行矩阵分解,得到上三角矩阵和下三角矩阵;
S4:获取当前迭代次数,当当前迭代次数小于预设最大迭代次数时,进行S5~S7;否则,结束迭代;
S5:根据节点导纳矩阵,通过基于图结构的功率变化量计算方法,计算各节点的功率变化量;
S6:获取各节点的功率变化量中的最大功率变化量,当最大功率变化量大于预设的收敛界限时,结束迭代;
S7:按照从0到最大层数的顺序遍历各节点,根据下三角矩阵,通过基于图结构的前代计算方法得到前代计算向量,并根据功率变化量、前代计算向量和上三角矩阵,通过基于图结构的回代计算方法,更新各节点的电压幅值和电压相角。
可选的,所述基于图结构的矩阵分解方法包括:
步骤11:从电力系统的拓扑结构图的节点集V中,按节点编号从小到大依次遍历,将每次选择的节点作为节点p,并进行步骤12至19;
步骤12:从电力系统的拓扑结构图的节点集V中选择所有节点i;其中,由节点p指向节点i且节点i的节点编号大于节点p;
步骤13:将边p→i的边权除以节点p的自边边权;
步骤14:将节点i的自边边权减去边p→i与边i→p边权的乘积;
步骤15:从电力系统的拓扑结构图的边集W中选择所有节点对t,j;其中,节点t经过节点p指向节点j;
步骤16:将边t→j的边权减去边t→p与边p→j边权的乘积;
步骤17:从电力系统的拓扑结构图的边集W中选择所有节点对(r,y);其中,节点p既指向点r又指向y;
步骤18:将边r→y的边权减去边r→p与边p→y边权的乘积;
步骤19:将边y→r的边权减去边y→p与边p→r边权的乘积。
可选的,所述通过基于图结构的功率变化量计算方法,计算各节点的功率变化量包括:
在电力系统的拓扑结构图中查找所有s-(e)-t的路径,其中,s和t表示节点类型,(e)表示边类型;并以s作为i,t作为j,通过下式计算各节点的功率变化量,功率变化量包括有功功率不平衡量及无功功率不平衡量:
其中,ΔPi为节点i的有功功率不平衡量,ΔQi为节点i的无功功率不平衡量,Pi为节点i的注入有功功率,Qi为节点i的注入无功功率,Vi为节点i的电压相角,Gij为节点导纳矩阵中节点i与节点j的导纳的实部,Bij为节点导纳矩阵中节点i与节点j的导纳的虚部,δij为节点i与节点j的相角差。
可选的,所述通过基于图结构的前代计算方法得到前代计算向量包括:
步骤21:将各节点的功率变化量赋值给电力系统的拓扑结构图中每个节点的自边,作为各节点自边的z值;
步骤22:从电力系统的拓扑结构图的节点集V中,按节点编号从小到大依次遍历,每次选择出一个节点p,执行步骤23至25;
步骤23:从电力系统的拓扑结构图的节点集V中选择所有节点i;其中,由节点p指向节点i且节点i的节点编号小于节点p;
步骤24:将节点p自边的z值减去边p→i的边权与节点i的自边的z值的乘积;
步骤25:将节点p自边的z值除以节点p的自边边权;
步骤26:将各节点自边的z值逐行排列,得到前代计算向量。
可选的,所述基于图结构的回代计算方法,更新各节点的电压幅值和电压相角包括:
步骤31:将前代计算向量中的各元素值分别作为各节点自边的x属性值;
步骤32:从电力系统的拓扑结构图的节点集V中,按节点编号从小到大依次遍历,每次选择出一个节点p,执行以下步骤33至34;
步骤33:从电力系统的拓扑结构图的节点集V中选择所有节点i;其中,由节点p指向节点i且节点i的节点编号大于节点p;
步骤34:将节点p自边的x属性值减去边p→i的边权与节点i自边的x属性值的乘积;
步骤35:根据将各节点自边的x属性值,得到各节点的电压幅值变化量和电压相角变化量;以及根据各节点的电压幅值变化量和电压相角变化量,更新各节点的电压幅值和电压相角。
可选的,还包括:
S9:基于电力潮流计算结果,将具有相同发电机供电的母线划分为一个区域,将不同区域之间功率方向一致的输电回路合并成链,得到电力系统状态图;
S10:计算电力系统状态图的邻接矩阵,并根据邻接矩阵得到路径矩阵;
S11:将过载支路所在链作为目标链,根据路径矩阵计算目标链的起始伴随矩阵和终止伴随矩阵,并根据目标链的起始伴随矩阵和终止伴随矩阵得到目标链的并行送电断面和并行受电断面;以及将目标链的并行送电断面和并行受电断面取并集,得到过载支路的并行断面。
可选的,所述根据路径矩阵计算目标链的起始伴随矩阵和终止伴随矩阵,并根据目标链的起始伴随矩阵和终止伴随矩阵得到目标链的并行送电断面和并行受电断面包括:
通过下式计算目标链的起始伴随矩阵T和终止伴随矩阵R:
其中,k为目标链的起始区域序号,Qk=QMk,Q为中间矩阵,通过将路径矩阵加上一个单位矩阵得到,Mk为单位矩阵的第k列向量,表示将Qk中的所有元素先取反再转置,表示2个矩阵相应元素做逻辑于运算,A为电力系统状态图的邻接矩阵;g为目标链的终止区域序号,Qg=QMg,Mg为单位矩阵的第g列向量,表示将Qg中的所有元素先取反再转置;
将起始伴随矩阵T中非零元素对应的链组合作为目标链的并行送电断面;
将终止伴随矩阵R中非零元素对应的链组合作为目标链的并行受电断面。
本发明第二方面,提供一种基于图计算的电力潮流计算系统,包括:
数据查询模块,用于根据电力系统的拓扑结构图,得到电力系统的节点导纳矩阵以及雅克比矩阵的左上角方块矩阵和右下角方块矩阵;
构建模块,用于构建雅克比矩阵的左上角方块矩阵和右下角方块矩阵的消去树,基于所述消去树进行节点层数划分,并为电力系统的各节点赋值层数属性;
矩阵分解模块,用于基于各节点的层数属性,按照从0到最大层数的顺序遍历各节点,并通过基于图结构的矩阵分解方法,将雅克比矩阵进行矩阵分解,得到上三角矩阵和下三角矩阵;
迭代模块,用于获取当前迭代次数,当当前迭代次数小于预设最大迭代次数时,触发功率计算模块、判别模块及潮流计算模块;否则,结束迭代;
功率计算模块,用于根据节点导纳矩阵,通过基于图结构的功率变化量计算方法,计算各节点的功率变化量;
判别模块,用于获取各节点的功率变化量中的最大功率变化量,当最大功率变化量大于预设的收敛界限时,结束迭代;
电压计算模块,用于按照从0到最大层数的顺序遍历各节点,根据下三角矩阵,通过基于图结构的前代计算方法得到前代计算向量,并根据功率变化量、前代计算向量和上三角矩阵,通过基于图结构的回代计算方法,更新各节点的电压幅值和电压相角。
本发明第三方面,提供一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述基于图计算的电力潮流计算方法的步骤。
本发明第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述基于图计算的电力潮流计算方法的步骤。
与现有技术相比,本发明具有以下有益效果:
本发明基于图计算的电力潮流计算方法,通过基于图结构的矩阵分解方法、基于图结构的功率变化量计算方法、基于图结构的前代计算方法以及基于图结构的回代计算方法,以图描述的方式来表达矩阵计算过程,可以将更多的电力计算任务放在图数据库中完成,以此减少反复的数据导入导出操作,且能充分利用图数据库的分布式并行计算能力,以提升电力多源异构数据计算的效率,通过将矩阵计算变换为在图数据库中的操作,实现了软件层面存算一体的电力图计算方法,在遇到大型稀疏的电力图时,不需要频繁从图数据库中将数据导入图计算引擎中,提高了矩阵运算效率,提升电力图计算效率。并且,在每次计算过程中只用关注与计算相关的节点及其邻居节点,相比常规的矩阵计算方法,去除了矩阵中零元素的影响,避免了无用的循环遍历,能够同时实现所有节点的同步并行,在电力系统中的计算分析往往会进行很多的矩阵运算,利用图计算固有的节点并行计算能力,可以避免稀疏矩阵带来的冗余计算,节省计算成本,提高计算效率。
附图说明
图1为本发明实施例的基于图计算的电力潮流计算方法流程图。
图2为本发明实施例的矩阵的图表示方法示意图。
图3为本发明实施例的G(A)中节点p的出边示意图。
图4为本发明实施例的G(B)中节点q的入边示意图。
图5为本发明实施例的对p节点进行修正原理示意图。
图6为本发明实施例的消去注入功率为零的节点的原理示意图。
图7为本发明实施例的合并悬挂节点的原理示意图。
图8为本发明实施例的6母线系统结构示意图。
图9为本发明实施例的6母线系统状态图。
图10为本发明实施例的基于图计算的电力潮流计算系统结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,介绍本发明实施例中涉及的相关术语:
图数据库(Graph database):图数据库是以点、边为基础存储单元,以高效存储、查询图数据为设计原理的数据管理系统。
矩阵(Matrix):是一个按照长方阵列排列的复数或实数集合,最早来自于方程组的系数及常数所构成的方阵。
图描述(Graph description):通过图形的几何信息、拓扑信息和其他辅助信息对图形实体所进行的描述。
并行计算(parallel computing):是指同时使用多种计算资源解决计算问题的过程,是提高计算机系统计算速度和处理能力的一种有效手段。
潮流计算(Power flow calculation):指在给定电力系统网络拓扑、元件参数和发电、负荷参量条件下,计算有功功率、无功功率及电压在电力网中的分布。
下面结合附图对本发明做进一步详细描述:
参见图1,本发明一实施例中,提供一种基于图计算的电力潮流计算方法,包括以下步骤:
S1:根据电力系统的拓扑结构图,得到电力系统的节点导纳矩阵以及雅克比矩阵的左上角方块矩阵和右下角方块矩阵。
S2:构建雅克比矩阵的左上角方块矩阵和右下角方块矩阵的消去树,基于所述消去树进行节点层数划分,并为电力系统的各节点赋值层数属性。
S3:基于各节点的层数属性,按照从0到最大层数的顺序遍历各节点,并通过基于图结构的矩阵分解方法,将雅克比矩阵进行矩阵分解,得到上三角矩阵和下三角矩阵。
S4:获取当前迭代次数,当当前迭代次数小于预设最大迭代次数时,进行S5~S7;否则,结束迭代。
S5:根据节点导纳矩阵,通过基于图结构的功率变化量计算方法,计算各节点的功率变化量。
S6:获取各节点的功率变化量中的最大功率变化量,当最大功率变化量大于预设的收敛界限时,结束迭代。
S7:按照从0到最大层数的顺序遍历各节点,根据下三角矩阵,通过基于图结构的前代计算方法得到前代计算向量,并根据功率变化量、前代计算向量和上三角矩阵,通过基于图结构的回代计算方法,更新各节点的电压幅值和电压相角。
本发明基于图计算的电力潮流计算方法,通过基于图结构的矩阵分解方法、基于图结构的功率变化量计算方法、基于图结构的前代计算方法以及基于图结构的回代计算方法,以图描述的方式来表达矩阵计算过程,可以将更多的电力计算任务放在图数据库中完成,以此减少反复的数据导入导出操作,且能充分利用图数据库的分布式并行计算能力,以提升电力多源异构数据计算的效率,通过将矩阵计算变换为在图数据库中的操作,实现了软件层面存算一体的电力图计算方法,在遇到大型稀疏的电力图时,不需要频繁从图数据库中将数据导入图计算引擎中,提高了矩阵运算效率,提升电力图计算效率。并且,在每次计算过程中只用关注与计算相关的节点及其邻居节点,相比常规的矩阵计算方法,去除了矩阵中零元素的影响,避免了无用的循环遍历,能够同时实现所有节点的同步并行,在电力系统中的计算分析往往会进行很多的矩阵运算,利用图计算固有的节点并行计算能力,可以避免稀疏矩阵带来的冗余计算,节省计算成本,提高计算效率。
在一种可能的实施方式中,所述基于图结构的矩阵分解方法包括以下步骤:
步骤11:从电力系统的拓扑结构图的节点集V中,按节点编号从小到大依次遍历,将每次选择的节点作为节点p,并进行步骤12至19。
步骤12:从电力系统的拓扑结构图的节点集V中选择所有节点i;其中,由节点p指向节点i且节点i的节点编号大于节点p。
步骤13:将边p→i的边权除以节点p的自边边权。
步骤14:将节点i的自边边权减去边p→i与边i→p边权的乘积。
步骤15:从电力系统的拓扑结构图的边集W中选择所有节点对t,j;其中,节点t经过节点p指向节点j。
步骤16:将边t→j的边权减去边t→p与边p→j边权的乘积。
步骤17:从电力系统的拓扑结构图的边集W中选择所有节点对(r,y);其中,节点p既指向点r又指向y。
步骤18:将边r→y的边权减去边r→p与边p→y边权的乘积。
步骤19:将边y→r的边权减去边y→p与边p→r边权的乘积。
具体的,在雅克比矩阵分解时,将雅克比矩阵通过图描述的方式转换成图结构,其中对角元素表示为图中节点的自边边权,非对角元素表示为图中的邻边边权。具体地,因潮流计算中PQ分解法只用求解一次雅克比矩阵,且在求解过程中雅克比矩阵保持不变,因此为减少矩阵分解减数加快计算,在图计算场景中更推荐使用PQ分解法来实现潮流计算。
以PQ分解法为例,对于雅克比矩阵左上角分块矩阵H与右下角分块矩阵L(左下角与右上角分块矩阵均为零元素,不参与计算),分别建立两个临时计算图G(H)与G(L),其中H矩阵的对角元素为G(H)中节点的自边边权,节点编号与矩阵对角元素的顺序一致,非对角元素为邻边边权,对于图G(L)同理。然后分别对这两个矩阵生成的图进行矩阵分解,并分别参与后续计算。
在一种可能的实施方式中,所述通过基于图结构的功率变化量计算方法,计算各节点的功率变化量包括以下步骤:
在电力系统的拓扑结构图中查找所有s-(e)-t的路径,其中,s和t表示节点类型,(e)表示边类型;并以s作为i,t作为j,通过下式计算各节点的功率变化量,功率变化量包括有功功率不平衡量及无功功率不平衡量:
其中,ΔPi为节点i的有功功率不平衡量,ΔQi为节点i的无功功率不平衡量,Pi为节点i的注入有功功率,Qi为节点i的注入无功功率,Vi为节点i的电压相角,Gij为节点导纳矩阵中节点i与节点j的导纳的实部,Bij为节点导纳矩阵中节点i与节点j的导纳的虚部,δij为节点i与节点j的相角差。
在一种可能的实施方式中,所述通过基于图结构的前代计算方法得到前代计算向量包括以下步骤:
步骤21:将各节点的功率变化量赋值给电力系统的拓扑结构图中每个节点的自边,作为各节点自边的z值。
步骤22:从电力系统的拓扑结构图的节点集V中,按节点编号从小到大依次遍历,每次选择出一个节点p,执行步骤23至25。
步骤23:从电力系统的拓扑结构图的节点集V中选择所有节点i;其中,由节点p指向节点i且节点i的节点编号小于节点p。
步骤24:将节点p自边的z值减去边p→i的边权与节点i的自边的z值的乘积。
步骤25:将节点p自边的z值除以节点p的自边边权。
步骤26:将各节点自边的z值逐行排列,得到前代计算向量。
在一种可能的实施方式中,所述基于图结构的回代计算方法,更新各节点的电压幅值和电压相角包括以下步骤:
步骤31:将前代计算向量中的各元素值分别作为各节点自边的x属性值。
步骤32:从电力系统的拓扑结构图的节点集V中,按节点编号从小到大依次遍历,每次选择出一个节点p,执行以下步骤33至34。
步骤33:从电力系统的拓扑结构图的节点集V中选择所有节点i;其中,由节点p指向节点i且节点i的节点编号大于节点p。
步骤34:将节点p自边的x属性值减去边p→i的边权与节点i自边的x属性值的乘积。
步骤35:根据将各节点自边的x属性值,得到各节点的电压幅值变化量和电压相角变化量;以及根据各节点的电压幅值变化量和电压相角变化量,更新各节点的电压幅值和电压相角。
下面从原理方面具体阐述本发明基于图计算的电力潮流计算方法。
电力系统在发展过程中,为了快速的计算各支路潮流,衍生出了众多的潮流计算方法,从高斯-塞德尔迭代到牛顿-拉夫逊法再到P-Q分解法,这些演变使得计算量和数据存储量都大幅下降,其计算的大致步骤都可以归纳为以下步骤:
1)根据电路结构确定节点导纳矩阵。
2)设计所求变量的初值。
3)计算修正方程。
4)形成雅克比矩阵。
5)求解修正方程。
6)进行修正和迭代。
其中,迭代过程的公式如1至8所示:
其中,ΔPi、ΔQi分别示节点i处的有功功率的不平衡量与无功功率的不平衡量,Pi为节点i处注入的有功功率,Qi为节点i处注入的无功功率,Vi为节点i处的电压幅值,Gij、Bij分别是节点导纳矩阵中节点i与节点j的导纳的实部与虚部,δij为节点i与节点j的相角差。
其中,ΔV和Δδ分别表示电压幅值与相角的偏差,J表示雅克比矩阵。
其中,分别表示第k次迭代后的电压幅值与相角。
求得节点导纳矩阵后,在第k次迭代中,将与作为新的Vi和δi代入公式(1),得到有功功率和无功功率的不平衡量,将之代入公式(2)可以求得第k次迭代的ΔVk与Δδk,然后代入到公式(8)可以得到第k+1次迭代的Vk+1与δk+1。
其中矩阵的生成、公式1与公式6迭代的不平衡量的计算、收敛性判断、电压和功率的越界检测等都只与本节点或与它相连节点的值有关,与其它节点无关,故可以用节点并行来实现。公式2是整个计算中最为重要的一步,它可以通用化的表示为公式9的形式,其中A表示雅克比矩阵,b是功率不平衡量。对于该运算如果采用矩阵求逆的方式求解,则运算代价是很大的,所以通常采用LU分解进行求解,可以用节点的分层并行实现。
Ax=b (9)
可见,矩阵运算在电力计算等各个领域都占据重要地位。在电力系统中,潮流计算作为一项核心计算任务,在电网规划、电网运行及故障检测等各个阶段都发挥着重要作用,现有的求解潮流的主要方法,如Gauss-Seidel迭代、牛拉法、PQ分解法等往往都需要构建节点导纳矩阵及雅可比矩阵等。尤其随着机器学习等技术的蓬勃发展,各种优化求解问题的计算任务逐渐演变为矩阵运算问题,而求解的核心步骤通常都是利用矩阵运算来求解非齐次线性方程组,对于大规模计算任务,为了加快求解速度,通常都会借助于矩阵分解等方法来降低求解代价。
本发明基于图计算的电力潮流计算方法,使图数据库可以拥有矩阵计算的能力,增加图数据库的适用范围,将有关矩阵计算任务都放在数据库内进行,从而减少数据传输开销,从而可以提升基于图的电力潮流计算速度。
首先,介绍基于图结构的矩阵计算方法。
对于矩阵和有常见的邻接矩阵通常为方阵,因此在对矩阵进行图转换时,图的节点数量应等于矩阵尺寸较大的那一个维度,例如,对于矩阵A,若n≥m,则转换成图之后的节点数量应等于n,而边的数量则与矩阵中非对角元的非零元素个数相同,且图中编号大于m的节点不会有边指向它们,它们的入度为0。如2所示矩阵的维度为5×3,对应到图2中的5个节点,其中节点4和节点5的入度为0。若n≤m,则转换成图后的节点数量应等于m,且图中编号大于n的节点出度为0。
根据矩阵乘法已知,矩阵C中的每个元素的值可由下式得出:
因此,对于由C对应的新图G(C)中的每条边cpq都由G(A)中每个节点p的出边aip与G(B)中节点q的入边aiq共同决定,其中i∈{1,2,...,n}表示图中节点编号。若在G(A)中节点p到节点i没有边,即aip=0,则在G(B)中节点i到节点q是否有边都不会对图G(C)中的cpq产生影响。如图3所示的例子,cpq可由式(11)得出,其中只用计算在两个图中节点p到节点i与节点i到节点q都存在的边,当i=v时,因G(B)中边bvq不存在,故也不用考虑G(A)中的边apv。若cpq≠0,则在图G(C)中插入一条新的边cpq,否则将无新边产生。
因此,为了能快速的查询出C中的元素在图G(A)与G(B)中相对应的节点,可以在图中新增m×l条边,使之由G(A)中每个出度不为0的节点分别与G(B)每个入度不为零的节点相连,本发明将这种类型的边定义为eLink。具体地,eLink可以不带有任何属性,仅用来表示图G(C)中的边与G(A)和G(B)中的节点的一种对应关系,也可以用它作为G(C)的边。本发明的图描述方法在计算矩阵乘法时采用前一种方式,仅将eLink视为一种连接关系,而不存储新值。而eLink需要在矩阵乘法执行前建立,它可以是跟随G(A)和G(B)一起导入进数据库中,也可以是通过查询G(A)与G(B)时插入新边建立的。
由G(A)与G(B)生成eLink的边插入过程如下的算法1所示:
步骤1:假设G(A)对应的矩阵维度为m×n,G(B)对应的矩阵维度为n×l,则生成的新图G(C)对应的矩阵C的维度为m×l,并将m与l初始化为0。
步骤2:从全图中遍历每条边,若当前边属于G(A),则判断该边的源节点编号与m的大小,取其中最大值作为新的m;若当前边属于G(B),则判断该边的目标节点编号与l的大小,取其中最大值作为新的l。遍历完所有边后,即得到了更新后的m与l。
步骤3:初始化计数器i为0。
步骤4:当i小于m时,执行下面的步骤。
步骤5:初始化计数器j为0。
步骤6:当j小于l时,执行下面的步骤。
步骤7:插入一边eLink边,该边的源节点为G(A)中编号为i的节点,目标节点为G(B)中编号为j的节点。
步骤8:j的值加1,继续执行步骤6。
步骤9:内层循环结束,i的值加1,继续执行步骤4。
步骤10:当i的值大于等于m时,整个循环结束。
算法1中第3、4行中s.idx与t.idx表示该节点在矩阵中的顺序编号,第9行表示向数据库中插入一条边eLink边,其源节点为VA节点集合中第i个节点的,目标节点为VB节点集合中的第j个节点。
由算法1插入eLink边之后,基于图描述的矩阵计算过程如算法2所示。
在算法2中,对于第1行,若匹配到的每条边e都能属于G(A)或G(B),则它两边的节点s、t也必然是属于G(A)或G(B),而对于第5行,若匹配到的每条边都属于eLink边集,则它两端的节点s、t必然是分别属于G(A)与G(B)的,因为所有的eLink都是从G(A)中的节点指向G(B)中的节点。其中第1到第4行是为了分别查找出G(A)中每个节点的出度邻居(即由本节点指向其它节点)和G(B)中每个节点的入度邻居(即由其它节点指向本节点),并使用一个@符号开头的局部累加器变量存储所匹配到的邻居编号,以及边权。
算法2中第5到16行展示了矩阵乘法的具体过程,每次从s经过eLink到达t的这一个模式表示了图G(C)中由s.idx到t.idx的一条边,只需遍历s的出边,并与t的相同编号的入边权值做乘积,并累加求和,即可得到新边的边权。若s.idx与t.idx相等,则表示新边是一条自边。通过算法2可以得到G(C)中所有边(包括自边)的权值,即求得矩阵C,若需要在数据库中插入新图G(C),则可依次遍历得到的新边EC,和新的节点VC,执行插入命令。
算法2的具体步骤如下:
步骤1:遍历G(A)与G(B)中每条边,如果该边属于G(A),则将该边的目标节点编号与边的边权作为一个键值对存储在该边源节点的@Out累加器中;如果该边属于G(B),则将该边的源节点编号与边权作为一个键值对存储在该边目标节点的@In累加器中。
步骤2:遍历eLink中每条边e,它的源节点为s,目标节点为t,并执行下面的步骤。
步骤3:如果边e的源节点编号s.idx与目标节点编号t.idx不相等,则执行步骤4至步骤7。
步骤4:遍历源节点s的@Out累加器,取出其中的键值对<Idx,val>,并执行步骤5。
步骤5:以s.idx与t.idx作为G(C)中新边的源节点与目标节点编号,新边表示为EC(s.idx,t.idx),将该新边的边权加上val乘以t的@In累加器中由键Idx所对应的值。
步骤6:步骤4与步骤5对应的循环遍历结束。
步骤7:边EC(s.idx,t.idx)的边权加上s的自边边权乘以t的@In累加器中键s.idx对应的值,再加上t的自边边权乘以s的@Out累加器中t.dx对应的值。
步骤8:如果边e的源节点编号s.idx与目标节点编号t.idx相等,则执行步骤9至步骤12。
步骤9:遍历源节点s的@Out累加器,取出其中的键值对<Idx,val>,并执行步骤10。
步骤10:更新G(C)中以Idx为编号的节点自边边权,将其加上val与目标节点t的@In累加器中键Idx所对应值的乘积。
步骤11:步骤9与步骤10对应的循环遍历结束。
步骤12:更新G(C)中以Idx为编号的节点自边边权,将其加上源节点s与目标节点t自边边权的乘积。
步骤13:步骤2所对应的循环遍历结束。
由以上描述可知,对于G(C)中的每条边的计算都只与图G(A)的某几条边和图G(B)的某几条边有边,而与其它大部分边无关,计算过程中G(A)与G(B)的拓扑结构与边权不会发生变化,且产生的新边相互之间没有依赖关系,因此在矩阵乘法阶段可以实现并行计算。
其次,介绍基于图结构的矩阵分解方法。
在求解形如Ax=b的方程组时,因矩阵求逆的高时间复杂度,往往借助矩阵分解来加快求解速度。常见的矩阵分解方法有LU分解、Cholesky分解以及QR分解等,它们通常是将矩阵A分解成两个矩阵乘积的形式。这些分解方法都是对单个矩阵进行操作,因此可以用图G(A)来表达这种分解过程。
LU分解可以将一个方阵A分解成一个下三角矩阵L和一个上三角矩阵U的乘积,即A=LU。因为矩阵U的对角线元素全为1,故对分解结果的两个三角矩阵可以用一个矩阵来同时存储,其整个分解过程将在一个图中进行分解,分解完后的值同样存储在原图上。分解过程主要是对每个节点进行修正,修正顺序按节点编号由小到大顺序进行,对每个节点的修正分为如下三个步骤:
(1)邻边修正。
对于图中每个节点p,需要先对p发出的邻边做修正,如图5中的apj、apk及apl,修正公式如式12所示,即由节点p发出的每条邻边的边权除以节点p的自边边权。
api=api/app i(=u,v,w)>p (12)
(2)自边修正。
对由节点p指向的每个邻居的自边进行修正,如图5中的ajj、akk、all,修正公式如式13所示。
aii=aii-aip×api i(=u,v,w)>p (13)
(3)互边修正。
对于节点p的互边进行修正,如图5中u、v、w三个节点之间的所有边,修正方法如式14所示。
此处需要注意的是,对于原图中不存在的互边(如图5中虚线所示的虚拟边),如果通过互边修正后的边权不等于0,则需要在图中新增这些互边。对应于矩阵中那些原本为0的非对角元素,因矩阵分解而从0变为非0,本文将这些元素称之为注入元,将图中与这些注入元对应的边称为注入边。
算法3:有向图的注入边算法的具体过程如下:
步骤1:遍历图G中每个节点v,执行以下步骤。
步骤2:从图G中查找所有满足要求的节点对(i,j),要求由节点i经过节点v指向节点j,且节点i与节点j的编号均大于节点v。
步骤3:如果由i指向j的边e(i→j)不存在于图G的边集E中,则将边i→j插入到图G的边集中。
步骤4:从图G中查找所要满足要求的节点对(i,j),要求由节点v指向节点i同时由v指向j,且i与j的节点编号均大于v。
步骤5:对于步骤4查找到的所有节点对(i,j),如果由i指向j的边e(i→j)不存在于图G的边集E中,则将边e(i→j)与e(j→i)插入到图G的边集中。
步骤6:步骤1对应的循环遍历执行结束。
注入元(边)的数量和位置一般在矩阵分解前就可以确定,因此一般在对图进行分解前需要先有一步插入注入边的操作,注入边的插入过程如算法3所示。
在注入边过程完成后,原图的节点数量和各边权值未发生变化,但边的数量增加,操作完成后由G(V,E,A)演化成了G(V,E′,A)。
算法4:矩阵分解方法包括以下具体步骤:
步骤1:从图G的节点集V中,按节点编号从小到大依次遍历,每次选择出一个节点p,然后执行以下步骤。
步骤2:从节点集V中选择所有满足要求的节点i,要求由节点p指向节点i且i的节点编号大于p,然后执行步骤3与步骤4。
步骤3:更新边(p→i)的边权:将边(p→i)的边权除以节点p的自边边权。
步骤4:更新节点i的自边边权:将节点i的自边边权减去边(p→i)与边(i→p)边权的乘积。
步骤5:从边集V中选择所有满足要求的节点对(i,j),要求由节点i经过节点p指向节点j,然后执行步骤6。
步骤6:更新边(i→j)的边权:将边(i→j)的边权减去边(i→p)与边(p→j)边权的乘积。
步骤7:从边集V中选择所有满足要求的节点对(i,j),要求由节点p既指向节点i又指向j,然后执行步骤8与步骤9。
步骤8:更新边(i→j)的边权:将边(i→j)的边权减去边(i→p)与边(p→j)边权的乘积。
步骤9:更新边(j→i)的边权:将边(j→i)的边权减去边(j→p)与边(p→i)边权的乘积。
步骤10:步骤1对应的循环遍历结束。
此处仅以LU分解为例,对于Cholesky分解也是将矩阵分解成上三角矩阵和下三角矩阵的乘积形式,与本算法除了计算步骤些许不同外,计算逻辑依然适用。基于此,可以利用图数据库将数据建模为图模型后在图模型上完成矩阵乘法和矩阵分解运算,从而可以将一些常规的矩阵计算内容放在数据库内进行。
其次,介绍基于图结构的线性方程组求解方法。
线性方程组一般表示为Ax=b的形式,为了减少求解次数,常常采用如式(15)所示的矩阵分解方法,再进行经典的前代回代操作。现以LU分解为例,描述线性方程组求解的图描述过程,在将矩阵A分解为下三角矩阵L与上三角矩阵U后,其前代回代过程分别如式(16)和式(17)所示。
Ax=LUx=LLTx=LDLTx=b (15)
Lz=b (16)
Ux=z (17)
(1)前代计算。
在前代过程中,需要求得向量z,而矩阵L为下三角矩阵,由式(16)可得:
即:
由式(18)可以看出,向量z中每一项zi都与前面的z0到zi-1有关,进一步可以得出式(19)。因此需要按下标从小到大开始计算,对应到图中应按节点编号从小到大开始算起。为了计算方便,在前代过程中,将向量b中每个元素的值赋值给图中每个节点的自边,作为除邻接矩阵A外的第二边权,然后将该属性命名为z。基于图描述的前代运算计算流程如算法5所示。
算法5的具体过程如下:
步骤1:从图G的节点集V中,按节点编号从小到大依次遍历,每次选择出一个节点p,然后执行以下步骤。
步骤2:从节点集V中选择所有满足要求的节点i,要求由节点p指向节点i且i的节点编号小于p,然后执行步骤3。
步骤3:更新节点p自边的z值:将节点p自边的z值减去边(p→i)的边权与节点i的z属性的乘积。
步骤4:步骤2与步骤3执行完后,将节点p自边的z值除以节点p的自边边权。
步骤5:步骤1所对应的循环遍历执行结束。
(2)回代计算。
回代过程需要根据前代计算得出的向量z和上三角矩阵U求得最终的解向量x,其计算过程如式(20)所示,可以看出向量x中的每一项xi都与其后的每一项xi+1到xn有关,进一步可以得出式(21)。
因此在回代过程中,需要按下标从大到小开始计算,对应图节点编号也应从大到小开始。与前代过程类似,x的初值沿用前代计算的结果,即用向量z初始化向量x。基于图描述的计算流程如算法6所示,在该算法中,将之前的属性z称作属性x,计算完成后图中每个节点自边的第二边权则为向量x的值。
即:
算法6:回代运算的具体步骤如下:
步骤1:从图G的节点集V中,按节点编号从小到大依次遍历,每次选择出一个节点p,然后执行以下步骤。
步骤2:从节点集V中选择所有满足要求的节点i,要求由节点p指向节点i且i的节点编号大于p,然后执行步骤3。
步骤3:更新节点p自边的x属性:将节点p自边的x属性减去边(p→i)的边权与节点i自边的x属性的乘积。
步骤4:步骤1所对应的循环遍历结束。
基于以上前代、回代操作,可以利用一个图及一个新增自边属性完成线性方程组解向量x的求解,而无需再经过矩阵向图的映射,基于此,可以利用图数据库将数据建模为图模型后,在图模型上完成矩阵运算,从而可以将一些常规的矩阵计算内容放在数据库内进行。
最后,介绍电力潮流图并行计算的原理。
图的并行计算包括图的节点并行计算和图的分层并行计算。
(1)基于图的节点并行计算。
在图计算中,每个节点相互独立,它们的计算只与其邻居节点有关,与其它结点无关,所以能够同时实现所有节点的同步并行,在电力系统中的计算分析往往会进行很多的矩阵运算,利用图计算固有的节点并行计算能力,可以避免稀疏矩阵带来的冗余计算,节省计算成本,提高计算效率。
(2)基于图的分层并行计算。
在图计算中,将节点按计算相关性进行分层处理,同一层内的节点可以独立的同时计算,每一层的计算只与上一层的计算结果相关,这种层内并行,层间串行的计算方法就是图的分层并行计算。具体地,在电力系统计算任务中常采用矩阵分解的的方式进行矩阵运算,在矩阵分解以及方程组求解过程中,可以基于消去树理论将矩阵中的节点构建成一棵消去树,消去树的每一层内的节点间在计算时不存在依赖关系,可以同时计算,以此达到分层并行计算目的。
此外,该基于图计算的电力潮流计算方法在具体应用时,TigerGraph数据库在执行每项任务的同时,擅长并行处理,其采用的大规模并行处理(MPP:Massively ParallelProcessor)架构,使图中所有节点都可以通过相互之间连接的边发送和接收消息,每个节点和边都可以关联一个计算函数,并且每个节点和边可以同时作为并行的存储单元,通过充分利用多核CPU和内存计算,在每个节点和边上执行并行计算。且TigerGraph的GSQL语言中引入了ACCUM和POST-ACCUM子句以支持其SELECT块中原有的Map-Reduce语义。ACCUM子句充当Map步骤,并行处理所有匹配的边;POST-ACCUM子句充当Reduce步骤,合并处理从ACCUM子句发出的源或目标点的消息。因此TigerGraph可以很好的满足潮流计算中的节点并行和分层并行的计算要求。
潮流计算的关键步骤主要为根据电力系统的拓扑结构与各元件参数生成导纳矩阵、对节点功率方程求导生成雅克比矩阵、由节点功率方程计算有功功率和无功功率的变化量以及由雅克比迭代求解电压相位和幅值的修正量。
其中,有功功率和无功功率变化量的计算原理如式(1)所示,基于图结构的计算过程如算法7所示。
算法7的具体步骤如下:
步骤1:在图中查条所有s-(e)-t这样的路径,要求路径的起点s与终点t均为Bus类型,边e为Branch类型,以s作为i,t作为j,执行如公式3-6中第一个等号后方的计算过程计算每个节点的有功功率及无功功率,其中Vi、Vj为节点i与节点j的电压属性,即s.V、t.V。δij为节点i与节点j的相角差,可以两节点的相角属性差值求得,即s.A-t.A。Gij与Bij分别为导节点i与节点j间支路的电导与电纳,分别对应导纳矩阵中第i行第j列元素的实部与虚部,即Y[s.idx][t.idx][0]与Y[s.idx][t.idx][1];
步骤2:查找所有Bus节点,如果节点类型为pq或pv,则用该节点的注入有功功率减去步骤1计算出的有功功率,如果节点类型为pv节点,还需用该节点的注入无功功率减去步骤1计算出的无功功率。
算法7中,Y为导纳矩阵,其中,[0]表示取该位置元素的实部,[1]表示取该位置元素的虚部,ACCM表示匹配每条路径,即对每次匹配到的模式如s-(e)-t均会执行ACCUM下的操作。POST-ACCUM表示匹配每个节点,如s-(e)-t这样的模式,即便对于同一个s可能有多个不同的t,但它仅会对同一个s执行一次。
由公式(1)计算出每个节点的功率变化量后,可以公式(2)计算出每个节点的电压相位与幅值的修正量,基于图结构的计算过程如下所示:
(1)基于算法7求解出每个节点的功率变化量ΔP与ΔQ。
(2)对雅可比矩阵进行如算法4所示矩阵分解。
(3)基于算法5完成前代计算。
(4)基于算法6完成回代计算,从而求解出Δδ与ΔV。
其中,导纳矩阵与雅克比矩阵中的元素只与该元素对应的母线节点及其邻居结点有关,且在计算过程中各节点的值都不会发生变化,因此导纳矩阵和雅克比矩阵中的各值可以同时计算完成,求有功功率及无功功率变化量时也是同理,这可以充分发挥图数据库的并行计算优势,在保证将计算都放在图数据中进行的前提下,初步设计了一种基于图计算的潮流计算算法,其伪代码如算法8所示,凭借TigerGrph的并行计算优势,可以达到节点并行的要求,为实现图计算的分层并行,在算法8的查询遍历中利用Choleshy消去算法的分层并行实现方法。
算法8:潮流计算的分层并行实现方法包括以下步骤:
步骤1:查询图中所有如s-(e)-t的模式,其中s与t均为Bus母线节点类型,e为Branch分支类型。
步骤2:对于查询到的每条边e,可以获得其边属性e.R、e.X、e.B、e.Ratio等,对于查询到的每个节点s,可以获得其自边属性s.G与s.B,由这些属性根据节点导纳矩阵计算公式与雅克比矩阵计算公式分别计算出节点导纳矩阵Y的实部、虚部、雅克比矩阵中的分块矩阵H与L。
步骤2:查询图中每个节点s,由节点属性s.LoadP、s.LoadQ、s.GenP及s.GenQ等属性根据节点注入功率公式计算其注入功率。
步骤3:构建矩阵H与L的消去树。
步骤4:查找消去树查找每个节点,并为节点level属性赋值点当前所处消去树的层数。
步骤5:FOR循环,从0到最大层数maxLevel,每次选择属性level为l的节点,按照算法4所示进行矩阵分解。
步骤6:初始化迭代计数器i为0。
步骤7:当i小于总迭代次数时,循环执行步骤8至步骤12。
步骤8:执行算法7,计算节点功率变化量。
步骤9:查找图中每个Bus节点,找出其功率变化量与当前最大功率变化量maxPQ的值中最大的,赋值给maxPQ。
步骤10:判断maxPQ与收敛界限的大小,如果大于收敛界限,则退出循环。
步骤11:FOR循环,从0到最大层数maxLevel,每次选择属性level为l的节点,按照算法5与X2所示进行前代回代过程,计算功率不平衡量。
步骤12:查询所有Bus节点类型s,并更新属性s.V与s.A,将其加上新求得deltV与deltA。
步骤13:步骤7的循环结束。
在算法8中,步骤1的查询遍历操作的目的是生成节点导纳矩阵,在该过程中,导纳矩阵中非对角元素—互导纳在数值上表示为两个节点间导纳的负值,对角元素—自导纳在数值上表示为与该节点连接的所有支路的导纳的总和,由此可知矩阵中每个非零元素的生成只与它有关联的节点有关,因此导纳矩阵的生成是可以节点并行的,导纳矩阵中的所有非零元素都可以独立计算,且为了后续使用方便,矩阵中每个元素分别按实部和虚部存储且将整个计算过程视为一个单独的查询函数安装在数据库中,以供后续计算调用。
在一种可能的实施方式中,基于图计算的电力潮流计算方法还包括以下步骤:
S9:基于电力潮流计算结果,将具有相同发电机供电的母线划分为一个区域,将不同区域之间功率方向一致的输电回路合并成链,得到电力系统状态图。
S10:计算电力系统状态图的邻接矩阵,并根据邻接矩阵得到路径矩阵。
S11:将过载支路所在链作为目标链,根据路径矩阵计算目标链的起始伴随矩阵和终止伴随矩阵,并根据目标链的起始伴随矩阵和终止伴随矩阵得到目标链的并行送电断面和并行受电断面;以及将目标链的并行送电断面和并行受电断面取并集,得到过载支路的并行断面。
具体的,在潮流计算完成后,根据电网的实时有功潮流流向以及分布和网络拓扑结构绘制电网系统状态图,再根据图论中有向图得出的邻接矩阵和路径矩阵进行简易的矩阵运算,并由邻接矩阵求出相应的路径矩阵,最后只需经过稀疏矩阵的计算即可搜寻到与过载支路相关的输电断面,即可迅速找到受过载支路断路故障影响最严重的输电断面,从而有针对性的进行安全性保护,防止了因选择不明确而造成的连锁跳闸,满足保护的基本要求。
在一种可能的实施方式中,所述根据路径矩阵计算目标链的起始伴随矩阵和终止伴随矩阵,并根据目标链的起始伴随矩阵和终止伴随矩阵得到目标链的并行送电断面和并行受电断面包括:
通过下式计算目标链的起始伴随矩阵T和终止伴随矩阵R:
其中,k为目标链的起始区域序号,Qk=QMk,Q为中间矩阵,通过将路径矩阵加上一个单位矩阵得到,Mk为单位矩阵的第j列向量,表示将Qk中的所有元素先取反再转置,表示2个矩阵相应元素做逻辑于运算,A为电力系统状态图的邻接矩阵;g为目标链的终止区域序号,Qg=QMg,Mg为单位矩阵的第g列向量,表示将Qg中的所有元素先取反再转置。
将起始伴随矩阵T中非零元素对应的链组合作为目标链的并行送电断面。
将终止伴随矩阵R中非零元素对应的链组合作为目标链的并行受电断面。
具体的,计算潮流断面的大致步骤如下:
(1)设已知有向图G(V,E),假设图中有n个顶点,那么邻接矩阵便是一个n×n阶的方阵(aij)n×n,当线路vi和vj之间存在一条从vi指向vj的有向边时,那么aij=1,反之aij=0。类似的,若有向图中有一条从vj出发最终到达vi的路径,那么aij=1,反之aij=0。由此便可求出有向图G(V,E)的邻接矩阵A可以表示为:
(2)若有向图G(V,E)中存在n个节点,那么该有向图对应的路径矩阵P可以表示为:
路径矩阵表征了任意2节点之间是否存在有向通路。当线路k的始点和终点分别是νi和νj时,其上游节点,即电源,就是路径矩阵P中第i列的非零元;其下游节点,即负荷,就是路径矩阵P中第j列的非零元。
(3)利用图论的相关知识,将一些不影响计算的节点进行消去与合并,从而得到网络化简图G0(V0,E0)。下面说明两种可以化简的典型情况。
消去注入功率为零的节点。如图6所示,节点3的注入功率为零,线路l13和线路l32的功率始终相同,可以看成一条支路。因此,节点3并没有存在的必要,可以直接消去。合并悬挂节点。如图7所示,节点3只接受由节点4注入的功率,因此节点3不受其他节点影响,节点4便是节点3的悬挂节点,这样的两个节点可以合并为一个注入功率为W3+W4的新节点从而达到化简的目的。
(4)建立系统状态图,将具有相同发电机供电的母线划分为一个区域,将不同区域之间功率方向一致的输电回路合并成链,用Gr(Vr,Er)表示。下面以如图8所示的6母线系统说明建立系统状态图的过程。
a、确定母线与发电机之间的供电关系对图8进行分析便可以得到:
1)发电机A向所有母线供电。
2)发电机B向母线3、4、5和6供电。
3)发电机C向母线6供电。
b、确定由同一发电机供电的区,由多台发电机一同供电的母线集合为一个区。通过这样的定义就可以确定1条母线属于且仅仅属于一个区。由此,图8的6母线系统可以被划分为3个区:
1)发电机A供电,母线1和2直接相连构成的①区。
2)发电机A和B共同供电,母线3、4和5直接相连构成的②区。
3)发电机A、B和C共同供电,母线6构成的③区。
按照上文区的划分原则,系统的输电支路被分为了区内输电支路和区外输电支路两部分。链是连接两个区之间的有功功率流向从始至终完全一致的支路的集合。以图8为例,该6节点母线系统中包括了3条链:由支路1-3和2-5组成的连接区①和②的链L1;由支路4-6和5-6组成的连接区②和③的链L2;由支路2-6组成的连接区①和③的链L3。完成以上步骤以后,如图9所示的系统状态图就建立好了。其中,圆圈表示区,带箭头的线条表示链。系统状态图Gr(Vr,Er)清楚明白的反应了电力系统的有功潮流流向,简化了电力系统。
(5)由系统状态图Gr(Vr,Er)求出其邻接矩阵A。创建一个n×n阶的方阵(aij)n×n,n代表系统状态图的区数,若第i区与第j区间存在1条链且该链的潮流方向是从第i区指向第j区时,则邻接矩阵中的元素aij=1,反之aij=0。由此,可得图9所示6母线系统状态图的邻接矩阵表示为:
(6)由邻接矩阵A求出路径矩阵P。根据上文总结的建立路径矩阵的方法可知,当两个区之间存在有向通路时,即第i区到第j区从在有向路径时,路径矩阵中的元素Pij=1,反之pij=0。由此,可得图9所示6母线系统状态图的路径矩阵可以表示为:
(7)路径矩阵P加上一个n×n阶的单位矩阵E得到矩阵Q。
(8)设QJ为矩阵Q的第j列向量,Mj为单位阵E的第j列向量,通过下式得到矩阵Qj=QMj。
(9)设过载支路所在链Linki的起始区号为k,则可以得到链Linki所对应的伴随矩阵T,其计算公式为:其中,表示将Qk中的所有元素先取反再转置;表示2个矩阵相应元素做逻辑于运算。
(10)将并行送电断面Link(T)和并行受电断面Link(R)取并集,即可得到需要搜索的过载支路的并行断面。
具体的,根据上文说明,结合图9所示系统状态图可知,链Link2所在的起始区号为②,即可得到其相应的起始伴随矩阵。经计算得:
通过观察起始伴随矩阵T可以发现,t13和t23为非零元,所以其对应的链Link1-3和链Link2-3共同组成了Link2的并行输电断面Link(T)。根据系统状态图和初始简化网络图的关系即可发现,过载支路5-6的并行输电断面由支路2-6和支路4-6组成。同理可知,Link2的并行受电断面也是由链Link1-3和链Link2-3共同组成。Link(R)计算过程与Link(T)相同。
(11)将并行送电断面Link(T)和并行受电断面Link(R)取并集,即可得到需要搜索的过载支路的并行断面。
在本实施例中,过载支路5-6的并行断面为支路:2-6和4-6。
综上所述,本发明首先提出了一种基于图结构的矩阵计算方法,将矩阵计算和矩阵分解转换为图数据库中的图数据增删改查操作。同时,为提升电力图计算的效率,实现电力图计算的存算一体,本发明将PQ分解法(电力潮流计算方法中的一种)中的矩阵计算和矩阵分解步骤全部替换为基于图结构的矩阵计算和矩阵分解操作,实现了电力图并行计算的存算一体化。
相比于传统的电力计算方法,本发明采用图并行计算的方式完成计算,每个节点相互独立,它们的计算只与其邻居节点有关,与其它结点无关,所以能够同时实现所有节点的同步并行,在电力系统中的计算分析往往会进行很多的矩阵运算,利用图计算固有的节点并行计算能力,可以避免稀疏矩阵带来的冗余计算,节省计算成本,提高计算效率。
此外,相比于基于图数据库+图计算引擎的存算分离式电力图计算方法,本发明通过将矩阵计算变换为在图数据库中的操作,实现了软件层面存算一体的电力图计算方法,在遇到大型稀疏的电力图时,不需要频繁从图数据库中将数据导入图计算引擎中,提高了矩阵运算效率,提升电力图计算效率。
下述为本发明的装置实施例,可以用于执行本发明方法实施例。对于装置实施例中未披露的细节,请参照本发明方法实施例。
参见图10,本发明再一个实施例中,提供一种基于图计算的电力潮流计算系统,能够用于实现上述的基于图计算的电力潮流计算方法,具体的,该基于图计算的电力潮流计算系统包括数据查询模块、构建模块、矩阵分解模块、迭代模块、功率计算模块、判别模块以及电压计算模块。
其中,数据查询模块用于根据电力系统的拓扑结构图,得到电力系统的节点导纳矩阵以及雅克比矩阵的左上角方块矩阵和右下角方块矩阵;构建模块用于构建雅克比矩阵的左上角方块矩阵和右下角方块矩阵的消去树,基于所述消去树进行节点层数划分,并为电力系统的各节点赋值层数属性;矩阵分解模块用于基于各节点的层数属性,按照从0到最大层数的顺序遍历各节点,并通过基于图结构的矩阵分解方法,将雅克比矩阵进行矩阵分解,得到上三角矩阵和下三角矩阵;迭代模块用于获取当前迭代次数,当当前迭代次数小于预设最大迭代次数时,触发功率计算模块、判别模块及潮流计算模块;否则,结束迭代;功率计算模块用于根据节点导纳矩阵,通过基于图结构的功率变化量计算方法,计算各节点的功率变化量;判别模块用于获取各节点的功率变化量中的最大功率变化量,当最大功率变化量大于预设的收敛界限时,结束迭代;电压计算模块用于按照从0到最大层数的顺序遍历各节点,根据下三角矩阵,通过基于图结构的前代计算方法得到前代计算向量,并根据功率变化量、前代计算向量和上三角矩阵,通过基于图结构的回代计算方法,更新各节点的电压幅值和电压相角。
在一种可能的实施方式中,该基于图计算的电力潮流计算系统还包括断面计算模块,用于基于电力潮流计算结果,将具有相同发电机供电的母线划分为一个区域,将不同区域之间功率方向一致的输电回路合并成链,得到电力系统状态图;计算电力系统状态图的邻接矩阵,并根据邻接矩阵得到路径矩阵;将过载支路所在链作为目标链,根据路径矩阵计算目标链的起始伴随矩阵和终止伴随矩阵,并根据目标链的起始伴随矩阵和终止伴随矩阵得到目标链的并行送电断面和并行受电断面;以及将目标链的并行送电断面和并行受电断面取并集,得到过载支路的并行断面。
前述的基于图计算的电力潮流计算方法的实施例涉及的各步骤的所有相关内容均可以援引到本发明实施例中的基于图计算的电力潮流计算系统所对应的功能模块的功能描述,在此不再赘述。
本发明实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,另外,在本发明各个实施例中的各功能模块可以集成在一个处理器中,也可以是单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
本发明再一个实施例中,提供了一种计算机设备,该计算机设备包括处理器以及存储器,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器用于执行所述计算机存储介质存储的程序指令。处理器可能是中央处理单元(CentralProcessing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其是终端的计算核心以及控制核心,其适于实现一条或一条以上指令,具体适于加载并执行计算机存储介质内一条或一条以上指令从而实现相应方法流程或相应功能;本发明实施例所述的处理器可以用于基于图计算的电力潮流计算方法的操作。
本发明再一个实施例中,本发明还提供了一种存储介质,具体为计算机可读存储介质(Memory),所述计算机可读存储介质是计算机设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机可读存储介质既可以包括计算机设备中的内置存储介质,当然也可以包括计算机设备所支持的扩展存储介质。计算机可读存储介质提供存储空间,该存储空间存储了终端的操作系统。并且,在该存储空间中还存放了适于被处理器加载并执行的一条或一条以上的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机可读存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。可由处理器加载并执行计算机可读存储介质中存放的一条或一条以上指令,以实现上述实施例中有关基于图计算的电力潮流计算方法的相应步骤。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。
Claims (10)
1.一种基于图计算的电力潮流计算方法,其特征在于,包括:
S1:根据电力系统的拓扑结构图,得到电力系统的节点导纳矩阵以及雅克比矩阵的左上角方块矩阵和右下角方块矩阵;
S2:构建雅克比矩阵的左上角方块矩阵和右下角方块矩阵的消去树,基于所述消去树进行节点层数划分,并为电力系统的各节点赋值层数属性;
S3:基于各节点的层数属性,按照从0到最大层数的顺序遍历各节点,并通过基于图结构的矩阵分解方法,将雅克比矩阵进行矩阵分解,得到上三角矩阵和下三角矩阵;
S4:获取当前迭代次数,当当前迭代次数小于预设最大迭代次数时,进行S5~S7;否则,结束迭代;
S5:根据节点导纳矩阵,通过基于图结构的功率变化量计算方法,计算各节点的功率变化量;
S6:获取各节点的功率变化量中的最大功率变化量,当最大功率变化量大于预设的收敛界限时,结束迭代;
S7:按照从0到最大层数的顺序遍历各节点,根据下三角矩阵,通过基于图结构的前代计算方法得到前代计算向量,并根据功率变化量、前代计算向量和上三角矩阵,通过基于图结构的回代计算方法,更新各节点的电压幅值和电压相角。
2.根据权利要求1所述的基于图计算的电力潮流计算方法,其特征在于,所述基于图结构的矩阵分解方法包括:
步骤11:从电力系统的拓扑结构图的节点集V中,按节点编号从小到大依次遍历,将每次选择的节点作为节点p,并进行步骤12至19;
步骤12:从电力系统的拓扑结构图的节点集V中选择所有节点i;其中,由节点p指向节点i且节点i的节点编号大于节点p;
步骤13:将边p→i的边权除以节点p的自边边权;
步骤14:将节点i的自边边权减去边p→i与边i→p边权的乘积;
步骤15:从电力系统的拓扑结构图的边集W中选择所有节点对t,j;其中,节点t经过节点p指向节点j;
步骤16:将边t→j的边权减去边t→p与边p→j边权的乘积;
步骤17:从电力系统的拓扑结构图的边集W中选择所有节点对(r,y);其中,节点p既指向点r又指向y;
步骤18:将边r→y的边权减去边r→p与边p→y边权的乘积;
步骤19:将边y→r的边权减去边y→p与边p→r边权的乘积。
3.根据权利要求1所述的基于图计算的电力潮流计算方法,其特征在于,所述通过基于图结构的功率变化量计算方法,计算各节点的功率变化量包括:
在电力系统的拓扑结构图中查找所有s-(e)-t的路径,其中,s和t表示节点类型,(e)表示边类型;并以s作为i,t作为j,通过下式计算各节点的功率变化量,功率变化量包括有功功率不平衡量及无功功率不平衡量:
其中,ΔPi为节点i的有功功率不平衡量,ΔQi为节点i的无功功率不平衡量,Pi为节点i的注入有功功率,Qi为节点i的注入无功功率,Vi为节点i的电压相角,Gij为节点导纳矩阵中节点i与节点j的导纳的实部,Bij为节点导纳矩阵中节点i与节点j的导纳的虚部,δij为节点i与节点j的相角差。
4.根据权利要求1所述的基于图计算的电力潮流计算方法,其特征在于,所述通过基于图结构的前代计算方法得到前代计算向量包括:
步骤21:将各节点的功率变化量赋值给电力系统的拓扑结构图中每个节点的自边,作为各节点自边的z值;
步骤22:从电力系统的拓扑结构图的节点集V中,按节点编号从小到大依次遍历,每次选择出一个节点p,执行步骤23至25;
步骤23:从电力系统的拓扑结构图的节点集V中选择所有节点i;其中,由节点p指向节点i且节点i的节点编号小于节点p;
步骤24:将节点p自边的z值减去边p→i的边权与节点i的自边的z值的乘积;
步骤25:将节点p自边的z值除以节点p的自边边权;
步骤26:将各节点自边的z值逐行排列,得到前代计算向量。
5.根据权利要求1所述的基于图计算的电力潮流计算方法,其特征在于,所述基于图结构的回代计算方法,更新各节点的电压幅值和电压相角包括:
步骤31:将前代计算向量中的各元素值分别作为各节点自边的x属性值;
步骤32:从电力系统的拓扑结构图的节点集V中,按节点编号从小到大依次遍历,每次选择出一个节点p,执行以下步骤33至34;
步骤33:从电力系统的拓扑结构图的节点集V中选择所有节点i;其中,由节点p指向节点i且节点i的节点编号大于节点p;
步骤34:将节点p自边的x属性值减去边p→i的边权与节点i自边的x属性值的乘积;
步骤35:根据将各节点自边的x属性值,得到各节点的电压幅值变化量和电压相角变化量;以及根据各节点的电压幅值变化量和电压相角变化量,更新各节点的电压幅值和电压相角。
6.根据权利要求1所述的基于图计算的电力潮流计算方法,其特征在于,还包括:
S9:基于电力潮流计算结果,将具有相同发电机供电的母线划分为一个区域,将不同区域之间功率方向一致的输电回路合并成链,得到电力系统状态图;
S10:计算电力系统状态图的邻接矩阵,并根据邻接矩阵得到路径矩阵;
S11:将过载支路所在链作为目标链,根据路径矩阵计算目标链的起始伴随矩阵和终止伴随矩阵,并根据目标链的起始伴随矩阵和终止伴随矩阵得到目标链的并行送电断面和并行受电断面;以及将目标链的并行送电断面和并行受电断面取并集,得到过载支路的并行断面。
7.根据权利要求6所述的基于图计算的电力潮流计算方法,其特征在于,所述根据路径矩阵计算目标链的起始伴随矩阵和终止伴随矩阵,并根据目标链的起始伴随矩阵和终止伴随矩阵得到目标链的并行送电断面和并行受电断面包括:
通过下式计算目标链的起始伴随矩阵T和终止伴随矩阵R:
其中,k为目标链的起始区域序号,Qk=QMk,Q为中间矩阵,通过将路径矩阵加上一个单位矩阵得到,Mk为单位矩阵的第k列向量,表示将Qk中的所有元素先取反再转置,表示2个矩阵相应元素做逻辑于运算,A为电力系统状态图的邻接矩阵;g为目标链的终止区域序号,Qg=QMg,Mg为单位矩阵的第g列向量,表示将Qg中的所有元素先取反再转置;
将起始伴随矩阵T中非零元素对应的链组合作为目标链的并行送电断面;
将终止伴随矩阵R中非零元素对应的链组合作为目标链的并行受电断面。
8.一种基于图计算的电力潮流计算系统,其特征在于,包括:
数据查询模块,用于根据电力系统的拓扑结构图,得到电力系统的节点导纳矩阵以及雅克比矩阵的左上角方块矩阵和右下角方块矩阵;
构建模块,用于构建雅克比矩阵的左上角方块矩阵和右下角方块矩阵的消去树,基于所述消去树进行节点层数划分,并为电力系统的各节点赋值层数属性;
矩阵分解模块,用于基于各节点的层数属性,按照从0到最大层数的顺序遍历各节点,并通过基于图结构的矩阵分解方法,将雅克比矩阵进行矩阵分解,得到上三角矩阵和下三角矩阵;
迭代模块,用于获取当前迭代次数,当当前迭代次数小于预设最大迭代次数时,触发功率计算模块、判别模块及潮流计算模块;否则,结束迭代;
功率计算模块,用于根据节点导纳矩阵,通过基于图结构的功率变化量计算方法,计算各节点的功率变化量;
判别模块,用于获取各节点的功率变化量中的最大功率变化量,当最大功率变化量大于预设的收敛界限时,结束迭代;
电压计算模块,用于按照从0到最大层数的顺序遍历各节点,根据下三角矩阵,通过基于图结构的前代计算方法得到前代计算向量,并根据功率变化量、前代计算向量和上三角矩阵,通过基于图结构的回代计算方法,更新各节点的电压幅值和电压相角。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述基于图计算的电力潮流计算方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述基于图计算的电力潮流计算方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310423537.8A CN116861031A (zh) | 2023-04-19 | 2023-04-19 | 基于图计算的电力潮流计算方法、系统、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310423537.8A CN116861031A (zh) | 2023-04-19 | 2023-04-19 | 基于图计算的电力潮流计算方法、系统、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116861031A true CN116861031A (zh) | 2023-10-10 |
Family
ID=88227371
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310423537.8A Pending CN116861031A (zh) | 2023-04-19 | 2023-04-19 | 基于图计算的电力潮流计算方法、系统、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116861031A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117828242A (zh) * | 2024-03-06 | 2024-04-05 | 国网上海能源互联网研究院有限公司 | 一种矩阵压缩存储格式的fpga潮流计算系统 |
-
2023
- 2023-04-19 CN CN202310423537.8A patent/CN116861031A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117828242A (zh) * | 2024-03-06 | 2024-04-05 | 国网上海能源互联网研究院有限公司 | 一种矩阵压缩存储格式的fpga潮流计算系统 |
CN117828242B (zh) * | 2024-03-06 | 2024-05-14 | 国网上海能源互联网研究院有限公司 | 一种矩阵压缩存储格式的fpga潮流计算系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Li et al. | Decentralized multi-area dynamic economic dispatch using modified generalized benders decomposition | |
CN103605852B (zh) | 一种用于大规模电网机电暂态实时仿真的并行拓扑方法 | |
CN111625914A (zh) | 一种短路电流计算方法及系统 | |
CN104466959A (zh) | 电力系统关键线路辨识方法和系统 | |
CN116861031A (zh) | 基于图计算的电力潮流计算方法、系统、设备及介质 | |
CN111181164B (zh) | 一种改进的主从分裂输配协同潮流计算方法及系统 | |
Liu et al. | Evolving graph based power system EMS real time analysis framework | |
CN108549758A (zh) | 一种适用于fpga的模块化多电平换流器实时仿真方法 | |
Bertsekas et al. | Parallel asynchronous Hungarian methods for the assignment problem | |
CN108233367A (zh) | 含分布式电源配电网最优孤岛划分计算方法 | |
CN115329411A (zh) | 基于先验规则和深度神经网络的舰船电气图纸布局方法 | |
Alvarado et al. | Sparsity in large-scale network computation | |
CN112103950B (zh) | 一种基于改进gn分裂算法的电网分区方法 | |
Helmi et al. | Modular smart grid intelligence: Replicable concept for diverse scenarios | |
CN105069517A (zh) | 基于混合算法的配电网多目标故障恢复方法 | |
CN111834996B (zh) | 电网线损计算方法和装置 | |
Yuan et al. | Exploration of bi-level PageRank algorithm for power flow analysis using graph database | |
CN116613746A (zh) | 一种基于os2的分布式电网建模模型 | |
CN116777670A (zh) | 一种配电网理论线损分层并行计算方法、系统和终端 | |
CN111276962A (zh) | 一种配电网的运行方法及系统 | |
Zeng et al. | Non-Convex optimal power flow implementation by distributed Meta-Heuristic optimization algorithm | |
CN107437811B (zh) | 电力系统暂态稳定约束最优潮流并行计算方法 | |
CN111106631A (zh) | 配电网的分布式无功调度方法、系统、设备及存储介质 | |
Tian et al. | Hypergraph modeling and vulnerability assessment of power network | |
Chen et al. | A new network segmentation method integrating branch cutting and node splitting |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |