Designing a Model Reference Adaptive Control (MRAC) system using the MIT Rule is a classical approach in adaptive control. Below is a detailed breakdown of how this design works, including derivation, assumptions, and a simple example.
1. Concept of MRAC with MIT Rule
The goal of MRAC is to design a control system such that the output of the plant y(t)y(t) follows the output of a reference model ym(t)y_m(t), even if the plant parameters are unknown or time-varying.
The MIT Rule is one of the earliest adaptive laws, based on gradient descent to minimize a cost function (typically the squared error).
2. System Setup
Plant (unknown):
yË™(t)=ay(t)+bu(t),
Reference Model:
y˙m(t)=amym(t)+bmr(t)
Control Law (linear):
u(t)=θ(t)r(t)
Where:
-
θ(t) is the adaptive gain to be adjusted
-
r(t) Â is the reference input
3. Define Tracking Error:
ε(t)=y(t)−ym(t)
4. MIT Rule Adaptation Law
Â
We define a cost function:
J(θ)=1/2 ε^2(t)
Use gradient descent to update θ:
Â
dθdt=−γ∂J∂θ=−γε(t)∂ε∂θfrac{dtheta}{dt} = -gamma frac{partial J}{partial theta} = -gamma varepsilon(t) frac{partial varepsilon}{partial theta}5. Computing Sensitivity ∂ε∂θfrac{partial varepsilon}{partial theta}
Assume the plant is:
y˙(t)=ay(t)+bθr(t)dot{y}(t) = a y(t) + b theta r(t)
Then,
dεdθ=ddθ(y−ym)=dydθ−0=dydθfrac{dvarepsilon}{dtheta} = frac{d}{dtheta}(y – y_m) = frac{dy}{dtheta} – 0 = frac{dy}{dtheta}
Since y˙=ay+bθrdot{y} = a y + b theta r, then:
dydθ=br(t)frac{dy}{dtheta} = b r(t)
So,
dθdt=−γε(t)br(t)frac{dtheta}{dt} = -gamma varepsilon(t) b r(t)
But bb is unknown, so we approximate or absorb it into γgamma. Final adaptation law:
dθdt=−γε(t)r(t)boxed{ frac{dtheta}{dt} = -gamma varepsilon(t) r(t) }
Element | Equation |
---|---|
Plant | yË™=ay+budot{y} = a y + b u |
Reference Model | y˙m=amym+bmrdot{y}_m = a_m y_m + b_m r |
Control Law | u=θ(t)ru = theta(t) r |
Tracking Error | ε=y−ymvarepsilon = y – y_m |
Adaptation Law | dθdt=−γεrfrac{dtheta}{dt} = -gamma varepsilon r |
7. Simple Numerical Example
Let:
-
Reference model: y˙m=−2ym+2rdot{y}_m = -2 y_m + 2 r
-
Plant: y˙=−1y+θrdot{y} = -1 y + theta r, where θtheta is adaptive
-
γ=1gamma = 1
-
r(t)=1r(t) = 1
Then:
-
ε=y−ymvarepsilon = y – y_m
-
dθdt=−ε⋅1frac{dtheta}{dt} = -varepsilon cdot 1
Simulation Goal:
Make y(t)→ym(t)y(t) to y_m(t) by adjusting θ(t)theta(t)
Â