当前位置: 首页 > news >正文

开源代码分享(32)-基于改进多目标灰狼算法的冷热电联供型微电网运行优化

参考文献:

[1]戚艳,尚学军,聂靖宇,等.基于改进多目标灰狼算法的冷热电联供型微电网运行优化[J].电测与仪表,2022,59(06):12-19+52.DOI:10.19753/j.issn1001-1390.2022.06.002.

1.问题背景

        针对冷热电联供型微电网运行调度的优化问题,为实现节能减排的目标,以微电网运行费用和环境污染成本为优化目标,建立了包含风机、微型燃气轮机、余热锅炉、溴化锂吸收式制冷机等微源的微电网优化模型。模型的优化求解使用改进的多目标灰狼优化算法,得到多目标问题的 Pareto 最优解集,并针对微电网优化问题约束条件较多,算法前期探索能力不足的问题,对算法进行改进。仿真结果表明,改进算法的求解速度和全局搜索性能优于原始算法,文中方法可以为冷热电联供型微电网优化调度提供建议,实现根据用户需求的微电网灵活调动,达到减少运行费用和污染气体排放的效果。

2.基本原理

        文中研究的 CCHP 型微电网 由风机 光伏电池、 微型燃气轮机 蓄电池和大电网承担电负荷 ,此系统与大电网根据需求进行买 卖电 余热锅炉 、蓄热槽和电采暖承担热负荷 ;溴化锂吸收式制冷机和分体式空调承担冷负荷 如图 所示 。 下面对主要微源的模型进行详细介绍

2.1 目标函数

        微电网的优化目标包括2个 :最低的微电网运行费用、最低的环境污染成本。

2.1.1微电网运行费用模型

        微电网运行费用包括三个方面:天然气费用、各微源的维护费用和微电网从大电网购售电产生的费用。优化目标的数学表达式为:

2.1.2环境污染成本模型

        微电网中产生污染气的微源主要为微型燃气轮机和大电网,单纯的将污染气体的排放总量相加无法反映其对环境的影响程度,文中将微网产生的污染气体的治理成本最少作为目标进行优化,具体的数学表达式为:

2.2改进多目标灰狼优化算法

        文中微电网的优化问题是非线性的多约束问题,在利用原始MOGWO算法进行求解的过程中,众多约束条件使得算法的计算时间增加,为了改善这一问题本文对MOGWO算法及优化模型进行了如下改进:
        (1)优化模型的简化。通过对微电网优化模型的简化可以有效减少灰狼的维数从而缩短求解时间:风机和光伏电池的维护成本相对较低且没有燃料费用和污染排放,故在优化时可以按照可能的最大功率出力;
        (2)灰狼初始化和位置更新的方式改变。在原始MOGWo中灰狼个体位置的每一维坐标是同时生成的,即每个微源在24个小时内的出力同时生成。原算法灰狼的位置向量表示为

        式中a,b,c代表不同的微源 ,数字代表不同的时段 。 如某个设备在某个时段的功率不符合约束的要求 整个灰狼的位置都要进行重新生成 ,造成运算量增加 针对微电网的约束和时间段的相关性 ,本文将每只灰狼个体位置按时间分为 24 ,将同一时间段的设备出力分为一组进行初始化和更新
判定满足约束时再进行下一组设备出力的初始化或更新,24个组都满足约束后进行合并和后续运算。这种做法的优势在于,当某个时段的设备出力不符合约束时,只需重新生成该时段的设备出力而非个体的所有时段的设备出力,从而缩短计算时间。
        ( 3 ) MOGWO算法的前期探索能力不足,对于式(28)中的控制参数a而言,a越大则算法的探索能力越强。在文中将线性缩小的α改为式(31)的幂函数形式,以提高算法前期的探索能力,经多次求解发现当指数为4时优化效果最佳。
        改进后的 MPGWO 算法的主要步骤如下

3.运行结果

4.matlab代码获取

开源代码分享(32)-基于改进多目标灰狼算法的冷热电联供型微电网运行优化资源-CSDN文库

相关文章:

开源代码分享(32)-基于改进多目标灰狼算法的冷热电联供型微电网运行优化

参考文献: [1]戚艳,尚学军,聂靖宇,等.基于改进多目标灰狼算法的冷热电联供型微电网运行优化[J].电测与仪表,2022,59(06):12-1952.DOI:10.19753/j.issn1001-1390.2022.06.002. 1.问题背景 针对冷热电联供型微电网运行调度的优化问题,为实现节能减排的目…...

7、架构-架构的安全性

即使只限定在“软件架构设计”这个语境下,系统安全仍然是一 个很大的话题。我们谈论的计算机系统安全,不仅仅是指“防御系统 被黑客攻击”这样狭隘的安全,还至少应包括(不限于)以下这些问 题的具体解决方案。 认证&am…...

LeetCode题练习与总结:路径总和Ⅱ--113

一、题目描述 给你二叉树的根节点 root 和一个整数目标和 targetSum ,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径。 叶子节点 是指没有子节点的节点。 示例 1: 输入:root [5,4,8,11,null,13,4,7,2,null,null,5,1], target…...

Java复数计算

复数在数学、科学或者工程领域是很常用的,可以通过调用Apache Commons Math库来完成,也可以自己手撸。 一、使用Apache Commons Math库 这个库有多个版本,在写这篇文章时,它的最新版是2022年12月19日的4.0-beta1,构建…...

MySQL-事务日志

事务的隔离性由 锁机制 实现 事务的原子性、一致性、隔离性 由事务的 redo日志 和 undo 日志来保证 redo log 称为 重做日志,提供再写入操作,恢复提交事务修改的页操作,用来保证事务的持久性。undo log 称为 回滚日志,回滚行记录…...

PySide6 GUI 学习笔记——常用类及控件使用方法(常用类坐标点QPoint)

控件是PySide设计好的能承载用户输入、输出的小窗体,将多个控件有机整合,能形成用户所需要的界面。而每一个控件,都有属于自己的属性、方法、信号、槽函数和事件(event),且控件与控件之间又有继承关系。 G…...

算法练习——字符串

一确定字符串是否包含唯一字符 1.1涉及知识点 c的输入输出语法 cin>>s; cout<<"NO"; 如何定义字符串 切记&#xff1a;在[]中必须加数字——字符串最大长度&#xff0c;不然编译不通过 char s[101]; 如何获取字符串长度 char s[101];cin>>s;i…...

Flutter 中的 SliverOverlapInjector 小部件:全面指南

Flutter 中的 SliverOverlapInjector 小部件&#xff1a;全面指南 Flutter 是一个功能丰富的 UI 框架&#xff0c;由 Google 开发&#xff0c;允许开发者使用 Dart 语言构建跨平台的移动、Web 和桌面应用。在 Flutter 的滚动视图系统中&#xff0c;SliverOverlapInjector 是一…...

7个Python爬虫入门小案例

大家好&#xff0c;随着互联网的快速发展&#xff0c;数据成为了新时代的石油。Python作为一种高效、易学的编程语言&#xff0c;在数据采集领域有着广泛的应用。本文将详细讲解Python爬虫的原理、常用库以及实战案例&#xff0c;帮助读者掌握爬虫技能。 一、爬虫原理 爬虫&a…...

linux 利用 ~$() 构造数字

2024.6.1 题目 <?php //flag in 12.php error_reporting(0); if(isset($_GET[x])){$x $_GET[x];if(!preg_match("/[a-z0-9;|#\"%&\x09\x0a><.,?*\-\\[\]]/i", $x)){system("cat ".$x.".php");} }else{highlight_file(__F…...

七大获取免费https的方式

想要实现https访问最简单有效的的方法就是安装SSL证书。只要证书正常安装上以后&#xff0c;浏览器就不会出现网站不安全提示或者访问被拦截的情况。下面我来教大家怎么去获取免费的SSL证书&#xff0c;又如何安装证书实现https访问。 一、选择免费SSL证书提供商 有多家机构提…...

JVM(Java虚拟机)笔记

面试常见&#xff1a; 请你谈谈你对JVM的理解?java8虚拟机和之前的变化更新?什么是OOM&#xff0c;什么是栈溢出StackOverFlowError? 怎么分析?JVM的常用调优参数有哪些?内存快照如何抓取&#xff1f;怎么分析Dump文件&#xff1f;谈谈JVM中&#xff0c;类加载器你的认识…...

秒杀基本功能开发(显示商品列表和商品详情)

文章目录 1.数据库表设计1.商品表2.秒杀商品表3.修改一下秒杀时间为今天到明天 2.pojo和vo编写1.com/sxs/seckill/pojo/Goods.java2.com/sxs/seckill/pojo/SeckillGoods.java3.com/sxs/seckill/vo/GoodsVo.java 3.Mapper编写1.GoodsMapper.java2.GoodsMapper.xml3.分别编写Seck…...

centos 记录用户登陆ip和执行命令

centos 记录用户登陆ip和执行命令 在/etc/profile 文件末尾添加如下代码&#xff1a; #!/bin/bash USER_IPwho -u am i 2>/dev/null | awk {print $NF} | sed -e s/[()]//g HISTDIR/usr/share/.history if [ -z "$USER_IP" ]; then USER_IPhostname fi…...

JZ2440笔记:DM9000C网卡驱动

在厂家提供的dm9dev9000c.c上修改&#xff0c; 1、注释掉#ifdef MODULE #endif 2、用模块化函数修饰入口出口函数 3、在dm9000c_init入口函数&#xff0c;增加iobase (int)ioremap(0x20000000,1024);irq IRQ_EINT7; 4、一路进入&#xff0c;在dmfe_probe1中注释掉if((db…...

【数据结构】二叉树:简约和复杂的交织之美

专栏引入&#xff1a; 哈喽大家好&#xff0c;我是野生的编程萌新&#xff0c;首先感谢大家的观看。数据结构的学习者大多有这样的想法&#xff1a;数据结构很重要&#xff0c;一定要学好&#xff0c;但数据结构比较抽象&#xff0c;有些算法理解起来很困难&#xff0c;学的很累…...

信号稳定,性能卓越!德思特礁鲨系列MiMo天线正式发布!

作者介绍 礁鲨系列天线&#xff0c;以其独特的外观设计和强大的性能&#xff0c;成为德思特Panorama智能天线家族的最新成员。这款天线不仅稳定提供5G、WIFI和GNSS信号&#xff0c;更能在各类复杂环境中展现出卓越的性能。它的设计灵感来源于海洋中的礁鲨&#xff0c;象征着力量…...

编程学习技巧——实战

目录 学习思路待续、更新中 学习思路 实战大小项目 翻阅官网手册——学习技术,调试问题 待续、更新中 1 顿号、: 先使用ctrl. &#xff0c;再使用一遍切回 2 下标: 21 2~1~ 3 上标: 2 0 2^{0} 20 $2^{0}$ 4 竖线 | : &#124 ; | 5 空格: &emsp ; 6 换行: &nbs…...

GPU学习(1)

一、为什么要GPU 我们先看一个基本的神经网络计算 YF(x)AxB 这就是一次乘法一次加法 &#xff0c;也叫FMA&#xff0c;(fused multiply-add) 如果矩阵乘&#xff0c;就是上面的那个式子扩展一下&#xff0c;所以又用了这张老图 比如你要多执行好几个yAxB&#xff0c;可能比较简…...

TQSDRPI开发板教程:UDP收发测试

项目资源分享 链接&#xff1a;https://pan.baidu.com/s/1gWNSA9czrGwUYJXdeuOwgQ 提取码&#xff1a;tfo0 LWIP自环教程&#xff1a;https://blog.csdn.net/mcupro/article/details/139350727?spm1001.2014.3001.5501 在lwip自环的基础上修改代码实现UDP的收发测试。新建一…...

opencv进阶 ——(九)图像处理之人脸修复祛马赛克算法CodeFormer

算法简介 CodeFormer是一种基于AI技术深度学习的人脸复原模型&#xff0c;由南洋理工大学和商汤科技联合研究中心联合开发&#xff0c;它能够接收模糊或马赛克图像作为输入&#xff0c;并生成更清晰的原始图像。算法源码地址&#xff1a;https://github.com/sczhou/CodeFormer…...

虚拟机改IP地址

使用场景&#xff1a;当你从另一台电脑复制一个VMware虚拟机过来&#xff0c;就是遇到一个问题&#xff0c;虚拟的IP地址不一样&#xff08;比如&#xff0c;一个是192.168.1.3&#xff0c;另一个是192.168.2.4&#xff0c;由于‘1’和‘2’不同&#xff0c;不是同一网段&#…...

MySQL(二)-基础操作

一、约束 有时候&#xff0c;数据库中数据是有约束的&#xff0c;比如 性别列&#xff0c;你不能填一些奇奇怪怪的数据~ 如果靠人为的来对数据进行检索约束的话&#xff0c;肯定是不行的&#xff0c;人肯定会犯错~因此就需要让计算机对插入的数据进行约束要求&#xff01; 约…...

vue3学习使用笔记

1.学习参考资料 vue3菜鸟教程&#xff1a;https://www.runoob.com/vue3/vue3-tutorial.html 官方网站&#xff1a;https://cn.vuejs.org/ 中文文档: https://cn.vuejs.org/guide/introduction.html Webpack 入门教程&#xff1a;https://www.runoob.com/w3cnote/webpack-tutor…...

微信小程序怎么进行页面传参

微信小程序页面传参的方式有多种&#xff0c;每种方式都有其特定的使用场景和优势。以下是几种常见的页面传参方式&#xff0c;以及它们的具体使用方法和示例&#xff1a; URL参数传值 原理&#xff1a;通过在跳转链接中附加参数&#xff0c;在目标页面的onLoad函数中获取参数…...

隆道出席河南ClO社区十周年庆典,助推采购和供应链数字化发展

5月26日&#xff0c;“河南ClO社区十周年庆典”活动在郑州举办&#xff0c;北京隆道网络科技有限公司总裁助理姚锐出席本次活动&#xff0c;并发表主题演讲《数字化采购与供应链&#xff1a;隆道的探索与实践》&#xff0c;分享隆道公司在采购和供应链数字化转型方面的研究成果…...

NetApp财季报告亮点:全闪存阵列需求强劲,云计算收入增长放缓但AI领域前景乐观

在最新的财季报告中&#xff0c;NetApp的收入因全闪存阵列的强劲需求而显著增长。截至2024年4月26日的2024财年第四季度&#xff0c;NetApp的收入连续第三个季度上升&#xff0c;达到了16.7亿美元&#xff0c;较前一年同期增长6%&#xff0c;超出公司指导中值。净利润为2.91亿美…...

javascript读取本地目录

在JavaScript中&#xff0c;直接读取本地目录的能力受到浏览器安全限制&#xff0c;因为出于隐私和安全考虑&#xff0c;浏览器的JavaScript环境通常不允许直接访问用户的文件系统。然而&#xff0c;随着Web技术的发展&#xff0c;一些现代浏览器引入了File System API或Web Fi…...

Java基础八股

Java基础八股 Java语言Java语言有什么特点Java与C区别Java如何实现跨平台JVMvsJDKvsJRE标识符和关键字的区别是什么自增自减运算符移位运算符continue,break,return的区别是什么final,finally,finalize的区别final关键字的作用时什么 变量 Java语言 Java语言有什么特点 Java是…...

【机器学习300问】102、什么是混淆矩阵?

一、混淆矩阵的定义 混淆矩阵是一种用于评估分类模型性能的评估指标。当模型对数据进行预测并将数据分配到预定义的类别时&#xff0c;混淆矩阵提供了一种直观的方式来总结这些预测与数据实际类别之间的对应关系。具体来说&#xff0c;它是一个表格。 二、分类模型性能评估一级…...

高级web开发工程师/整站优化

用户行为介绍基于用户行为的推荐&#xff0c;在学术界名为协同过滤算法。 协同过滤就是指用户可以齐心协力&#xff0c;通过不断地和网站互动&#xff0c;使 自己的推荐列表能够不断过滤掉自己不感兴趣的物品&#xff0c;从而越来越满足自己的需求。用户行为在个性化推荐系统中…...

国外idc网站/网络站点推广的方法有哪些

1&#xff1a;准备工作和内容来源 2&#xff1a;域名注册 3&#xff1a;网站设计越简单越好 4&#xff1a;内容长度 5&#xff1a;四处一词 6&#xff1a;站内定向锚文本 7&#xff1a;内容编辑标准 8&#xff1a;外链建设 9&#xff1a;日志分析能力 10&#xff1a;更新频率和…...

wordpress的json api/合肥网站推广优化公司

题意: 给出一串只有大小写字母的字符串(长度<500000)&#xff0c;最少连续多少个字符可以使得其中的所有种类的字符都出现在这些选出来的字符中 解题思路&#xff1a; 解法1&#xff1a; 二分 其实这个二分就和维护一个向右移动的窗口差不多 但是会更快 时间复杂度 判断O(n…...

免费做图表的网站/信息流广告模板

使用python手写实现单层神经网络[本质上学习logistic 回归的系数]。单层&#xff1a;有参数的一层&#xff1b;输入不算网络层。 网络用途 或者说应用场景&#xff1a;使用单层神经网络来识别一张图片是否是猫咪的图片。 数学表示 给定一张图片\(X\) 送到网络中&#xff0c;判断…...

网站开发与开发/网络营销工具有哪些

1.LED原理图 2.建立工程 创建目录及选择我们使用的C51的CPU 新建主程序 项目导入主程序 3. 编写程序 程序内容 //引入头文件 #include<reg51.h> //定义一个函数 点亮p2.0口所对应的led sbit LED0 P2^0; void main() { //一开始我们把所有的P2口赋值为0 代表为熄灭…...

淘宝网网页版登录入口在哪里/东莞网站推广及优化

for、while、do while和switch暂时没发现与c的不同&#xff0c;这里只整理foreach。 foreach foreach的作用是遍历集合中的所有元素。foreach语句中的表达式由关键字in隔开的两个项组成&#xff0c;in左边的项是变量名&#xff0c;in右边的项是集合名。语法结构如下&#xff1a…...