主要内容
程序建立了多主体综合能源模型,采用双层模型进行求解,上层用自适应粒子群算法求解出各能源售价和需求响应补偿价格;下层采用混合整数规划算法求解出三个园区、配电网、储能电站、集中型风电场间的最优调度策略,下层程序采用matlab+cplex求解(也可替换为gurobi),程序注释清楚,方便学习!注意:程序不是完全复现,部分参考文献内容(基本模型部分、目标函数和约束条件),未按照主从博弈机制进行循环求解。
部分代码
%参数
Ns=2;%场景数为2
ps=[0.3 0.7];%每种场景概率
Nerss=1;%储能电站个数
Nbt=1;%电化学储能电站个数
PIbt=2.3;%电化学储能单位时间折旧成本
NG=6;%常规机组数量
NDG=1;%DG数量
kc=2.5;%弃风惩罚
socmin=0.1;
socmax=0.9;
Pech=-50;%充电功率限制
Pedis=50;%放电功率限制
Se=200;%储能容量限制
Se0=100;
Pwmin=-50;%蓄水电站最小功率
Pwmax=50;%蓄水电站最大功率
Vs0=100;
Vpmin=0;%蓄水容量最小值
Vpmax=200;%蓄水容量最大值
Ca=100;Cb=125;Cc=150;Cd=150;%IDR补偿成本系数
mp=[1 150 50 0.0375 20 372.5 72 2;%常规机组参数
2 60 20 0.175 17.5 352.3 48 2;
3 60 15 0.625 10 316.5 30 2;
4 50 10 0.0834 32.5 329.2 30 2;
5 40 10 0.25 30 276.4 18 2;
6 45 12 0.25 30 232.2 24 2];
%pload=[390 382 354 340 328 409 460 460 472 511 465 458 442 456 457 471 475 503 512 469 445 438 410 362];%负荷
idg=[1 2 5 8 11 13];
iw=2;
ie=2;
is=8;
%变量
%场景1变量
thetaone=sdpvar(30,T,'full');
Pgone=sdpvar(NG,T,'full');
Pwone=sdpvar(1,T,'full');
upwone=binvar(1,T,'full');
Perssone=sdpvar(1,T,'full');
uerssone=binvar(1,T,'full');
Pdgone=sdpvar(1,T,'full');
Pidrbone=sdpvar(30,T,'full');
Pidrcone=sdpvar(30,T,'full');
plossone=sdpvar(30,T,'full');
%场景2变量
thetatwo=sdpvar(30,T,'full');
Pgtwo=sdpvar(NG,T,'full');
Pwtwo=sdpvar(1,T,'full');
upwtwo=binvar(1,T,'full');
结果一览
“阅读原文”获取程序源码