✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。
🍎个人主页:Matlab科研工作室
🍊个人信条:格物致知。
更多Matlab仿真内容点击👇
⛄ 内容介绍
规划设计是微电网系统核心技术体系之一.从分布式电源的综合优化(组合优化,容量优化)和分布式电源间的调度优化两个方面对其展开研究.根据分布式电源特性,提出了适用于并网型微电网系统和独立型微电网系统的双层优化规划设计模型.上层优化采用基于NSGA-II的多目标遗传算法计算系统最优配置;下层优化采用混合整数线性规划算法(MILP)计算系统最优运行方案.运用所建立模型,分别针对并网型和独立型微电网系统作了案例计算,验证了所提方法的正确性.
⛄ 部分代码
%Initialization
X = lb+rand(N,dim).*(ub-lb);
for i=1:N
fit(i,:) = fobj(X(i,:));
end
FES = 1;
Log_C=rand;
Max_FES=dim*Max_IT;
[Best_Cost,ind] = min(fit);
Best_X = X(ind,:);
Convergence_curve(1) = Best_Cost;
while FES < Max_FES
[~,r1] = sort(fit);
Best_X = X(r1(1),:);
Worst_X= X(r1(end),:);
if fit(r1(end),:)==0
b=1;
else
b=abs(fit(r1(1),:)/(fit(r1(end),:)))^2;
end
for i=1:N
Xnew=zeros(1,dim);
if i~=r1(1)
if rand<rand
for j=1:dim
Xnew(j) = X(i,j) + rand*(Best_X(j) -abs(X(i,j)))-b*rand*(Worst_X(j) -abs(X(i,j)));
end
end
else
Log_C=4*Log_C*(1-Log_C);
for k=1:dim
Xnew(k) = X(i,k) + Log_C*(Best_X(k)-abs(X(i,k)))-Log_C*(Worst_X(k)-abs(X(i,k)));
end
end
FU=Xnew>ub;FL=Xnew<lb;Xnew=(Xnew.*(~(FU+FL)))+ub.*FU+lb.*FL;
f_new = fobj(Xnew');
if f_new<fit(i)
X(i,:)=Xnew;
fit(i)=f_new;
end
if fit(i)<Best_Cost
Best_X=X(i,:);
Best_Cost=fit(i);
end
end
FES=FES+1;
Convergence_curve(FES)=Best_Cost;
disp(['FES: ' num2str(FES) ', Best Cost = ' num2str(Best_Cost)]);
end
disp(['SDM Variables : ' num2str(Best_X)]);
disp(['RMSE Value : ' num2str(Best_Cost)]);
end
⛄ 运行结果
⛄ 参考文献
[1]刘振国, 胡亚平, 陈炯聪,等. 基于双层优化的微电网系统规划设计方法[J]. 电力系统保护与控制, 2015, 43(8):10.