MATLAB递推最小二乘法(三输入一输出ARX模型、所有样本数据权重为1)

该博客详细介绍了如何在MATLAB中使用递推最小二乘法来求解三输入一输出的ARX模型。文章回顾了ARX模型结构和基本的最小二乘法,并提供了MATLAB代码示例及运行结果,展示参数更新过程。作者提醒读者需要根据自身需求修改代码,并欢迎指出错误。
摘要由CSDN通过智能技术生成

假设:读者已经掌握了矩阵的基本运算、ARX模型结构、最基本的最小二乘法、MATLAB 编程语言

一、主要参考书籍

主要参考书籍

二、主要参考公式

递推最小二乘法
递推最小二乘法
递推最小二乘法

三、ARX模型结构、以及最小二乘法回顾

ARX模型结构
ARX模型结构
ARX模型结构
ARX模型结构

四、MATLAB代码

%% 递推最小二乘法,是广义预测控制的基础之一

%% 程序版本迭代记录
%%%% 2022.10.2 最普通的RLS A_RLS.m
%%%% 2022.10.5 最普通的RLS,初始的三个矩阵通过小批量的历史数据利用一次性最小二乘法先得到 A_RLS_2.m

%% 清除
clc;clear;close all;

%% 导入数据
% all_data = readmatrix('F:\E\data_needed.xlsx','Sheet',4,'Range','B1000:H17001'); % 这是原始状态值
% all_data = readmatrix('F:\E\data_needed.xlsx','Sheet',4,'Range','I1000:O17001'); % 这是剔除异常值后状态值
all_data = readmatrix('F:\E\data_needed.xlsx','Sheet',4,'Range','P1000:V42001'); % 这是滤波后状态值
% all_data = readmatrix('F:\E\data_needed.xlsx','Sheet',4,'Range','W10000:AC42001'); % 这是增量值

%% 利用采样周期调整步长
sample_cycle = 30; % 采样周期 30s
sample_cycle_number = 2; % 2个采样周期为一个步长
predict_cycle = sample_cycle_number * sample_cycle; % 预测周期是sample_cycle_number个30s 

%% 估计时延
delay_feed = sample_cycle * 20; % 600s
delay_coal = sample_cycle * 20; % 600s
delay_fan = sample_cycle * 12; % 
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值