最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

【布局優(yōu)化】基于粒子群算法求解配電網(wǎng)重構(gòu)matlab源碼

2021-08-15 14:54 作者:Matlab工程師  | 我要投稿

?傳統(tǒng)配電網(wǎng)的運(yùn)行優(yōu)化問(wèn)題主要涉及發(fā)電機(jī)機(jī)端電壓的調(diào)整、變壓器分接頭的調(diào)節(jié)和電容器容量的配置。在接入分布式電源和儲(chǔ)能裝置之后,配電網(wǎng)的優(yōu)化問(wèn)題還將包括對(duì)分布式電源和儲(chǔ)能裝置的控制。配電網(wǎng)運(yùn)行優(yōu)化問(wèn)題的目標(biāo)函數(shù)主要有最小化系統(tǒng)的有功功率損耗,減少設(shè)備的運(yùn)行成本等等。優(yōu)化變量包括連續(xù)型變量即分布式電源和儲(chǔ)能裝置的有功無(wú)功等,離散型變量即變壓器的分接頭和電容器的投切組數(shù),接入設(shè)備的位置和容量等。約束條件主要有1.發(fā)電機(jī)機(jī)端電壓的最大最小限制2.變壓器分接頭的檔位限制以及電容器的容量限制3.變壓器和電容器每日最大操作數(shù)的限制, 4. 分布式電源和儲(chǔ)能裝置的有功無(wú)功功率約束等。綜合配電網(wǎng)優(yōu)化的目標(biāo)函數(shù)、變量以及約束條件,該優(yōu)化問(wèn)題可以看作是一個(gè)多目標(biāo)、多變量的混合整數(shù)非線(xiàn)性規(guī)劃問(wèn)題。
針對(duì)配電網(wǎng)的優(yōu)化問(wèn)題,目前主要的求解方法有傳統(tǒng)的數(shù)學(xué)優(yōu)化方法和人工智能方法。傳統(tǒng)的數(shù)學(xué)優(yōu)化方法主要包括線(xiàn)性/非線(xiàn)性規(guī)劃法、動(dòng)態(tài)規(guī)劃法等,而人工智能方法主要包括遺傳算法、模擬退火法和粒子群優(yōu)化算法等。傳統(tǒng)的優(yōu)化算法從全局考慮整個(gè)優(yōu)化問(wèn)題,原理嚴(yán)格,計(jì)算時(shí)間較短。但是對(duì)目標(biāo)函數(shù)和優(yōu)化變量的初值要求較高。人工智能算法對(duì)目標(biāo)函數(shù)和初值的要求不高,并且能夠求解高維度的優(yōu)化問(wèn)題,其缺點(diǎn)是容易陷入局部最優(yōu),計(jì)算時(shí)間較長(zhǎng)。
綜上,配電網(wǎng)的優(yōu)化方向主要內(nèi)容有:(1)含分布式發(fā)電設(shè)備與儲(chǔ)能設(shè)備的運(yùn)行方式研究(2)配電網(wǎng)中接入的分布式發(fā)電設(shè)備與儲(chǔ)能裝置的安裝位置和容量的選擇(3)綜合考慮分布式發(fā)電設(shè)備以及儲(chǔ)能裝置的運(yùn)行與規(guī)劃的優(yōu)化問(wèn)題研究

粒子群算法

粒子群算法是在1995年由Eberhart博士和Kennedy博士一起提出的,它源于對(duì)鳥(niǎo)群捕食行為的研究。它的基本核心是利用群體中的個(gè)體對(duì)信息的共享從而使整個(gè)群體的運(yùn)動(dòng)在問(wèn)題求解空間中產(chǎn)生從無(wú)序到有序的演化過(guò)程,從而獲得問(wèn)題的最優(yōu)解。設(shè)想這么一個(gè)場(chǎng)景:一群鳥(niǎo)進(jìn)行覓食,而遠(yuǎn)處有一片玉米地,所有的鳥(niǎo)都不知道玉米地到底在哪里,但是它們知道自己當(dāng)前的位置距離玉米地有多遠(yuǎn)。那么找到玉米地的最佳策略,也是最簡(jiǎn)單有效的策略就是搜尋目前距離玉米地最近的鳥(niǎo)群的周?chē)鷧^(qū)域。

在PSO中,每個(gè)優(yōu)化問(wèn)題的解都是搜索空間中的一只鳥(niǎo),稱(chēng)之為"粒子",而問(wèn)題的最優(yōu)解就對(duì)應(yīng)于鳥(niǎo)群中尋找的"玉米地"。所有的粒子都具有一個(gè)位置向量(粒子在解空間的位置)和速度向量(決定下次飛行的方向和速度),并可以根據(jù)目標(biāo)函數(shù)來(lái)計(jì)算當(dāng)前的所在位置的適應(yīng)值(fitness value),可以將其理解為距離"玉米地"的距離。在每次的迭代中,種群中的例子除了根據(jù)自身的經(jīng)驗(yàn)(歷史位置)進(jìn)行學(xué)習(xí)以外,還可以根據(jù)種群中最優(yōu)粒子的"經(jīng)驗(yàn)"來(lái)學(xué)習(xí),從而確定下一次迭代時(shí)需要如何調(diào)整和改變飛行的方向和速度。就這樣逐步迭代,最終整個(gè)種群的例子就會(huì)逐步趨于最優(yōu)解。

上面的解釋可能還比較抽象,下面通過(guò)一個(gè)簡(jiǎn)單的例子來(lái)進(jìn)行說(shuō)明

在一個(gè)湖中有兩個(gè)人他們之間可以通信,并且可以探測(cè)到自己所在位置的最低點(diǎn)。初始位置如上圖所示,由于右邊比較深,因此左邊的人會(huì)往右邊移動(dòng)一下小船。

現(xiàn)在左邊比較深,因此右邊的人會(huì)往左邊移動(dòng)一下小船


一直重復(fù)該過(guò)程,最后兩個(gè)小船會(huì)相遇

得到一個(gè)局部的最優(yōu)解


將每個(gè)個(gè)體表示為粒子。每個(gè)個(gè)體在某一時(shí)刻的位置表示為,x(t),方向表示為v(t)




p(t)為在t時(shí)刻x個(gè)體的自己的最優(yōu)解,g(t)為在t時(shí)刻所有個(gè)體的最優(yōu)解,v(t)為個(gè)體在t時(shí)刻的方向,x(t)為個(gè)體在t時(shí)刻的位置




下一個(gè)位置為上圖所示由x,p,g共同決定了




種群中的粒子通過(guò)不斷地向自身和種群的歷史信息進(jìn)行學(xué)習(xí),從而可以找到問(wèn)題的最優(yōu)解。

但是,在后續(xù)的研究中表表明,上述原始的公式中存在一個(gè)問(wèn)題:公式中V的更新太具有隨機(jī)性,從而使整個(gè)PSO算法的全局優(yōu)化能力很強(qiáng),但是局部搜索能力較差。而實(shí)際上,我們需要在算法迭代初期PSO有著較強(qiáng)的全局優(yōu)化能力,而在算法的后期,整個(gè)種群應(yīng)該具有更強(qiáng)的局部搜索能力。所以根據(jù)上述的弊端,shi和Eberhart通過(guò)引入慣性權(quán)重修改了公式,從而提出了PSO的慣性權(quán)重模型:


每一個(gè)向量的分量表示如下



其中w稱(chēng)為是PSO的慣性權(quán)重,它的取值介于【0,1】區(qū)間,一般應(yīng)用中均采用自適應(yīng)的取值方法,即一開(kāi)始令w=0.9,使得PSO全局優(yōu)化能力較強(qiáng),隨著迭代的深入,參數(shù)w進(jìn)行遞減,從而使的PSO具有較強(qiáng)的局部?jī)?yōu)化能力,當(dāng)?shù)Y(jié)束時(shí),w=0.1。參數(shù)c1和c2稱(chēng)為學(xué)習(xí)因子,一般設(shè)置為1,4961;而r1和r2為介于[0,1]之間的隨機(jī)概率值。

整個(gè)粒子群優(yōu)化算法的算法框架如下:

step1種群初始化,可以進(jìn)行隨機(jī)初始化或者根據(jù)被優(yōu)化的問(wèn)題設(shè)計(jì)特定的初始化方法,然后計(jì)算個(gè)體的適應(yīng)值,從而選擇出個(gè)體的局部最優(yōu)位置向量和種群的全局最優(yōu)位置向量。

step2 迭代設(shè)置:設(shè)置迭代次數(shù),并令當(dāng)前迭代次數(shù)為1

step3 速度更新:更新每個(gè)個(gè)體的速度向量

step4 位置更新:更新每個(gè)個(gè)體的位置向量

step5 局部位置和全局位置向量更新:更新每個(gè)個(gè)體的局部最優(yōu)解和種群的全局最優(yōu)解

step6 終止條件判斷:判斷迭代次數(shù)時(shí)都達(dá)到最大迭代次數(shù),如果滿(mǎn)足,輸出全局最優(yōu)解,否則繼續(xù)進(jìn)行迭代,跳轉(zhuǎn)至step 3。

  對(duì)于粒子群優(yōu)化算法的運(yùn)用,主要是對(duì)速度和位置向量迭代算子的設(shè)計(jì)。迭代算子是否有效將決定整個(gè)PSO算法性能的優(yōu)劣,所以如何設(shè)計(jì)PSO的迭代算子是PSO算法應(yīng)用的研究重點(diǎn)和難點(diǎn)。

function main() clear,clc disp('請(qǐng)輸入粒子數(shù)'); n = input(''); Y = CreatPSO(n); for i = 1:n ? disp(['第 ',num2str(i),' 個(gè)粒子']); ? disp(Y(i,:)); ? [loss(i),minV(i)] = PLoss(Y(i,:)); end ? least = min(loss); ? leastIndex = find(loss == least); ? disp(['網(wǎng)損最小的粒子為第( ',num2str(leastIndex),' )個(gè)粒子']); ? disp('粒子為值為'); ? disp(Y(leastIndex,:)); ? disp(['網(wǎng)損有功功率P最小為( ',num2str(least),' )kW']); ? disp(['節(jié)點(diǎn)電壓p.u最小為 ',num2str(minV(leastIndex))]); ? disp('網(wǎng)絡(luò)拓?fù)湟?jiàn)圖'); ?figure(2); ? Read(Y(leastIndex,:)); ? end

?


【布局優(yōu)化】基于粒子群算法求解配電網(wǎng)重構(gòu)matlab源碼的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
东海县| 宕昌县| 万安县| 明水县| 河池市| 大渡口区| 博乐市| 孙吴县| 南陵县| 上虞市| 兴化市| 宁安市| 顺义区| 牡丹江市| 二连浩特市| 石首市| 太和县| 天津市| 昔阳县| 霍州市| 崇礼县| 宁武县| 溧水县| 青铜峡市| 阿坝县| 喜德县| 普定县| 电白县| 昌图县| 迁安市| 龙川县| 灵寿县| 娄烦县| 错那县| 阳东县| 云林县| 宝山区| 上思县| 克山县| 随州市| 靖远县|