<?xml
version="1.0" encoding="utf-8"?>
<rss version="2.0" 
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
>
<channel xml:lang="fr">



<item xml:lang="fr">
		<title>Pontryagin's minimum principle (case : Linear sytem, Quadratic performance index, finite time horizon)</title>
		<link>https://pagespro.isae-supaero.fr/daniel-alazard/goodies-demos-210/pontryagin-s-minimum-principle.html</link>
		<guid isPermaLink="true">https://pagespro.isae-supaero.fr/daniel-alazard/goodies-demos-210/pontryagin-s-minimum-principle.html</guid>
		<dc:date>2016-11-09T10:17:54Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>ALAZARD Daniel</dc:creator>



		<description>
&lt;p&gt;Optimal control &lt;br class='autobr' /&gt;
Simplified case : Linear system, quadratic performance index, fixed horizon and final stateContentsProblem:Solution using Pontryagin's minimum principle :ExercisesProblem : &lt;br class='autobr' /&gt;
Let us consider the linear system : &lt;br class='autobr' /&gt;
$$\dot\mathbfx(t)=\mathbfA\mathbfx(t)+\mathbfB \mathbfu(t) ; \quad \mathbfx\in\mathbf\mboxR^n ; \mathbfu\in\mathbf\mboxR^m\quad (1)$$ &lt;br class='autobr' /&gt;
From a given initial state $\mathbfx_0=\mathbfx(0)$, the objective is to bring back the state to 0 within a given time horizon $t_f$ (...)&lt;/p&gt;


-
&lt;a href="https://pagespro.isae-supaero.fr/daniel-alazard/goodies-demos-210/" rel="directory"&gt;Goodies &amp; demos&lt;/a&gt;


		</description>


 <content:encoded>&lt;div class='rss_texte'&gt;&lt;/style&gt;&lt;/head&gt;&lt;body&gt;
&lt;div class=&#034;content&#034;&gt;&lt;h1&gt;Optimal control&lt;/h1&gt;
&lt;p&gt;&lt;!--introduction--&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Simplified case : Linear system, quadratic performance index, fixed horizon and final state&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;!--/introduction--&gt;&lt;/p&gt;
&lt;h2&gt;Contents&lt;/h2&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Problem :&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Solution using &lt;a href=&#034;https://en.wikipedia.org/wiki/Pontryagin's_maximum_principle&#034;&gt;Pontryagin's minimum principle&lt;/a&gt; :&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Exercises&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;h2&gt;Problem :&lt;a name=&#034;1&#034;&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Let us consider the linear system :&lt;/p&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L400xH26/77824b32b762458218fce714da109553-303eb.png?1548148781' style='vertical-align:middle;' width='400' height='26' alt=&#034;\dot{\mathbf{x}}(t)=\mathbf{A}\mathbf{x}(t)+\mathbf{B} \mathbf{u}(t)~; \quad \mathbf{x}\in\mathbf{\mbox{R}}^n~; \mathbf{u}\in\mathbf{\mbox{R}}^m\quad (1)&#034; title=&#034;\dot{\mathbf{x}}(t)=\mathbf{A}\mathbf{x}(t)+\mathbf{B} \mathbf{u}(t)~; \quad \mathbf{x}\in\mathbf{\mbox{R}}^n~; \mathbf{u}\in\mathbf{\mbox{R}}^m\quad (1)&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;From a given initial state &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L96xH24/6c25118e343c2ab58d24036fd8c9de30-8b596.png?1548148781' style='vertical-align:middle;' width='96' height='24' alt=&#034;\mathbf{x}_0=\mathbf{x}(0)&#034; title=&#034;\mathbf{x}_0=\mathbf{x}(0)&#034; /&gt;, the objective is to bring back the state to 0 within a given time horizon &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L24xH22/9674ab36b62e6b308973ef92c2922b6e-c0434.png?1548148781' style='vertical-align:middle;' width='24' height='22' alt=&#034;t_f&#034; title=&#034;t_f&#034; /&gt; (&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L96xH25/0ffe9304bafc22bca94a2c1e91b66ed0-b1b51.png?1548148781' style='vertical-align:middle;' width='96' height='25' alt=&#034;\mathbf{x}(t_f)=0&#034; title=&#034;\mathbf{x}(t_f)=0&#034; /&gt;) while minimizing the quadratic performance index :&lt;/p&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L360xH81/c5598f8a8512f6ae3cf851e7e1669f87-33a73.png?1548148781' style='vertical-align:middle;' width='360' height='81' alt=&#034; J=\frac{1}{2}\int_0^{t_f} (\mathbf{x}^T(t)\mathbf{Q}\mathbf{x}(t)+ \mathbf{u}^T(t)\mathbf{R}\mathbf{u}(t))dt&#034; title=&#034; J=\frac{1}{2}\int_0^{t_f} (\mathbf{x}^T(t)\mathbf{Q}\mathbf{x}(t)+ \mathbf{u}^T(t)\mathbf{R}\mathbf{u}(t))dt&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;where &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L24xH19/5e1ad0579fc06ddcbda6abaa092b7382-5a0d6.png?1548148781' style='vertical-align:middle;' width='24' height='19' alt=&#034;\mathbf{Q}&#034; title=&#034;\mathbf{Q}&#034; /&gt; and &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L24xH15/e1fd601dbae82a538d518550acb1af19-629ab.png?1548148781' style='vertical-align:middle;' width='24' height='15' alt=&#034;\mathbf{R}&#034; title=&#034;\mathbf{R}&#034; /&gt; are given weighting matrices with &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L56xH20/38ee6c17b76160cf4c23f32fa3e5c6ad-0d9f3.png?1548148781' style='vertical-align:middle;' width='56' height='20' alt=&#034;\mathbf{Q}\ge 0&#034; title=&#034;\mathbf{Q}\ge 0&#034; /&gt; and &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L48xH16/c9cdca66d199b92e103c2fc285d90316-bc006.png?1548148781' style='vertical-align:middle;' width='48' height='16' alt=&#034;\mathbf{R}&gt;0&#034; title=&#034;\mathbf{R}&gt;0&#034; /&gt;.&lt;/p&gt;
&lt;h2&gt;Solution using &lt;a href=&#034;https://en.wikipedia.org/wiki/Pontryagin's_maximum_principle&#034;&gt;Pontryagin's minimum principle&lt;/a&gt; :&lt;a name=&#034;2&#034;&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;The Hamiltonian reads&lt;/b&gt; :&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L384xH29/b7fde6fb00236bfd108bf967a8a9c728-d41a6.png?1548148781' style='vertical-align:middle;' width='384' height='29' alt=&#034; \mathcal{H}=\frac{1}{2}(\mathbf{x}^T\mathbf{Q}\mathbf{x}+\mathbf{u}^T\mathbf{R}\mathbf{u})+\mathbf{\Psi}^T(\mathbf{A}\mathbf{x}+\mathbf{B}\mathbf{u})&#034; title=&#034; \mathcal{H}=\frac{1}{2}(\mathbf{x}^T\mathbf{Q}\mathbf{x}+\mathbf{u}^T\mathbf{R}\mathbf{u})+\mathbf{\Psi}^T(\mathbf{A}\mathbf{x}+\mathbf{B}\mathbf{u})&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;where &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L80xH21/a786dd55eb85e091804faac146fb5032-3237b.png?1548148781' style='vertical-align:middle;' width='80' height='21' alt=&#034;\mathbf{\Psi}\in\mathbf{\mbox{I\hspace{-.15em}R}}^n&#034; title=&#034;\mathbf{\Psi}\in\mathbf{\mbox{I\hspace{-.15em}R}}^n&#034; /&gt; is the costate vector.&lt;/p&gt;
&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;the optimal control minimizes&lt;/b&gt; &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L56xH16/613fb1aa35260821857748789293bdd9-ceece.png?1548148781' style='vertical-align:middle;' width='56' height='16' alt=&#034;\mathcal{H}\quad \forall t&#034; title=&#034;\mathcal{H}\quad \forall t&#034; /&gt; :&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L488xH37/b4b0d735ee378a7479147cca8afd7dd3-24b58.png?1548148781' style='vertical-align:middle;' width='488' height='37' alt=&#034; \frac{\partial \mathcal{H}}{\partial \mathbf{u}}_{|\mathbf{u}=\widehat{\mathbf{u}}}=0=\mathbf{R}\widehat{\mathbf{u}}+\mathbf{B}^T\mathbf{\Psi}\quad\Rightarrow\quad\widehat{\mathbf{u}}=-\mathbf{R}^{-1}\mathbf{B}^T\mathbf{\Psi}\quad(2)&#034; title=&#034; \frac{\partial \mathcal{H}}{\partial \mathbf{u}}_{|\mathbf{u}=\widehat{\mathbf{u}}}=0=\mathbf{R}\widehat{\mathbf{u}}+\mathbf{B}^T\mathbf{\Psi}\quad\Rightarrow\quad\widehat{\mathbf{u}}=-\mathbf{R}^{-1}\mathbf{B}^T\mathbf{\Psi}\quad(2)&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Costate dynamics&lt;/b&gt; :&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L320xH32/9abe84d9e8d7c5e7f024852f6aef3bec-906df.png?1548148781' style='vertical-align:middle;' width='320' height='32' alt=&#034;\dot{\mathbf{\Psi}}=-\frac{\partial \mathcal{H}}{\partial \mathbf{x}} \Rightarrow \dot{\mathbf{\Psi}}=-\mathbf{Q}\mathbf{x}- \mathbf{A}^T\mathbf{\Psi} \quad (3)&#034; title=&#034;\dot{\mathbf{\Psi}}=-\frac{\partial \mathcal{H}}{\partial \mathbf{x}} \Rightarrow \dot{\mathbf{\Psi}}=-\mathbf{Q}\mathbf{x}- \mathbf{A}^T\mathbf{\Psi} \quad (3)&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;State-costate dynamics&lt;/b&gt; : (1), (2) and (3) leads to :&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L456xH51/9936221dc638004632384ee2f5ca1cc0-0a7e3.png?1548148781' style='vertical-align:middle;' width='456' height='51' alt=&#034; \left\{\begin{array}{ccccc}\dot{\mathbf{x}} &amp; = &amp; \mathbf{A}\mathbf{x} &amp;-&amp; \mathbf{B}\mathbf{R}^{-1}\mathbf{B}^T\mathbf{\Psi}\\ \dot{\mathbf{\Psi}} &amp; = &amp; -\mathbf{Q} \mathbf{x}&amp;-&amp; \mathbf{A}^T\mathbf{\Psi}\end{array}\right.\Rightarrow \left[\begin{array}{c}\dot{\mathbf{x}} \\ \dot{\mathbf{\Psi}}\end{array}\right]= \mathbf{H}\left[\begin{array}{c}\mathbf{x} \\ \mathbf{\Psi}\end{array}\right] (4)&#034; title=&#034; \left\{\begin{array}{ccccc}\dot{\mathbf{x}} &amp; = &amp; \mathbf{A}\mathbf{x} &amp;-&amp; \mathbf{B}\mathbf{R}^{-1}\mathbf{B}^T\mathbf{\Psi}\\ \dot{\mathbf{\Psi}} &amp; = &amp; -\mathbf{Q} \mathbf{x}&amp;-&amp; \mathbf{A}^T\mathbf{\Psi}\end{array}\right.\Rightarrow \left[\begin{array}{c}\dot{\mathbf{x}} \\ \dot{\mathbf{\Psi}}\end{array}\right]= \mathbf{H}\left[\begin{array}{c}\mathbf{x} \\ \mathbf{\Psi}\end{array}\right] (4)&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;with&lt;/p&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L232xH51/d54911fffef7f7a388869d0b7f5a0c87-c6832.png?1548148781' style='vertical-align:middle;' width='232' height='51' alt=&#034;\mathbf{H}=\left[\begin{array}{cc} \mathbf{A} &amp; -\mathbf{B}\mathbf{R}^{-1}\mathbf{B}^T\\ -\mathbf{Q} &amp; -\mathbf{A}^T\end{array}\right].&#034; title=&#034;\mathbf{H}=\left[\begin{array}{cc} \mathbf{A} &amp; -\mathbf{B}\mathbf{R}^{-1}\mathbf{B}^T\\ -\mathbf{Q} &amp; -\mathbf{A}^T\end{array}\right].&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L24xH15/275850a434439f4c91561fc949b9b4e0-48eb4.png?1548148781' style='vertical-align:middle;' width='24' height='15' alt=&#034;\mathbf{H}&#034; title=&#034;\mathbf{H}&#034; /&gt; is the &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L64xH14/8e56b180e69f6d6c5ee15f38bf9ad1a1-a0942.png?1548148781' style='vertical-align:middle;' width='64' height='14' alt=&#034;2n\times 2n&#034; title=&#034;2n\times 2n&#034; /&gt; Hamiltonian matrix associated to such a control problem. (4) can be intregrated taken into account boundary conditions on the state-costate augmented vector &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L104xH28/d298f69a8cb4542e64d95a5dd0677a95-c4b7b.png?1548148781' style='vertical-align:middle;' width='104' height='28' alt=&#034;[\mathbf{x}^T~;\mathbf{\Psi}^T]^T&#034; title=&#034;[\mathbf{x}^T~;\mathbf{\Psi}^T]^T&#034; /&gt; :&lt;/p&gt;
&lt;div&gt;&lt;ul&gt;&lt;li&gt;initial conditions on &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L16xH10/70e59a996bd69a0c21878b4093375e92-2692b.png?1548148781' style='vertical-align:middle;' width='16' height='10' alt=&#034;\mathbf{x}&#034; title=&#034;\mathbf{x}&#034; /&gt; : &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L96xH24/6f78fecaeba8b0530f5dfd20f4711b33-bb59c.png?1548148781' style='vertical-align:middle;' width='96' height='24' alt=&#034;\mathbf{x}(0)=\mathbf{x}_0&#034; title=&#034;\mathbf{x}(0)=\mathbf{x}_0&#034; /&gt; (5),&lt;/li&gt;&lt;li&gt;terminal conditions on &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L16xH10/70e59a996bd69a0c21878b4093375e92-2692b.png?1548148781' style='vertical-align:middle;' width='16' height='10' alt=&#034;\mathbf{x}&#034; title=&#034;\mathbf{x}&#034; /&gt; : &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L96xH25/0ffe9304bafc22bca94a2c1e91b66ed0-b1b51.png?1548148781' style='vertical-align:middle;' width='96' height='25' alt=&#034;\mathbf{x}(t_f)=0&#034; title=&#034;\mathbf{x}(t_f)=0&#034; /&gt; (6).&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;
&lt;p&gt;The set of equations (4), (5) and (6) is also called a &lt;b&gt;two point boundary-value problem&lt;/b&gt;.&lt;/p&gt;
&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Integration of the two point boundary-value problem&lt;/b&gt; :&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L500xH63/ab6add51b4ee71f1b4ce03184c8f3589-9c15c.png?1548148781' style='vertical-align:middle;' width='500' height='63' alt=&#034; \left[\begin{array}{c}\mathbf{x}(t_f)=0 \\ \mathbf{\Psi}(t_f)\end{array}\right]=e^{\mathbf{H}t_f}\left[\begin{array}{c}\mathbf{x}(0)=\mathbf{x}_0 \\ \mathbf{\Psi}(0)\end{array}\right]=\left[\begin{array}{cc} e^{\mathbf{H}t_f}_{11} &amp; e^{\mathbf{H}t_f}_{12} \\ e^{\mathbf{H}t_f}_{21} &amp; e^{\mathbf{H}t_f}_{22}\end{array}\right]\left[\begin{array}{c}\mathbf{x}(0)=\mathbf{x}_0 \\ \mathbf{\Psi}(0)\end{array}\right]&#034; title=&#034; \left[\begin{array}{c}\mathbf{x}(t_f)=0 \\ \mathbf{\Psi}(t_f)\end{array}\right]=e^{\mathbf{H}t_f}\left[\begin{array}{c}\mathbf{x}(0)=\mathbf{x}_0 \\ \mathbf{\Psi}(0)\end{array}\right]=\left[\begin{array}{cc} e^{\mathbf{H}t_f}_{11} &amp; e^{\mathbf{H}t_f}_{12} \\ e^{\mathbf{H}t_f}_{21} &amp; e^{\mathbf{H}t_f}_{22}\end{array}\right]\left[\begin{array}{c}\mathbf{x}(0)=\mathbf{x}_0 \\ \mathbf{\Psi}(0)\end{array}\right]&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;where &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L56xH38/bb553117478d79cd49e5fd4f09a7101d-d08a3.png?1548148782' style='vertical-align:middle;' width='56' height='38' alt=&#034;e^{\mathbf{H}t_f}_{ij}&#034; title=&#034;e^{\mathbf{H}t_f}_{ij}&#034; /&gt;, &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L80xH20/0c6aa2a15b006786ec41863b7b262b49-42d79.png?1548148782' style='vertical-align:middle;' width='80' height='20' alt=&#034;i,j=1,2&#034; title=&#034;i,j=1,2&#034; /&gt; are the 4 &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L40xH11/607acaa73c762411b20745149a11e90b-656e2.png?1548148782' style='vertical-align:middle;' width='40' height='11' alt=&#034;n\times n&#034; title=&#034;n\times n&#034; /&gt; submatrices partionning &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L56xH24/ad3e8d6f4a041430ba8ac5e4245fc5e9-6ba99.png?1548148782' style='vertical-align:middle;' width='56' height='24' alt=&#034;e^{\mathbf{H}t_f}&#034; title=&#034;e^{\mathbf{H}t_f}&#034; /&gt; (WARNING !! : &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L136xH38/e0e8531f5c4be84e7c3d077f9de1c785-da16f.png?1548148782' style='vertical-align:middle;' width='136' height='38' alt=&#034;e^{\mathbf{H}t_f}_{ij}\neq e^{\mathbf{H}_{ij}t_f}&#034; title=&#034;e^{\mathbf{H}t_f}_{ij}\neq e^{\mathbf{H}_{ij}t_f}&#034; /&gt;).&lt;/p&gt;
&lt;p&gt;Then one can easily derive the initial value of the costate :&lt;/p&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L376xH44/7df8d4bc285903010c5194133b8d2736-89337.png?1548148782' style='vertical-align:middle;' width='376' height='44' alt=&#034; \mathbf{\Psi}(0)=-\left[e^{\mathbf{H}t_f}_{12}\right]^{-1}\,e^{\mathbf{H}t_f}_{11}\,\mathbf{x}_0=\mathbf{P}(0)\,\mathbf{x}_0.&#034; title=&#034; \mathbf{\Psi}(0)=-\left[e^{\mathbf{H}t_f}_{12}\right]^{-1}\,e^{\mathbf{H}t_f}_{11}\,\mathbf{x}_0=\mathbf{P}(0)\,\mathbf{x}_0.&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;where &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L240xH44/9581661c10376a72288e78f17ec882ba-9aef5.png?1548148782' style='vertical-align:middle;' width='240' height='44' alt=&#034;\mathbf{P}(0)=-\left[e^{\mathbf{H}t_f}_{12}\right]^{-1}\,e^{\mathbf{H}t_f}_{11}&#034; title=&#034;\mathbf{P}(0)=-\left[e^{\mathbf{H}t_f}_{12}\right]^{-1}\,e^{\mathbf{H}t_f}_{11}&#034; /&gt; depends only on the problem data : &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L24xH15/6c6404adc033dfed51422fdaf7fa0494-09ece.png?1548148782' style='vertical-align:middle;' width='24' height='15' alt=&#034;\mathbf{A}&#034; title=&#034;\mathbf{A}&#034; /&gt;, &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L24xH15/5d7c50a502fad9954c9b97f82d800c9f-6fb20.png?1548148782' style='vertical-align:middle;' width='24' height='15' alt=&#034;\mathbf{B}&#034; title=&#034;\mathbf{B}&#034; /&gt;, &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L24xH19/5e1ad0579fc06ddcbda6abaa092b7382-5a0d6.png?1548148781' style='vertical-align:middle;' width='24' height='19' alt=&#034;\mathbf{Q}&#034; title=&#034;\mathbf{Q}&#034; /&gt;, &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L24xH15/e1fd601dbae82a538d518550acb1af19-629ab.png?1548148781' style='vertical-align:middle;' width='24' height='15' alt=&#034;\mathbf{R}&#034; title=&#034;\mathbf{R}&#034; /&gt;, &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L24xH22/9674ab36b62e6b308973ef92c2922b6e-c0434.png?1548148781' style='vertical-align:middle;' width='24' height='22' alt=&#034;t_f&#034; title=&#034;t_f&#034; /&gt; and not on &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L24xH17/5b84e4761a3b62cca1f90dfdfc85c217-cc5c1.png?1548148782' style='vertical-align:middle;' width='24' height='17' alt=&#034;\mathbf{x}_0&#034; title=&#034;\mathbf{x}_0&#034; /&gt;.&lt;/p&gt;
&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Optimal control initial value&lt;/b&gt; : from equation (2) :&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L248xH27/6d3099b8a3d45ebc67cccff2579f322e-3fb51.png?1548148782' style='vertical-align:middle;' width='248' height='27' alt=&#034;\widehat{\mathbf{u}}(0)=-\mathbf{R}^{-1}\mathbf{B}^T\mathbf{P}(0)\,\mathbf{x}_0.&#034; title=&#034;\widehat{\mathbf{u}}(0)=-\mathbf{R}^{-1}\mathbf{B}^T\mathbf{P}(0)\,\mathbf{x}_0.&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Closed-loop optimal control at any time &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L8xH14/e358efa489f58062f10dd7316b65649e-a44e6.png?1548148782' style='vertical-align:middle;' width='8' height='14' alt=&#034;t&#034; title=&#034;t&#034; /&gt;&lt;/b&gt; : at time &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L88xH25/832fcb12ad3451ec8cdb2ec9d55f329f-1b57c.png?1548148782' style='vertical-align:middle;' width='88' height='25' alt=&#034;t\in [0, t_f[&#034; title=&#034;t\in [0, t_f[&#034; /&gt;, assuming that the current state &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L40xH23/97458e6da7324a7163a9e07d53a1bb31-c3fc3.png?1548148782' style='vertical-align:middle;' width='40' height='23' alt=&#034;\mathbf{x}(t)&#034; title=&#034;\mathbf{x}(t)&#034; /&gt; is known (using a measurement system), the objective is still to bring back the final state to &lt;img src='https://pagespro.isae-supaero.fr/local/cache-TeX/cfcd208495d565ef66e7dff9f98764da.png?1548148779' style='max-width: 500px; max-height: 10000px' alt=&#034;0&#034; title=&#034;0&#034; /&gt; (&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L96xH25/0ffe9304bafc22bca94a2c1e91b66ed0-b1b51.png?1548148781' style='vertical-align:middle;' width='96' height='25' alt=&#034;\mathbf{x}(t_f)=0&#034; title=&#034;\mathbf{x}(t_f)=0&#034; /&gt;) but the time horizon is now &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L48xH22/b92dfe4581df0f5fcfa5d62ca137d210-081de.png?1548148782' style='vertical-align:middle;' width='48' height='22' alt=&#034;t_f-t&#034; title=&#034;t_f-t&#034; /&gt;. The calculus of the current optimal control &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L40xH23/dd5863025960cd48543a74b65161e229-58a9e.png?1548148782' style='vertical-align:middle;' width='40' height='23' alt=&#034;\widehat{\mathbf{u}}(t)&#034; title=&#034;\widehat{\mathbf{u}}(t)&#034; /&gt; is the same problem than the previous one, just changing &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L24xH17/5b84e4761a3b62cca1f90dfdfc85c217-cc5c1.png?1548148782' style='vertical-align:middle;' width='24' height='17' alt=&#034;\mathbf{x}_0&#034; title=&#034;\mathbf{x}_0&#034; /&gt; by &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L40xH23/97458e6da7324a7163a9e07d53a1bb31-c3fc3.png?1548148782' style='vertical-align:middle;' width='40' height='23' alt=&#034;\mathbf{x}(t)&#034; title=&#034;\mathbf{x}(t)&#034; /&gt; and &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L24xH22/9674ab36b62e6b308973ef92c2922b6e-c0434.png?1548148781' style='vertical-align:middle;' width='24' height='22' alt=&#034;t_f&#034; title=&#034;t_f&#034; /&gt; by &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L48xH22/b92dfe4581df0f5fcfa5d62ca137d210-081de.png?1548148782' style='vertical-align:middle;' width='48' height='22' alt=&#034;t_f-t&#034; title=&#034;t_f-t&#034; /&gt;. Thus :&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L500xH41/650c65f17d2590dff7618759d2ff17f1-3e724.png?1548148782' style='vertical-align:middle;' width='500' height='41' alt=&#034;\mathbf{\Psi}(t)=\mathbf{P}(t)\,\mathbf{x}(t)\quad \mbox{with~:}\quad\mathbf{P}(t)=-\left[e^{\mathbf{H}(t_f-t)}_{12}\right]^{-1}\,e^{\mathbf{H}(t_f-t)}_{11},&#034; title=&#034;\mathbf{\Psi}(t)=\mathbf{P}(t)\,\mathbf{x}(t)\quad \mbox{with~:}\quad\mathbf{P}(t)=-\left[e^{\mathbf{H}(t_f-t)}_{12}\right]^{-1}\,e^{\mathbf{H}(t_f-t)}_{11},&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L384xH26/544450abc81768429f589c1e2ccc97c4-4cec2.png?1548148782' style='vertical-align:middle;' width='384' height='26' alt=&#034;\widehat{\mathbf{u}}(t)=-\mathbf{R}^{-1}\mathbf{B}^T\mathbf{P}(t)\,\mathbf{x}(t)=-\mathbf{K}(t)\,\mathbf{x}(t).&#034; title=&#034;\widehat{\mathbf{u}}(t)=-\mathbf{R}^{-1}\mathbf{B}^T\mathbf{P}(t)\,\mathbf{x}(t)=-\mathbf{K}(t)\,\mathbf{x}(t).&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;with :&lt;/p&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L192xH26/5f2cc0493cf5f612bbb693471d55887b-4bc38.png?1548148782' style='vertical-align:middle;' width='192' height='26' alt=&#034;\mathbf{K}(t)=\mathbf{R}^{-1}\mathbf{B}^T\mathbf{P}(t)&#034; title=&#034;\mathbf{K}(t)=\mathbf{R}^{-1}\mathbf{B}^T\mathbf{P}(t)&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;the time-varying state feedback to be implemented in closed-loop according to the following Figure :&lt;span class='spip_document_1135 spip_documents spip_documents_center'&gt;
&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L340xH180/stateFdb-4-b82e0.png?1548148782' width='340' height='180' alt=&#034;&#034; /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Remark :&lt;/b&gt; &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L64xH25/0c2a83ae1e16d0ac043d4c082d21c4b0-59e4f.png?1548148782' style='vertical-align:middle;' width='64' height='25' alt=&#034;\mathbf{P}(t_f)&#034; title=&#034;\mathbf{P}(t_f)&#034; /&gt; is not defined since &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L112xH26/a7683061dd987f05c102624c73610046-56a29.png?1548148782' style='vertical-align:middle;' width='112' height='26' alt=&#034;e^{\mathbf{H}0}_{12}=\mathbf{0}_{n\times n}&#034; title=&#034;e^{\mathbf{H}0}_{12}=\mathbf{0}_{n\times n}&#034; /&gt; and is not invertible.&lt;/p&gt;
&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Optimal state trajectories&lt;/b&gt; : The integration of equation (4) between 0 and &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L8xH14/e358efa489f58062f10dd7316b65649e-a44e6.png?1548148782' style='vertical-align:middle;' width='8' height='14' alt=&#034;t&#034; title=&#034;t&#034; /&gt; (&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L104xH25/b0b4c861cfcc53a57f787a1a076acae9-f1ac3.png?1548148782' style='vertical-align:middle;' width='104' height='25' alt=&#034;\forall t \in [0, t_f[&#034; title=&#034;\forall t \in [0, t_f[&#034; /&gt;) leads to (first &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L16xH10/7b8b965ad4bca0e41ab51de7b31363a1-3db39.png?1548148782' style='vertical-align:middle;' width='16' height='10' alt=&#034;n&#034; title=&#034;n&#034; /&gt; row) :&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L500xH36/c9a751a5299dd160a6a999fa334a81be-82a2f.png?1548148782' style='vertical-align:middle;' width='500' height='36' alt=&#034; \mathbf{x}(t)=e^{\mathbf{H}t}_{11}\,\mathbf{x}_0+e^{\mathbf{H}t}_{12}\,\mathbf{\Psi}(0)= \left(e^{\mathbf{H}t}_{11} - e^{\mathbf{H}t}_{12}\left[e^{\mathbf{H}t_f}_{12}\right]^{-1}\,e^{\mathbf{H}t_f}_{11}\right)\,\mathbf{x}_0= \mathbf{\Phi}(t_f,t)\,\mathbf{x}_0.&#034; title=&#034; \mathbf{x}(t)=e^{\mathbf{H}t}_{11}\,\mathbf{x}_0+e^{\mathbf{H}t}_{12}\,\mathbf{\Psi}(0)= \left(e^{\mathbf{H}t}_{11} - e^{\mathbf{H}t}_{12}\left[e^{\mathbf{H}t_f}_{12}\right]^{-1}\,e^{\mathbf{H}t_f}_{11}\right)\,\mathbf{x}_0= \mathbf{\Phi}(t_f,t)\,\mathbf{x}_0.&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;where :&lt;/p&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L344xH44/c15329bf1d96247ba4866bce729f3971-c6f1d.png?1548148782' style='vertical-align:middle;' width='344' height='44' alt=&#034;\mathbf{\Phi}(t_f,t)=e^{\mathbf{H}t}_{11} - e^{\mathbf{H}t}_{12}\left[e^{\mathbf{H}t_f}_{12}\right]^{-1}\,e^{\mathbf{H}t_f}_{11}&#034; title=&#034;\mathbf{\Phi}(t_f,t)=e^{\mathbf{H}t}_{11} - e^{\mathbf{H}t}_{12}\left[e^{\mathbf{H}t_f}_{12}\right]^{-1}\,e^{\mathbf{H}t_f}_{11}&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;is called the transition matrix.&lt;/p&gt;
&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Optimal performance index&lt;/b&gt; :&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;
&lt;p&gt;For any &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L88xH25/832fcb12ad3451ec8cdb2ec9d55f329f-1b57c.png?1548148782' style='vertical-align:middle;' width='88' height='25' alt=&#034;t\in [0, t_f[&#034; title=&#034;t\in [0, t_f[&#034; /&gt; and a current state &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L16xH10/70e59a996bd69a0c21878b4093375e92-2692b.png?1548148781' style='vertical-align:middle;' width='16' height='10' alt=&#034;\mathbf{x}&#034; title=&#034;\mathbf{x}&#034; /&gt; one can define the cost-to-go function (or value-function) &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L64xH23/9ea43e22f19813040437bd0da7600ee9-3278f.png?1548148782' style='vertical-align:middle;' width='64' height='23' alt=&#034;\mathcal{R}(\mathbf{x},t)&#034; title=&#034;\mathcal{R}(\mathbf{x},t)&#034; /&gt; as :&lt;/p&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L320xH80/8c25ea3c0a459fd9ebf60240d81d156a-87f38.png?1548148782' style='vertical-align:middle;' width='320' height='80' alt=&#034;\mathcal{R}(\mathbf{x},t)=\frac{1}{2}\int_t^{t_f} (\mathbf{x}^T\mathbf{Q}\mathbf{x}+ \mathbf{u}^T\mathbf{R}\mathbf{u})d\tau&#034; title=&#034;\mathcal{R}(\mathbf{x},t)=\frac{1}{2}\int_t^{t_f} (\mathbf{x}^T\mathbf{Q}\mathbf{x}+ \mathbf{u}^T\mathbf{R}\mathbf{u})d\tau&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;and the optimal cost-to-go function as :&lt;/p&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L320xH80/0f9313b3909e0b894a95fd19da020f0b-581d8.png?1548148782' style='vertical-align:middle;' width='320' height='80' alt=&#034;\widehat{\mathcal{R}}(\mathbf{x},t)=\frac{1}{2}\int_t^{t_f} (\mathbf{x}^T\mathbf{Q}\mathbf{x}+ \widehat{\mathbf{u}}^T\mathbf{R}\widehat{\mathbf{u}})d\tau&#034; title=&#034;\widehat{\mathcal{R}}(\mathbf{x},t)=\frac{1}{2}\int_t^{t_f} (\mathbf{x}^T\mathbf{Q}\mathbf{x}+ \widehat{\mathbf{u}}^T\mathbf{R}\widehat{\mathbf{u}})d\tau&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L408xH80/b4e02aa432e4d36174c85cde080bc478-ee607.png?1548148782' style='vertical-align:middle;' width='408' height='80' alt=&#034;\widehat{\mathcal{R}}(\mathbf{x},t)=\frac{1}{2}\int_t^{t_f} (\mathbf{x}^T\mathbf{Q}\mathbf{x}+ \mathbf{\Psi}^T\mathbf{B}\mathbf{R}^{-1}\mathbf{B}^T\mathbf{\Psi})d\tau.&#034; title=&#034;\widehat{\mathcal{R}}(\mathbf{x},t)=\frac{1}{2}\int_t^{t_f} (\mathbf{x}^T\mathbf{Q}\mathbf{x}+ \mathbf{\Psi}^T\mathbf{B}\mathbf{R}^{-1}\mathbf{B}^T\mathbf{\Psi})d\tau.&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;From equation (4) : one can derive that :&lt;/p&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L216xH24/728a78d67a57006713fdb3c41ad90f89-7a021.png?1548148782' style='vertical-align:middle;' width='216' height='24' alt=&#034; \mathbf{B}\mathbf{R}^{-1}\mathbf{B}^T\mathbf{\Psi}=\mathbf{A}\mathbf{x}-\dot{\mathbf{x}},&#034; title=&#034; \mathbf{B}\mathbf{R}^{-1}\mathbf{B}^T\mathbf{\Psi}=\mathbf{A}\mathbf{x}-\dot{\mathbf{x}},&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L168xH24/0de6965aba8f31676aec3ee957fe3454-19060.png?1548148782' style='vertical-align:middle;' width='168' height='24' alt=&#034;\mathbf{Q}\mathbf{x}=- \mathbf{A}^T\mathbf{\Psi}-\dot{\mathbf{\Psi}}&#034; title=&#034;\mathbf{Q}\mathbf{x}=- \mathbf{A}^T\mathbf{\Psi}-\dot{\mathbf{\Psi}}&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;Thus (after simplification) :&lt;/p&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L500xH63/9fff4ef8fe9342102ede0e83a602e962-a70ee.png?1548148782' style='vertical-align:middle;' width='500' height='63' alt=&#034;\widehat{\mathcal{R}}(\mathbf{x},t)=\frac{1}{2}\int_t^{t_f} (-\mathbf{x}^T\dot{\mathbf{\Psi}}-\mathbf{\Psi}^T\dot{\mathbf{x}}) d\tau=-\frac{1}{2}\int_t^{t_f}\frac{d\,(\mathbf{x}^T\mathbf{\Psi})}{d\tau}d\tau=0+\frac{1}{2}\mathbf{x}^T(t)\mathbf{\Psi}(t)&#034; title=&#034;\widehat{\mathcal{R}}(\mathbf{x},t)=\frac{1}{2}\int_t^{t_f} (-\mathbf{x}^T\dot{\mathbf{\Psi}}-\mathbf{\Psi}^T\dot{\mathbf{x}}) d\tau=-\frac{1}{2}\int_t^{t_f}\frac{d\,(\mathbf{x}^T\mathbf{\Psi})}{d\tau}d\tau=0+\frac{1}{2}\mathbf{x}^T(t)\mathbf{\Psi}(t)&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;Thus :&lt;/p&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L248xH29/aa8815d7dd573449094d2d992b5efeff-34b7d.png?1548148782' style='vertical-align:middle;' width='248' height='29' alt=&#034;\widehat{\mathcal{R}}(\mathbf{x},t)=\frac{1}{2}\mathbf{x}^T(t)\mathbf{P}(t)\mathbf{x}(t)&#034; title=&#034;\widehat{\mathcal{R}}(\mathbf{x},t)=\frac{1}{2}\mathbf{x}^T(t)\mathbf{P}(t)\mathbf{x}(t)&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;From this last equation, on can find again the definition of the costate &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L24xH15/4648afd405b0961cbb83f81cdc89b7a3-2f1f4.png?1548148782' style='vertical-align:middle;' width='24' height='15' alt=&#034;\mathbf{\Psi}&#034; title=&#034;\mathbf{\Psi}&#034; /&gt; used to solve the Hamilton&#8211;Jacobi&#8211;Bellman equation ; i.e. : the gradient of the optimal cost-to-go function w.r.t. &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L16xH10/70e59a996bd69a0c21878b4093375e92-2692b.png?1548148781' style='vertical-align:middle;' width='16' height='10' alt=&#034;\mathbf{x}&#034; title=&#034;\mathbf{x}&#034; /&gt; :&lt;/p&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L136xH39/24ff6e78d8d41efd1af3e934938d8fe2-ec46f.png?1548148782' style='vertical-align:middle;' width='136' height='39' alt=&#034; \mathbf{\Psi}(t)=\frac{\partial \widehat{\mathcal{R}}(\mathbf{x},t)}{\partial \mathbf{x}}&#034; title=&#034; \mathbf{\Psi}(t)=\frac{\partial \widehat{\mathcal{R}}(\mathbf{x},t)}{\partial \mathbf{x}}&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;The optimal performance index is : &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L264xH30/9de4498ab4ca2bc556b207b6e3990824-4c193.png?1548148782' style='vertical-align:middle;' width='264' height='30' alt=&#034;\widehat{J}=\widehat{\mathcal{R}}(\mathbf{x}_0,0)=\frac{1}{2}\mathbf{x}^T_0\mathbf{P}(0)\mathbf{x}_0&#034; title=&#034;\widehat{J}=\widehat{\mathcal{R}}(\mathbf{x}_0,0)=\frac{1}{2}\mathbf{x}^T_0\mathbf{P}(0)\mathbf{x}_0&#034; /&gt;.&lt;/p&gt;
&lt;h2&gt;Exercises&lt;a name=&#034;3&#034;&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Exo #1 :&lt;/b&gt; show that &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L48xH23/292888dcde90a4a5ad41fefa5ed9b022-cf6db.png?1548148782' style='vertical-align:middle;' width='48' height='23' alt=&#034;\mathbf{P}(t)&#034; title=&#034;\mathbf{P}(t)&#034; /&gt; is the solution of the matrix Riccati differential equation :&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L360xH24/9fe7718f7ba3bd93b0e6132476945a3b-bb0e5.png?1548148782' style='vertical-align:middle;' width='360' height='24' alt=&#034; \dot{\mathbf{P}}=-\mathbf{P}\mathbf{A}-\mathbf{A}^T\mathbf{P}+\mathbf{P}\mathbf{B}\mathbf{R}^{-1}\mathbf{B}^T\mathbf{P}-\mathbf{Q}&#034; title=&#034; \dot{\mathbf{P}}=-\mathbf{P}\mathbf{A}-\mathbf{A}^T\mathbf{P}+\mathbf{P}\mathbf{B}\mathbf{R}^{-1}\mathbf{B}^T\mathbf{P}-\mathbf{Q}&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;p&gt;also written as :&lt;/p&gt;
&lt;p&gt;
&lt;p class=&#034;spip&#034; style=&#034;text-align: center;&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L208xH43/672f4eceaa3da8ab1d1c84e1727f7866-6ccbc.png?1548148782' style='vertical-align:middle;' width='208' height='43' alt=&#034; \dot{\mathbf{P}}=\left[-\mathbf{P}\quad\mathbf{I}_n\right]\mathbf{H}\left[\begin{array}{c}\mathbf{I}_n \\ \mathbf{P} \end{array}\right].&#034; title=&#034; \dot{\mathbf{P}}=\left[-\mathbf{P}\quad\mathbf{I}_n\right]\mathbf{H}\left[\begin{array}{c}\mathbf{I}_n \\ \mathbf{P} \end{array}\right].&#034; /&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;Exo #2 :&lt;/b&gt; considering now that &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L144xH30/77b4d0cf3bddfc54aa0022d97722782f-5fda4.png?1548148782' style='vertical-align:middle;' width='144' height='30' alt=&#034;\mathbf{x}(t_f)=\mathbf{x}_f\neq \mathbf{0}&#034; title=&#034;\mathbf{x}(t_f)=\mathbf{x}_f\neq \mathbf{0}&#034; /&gt;, compute the time-variant state feedback gain &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L48xH23/a3e78e46972452b9f31fa93c805246c6-dff0b.png?1548148782' style='vertical-align:middle;' width='48' height='23' alt=&#034;\mathbf{K}(t)&#034; title=&#034;\mathbf{K}(t)&#034; /&gt; and the time-variant feedforward gain &lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L48xH23/c958555a5a5e836f5976ab5c55c26cb6-b9df7.png?1548148782' style='vertical-align:middle;' width='48' height='23' alt=&#034;\mathbf{H}(t)&#034; title=&#034;\mathbf{H}(t)&#034; /&gt; of the optimal closed-loop control law to be implemented according to the following Figure.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;&lt;span class='spip_document_1136 spip_documents'&gt;
&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L469xH183/stateFdbH-4-c0b59.png?1548148782' width='469' height='183' alt=&#034;&#034; /&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
		
		</content:encoded>


		

	</item>
<item xml:lang="fr">
		<title>Reverse Engineering in Control Design</title>
		<link>https://pagespro.isae-supaero.fr/daniel-alazard/matlab-packages/reverse-engineering-in-control-261.html</link>
		<guid isPermaLink="true">https://pagespro.isae-supaero.fr/daniel-alazard/matlab-packages/reverse-engineering-in-control-261.html</guid>
		<dc:date>2012-08-02T09:08:58Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>ALAZARD Daniel</dc:creator>



		<description>&lt;p&gt;Some tools and demo files in relation with the book : Reverse engineering in control design&lt;/p&gt;

-
&lt;a href="https://pagespro.isae-supaero.fr/daniel-alazard/matlab-packages/" rel="directory"&gt;Matlab packages&lt;/a&gt;


		</description>


 <content:encoded>&lt;div class='rss_texte'&gt;&lt;p&gt;Some tools and demo files in relation with the book : Reverse engineering in control design&lt;/p&gt;
&lt;p&gt;If you publish work that uses this material, please refer to the following book :&lt;/p&gt;
&lt;ul class=&#034;spip&#034;&gt;&lt;li&gt; Daniel Alazard , &lt;br class='autobr' /&gt; &#8220;Reserve Engineering in control design&#8221;. &lt;br class='autobr' /&gt; Wiley, ISTE, 2013.&lt;br class='autobr' /&gt; &lt;a href=&#034;http://www.iste.co.uk/index.php?f=a&amp;ACTION=View&amp;id=556&#034; class='spip_out' rel='external'&gt;http://www.iste.co.uk/index.php?f=a&amp;ACTION=View&amp;id=556&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Download&lt;/strong&gt;&lt;/p&gt;
&lt;ul class=&#034;spip&#034;&gt;&lt;li&gt; Matlab toolbox &lt;strong&gt;bib_obr.zip&lt;/strong&gt; :
&lt;dl class='spip_document_595 spip_documents'&gt;
&lt;dt&gt;&lt;a href='https://pagespro.isae-supaero.fr/IMG/zip/bib_obr-7.zip' title='Zip - 21.7&#160;ko' type=&#034;application/zip&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L52xH52/zip-2e4e6.png?1548148264' width='52' height='52' alt='Zip - 21.7&#160;ko' /&gt;&lt;/a&gt;&lt;/dt&gt;
&lt;/dl&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul class=&#034;spip&#034;&gt;&lt;li&gt; Some basic Matlab tools &lt;strong&gt;bib1.zip&lt;/strong&gt; :
&lt;dl class='spip_document_596 spip_documents'&gt;
&lt;dt&gt;&lt;a href='https://pagespro.isae-supaero.fr/IMG/zip/bib1-8.zip' title='Zip - 17.2&#160;ko' type=&#034;application/zip&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L52xH52/zip-2e4e6.png?1548148264' width='52' height='52' alt='Zip - 17.2&#160;ko' /&gt;&lt;/a&gt;&lt;/dt&gt;
&lt;/dl&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul class=&#034;spip&#034;&gt;&lt;li&gt; Demo files (including toolboxes) &lt;strong&gt;Matlab_files.zip&lt;/strong&gt; :
&lt;dl class='spip_document_597 spip_documents'&gt;
&lt;dt&gt;&lt;a href='https://pagespro.isae-supaero.fr/IMG/zip/Matlab_files-2.zip' title='Zip - 155.9&#160;ko' type=&#034;application/zip&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L52xH52/zip-2e4e6.png?1548148264' width='52' height='52' alt='Zip - 155.9&#160;ko' /&gt;&lt;/a&gt;&lt;/dt&gt;
&lt;/dl&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;
		
		</content:encoded>


		

	</item>
<item xml:lang="fr">
		<title>Materials for JDMACS 2011 - GT MOSAR</title>
		<link>https://pagespro.isae-supaero.fr/daniel-alazard/matlab-packages/materials-for-jdmacs-2011.html</link>
		<guid isPermaLink="true">https://pagespro.isae-supaero.fr/daniel-alazard/matlab-packages/materials-for-jdmacs-2011.html</guid>
		<dc:date>2011-06-01T15:02:28Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>ALAZARD Daniel</dc:creator>



		<description>&lt;p&gt;Course and MATLAB package for Observer-Based Realization of Controllers&lt;/p&gt;

-
&lt;a href="https://pagespro.isae-supaero.fr/daniel-alazard/matlab-packages/" rel="directory"&gt;Matlab packages&lt;/a&gt;


		</description>


 <content:encoded>&lt;div class='rss_texte'&gt;&lt;ul class=&#034;spip&#034;&gt;&lt;li&gt; Slides :
&lt;dl class='spip_document_412 spip_documents'&gt;
&lt;dt&gt;&lt;a href='https://pagespro.isae-supaero.fr/IMG/pdf/slides_JDMACS2011.pdf' title='PDF - 1.6&#160;Mo' type=&#034;application/pdf&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L52xH52/pdf-39070.png?1548148264' width='52' height='52' alt='PDF - 1.6&#160;Mo' /&gt;&lt;/a&gt;&lt;/dt&gt;
&lt;/dl&gt;&lt;/li&gt;&lt;li&gt; Matlab toolbox for Observer-based Realization :
&lt;dl class='spip_document_516 spip_documents'&gt;
&lt;dt&gt;&lt;a href='https://pagespro.isae-supaero.fr/IMG/zip/bib_obr-5.zip' title='Zip - 27.2&#160;ko' type=&#034;application/zip&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L52xH52/zip-2e4e6.png?1548148264' width='52' height='52' alt='Zip - 27.2&#160;ko' /&gt;&lt;/a&gt;&lt;/dt&gt;
&lt;dt class='spip_doc_titre' style='width:120px;'&gt;&lt;strong&gt;bib_obr.zip&lt;/strong&gt;&lt;/dt&gt;
&lt;/dl&gt;&lt;/li&gt;&lt;li&gt; some basic Matlab tools :
&lt;dl class='spip_document_517 spip_documents'&gt;
&lt;dt&gt;&lt;a href='https://pagespro.isae-supaero.fr/IMG/zip/bib1-6.zip' title='Zip - 18.7&#160;ko' type=&#034;application/zip&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L52xH52/zip-2e4e6.png?1548148264' width='52' height='52' alt='Zip - 18.7&#160;ko' /&gt;&lt;/a&gt;&lt;/dt&gt;
&lt;dt class='spip_doc_titre' style='width:120px;'&gt;&lt;strong&gt;bib1.zip&lt;/strong&gt;&lt;/dt&gt;
&lt;/dl&gt;&lt;/li&gt;&lt;li&gt; MATLAB training lab-work :
&lt;dl class='spip_document_413 spip_documents'&gt;
&lt;dt&gt;&lt;a href='https://pagespro.isae-supaero.fr/IMG/pdf/JDMACS_tutorial.pdf' title='PDF - 90.5&#160;ko' type=&#034;application/pdf&#034;&gt;&lt;img src='https://pagespro.isae-supaero.fr/local/cache-vignettes/L52xH52/pdf-39070.png?1548148264' width='52' height='52' alt='PDF - 90.5&#160;ko' /&gt;&lt;/a&gt;&lt;/dt&gt;
&lt;/dl&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;See also : &lt;a href=&#034;http://homepages.laas.fr/peaucell/DPpages/DPteach.html&#034; class='spip_out' rel='external'&gt;Commande Robuste des Syst&#232;mes Lin&#233;aires - Techniques LMI - Bo&#238;te &#224; outil RoMulOC&lt;/a&gt; for the course on Robustness Analysis using LMI and RoMUlOC toolbox.&lt;/p&gt;&lt;/div&gt;
		
		</content:encoded>


		
		<enclosure url="https://pagespro.isae-supaero.fr/IMG/bin/simuMissile_2.bin" length="33074" type="application/octet-stream" />
		
		<enclosure url="https://pagespro.isae-supaero.fr/IMG/zip/bib1-3.zip" length="19111" type="application/zip" />
		
		<enclosure url="https://pagespro.isae-supaero.fr/IMG/zip/bib_obr-2.zip" length="24454" type="application/zip" />
		

	</item>



</channel>



</rss>

