基于遗传算法的风电储能蓄电池容量优化配置matlab优化程序

基于遗传算法的风电储能蓄电池容量优化配置
风电+储能蓄电池微电网配置(基于matlab的遗传算法微电网配置优化程序)
参考文献:基于遗传算法的风电储能蓄电池容量优化配置

摘要:为了降低独立风力发电系统中储能装置的生命周期费用,建立以风力发电系统中储能装置的生命 周期费用最小值为优化的目标函数、负荷缺电率等指标为约束条件的模型,结合蓄电池和超级电容器储能特 性,利用风电和负荷48 h的发用电数据,研究包含蓄电池和超级电容器的储能系统能量管理策略。提出了一 种基于改进粒子群算法的储能容量生命周期费用优化配置方法,算例分析证明该算法具有有效性和实用性, 优化后的系统很大程度上节省了经济成本。
关键词:风力发电系统;混合储能;储能容量优化配置;遗传算法

1 模型分析
基于蓄电池和超级电容器混合储能独立风力发电系统的结构如图 1 所示。当风速比较大时,储能装置处于充电状态,将电能存储起来;当风速比较弱或者峰值负荷时储能装置为负荷供电,以保证系统平稳连续的供电,提高供电可靠性。
在这里插入图片描述
1.1 蓄电池的模型
每个蓄电池的额定电压为Ub(V),额定容量 为Cb(A·h),假设蓄电池组由m个蓄电池组成,则 总的储能量Eb( MW·h)为
在这里插入图片描述

1.2 超级电容器的模型
每个超级电容器的端电压为Uc,电容值为Cc,假设超级电容器组由n个超级电容器组成,则总的储能量为
在这里插入图片描述

2 目标函数:
在这里插入图片描述
3 算例参数
蓄电池参数:
在这里插入图片描述

电网24小时负荷数据:
电网负荷
风电24小时出力预测值:
风电24小时预测值

4 运行结果
1)迭代曲线
在这里插入图片描述
2)电平衡
在这里插入图片描述
3)出力曲线
在这里插入图片描述

5 复现程序:
遗传算法matlab程序如下:
主函数如下:

// 主函数程序:
clc;
clear;
close all
%% 调用参数
canshu_cpa;
%% 遗传算法基础参数
N = 1200;  %种群内个体数目
N_chrom = 50; %染色体节点数,也就是每个个体有多少条染色体,其实说白了就是看适应函数里有几个自变量。
iter = 500; %迭代次数,也就是一共有多少代
mut = 0.2;  %突变概率
acr = 0.2; %交叉概率
best = 1;
%% 上下限约束
%上限
d=N_chrom ;
Ub=ones(1,d);
Ub(1)=200000;%蓄电池数量上限
Ub(2)=30000;%电容数量上限
%电池出力上限
for i=3:26
    Ub(i)=90000*Ubn*Cb/10000000;
end
%电容出力上限
for i=27:50
    Ub(i)=16000*Ucn*Ic/1000000;
end
%蓄电池,电容出力下限
Lb=ones(1,d);
% Lb(1)=100;
% Lb(2)=100;
for i=3:50
Lb(i)=-Ub(i);
end
umax=Ub;     %变量上限
umin=Lb; %变量下限
chrom_range = [umin;umax];%每个节点的值的区间
chrom = zeros(N, N_chrom);%存放染色体的矩阵
fitness = zeros(N, 1);%存放染色体的适应度
fitness_ave = zeros(1, iter);%存放每一代的平均适应度
fitness_best = zeros(1, iter);%存放每一代的最优适应度
chrom_best = zeros(1, N_chrom+1);%存放当前代的最优染色体与适应度



%% 初始化,这只是用于生成第一代个体,并计算其适应度函数
chrom = Initialize(N, N_chrom, chrom_range); %初始化染色体
fitness = CalFitness(chrom, N, N_chrom); %计算适应度
chrom_best = FindBest(chrom, fitness, N_chrom); %寻找最优染色体
fitness_best(1) = chrom_best(end); %将当前最优存入矩阵当中



%% 迭代主循环
for t = 2:iter
    chrom = MutChrom(chrom, mut, N, N_chrom, chrom_range, t, iter); %变异
    chrom = AcrChrom(chrom, acr, N, N_chrom); %交叉
    fitness = CalFitness(chrom, N, N_chrom); %计算适应度
    chrom_best_temp = FindBest(chrom, fitness, N_chrom); %寻找最优染色体
    if chrom_best_temp(end)>chrom_best(end) %替换掉当前储存的最优
        chrom_best = chrom_best_temp;
..........
  • 15
    点赞
  • 119
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 46
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 46
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

电磁MATLAB

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值