1. Introduction
Let a continuous-time system be given by
where
and
are the state, the input and the measurement, respectively. We assume that
and
are controllable (see [
1] for a new reduction from the case where
and
are only stabilizable). Let
denote the cost functional, where
and
. Assuming that
is given, the LQR problem is to attenuate the disturbance
using minimal control cost, i.e., to design a regulation input
that minimizes
, subject to the constraints given by (
1). Let
be the static-output-feedback (SOF) with the closed-loop matrix
. Let
denote the left-half plane, let
and let
denote the set of all
with
, where
is the real part of
z. Let
denote the set of all matrices
, such that
is stable, i.e.,
(where
is the spectrum of
). By
, we denote the set of all matrices
, such that
. In this case, we say that
is
-stable. Below, we will occasionally write
instead of
, when it is clear what the size of the related matrices is.
Let
be given. Substitution of
into (
2) gives
Since
and since
is stable, it follows that the Lyapunov equation
has a unique solution
, given by
where
puts all the columns of the given matrix in a single column and
is the inverse of
. Let us denote the solution (
5) as
. Substitution of (
4) into (
3) and noting that
with
stable, leads to
Thus, we look for
that minimizes the functional
. When
is unknown, we seek
for which
is minimal. In this case, we get a robust LQR via SOF, in the sense that it minimizes
for the worst possible (unknown)
. Note that
and that there exists
for which equality holds. Therefore
, where equality holds in the worst case.
Note that the functionals
and
are generally not convex since their domain of definition
(and therefore
) is generally non-convex. Necessary conditions for optimality were given as three quadratic matrix equations in [
2,
3,
4,
5]. Necessary and sufficient conditions for optimality, based on linear matrix inequalities (LMI), were given in [
6,
7,
8]. However, algorithms based on these formulations are generally not guaranteed to converge, seemingly because of the non-convexity of the coupled matrix equations or inequalities, and when they converge, it is to a local optimum only.
The application of SOFs in LQRs is appealing for several reasons: they are reliable and cheap, and their implementation is simple and direct. Moreover, the long-term memory of dynamic-feedbacks is useless for systems subject to random disturbances, to fast dynamic loadings or to impulses, and the application of state-feedbacks is not always possible, due to unavailability of full-state measurements (see [
9], for example). On the other hand, in practical applications, the entries of the needed SOFs are bounded, and since the problem of SOFs with interval constrained entries is NP-hard (see [
10,
11]), one cannot expect the existence of a deterministic polynomial-time algorithm to solve this problem. Randomized algorithms are thus natural solutions to this problem. The probabilistic and randomized methods for the constrained SOF problem and robust stabilization via SOFs (among other hard problems) are discussed in [
12,
13,
14,
15]. The Ray-Shooting Method was recently introduced in [
16], where it was utilized to derive the Ray-Shooting (RS) randomized algorithm for the minimal-gain SOF problem with regional pole-assignment, where the region can be non-convex and unconnected. For a survey of the SOF problem see [
17] and for a recent survey of the robust SOF problem see [
18].
The contribution of this research is as follows:
The suggested algorithm is based on the Ray-Shooting Method (see [
16]), which, as opposed to smooth optimization methods, has the potential of finding a global optimum of continuous functions over compact non-convex and unconnected regions.
The suggested algorithm has a proof of convergence (in probability) and explicit complexity.
Experience with the algorithm shows good quality of controllers, high percent of success and good run-time for real-life systems. Thus, the suggested practical algorithm efficiently solves the problem of LQR via SOF.
The algorithm does not need to solve any Riccati equations and thus can be applied to large systems.
The suggested algorithm is one of the few that deals with LQR via SOF and has the ability to deal with discrete-time systems under the same formulation.
The reminder of the article is organized as follows:
In
Section 2, we introduce the practical randomized algorithm for the problem of LQR via SOF. In
Section 3, we give the results of the algorithm for some real-life systems and we compare its performance with the performance of a well known algorithm that has a proof of convergence to local minimum (under some reasonable assumptions). Finally, in
Section 4 we conclude with some remarks.
2. The Practical Algorithm for the Problem of LQR via SOF
Assume that
was found by the RS algorithm (see [
16]) or by any other method (see [
19,
20,
21]). Let
and let
be a unit vector w.r.t. the Frobenius norm, i.e.,
. Let
and let
be the hyperplane defined by
, where
. Let
and let
denote the set of all
, such that
. Let
, where
denotes the closed ball centered at 0 with radius
(
), with respect to the Frobenius norm on
. Let
denote the convex-hull of the vertex
with the basis
. Let
and note that
is compact (but generally not convex). We wish to minimize the continuous function
(or the continuous function
, when
is known) over the compact set
. Let
denote a point in
where the minimum of
is accepted. Obviously,
, for some direction
, as above.
The suggested algorithm in Algorithm 1 works as follows:
We start with a point , found by the RS algorithm.
Assuming that
, the inner-loop (
) uses the Ray-Shooting Method in order to find an approximation of the global minimum of the function
over
—the portion of
bounded in the cone
. The proof of convergence in probability of the inner-loop and its complexity (under the above mentioned assumption) can be found in [
16] (see also [
22]). In the inner-loop, we choose a search direction by choosing a point
F in
—the base of the cone
. Next, in the most inner-loop (
) we scan the ray
and record the best controller on it. Repeating this a sufficient number of times (as is given in (
7) and in the discussion right after), we reach
(or an
- neighborhood of it) with high probability, under the assumption that
.
The outer-loop (
) is used as a substitution for restarting the RS algorithm again and again, by taking
as the new vertex of the search cone instead of
and by choosing a different direction
. The choice of a different direction is made as a backup to the case where the above mentioned assumption didn’t hold in the previous iterations (see Remark 1 below). The replacement of
by
can be considered as a heuristic step, which is made instead of running the RS algorithm many times in order to generate “the best starting point”, which is relevant only if we actually evaluate
on each such point and take the point with the best value as the best starting point. Since we, in any case, evaluate
in the main algorithm, we could avoid the repeated execution of the RS algorithm. The outer-loop is similar to what is done in the Hide-And-Seek algorithm (see [
23,
24]). The convergence in probability of the Hide-And-Seek algorithm can be found in [
25].
Remark 1. The volume of is given by where and Γ
is the known Γ
-function. The volume of is given approximately (and exactly when ) by . Thus, by taking , the portion of covered by (i.e., the probability that ) is given by . Let Θ
denote the known relation between functions defined by if and only if . Since and since when , it follows that Therefore, by taking iterations in the outer-loop, we have almost surely. Specifically, when , we suggest taking and orthogonal matrix , and to take the directions in the outer-loop.
The complexity of the suggested practical algorithm measured as the number of its arithmetic operations is given as follows:
We therefore have a total complexity of .
Let a closed
-neighborhood of
in
be defined by
Let the idealized algorithm be the algorithm that samples the search space
until hitting
, where the sampling is according to a general p.d.f.
g and a related generator
G. For
, the number of iterations needed to guarantee a probability of at least
to hit
is given by
where
denotes the volume of the related set and
are the essential-supremum and essential-infimum of
g over
, respectively (see [
16]). Similarly to what is done in [
16], one can show that the last is
, where
is a radius of a ball of a basis of a cone with height
and vertex
that has a volume that equals to
. This results in an exponential number of iterations, but if we restrict the input of the algorithm to systems with
satisfying
when
are fixed, then, the number of iterations would be
, i.e., polynomial in
—which can be considered as the true size of the problem (for a fixed
). In this sense we can say that the algorithm is efficient. The total number of arithmetic operations of the idealized algorithm that guarantees a probability at least
to hit
is therefore given by
, since sampling points according to the uniform distribution
g (and therefore
) and the related generator
G, takes
.
For the sake of comparison, which will be presented in the next section, we bring here, in Algorithm 2, the algorithm of D. Moerder and A. Calise (see [
5]) adjusted to our formulation of the problem, which we call: the MC Algorithm. To the best of our knowledge, this is the best algorithm for LQR via SOF published so far.
Algorithm 1: The practical randomized algorithm for the LQR via static-output-feedback (SOF) problem. |
Input: , integers: , |
controllable pairs and , |
matrices and . |
Output: close as possible to . |
|
1. compute as in (5) |
2. |
3. |
4. for to m do |
4.1. choose such that , |
uniformly at random |
4.2. let |
4.3. for to n do |
4.3.1. choose uniformly at random |
4.3.1.1. for to s do |
4.3.1.1.1. |
4.3.1.1.2. |
4.3.1.1.3. if then |
4.3.1.1.3.1. compute as in (5) |
4.3.1.1.3.2. |
4.3.1.1.3.3. if then |
4.3.1.1.3.3.1. |
4.3.1.1.3.3.2. |
4.3.1.1.3.3.3. |
4.4. |
5. return |
Algorithm 2: The MC Algorithm. |
Input: , integers: , |
controllable pairs and , |
matrices and . |
Output: close as possible to . |
|
1. |
2. |
3. |
4. |
5. |
6. |
7. |
8. for to s do |
8.1. |
8.2. |
8.3. if then |
8.3.1. |
8.3.2. |
8.3.3. |
8.3.4. |
8.3.5. if then |
8.3.5.1. |
8.3.5.2. |
8.3.5.3. |
8.3.5.4. |
8.3.5.5. |
8.3.5.6. |
9. if then |
9.1. while and do |
9.1.1. |
9.1.2. for to s do |
9.1.2.1. |
9.1.2.2. |
9.1.2.3. if then |
9.1.2.3.1. |
9.1.2.3.2. |
9.1.2.3.3. |
9.1.2.3.4. |
9.1.2.3.5. if then |
9.1.2.3.5.1. |
9.1.2.3.5.2. |
9.1.2.3.5.3. |
9.1.2.3.5.4. |
9.1.2.3.5.5. |
9.1.2.3.5.6. |
10. return |
3. Experiments
In the following experiments we applied the Algorithm 1 and Algorithm 2, on systems taken from the liberaries [
27,
28,
29]. We took only the systems with controllable
pairs, for which the RS algorithm succeeded in finding SOFs (see [
16], Table 8, p. 231). In order to initialize the MC Algorithm, we also used the RS algorithm to find a starting
-stabilizing static-output-feedback, for known optimal value for
. In all the experiments for the suggested algorithm we used
,
,
,
, and for the MC Algorithm we used
(in order to get the same number of
overall iterations and the same number
of iterations for the local search). In every case, we took
. The Stability Margin column of
Table 1 relates to
for which the real part of any eigenvalue of the closed-loop is less than or equal to
. The values of
in
Table 1 relates to the largest
for which the RS algorithm succeeded in finding
. The reason is that if
is an eigenvalue of
with corresponding eigenvector
v then, (
4) implies
It follows that minimizing
results in a larger abscissa. Thus, it is worth searching for a starting point
that maximizes the abscissa
. This can be done efficiently by running a binary search on the abscissa and using the RS algorithm as an oracle. Note that RS CPU time appearing in the third column of
Table 1 relates to running the RS algorithm for known optimal value of the abscissa. The RS algorithm is sufficiently fast also for this purpose, but other methods such as the HIFOO algorithm (see [
19]) can be applied for this purpose as well.
Let
denote the functional (
6) for the system
, where
is stable, i.e.,
. Let
denote the unique solution of (
4) for the system
with
F as above. Let
denote the functional (
4) for the system
with
and related Lyapunov matrix
. Now, if
is stable for some
K then,
is stable for
(but there might exist a
F such that
is stable, but which cannot be defined as
for some
matrix
K). Therefore
where
is an optimal LQR state-feedback controller for the system
. We conclude that
. Thus,
is a lower-bound for
and can serve as a good estimator for it (as is evidently seen from
Table 1 in many cases) in order to stop the algorithm earlier, since
can be calculated in advance.
The fourth column of
Table 1 represents
. The fifth column stands for
, where the number in the parentheses is the relative improvement over
, in percent. The sixth column is for
and the seventh column is for the CPU time of the suggested algorithm, given in seconds. The eighth column stands for
found by the MC Algorithm and finally, the ninth column stands for the CPU time of the MC Algorithm.
Regarding the suggested algorithm, note that the relative improvement of over is at least for the systems: AC6, AC11, AC12, DIS4, REA1, TF1, NN9, NN15 and NN17 (i.e., in 9 out of 29 systems). The AC12 should be noted, for which the improvement is ! Note also that for the (13 out of 29) systems: AC1, AC2, AC6, AC11, AC12, AC15, HE3, DIS4, REA1, REA2, HF2D10, HF2D11 and NN15, the value of for is very close to the value of for .
Regarding the comparison with the MC Algorithm, we conclude that the MC algorithm actually failed in finding any improvement of over for the systems: AC11, HE4, ROC1, ROC2, TF1 and NN12. The suggested algorithm performs significantly better regarding this key of performance for the systems: AC6, AC11, AC15, HE3, HE4, TF1, ROC4, NN9 and NN12. The suggested algorithm performs slightly better for the systems: AC1, AC2, DIS4, DIS5, HE1, HF2D10, HF2D11, REA1, REA2, ROC1, TMD, NN1, NN5 and NN13. Finally, the MC algorithm performs slightly better only for the systems: AC5, AC12 and NN16. We conclude that the suggested algorithm outperforms the MC Algorithm regarding the above-mentioned key of performance, although the MC Algorithm outperforms the suggested algorithm in terms of CPU time.
The MC Algorithm seems to perform better locally, while the suggested algorithm seems to perform better globally. Thus, practically, the best approach would be to apply the suggested algorithm in order to find a close neighborhood of a global minimum and then to apply the MC Algorithm on the result, for the local optimization.
4. Concluding Remarks
For a discrete-time system
and cost functional
let
be the SOF, and let
be the closed-loop matrix. Let
denote the open unit-disk, let
and let
denote the set of all
with
(where
is the absolute value of
z). Let
denote the set of all matrices
such that
(i.e., stable in the discrete-time sense), and let
denote the set of all matrices
such that
. In this case we say that
is
-stable. Let
be given. Substitution of
into (
10) yields
Since
and since
is stable, it follows that the Stein equation
has a unique solution
, given by
Substitution of (
12) into (
11) and noting that
with
stable, leads to
Thus, we look for
that minimizes the functional
, and when
is unknown, we seek
for which
is minimal. Similarly to the continuous-time case, we have
with equality in the worst case. Finally, if
is an eigenvalue of
and
v is a corresponding eigenvector then (
12) yields
. Therefore
, and thus, minimizing
results in larger abscissa. Now, the suggested algorithm can be readily applied to discrete-time systems. As to the MC Algorithm, we are not aware of any discrete-time analogue of it.
We conclude that the Ray-Shooting Method is a powerful tool, since it practically solves the problem of LQR via SOF, for real-life systems. The suggested algorithm has good performance, and is proved to converge in probability. The suggested method can similarly handle the problem of LQR via SOF for discrete-time systems. Obviously, this enlarges the scope and usability of the Ray-Shooting Method and we expect to receive more results in this direction.