Ahmed-ElTahan/Recursive-Least-Squares-with-Exponential-Forgetting

Recursive Least Squares with Exponential Forgetting for Systems with Time Varying Parameters.
313 Downloads
Aktualisiert 9. Jul 2016

% This function is made by Ahmed ElTahan
%{
This function is intended to estimate the parameters of a dynamic
system of unknown time varying parameters using the
Recursive Least Squares with Exponential Forgetting Method (RLS).
After an experiment, we get the inputs, the outputs of the system.
The experiment is operated with sample time Ts seconds.
The system here is transfer function in the form of:
y z^(-d) Bsys
Gp = ------ = ----------------------
u Asys

Asys * y = z^(-d) Bsys * u + e

where:
-- y : output of the system.
-- u : control action (input to the system).
-- e : white guassian noise (noise with zero mean).
-- Asys = 1 + a_1 z^-1 + a_2 z^-2 + ... + a_na z^(-na).
-- Bsys = b_0 + b_1 z^-1 + b_2 z^-2 + ... + b_nb z^(-nb).
-- d : delay in the system.

Function inputs
u : input to the system in column vector form
y : input of the system in column vector form
na : order of the denominator polynomial
nb : order of the numerator polynomail
d : number represents the delay between the input and the output
Ts : sample time.
lambda : forgetting factor usually {0<lambda<1}

Function Output
Theta_final : final estimated parameters.
Gz_estm : pulse (discrete) transfer function of the estimated parameters
1 figure for the history of the parameters that are being estimated
2 figure to validate the estimated parameters on the given output
using the instantaneous estimated parameters.
3 figure to plot the input versus time.

An example is added to illustrate how to use the function

Zitieren als

Ahmed ElTahan (2024). Ahmed-ElTahan/Recursive-Least-Squares-with-Exponential-Forgetting (https://github.com/Ahmed-ElTahan/Recursive-Least-Squares-with-Exponential-Forgetting), GitHub. Abgerufen.

Kompatibilität der MATLAB-Version
Erstellt mit R2014a
Kompatibel mit allen Versionen
Plattform-Kompatibilität
Windows macOS Linux
Kategorien
Mehr zu Online Estimation finden Sie in Help Center und MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Versionen, die den GitHub-Standardzweig verwenden, können nicht heruntergeladen werden

Version Veröffentlicht Versionshinweise
1.0.0.0

.

Um Probleme in diesem GitHub Add-On anzuzeigen oder zu melden, besuchen Sie das GitHub Repository.
Um Probleme in diesem GitHub Add-On anzuzeigen oder zu melden, besuchen Sie das GitHub Repository.