Abstract.
The -control
problem was stated in the 1960s by George Zames and finally solved by
Apkarian and Noll in 2006.
The Matlab function hinfstruct
based on work of Apkarian, Noll and Gahinet 2006 - 2010 makes the
mathematical solution
available
to the control community.
Rationale.
The control
problem can be cast as follows. Given a proper transfer operator
and a set of
proper controllers
,
find
∈
K
which stabilizes internally
such that
the -norm of
the closed-loop transfer function
from to
is minimized at
among all internally stabilizing
controllers ∈ K. In other words,
is an optimal solution of the
optimization program
minimize
subject to stabilizes
internally
(1)
where is the response
of the closed-loop system to input when controller
is used, and the -norm is nothing else but the
operator norm. As
we shall see, the crucial question in (1) is how to choose the space
K.
Milestones
The famous 1989 paper by Doyle, Glover, Kargonekar and Francis
gives a solution of
the control
problem (1) when K is the
space of all controllers
having a state-space realization
with the
same order as the plant .
That is, the size of
is the same as size of the -matrix in the plant .
This is the largest possible class K.
It leads to the famous characterization of the central
-controller
by 2 decoupled algebraic Riccati equations. The
Matlab function hinfric uses this approach.
Another milestone is the 1995 discovery by Gahinet and Apkarian
that the
probem over the same largest class K
of full-order controllers could also
be transformed into a linear matrix inequality (LMI) and solved as such.
This approach is used in the Matlab function hinflmi.
Using structured control
The 1-degree-of-freedom control (1-DOF) is a simple
set-up to demonstrate the use of
-control.
In the scheme below
red arrows represent inputs to the closed-loop system like reference
signals ,
process noise ,
disturbances , and sensor noise
. The blue arrows are
controlled outputs in closed-loop, which we typically want to be small. For instance,
on the left is the tracking error,
and ê is a filtered version of
,
where
is typically a low-pass filter. In contrast,
might typically be a high-pass filter, penalizing
high frequency control action.
Given the performance channel
with
and ,
we seek
An example of a structured controller
We consider the flight control loop in longitudinal
control of an aircraft. The following scheme shows the situation,
where the
flight controller has to generate the elevator deflection
,
using the vertical load factor
as reference,
and the pitch rate as output.
If we extract the controller from the previous figure, we can see that
it consists of an architecture with a PI controller on the load factor off-set
,
added to a simple gain on input ,
in series with a low-pass filter. Altogether
has 5 unknown parameters,
for the PI, for the gain,
and for the filter. To represent
these unknowns we use the
compact notation .
We write to
indicate that
depends on .
In state-space form itcan be written as
where the unknowns
enter nonlinearly. Using a simple trick
which consists in augmenting the plant by an additional input
and output, , we can linearize this controller to obtain
the equivalent form
As indicated by the red and blue elements, this leads to a
decentralized structure.
In the plant the linearization requires the following operation, which
replaces the two elements in series by a single now decentralized
controller.