基于高斯混合模型聚类的风电场短期功率预测方法(Pythonmatlab代码实现)

news2024/10/6 19:20:41

💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

📚2 运行结果

2.1 Python

2.2 Matlab

🎉3 参考文献

🌈4 Matlab代码、数据、文章讲解


💥1 概述

文献来源:

摘要:对任意来流条件下的风电场发电功率进行准确预测,是提高电网对风电接纳能力的有效措施。针对大型风电场的功率预测采用单点位风速外推预测代表性差的局限,提出基于高斯混合模型(GMM)聚类的风电场短期功率预测方法。方法结合数据分布特征,利用GMM聚类将大型风电场划分为若干机组群,借助贝叶斯信息准则指标评价,获得风电场内最优机组分组方案。实际算例验证表明,按照小时级、月度级、年度级等时间尺度进行统计,所建立的GMM聚类模型均极大地提高了未分组的风电功率预测模型的准确性。相较于应用广泛的k-means聚类、层次凝聚聚类等方法,GMM聚类方法在分组功率预测中表现出了显著优势,为大型风电场短期功率预测模型的优化及运行经济性的提升提供了技术支持与依据。

关键词:

风电机组;高斯混合模型聚类;合理性评价;功率预测;

 随着风力发电的大规模并网,风能的间歇性和波动性带来的问题凸显,对风电场发电功率进行准

确预测,将不确定的风电转变为可调度的友好型电源,是提高风力发电市场竞争力的有效方式[

1-2] 。面向日前电力平衡的风电场短期功率预测方法主要有基于学习算法的统计方法[3-4]和基于求解大气运动方程的物理方法[5-7] 两大类。神经网络法、时间序列法、卡尔曼滤波法等统计方法能够自发地适应不同的风电场特征,具有计算速度快、预测精度高的特点,在风电功率预测领域得到了广泛应用[8]。但由于统计方法具有黑箱性,预测功率的准确性提升仍是困扰研究及工程人员的重要难题,尤其对于复杂地形及大型风电场。因气候、地形及风电机组排布等的综合作用,风电场内不同机组表现出相异的出力特征,利用单一点位的风速外推预测整场发电功率,将难以保证预测精度;若针对单台机组分别建模,将极大地影响功率预测的时效性和经济性[9],且会增加整场预测的不确定性。因此,将整场的风电机组划分为若干机组群,建立考虑风电场内机组分群的功率预测模型,对于提高风电场短期功率预测的准确性和经济性具有重要意义。在风电功率预测及分析领域,分组聚类方法已得到广泛应用。文献[10]提出在神经网络预测方法

中引入基于划分的 k-means聚类算法,对包含气象和历史功率信息的样本进行分类,克服了神经网络的不稳定性和过拟合风险;文献[11]基于模型的自组织特征映射(SOM)聚类算法与 K 折验证相结合,将训练样本按照数据分布特征分类,提高了功率预测模型中不同基学习器的预测能力;文献[6,12]基于多种常用聚类方法建立风电机组分组模型,研究了不同分组方法在风电功率预测统计及物理模型中的适应性,显著提高了未分组模型的功率预测准确性。上述方法利用有限参数实现了风电场内机组分组,但仍难以全面反映不同机组的多峰、多模式特征。针对以上局限,结合风电机组运行数据的分布特 征 ,提 出 了 基 于 非 参 数 化 的 高 斯 混 合 模 型(Gaussian mixture model,GMM)聚类的风电场短期功 率 预 测 方 法 。 利 用 贝 叶 斯 信 息 准 则(Bayesian information criterion,BIC)判定最优聚类个数,依托基于径向基函数(radial basis function,RBF)神经网络的功率预测方法,验证所提聚类方法的有效性以及相较于其他聚类方法的优越性,为风电场短期功率预测方法的优化奠定了基础。

基于风电机组分组的功率预测流程图:

📚2 运行结果

2.1 Python

2.2 Matlab

 

 

🎉3 参考文献

部分理论来源于网络,如有侵权请联系删除。

[1]王一妹,刘辉,宋鹏等.基于高斯混合模型聚类的风电场短期功率预测方法[J].电力系统自动化,2021,45(07):37-43.

🌈4 Matlab代码、数据、文章讲解

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

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

相关文章

MySQL 学习笔记 1:存储过程

MySQL 学习笔记 1:存储过程 图源:ubiq.co 存储过程可以看做是将一组 SQL打包执行,并返回最终的执行结果。 其优点是:因为存储过程中的 SQL 是同时一次执行,所以没有数据一致性的问题。其次,不需要由客户端…

【Docker】Centos安装docker-compose

下载 直接从GitHub下载docker到本地的/usr/local/bin/目录下,赋予读写权限,检查,就可以使用了; # 下载到/usr/local/bin/docker-compose目录下 sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1…

实现死锁检测组件

文章目录 一、死锁1.1 死锁的定义1.2 死锁产生的条件 二、死锁检测2.1 资源分配图2.2 有向图2.3 死锁检测组件 -- hook 三、死锁设计3.1 有向图3.1.1 数据结构3.1.2 图的基本操作接口3.1.3 判断有向图是否成环 3.2 hook3.2.1 重载系统的锁接口3.2.2 加锁前——lock_before3.2.3…

DevExpress开发练习-皮肤选择

安装devexpress支持&#xff1a; DevExpress 21.2.6 默认状态设置为最大化。 设置ribbon属性&#xff1a; /// <summary> /// 设置Ribbon属性 /// </summary> /// <param name"ribbon"></param> private void SetRibbon(RibbonControl ri…

react-flow基础使用及dagre库的使用

前言 最近项目中需要用到拓扑图的展示&#xff0c;最开始选用的是antv的拓扑图组件。antv组件虽然此很方便&#xff0c;但是在布局的时候总是会有莫名其妙的bug&#xff0c;然后自己也想法去解决&#xff08;看前辈经验、官方issue&#xff09;&#xff0c;最后还是不能解决。…

【安卓12源码】WMS的作用及其启动流程

一、WMS 的作用 WMS 在 Android 系统的地位&#xff0c;它作为中间层&#xff0c;连接了上层的 View 框架和下层的 SurfaceFingler。 WMS 主要职责 窗口管理&#xff1a;负责启动、添加、删除窗口&#xff0c;管理窗口大小、层级&#xff0c;核心成员有&#xff1a;WindowCont…

短视频矩阵系统源码开发规则

抖音seo源码部署&#xff08;前端vue jquery layui 后端php&#xff09;组成 抖音SEO源码开发规则是为了提高抖音内容在搜索引擎的排名&#xff0c;增加曝光和流量而制定的一系列准则。 这些开发规则包括但不限于以下几点&#xff1a; 首先&#xff0c;优化关键词&#xff…

Mac OS 源码编译安装Nginx

下载软件 访问地址&#xff1a; https://nginx.org 根据自己的需求下载合适的安装包 首先建个临时目录 nginx-src 并下载所需软件的源码进行配置 mkdir nginx-src cd nginx-src wget https://nginx.org/download/nginx-1.18.0.tar.gz wget https://ftp.pcre.org/pub/p…

前端框架Layui的使用讲解(Layui搭建登录注册页面)

目录 一、前言 1.什么是Layui 2.Layui的背景 3.为什么要使用Layui 4.Layui的模块化 二、Layui使用讲解 1.初识Layui 2.搭建登录页面 静态效果图​ 封装引入文件页面&#xff08;公用页面&#xff09; jsp页面搭建 userDao编写 Servlet页面编写 xml文件配置 3.搭…

DevOps(一)

DevOps 1. DevOps起源1.1 瀑布开发模型1.2 敏捷开发模型 2. DevOps到底是什么&#xff1f;3. DevOps与虚拟化、容器、微服务4. CI/CD是什么 &#xff1f;4.1 CI 持续集成&#xff08;Continuous Integration&#xff09;4.2 CD 持续交付&#xff08;Continuous Delivery&#x…

JAVA基础方法-substring+indexof

substring用法&#xff1a; 1.public String substring(int beginIndex, int endIndex) 第一个参数int为开始的索引&#xff0c;对应String数字中的开始位置&#xff0c; 第二个参数是截止的索引位置&#xff0c;对应String中的结束位置。 public static void main(String[]…

react中styled-components 全局样式设置

前言 使用 styled-components 库时&#xff0c;你可以使用它的 createGlobalStyle 函数来设置全局样式。下面是一个示例&#xff1a; 安装 styled-components npm install styled-components导入 createGlobalStyle 在你的代码文件中导入 createGlobalStyle&#xff1a; i…

信息安全-应用安全-软件成分安全分析(SCA)能力的建设与演进

1. 前言 SCA 概念出现其实很久了。简单来说&#xff0c;就是针对现有的软件系统生成粒度非常细的 SBOM&#xff08;Software Bill of Materials 软件物料单&#xff09;清单&#xff0c;然后通过⻛险数据去匹配有没有存在⻛险组件被引用。目前&#xff0c;市面上比较出色的商业…

laravel6.x文档阅读手册

laravel中文文档6.x 目录 一、入门指南 安装 服务器要求 安装 Laravel Laravel 使用 Composer 来管理项目依赖。因此&#xff0c;在使用 Laravel 之前&#xff0c;请确保你的机器已经安装了 Composer。 通过 Laravel 安装器 首先&#xff0c;通过使用 Composer 安装 Lara…

Django_加载settings配置

当使用下面命令启动django服务时&#xff0c;setting会自动加载 python manage.py runserver 通过查看manage.py可以找到加载代码为 os.environ.setdefault(DJANGO_SETTINGS_MODULE, settings的路径id) 知道settings加载原理后&#xff0c;在调试时可以不用启动http服务&…

如何用 Jenkins+Docker 实现一键自动化部署

本文章实现最简单全面的Jenkinsdockerspringboot 一键自动部署项目&#xff0c;步骤齐全&#xff0c;少走坑路。 环境&#xff1a;centos7git(gitee) 简述实现步骤&#xff1a;在docker安装jenkins&#xff0c;配置jenkins基本信息&#xff0c;利用Dockerfile和shell脚本实现…

滴...这里有一道数据库操作型面试题,已到达,请查收~

系列文章传送门&#xff1a; 【七天入门数据库】第一天 MySQL的安装部署 【七天入门数据库】第二天 数据库理论基础 【七天入门数据库】第三天 MySQL的库表操作 题目&#xff1a;单表查询&#xff0c;根据提供的素材&#xff0c;按下列要求查询相关数据。 题目素材&#x…

前端vue入门(纯代码)27_路由的query参数

安静地努力&#xff01;&#xff01;&#xff01; 【25.Vue Router--路由的query参数】 多级路由在src/router/index.js中【三级路由】的配置如下&#xff1a; // 该文件专门用于创建整个应用的路由器 import VueRouter from "vue-router"; //引入组件 import Abo…

接口自动化测试要做什么?

先了解下接口测试流程&#xff1a; 1、需求分析2、Api文档分析与评审 3、测试计划编写 4、用例设计与评审5、环境搭建&#xff08;工具&#xff09; 6、执行用例 7、缺陷管理 8、测试报告 接口流程详细内容&#xff0c;请狠狠点击下面这篇文章&#xff0c; 《做接口测试的流程…

关于Vue 、vue2、vue3

vue优点&#xff1f;vue2、vue3响应式比较&#xff1f; &#xff08;1&#xff09; 响应式编程 Vue 会自动对页面中某些数据的变化做出响应。通过 MVVM 思想实现数据的双向绑定&#xff0c;让开发者不用再操作 DOM 对象&#xff0c;有更多的时间去思考业务逻辑。 组件化开发…