基于粒子群算法的微网经济优化调度——附Matalb代码
目录
摘要:
代码主要内容:
研究背景:
微电网模型:
粒子群算法:
运行结果:
Matlab代码分享:
摘要:
提出了一种经济与环保相协调的微电网优化调度模型,针对光伏电池、风机、微型燃气轮机、柴油发电机以及蓄电池组成的微电网系统的优化问题进行研究,在满足系统约束条件下,建立了包含运行成本的微电网经济性目标优化调度模型,并利用粒子群算法(PSO)求解微电网优化调度问题,仿真结果表明该模型对微电网优化调度具有一定的指导作用。
代码主要内容:
代码主要构建了含风电机组、光伏机组、燃气轮机组以及储能机组的微网日前调度模型,其中考虑了微网与上级电网的交易,采用粒子群算法给出最优调度结果,结果展示了各机组的出力水平,适合初学者学习使用代码属于精品代码。
研究背景:
随着我国工业和社会经济的快速发展,一次能源生产量与需求量逐渐上升,2020年我国全年能源消费总量已达到了49.8亿吨标准煤,相较于2019年增长了 2.2%。煤炭消费量占能源消费总量的 56.8%,核电、风电、太阳能等清洁能源消费量占能源消费总量的 24.3%。目前,我国在一次能源消费量上远远超过美国和印度,然而传统的煤炭、天然气等能源日益紧缺,逐渐影响我国社会经济的可持续发展。在此背景之下,我国提出了“碳达峰及碳中和”的能源结构转型战略需要。相比于化石能源,以风电为代表的可再生能源具有无污染、可再生的特点,大力发展风力发电技术将有效解决资源短缺和环境污染问题。但由于风电本身具有的随机性和波动性,给风电并网的调度运行带来严峻的安全问题。如何合理利用可再生能源发电、提高综合能量利用效率、降低对传统化石能源的依赖是目前重要的研究方向。
微电网(Microgrid,MG)作为一种能够灵活、高效地应用各类分布式电源,促进风电等可再生能源的利用,因此被认为是促进分布式可再生能源接入大电网的一种有效技术手段。微电网具体是一种由多种分布式能源、储能系统、能量转换设备、负荷以及相应保护系统集成的电力系统,在一定地理区域范围内进行小规模发电,减少上层电网电力传输损失并保持不间断的电力供应,具有孤岛运行和并网运行两种运行方式,也可与主电网进行单边和双边交易,拥有灵活改变运行方式的能力同时具有可调度属性。微电网不仅可以作为单一的可控子系统接入上层电网进行功率交互,而运行也可受到用户侧的控制和管理。微电网中接入储能、光伏、风电等可调度能源能有效应对恶劣天气造成的连锁停电事故,利用可再生能源减少化石燃料燃烧产生的有害污染物,提高微电网运行经济效益。对含风柴储的微电网进行的优化调度研究一方面可以满足人们对可再生能源资源高效利用的需求,另一方面可以有效降低我国电力网络对于传统化石能源的依赖性、提升电力网络运行经济性,所以此研究在我们的实际生产生活中非常有必要。
微电网模型:
采用如图1所示的微电网系统,该系统中包含了光伏电池(Photovoltaic Cell,PV)、风机(Wind
Turbine,WT)等清洁不可控发电单元,柴油发电机(Diesel Generator,DE)、微型燃气轮机(Micro Turbine,MT) 等清洁可控发电单元以及储能单元(EnergyStorage Elements,ES)。本文微电网处于孤岛运行,由微电源对微电网内部负荷进行供电。

粒子群算法:
利用改进的惯性权重线性递减粒子群算法对微电网经济运行与优化调度问题进行求解的具体方法为:
(1)粒子群初始化,设置优化求解过程中的相关基本参数:粒子群个数N,最大迭代次数kmax,惯性权重系数ω的以及两个学习因子c1、c2等。
(2)在规定的上下限值之内生成初始粒子,配置每一个粒子的位置和速度,每一个粒子的维度表示微电网系统中微电源的个数,每一个粒子每一维度上的位置则表示该微电源在系统实际运行时的输出(或输入)功率。每一个粒子都表示为经济运行与优化调度问题的一个可行解,也就是微电网正常运行时各微源的一个出力配置方案。
(3)求出每个粒子的目标函数的值,并将这些值同自身曾经历过的最优位置进行比较,若现有粒子目标函数值比后者更优,则用现有粒子位置替代曾经历过的最优位置,将其作为该粒子个体最优值。然后将整个粒子群所有粒子的目标函数值进行比较,并将其中最优的位置同整个粒子群曾经历过的最优位置进行比较,若前者优于后者,则替代之。在第一次进行迭代时(k=0),无个体最优值和群体最优值,将本粒子所在位置设为个体最优值,将群体中的最优位置设为群体最优值。
(4)更新每个粒子的速度以及位置,生成新一代粒子和粒子群。
(5)判断当前迭代次数是否达到规定的最大次数,若未达到,则迭代次数加1(k=k+1),更新惯性权重ω的值,并进行下一次迭代;若达到了最大迭代次数,则退出循环,输出求得的最优解。
运行结果:


Matlab代码分享:

相关文章:
基于粒子群算法的微网经济优化调度——附Matalb代码
目录 摘要: 代码主要内容: 研究背景: 微电网模型: 粒子群算法: 运行结果: Matlab代码分享: 摘要: 提出了一种经济与环保相协调的微电网优化调度模型,针对光伏电池…...
Flink入门
目录 一、Flink简介 二、为什么选择Flink 三、与传统数据处理架构相比 四、Flinik批处理数据基础代码 五、Flink流处理基础代码 一、Flink简介 Apache Flink 是一个框架和分布式处理引擎,用于对无界和有界数 据流进行状态计算。 二、为什么选择Flink 流数据更…...
【Go微服务开发】gin+grpc+etcd 重构 grpc-todolist 项目
写在前面 最近稍微重构了之前写的 grpc-todolist 模块 项目地址:https://github.com/CocaineCong/grpc-todoList 1. 项目结构改变 与之前的目录有很大的区别 1.1 grpc_todolist 项目总体 1.1.1 改变前 grpc-todolist/ ├── api-gatway // 网关模块 ├── ta…...
单板硬件设计:存储器SD卡( NAND FLASH)
在单板设计中,无论是涉及到一个简易的CPU、MCU小系统或者是复杂的单板设计,都离不开存储器设计: 1、存储器介绍 存储器的分类大致可以划分如下: ROM和RAM指的都是半导体存储器,ROM在系统停止供电的时候仍然可以保持数…...
C++实现日期类Date(超详细)
个人主页:平行线也会相交💪 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 平行线也会相交 原创 收录于专栏【C之路】💌 本专栏旨在记录C的学习路线,望对大家有所帮助🙇 希望我们一起努力、成长&…...
实验室检验系统源码,集检验业务、质量控制、报告、统计分析、两癌等模块于一体
云 LIS 系统针对区域化 LIS 而设计,依托底层云架构,将传统的 LIS 功能模块进行“云化”。 该系统是集检验业务、科室管理、质量控制、报告、统计分析、两癌等模块于一体的数据检验信息平台。通过计算机联网,实现各类仪器数据结果的实时自动接…...
学习RHCSA的day.03
目录 2.6 Linux系统的目录结构 2.7 目录操作命令 2.8 文件操作命令 2.6 Linux系统的目录结构 1、Linux目录结构的特点 分区加载于目录结构: 使用树形目录结构来组织和管理文件。整个系统只有一个位于根分区的一个根目录(树根)、一棵树。…...
电子邮件协议(SMTP,MIME,POP3,IMAP)
SMTP 关键词: 电子邮件协议:SMTP简单邮件传输协议,负责将邮件上传到服务器,采用TCP的25端口,C/S工作。仅传送ASCII码文本 详细介绍: SMTP是一种提供可靠且有效的电子邮件传输的协议。SMTP是建立在FTP文件传输服务上…...
Golang笔记:使用embed包将静态资源嵌入到程序中
文章目录 目的使用演示//go:embed 指令在WebServer中应用总结 目的 Golang编译程序默认是静态编译,会把相关的库都打包到一起,这在分发部署使用时非常方便。不过如果项目中用到的外部的静态资源文件,通常就需要将这些资源和程序一起拷贝分发…...
ImportError: cannot import name ‘OldCsv‘ from ‘pyflink.table.descriptors‘
我最近开始使用flink用于数据处理。 当我尝试执行table api 用于计数时 我不能导入OldCsv and FileSystem from pyflink.table.descriptors. I have also downloaded apache-flink using: pip install apache-flink [rootmaster flink]# pip3 list | grep flink apache-fli…...
YouCompleteMe(YCM)安装
vim在各个linux版本中是个比较好编辑器,反正nano我是用不惯。但这个ycm的安装也是不断的在变,现在的安装比之前要简单的多,基本个几命令就搞定了,而且 也不用关心系统里有没有vim,ycm已经可以自动安装。具体安装步骤如下ÿ…...
day33_css
今日内容 零、 复习昨日 一、CSS 零、 复习昨日 见代码 一 、引言 1.1CSS概念 层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文…...
10个最流行的向量数据库【AI】
矢量数据库是一种将数据存储为高维向量的数据库,高维向量是特征或属性的数学表示。 每个向量都有一定数量的维度,范围从几十到几千不等,具体取决于数据的复杂性和粒度。 推荐:用 NSDT场景设计器 快速搭建3D场景。 矢量数据库&…...
vite3+vue3 项目打包优化二 —— 依赖分包策略
在没有配置构建工具的分包功能时,构建出来的文件将无比巨大且是独立的一个 js 和 css 文件(如下图),这样本地加载文件时会存在巨大的压力。 默认情况下,浏览器重复请求相同名称的静态资源时,会直接使用缓存…...
中国社科院与美国杜兰大学金融管理硕士——与时间赛跑,充分利用每一分钟
不管你愿不愿意,时间总是在不经意间流去。林清玄在《和时间赛跑》中写道:“虽然我知道人永远跑不过时间,但是可以比原来快跑几步。那几步虽然很小很小,但作用却很大很大”。是的,我们需要与时间赛跑,充分利…...
什么是Dirichlet分布?
Dirichlet分布是一种概率分布,用于描述多维随机变量的概率分布。它是一个连续分布,通常用于处理具有多种可能取值的离散型随机变量。在LDA模型中,Dirichlet分布通常被用作先验分布,用来表示主题的概率分布和单词的概率分布。 Dir…...
web前端开发需要哪些技术?学前端顺序千万千万不要搞错啦!
宝子们,下午好,之前给大家分享了前端岗位的前景规划,小源看的出来,还是有不少宝子想入行前端的! 那除了会面试,还要有充足丰富的知识储备,需要什么技术,怎么样做才能找到高薪工作呢&…...
【AFNetWorking源码(二)AFURLSessionManger和AFHTTPSessionManager】
前言 学习了Mananger的初始化和以GET请求为例的过程,发现整个过程离不开AFHTTPSessionManager和AFURLSessionManger的某些方法。这两个是AFN的重要的网络通信模块内容,对它们作揖详细的学习。 AFURLSessionManager和AFHTTPSessionManager都是AFNetwork…...
编程不头秃,Google「AI程序员」来了,聊天就能敲代码
上周 Google 在 I/O 大会宣布了一个能够辅助编程的聊天机器人 Codey,现在它终于上线 Google Colab 啦! 🌟 Codey 是基于 Google 目前最新的大语言模型 PaLM 2 运行,有着强大的语言理解和编程能力。 Codey 有这些功能࿱…...
【数据结构与算法】基础数据结构
文章目录 数组概述动态数组二维数组局部性原理越界检查 链表概述单向链表单向链表(带哨兵)双向链表(带哨兵)环形链表(带哨兵) 队列概述链表实现环形数组实现 栈概述链表实现数组实现应用 双端队列概述链表实…...
23-Oracle 23 ai 区块链表(Blockchain Table)
小伙伴有没有在金融强合规的领域中遇见,必须要保持数据不可变,管理员都无法修改和留痕的要求。比如医疗的电子病历中,影像检查检验结果不可篡改行的,药品追溯过程中数据只可插入无法删除的特性需求;登录日志、修改日志…...
Python实现prophet 理论及参数优化
文章目录 Prophet理论及模型参数介绍Python代码完整实现prophet 添加外部数据进行模型优化 之前初步学习prophet的时候,写过一篇简单实现,后期随着对该模型的深入研究,本次记录涉及到prophet 的公式以及参数调优,从公式可以更直观…...
【OSG学习笔记】Day 16: 骨骼动画与蒙皮(osgAnimation)
骨骼动画基础 骨骼动画是 3D 计算机图形中常用的技术,它通过以下两个主要组件实现角色动画。 骨骼系统 (Skeleton):由层级结构的骨头组成,类似于人体骨骼蒙皮 (Mesh Skinning):将模型网格顶点绑定到骨骼上,使骨骼移动…...
浅谈不同二分算法的查找情况
二分算法原理比较简单,但是实际的算法模板却有很多,这一切都源于二分查找问题中的复杂情况和二分算法的边界处理,以下是博主对一些二分算法查找的情况分析。 需要说明的是,以下二分算法都是基于有序序列为升序有序的情况…...
sipsak:SIP瑞士军刀!全参数详细教程!Kali Linux教程!
简介 sipsak 是一个面向会话初始协议 (SIP) 应用程序开发人员和管理员的小型命令行工具。它可以用于对 SIP 应用程序和设备进行一些简单的测试。 sipsak 是一款 SIP 压力和诊断实用程序。它通过 sip-uri 向服务器发送 SIP 请求,并检查收到的响应。它以以下模式之一…...
Go 语言并发编程基础:无缓冲与有缓冲通道
在上一章节中,我们了解了 Channel 的基本用法。本章将重点分析 Go 中通道的两种类型 —— 无缓冲通道与有缓冲通道,它们在并发编程中各具特点和应用场景。 一、通道的基本分类 类型定义形式特点无缓冲通道make(chan T)发送和接收都必须准备好࿰…...
【JVM】Java虚拟机(二)——垃圾回收
目录 一、如何判断对象可以回收 (一)引用计数法 (二)可达性分析算法 二、垃圾回收算法 (一)标记清除 (二)标记整理 (三)复制 (四ÿ…...
深入浅出Diffusion模型:从原理到实践的全方位教程
I. 引言:生成式AI的黎明 – Diffusion模型是什么? 近年来,生成式人工智能(Generative AI)领域取得了爆炸性的进展,模型能够根据简单的文本提示创作出逼真的图像、连贯的文本,乃至更多令人惊叹的…...
Python实现简单音频数据压缩与解压算法
Python实现简单音频数据压缩与解压算法 引言 在音频数据处理中,压缩算法是降低存储成本和传输效率的关键技术。Python作为一门灵活且功能强大的编程语言,提供了丰富的库和工具来实现音频数据的压缩与解压。本文将通过一个简单的音频数据压缩与解压算法…...
高防服务器价格高原因分析
高防服务器的价格较高,主要是由于其特殊的防御机制、硬件配置、运营维护等多方面的综合成本。以下从技术、资源和服务三个维度详细解析高防服务器昂贵的原因: 一、硬件与技术投入 大带宽需求 DDoS攻击通过占用大量带宽资源瘫痪目标服务器,因此…...
