程序名称:考虑不确定性的含集群电动汽车并网型微电网随机优化调度
实现平台:matlab-yalmip-cplex/gurobi
代码简介:微电网是指集成了多种分布式电源、储能和负荷的一类小型发–配–用电系统,通过内部各单元的协调运行,可实现高度自治及对配电网的友好接入,是提高可再生能源渗透率的有效手段。本代码涉及的并网型微电网包括分布式电源(汽轮机),需求响应负荷(可平移负荷),可再生能源(光伏),固定负荷,储能设施,集群电动汽车以及与配网交互功率部分。首先考虑负荷与光伏的不确定性,利用拉丁超立方抽样算法生成与削减得到典型场景。其次在分时电价引导下,以总运行成本最低为优化目标,建立基于场景法的随机优化调度模型。本代码为原创代码,注释详细,且将目标函数与约束写成紧凑形式,简洁工整,易于拓展修改,适合新手入门与提高。附带参考文献。
代码获取方式:【代码分享】考虑不确定性的含集群电动汽车并网型微电网随机优化调度
运行结果展示
clc
clear all
%%%%%%%基于拉丁超立方抽样法的负荷和光伏典型场景生成%%%%%%%%
%场景法
%%% wf1 wf2 为平均值
wf1=1200*[0.560710623000000 0.552062725000000 0.673867734000000 0.642650610000000 0.695378304000000 0.733920005000000 0.758930757000000 0.823164720000000 0.918483475000000 0.877745062000000 0.940265326000000 1.02646640400000 0.912250637000000 0.892930162000000 0.857015251000000 0.749528567000000 0.787825454000000 0.809693321000000 0.747179674000000 0.823998412000000 0.779137857000000 0.725331657000000 0.658709101000000 0.583041652000000];
wf2=1800*[0 0 0 0 0 0 0.101714463000000 0.182704776000000 0.251540268000000 0.376446896000000 0.527396155000000 0.724747671000000 0.554693709000000 0.440985772000000 0.312278521000000 0.245319438000000 0.117663932000000 0.0896134240000000 0 0 0 0 0 0];
m1=ones(24,1000);%负荷生成
m2=ones(24,1000);%光伏生成
m=ones(24,1000);%生成
%%
%生成1000个场景
%%
%拉丁差立方抽样方法
%%%拉丁超级方抽样=====属于分层抽样技术(从多元参数分布中近似随机抽样的方法)------分层抽样:将抽样区间(本程序为正态分布区间)
%按某种特性或某种规划分为不同的层,然后从不同的层中独立、随机(打乱排序,无规律抽取)
%地抽取样本(如取10个苹果样本,按照特性把苹果树分为5类,每类随机取2个),从而保证样本的结构与总体的结构比较相近,提高估计的精度。
%拉丁超立方相较蒙卡,改进了采样策略能够做到较小采样规模中获得较高的采样精度。
%%lhsnorm(mu,sigma,n); mu平均值(数量a); 求解公式:u=(1/N)*(sum(样本));N为样本数目
% sigma协方差矩阵(数量a*a); 求解公式: =((1/N)^3)*(sum(样本i-u)^2); i=1至N
% n抽样次数
% 表示方式1
% % c=1;%c 表示基础数据的数量
% % u1=lhsdesign(1,24);
% % u2=lhsdesign(1,24);
% % for t=1:24
% % m1(t,:)=lhsnorm(sum(wf1(:,t))/c,u1(t)*sum(wf1(:,t))/c,1000); %拉丁超立方抽样(lhsnorm函数)方法
% % (基于负荷和光伏出力遵从正态分布normrnd(均值,标准差,n,m) n*m阶正态矩阵 ),
% % 因此lhsnorm函数的均值和标准差采用正态分布的均值,标准差
% % 依据文献,可以假定标准差与均值之间存在一定比例关系。
%%设决策变量
p_ch=sdpvar(5,24,'full');%储能充电
p_dis=sdpvar(5,24,'full');%储能放电
us=binvar(5,24,'full');%充放电标识
p_buy=sdpvar(5,24,'full');%配网购电
p_sell=sdpvar(5,24,'full');%配网售电
um=binvar(5,24,'full');%购售电标识
p_g=sdpvar(5,24,'full');%分布式电源
PDR=sdpvar(5,24,'full');%可转移负荷
PDR1=sdpvar(5,24,'full');%可转移负荷辅助变量
PDR2=sdpvar(5,24,'full');%可转移负荷辅助变量
PEV=sdpvar(5,24,'full'); %电动汽车充放电
E=sdpvar(5,24,'full'); %电动汽车电能变量
%% 构建约束条件变量和系数矩阵,这里是为了方便对模型进行扩展与修改
x=[us,um]';%01变量
y=[p_g,p_ch,p_dis,PDR,PDR1,PDR2,p_buy,p_sell]';%连续变量
u=[m2',m1']';%常数,包括负荷和光伏
Q01=[eye(24),zeros(24,24)];%us
Q02=[zeros(24,24),eye(24)];%um
Q1=[eye(24),zeros(24,168)];
Q2=[zeros(1,24),eta.*ones(1,24),-1/eta.*ones(1,24),zeros(1,120)];
Q31=[zeros(24,24),eye(24),zeros(24,144)];%p_ch9c
Q32=[zeros(24,48),eye(24),zeros(24,120)];%p_dis