\chapter{Popis situace}
\fancyhead[L]{\nouppercase{\rightmark}} 
Aby bylo možné věnovat se simulaci řízení světelné signalizace, je nejprve nutné seznámit se obecně s~fungováním křižovatek, jejich řadičů a~se způsobem, jakým probíhá ovládání signalizačních zařízení. Dále bude představena možnost jak lze na počítači pomocí mikrosimulátoru Aimsun modelovat dopravu ve skutečné oblasti.
\section{Konstrukce a~řízení křižovatky}

Křižovatka řízená světelným signalizačním zařízením se skládá z~několika prvků. Vedle samotných semaforů je v~její blízkosti umístěn řadič světelné signalizace, který se stará o~ovládání signalizačních prvků. K~řadiči pak může být připojeno několik detektorů, poskytujících mu informace o~aktuální dopravní situaci.

Detektory se dělí do tří kategorií podle jejich umístění a~to na detektory výzvové, prodlužovací a~strategické. Výzvové jsou umístěné na stop čáře, prodlužovací v~určité vzdálenosti před ní (v~závislosti na rychlosti vozidel v~daném místě) a~strategické na dalších vhodných místech, například v~případě izolovaných křižovatek běžně alespoň 100 metrů před stop čárou. Ne vždy musí být na všech ramenech křižovatky instalovány všechny typy detektorů.

Technicky je nejčastějším řešením detektoru indukční smyčka umístěná ve vozovce. Detektor pracuje na principu změny induktance cívky, která se zjišťuje měřením změny vlastní frekvence oscilačního obvodu, způsobené přítomností magneticky vodivé látky v~jejím okolí. Především na dálnicích se někdy využívá umístění dvou smyček blízko sebe, díky kterým lze získat i~podrobnější informace jako je rychlost, druh vozidla apod. 

Smyčkové detektory jsou léty ověřeným prostředkem pro měření dopravních veličin. Mezi jejich přednosti ve srovnání s~ostatními technologiemi patří nízká pořizovací cena, jejich neovlivněnost počasím (především odolnost vůči stavům s~nízkou viditelností jako jsou mlha nebo hustý déšť) a~nejlepší přesnost sčítaných dat ze všech běžných používaných technologií \cite{handbookI}. Problémem smyčkových detektorů je náročnost instalace a~údržby, které si vyžadují úpravu vozovky a~proto i~její dočasné vyloučení z~provozu. Kvůli svému umístění detektory trpí mechanickým namáháním, které může způsobit až selhání a~nutnost opravy či výměny. 

Přesnost údajů naměřených smyčkovými detektory je omezena několika faktory. Jedním z~nich je doba odezvy detektoru na příjezd a~odjezd vozidla ze sledovaného prostoru. Pokud se liší, vzniká nepřesnost v~hlášené době obsazenosti. Každý detektor také po odjezdu vozidla potřebuje jistý čas na to, aby se navrátil do klidového stavu a~mohl zaznamenat další vozidlo; pokud se během tohoto času dostane nad indukční smyčku další automobil, nemusí být tento zaznamenán nebo může být považován za součást předcházejícího vozidla. Šum do výsledků může vnášet také interference od nějakého elektronického zařízení. Tyto potíže komplikují mimo jiné modelování délky front na křižovatkách, které bude zmíněno dále. 

Další možností sledování provozu jsou infračervené detektory. Jejich hlavní součástí je kamera, snímající sledovaný prostor v~infračervené oblasti. Ve výsledném obrazu pak poměrně snadno rozezná automobily i~chodce jakožto zdroje tepelného záření.

Existují také video detektory založené na kamerách pracujících v~oblasti viditelného světla (videodetektory), mikrovlnné nebo ultrazvukové detektory; tyto nejsou v~současné době v~simulované oblasti instalovány.

Smyčkové detektory umístěné na Zličíně poskytují dva údaje. Prvním je počet vozidel, které přes detektor během stanovené doby agregace dat (typicky 60, 90 nebo 120 sekund) projely, druhým je čas (udávaný jako počet vzorků s~odstupem desetina sekundy), po který se během periody detekce ve sledované oblasti vyskytovalo nějaké vozidlo.

Řízení křižovatky probíhá pomocí signálních plánů uložených v~řadiči nebo dle pokynů z~ústředny. Signální plány mohou být pevné nebo proměnné. \emph{Signální plán} se skládá z~několika fází, které mají buď pevný sled (mají pevné začátky a~jejich délka je v~každém cyklu stejná), případně se mohou částečně překrývat (v~takovém případě určí přesný okamžik přechodu mezi fázemi řadič podle vyhodnocení údajů z~jednotlivých detektorů). \emph{Fáze} jsou složené ze signálních skupin. \emph{Signální skupina} pak značí skupinu světelných signalizačních zařízení, která rozsvěcuje v~dané fázi zelenou. Signální plány mají pevnou a~jednotnou \emph{délku jednoho cyklu}, kterou označujeme $T_{\mathrm{c}}$. V~předmětné oblasti je to konkrétně 80 sekund. Posledním důležitým pojmem je \emph{offset}. Ten říká o~kolik sekund je posunut začátek jednoho cyklu signálního plánu oproti jistému počátečnímu času $t_\mathrm{0}$. Offset je klíčovým parametrem pro tvorbu tak zvané zelené vlny -- špatnou volbou offsetů signálních plánu u~dvou na sebe navazujících křižovatek můžeme způsobit situaci, kdy vozidla najíždí do následující křižovatky, na níž právě padla červená. 

V~případě pevných signálních plánů se přepínání signalizovaných znaků řídí předem danou tabulkou, která určuje, kdy která signální skupina rozsvěcí zelenou a~jak dlouho má zelená trvat. V~případě proměnných signálních plánů může být pro každou skupinu uložena možnost prodloužit interval zelené v~případě, že údaje z~detektorů oznamují další přijíždějící vozidla v~daném směru. Tabulka pevného signálního plánu je na obrázku \ref{fig:fixed-plan}.

\begin{figure}
	\centering
	\includegraphics[width=\columnwidth]{fixed-plan}
	\caption{Ukázka tabulky pevného signálního plánu. Vlevo jsou jednotlivé signální skupiny, nahoře časová osa, uprostřed jsou pak zeleně označeny intervaly, ve kterých tyto signální skupiny vysílají znak „volno“.}
	\label{fig:fixed-plan}
\end{figure}

\section{Oblast Zličína}
Ověření možnosti decentralizovaného řízení dopravní signalizace je v~této práci provedeno na modelu skutečné oblasti: ulici Řevnické v~Praze~--~Zličíně. V~ulici se nachází pět světelných křižovatek situovaných v~jedné linii. Pro zjednodušení jsou v~této práci simulovány jen dvě severní křižovatky s~číselným označením 5.495 a~5.601. První jmenovaná je trojramenná křižovatka ulic Řevnická a~Na Radosti, druhá je čtyřramenná a~je tvořena napojením autobusového terminálu na jedné straně a~obchodního centra Metropole Zličín na ulici Řevnickou na straně druhé. Celá oblast je na obrázku \ref{fig:zlicin-pohled}, dvě simulované křižovatky potom na obrázku \ref{fig:zlicin-detail}.

\begin{figure}%
	\centering
	\includegraphics[width=\columnwidth]{zlicin-pohled}%
	\caption{Celkový pohled na Řevnickou ulici.}%
	\label{fig:zlicin-pohled}%
\end{figure}

\begin{figure}%
	\centering
	\includegraphics[width=\columnwidth]{zlicin-495-601}%
	\caption{Pohled na dvě simulované křižovatky, vlevo 5.495, vpravo 5.601.}%
	\label{fig:zlicin-detail}%
\end{figure}

Během simulací jsou na obou křižovatkách nastaveny pevné signální plány bez prodlužování fází.

\section{Simulátor Aimsun}
K~simulaci dopravní situace se používá softwarový balík GETRAM/AIMSUN od společnosti TSS (Transport Simulation Systems) ve verzi 4.2.16. Jádrem celého nástroje je program Aimsun, který slouží k~samotné simulaci. 

Aimsun (Advanced Interactive Microscopic Simulator for Urban and Non-Urban Networks, \cite{aimsunman}) je mikrosimulátorem dopravy\footnote{Současná verze Aimsun 6 dovoluje již mikro, meso i~makrosimulaci}, to znamená, že modeluje polohu jednotlivých vozidel diskrétně během celé doby simulace. Každé vozidlo se řídí určitým modelem chování. Lze nastavit různé styly předjíždění, prudkost brzdění a~rozjezdů, ale třeba i~ochotu čekat. Je možné simulovat různé druhy vozidel, od osobních přes nákladní auta až po autobusy a~hromadnou dopravu vůbec. Vedle vozidel Aimsun samozřejmě nabízí simulaci většiny objektů, které se vyskytují v~dopravních sítích: světelných signalizační zařízení, detektorů, atd.

Vstup pro simulátor se skládá ze scénáře a~parametrů simulace. Scénář obsahuje popis dopravní sítě, údaje o~dopravní zátěži, programy řízení dopravy a~plány veřejné dopravy. Popis dopravní sítě představuje geometrickou reprezentaci zkoumané oblasti, tedy rozměry a~tvar jednotlivých silničních pruhů a~křižovatek, umístě\-ní dopravní signalizace, detektorů, zastávek hromadné dopravy a~podobně. Dopravní zátěž může být zadaná dvěma způsoby. Jedna možnost je pomocí intenzity dopravy na vstupech, poměrů odbočení na křižovatkách a~počátečního stavu sítě, druhá pomocí takzvané O-D matice, která zachycuje počet uskutečněných cest mezi dvojicemi vstupních a~výstupních bodů. Programy řízení dopravy zahrnují popisy fází a~jejich trvání pro řízené křižovatky, přednosti v~jízdě pro křižovatky neřízené. Konečně plány veřejné dopravy se skládají z~popisů tras, zastávek a~jízdních řádů linek hromadné dopravy v~simulované oblasti. Parametry simulace pak představují pevná čísla popisující experiment (jako doba simulace) a~proměnné hodnoty určené pro kalibraci modelu.

Výstupem za simulace je spojitá grafická reprezentace zkoumané oblasti, statistická data o~provozu (tok vozidel, počty zastavení, průměrná rychlost, atd.) a~údaje sesbírané z~detektorů. Výsledky mohou být vykresleny do grafů, nebo uloženy v~textové podobě do souborů či do databáze pro další zpracování.

\begin{figure}%
	\centering
	\includegraphics[width=\columnwidth]{aimsun}%
	\caption{Simulovaná oblast nahraná v~Aimsunu}%
	\label{fig:aimsun}%
\end{figure}

\subsection{Getram Extensions}

Aimsun má aplikační rozhraní (API), které umožňuje tvorbu rozšiřujících modulů nazvaných Getram Extensions. Aimsun pomocí tohoto rozhraní poskytuje v~reálném čase data ze simulace a~naopak přijímá data pro její ovlivňování, jak je naznačeno na obrázku \ref{fig:extension}. Rozšíření se vytvářejí buď jako DLL knihovny napsané v~C/C++ nebo ve formě skriptů v~Pythonu.

\begin{figure}%
\centering
\includegraphics[width=8cm]{extension}%
\caption{Aimsun a~externí aplikace.}%
\label{fig:extension}%
\end{figure}

Komunikace mezi rozšířením (Getram Extension) a~simulátorem Aimsun probíhá pomocí šesti funkci:
\begin{enumerate}
	\item \emph{GetExtLoad()} je volána v~okamžiku nahrání rozšíření Aimsunem.
	\item \emph{GetExtInit()} je volána na začátku simulace.
	\item \emph{GetExtManage()} se volá na začátku každého kroku simulace. Slouží k~získání aktuálních údajů z~detektorů, dat o~vozidlech a~dalších údajů. Také umožňuje naopak ovládání aktivních prvků v~simulované oblasti.
	\item \emph{GetExtPostManage()} je funkce podobná předchozí, jen tato je volána na konci simulačního kroku.
	\item \emph{GetExtFinish()} se volá na konci simulace a~v~ní rozšíření dokončuje všechny operace, které si to ještě žádají.
	\item \emph{GetExtUnLoad()} je zavolána v~okamžiku, kdy Aimsun ukončuje komunikaci s~rozšířením.
\end{enumerate}

Průběh komunikace mezi Aimsunem a~rozšířením je znázorněn na obrázku (\ref{fig:extensiondetail}).

\begin{figure}%
\centering
\includegraphics[width=7.5cm]{extensiondetail}%
\caption{Podrobný nákres komunikace mezi Aimsunem a~Getram Extension.}%
\label{fig:extensiondetail}%
\end{figure}

\section{Emulátor řadiče ELS3}
Pro simulace funkcí řadiče křižovatky se používá emulátor ELS3 vyvinutý firmou Eltodo dopravní systémy s.r.o. Ten z~reálného řadiče obsahuje algoritmus řízení. Ovládání HW periferií (modul detektorů, spínačů signálních skupin apod.) jsou nahrazeny výše popsaným simulátorem Aimsun.

V~INI souboru emulátoru řadiče jsou uloženy parametry dopravního řešení použitého v~simulované oblasti. Dopravní řešení je určeno parametry křižovatky (její konstrukce, umístění detektorů, fáze, signální skupiny, \ldots) a~dopravními vztahy mezi těmito parametry (signální plány, dynamické řízení, \ldots). Návrh dopravního řešení je dílem dopravního inženýra a~jeho struktura přesahuje rámec této práce.

%Parametry křižovatky (signální skupiny, fáze, detektory, …) a dopravní vztahy nad těmito parametry (signální plány, dynamické řízení, …) jsou určeny dopravním řešením, které vytvoří dopravní inženýr a jehož struktura přesahuje rámec této práce. Tyto konfigurační parametry dopravního řešení jsou uloženy v INI souboru.

ELS3 má pro komunikaci s~okolím vlastní API. V~každém simulačním kroku přes něj obdrží z~Aimsunu stavy svých detektorů. Od knihovny BDM (která zde nahrazuje modul dopravní ústředny a~o~níž bude řeč později) řadič přijímá data pro ovlivnění řízení. Výstupem řadiče je obraz barevné kombinace signálních skupin. Ten se zasílá do Aimsunu na konci každého simulačního kroku. 

%Vstupní a výstupní data se do řadiče načítají přes komunikační API. Z prostředí AIMSUN řadič obdrží v každém simulačním kroku obraz stavu všech detektorů křižovatky. Z modulu dopravní ústředny (v našem případě je to BDM) řadič přijme po uplynutí řídicí periody data pro uplatnění nového řízení.

%Výstupem z řadiče je obraz barevné kombinace signálních skupin. Obraz se posílá do AIMSUN na konci simulačního kroku. Pro zpětnou vazbu řadiče na ústřednu slouží realizovaný signální plán. Signální plán se odesílá s pevnou periodou, která nemusí být shodná s řídicí periodou připojené dopravní ústředny.
