Chowdhary, G., & Johnson, E. (2011, June). A singular value
maximizing data recording algorithm for concurrent learning. In
Proceedings of the 2011 American Control Conference (pp.
3547-3552). IEEE.
MODEL REFERENCE ADAPTIVE
CONTROL
Consider the uncertain multivariable nonlinear dynamical system
Since the exact model is usually not available or not invertible, an
approximate inversion model is introduced, which is used to determine the control
input where is the pseudo
control input that represents the desired model output and is expected to be
approximately achieved by .
Hence, the pseudo control input is the output of the approximate
inversion model This approximation results in a model error of the form A reference model is chosen to characterize the desired
response of the system The command is
assumed to be bounded and piecewise continuous, furthermore, it is
assumed that all requirements for guaranteeing the existence of a unique
solution are satisfied.
Consider a tracking control law consisting of a linear feedback part
, a linear feedforward part , and an adaptive
part in the following
form Let’s differentiate :
Letting be the solution
of the closed loop Lyapunov equation: Let . Two cases for characterizing the uncertainty
can be considered. In
the first case (Case I: Structured Uncertainty), the
uncertainty is assumed to be represented as an unknown linear
combination of known nonlinear basis function. That is,
there exist a matrix of constants and a vector of continuously
differentiable functions
such that If the basis functions are also unknown, we say that the
uncertainty is unstructured, in this case (Case
II: Unstructured Uncertainty) if it is known
that the uncertainty
is continuous and defined over a compact domain , a Radial Basis
Function (RBF) Neural Network (NN) can be used as the adaptive element:
For let
denote the RBF centroid and
denote the RBF width then for
each . The radial basis functions
are given as Then, we have For the case of structured uncertainty it is well known that
the following adaptive law Furthermore, replacing with
results in the baseline gradient based adaptive law for the case of
unstructured uncertainty (case II). For this case, the baseline adaptive
law guarantees uniform ultimate boundedness of tracking error .
A PE signal must contain as many spectral lines as the dimension of
the basis of the uncertainty over a time interval. Hence, constant
reference signals are not PE, nor are exponentially decaying reference
signals. In many control applications, enforcing such persistent
excitation in the control system may be infeasible or not acceptable due
to energy requirements.
CONCURRENT LEARNING
ADAPTIVE CONTROL
A.
Exponential Convergence with Concurrent Learning for Case of Structured
Uncertainty
Theorem: Consider the system , the control
law , the case of structured
uncertainty. For the jth recorded data point let ,
furthermore let be the number of
recorded data points
in the history stack matrix such that ,
and consider the following weight update law: Then the zero solution of tracking error dynamics is globally exponentially stable
and exponentially.
Furthermore, let , then the rate of convergence is directly
proportional to the smallest singular value of .
The term for the th data point can be calculated by
noting that Since is
known, the problem of estimating system uncertainty can be reduced to
that of estimation of .
B.
Neuro-Adaptive Control with Guaranteed Boundedness with Concurrent
Learning for case of Unstructured Uncertainty
When the structure of the uncertainty is unknown (case II in section
II), a RBFNN can be used as the adaptive element by leveraging their
universal approximation property of RBFNN. In contrast with the baseline
adaptive law concurrent learning adaptive law guarantees that the tracking
error approaches and remains bounded in a neighorhood of zero, and the
weight error approaches and remains bounded in a compact
neighborhood of the ideas weights.
A
SIMPLE METHOD FOR RECORDING SUFFICIENTLY DIFFERENT POINTS
In the following, we assume that the recorded data is stored in a
history-stack, and new data is added or old data removed based on the
criteria discussed below. We will let denote the subscript of the last point
stored.
For ease of exposition, for a stored data point , we let denote the data point to be stored. We
will let denote the history stack at time step . The th column of will be denoted by . It is assumed that the maximum
allowable number of recorded data points is limited due to memory or
processing power considerations. Therefore, we will require that has a maximum of columns, clearly, in order to be
able to satisfy the rank-condition, . For the th data point,
the associated model error is assumed to be stored in
the array .
For a given a simple
way select the instantaneous data for recording is to require
The above method ascertains that only those data points are
selected for storage that are sufficiently different from the last data
point stored. In order to meet the dimension of the history stack, the
data can be stored in a cyclic manner. That is if , then the next data point
replaces the oldest data point (), and so on.
A SINGULAR VALUE
MAXIMIZING APPROACH
From theorem 1 we have that the rate of convergence depends on . Letting denote the singular values
of , we recall that for
nonzero singular values , and is full ranked only if is nonzero.
The method we present in this section selects a data point for
recording if its inclusion results in an increase in the instantaneous
minimum singular value of .
The following fact ascertains that the singular values of are the same as that of .
Fact: Let , then
Leveraging this fact, algorithm 1 aims to maximize the minimum
singular value of the matrix containing the history stack. The algorithm
begins by using criterion to select sufficiently different points for
storage. If the number of stored points increases the maximum allowable
number, the algorithm seeks to incorporate new data points in such a way
that the minimum singular value of is increased. To achieve this, the
algorithm sequentially replaces every recorded data point in the history
stack with the current data point and stores the resulting minimum
singular value in a variable. The algorithm then finds the maximum over
these values, and accepts the new data point for storage into the
history stack (by replacing the corresponding existing point) if the
resulting configuration results in an increase in the instantaneous
minimum singular value of .
Algorithm 1 Singular Value Maximizing Algorithm for
Recording Data Points
Require:
ifthen
end if
ifthen
for to
do
end for
find and let denote the corresponding column
index
nbg=nbg-1; for ii =1:nbg A(:,ii)=sigma;%input new point %dets(ii)= det(A*A');%calculate determinant eigs(ii)=min(sqrt(eig(A(:,1:nbg)*A(:,1:nbg)')));%min(svd(A*A'));%calculate min eigenvalue A=XbgOld;%recover old end %[Y,I]=min(eigs);%look for the minimum eigenvalue one (this is the point to throw) [Y,I]=max(eigs);%look for the maximum minimum eigenvalue one (this is the point to throw) if Y>old_eig %incorporate point only if it is better than what I have A(:,I)=sigma; Delta_bg_old(:,I)=deltaErr; Xbg=A; %send out new A Delta_bg=Delta_bg_old; else Delta_bg=Delta_bg_old; Xbg=A;%send out old A end