【配电网优化】基于粒子群算法实现GARVER-6节点配电网络直流潮流计算附matlab代码
1 內(nèi)容介紹
一種基于粒子群算法的交直流混聯(lián)配電網(wǎng)潮流最優(yōu)化控制算法,屬配電調(diào)控領(lǐng)域.根據(jù)配電網(wǎng)結(jié)構(gòu)圖確定區(qū)域間配電網(wǎng)互聯(lián)的線路并編號;設(shè)定以線路分類的二維矩陣,關(guān)聯(lián)線路編號與線路上的功率流動值;應(yīng)用模糊評價理論,設(shè)定配電網(wǎng)運行優(yōu)劣性評價標準;初始化粒子群的速度和位置;判斷每條線路的功率流動值是否在邊界范圍內(nèi);對配電網(wǎng)進行潮流計算,得到配電網(wǎng)運行標準評價值,并將該值與之前獲得的評價最高值進行對比.其采用粒子群算法對已知的多個交直流混聯(lián)交直流混合配電網(wǎng)進行潮流計算,能夠快速及時地計算最優(yōu)功率流動值,實現(xiàn)整個配電網(wǎng)的實時潮流最優(yōu)化控制,使得整個配電網(wǎng)處于最優(yōu)化狀況運行,建設(shè)更加利于整個配電網(wǎng)整體性能的輸電線路.
2 仿真代碼
%==========================================================================
clc
clear all
close all
N=100;? ? ? ? ? ? ? ? ?%初始化分配100個粒子,代表網(wǎng)架規(guī)劃的100種狀態(tài)
D=15;? ? ? ? ? ? ? ? ? %D代表待規(guī)劃的15條線路
pbest1=zeros(N,1);? ? ?%臨時儲存每個粒子的值
pbest1_x=zeros(N,D);? ?%臨時儲存每個粒子的狀態(tài)
pbest=zeros(N,1);? ? ? %pbest代表每個粒子的最優(yōu)值
pbest_x=zeros(N,D);? ? %pbest_x代表每個粒子的最優(yōu)狀態(tài)
gbest_x=zeros(1,D);? ? %gbest_x代表全局最優(yōu)狀態(tài)
S=zeros(N,D);? ? ? ? ? %中間變量
Psp=zeros(6,1);? ? ? ? %節(jié)點有功注入功率矩陣
R=20;? ? ? ? ? ? ? ? ? %線路投資費用為20萬元/km
c1=1.8; c2=2.2; w=0.6; %學(xué)習(xí)因子,慣性權(quán)重
M=200;? ? ? ? ? ? ? ? ?%最大迭代次數(shù)
v_max=3;? ? ? ? ? ? ? ?%粒子尋優(yōu)更新的最大速度
%==========================節(jié)點功率平衡表===================================
%? ? ?節(jié)點? 發(fā)電出力/MW? 負荷/MW
Power=[1? ? ? ? 50? ? ? ? ?80
? ? ? ?2? ? ? ? 0? ? ? ? ? 240
? ? ? ?3? ? ? ? 165? ? ? ? 40
? ? ? ?4? ? ? ? 0? ? ? ? ? 160
? ? ? ?5? ? ? ? 0? ? ? ? ? 240
? ? ? ?6? ? ? ? 545? ? ? ? 0? ];
%===========================輸電走廊參數(shù)====================================
%? ? ? 始節(jié)點? 末節(jié)點? 已有線路回數(shù)? 線路回數(shù)上限? 線路長度/km? 單條線路電抗? 單條線路有功潮流上限/MW
Channel=[1? ? ? ?2? ? ? ? ?1? ? ? ? ? ? 4? ? ? ? ? ?40? ? ? ? ? 0.40? ? ? ? ? ? ? ?100
? ? ? ? ?1? ? ? ?3? ? ? ? ?0? ? ? ? ? ? 4? ? ? ? ? ?38? ? ? ? ? 0.38? ? ? ? ? ? ? ?100
? ? ? ? ?1? ? ? ?4? ? ? ? ?1? ? ? ? ? ? 4? ? ? ? ? ?60? ? ? ? ? 0.60? ? ? ? ? ? ? ?80
? ? ? ? ?1? ? ? ?5? ? ? ? ?1? ? ? ? ? ? 4? ? ? ? ? ?20? ? ? ? ? 0.20? ? ? ? ? ? ? ?100
? ? ? ? ?1? ? ? ?6? ? ? ? ?0? ? ? ? ? ? 4? ? ? ? ? ?68? ? ? ? ? 0.68? ? ? ? ? ? ? ?70
? ? ? ? ?2? ? ? ?3? ? ? ? ?1? ? ? ? ? ? 4? ? ? ? ? ?20? ? ? ? ? 0.20? ? ? ? ? ? ? ?100
? ? ? ? ?2? ? ? ?4? ? ? ? ?1? ? ? ? ? ? 4? ? ? ? ? ?40? ? ? ? ? 0.40? ? ? ? ? ? ? ?100
? ? ? ? ?2? ? ? ?5? ? ? ? ?0? ? ? ? ? ? 4? ? ? ? ? ?31? ? ? ? ? 0.31? ? ? ? ? ? ? ?100
? ? ? ? ?2? ? ? ?6? ? ? ? ?0? ? ? ? ? ? 4? ? ? ? ? ?30? ? ? ? ? 0.30? ? ? ? ? ? ? ?100
? ? ? ? ?3? ? ? ?4? ? ? ? ?0? ? ? ? ? ? 4? ? ? ? ? ?59? ? ? ? ? 0.59? ? ? ? ? ? ? ?82
? ? ? ? ?3? ? ? ?5? ? ? ? ?1? ? ? ? ? ? 4? ? ? ? ? ?20? ? ? ? ? 0.20? ? ? ? ? ? ? ?100
? ? ? ? ?3? ? ? ?6? ? ? ? ?0? ? ? ? ? ? 4? ? ? ? ? ?48? ? ? ? ? 0.48? ? ? ? ? ? ? ?100
? ? ? ? ?4? ? ? ?5? ? ? ? ?0? ? ? ? ? ? 4? ? ? ? ? ?63? ? ? ? ? 0.63? ? ? ? ? ? ? ?75
? ? ? ? ?4? ? ? ?6? ? ? ? ?0? ? ? ? ? ? 4? ? ? ? ? ?30? ? ? ? ? 0.30? ? ? ? ? ? ? ?100
? ? ? ? ?5? ? ? ?6? ? ? ? ?0? ? ? ? ? ? 4? ? ? ? ? ?61? ? ? ? ? 0.61? ? ? ? ? ? ? ?78 ];
%======================調(diào)用初始化尋優(yōu)速度和尋優(yōu)位置函數(shù)======================
[v,x]=Initialize(N,D);
%================================交流潮流計算===============================
for i=1:N
? ? %===========================形成節(jié)點有功注入功率矩陣========================
? ? Psp=Power(:,2)-Power(:,3);
? ? %===============調(diào)用直流潮流計算函數(shù)DC_Power_Flow=======================
? ? [P,P1]=DC_Power_Flow(Channel,x,i,Psp);
? ? %=============調(diào)用線路容量約束函數(shù)Capacity_Constraint===============
? ? x=Capacity_Constraint(Channel,x,i,Psp,P,P1);
? ? %===================求取個體極值和個體最優(yōu)狀態(tài)===========================
? ? pbest1(i)=20*(x(i,1)*Channel(1,5)+x(i,2)*Channel(2,5)+x(i,3)*Channel(3,5)+x(i,4)*Channel(4,5)+x(i,5)*Channel(5,5)+x(i,6)*Channel(6,5)...
? ? ? ? ? ? ?+x(i,7)*Channel(7,5)+x(i,8)*Channel(8,5)+x(i,9)*Channel(9,5)+x(i,10)*Channel(10,5)+x(i,11)*Channel(11,5)+x(i,12)*Channel(12,5)...
? ? ? ? ? ? ?+x(i,13)*Channel(13,5)+x(i,14)*Channel(14,5)+x(i,15)*Channel(15,5));
? ? pbest1_x(i,:)=x(i,:);
? ? pbest(i)=pbest1(i);? ? ? ? ? ? ? ?%個體極值
? ? pbest_x(i,:)=pbest1_x(i,:);? ? ? ?%個體最優(yōu)狀態(tài)
end
%========================求取全局最優(yōu)極值和全局最優(yōu)狀態(tài)======================
gbest=pbest(N);? ? ?%定義全局最優(yōu)極值
for i=1:N-1
? ? if pbest(i)<gbest
? ? ? ? gbest=pbest(i);
? ? ? ? gbest_x=pbest_x(i,:);
? ? end
end
%================================循環(huán)迭代尋優(yōu)===============================
for t=1:M
? ? for i=1:N
? ? ? ? %====================更新尋優(yōu)的速度和位置===========================
? ? ? ? v(i,:)=w*v(i,:)+c1*rand()*(pbest_x(i,:)-x(i,:))+c2*rand()*(gbest_x-x(i,:));
? ? ? ? for j=1:15
? ? ? ? ? ? if v(i,j)>v_max
? ? ? ? ? ? ? ? v(i,j)=v_max;
? ? ? ? ? ? end
? ? ? ? ? ? if v(i,j)<-v_max
? ? ? ? ? ? ? ? v(i,j)=-v_max;
? ? ? ? ? ? end
? ? ? ? end
? ? ? ? x(i,:)=ceil(x(i,:)+v(i,:));? ? ? ? ? %向上取整函數(shù)
? ? ? ? %======================滿足支路數(shù)上下限約束=========================
? ? ? ? if x(i,1)<1
? ? ? ? ? ? x(i,1)=1;
? ? ? ? end
? ? ? ? if x(i,3)<1
? ? ? ? ? ? x(i,3)=1;
? ? ? ? end
? ? ? ? if x(i,4)<1
? ? ? ? ? ? x(i,4)=1;
? ? ? ? end
? ? ? ? if x(i,6)<1
? ? ? ? ? ? x(i,6)=1;
? ? ? ? end
? ? ? ? if x(i,7)<1
? ? ? ? ? ? x(i,7)=1;
? ? ? ? end
? ? ? ? if x(i,11)<1
? ? ? ? ? ? x(i,11)=1;
? ? ? ? end
? ? ? ? if x(i,2)<0
? ? ? ? ? ? x(i,2)=0;
? ? ? ? end
? ? ? ? if x(i,5)<0
? ? ? ? ? ? x(i,5)=0;
? ? ? ? end
? ? ? ? if x(i,8)<0
? ? ? ? ? ? x(i,8)=0;
? ? ? ? end
? ? ? ? if x(i,9)<0
? ? ? ? ? ? x(i,9)=0;
? ? ? ? end
? ? ? ? if x(i,10)<0
? ? ? ? ? ? x(i,10)=0;
? ? ? ? end
? ? ? ? if x(i,12)<0
? ? ? ? ? ? x(i,12)=0;
? ? ? ? end
? ? ? ? if x(i,13)<0
? ? ? ? ? ? x(i,13)=0;
? ? ? ? end
? ? ? ? if x(i,14)<0
? ? ? ? ? ? x(i,14)=0;
? ??? ? end
? ? ? ? if x(i,15)<0
? ? ? ? ? ? x(i,15)=0;
? ? ? ? end
? ? ? ? for j=1:15
? ? ? ? ? ? if x(i,j)>4
? ? ? ? ? ? ? ? x(i,j)=4;
? ? ? ? ? ? end
? ? ? ? end
? ? ? ? end
? ? end
? ? %======================求取全局最優(yōu)極值和全局最優(yōu)狀態(tài)====================
? ? for i=1:N
? ? ? ? if pbest(i)<gbest
? ? ? ? ? ? gbest=pbest(i);
? ? ? ? ? ? gbest_x=pbest_x(i,:);
? ? ? ? end
? ? end
end
%================================輸出結(jié)果==================================
gbest
gbest_x
3 運行結(jié)果
4 參考文獻
[1]潘歡, 楊麗, 胡鋼墩. 基于改進量子粒子群算法的配電網(wǎng)絡(luò)優(yōu)化重構(gòu)[J]. 電測與儀表, 2018, 55(18):7.?
博主簡介:擅長智能優(yōu)化算法、神經(jīng)網(wǎng)絡(luò)預(yù)測、信號處理、元胞自動機、圖像處理、路徑規(guī)劃、無人機等多種領(lǐng)域的Matlab仿真,相關(guān)matlab代碼問題可私信交流。
部分理論引用網(wǎng)絡(luò)文獻,若有侵權(quán)聯(lián)系博主刪除。
?
總結(jié)
以上是生活随笔為你收集整理的【配电网优化】基于粒子群算法实现GARVER-6节点配电网络直流潮流计算附matlab代码的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 移动云使用 JuiceFS 支持 Apa
- 下一篇: 配电网可靠性评估程序 matlab代码