Flaws in MRAC Implementation

2 vues (au cours des 30 derniers jours)
Yingao Zhang
Yingao Zhang le 30 Juin 2023
Commenté : Harald le 3 Juil 2023
So far, I've noticed two probable flaws in the Indirect MRAC implementation of Compute control actions to make controlled system track reference model - Simulink (mathworks.com).
  • The disturbance model outputs an adaptation vector with the same size as the state x, but it's added to the control output u directly without multiplying any B matrix (should be Bhat according to literature). This leads to matrix size inconsistency.
Reproductions steps:
  1. open example Indirect MRAC Control of Mass-Spring-Damper System - MATLAB & Simulink (mathworks.com)
  2. enable disturbance adaptation:
  3. update the model to see the error message:
  • Learning modification methods leads to estimation divergence under all circumstances since "position" instead of the commonly used "momentum" was added to gradient descent. See the unstable positive feedback loop inside the Sigma Modification implementation: It leads to estimation divergence unconditionally! A potential correct implementation of adding momentum to gradient descent should be for example adding a Moving average - Simulink (mathworks.com) filter with Exponential weighting before integrator input.
  1 commentaire
Harald
Harald le 3 Juil 2023
Hi Yingao,
it seems that you have suggestions on improving an example. My recommendation would be to contact the Technical Support team of MathWorks (https://www.mathworks.com/support/servicerequests/create.html). They can discuss the suggestions with you and if they agree with you, pass them on to the developers who can then incorporate your suggestions.
Best wishes,
Harald

Connectez-vous pour commenter.

Réponses (0)

Catégories

En savoir plus sur Adaptive Control dans Help Center et File Exchange

Produits


Version

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by