基于 LHS 、 BR 与K-means的风电出力场景分析研究(Matlab代码实现)

news2024/11/25 19:44:59

 

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

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

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

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

目录

💥1 概述

1.1 场景分析概述

1.2 基于 LHS 的场景生成算法 

1.3 基于 BR 的场景缩减算法 

📚2 运行结果

🎉3 参考文献

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


💥1 概述

文献来源:

风力发电具有无燃料成本、无污染等优点,是目前可再生能源研究和开发的重点之一。而受天然条件制约,风力的随机性和波动性是研究的难点。场景分析技术是表征风电出力的常见方法,包括场景生成与场景缩减两部分。场景生成根据研究对象的概率分布函数或统计特征,通过抽样来获得大量具有随机特征的场景。场景缩减通过数据分析减少相似场景的数量,降低计算复杂度。若能利用反映风速特征的场景生成方法准确生成大量场景,然后利用场景缩减方法,在保证精确性的同时减少相似场景的数量并得到相应的风电出力曲线,则将对电网规划设计、风电接纳能力评估、电源优化配置、储能规划及运行调度等具有重要意义。在场景生成的研究中,文献[4—5]利用蒙特卡

洛抽样法得到大规模风电场景集; 文献[6]采用反向传播( back propagation,BP) 神经网络对风电功率进行预测,进而生成风电出力的概率场景。此外,还有学者利用自回归滑动平均( auto-regressive and moving average,ARMA) 误差模型、非参数的概率预测等方法进行场景生成。场景生成的关键是保证生成的数据集能反映自身概率密度及总体特征。

在场景缩减的研究中,大多采用聚类分析法对相似场景进行缩减。文献[9]通过计算聚类有效性

指标,解决了传统 K-means 算法无法给出最佳聚类数的问题; 文献[10]针对待划分数据与聚类中心的距离等计算量大的部分,采用图形处理单元进行加速处理。此类方法对初始聚类中心要求高,且对离群点和噪声点敏感。另有研究人员使用 K-中心点聚类、分层聚类等方法进行场景缩减[11—12],此类方法步骤繁多,计算复杂,且分层聚类受奇异值的影响很大。

文中基于风速的不确定特性,建立基于拉丁超立方抽样( Latin hypercube sampling,

LHS) 与后向缩减法( backward reduction,BR) 的场景分析模型。

1.1 场景分析概述

在处理风电出力不确定性的研究中,广泛釆用 3 种方法: 模糊规划法、机会约束规划法以及场景分

析方法[11]。文中采用场景分析法处理风电出力不确定性问题,场景分析主要分为场景生成和场景缩减 2 部分。场景生成是指根据研究对象的概率分布函数或统计特征,通过抽样等方法获得具有不确定性特征的大规模场景,可用集合 S = { S1,S2,…,SN } 表示。场景缩减则通过对集合 S 进行数据分析,减少相似场景数目,获得期望的场景数,降低计算复杂度。最终剩下的少量经典场景集可用集合K = {K1,K2,…,KM } 表示,该集合能较大程度地表征原始场景随机变量特性。具体过程如图 2 所示。

 

1.2 基于 LHS 的场景生成算法 

LHS 是一种分层抽样法,将一个大区间划分为若干个固定的小区间,每个小区间内只抽样 1 次。

假设对 N 维向量空间进行 M 次抽样,且对每一维进行的都是 0-1 均匀抽样,则可用 N%M 阶的矩阵 A 存储中间过程,用 N %M 阶的矩阵 B 存储样本点坐 标[17—19]。将 N 维向量空间中的每一维都等分成 M个区间,如图 3 所示。

1.3 基于 BR 的场景缩减算法 

经 LHS 法得到的风速数据量庞大,各场景之间相似度很高。为更有效地将相近场景合并,文中基

于 BR 构建场景缩减模型[21—22],从而对大量数据进行处理。

📚2 运行结果

 

 

 

🎉3 参考文献

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

[1]车兵,李轩,郑建勇等.基于LHS与BR的风电出力场景分析研究[J].电力工程技术,2020,39(06):213-219.

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

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

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

相关文章

多线程基础总结

1. 为什么要有多线程? 线程:线程是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中实际运行单位。 进程:进程是程序的基本执行实体。 什么是多线程? 有了多线程,我们就可以让程序同时做…

Java学习路线【看看ChatGPT怎么说】

目录 1、介绍情况2、路线简述3、Java初学者路线4、Java高级开发路线5、安卓开发 1、介绍情况 本文主体内容是chatGPT生成的😉 先说结论:chatGPT写出来的路线,深度比较一般,但是对于初学者而言,具有不错的参考价值。…

【机器学习】XGBoost 详细解读 (集成学习_Boosting_GBM)

【机器学习】XGBoost 详细解读 (集成学习_Boosting_GBM) 文章目录 【机器学习】XGBoost 详细解读 (集成学习_Boosting_GBM)1. 介绍2. 基本原理3. 目标函数(二阶泰勒展开求解)3.1 基础的目标函数3.2 二阶泰勒…

error: LNK2001: 无法解析的外部符号 “public: virtual struct QMetaObject const * __cdecl

Qt系列文章目录 文章目录 Qt系列文章目录前言一、QtCreator中qmake命令是什么?2.解决 前言 我在代码中加入了对应的信号和槽,但编译仍然报错: #ifndef PROJECTWIN_H #define PROJECTWIN_Hnamespace Ui { class ProjectWin; }ProjectWin类声…

Google Bard使用初体验,与ChatGPT比较到底怎么样

文章目录 Google Bard 介绍如何使用Google bardbard和ChatGPT3.5的区别 本文讲述了Google bard的入门教程和使用技巧,并且与竞争对手ChatGPT进行了一个全方面的比较。这是 Google 不能输的战役,也是全面 AI 的时刻。 Google Bard 介绍 Google Bard已经于…

【数据结构】链表(C语言)

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; &#x1f525;c语言系列专栏&#xff1a;c语言之路重点知识整合 &#x…

JUC之集合类

JUC包提供了一些并发安全的集合类&#xff0c;用于在多线程环境下进行共享数据的操作&#xff0c;以解决多线程间的竞争条件和线程安全问题。 CopyOnWriteArrayList 相当于线程安全的ArrayList public class ListTest {public static void main(String[] arge){List<Strin…

【项目-前后端交互-项目】表白墙【servlet实践】

【项目—前后端交互 案例】表白墙 代码示例: 服务器版表白墙1. 准备工作2. 约定前后端交互接口3. 实现服务器端代码创建 Message 类创建 MessageServlet 类 4. 调整前端页面代码5. 数据存入文件.6. 数据存入数据库1) 在 pom.xml 中引入 mysql 的依赖2) 创建数据库, 创建 messag…

ModuleNotFoundError: No module named ‘Multiscaledeformableattention‘

在实现DINO Detection方法时&#xff0c;我们可能会遇到以上问题。因为在DeformableAttention模块&#xff0c;为了加速&#xff0c;需要自己去编译这个模块。 如果你的环境变量中能够找到cuda路径&#xff0c;使用正确的torch版本和cuda版本的话&#xff0c;这个问题很容易解…

代码随想录算法训练营第三十九天 | 不同路径(挺简单的)

62.不同路径 文档讲解&#xff1a;代码随想录 (programmercarl.com) 视频讲解&#xff1a;动态规划中如何初始化很重要&#xff01;| LeetCode&#xff1a;62.不同路径_哔哩哔哩_bilibili 状态&#xff1a;能直接做出来。 思路 机器人从(1 , 1) 位置出发&#xff0c;到(m, n)终…

对抗训练方法:保卫人工智能的盾牌

❤️觉得内容不错的话&#xff0c;欢迎点赞收藏加关注&#x1f60a;&#x1f60a;&#x1f60a;&#xff0c;后续会继续输入更多优质内容❤️ &#x1f449;有问题欢迎大家加关注私戳或者评论&#xff08;包括但不限于NLP算法相关&#xff0c;linux学习相关&#xff0c;读研读博…

【纳什博弈、ADMM】基于纳什博弈和交替方向乘子法的多微网主体能源共享研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

ch07-Pytorch的训练技巧

ch07-Pytorch的训练技巧 0.引言1.模型保存与加载1.1.序列化与反序列化1.2.PyTorch 中的模型保存与加载1.3.模型的断点续训练 2.模型 Finetune2.1.Transfer Learning & Model Finetune2.2.PyTorch中的Finetune 3.使用 GPU 训练模型3.1.CPU与GPU3.2.数据迁移至GPU3.3. 多 GPU…

mac下安装cnpm淘宝镜像

在mac安装cnpm时&#xff0c;输入npm install -g cnpm -registryhttps://registry.npm.taobao.org 报错&#xff1a; npm ERR! code EACCES npm ERR! syscall mkdir npm ERR! path /usr/local/lib/node_modules/cnpm npm ERR! errno -13 npm ERR! Error: EACCES: permission de…

单细胞 | label transfer with Seurat4(未知细胞映射到注释好的细胞图谱)

场景&#xff1a;把新的细胞比对到已经注释过的细胞集合上&#xff0c;获取映射后的细胞标签&#xff0c;UMP坐标。 准备&#xff1a; 一个分析好的单细胞图谱数据集&#xff0c;作为reference数据集。一个新的单细胞counts矩阵&#xff0c;记为 query数据集。 主要分为两个步…

在浏览器从输入URL到页面加载完成都经历了什么/一个完整的URL解析过程详细介绍

一、简述在浏览器从输入URL到页面加载完成都经历了什么 浏览器地址栏输入url地址&#xff0c;首先要在客户端上进行url解析 浏览器会首先查看自身的缓存&#xff0c;如果浏览器缓存中有对应的解析记录&#xff0c;直接返回结果 如果浏览器没有缓存&#xff0c;电脑会查看本地操…

Selenium+Unittest自动化测试框架实战(框架源码都给你)

目录 前言 项目框架 首先管理时间 !/usr/bin/env python3 -- coding:utf-8 -- 配置文件 conf.py config.ini# 读取配置文件 记录操作日志 简单理解POM模型 管理页面元素 封装Selenium基类 创建页面对象 熟悉unittest测试框架 编写测试用例 执行用例 生成测试报…

qemu-ARM篇——ARM 栈帧(一)

ARM 栈帧 本系列均已 corter-A7(armv7-a) 为例 在 ARM 中&#xff0c;通常为满减栈&#xff08;Full Descending FD&#xff09;, 也就是说&#xff0c;堆栈指针指向堆栈内存中最后一个填充的位置&#xff0c;并且随着每个新数据项被压入堆栈而递减。 栈的本质 要理解栈的本…

前端CSS学习(三)

1、盒子模型 盒子的概念1、页面中的每一个标签&#xff0c;都可看做是一 个“盒子” &#xff0c;通过盒子的视角更方便的进行布局2、浏览器在渲染 (显示)网页时&#xff0c;会将网页中的元素看做是一个个的矩形区域&#xff0c;我们也形象的称之为盒子CSS中规定每个盒子分别由…

BESV博世蔚发布2023全新款折叠e-bike —— F3,在中国自行车展会上大放异彩

BESV博世蔚身为跨界智慧出行的专家&#xff0c;今年在国内最大规模的中国国际自行车展上发布了其最新的e-bike折叠车款---VOTANI F3。拥有纯正荷兰血统的VOTANI系列车款&#xff0c;在设计外观上沿袭了欧风的极简主义和时尚设计&#xff0c;并搭配上折叠系统更易于携带和收纳。…