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

多维时序 | GWO-VMD-SSA-LSTM灰狼优化变分模态分解联合麻雀优化长短期记忆网络多变量时间序列光伏功率预测(Matlab)

多维时序 | GWO-VMD-SSA-LSTM灰狼优化变分模态分解联合麻雀优化长短期记忆网络多变量时间序列光伏功率预测

目录

    • 多维时序 | GWO-VMD-SSA-LSTM灰狼优化变分模态分解联合麻雀优化长短期记忆网络多变量时间序列光伏功率预测
      • 效果一览
      • 基本介绍
      • 程序设计
      • 参考资料

效果一览

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

基本介绍

1.GWO-VMD-SSA-LSTM灰狼优化变分模态分解联合麻雀优化长短期记忆网络多变量时间序列光伏功率预测。
2.优化参数为:学习率,隐含层单元数目,最大训练周期,运行环境为Matlab2023b及以上;
3.数据集为excel(光伏功率数据集,输入辐射度、气温、气压、湿度,输出光伏功率),输入多个特征,输出单个变量,考虑历史特征的影响,多变量时间序列预测,主程序运行即可,所有文件放在一个文件夹;
4.命令窗口输出R2、MSE、RMSE、MAE、MAPE、MBE等多指标评价。
注意:一种算法不是万能的,不同的数据集效果会有差别,后面的工作就是需要调整参数。,不同的数据集效果会有差别,后面的工作就是需要调整参数。

数据集
在这里插入图片描述

程序设计

  • 完整程序和数据获取方式私信博主回复GWO-VMD-SSA-LSTM灰狼优化变分模态分解联合麻雀优化长短期记忆网络多变量时间序列光伏功率预测(Matlab)
X = xlsread('北半球光伏数据.xlsx','C2:E296');save origin_data XL=length(X);%采样点数,即有多少个数据
t=(0:L-1)*Ts;%时间序列
STA=0; %采样起始位置,这里第0h开始采样%--------- some sample parameters forVMD:对于VMD样品参数进行设置---------------
alpha = 2500;       % moderate bandwidth constraint:适度的带宽约束/惩罚因子
tau = 0;          % noise-tolerance (no strict fidelity enforcement):噪声容限(没有严格的保真度执行)
K = 5;              % modes:分解的模态数
DC = 0;             % no DC part imposed:无直流部分
init = 1;           % initialize omegas uniformly  :omegas的均匀初始化
tol = 1e-7         
%--------------- Run actual VMD code:数据进行vmd分解---------------------------
[u, u_hat, omega] = VMD(X(:,end), alpha, tau, K, DC, init, tol);%  重构数据集
for i = 1: num_samples - kim - zim + 1res(i, :) = [reshape(X(i: i + kim - 1,:), 1, kim*or_dim), X(i + kim + zim - 1,:)];
end% 训练集和测试集划分
outdim = 1;                                  % 最后一列为输出
num_size = 0.7;                              % 训练集占数据集比例
num_train_s = round(num_size * num_samples); % 训练集样本个数
f_ = size(res, 2) - outdim;                  % 输入特征维度P_train = res(1: num_train_s, 1: f_)';
T_train = res(1: num_train_s, f_ + 1: end)';
M = size(P_train, 2);P_test = res(num_train_s + 1: end, 1: f_)';
T_test = res(num_train_s + 1: end, f_ + 1: end)';
N = size(P_test, 2);%  数据归一化
[P_train, ps_input] = mapminmax(P_train, 0, 1);
P_test = mapminmax('apply', P_test, ps_input);[t_train, ps_output] = mapminmax(T_train, 0, 1);
t_test = mapminmax('apply', T_test, ps_output);

参考资料

[1] https://blog.csdn.net/kjm13182345320/article/details/127931217
[2] https://blog.csdn.net/kjm13182345320/article/details/127418340

相关文章:

  • 迈巴赫 S480 的奢华升级之旅头等舱行政独立 4 座
  • 电影《749局》酷燃首映 苗苗神秘感大片释出氛围感拉满
  • 有关若依登录过程前端的对应处理学习
  • 第L2周:机器学习|线性回归模型 LinearRegression:2. 多元线性回归模型
  • FileLink跨网文件交换|解决网络隔离导致的文件共享难题
  • Unity NetCode 客户端连接不上服务器,局域网模式 Failed to connect to server.
  • 贴片式TF卡(SD NAND)参考设计
  • 采用云端SaaS服务模式的基层云HIS系统,源码开放合作,B/S架构,公立二甲医院应用五年。
  • 828华为云征文 | 华为云Flexus X实例在混合云环境中的应用与实践
  • 04 B-树
  • 使用 npkill 快速清理本地 node_modules 文件
  • Appium跨平台测试实战:从Android到iOS
  • Unreal Engine 5 C++: 插件编写03 | MessageDialog
  • 鸿蒙HarmonyOS开发生态
  • 流水线并行(Pipeline Parallelism)原理详解
  • 实现windows 窗体的自己画,网上摘抄的,学习了
  • [译] 理解数组在 PHP 内部的实现(给PHP开发者的PHP源码-第四部分)
  • 【Redis学习笔记】2018-06-28 redis命令源码学习1
  • CSS中外联样式表代表的含义
  • Java 11 发布计划来了,已确定 3个 新特性!!
  • JavaScript工作原理(五):深入了解WebSockets,HTTP/2和SSE,以及如何选择
  • Mysql5.6主从复制
  • Python3爬取英雄联盟英雄皮肤大图
  • redis学习笔记(三):列表、集合、有序集合
  • win10下安装mysql5.7
  • 阿里云应用高可用服务公测发布
  • 力扣(LeetCode)22
  • 利用DataURL技术在网页上显示图片
  • 利用阿里云 OSS 搭建私有 Docker 仓库
  • 如何使用 JavaScript 解析 URL
  • 实习面试笔记
  • 小试R空间处理新库sf
  • ​一、什么是射频识别?二、射频识别系统组成及工作原理三、射频识别系统分类四、RFID与物联网​
  • # Redis 入门到精通(七)-- redis 删除策略
  • # Redis 入门到精通(一)数据类型(4)
  • # 数论-逆元
  • #if #elif #endif
  • #NOIP 2014#day.2 T1 无限网络发射器选址
  • #中的引用型是什么意识_Java中四种引用有什么区别以及应用场景
  • (4)通过调用hadoop的java api实现本地文件上传到hadoop文件系统上
  • (8)STL算法之替换
  • (function(){})()的分步解析
  • (附源码)计算机毕业设计SSM疫情下的学生出入管理系统
  • .dat文件写入byte类型数组_用Python从Abaqus导出txt、dat数据
  • .net 7 上传文件踩坑
  • .NET C# 使用 iText 生成PDF
  • .NET Core/Framework 创建委托以大幅度提高反射调用的性能
  • .NET Framework 4.6.2改进了WPF和安全性
  • .NET Windows:删除文件夹后立即判断,有可能依然存在
  • .net 调用海康SDK以及常见的坑解释
  • .net 设置默认首页
  • .Net多线程总结
  • .net项目IIS、VS 附加进程调试
  • /bin、/sbin、/usr/bin、/usr/sbin
  • /tmp目录下出现system-private文件夹解决方法