基于STAN的风力发电预测(Python代码实现)-程序员宅基地

技术标签: 风力发电预测  python  基于STAN  

 欢迎来到本博客️️️
作者研究:本科计算机专业,研究生电气学硕主要研究方向是电力系统和智能算法、机器学习和深度学习。目前熟悉python网页爬虫、机器学习、群智能算法、深度学习的相关内容。希望将计算机和电网有效结合!️️️
博主优势:博客内容尽量做到思维缜密,逻辑清晰,为了方便读者
目前更新:电力系统相关知识,期刊论文,算法,机器学习和人工智能学习。
支持:如果觉得博主的文章还不错或者您用得到的话,可以关注一下博主,如果三连收藏支持就更好啦!这就是给予我最大的支持!

 

                          

博主课外兴趣:中西方哲学,送予读者:

做科研,涉及到一个深在的思想系统,需要科研者逻辑缜密,踏实认真,但是不能只是努力,很多时候借力比努力更重要,然后还要有仰望星空的创新点和启发点。当哲学课上老师问你什么是科学,什么是电的时候,不要觉得这些问题搞笑,哲学就是追究终极问题,寻找那些不言自明只有小孩子会问的但是你却回答不出来的问题。建议读者按目录次序逐一浏览,免得骤然跌入幽暗的迷宫找不到来时的路,它不足为你揭示全部问题的答案,但若能让人胸中升起一朵朵疑云,也未尝不会酿成晚霞斑斓的别一番景致,万一它居然给你带来了一场精神世界的苦雨,那就借机洗刷一下原来存放在那儿的“真理”上的尘埃吧。

     或许,雨过云收,神驰的天地更清朗.......

本文目录如下:️️️

目录

1 概述

2 数学模型 

3 仿真结果

4 Python代码及文章讲解 

1 概述

【摘要】:风电是最重要的可再生能源之一,准确的风电预测对于可靠、经济的电力系统运行和控制策略具有重要意义。本文为一种具有时空注意力网络 (STAN) 的新型风力发电预测框架。该模型捕捉风电场之间的空间相关性和风电时间序列的时间依赖性。首先,我们采用多头自注意力机制来提取风电场之间的空间相关性。然后,具有全局注意机制的序列到序列 (Seq2Seq) 模型捕获时间依赖性。最后,实验结果表明,我们的模型比其他基线方法取得了更好的性能。

风力发电在全球电网中发挥着非常重要的作用。由于其可变性和随机性,很难建立模型并准确预测风力发电[1]。我们不仅需要捕捉时间序列的时间依赖关系,还需要构建目标风电场和其他一些风电场之间的空间相关性。风电功率预测引起了研究人员的极大关注。一些研究人员使用统计方法进行短期风电预测。统计模型包括历史平均(HA)方法和自回归移动平均(ARMA)方法[2]。 ARMA 是最著名的基于时间序列的风电未来价值预测方法,研究人员尝试了一些 ARMA 变体(如 ARIMA)以获得更好的预测性能。然而,这些方法受到目标时间序列是平稳随机过程的假设的限制[3]。不幸的是,风力发电与现实世界中的这一假设不符。

此外,长短期记忆 (LSTM) [5] 和门控循环单元 (GRU) [6] 是 RNN 的两个特殊变体。一方面,这些方法在包括自然语言处理(NLP)和时间序列预测在内的许多领域都取得了成功。另一方面,使用这些方法的缺点是它们没有充分考虑风电场之间的空间依赖性。在神经网络中,卷积神经网络 (CNN) 模型被有效地用于对图像分类、视觉识别和交通流预测的空间依赖性进行建模 [7]。然而,CNN 擅长处理具有网格状拓扑的数据,例如图像 [8]。换句话说,当我们对不同风电场之间的非欧几里得相关性进行建模时,CNN 并不能很好地工作。

2 数学模型 

上下文向量从编码器捕获相关信息以预测未来值。 Seq2Seq 模型和具有注意机制的 Seq2Seq 模型之间的区别在于,注意机制会动态计算每个时间戳的上下文向量。计算为编码器所有隐藏状态的加权平均值,如下所示:

                                            c_{k}=\sum_{j=1}^{T} a_{k j} h_{j} 

其中a_{kj} 是权重向量 a_{t}∈ℝ1× 的一个元素,a_{kj}​计算如下:

                       a_{k j}=\frac{\exp \left(\operatorname{score}\left(s_{k}, h_{j}\right)\right)}{\sum_{j=1}^{T} \exp \left(\operatorname{score}\left(s_{k}, h_{j}\right)\right)}

详细数学模型见第4部分。

3 仿真结果

4 Python代码及文章讲解 

个人主页:@橘柑橙柠桔柚

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_61181717/article/details/128095569

智能推荐

初始化时checkbox选中问题-程序员宅基地

文章浏览阅读746次。首先我们大家在写页面的时候可能回经常遇到checkbox、radio等一些使选中或者是不选中的问题。这是我在项目当中做的时候发现的一个小知识点,把它赶紧记录下来。以便以后复习与巩固。 现把代码写出来再解释: function operateCheckOrRadio() { var sForm = document.getElementById("sform"); var sStatus = d..._flutter checkbox用变量初始化无法设置为选中状态

UE5——问题——MediaPlayer的使用播放视频注意点_ue mediaplayer-程序员宅基地

文章浏览阅读1.1k次。UE5——问题——MediaPlayer的使用播放视频注意点_ue mediaplayer

毕设仿真分享 单片机非接触式红外感应体温计-程序员宅基地

文章浏览阅读311次,点赞9次,收藏7次。非接触式电子体温计主要利用红外测温原理,一切温度高于绝对零度(-273.35℃)的物体,由于分子热运动,物体会不停地向外辐射能量。物体辐射能量的大小与它的表面温度有十分密切的关系。因此,通过测量物体辐射的能量,就能够测量出物体的温度。本用户手册中的非接触式电子体温计就是利用这种测量方法,实现测量人体体温的功能。

Vista/Win7下普通权限进程动态提升权限_findwindow 没有权限-程序员宅基地

文章浏览阅读2k次。本文出自 “碧海笙箫” 博客,请务必保留此出处http://pyhcx.blog.51cto.com/713166/197073一、前提在Vista/Win7下,加强了对安全的管理,对注册表修改,系统目录的文件操作,都需要管理员权限才能完成(当然虚拟存储机制,表面上也相当于能操作)。所以,对于程序中有相关操作的,这时候,就要求我们的程序必须拥有管理员权限。通过mainfest文件,我们可以让程序总是需要管理员权限执行,但是,这将导致程序每次运行时,都需要弹出UAC框老骚扰用户,另外,有时候我们的程序只是在某_findwindow 没有权限

PCS7 入门指南 v9.0 SP3 v9.1 中文版 学习资料 (官方公开可用资料)_pcs7v9.1-程序员宅基地

文章浏览阅读1.8w次,点赞13次,收藏82次。链接:https://pan.baidu.com/s/1-p4h_QDL8BN04tnn3vSkOA提取码:nou3PCS7入门指南v9.0含APL(包含PDF和项目文件)官方地址:SIMATIC 过程控制系统 PCS 7 入门指南第1部分 (V9.0,含APL)https://support.industry.siemens.com/cs/document/109756196/simatic-%E8%BF%87%E7%A8%8B%E6%8E%A7%E5%88%B6%E7%B3%BB..._pcs7v9.1

c# 调用非托管代码_c# 声明kernel32 函数-程序员宅基地

文章浏览阅读956次,点赞3次,收藏5次。编程过程中,一般c#调用非托管的代码有两种方式:1.直接调用从DLL中导出的函数。2.调用COM对象上的接口方法。首先说明第1种方式,基本步骤如下:1.使用关键字static,extern声明需要导出的函数。2.把DllImport 属性附加到函数上。3.掌握常用的数据类型传递的对应关系。4.如果需要,为函数的参数和返回值指定自定义数据封送处理信息,这将重写.net framework默认的封送处理。简单举例如下:托管函数原型:DWORD GetShortPathName(LPCTST_c# 声明kernel32 函数

随便推点

敏捷软件开发宣言-程序员宅基地

文章浏览阅读507次。敏捷软件开发宣言 摘要:我们正在通过亲身实践以及帮助他人实践,揭示更好的软件开发方法。通过这项工作,我们认为: 个体和交互 胜过 过程和工具 可以工作的软件 胜过 面面俱到的文档 客户合作 胜过 合同谈判 响应变化 胜过 遵循计划虽然右项也具有价值,但我们认为左项具有更大的价值。Kent Beck James Grenning Robert C._敏捷软件开发宣言

Android实现通用的ActivityGroup(效果类似Android微博客户端主界面)-程序员宅基地

文章浏览阅读93次。转自http://www.cnblogs.com/answer1991/archive/2012/05/08/2489844.html ActivityGroup在实际的开发中是十分常见的,在我使用过的Android应用中,十个应用里面有九个应用的主界面都是使用ActivityGroup的。说起ActivityGroup,在国内好像直接使用它开发的并不多,基本都是使用Ta..._android 类似于微博tab,动态添加tab,并实现拖拽排序,编辑等

git:一、GIT介绍+安装+全局配置+基础操作_请确保本地完成了 git 的全局配置-程序员宅基地

文章浏览阅读490次。仅供学习使用。执行命令git init,发现文件夹出现.git目录即说明创建本地仓库成功。创建的文件名为空,拓展名是bashrc,所以要开启文件的拓展名选项并检查该文件的格式是否为Bash RC源文件。工作区的文件创建或修改后通过git add提交到暂存区,暂存区的文件通过git commit提交到仓库。创建一个测试用的文件夹,进入后右键打开Git Bash,设置用户信息。ATT:红色的是工作区的文件,绿色的是暂存区的文件。GIT的流程分为三大块:工作区、暂存区、仓库。_请确保本地完成了 git 的全局配置

文件服务(SMB)共享详解-程序员宅基地

文章浏览阅读517次。三种共享类型:微软的CIFS文件共享协议,可以让windows机器在网上邻居之间共享文件,也即是windows-windows之间的文件共享;NFS文件共享协议,可以让远程共享的共享目录挂载在本地端,就像本地端的一个partition分区一样,但是共享也只能在UNIX-UNIX之间来共享;SAMBA文件共享协议,可以实现WINDOWS-UNIX之间的文件的共享,WINDOWS机器在网上..._smb共享只抓到nbns报文

鸿蒙系统第五批升级名单,鸿蒙系统首批升级机型名单曝光,很多人失望了,支持的机型太少...-程序员宅基地

文章浏览阅读983次。5月30日早间,“鸿蒙系统首批升级机型名单”这则消息在微博刷屏。按照微博博主爆料称,华为Mate40系列、Mate X2、P40系列、nova8系列以及华为平板MatePadPro将在首批升级鸿蒙操作系统。值得注意的是,今年4月,华为消费者业务AI与智慧全场景业务部副总裁杨海松表示,16%的市场份额是一条生死线。5月30日上午,记者实探位于深圳的华为全球旗舰店发现,目前展示的机型仍搭载安卓系统。工..._鸿蒙5升级名单

ES6——Map和Set-程序员宅基地

文章浏览阅读608次。ES6新增的数据类型,Map、Set之间的关系,如何使用?Map和Set的属性和方法。