Linear quadratic control: Difference between revisions

From Citizendium
Jump to navigation Jump to search
imported>Hendra I. Nurdin
m (under construction notice)
imported>Hendra I. Nurdin
(further development)
Line 13: Line 13:


===Plant model===
===Plant model===
In discrete time, the plant (the system to be controlled) is assumed to be linear with ''input'' <math>u_k</math>, ''state'' <math>x_k</math> and ''output'' <math>y_k</math>, and evolves in discrete time ''k''=0,1,... according to the following dynamics:
In discrete time, the plant (the system to be controlled) is assumed to be linear with ''input'' <math>u_k</math> and ''state'' <math>x_k</math>, and evolves in discrete time ''k''=0,1,... according to the following dynamics:


<math>x_{k+1}=Ax_{k}+B u_{k};\, x_0=x</math>
<math>x_{k+1}=Ax_{k}+B u_{k};\, x_0=a</math>


<math>y_{k}=Cx_{k}+D u_{k}, </math>
where <math>a,x_k \in \mathbb{R}^n</math> and <math>u_k \in \mathbb{R}^m</math> for all <math>k\geq 0</math> and <math>A,B</math> are real matrices of the corresponding sizes (i.e., for consistency, <math>A</math> should be of the dimension <math>n \times n</math> while <math>B</math> should be of dimension <math>n \times m</math>). Here <math>a</math> is the ''initial state'' of the plant.  
 
where <math>x,x_k \in \mathbb{R}^n</math>, <math>u_k \in \mathbb{R}^m</math> and <math>y_k \in \mathbb{R}^p</math> for all <math>k\geq 0</math> and <math>A,B,C,D</math> are real matrices of the corresponding sizes (e.g., for consistency, <math>A</math> should be of the dimension <math>n \times n</math> while <math>B</math> should be of dimension <math>n \times m</math>). Here <math>x</math> is the ''initial state'' of the plant.  


===Cost functional===
===Cost functional===
For a finite integer <math>K>0</math>, called the ''control horizon'' or ''horizon'', a real valued cost functional  <math>J</math> of the initial state ''x'' and the control sequence <math>u_0,u_1,\ldots,u_{K-1}</math> up to time <math>K-1</math> is defined as follows:   
For a finite integer <math>K>0</math>, called the ''control horizon'' or ''horizon'', a real valued cost functional  <math>J</math> of ''a'' and the control sequence <math>u_0,u_1,\ldots,u_{K-1}</math> up to time <math>K-1</math> is defined as follows:   


<math>J^K(x,u_0,u_1,\ldots,u_{K-1})=\sum_{k=0}^{K-1}(x_k^T Q x_k+u_k^T R u_k) + x_K^T \Gamma x_K, \,\, (1)</math>
<math>J^K(a,u_0,u_1,\ldots,u_{K-1})=\sum_{k=0}^{K-1}(x_k^T Q x_k+u_k^T R u_k) + x_K^T \Gamma x_K, \,\,; x_0=a\,\, (1)</math>


where <math>Q,\Gamma</math> are given symmetric matrices (of the corresponding sizes) satisfying <math>Q,\Gamma \geq 0 </math> and <math>R</math> is a given symmetric matrix (of the corresponding size) satisfying <math>R > 0 </math>. In this setting, control is executed for a finite time and the horizon <math>K</math> represents the terminal time of the control action. However, depending on some technical assumptions on the plant, it may also be possible to allow <math>K \uparrow \infty</math> in which case one speaks of an ''infinite horizon''.  
where <math>Q,\Gamma</math> are given symmetric matrices (of the corresponding sizes) satisfying <math>Q,\Gamma \geq 0 </math> and <math>R</math> is a given symmetric matrix (of the corresponding size) satisfying <math>R > 0 </math>. In this setting, control is executed for a finite time and the horizon <math>K</math> represents the terminal time of the control action. However, depending on some technical assumptions on the plant, it may also be possible to allow <math>K \uparrow \infty</math> in which case one speaks of an ''infinite horizon''.  
Line 33: Line 31:
The objective of LQ control is to solve the ''optimal regulator problem'':  
The objective of LQ control is to solve the ''optimal regulator problem'':  
<blockquote>
<blockquote>
'''(Optimal regulator problem)''' For a given horizon ''K'' and initial state ''x'', find a control sequence <math>\tilde u_0,\tilde u_1,\ldots,\tilde u_{K-1} \in \mathbb{R}^m</math> that ''minimizes'' the cost functional <math>J^K</math>, that is,<br><br>
'''(Optimal regulator problem)''' For a given horizon ''K'' and initial state ''a'', find a control sequence <math>\tilde u_0,\tilde u_1,\ldots,\tilde u_{K-1} \in \mathbb{R}^m</math> that ''minimizes'' the cost functional <math>J^K</math>, that is,<br><br>


<math>J^K(x,\tilde u_0,\tilde u_1,\ldots,\tilde u_{K-1}) \leq J^K(x,u_0,u_1,\ldots,u_{K-1}),\,\, (2) </math><br><br>
<math>J^K(a,\tilde u_0,\tilde u_1,\ldots,\tilde u_{K-1}) \leq J^K(a,u_0,u_1,\ldots,u_{K-1}),\,\, (2) </math><br><br>


over all possible control sequences <math>u_0,u_1,\ldots,u_{K-1} \in \mathbb{R}^m</math>. </blockquote>   
over all possible control sequences <math>u_0,u_1,\ldots,u_{K-1} \in \mathbb{R}^m</math>. </blockquote>   
Line 41: Line 39:
Thus the optimal regulator problem is a type of [[optimal control]] problem and the control sequence <math>\tilde u_0,\tilde u_1,\ldots,\tilde u_{K-1} \in \mathbb{R}^m</math> is called an optimal control sequence.
Thus the optimal regulator problem is a type of [[optimal control]] problem and the control sequence <math>\tilde u_0,\tilde u_1,\ldots,\tilde u_{K-1} \in \mathbb{R}^m</math> is called an optimal control sequence.


==Solution of optimal regulator problem==
A standard approach to solving the discete time optimal regulator problem is by using [[dynamic programming]]. In this case, a special role is played by the so-called cost-to-go functional <math>J_k^K</math> defined as the cost from step ''k'' to step ''K'' starting at <math>x_k=b</math>:
<math>J_k^K(b,u_k,\ldots,u_{K-1})=\sum_{j=k}^{K-1}(x_j^T Q x_j+u_j^T R u_j) + x_K^T \Gamma x_K.
</math>
Another important notion is that of the ''value function'' at step k, <math>V_k</math>, defined as:
<math>
V_k(b)=\mathop{\inf}_{u_{k},\ldots,u_{K-1}\in \mathbb{R}}J_k^K(b,u_{k},\ldots,u_{K-1}).
</math>
For the optimal regulator problem it can be shown that <math>V_k</math> is also a quadratic function (of the variable ''b''). It is given by:
<math>
V_k(b)=b^T P_k b,
</math>
where <math>P_k</math> is a real positive definite symmetric matrix satisfying the ''backward recursion'':
<math>
P_{k}=A^T P_{k+1} B(R+BP_{k+1}B^T)^{-1}B^T P_{k+1}A,\,\,k=1,\ldots,K-1
</math>
with the ''final condition'':
<math>P_K=\Gamma</math>.
Moreover, the infimum of <math>J_k^K</math> for a fixed ''b'' is attainable at the optimal sequence <math>\tilde u_k,\ldots,\tilde u_{K-1}</math> given by:
<math>
\tilde u_j=(R+BP_{j+1}B^T)^{-1}B^T P_{j+1} \tilde x_j, 
</math>
where <math>\tilde x_j</math> satisfies the plant dynamics with <math>\tilde x_k=b</math>. It then follows that the minimum value of the cost functional is simply <math>V_0(a)</math>.
The validity of the above results depends crucially on the assumption that <math>R>0</math>, this prevents the problem from becoming "singular". It also guarantees the uniqueness of the optimal sequence (i.e., there is exactly one sequence mimizing the cost functional (1)).
 
==Related topics==
==Related topics==
[[Linear quadratic Gaussian control]]
[[Linear quadratic Gaussian control]]

Revision as of 05:36, 11 October 2007

This article is developed but not approved.
Main Article
Discussion
Related Articles  [?]
Bibliography  [?]
External Links  [?]
Citable Version  [?]
 
This editable, developed Main Article is subject to a disclaimer.

This article is currently Under Construction

In control engineering and systems and control theory, linear quadratic control or LQ control refers to controller design for a deterministic linear plant (meaning that there are no elements of randomness involved) based on the minimization of a quadratic cost functional (a functional is a term for a real or complex valued function). The method is founded on the state space formalism and is a fundamental concept in linear systems and control theory.

There are two main versions of the method, depending on the setting of the control problem:

  1. Discrete time linear quadratic control
  2. Continuous time linear quadratic control

LQ control aims to find a control signal that minimizes a prescribed quadratic cost functional. In the so-called optimal regulator problem, this functional can be viewed as an abstraction of the "energy" of the overall control system and minimization of the functional corresponds to minimization of that energy.

Discrete time linear quadratic control

Plant model

In discrete time, the plant (the system to be controlled) is assumed to be linear with input and state , and evolves in discrete time k=0,1,... according to the following dynamics:

where and for all and are real matrices of the corresponding sizes (i.e., for consistency, should be of the dimension while should be of dimension ). Here is the initial state of the plant.

Cost functional

For a finite integer , called the control horizon or horizon, a real valued cost functional of a and the control sequence up to time is defined as follows:

where are given symmetric matrices (of the corresponding sizes) satisfying and is a given symmetric matrix (of the corresponding size) satisfying . In this setting, control is executed for a finite time and the horizon represents the terminal time of the control action. However, depending on some technical assumptions on the plant, it may also be possible to allow in which case one speaks of an infinite horizon.

Note that each term on the right hand side of (1) are non-negative definite quadratic terms and may be interpreted as abstract "energy" terms (e.g., as the "energy" of ). The term accounts for penalization of the control effort. This term is necessary because overly large control signals are not desirable in general; in practice this could mean that the resulting controller cannot be implemented. The final term is called the terminal cost and it penalizes the energy of the plant at the final state .

The LQ regulator problem in discrete time

The objective of LQ control is to solve the optimal regulator problem:

(Optimal regulator problem) For a given horizon K and initial state a, find a control sequence that minimizes the cost functional , that is,



over all possible control sequences .

Thus the optimal regulator problem is a type of optimal control problem and the control sequence is called an optimal control sequence.

Solution of optimal regulator problem

A standard approach to solving the discete time optimal regulator problem is by using dynamic programming. In this case, a special role is played by the so-called cost-to-go functional defined as the cost from step k to step K starting at :

Another important notion is that of the value function at step k, , defined as:

For the optimal regulator problem it can be shown that is also a quadratic function (of the variable b). It is given by:

where is a real positive definite symmetric matrix satisfying the backward recursion:

with the final condition:

.

Moreover, the infimum of for a fixed b is attainable at the optimal sequence given by:

where satisfies the plant dynamics with . It then follows that the minimum value of the cost functional is simply .

The validity of the above results depends crucially on the assumption that , this prevents the problem from becoming "singular". It also guarantees the uniqueness of the optimal sequence (i.e., there is exactly one sequence mimizing the cost functional (1)).

Related topics

Linear quadratic Gaussian control