clear
clc
tic%计时开始
baseMVA = 100;
%输入控制变量限制
% global PGmin
% PGmin=[0.2 0.15 0.1 0.1 0.12];
% global PGmax
% PGmax=[0.8 0.5 0.35 0.3 0.4];
global PGmin
PGmin=[0.2 0.15 0.1 0.1 0.12];
global PGmax
PGmax=[1.0 0.8 0.55 0.8 0.6];
%输入状态变量
%PQ节点的电压限值 (10个pq节点)
VPQmin=0.95*ones(1,10); %节点电压下限
VPQmax=1.05*ones(1,10); %节点电压上限
%平衡节点的电压限值
Vph=1.06;
%发电机节点无功功率限值
QGmin=[-0.4 0 -0.06 -0.06];
QGmax=[0.5 0.4 0.24 0.24];
%平衡节点有功出力限值
PGmins=0.5;
PGmaxs=2;
global popsize %%粒子群个数
popsize=10;
global dimsize %%变量个数(控制变量的个数)控制发电机
dimsize=5;
global wcmax %%权重上限
wcmax=0.9;
global wcmin %%权重下线
wcmin=0.1;
global c1 %学习因子
global c2
c1=2;
c2=2;
global maxgeneration %%迭代总次数
maxgeneration=50;
global generation
global PBEST
global GBEST
global PVALUER
global GVALUER
trace=zeros(maxgeneration,1); %算法性能跟踪
generation=1; %%第一次
pop=initpop(popsize); %%种群初始化(调用初始化函数)
[pbest,gbest,objvalue,gvaluer]=calobjvalue(pop);%%calobjvalue函数的功能是计算目标函数的适应度
PBEST=pbest;
GBEST=gbest;
PVALUER=objvalue;
GVALUER=gvaluer; %%粒子在进化过程中依据其适应度,调节个体最好位置Pbest和群体最好位置Gbest
pop=renew(pop,PBEST,GBEST); %%%对粒子的速度和位置进行进化
trace(1,1)=GVALUER;
for generation=2:maxgeneration %%迭代次数
[pbest,gbest,objvalue]=calobjvalue(pop);%%calobjvalue函数的功能是计算目标函数的适应度
for n=1:popsize
if objvalue(n)<PVALUER(n)
PVALUER(n,1)=objvalue(n,1);
PBEST(n,1:dimsize)=pbest(n,1:dimsize);
end
end
[GVALUER,m]=min(PVALUER);
GVALUER;
GBEST=PBEST(m,1:dimsize);%%粒子在进化过程中依据其适应度,调节个体最好位置Pbest和群体最好位置best
pop=renew(pop,PBEST,GBEST); %%%对粒子的速度和位置进行进化
trace(generation,1)=GVALUER;
end
GBEST
GVALUER
baseMVA = 100;
n=30;%指定节点数
%平衡节点有功出力限值
PGmins=0.5;
PGmaxs=2;
%设节点电压初值
e=ones(n,1);
%先算导纳矩阵
% 1No.L,T 2fbus 3tbus 4r 5x 6 b/2或k 7支路类型 8a 9b %其中ab表示首末端开关状态以后备用1表示开关运行
%支路类型 1==线路;6==变压器
branch = [
1 1 2 0.0192 0.0575 0.0264 1;
2 1 3 0.0452 0.1852 0.0204 1;
3 2 4 0.057 0.1737 0.0184 1;
4 3 4 0.0132 0.0379 0.0042 1;
5 2 5 0.0472 0.1983 0.0209 1;
6 2 6 0.0581 0.1763 0.0187 1;
7 4 6 0.0119 0.0414 0.0045 1;
8 5 7 0.046 0.116 0.0102 1;
9 6 7 0.0267 0.082 0.0085 1;
10 6 8 0.012 0.042 0.0045 1;
11 6 9 0 0.208 0.978 6;
12 6 10 0 0.556 0.969 6;
13 9 11 0 0.208 0 1;
14 9 10 0 0.11 0 1;
15 4 12 0 0.256 0.932 6;
16 12 13 0 0.14 0 1;
17 12 14 0.1231 0.2559 0 1;
18 12 15 0.0680 0.1304 0 1;
19 12 16 0.0945 0.1987 0 1;
20 14 15 0.221 0.1997 0 1;
21 16 17 0.0524 0.1923 0 1;
22 15 18 0.1073 0.2185 0 1;
23 18 19 0.0639 0.1292 0 1;
24 19 20 0.034 0.068 0 1;
25 10 20 0.0936 0.209 0 1;
26 10 17 0.0324 0.0845 0 1;
27 10 21 0.0348 0.0749 0 1;
28 10 22 0.0727 0.1499 0 1;
29 21 22 0.0116 0.0236 0 1;
30 15 23 0.1 0.202 0 1;
31 22 24 0.115 0.179 0 1;
32 23 24 0.132 0.27 0 1;
33 24 25 0.1885 0.3292 0 1;
34 25 26 0.2544 0.38 0 1;
35 25 27 0.1093 0.2087 0 1;
36 28 27 0 0.396 0.968 6;
37 27 29 0.2198 0.4153 0 1;
38 27 30 0.3202 0.6027 0 1;
39 29 30 0.2399 0.4533 0 1;
40 8 28 0.0636 0.2 0.0214 1;
41 6 28 0.0169 0.0599 0.0065 1;];
brsize=size(branch);%求矩阵的行和列**
Y=zeros(n);
for i=1:brsize(1)
for j=1:n %j节点
%先计算自导纳
if (branch(i,2)==j|branch(i,3)==j)&branch(i,7)==1
Y(j,j)=Y(j,j)+1/(branch(i,4)+branch(i,5)*1.0j)+branch(i,6)*1.0j;
elseif branch(i,2)==j&branch(i,7)==6
Y(j,j)=Y(j,j)+1/(branch(i,4)+branch(i,5)*1.0j)/branch(i,6)+1/(branch(i,4)+branch(i,5)*1.0j)*(branch(i,6)-1)/branch(i,6);
elseif branch(i,3)==j&branch(i,7)==6
Y(j,j)=Y(j,j)+1/(branch(i,4)+branch(i,5)*1.0j)/branch(i,6)+1/(branch(i,4)+branch(i,5)*1.0j)*(1-branch(i,6))/(branch(i,6)*branch(i,6));
end
end
end
% %节点导纳修正(电容器)
% Y(9,9)=real(Y(9,9))+1.0j*(imag(Y(9,9))+0.1*pop(zz,1)/e(9)^2);
%再算互导纳
for i=1:brsize(1)
for j=1:n
for k=1:n
if (branch(i,2)==j&branch(i,3)==k)&branch(i,7)==1&j~=k
Y(j,k)=-1/(branch(i,4)+branch(i,5)*1.0j);
elseif (branch(i,2)==j&branch(i,3)==k)&branch(i,7)==6&j~=k
Y(j,k)=-1/(branch(i,4)+branch(i,5)*1.0j)/branch(i,6);
end
end
end
end
%形成对称的导纳矩阵
for i=1:n
for j=1:i
if i~=j&Y(i,j)~=0
Y(j,i)=Y(i,j);
end
end
end
for i=1:n
for j=i:n
if i~=j&Y(i,j)~=0
Y(j,i)=Y(i,j);
end
end
end
%开始进行量测量输入
% 量测类型的定义 1*节点电压;2*节点注入电流;3*节点注入功率;4*线路电流;5*线路潮流;6*变压器电流;7*变压器功率......。
% *为1表示量测值的实部(电压幅值,有功);*为2表示量测值的虚部(电压相角,无功)。
% 节点类型1为PQ;2为PV;3为平衡节点;
% 1序号 2量测值 3首节点 4末节点 5量测类型 6节点类型
LCSJ= [1 -0.217 2 2 31 2
2 -0.127 2 2 32 2
3 -0.024 3 3 31 1
4 -0.012 3 3 32 1
5 -0.076 4 4 31 1
6 -0.016 4 4 32 1
7 -0.942 5 5 31 2
8 -0.19 5 5 32 2
9 -0.301 7 7 31 1
10 -0.109 7 7 32 1
11 -0.300 8 8 31 2
12 -0.300 8 8 32 2
13 -0.058 10 10 31 1
14 -0.02 10 10 32 1
15 -0.112 12 12 31 1
16 -0.075 12 12 32 1
17 -0.062 14 14 31 1
18 -0.016 14 14 32 1
19 -0.082 15 15 31 1
20 -0.025 15 15 32 1
21 -0.035 16 16 31 1
22 -0.018 16 16 32 1
23 -0.09 17 17 31 1
24 -0.058 17 17 32 1
25 -0.032 18 18 31 1
26 -0.009 18 18 32 1
27 -0.095 19 19 31 1
28 -0.034 19 19 32 1
29 -0.022 20 20 31 1
30 -0.007 20 20 32 1
31 -0.175 21 21 31 1
32 -0.112 21 21 32 1
33 -0.032 23 23 31 1
34 -0.016 23 23 32 1
35 -0.087 24 24 31 1
36
goudianzuixiao.zip_电力市场优化_电厂调度_电网优化调度_电网安全_能源调度
版权申诉
111 浏览量
2022-07-15
04:27:56
上传
评论
收藏 72KB ZIP 举报
![avatar](https://profile-avatar.csdnimg.cn/76d4ee81f5f6465b8156d97495319ccf_weixin_42659252.jpg!1)
JaniceLu
- 粉丝: 85
- 资源: 1万+
最新资源
- 小程序版图像分类算法对马路是否有坑洼识别-不含数据集图片-含逐行注释和说明文档.zip
- Multisim14.0带555芯片的计数器仿真
- 小程序版基于卷积神经网络识别是否是大黄蜂-不含数据集图片-含逐行注释和说明文档.zip
- 小程序版基于深度学习对芒果成熟度识别-不含数据集图片-含逐行注释和说明文档.zip
- 小程序版基于深度学习识别是否是水果图片-不含数据集图片-含逐行注释和说明文档.zip
- 小程序版通过CNN卷积神经网络的水稻是否伏倒识别-不含数据集图片-含逐行注释和说明文档.zip
- 小程序版图像分类算法对橘子成熟度识别-不含数据集图片-含逐行注释和说明文档.zip
- 小程序版python训练识别草莓成熟度-不含数据集图片-含逐行注释和说明文档.zip
- 小程序版基于卷积神经网络识别牙齿是否健康-不含数据集图片-含逐行注释和说明文档.zip
- 小程序版python语言pytorch框架训练识别巧克力颜色-不含数据集图片-含逐行注释和说明文档.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)
评论0