\section{Formulace základní úlohy stochastického řízení}

\subsection{Systém a jeho popis}
Ústředním pojmem v teorii řízení je systém. Systém je část světa, kterou chceme poznat či řídit. Ovlivňování systému, ať už za účelem jeho lepšího poznání, či za účelem řízení, provádíme pomocí vstupů (řídících zásahů). 
Ve většině případů je řešení úlohy stochastického řízení prováděno numericky, je proto účelné pracovat s diskrétním časem.  Budeme-li proto uvažovat diskrétní povahu času, stav systému v časovém okamžiku $t$ podél konečného horizontu délky $N$ popisuje soustava rovnic
\begin{equation}
\label{sys}
x_{t+1}=f_k(x_t,u_t,w_t), \qquad t=0,1,\ldots,N-1,
\end{equation}
kde $x_t$ je stav systému v čase $t$, $u_t$ je řídící zásah v čase $t$ a $w_t$ náhodná veličina reprezentující přítomnost šumu. Zde předpokládáme, že tvar rovnic $f_t$ je nám znám, například z fyzikálního rozboru úlohy, či ze znalosti konstrukce stroje, který popisujeme. Dále předpokládáme, že  stav systému můžeme přímo pozorovat. Případem neúplného pozorování se zabývá následující kapitola. 

\subsection{Ztrátová funkce a optimální řízení}
Cílem je pro zadaný systém \eqref{sys} navrhnout řízení, které bude systém udržovat co nejblíže  požadovaneho stavu. Pro tyto účely máme v úloze řízení k dispozici předepsanou ztrátovou (resp. účelovou) funkci
\begin{equation}
g(x_{1:N},u_{0:N-1}),
\end{equation}
která určuje nakolik jsme vytyčených cílů dosáhli.

Označme $U(x_t)$ neprázdnou množinu přípustných řídících zásahů pro systém nachazející se ve stavu $x_t$. Přípustnou řídící strategií $\pi=\mu_{0:N-1}$ budeme rozumět posloupnost zobrazení
\begin{equation}
\label{con}
\mu_t(x_t)=u_t \, \qquad t=0,1,\ldots,N-1,
\end{equation}
kde $\mu_t(x_t)=u_t  \in U(x_t)$ je přípustný řídící zásah. Neprázdná množina $\Pi$ pak bude značit množinu všech přípustných řídících strategií.

Pro danou řídící strategii označme očekávanou ztrátu jako
\begin{equation}
\label{los}
J_\pi(x_0)=\E_{w_{0:N-1}}\left\{g(x_{1:N},\mu_{0:N-1}(x_{0:N-1}))\right\}.
\end{equation}

Úlohou je potom najít takovou $\pi^*$, pro kterou platí
\begin{equation}
J_{\pi^*}(x_0)=\min_{\pi \in \Pi}J_\pi(x_0).
\end{equation}

Celkově se tedy jedná o optimalizační úlohu nalézt takovou posloupnost funkcí \eqref{con}, která minimalizuje očekávanou ztrátovu \eqref{los} za podmínek \eqref{sys}.

\section{Úloha stochastického řízení s aditivní ztrátou}
Úlohu stochastického řízení tak, jak byla definována v předchozí části, nelze obecně řešit. Je tedy potřeba úlohu nějak blíže specifikovat.
\subsection{Aditivní ztrátová funkce}
Jako vhodné se ukazuje omezit se na nějaký speciální tvar ztrátové funkce \eqref{los}. Budeme proto dále uvažovat tzv. aditivní tvar ztrátové funkce, tedy že existují funkce $g_t$ takové, že můžeme psát
\begin{equation}
\label{adi}
g(x_{1:N},u_{0:N-1})=\sum_{t=1}^{N-1}g_t(x_{t+1},u_t).
\end{equation}

Očekávanou ztrátu \eqref{los} potom můžeme přepsat do tvaru
\begin{equation}
\label{ex}
J_\pi(x_0)=\E_{w_{0:N-1}}\left\{\sum_{t=0}^{N-1}g_t(x_{t+1},\mu_t(x_t))\right\}.
\end{equation}

\subsection{Dynamické programování}
Takto specifikovaná úloha stochastického řízení se dá řešit použitím dynamického programování \cite{bellman1957dynamic}. Dynamické programování je přístup k řešení optimalizačních úloh, na které se můžeme dívat jako na posloupnost rozhodnutí, pro které platí tzv. princip optimality.  Ten říká, že optimální posloupnost rozhodnutí má tu vlastnost, že pro libovolný počáteční stav a rozhudnutí musí být všechna následující rozhodnutí optimální vzhledem k výsledkům rozhodnutí prvního.

Platnost principu optimality pro očekávanou ztrátu tvaru \eqref{ex} je intuitivně snadno pochopitelná. Pokud by totiž nějaký úsek řídící strategie nebyl optimální, pak očekávanou ztrátu snížíme přechodem ke strategii, ve které onu neoptimální část nahradíme optimálním řešením podproblému na daném úseku. Přesný důkaz platnosti principu optimality pro očekávanou ztrátu tvaru \eqref{ex} lze nalézt například v \cite{bertsekas1995dynamic}.

\subsection{Použití dynamického programování při řešení úlohy stochastického řízení s aditivní ztrátou}
Při řešení úlohy stochastického řízení s aditivní ztrátou je možné postupovat, jak je u úloh řešených pomocí dynamického programování zvykem. Ze tímto účelem označme $J_t(x_t)$ minimální hodnotu střední ztráty od okamžiku $t$ do $N$ v závislosti na $x_t$. Dle \eqref{ex} pro ni můžeme psát
\begin{gather}
J_N(x_N)=0\\
J_t(x_t)=\min_{u_t \in U(x_t)}\E_{w_t}\left\{g_k(x_{t+1},u_t)+J_{t+1}(x_{t+1})\right\} \qquad t=0,\ldots,N-1.
\end{gather}

Při konstrukci optimální řídící strategie budeme postupovat od konce řídícího horizontu a postupně hledat $J_t(x_t)$. Pro výpočet $x_{t+1}$ se použije rovnice \eqref{sys}. 
Libovolná řídící strategie $\pi=\{\mu_0,\ldots,\mu_{N-1}\}$, která splňuje systém rovnic
\begin{equation}
\label{impl}
J_t(x_t)=\E_{w_t}\left\{g_k(x_t,\mu_t(x_t),w_t)+J_{t+1}(f_t(x_t,\mu_t(x_t),w_t))\right\} \qquad t=0,\ldots,N-1
\end{equation}
pak bude optimální posloupností rozhodnutí.