一、简介

1 引言
风能是一种清洁能源,但由于自然条件的变化,风速和风向不断的、随机的变化,导致风力发电输出功率具有不稳定性和不可预测性,直接影响微电网的调度运行,而通过风力发电系统和储能设备的协调配合,可以提高风力发电技术的可调度性和可控性。
近年来,混合储能的容量配置及控制策略得到广泛的关注。混合储能将容量小、寿命长、功率比较高储能环节与容量比较大、循环次数受限、相对能量比高、功率比低的储能环节结合使用,如将超级电容器与蓄电池混合。但是对混合储能的研究仍然处于初级阶段,而且研究主要集中在控制策略上,对容量配置的研究较少。目前对容量配置的研究大多按照经验配置混合储能的容量,未用定量的分析。本文中风力发电系统的储能装置是蓄电池和超级电容器混合组成的,混合储能系统的容量配置是一个非线性规划问题,利用遗传算法进行求解,配置混合储能装置的全生命周期最小费用。

2 模型分析
基于蓄电池和超级电容器混合储能独立风力发电系统的结构如图 1 所示。当风速比较大时,储能装置处于充电状态,将电能存储起来;当风速比较弱或者峰值负荷时储能装置为负荷供电,以保证系统平稳连续的供电,提高供电可靠性。

3 其他见参考文献

二、部分源代码

clc;
clear;
close all
%% 基础参数
%风电出力
Pwind=[24.6,22.1,17.5,13.5,10.1,8.5,13.9,23.5,25.8,29.4,35.1,38.9,36.9,32.5,30.3,25,23.2,25.1,27.8,32.3,35.3,35.5,25,10.8,];%原电网24小时负荷
Pload=[55,50,53.1,49.4,54,49.4,45.6,34.8,30.1,25.2,21.8,10,10.9,11.2,6.3,5.9,5,5.6,18.6,35,36.2,37.1,40.2,25.3];
N = 100;  %种群内个体数目
N_chrom = 25; %染色体节点数,也就是每个个体有多少条染色体,其实说白了就是看适应函数里有几个自变量。
iter = 1000; %迭代次数,也就是一共有多少代
mut = 0.2;  %突变概率
acr = 0.2; %交叉概率
best = 1;
%每个节点的值的区间
for i=1:24chrom_range(1,(i+1)) = 0;chrom_range(2,(i+1)) = 0;if (Pload(i)-Pwind(i))>=0chrom_range(2,(i+1)) =(Pload(i)-Pwind(i));elsechrom_range(1,(i+1)) = (Pload(i)-Pwind(i));end
end
chrom_range(1,1) = 100;
chrom_range(1,2:25) = -35;
chrom_range(2,1) = 80000;
chrom_range(2,2:25) = 50;
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); %将当前最优存入矩阵当中
fitness_ave(1) = CalAveFitness(fitness); %将当前平均适应度存入矩阵当中
%% 用于生成以下其余各代,一共迭代多少步就一共有多少代
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;end%%替换掉最劣[chrom, fitness] = ReplaceWorse(chrom, chrom_best, fitness);fitness_best(t) = chrom_best(end); %将当前最优存入矩阵当中fitness_ave(t) = CalAveFitness(fitness); %将当前平均适应度存入矩阵当中
end
%% 作图
figure(1)
plot( 1:iter, fitness_best, 'b')
grid on
legend( '迭代优化结果')
%e=PlotModel(chrom_best);
figure(2)
t=1:24;
Pwind=[24.6,22.1,17.5,13.5,10.1,8.5,13.9,23.5,25.8,29.4,35.1,38.9,36.9,32.5,30.3,25,23.2,25.1,27.8,32.3,35.3,35.5,25,10.8,];%原电网24小时负荷
Pload=[55,50,53.1,49.4,54,49.4,45.6,34.8,30.1,25.2,21.8,10,10.9,11.2,6.3,5.9,5,5.6,18.6,35,36.2,37.1,40.2,25.3];
plot(t,Pwind,'-')
hold on
plot(t,Pload,'-o')
hold on
plot(t,chrom_best(2:25),'-.')
legend( '风电出力','电网负荷','蓄电池出力')
%% 输出结果
disp(['最优染色体为', num2str(chrom_best(1:end-1))])
disp(['最优适应度为', num2str(chrom_best(end))])

三、运行结果


四、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1] 包子阳,余继周,杨杉.智能优化算法及其MATLAB实例(第2版)[M].电子工业出版社,2016.
[2]张岩,吴水根.MATLAB优化算法源代码[M].清华大学出版社,2017.
[3]欧名勇,陈仲伟,谭玉东,文明,周志成.基于峰谷分时电价引导下的电动汽车充电负荷优化[J].电力科学与技术学报,2020年9月

【优化配置】基于matlab遗传算法求解风电混合储能容量优化配置问题【含Matlab源码 228期】相关推荐

  1. 【Matlab图像融合】小波变换遥感图像融合【含GUI源码 744期】

    一.代码运行视频(哔哩哔哩) [Matlab图像融合]小波变换遥感图像融合[含GUI源码 744期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 包子阳,余 ...

  2. 【Matlab人脸识别】KL变换人脸识别【含GUI源码 859期】

    一.代码运行视频(哔哩哔哩) [Matlab人脸识别]KL变换人脸识别[含GUI源码 859期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅.MAT ...

  3. 【Matlab心音信号】EMD心音信号特征提取【含GUI源码 1735期】

    一.代码运行视频(哔哩哔哩) [Matlab心音信号]EMD心音信号特征提取[含GUI源码 1735期] 二.matlab版本及参考文献 1 matlab版本 2014a *2 参考文献 [1] 沈再 ...

  4. 【Matlab语音隐写】DWT音频数字水印【含GUI源码 712期】

    一.代码运行视频(哔哩哔哩) [Matlab语音隐写]DWT音频数字水印[含GUI源码 712期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]韩纪庆,张磊, ...

  5. 【Matlab通信】DTMF双音多频电话拨号仿真【含GUI源码 805期】

    一.代码运行视频(哔哩哔哩) [Matlab通信]DTMF双音多频电话拨号仿真[含GUI源码 805期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅 ...

  6. 基于粒子群算法的混合储能容量配置matlab 以风光互补发电储能系统为背景,以年运行成本最低为目标

    基于粒子群算法的混合储能容量配置matlab 以风光互补发电储能系统为背景,以年运行成本最低为目标,根据负荷和发电量的缺额等制定超级电容和蓄电池配置方案,采用粒子群算法得到蓄电池和超级电容的个数,有详 ...

  7. MATLAB遗传算法求解曲面拟合和多参数优化问题代码实例

    MATLAB遗传算法求解曲面拟合和多参数优化问题代码实例 MATLAB遗传算法求解曲面拟合和多参数优化问题代码实例 数据拟合和多参数优化问题实例: 已知一组观测数据(x, y, z)满足一定的函数关系 ...

  8. MATLAB遗传算法求解物流配送中心选址问题优化代码实例

    1.简介 物流分配中心选址问题是指一定数量的客户,它们有不同数量的货物需求,有一定数量的备选中心作为配送中心.配送中心向客户提供货物的配送服务,现需要选择合适的配送中心位置(选址数量一定)或合适的配送 ...

  9. 【Matlab验证码识别】遗传算法和最大熵优化+大津法(OTSU)+自定义阈值数字验证码识别【含GUI源码 1694期】

    一.代码运行视频(哔哩哔哩) [Matlab验证码识别]遗传算法和最大熵优化+大津法(OTSU)+自定义阈值数字验证码识别[含GUI源码 1694期] 二.matlab版本及参考文献 1 matlab ...

  10. 【Matlab路径规划】改进的遗传算法机器人避障路径规划【含GUI源码 703期】

    一.代码运行视频(哔哩哔哩) [Matlab路径规划]改进的遗传算法机器人避障路径规划[含GUI源码 703期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] ...

最新文章

  1. php redis 二进制,php-redis扩展
  2. java接收数据_java 如何接收数据集参数
  3. python共享内存
  4. gitlab-runner 安装使用
  5. EOJ_1007_环形双向链表
  6. Golang官方限流器的用法详解
  7. 资源下载丨Oracle优化工程师常用的34个脚本
  8. console查看对象结构
  9. 等级考试(三):三级网络---似曾相识(续)
  10. @enableautoconfiguration注解作用_Spring Boot最核心的27个干货注解,你了解多少?
  11. 基于javaweb+mysql的+JPA学生宿舍学生住宿申请管理系统(管理员、学生)
  12. MySQL之redo日志
  13. 上海启用大数据捉拿套牌车 被套牌应立即报案
  14. 为什么蓝牙小音箱会经常断开连接?
  15. ADF Faces Core 标记库信息
  16. matlab箭头大小固定,科学网—Matlab 粗箭头绘制 - 肖鑫的博文
  17. 《Thinking In Java》作者:不要使用并发!
  18. ECCV 2022 | 稀有类别提升31%!如何解决3D检测中长尾问题?(Waymo最新)
  19. CAD图层亮度的设置
  20. wpt eclipse 使用指南

热门文章

  1. Java-JVM第一篇认识JVM
  2. 第一篇 你好,我叫Flask
  3. (译).NET4.X并行任务Task需要释放吗?
  4. c 按输入的字母来输出对应效果
  5. 洛谷OJ P2356 弹珠游戏 维护前缀和
  6. 一种支持多种并行环境的栅格地理计算并行算子
  7. (转载)C/C++:sizeof('a')的值为什么不一样?
  8. java例程练习(东软笔试题——n阶平面魔方)
  9. 内联初始化字段与类实例构造器
  10. 传智播客 C/C++学习笔记 指针3 理解指针必须与内存四区相结合