\section{LQ řízení}\label{sec:lq}

LQ je zkratka slovního spojení linaer-quadratic, tedy lineárně kvadratický. 
Jedná se obecně o metodu, kdy je systém v diskrétním časovém kroku $t$ 
popsán vektorem proměnných $x(t) = ( x_1(t), ..., x_n(t) )$
a my můžeme nastavovat vektor parametrů $u(t) = ( u_1(t), ..., u_n(t) )$.
Metoda je popsána a použita v článku \cite{6_tuc_lq} pro nastavování časů zelených na křižovatce.
Princip přechodu z času $t$ do $t+1$ je popsán lineárním vztahem
\begin{equation}\label{eq:lq_prechod}
  x(t+1) = A x(t) + B u(t) \;,
\end{equation}

kde matice $A$ a $B$ jsou matice stavů a vstupů vyjadřující odezvu systému vzhledem 
k $x(t)$ a $u(t)$. Účelem LQ řízení je najít optimální hodnoty $u(t)$ v závislosti
na $x(t)$ dané zpětnovazebnou maticí $L$ vztahem 
\begin{equation}\label{eq_lq_feedback}
u(t) = -L x(t) \;.
\end{equation}
Optimalita je definována pomocí
kvadratického kritéria 
\begin{equation}\label{eq_quadratic_criterion}
J = \sum_{t=1}^{\infty} x(t)^T Q x(t) + u(t)^T R u(t) \;,
\end{equation}
kde $Q$ a $R$ jsou diagonální pozitivně semidefinitní matice vah určující významnost jednotlivých členů kritéria.
Zpětnovazebná matice $L$ se podle \cite{6_tuc_lq} dostane minimalizací kritéria $J$ jako
\begin{equation}\label{eq_riccati}
L = (R + B^T P B)^{-1} B^T P A \;,
\end{equation} kde $P$ je jednoznačné řešení Riccatiho rovnice pro diskrétní časový krok

\begin{equation}\label{eq_riccati_2}
P = Q + A^T ( P - P B ( R + B^T P B ) B^T P ) A \;.
\end{equation}
Rovnici a její řešení popisuje například \cite{7_lq_methods}.

\subsection{Minimalizace kritéria na horizontu}\label{sec:minim}
Minimalizaci kvadratického kritéria $J$ můžeme omezit da dostatečně dlouhý
časový horizont do budoucna. Podobný postup je popsán například v \cite{lqg_parallel}.
Kvadratické kritérium ve tvaru
\begin{equation}\label{eq:J}
 J = \sum_{t=0}^h x(t)^T Q x(t) + u(t)^T R u(t) \;,  
\end{equation}
kde $Q$ a $R$ jsou diagonální pozitivně definitní matice vah,
rozepíšeme pomocí vztahu \ref{eq:prechod_mat_po_subs}
a budeme minimalizovat pro jednotlivá $t$ podle $u(t)$.
Proměnná $u(h)$ se v kritériu vyskytuje pouze ve členu
\begin{equation}
u(h)^T Ru(h)
\end{equation}
a tedy musí být $u(h) = 0$. $u(h - 1)$ se vyskytuje ve členech
\begin{equation}
 u(h - 1)^T Ru(h - 1) + (x(h - 1)^T A^T +u(h - 1)^T B^T ) Q ( A x(h - 1) + B u(h - 1) + I_0) \;,
\end{equation}
což lze pomocí složených vektorů a matic přepsat do tvaru
\begin{equation} \label{eq:J_sloz}
 (u(h-1)^T, x(h - 1)^T ) 
  \left( \begin{array}{cc}
          B^T \sqrt{Q}^T & \sqrt{R}^T \\
	  A^T \sqrt{Q}^T & 0
	  \end{array}
  \right)  
  \left( \begin{array}{cc}
           \sqrt{Q} B & \sqrt{Q} A \\
	  \sqrt{R} & 0
	  \end{array}
  \right)
  \left( \begin{array}{c}
	   u(h-1) \\
	    x(h - 1)
	  \end{array}
  \right) \;,
\end{equation}
kde symbolem $\sqrt{Q}$ myslíme matici, pro níž platí $\sqrt{Q}^T \sqrt{Q} = Q$.
Matice $Q$ a $R$ jsou pozitivně definitní diagonální matice, takže $\sqrt{Q}$ bude také
pozitivně definitní diagonální a její diagonální prvky budou rovny odmocnině
příslušných prvků původní matice $Q$.
Složenou matici
\begin{equation}  
  M_0 =  \left( \begin{array}{cc}
           \sqrt{Q} B & \sqrt{Q} A \\
	  \sqrt{R} & 0
	  \end{array}
  \right)
\end{equation}
můžeme pomocí QR dekompozice rozložit na součin 

\begin{equation}
 M_0 = M_R M_Q ,
\end{equation}
kde $M_Q$ je horní trojůhelníková matice a $M_R$ je matice ortonormální.
Pro ortonormální matici $M_R$ platí
\begin{equation}
 M_R^T M_R = I \;,
\end{equation}
neboť její zloupce jsou vzájemně ortogonální a normované na jednotku.
Z toho plyne, že součin matic $M_0^T M_0$ vyskytující se v členu \ref{eq:J_sloz}
můžeme pomocí QR rozlkladu převést na tvar
\begin{equation}
 M_0^T M_0 = ( M_R M_Q )^T  M_R M_Q = M_Q^T M_R^T M_R M_Q = M_Q^T M_Q \;,
\end{equation}
kde
\begin{equation}
 M_Q =  \left( \begin{array}{cc}
          L_u & L \\
	  0 & L_q
	  \end{array}
  \right) \;,
\end{equation}
je horní trojůhelníková matice.
Člen \ref{eq:J_sloz} poté přejde na tvar
\begin{equation}
 (\Delta C(h-1)^T, x(h - 1)^T ) 
  \left( \begin{array}{cc}
          L_q^T & 0 \\
	  L^T & L_u^T
	  \end{array}
  \right)  
  \left( \begin{array}{cc}
          L_u & L \\
	  0 & L_q
	  \end{array}
  \right)
  \left( \begin{array}{c}
	   u(h-1) \\
	    x(h - 1)
	  \end{array}
  \right) \;,
\end{equation}
který můžeme dále upravit na
\begin{equation}
 ( L_u u(h-1) +  L_q x(h-1) )^T ( L_uu(h-1) +  L_q x(h-1) ) + x(h-1)^T L_q^T L_q x(h-1) \;.
\end{equation}Pokud tento člen chceme minimalizovat v proměnné $x(h-1)$, musí nutně platit
\begin{equation}
u(h-1) = - L_u^{-1} L x(h-1) \;,
\end{equation}
tím dostáváme vztah, podle kterého nastavujeme řídící proměnnou $u$. Nyní stačí získat matice $L$ a $L_x$
pro hodnotu v čase $0$.
Zbývající nenulová část $x(h-1)^T L_q^T L_q x(h-1) $ lze přepsat pomocí rovnice \ref{eq:lq_prechod} do tvaru 
\begin{equation}
 x(h-1)^T L_q^T L_q x(h-1) = ( A x(h-2) + B u(h-2) )^T L_q^T L_q ( A x(h-2) + B u(h-2) ) \;,
\end{equation}
kde se vyskytuje $u(t)$ pouze pro $t = h-2$. 
Při minimalizaci podle $u(h-2)$ musíme zahrnout i tuto část, člen ve složeném maticovém zápisu
tudíž nabyde tvaru
\begin{equation}
 (u(h-2)^T, x(h-2)^T ) 
  \left( \begin{array}{ccc}
          B^T \sqrt{Q}^T & \sqrt{R}^T & L_x A \\
	  A^T \sqrt{Q}^T & 0 & L_x B
	  \end{array}
  \right)  
  \left( \begin{array}{cc}
           \sqrt{Q} B & \sqrt{Q} A \\
	  \sqrt{R} & 0 \\
	  L_x A & L_x B
	  \end{array}
  \right)
  \left( \begin{array}{c}
	   u(h-2) \\
	    x(h-2)
	  \end{array}
  \right) \;.
\end{equation}
Matici
\begin{equation}
 M = \left( \begin{array}{cc}
           \sqrt{Q} B & \sqrt{Q} A \\
	  \sqrt{R} & 0 \\
	  L_x A & L_x B
	  \end{array}
  \right) = \left( \begin{array}{c}
           M_0  \\
	  L_x A	\; L_x B
	  \end{array}
  \right)
\end{equation}
opět převedeme QR dekompozicí do horního trojůhelníkového tvaru a dostaneme vztah pro $u(h-2)$.
Tento postup se analogicky aplikuje na každé $u(t)$. Matice $M_0$ je stále stjná, $L_x$ použijeme z předchozího kroku minimalizace.















