\chapter{Výsledky simulací}
Ověření chování navrženého řídícího algoritmu bylo provedeno na dvou scénářích. Oba simulují provoz po dobu 24 hodin (od půlnoci do půlnoci), přičemž první scénář představuje konstantní příjezdy na všech ramenech po celý den, druhý zachycuje reálný provoz zaznamenaný detektory dne 12. prosince 2007. V~rámci každého scénáře bylo porovnáno sedm dopravních veličin, získaných nejprve při řízení s~pomocí expertně navržených pevných signálních plánů a~po té při řízení pomocí agentů, kteří nastavují pevným signálním plánům offsety algoritmem navrženým v~kapitole \ref{sec:navrh}. Proces řízení s~pomocí expertně navržených pevných signálních plánů je dále označován jako \emph{reference}, proces řízení pomocí agentů je označován jako \emph{agenti}. Referenční systém používá pevně nastavené offsety: u~křižovatky 5.495 60~s, u~5.601 40~s. 

Simulace byla spuštěna s~konfiguračním souborem \texttt{Zlicingw.cfg} (s~různými scénáři v~parametru \texttt{entrances}), kde lze také nalézt použité hodnoty parametrů jednotlivých agentů. Přístup ke konfiguračnímu souboru popisuje příloha \ref{app:src}.

\section{Konstantní vjezdy}

Při scénáři s~konstantními vjezdy začne již na začátku běhu simulace agenty dohodnutý rozdíl mezi offsety oscilovat mezi hodnotami 30 a~44 sekund. Zde by bylo jistě vhodné použít nějaký druh filtrace vypočítaných hodnot, aby se rozdíl ustálil. Algoritmus dochází k~jinému výsledku než referenční systém, který používá offsety 60 a~40 sekund, tedy jejich rozdíl je 20~s. Graf průběhu změn rozdílu offsetu je na obrázku \ref{fig:coffsets}.

\begin{figure}%
	\centering
	\includegraphics[width=\columnwidth]{c01/offsety}%
	\caption{Rozdíl mezi nastavenými offsetu v~průběhu simulace s~konstantními vjezdy.}%
	\label{fig:coffsets}%
\end{figure}

Takto nastavené offsety nevykazují z~globálního pohledu zlepšení situace v~žádné ze sledovaných veličin, jak je patrné z~tabulky \ref{tab:c01glob} a~to ani v~parametrech, jako je počet zastavení a~průměrná doba zastavení, které by měl algoritmus  optimalizovat nejvíce. VGS API bohužel neposkytuje globální číselné údaje pro jednotlivé křižovatky, je tedy nutné spolehnout se pouze na grafy. Obrázek \ref{fig:cr-numstops} tak ukazuje, že ani na jednotlivých křižovatkách po většinu dne nedochází ke zlepšení.

\begin{table}[p]%
	\centering
	\input{tab/const01-globaltable}
	\caption{Rozdíl v~měřených parametrech v~celé simulované oblasti při konstantních vjezdech.}
	\label{tab:c01glob}
\end{table}

\begin{figure}
  \centering
  \subfloat[5.495]{\label{fig:cr-numstops-495}\includegraphics[width=0.5\columnwidth]{cr-numstops-495}}                
  \subfloat[5.601]{\label{fig:cr-numstops-601}\includegraphics[width=0.5\columnwidth]{cr-numstops-601}}
    \caption{Relativní změny v~počtu zastavení oproti referenčnímu systému při scénáři s~konstantními vjezdy.}
  \label{fig:cr-numstops}
\end{figure}

Ani pohled na podrobné statistiky z~jednotlivých jízdních pruhů nevykazuje významné zlepšení optimalizovaných parametrů. Další grafy porovnávající referenční systém s~distribuovaným řízením se nacházejí v~příloze \ref{app:const01}.

%\begin{table}%
%	\centering
%	\input{tab/const01-sectiontable-06}
%	\caption{Rozdíl v některých parametrech na jižním příjezdu do křižovatky 495, pruh pro odbočení vlevo.}
%	\label{tab:c06sect}
%\end{table}
%
%\begin{table}%
%	\centering
%	\input{tab/const01-sectiontable-05}
%	\caption{Rozdíl v některých parametrech na jižním příjezdu do křižovatky 495, pruh pro odbočení vpravo.}
%	\label{tab:c05sect}
%\end{table}


\section{Reálný provoz}

Během scénáře s~reálnými údaji o~vjezdech vozidel do oblasti agenti během simulace docházejí k~různým hodnotám rozdílu mezi offsety. Tento rozdíl je důsledkem různého provozu během dne, korespondence mezi rozdílem a~hustotou provozu je vidět srovnáním grafů na obrázcích \ref{fig:roffsets} a~\ref{fig:rdensglob}. Naneštěstí i~zde se, stejně jako v~minulém scénáři, objevu oscilace tohoto rozdílu.


\begin{figure}[p]%
	\centering
	\includegraphics[width=\columnwidth]{real/offsety}%
	\caption{Rozdíl mezi nastavenými offsetu v~průběhu simulace s~reálnými vjezdy.}%
	\label{fig:roffsets}%
\end{figure}

\begin{figure}[p]%
	\centering
	\includegraphics[width=\columnwidth]{real-global-density}%
	\caption{Průměrná hustota vozidel během simulovaného dne při reálných vjezdech do oblasti.}%
	\label{fig:rdensglob}%
\end{figure}

Ani při simulaci se skutečnými vjezdy není při pohledu na globální statistiky v~tabulce \ref{tab:rglob} znatelné žádné zlepšení. Při pohledu na jednotlivé křižovatky je ale vidět znatelné snížení počtu zastavení v~křižovatce 495, jak znázorňuje graf na obrázku \ref{fig:rr-numstops-495}. Zlepšení nastává především v~době nižší přepravní poptávky. Na druhé simulované křižovatce je pozorováno spíše mírné zhoršení (obrázek \ref{fig:rr-numstops-601}).
%Nyní neplatí: Především kolem 17. hodiny zde nastává výrazný nárůst délek front, který s sebou nese zvýšení počtu zastavení vozidel. Fronta nejspíše dosahuje takové délky, že ji není možné vyprázdnit během jednoho cyklu a proto algoritmus, který při počítání nastavení offsetů vypočítává hodnocení v závislosti na počtu aut, která projedou po vyprázdnění fronty, není schopen vybrat optimální offset.



\begin{table}%
	\centering
	\input{tab/real-globaltable}
	\caption{Rozdíl v~měřených parametrech v~celé simulované oblasti při reálných vjezdech.}
	\label{tab:rglob}
\end{table}


\begin{figure}[t]
  \centering
  \subfloat[5.495]{\label{fig:rr-numstops-495}\includegraphics[width=0.5\columnwidth]{rrnumstops495}}                
  \subfloat[5.601]{\label{fig:rr-numstops-601}\includegraphics[width=0.5\columnwidth]{rrnumstops601}}
    \caption{Relativní změny v~počtu zastavení oproti referenčnímu systému při scénáři se skutečnými vjezdy.}
  \label{fig:rr-numstops}
\end{figure}

%
%\begin{figure}[t]%
%	\centering
%	\includegraphics[width=\columnwidth]{rrnumstops495}%
%	\caption{Relativní změny počtu zastavení na křižovatce 5.495. Graf zobrazuje relativní velikost rozdílu oproti referenčnímu systému}%
%	\label{fig:rrnumstop495}%
%\end{figure}

Další grafy k~tomuto scénáři jsou k~dispozici v~příloze \ref{app:real}.

\section{Zhodnocení}
Testování prokázalo, že navržení agenti jsou schopní se dopracovat k~nastavení offsetů, které reaguje na dopravní poptávku. Bohužel takto získaný plán řízení se neukázal jako řešení směřující k~lepšímu průjezdu vozidel celou oblastí. Přesto byl, především v~době nižší intenzity provozu, zaznamenám alespoň dílčí úspěch na jedné z~křižovatek, který může naznačovat jistý potenciál této metody řízení provozu. 

Lepších výsledků by mohlo být dosaženo vylepšením hodnotící funkce, která pravděpodobně nepředpovídá průjezdy vozidel dostatečně přesně. Potenciálním zdrojem problémů by mohla být nepřipravenost algoritmu na příliš velkou hustotu provozu, při které se tvoří dlouhé fronty. Dokud je provoz na nízkých hladinách, udržuje se počet zastavení pod nebo na hranici hodnot, které jsou v~referenčním systému. Pokud se intenzita provozu zvýší a~začnou se tvořit dlouhé fronty, systém pravděpodobně není schopen ohodnotit jednotlivá nastavení offsetu (protože nestíhá vyprázdnit fronty), a~proto ani nemůže najít optimální offset. Řešením by mohlo být rozšíření hodnotící funkce tak, aby v~takovém případě docházelo alespoň k~postupnému zkracování fronty, je-li to v~danou chvíli možné.

Další cestou ke zlepšení by mohlo být odstranění některých zjednodušení, která jsou v~současném modelu použita. Jde především o~předpovědi o~hustotách provozu, které jsou nyní založeny jen na počtu vozidel v~jednom (posledním) cyklu a~neobsahují informace o~průběhu hustoty v~čase. Dá se předpokládat, že v~případě existence nějaké fronty pojede po rozsvícení zelené část vozidel v~malých vzájemných rozestupech a~po vyprázdnění fronty pak provoz prořídne. Rovněž bych doporučil zlepšit práci s~údaji z~detektorů, které nejsou nijak filtrovány pro odstranění šumu a~nepřesností.

Směr, kterým by se mohl vývoj ubírat, je také implementování algoritmu pro modelování a~odhadování délek front jen na základě údajů z~detektorů

Otevřenou otázkou prozatím zůstává chování algoritmu při modelování větší oblasti. Především bude nutné prozkoumat vhodné rozdělení agentů na pasivní a~aktivní. Je možné, že pevné dělení na tyto dva typy se ukáže jako naprosto nevhodné, a~že bude nutné tyto role dynamicky přepínat, například dle šachovnicového schématu, nebo postupným šířením aktivních agentů po celé řízené síti. 