2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 基于遗传算法的风电储能蓄电池容量优化配置matlab优化程序

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

时间:2022-08-27 23:12:38

相关推荐

基于遗传算法的风电储能蓄电池容量优化配置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小时出力预测值:

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:26Ub(i)=90000*Ubn*Cb/10000000;end%电容出力上限for i=27:50Ub(i)=16000*Ucn*Ic/1000000;end%蓄电池,电容出力下限Lb=ones(1,d);% Lb(1)=100;% Lb(2)=100;for i=3:50Lb(i)=-Ub(i);endumax=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:iterchrom = 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;..........略

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。