基于新型战争策略优化算法的光伏模型优化(Matlab代码实现)

news2024/12/30 2:51:40

 💥💥💥💞💞💞欢迎来到本博客❤️❤️❤️💥💥💥
🎉作者研究:🏅🏅🏅本科计算机专业,研究生电气学硕主要研究方向是电力系统和智能算法、机器学习和深度学习。目前熟悉python网页爬虫、机器学习、群智能算法、深度学习的相关内容。希望将计算机和电网有效结合!⭐️⭐️⭐️

📋📋📋本文目录如下:⛳️⛳️⛳️

目录

1 概述

1.1 分析方法

1.2 确定性方法

1.3 元启发式方法

2 战争策略优化算法

3 基于新型战争策略优化算法的光伏模型优化数学模型

4 运行结果

5 参考文献

6 Matlab代码实现


1 概述

由于与气候变化和能源危机相关的众多因素,可再生能源的使用在最近有所增加。太阳能发电系统广泛用于大型光伏(PV)发电厂发电。特别是,光伏系统通常安装在暴露区域,这些系统容易在发生暴雨和大风等恶劣天气条件的情况下恶化。1、2为了解决这个问题,需要一个更准确的数据驱动模型来确定太阳能行业光伏系统的基本特性。太阳能模型参数提取的详细分析有利于光伏电站性能评估、效率计算以及最大功率点跟踪(MPPT)和光伏系统的最佳能源管理。3

一般来说,太阳能光伏系统的详细建模包括两个阶段:第一个是数学模型的发展,第二个是参数识别。在所有型号中,单二极管模型(SDM)和双二极管模型(DDM)在所有实际情况下都得到了广泛的应用。4-5然而,未指定的参数主要影响光伏模型的实际性能,如果这些模型受到设备的偶然老化,则可能以不稳定和容易出错的形式出现。因此,事先精确估计光伏电池参数是一项关键的仿真任务。7此外,光伏系统的安装和优化也应该更加准确。然而,PV模型被假定为具有非凸关系的非线性系统。此模型的解决方案带来了几个问题和障碍。最近,研究人员做出了重大努力,以确定准确估计未知参数的方法。大致确定了大约三种方法。它们是分析方法,确定性方法和元启发式方法,这些方法解释如下8:

1.1 分析方法

分析方法根据供应商提供的数据估算参数,例如开路电压,短路电流,制造商的最大功率点和I-V特性。9、10在分析方法中,I-V特性曲线中的所有数据点都用于识别减少预测值和测量值之间误差的参数。然而,分析方法使用广泛的数学公式,并以其简单性,速度和独特性而著称。此外,一些数学公式是在假设的基础上推导和简化的。11、12因此,使用这些方法,派生的参数并不准确。

1.2 确定性方法

确定性方法基于“获取整个系统的所有实际测量数据”策略,其中使用相对大量的测量来提取未知参数。13-15它基于一个目标函数,该函数表示实验数据点和估计数据点之间的差异。由于这些算法基于梯度信息,因此它们可能会收敛到局部最佳最优解。

1.3 元启发式方法

元启发式方法也类似于确定性方法,因为它们也基于“获取整个系统的所有实际测量数据”策略。它们被认为是全局最佳优化算法,因为它们具有几个优点,例如鲁棒性,性能可靠性,简单性,易于实现等。最近人们越来越关注元启发式,因为这些现象学通常由具有意识形态模式的生物过程指导,这些过程为现实世界的问题找到了最佳解决方案。元启发式算法被分为不同的文学类别,如下所示:

1.3.1 基于进化的算法

这些算法起源于进化论。一些流行的进化算法是遗传算法(GA),16差分进化算法( DEA),17进化战略算法( ESA),18等。

1.3.2 基于群的算法

这些算法模仿了各种社会群体的社会行为和集体决策。在这些算法中达到某个目标的解释通常是基于生物群落的智力/集体行动。一些流行的基于群的算法是粒子群优化(PSO),19蚁群优化,20灰狼优化,21鲸鱼优化算法( WOA),22社交蜘蛛优化,23salp swarm optimization (SSA),24、25等。

1.3.3 基于物理的算法

基于物理的算法受到自然物理定律的影响。此类别的一些示例是引力搜索算法(GSA),26磁优化算法,27正弦-余弦算法 (SCA),28人工电场优化,29等。

1.3.4 基于人类行为的算法

最近,受人类社会行为启发的优化算法在文献中得到了提出。基于教学的优化(TLBO),30政治优化器,31联赛冠军算法,32等等,是基于人类行为的算法的例子。

对光伏电池和模块进行精确建模的最常见方法是使用模拟电路。许多光伏研究人员通常首选SDM和DDM建模。SDM PV模型有五个参数,必须精确确定这五个参数才能仿真单二极管电池和模块。DDM PV模型中包含七个相关参数,这七个参数必须精确确定,以便仿真双二极管电池和模块。需要对PV电池/组件的五个或七个参数进行估计,以准确模拟物理系统的I-V特性。测量和预测的PV电池/组件电流之间的绝对误差应最小。

光伏(PV)模块或太阳能电池由具有特定参数的电路模型进行电特性表征。对于光伏系统仿真和操作,必须使用实验数据精确计算太阳能电池参数。在各种工作条件下,如可变太阳辐射和温度,使用I-V特性分析系统性能,需要提取太阳能光伏系统的未知参数。然而,太阳能光伏模型问题本质上是高度非线性的。为了解决这个问题,一个有效的算法是必要的。因此,在本研究中,我们提出了一种受古代战争策略启发的新型元启发式优化算法。提出的战争战略优化(WSO)算法是基于军队在战争期间的战略调动而提出的。战争策略被建模为一个优化过程,其中每个士兵动态地朝着全球最佳最优值移动。每个士兵都被分配了一个独特的重量,他们的当前位置会根据上一次迭代的成功率动态更新。先前太阳能光伏模型参数提取研究中采用的目标函数是错误的。然而,在这项工作中,我们将Newton Raphson方法与WSO算法集成,以提高输出解的精度。实验结果表明,与现有算法相比,该算法表现出优异的性能。

2 战争策略优化算法

3 基于新型战争策略优化算法的光伏模型优化数学模型

见第5部分。

4 运行结果

部分代码:

%% 基于新型战争策略优化算法的太阳能光伏模型优化
close all
clear
clc
format long;
Solidiers_no=50; % 士兵人数
Max_iteration=1000; %最大迭代次数
global V Ie Im
%% 目标函数
tic
fobj=@single_dd;
lb=[0 0 0 0 1];
ub=[1 1 100 0.5 2];
dim=5;
BEst=zeros(1,10);
BESTT1=inf;
for i=1:10
i

[Best_score,Best_pos,WSO_cg_curve]=WSO(Solidiers_no,Max_iteration,lb,ub,dim,fobj);
BEst(i)=Best_score;
if Best_score<BESTT1
    BESTT1 = Best_score;
    BESTT2=Best_pos;
end
% BEst(i)=min(PSO_cg_curve);
end
toc
S=std(BEst)
A=mean(BEst)  
B=min(BEst)
single_dd(BESTT2)
%% 可视化
figure(1)

semilogy(WSO_cg_curve,'Color','b')
title('目标函数解空间')
xlabel('迭代次数');
ylabel('最优解');

axis tight
grid on
box on

figure(2)
plot(V,Im,'LineWidth',2)
hold on
plot(V,Ie,'>','LineWidth',2,'MarkerFaceColor','black')
xlabel('电压')
ylabel('电流')
legend('真实值','预测值')

figure(3)
plot(V, V.*Im,'LineWidth',2)
hold on
plot(V,V.*Ie,'>','LineWidth',2)
xlabel('电压')
ylabel('功率')

5 参考文献

部分理论引用网络文献,若有侵权请联系博主删除。 

[1]李洁, 韩洲亮.带有MPPT跟踪技术的太阳能光伏电池MATLAB仿真模型[J].自动化与仪器仪表, 2017(1):3.

[2]严国康.太阳能光伏电池工程用仿真模型及其MPPT控制算法研究[D].重庆大学, 2015

6 Matlab代码实现

博客主页:电气辅导帮

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/75681.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

vscode通过插件一键运行 c++单元测试

gtest使用初探 简介: 本文在 ubuntu18.04 上实现了 googletest 的全局安装&#xff0c;并在一个 demo项目中演示了使用 cmake 引入了该库&#xff0c;实现了在命令行中运行 c 单元测试&#xff0c;包括运行单个 TEST 函数。另外通过 vscode 的插件 C TestMate&#xff0c; 实现…

MATLAB应用2——MATLAB串口采集加速度计数据

串口保存数据为txt格式&#xff1a; clc ; %死机的时候&#xff0c;在命令窗口输入return %getcominstrhwinfo (serial) %寻找串口 delete(instrfindall) %这句话必须有 global xx; global nn; global data1; global s; xx0; nn500; data1(1:nn)0; sserial(COM8); set(s,Bau…

什么?用Python实用脚本也能实现快速卡通画人物头像,这不就是妥妥的QQ秀嘛。

前言 今天我们就利用Python脚本实现天气查询应用吧。直接开整~ 思路分析 从大量照片/卡通数据中习得照片到卡通画的映射。 开发工具 python版本&#xff1a; 3.6 相关模块&#xff1a; pytorch 1.4 tensorflow-gpu 1.14 face-alignment dlib 1.数据准备 训练数据包括…

Linux入门—Shell常用命令之打包压缩

本文由【正厚软件】沙老师提供 打包压缩命令 1. gzip 命令 命令功能&#xff1a;压缩或展开文件 命令格式&#xff1a; ogzip [ -acdfhlLnNrtvV19 ] [-S 后缀] [ 文件名 ... ] &#xff1a;压缩文件 ogunzip [ -acfhlLnNrtvV ] [-S 后缀] [ 文件名 ... ] &#xff1a;解压缩文件…

离线安装harbor容器镜像仓库单机版(harbor-v2.3.5)

记录&#xff1a;358 场景&#xff1a;在CentOS 7.9操作系统上&#xff0c;离线部署harbor容器镜像仓库单机版&#xff0c;使用Redis为外部缓存、使用PostgreSQL为外部数据库、使用docker-ce操作容器、使用docker-compose操作harbor容器镜像仓库。 版本&#xff1a; 操作系统…

OpenAI chatGPT火爆出圈,世界悄悄发生着变化

OpenAI chatGPT火爆出圈&#xff0c;世界悄悄发生着变化一、为什么突然火起来了&#xff1f;二、ChatGPT功能实例2.1 [AI聊天](https://chat.openai.com/chat)2.2 [AI写新闻稿](https://chat.openai.com/chat)2.3 [AI写代码](https://chat.openai.com/chat)2.4 [AI写论文](http…

Kubernetes二进制单节点集群部署

Kubernetes二进制单节点集群部署 常见的K8S按照部署方式 ●Mini kube Minikube是一个工具&#xff0c;可以在本地快速运行一个单节点微型K8S&#xff0c;仅用于学习、预览K8S的一些特性使用部署地址&#xff1a; https://kubernetes.io/docs/setup/minikube ●Kubeadmin Kubea…

浅谈Kernel32.dll(Windows平台下必有的动态库文件)

今天听了前辈的黑客攻击的知识分享&#xff0c;里面比较基础的元素就是Kernel32.dll&#xff0c;我对它感兴趣好久了&#xff0c;今天搜集一些资料&#xff0c;有关Kernel32的。 目录 ​编辑 一、Kernel32介绍 二、Kernel32内存管理 三、引起Kernel32出错的主要元凶 四、解…

【求助帖】从技术转为项目经理后,如何快速进入角色?

近日&#xff0c;看到了一个求助贴&#xff0c;小李今年26岁&#xff0c;干了两年技术后&#xff0c;现在转行到项目经理的岗位。每天东奔西跑、天天加班还是感觉很吃力、工作也没有成效&#xff0c;想问下如何能快速进入角色&#xff1f; 那么小李的一天具体是怎么样的呢&…

追格小程序重磅升级 新亮点来袭!

追格小程序是一个积木式小程序搭建框架&#xff0c;基于UniappWordPress开发&#xff0c;代码免费开源不加密且支持二开&#xff0c;安装追格相应扩展模块&#xff0c;简单配置即可快速搭建不限于圈子社区、知识付费、活动报名、资讯等类型小程序。 新的亮点是什么 追格小程序…

以太网 VLAN(VLAN数据帧格式、交换机接口类型)

2.8.2 以太网 VLAN&#xff08;VLAN数据帧格式、交换机接口类型&#xff09; 原始的以太网数据帧没有802.1QTag字段&#xff0c;在网络中进行转发的时候能够被主机接收、解封查看。 而一但有了802.1Q Tag字段的以太网数据帧&#xff0c;主机即使能接收数据帧&#xff0c;也无法…

233的字符串

//在群里看到了老师发布的下面这条消息&#xff0c;许久没打代码&#xff0c;打算找找感觉&#xff0c;第一道就拿捏我了&#xff0c;题目不是很难&#xff0c;但是高数据范围的超时问题一直是我未找到解决办法的一个问题&#xff0c;虽然现在比赛未结束&#xff0c;不过我的错…

人脑如果是台计算机,那么电从哪里来?

1.人脑是一台量子计算机 2022年10月7日&#xff0c;爱尔兰都柏林三一学院的实验团队在《物理学通讯》杂志上发表了一篇名为《非经典脑功能的实验指标》的论文。研究人员在论文中写道&#xff1a;“我们的研究结果表明&#xff0c;我们可能已经目睹了由意识相关的大脑功能介导的…

我写这10+个JavaScript单行代码,被组长夸代码写得优雅

JavaScript 非常大的特点容易上手且非常灵活&#xff0c;代码实现方式五花八门&#xff1b;有时候能一行代码解决&#xff0c;就尽量不用两行。 本文整理了非常有用的单行代码&#xff0c;这些需求都是在开发中非常常见的&#xff0c;用单行代码可以帮助你提高工作效率。 数组…

问卷开头语怎么写?

问卷的开头语是一份问卷的开场&#xff0c;开场好不好关系到整个问卷过程能够顺利进行。所以&#xff0c;在关注问卷的标题、题目、设计以外&#xff0c;我们也要重视起问卷的开头语。通俗易懂的内容更易进行传播&#xff0c;这一点也可以运用到问卷中&#xff0c;表达清晰、完…

低代码平台数据表格组件的设计实践

在做低代码产品的过程中&#xff0c;产品经理可能会遇到各种各样的问题&#xff0c;比如部分产品经理可能会因为对数据模型的不熟悉&#xff0c;而在实际对接中产生一定障碍。所以产品经理要如何在低代码工作中铲除障碍、并进行决策&#xff1f;本篇文章里&#xff0c;作者结合…

⚡热点管理模块⚡

热点管理模块概念 如果一个文件在连续一段时间内没有访问到&#xff0c;则该文件是一个非热点文件&#xff0c;否则位热点文件。在服务上上有两个目录&#xff0c;一个目录是backdir存储的是热点文件&#xff0c;一个目录是packdir存储的是非热点文件热点管理模块每隔一段时间…

ROHM | 开发出隔离型DC-DC转换器“BD7Fx05EFJ-C”

全球知名半导体制造商ROHM&#xff08;总部位于日本京都市&#xff09;开发出两款隔离型反激式*1DC-DC转换器“BD7F105EFJ-C”和“BD7F205EFJ-C”&#xff0c;新产品非常适用于xEV&#xff08;电动汽车&#xff09;的主驱逆变器、车载充电器&#xff08;以下简称“OBC”&#x…

Unity Addressables资源管理 设置远程加载资源

1.添加Group 点击 PackedAssets 可添加默认设置的组 Blank 则是无设置的 修改名字并添加了一张图片 图片挂在WindowImage预制体上 2.设置模式 Group可选择打包模式&#xff1a; 本地&#xff0c;远程&#xff0c;自定义 设置了后这个包会打到不同的路径&#xff0c;加载也只…

环形石子合并(区间DP)

将 n 堆石子绕圆形操场排放&#xff0c;现要将石子有序地合并成一堆。 规定每次只能选相邻的两堆合并成新的一堆&#xff0c;并将新的一堆的石子数记做该次合并的得分。 请编写一个程序&#xff0c;读入堆数 nn 及每堆的石子数&#xff0c;并进行如下计算&#xff1a; 选择一…