V technické praxi, stejně jako běžném životě, jsme nuceni dělat rozhodnutí. Ať už se jedná o řízení výrobní linky či hledání optimálního spojení mezi dvěma místy, naše rozhodnutí vycházejí ze znalostí, které o světě máme. Chceme-li činit úspěšná rozhodnutí, je třeba vyřešit dvě úlohy: 1) řízený objekt co nejlépe poznat a 2) dosáhnout cíle, který jsme si vytyčili. Tyto dva úkoly jsou však většinou v rozporu: systém se nejlépe pozná, když se nechová podle našich požadavků. V reálném světě navíc existují náhodné jevy, poruchy a nepředvídané situace, které jednotně nazýváme neurčitostí. Tato skutečnost způsobuje, že naše znalost systému není nikdy dokonalá.

Za účelem řízení systémů, které jsou buď natolik složité, že jejich deterministický popis je nemožný, nebo obsahují náhodné prvky již ze své podstaty, vzniklo stochastické řízení, neboli optimální řízení za neurčitosti. Cílem stochastického řízení je minimalizovat velikost  odchylek systému od požadovaného stavu optimalizací řídících zásahů.

Jeden z přístupů k řešení tohoto problému, který navrhl americký matematik Richard Bellman \cite{bellman1957dynamic}, je použití dynamického programování. Jedná se o metodu, která s využitím zpětného chodu minimalizuje hodnotu očekávané ztrátové funkce. 

Přímá aplikace tohoto postupu je však bohužel i u poměrně jednoduchých značně komplikována složitostí výpočtu.  K řešení úlohy je proto vhodné požít aproximačních metod.

V šedesátých letech 20. století navrhl Alexander Aronovich Feldbaum řešení použitím takzvaného duálního řízení \cite{feldbaum1965optimal}. Hlavní myšlenkou tohoto přístupu bylo, že řízení musí nejen minimalizovat aktuální ztrátu, ale rovněž musí získat o systému co nejvíce informací pro minimalizaci budoucích ztrát. Nicméně duální řízení je pouze obecný přístup k návrhu řízení. Konkrétní  návrh je obvykle dílem další aproximace. 

Jednou z možných aproximačních metod k návrhu duálního řízení je použití stochastické iterativní aproximace řešení úlohy dynamického programování. To spočívá v použití iterativního dynamického programování (IDP, \cite{luus2000iterative}) a simulační metody Monte Carlo, například \cite{hammersley1964monte}. Tento přístup byl popsán v článku \cite{thompson2005stochastic}. Podstatou algoritmu je hledání řešení úlohy dynamického programování iterativně, za použití metody Monte Carlo pro simulaci neurčitosti v systému.

Tato  bakalářská práce si klade následující cíle
\begin{itemize}
\item formulovat úlohu stochastického řízení,
\item řešit úlohu stochastického řízení s aditivní ztrátou pomocí dynamického programování,
\item formulovat úlohu stochastického řízení s neúplným pozorováním a její převedení na úlohu s úplnými znalostmi systému,
\item představit některé suboptimální přístupy k úloze stochastického řízení, zejména pak algoritmus stochastického iterativního dynamického programování (SIDP),
\item porovnat uvedené řídící algoritmy na jednoduchém systému,
\item na základě získaných výsledků diskutovat výhody a nevýhody algoritmu SIDP a jeho použitelnost při aplikaci na složitější úlohy.
%\item navrhnout jednoduchou metodu kombinující duální (SIDP) a neduální metodu a získat tak algoritmus, který bude dostatečně robustní a výpočetně efektivní.
\end{itemize}