【ARMA仿真】 ARMA模型卡尔曼滤波【含Matlab源码 2431期】

⛄一、运行结果

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

✅博主简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,Matlab项目合作可私信。
🍎个人主页:海神之光
🏆代码获取方式:
海神之光Matlab王者学习之路—代码获取方式
⛳️座右铭:行百里者,半于九十。

更多Matlab仿真内容点击👇
Matlab图像处理(进阶版)
路径规划(Matlab)
神经网络预测与分类(Matlab)
优化求解(Matlab)
语音处理(Matlab)
信号处理(Matlab)
车间调度(Matlab)

⛄二、ARMA模型

1 ARMA模型介绍及应用
对于平稳时间序列,自回归移动平均(ARMA)模型可用于研究时间经济变量的变化规律,ARMA(p,q)模型包括一个自回归过程AR§和一个移动平均MA(q)过程,其形式如下:
在这里插入图片描述
式(1)中:p,q分别表示滞后的阶数;u1是白噪声序列。

2 ARMA模型的背景知识介绍
ARMA在文献研究中被广泛应用于对时间序列的分析预测,由于大多数经济金融数据满足时间序列的特征,因此该模型尤其适用于研究经济学问题,是拟合满足平稳性约束的时间序列最经典的模型。ARMA 模型是由 AR 自回归过程和 MA 移动平均过程组成的自回归移动平均模型,其基本思想是通过揭示历史时间序列的运行规律,对未来的事物发展进行预测。

在 ARMA(p,q)模型的参数中,p代表自回归部分的滞后阶数,q代表移动平均部分的滞后阶数。通常ARMA(p,q)模型的形式可以表示为:
在这里插入图片描述
其中,{εt}是白噪声序列。AR模型和MA模型都是特殊的ARMA(p,q)模型。当p取值为0时,ARMA(0,q)代表的本质含义就是MA(q);当q取值为0时,ARMA(p,0)代表的本质含义就是AR§。但是,如果所要研究的时间序列数据不满足平稳条件的限制,此时便要通过d阶差分等方法使其满足平稳条件的约束,之后才能对此序列进行分析与研究。

3 ARMA模型建模步骤
若要深入分析该时间序列数据,首先要确定该时间序列是否满足平稳性条件的约束,因为对于满足平稳性要求的时间序列与不满足平稳性要求的时间序列,所要使用的分析工具是不一样的,本文利用ARMA模型所针对的时间序列必须满足平稳性要求。对于给定的时间序列进行ARMA模型建模,通常步骤如下:

3.1 平稳性检验。
对原序列进行平稳性检验,如果序列不满足平稳性条件,可以通过差分变换或者其他变换方法使该序列满足时间序列平稳性条件的要求。

3.2 模型的定阶。
利用软件计算可以得到描述序列特征的统计量(如自相关系数与偏自相关系数等),之后再通过信息准则等方法确定ARMA模型的滞后阶数p和q。

3.3 参数的估计与检验。
确定好最优模型形式后,通过使用EViews等统计软件进行非线性最小二乘法或极大似然估计法估计计算模型所含有的未知参数,并检验模型参数的t统计量是否满足临界值的标准,以及模型本身的合理性。

3.4 模型的检验。
检验所构建模型的残差序列是否是白噪声序列,可用检验序列相关的方法检验残差序列的纯随机性,或者观察残差序列的自相关图以及偏自相关图。

3.5 模型的预测。
利用经过以上步骤拟合出来的模型预测该时间序列在未来的趋势走向。

⛄三、部分源代码

% %建立ARMA21模型,基于ARMA21模型卡尔曼滤波
% % close all
clear
clc
% tic
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%读数据
%
% disp(‘>>>>>>>>>>读数据…’)
load(‘data3-MPU6050-28000(#2)-acc.mat’);
V1_Pretreat30000=data’;
DATA=V1_Pretreat30000(1:28000,1); %预处理后数据

LEN=size(DATA,1);
T=0.257; %采样时间
t=T:T:LEN*T;
% %%
% % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%建立ARMA21模型
% %%
n=2;m=1; %ARMA模型阶次
%%%%%%%%%%%%%%%%%%%%%%%%%%%%第一步:计算AR模型参数,---------用前六个时刻的值去拟合下一时刻的输出:----
% p=m+n+3; %AR阶次
% for i=p:LEN-1
% X(i-p+1,:)=flipud(DATA(i-p+1:i));
% end
% Y=DATA(p+1:LEN);
p=m+n; %AR阶次
for i=p:LEN-1
X(i-p+1,:)=flipud(DATA(i-p+1:i));
end
Y=DATA(p+1:LEN);

FAI=inv(X’*X)*X’Y; %最小二乘法求AR参数
% disp(sprintf(‘AR6模型参数=[%0.4g;%0.4g;%0.4g;%0.4g;%0.4g;%0.4g]’,…
% FAI(1),FAI(2),FAI(3),FAI(4),FAI(5),FAI(6)));%n
AR_OUT=X
FAI; %AR模型拟合值
Ae=Y-AR_OUT; %拟合残差
AR_OUT=[DATA(1:p);AR_OUT]; %AR模型拟合值
Ae=[zeros(p,1);Ae]; %拟合残差

⛄四、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1]李易.基于ARMA模型的股价短期预测——以古井贡酒股票为例[J].山西财政税务专科学校学报. 2022,24(01)

3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除

🍅 仿真咨询
1 各类智能优化算法改进及应用

生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化、公交排班优化、充电桩布局优化、车间布局优化、集装箱船配载优化、水泵组合优化、解医疗资源分配优化、设施布局优化、可视域基站和无人机选址优化

2 机器学习和深度学习方面
卷积神经网络(CNN)、LSTM、支持向量机(SVM)、最小二乘支持向量机(LSSVM)、极限学习机(ELM)、核极限学习机(KELM)、BP、RBF、宽度学习、DBN、RF、RBF、DELM、XGBOOST、TCN实现风电预测、光伏预测、电池寿命预测、辐射源识别、交通流预测、负荷预测、股价预测、PM2.5浓度预测、电池健康状态预测、水体光学参数反演、NLOS信号识别、地铁停车精准预测、变压器故障诊断

3 图像处理方面
图像识别、图像分割、图像检测、图像隐藏、图像配准、图像拼接、图像融合、图像增强、图像压缩感知

4 路径规划方面
旅行商问题(TSP)、车辆路径问题(VRP、MVRP、CVRP、VRPTW等)、无人机三维路径规划、无人机协同、无人机编队、机器人路径规划、栅格地图路径规划、多式联运运输问题、车辆协同无人机路径规划、天线线性阵列分布优化、车间布局优化

5 无人机应用方面
无人机路径规划、无人机控制、无人机编队、无人机协同、无人机任务分配

6 无线传感器定位及布局方面
传感器部署优化、通信协议优化、路由优化、目标定位优化、Dv-Hop定位优化、Leach协议优化、WSN覆盖优化、组播优化、RSSI定位优化

7 信号处理方面
信号识别、信号加密、信号去噪、信号增强、雷达信号处理、信号水印嵌入提取、肌电信号、脑电信号、信号配时优化

8 电力系统方面
微电网优化、无功优化、配电网重构、储能配置

9 元胞自动机方面
交通流 人群疏散 病毒扩散 晶体生长

10 雷达方面
卡尔曼滤波跟踪、航迹关联、航迹融合

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ARMA模型是一种时间序列模型,用于描述平稳的非随机序列数据,并基于这些相关信息来拟合数据。ARMA模型结构可以通过自回归模型(AR)、移动平均模型(MA)和自回归滑动平均模型ARMA)来精确地描述任何单输入单输出(SISO)的线性系统。\[1\]\[2\] 粒子滤波是一种用于状态估计的滤波算法,它通过使用一组粒子来近似表示系统的状态,并根据观测数据对粒子进行更新和重采样,从而得到对系统状态的估计。粒子滤波可以用于估计ARMA模型中的隐状态,从而实现对系统的预测和滤波。然而,粒子滤波在处理高维状态空间时可能会面临计算复杂度的挑战。因此,在实际应用中,可能需要采用一些改进的算法来提高计算效率。\[3\] 综上所述,ARMA模型和粒子滤波是两个不同的概念和方法,分别用于时间序列建模和状态估计。ARMA模型用于描述时间序列数据的相关性,而粒子滤波用于对系统状态进行估计。在具体应用中,可以根据需要选择合适的模型和方法来解决问题。 #### 引用[.reference_title] - *1* *3* [“华为杯”研究生数学建模竞赛2020年-【华为杯】E题:大雾天气下的能见度估计与预测问题(附优秀论文及...](https://blog.csdn.net/getusushu/article/details/131758672)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [控制系统中被控对象建模](https://blog.csdn.net/hungry_yld/article/details/106257782)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值