\section{Použití zpětnovazebného učení} V \cite{3_i_traff_light_c} je popsána simulace používající zpětnovazebné učení na základě modelu popsané v \ref{sec:model_based_learning}. Na rozdíl od ezperimentu popsaného v předchozí kapitole zde autoři zvolili variantu, kde existují 2 druhy agentů: agent-vozidlo a agent-křižovatka. Agent-vozidlo má v každý časový krok následující parametry definující jeho stav, které se ukládají v průběhu celé simulace: \begin{itemize} \item $node$ - dopravní uzel, kde se právě nachází \item $dir$ - směr vůči tomuto uzlu \item $place$ - pozice ve frontě vozidel \item $des$ - místo, kam chce v systému dojet \end{itemize} Algoritmus se snaží minimalizovat celkový čas od vyjetí až po dosažení cíle. Každý agent má ve vyjednávání právo hlasovat o nastavení dopravního uzlu, tedy jestli bude v průjezdném nebo uzavřeném stavu. Pro každý uzel $node$ a směr $dir$ je to tedy akce $g$ - na uzlu $node$, kde se vozidlo nachází ve směru $dir$, svítí červená - uzel je v tomto směru neprůjezdný, a akce $g$ - uzel je v tomto směru průjezdný. Funkce definované v \ref{sec:dynamic_programming} se tedy zapisují ve tvarech $$ Q([node, dir, place, des], a) $$ $$ V([node, dir, place, des]) $$ kde $a \in \{r,g\}$. Optimální akce se v \cite{3_i_traff_light_c} volí podle maxima sumy z $$ Q([node, dir, place, des], r) - Q([node, dir, place, des], g) $$ přes všechny vozidla ovlivněná frontou u daného uzlu. Komunikace je zde tedy omezena pouze na výměnu hodnot $Q$.\\