最新的毛片基地免费,国产国语一级毛片,免费国产成人高清在线电影,中天堂国产日韩欧美,中国国产aa一级毛片,国产va欧美va在线观看,成人不卡在线

一種基于靜態(tài)拓?fù)鋶u的電網(wǎng)連通性分析方法與流程

文檔序號:11251564閱讀:1700來源:國知局
一種基于靜態(tài)拓?fù)鋶u的電網(wǎng)連通性分析方法與流程



背景技術(shù):

電網(wǎng)連通性分析在電力系統(tǒng)中有著重要作用。如電源點(diǎn)追溯、短路計(jì)算、停電分析等,都是基于電網(wǎng)連通性分析的應(yīng)用。相對于其它領(lǐng)域的連通性分析業(yè)務(wù),電網(wǎng)連通性分析具有設(shè)備數(shù)量和種類多、拓?fù)浣Y(jié)構(gòu)復(fù)雜、節(jié)點(diǎn)狀態(tài)變動(dòng)頻繁的特點(diǎn),因此,電網(wǎng)連通性分析的方法必須具有高效處理大量拓?fù)涔?jié)點(diǎn)的能力,并且具有較高的實(shí)時(shí)性。

現(xiàn)有的電網(wǎng)拓?fù)溥B通性分析方法一般有兩種:鄰接矩陣法和樹/有向圖搜索法。

鄰接矩陣法是構(gòu)造一個(gè)n*n的0-1矩陣m(n為拓?fù)涔?jié)點(diǎn)數(shù)),若節(jié)點(diǎn)i可達(dá)節(jié)點(diǎn)j,則將矩陣m[i][j]置為1,進(jìn)行連通性分析時(shí),從指定節(jié)點(diǎn)遍歷為矩陣m中為1的要素即可,鄰接矩陣法實(shí)現(xiàn)簡單,實(shí)時(shí)性高,但矩陣較為稀疏時(shí),空間浪費(fèi)較大,且隨著節(jié)點(diǎn)數(shù)n的增長,算法的時(shí)間成本和空間成本都按平方增長,不適用于節(jié)點(diǎn)數(shù)較多的分析。

樹/有向圖搜索法是將連通關(guān)系構(gòu)建為一個(gè)樹或有向圖,進(jìn)行連通性分析時(shí)采用深度優(yōu)先或廣度優(yōu)先的方式,遍歷樹/有向圖中的節(jié)點(diǎn)。樹/有向圖搜索法的時(shí)間、空間開銷都比鄰接矩陣法要好,但在實(shí)現(xiàn)上比鄰接矩陣法要復(fù)雜許多,同時(shí),當(dāng)節(jié)點(diǎn)連接狀態(tài)發(fā)生變化時(shí),需要對樹進(jìn)行調(diào)整,當(dāng)節(jié)點(diǎn)數(shù)較多時(shí),樹的深度會較深,導(dǎo)致節(jié)點(diǎn)的調(diào)整開銷較大,對系統(tǒng)實(shí)時(shí)性造成影響。

在電力領(lǐng)域,一般會采用拓?fù)鋶u分析的方法對上述方法進(jìn)行優(yōu)化:預(yù)先把具有直接或間接連接關(guān)系的設(shè)備聚合在一起,得到一個(gè)拓?fù)鋶u。進(jìn)行分析時(shí),只需在待分析設(shè)備所屬的拓?fù)鋶u上進(jìn)行遍歷,而不需要涉及整個(gè)電網(wǎng),大大減少了運(yùn)算量。但電網(wǎng)中的開關(guān)狀態(tài)發(fā)生變化,或需要模擬某些設(shè)備故障時(shí),可能會對拓?fù)鋶u進(jìn)行合并/拆分操作,性能開銷比較大。



技術(shù)實(shí)現(xiàn)要素:

本文根據(jù)電網(wǎng)的特點(diǎn),基于深度優(yōu)先的樹/有向圖搜索法和現(xiàn)有拓?fù)鋶u聚合方法,提出了一種基于靜態(tài)拓?fù)鋶u的電網(wǎng)連通性分析方法,使得電網(wǎng)連通性分析系統(tǒng)擁有較高性能和實(shí)時(shí)性的同時(shí),還兼具高擴(kuò)展性、易于部署到分布式環(huán)境中的優(yōu)點(diǎn)。

一種基于靜態(tài)拓?fù)鋶u的電網(wǎng)連通性分析方法,所述分析方法包括以下步驟:

步驟(1)建立靜態(tài)拓?fù)鋶u視所有開關(guān)設(shè)備均處于斷開狀態(tài),遍歷所有設(shè)備節(jié)點(diǎn),將有連通關(guān)系的設(shè)備合為一組,直到遍歷結(jié)束,每組節(jié)點(diǎn)即為一個(gè)拓?fù)鋶u,各節(jié)點(diǎn)數(shù)據(jù)結(jié)構(gòu)中的相鄰設(shè)備信息也在此次遍歷中得到;

步驟(2)計(jì)算各設(shè)備的動(dòng)態(tài)可達(dá)設(shè)備;

步驟(3)建立通用遍歷器:通用遍歷器的工作步驟如下:

(3.1)接收應(yīng)用程序傳入的節(jié)點(diǎn)訪問函數(shù)visitor、終止條件函數(shù)isend;

(3.2)構(gòu)建一個(gè)棧s,將起始節(jié)點(diǎn)壓入棧中;

(3.3)從棧s中取出棧頂節(jié)點(diǎn)e,若e被標(biāo)記為已讀,則轉(zhuǎn)至步驟(3.6);

(3.4)將e標(biāo)記為已讀,并將e遞給終止條件函數(shù)isend,若函數(shù)isend(e)返回結(jié)束標(biāo)記,則結(jié)束整個(gè)遍歷過程;

(3.5)將e的靜態(tài)可達(dá)設(shè)備壓入棧中,傳遞e給訪問函數(shù)visitor處理,并根據(jù)visitor的返回結(jié)果,決定將e的哪些動(dòng)態(tài)可達(dá)設(shè)備壓入棧中;

(3.6)若棧s中尚有元素,則跳轉(zhuǎn)至步驟(3.3),否則結(jié)束整個(gè)遍歷過程;

步驟(4)運(yùn)行通用遍歷器,收集訪問函數(shù)visitor得到的節(jié)點(diǎn),按需求的格式返回查詢結(jié)果;

步驟(5)若開關(guān)狀態(tài)發(fā)生變動(dòng),或設(shè)備被模擬為故障等,修改所影響設(shè)備的相關(guān)狀態(tài)即可;

所述設(shè)備節(jié)點(diǎn)的數(shù)據(jù)結(jié)構(gòu)為存儲設(shè)備連接關(guān)系的一種結(jié)構(gòu)體,包含了設(shè)備基本信息,設(shè)備的直接相鄰設(shè)備(下簡稱靜態(tài)可達(dá)設(shè)備),及在某組開關(guān)閉合時(shí)設(shè)備的直接相鄰設(shè)備(下簡稱動(dòng)態(tài)可達(dá)設(shè)備);

所述的靜態(tài)拓?fù)鋶u為在電網(wǎng)中,所有開關(guān)設(shè)備均斷開時(shí),具有直接或間接連接關(guān)系的一組設(shè)備組成的一個(gè)集群,與現(xiàn)有技術(shù)中的拓?fù)鋶u相比,靜態(tài)拓?fù)鋶u不隨著開關(guān)狀態(tài)、模擬狀態(tài)等信息發(fā)生合并或拆分。

所述的通用遍歷器為一段通用的電網(wǎng)遍歷程序,只需傳入節(jié)點(diǎn)訪問函數(shù)、終止條件函數(shù),即可實(shí)現(xiàn)所需連通性分析功能,達(dá)到代碼高度復(fù)用,功能易于擴(kuò)展的目的;

所述步驟(1)遍歷所有設(shè)備節(jié)點(diǎn)過程中,對于遍歷到的節(jié)點(diǎn)e,判斷e與現(xiàn)有設(shè)備是否具有連接關(guān)系,若無,則建立新拓?fù)鋶ut,將e加入t中;若有且只有一個(gè)拓?fù)鋶ut0與e有連接關(guān)系,則將e加入t0;若有多個(gè)拓?fù)鋶ut1,t2,...tn與e具有連接關(guān)系,則將t2...tn合并到t1,并將e加入t1;

所述步驟(2)計(jì)算各設(shè)備的動(dòng)態(tài)可達(dá)設(shè)備時(shí),將所有開關(guān)視為閉合、所有設(shè)備視為無故障,此時(shí)針對各個(gè)設(shè)備,計(jì)算出與之直接相連的設(shè)備,并出去其靜態(tài)可達(dá)設(shè)備,即得到其動(dòng)態(tài)可達(dá)設(shè)備;

所述步驟(3.5)中,visitor的返回結(jié)果視具體需求而定,如“根據(jù)開關(guān)狀態(tài)決定入棧設(shè)備”、“根據(jù)模擬狀態(tài)和開關(guān)狀態(tài)決定入棧設(shè)備”、“無視開關(guān)狀態(tài),只由模擬狀態(tài)決定入棧設(shè)備”等。

與現(xiàn)有技術(shù)相比,本發(fā)明具有以下有益效果:相比于現(xiàn)有的拓?fù)鋶u分析方法,本發(fā)明遍歷的節(jié)點(diǎn)數(shù)和深度一致,只是多了一步是否遍歷動(dòng)態(tài)可達(dá)節(jié)點(diǎn)的判斷,因此,兩種方法在分析過程中的耗時(shí)相差無幾(實(shí)測本方法比現(xiàn)有拓?fù)鋶u分析方法慢5%左右);在開關(guān)狀態(tài)、模擬狀態(tài)變更時(shí),只需修改對應(yīng)節(jié)點(diǎn)的狀態(tài),不會進(jìn)行拆分/合并操作,大幅減少了系統(tǒng)在節(jié)點(diǎn)狀態(tài)時(shí)的性能開銷;因此,本方法以極小的分析時(shí)的開銷為代價(jià),兼具了性能和實(shí)時(shí)性。

本方法將遍歷方法提取為遍歷器,在開發(fā)具體連通性分析的業(yè)務(wù)時(shí),只需額外編寫訪問函數(shù)visitor、終止條件函數(shù)isend即可,代碼高度復(fù)用,具有很強(qiáng)的可擴(kuò)展性。

龐大的電網(wǎng)被分割成了多個(gè)拓?fù)鋶u,可方便地將拓?fù)鋶u分散到分布式系統(tǒng)中,由于拓?fù)鋶u不會進(jìn)行拆分/合并的修改操作,故無需處理由于修改操作帶來的分布式系統(tǒng)一致性問題。

附圖說明

圖1為各子程序分工和交互示意圖;

圖2為通用遍歷器的工作流程圖。

具體實(shí)施方式

下面結(jié)合實(shí)施例對本發(fā)明的技術(shù)方案作進(jìn)一步詳細(xì)說明,但本發(fā)明并不局限于以下技術(shù)方案。

實(shí)施例1所述電網(wǎng)連通性分析方法做配電網(wǎng)上游追溯

電源點(diǎn),即為指定設(shè)備供電的的設(shè)備,在配電網(wǎng)中,電源點(diǎn)一般為變電站。

上游設(shè)備,即從電源點(diǎn)到達(dá)待分析設(shè)備所經(jīng)歷的設(shè)備,這些設(shè)備是否正常工作、工作負(fù)載等參數(shù),對于待分析設(shè)備的供電可靠性有著重要的意義。

配電網(wǎng)上游追溯,即查詢配電網(wǎng)中待分析設(shè)備的上游設(shè)備的過程。

步驟(1)建立靜態(tài)拓?fù)鋶u本實(shí)施例中的數(shù)據(jù)倉庫為hbase數(shù)據(jù)庫,編寫mapreduce模型程序,將數(shù)據(jù)庫中的數(shù)據(jù)分片地讀到map程序節(jié)點(diǎn)上,map程序節(jié)點(diǎn)將接收到的數(shù)據(jù)分片封裝為設(shè)備節(jié)點(diǎn)對象,并將具有連通性的設(shè)備節(jié)點(diǎn)標(biāo)上相同的拓?fù)鋶u編號,傳遞給reduce程序節(jié)點(diǎn);

reduce程序節(jié)點(diǎn)收集map程序節(jié)點(diǎn)傳遞的拓?fù)鋶u分組的信息,并將拓?fù)鋶u分組信息進(jìn)行合并,得到初始拓?fù)鋶u;

最后,將初始拓?fù)鋶u分發(fā)到服務(wù)器集群中;

步驟(2)建立動(dòng)態(tài)可達(dá)關(guān)系視所有開關(guān)設(shè)備均為閉合狀態(tài),得到各節(jié)點(diǎn)在某組開關(guān)閉合時(shí)的相鄰節(jié)點(diǎn);

步驟(3)建立通用遍歷器:通用遍歷器的工作步驟如下:

(3.1)設(shè)計(jì)訪問函數(shù)visitor、終止條件函數(shù)isend

visitor函數(shù)的設(shè)計(jì)尋找上游設(shè)備,本質(zhì)上就是從電網(wǎng)無向圖中獲取由待分析設(shè)備出發(fā)的所有分支,并從這些分支中獲取一條包含電源點(diǎn)的路徑,因此visitor設(shè)計(jì)為:

在visitor中建立一個(gè)棧rs,當(dāng)visitor接收到通用遍歷器傳入的設(shè)備e時(shí),判斷e是否與棧rs的棧頂元素是否相鄰或動(dòng)態(tài)可達(dá),若是,則e壓入棧rs;若否,則說明通用遍歷器已遍歷完一個(gè)子分支,故需要將棧rs中非本分支的設(shè)備剔除,具體做法是重復(fù)移除rs的棧頂元素,直至棧頂元素與e相鄰或動(dòng)態(tài)可達(dá)或rs為空;

visitor的返回值為”chosebyswitch”,即要求將e的動(dòng)態(tài)可達(dá)設(shè)備中開關(guān)閉合的設(shè)備壓入棧s中。

isend函數(shù)的設(shè)計(jì)當(dāng)傳入isend函數(shù)的節(jié)點(diǎn)e為電源點(diǎn)時(shí),返回結(jié)束標(biāo)記;

(3.2)構(gòu)建一個(gè)棧s,將待分析設(shè)備壓入棧中;

(3.3)從棧s中取出棧頂節(jié)點(diǎn)e,若e被標(biāo)記為已讀,則轉(zhuǎn)至步驟(3.6);

(3.4)將e標(biāo)記為已讀,并將e遞給終止條件函數(shù)isend,若函數(shù)isend(e)返回結(jié)束標(biāo)記,則結(jié)束整個(gè)遍歷過程;

(3.5)將e的靜態(tài)可達(dá)設(shè)備壓入棧中,傳遞e給訪問函數(shù)visitor處理,并根據(jù)visitor的返回結(jié)果,決定將e的哪些動(dòng)態(tài)可達(dá)設(shè)備壓入棧中;

(3.6)若棧s中尚有元素,則跳轉(zhuǎn)至步驟(3.3),否則結(jié)束整個(gè)遍歷過程。

步驟(4)運(yùn)行通用遍歷器,收集訪問函數(shù)visitor得到的節(jié)點(diǎn),按需求的格式返回查詢結(jié)果;

步驟(5)若開關(guān)狀態(tài)發(fā)生變動(dòng),或設(shè)備被模擬為故障等,修改所影響設(shè)備的相關(guān)狀態(tài)即可;

當(dāng)遍歷過程結(jié)束后,若isend未返回過結(jié)束標(biāo)記,則說明未找到電源點(diǎn),即待分析設(shè)備處于斷電狀態(tài),故不存在其上游設(shè)備;若isend返回過結(jié)束標(biāo)記,則說明找到了電源點(diǎn),visitor中的棧rs中的元素即為待分析設(shè)備的上游設(shè)備。

實(shí)施例2所述電網(wǎng)連通性分析方法做配電網(wǎng)停電模擬分析

停電模擬分析,即假設(shè)電網(wǎng)中的一個(gè)或多個(gè)設(shè)備發(fā)生故障,分析假設(shè)故障的設(shè)備會導(dǎo)致指定片區(qū)中的哪些設(shè)備斷電。

由于設(shè)計(jì)了通用遍歷器,故電網(wǎng)模擬分析的步驟和程序均可復(fù)用實(shí)施例1中的對應(yīng)部分,只需重新設(shè)計(jì)實(shí)施例1中步驟(3.1)用到的訪問函數(shù)visitor、終止條件函數(shù)isend,并設(shè)待分析設(shè)備為片區(qū)的電源點(diǎn)即可。

visitor函數(shù)的設(shè)計(jì)在visitor中建立一個(gè)列表list,當(dāng)visitor接收到通用遍歷器傳入的設(shè)備e時(shí),將e加入list中;

visitor的返回值為”chosebyswitchandsim”,即要求將e的動(dòng)態(tài)可達(dá)設(shè)備中開關(guān)閉合且未被模擬為故障的設(shè)備壓入棧s中。

isend函數(shù)的設(shè)計(jì)當(dāng)傳入isend函數(shù)的節(jié)點(diǎn)e為電源點(diǎn)時(shí),返回結(jié)束標(biāo)記;

當(dāng)遍歷過程結(jié)束或,visitor中的列表list即為帶電設(shè)備,將片區(qū)內(nèi)所有設(shè)備與list中的設(shè)備相減,所得結(jié)果即為斷電設(shè)備,至此停電模擬分析完成。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1