【预测】使用最小均方进行麦基格拉斯时间序列预测(Matlab代码实现)

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

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

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

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

目录

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码实现


💥1 概述

使用最小均方(Least Mean Square, LMS)算法进行麦基格拉斯(Mackey-Glass)时间序列预测是一种常见的预测方法。麦基格拉斯时间序列是一种非线性动力学模型,常用于描述生物学、物理学和工程学领域中的动态系统。LMS算法是一种自适应滤波器,通过不断调整滤波器的权重来实现对未来值的预测。经过一定数量的迭代后,LMS算法可以生成对未来时间步的麦基格拉斯时间序列值的预测结果。这些预测结果可以用于分析系统的动态行为、进行趋势预测或辅助决策制定。

📚2 运行结果

主函数部分代码:

clc
clear all
close all

%% Loading Time series data
% I generated a series y(t) for t = 0,1, . . . ,3000, using
% mackey glass series equation with the following configurations:
% b = 0.1, a = 0.2, Tau = 20, and the initial conditions y(t - Tau) = 0.
load Dataset\Data.mat 
time_steps=2;
teacher_forcing=1; % recurrent ARMA modelling with forced desired input after defined time steps 
%% Training and Testing datasets
% For training
Tr=Data(100:2500,1);    % Selecting a Interval of series data t = 100~2500
Yr(Tr)=Data(Tr,2);      % Selecting a chuck of series data y(t)
% For testing
Ts=Data(2500:3000,1);   % Selecting a Interval of series data t = 2500~3000
Ys(Ts)=Data(Ts,2);      % Selecting a chuck of series data y(t)

%% LMS Parameters

eta=5e-3;       % Learning rate
M=1;            % Order of LMS filter

U=zeros(M+1,1); % Initial values of taps
W=zeros(M+1,1); % Initial weight of LMS

MSE=[];         % Initial mean squared error (MSE)

%% Learning weights of LMS (Training)
tic % start
for t=Tr(1):Tr(end)-time_steps

🎉3 参考文献

文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。

[1]龙江,左生龙,徐朗等.基于影响因子筛选和GWO-KELM的大坝变形预测模型[J/OL].中国农村水利水电:1-13[2024-03-17].http://kns.cnki.net/kcms/detail/42.1419.TV.20240315.1636.024.html.

🌈4 Matlab代码实现

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值