- Timestamp:
- 02/03/12 16:57:20 (13 years ago)
- Location:
- applications/doprava/texty/novotny_vyzk_LQ/Implementation
- Files:
-
- 2 modified
Legend:
- Unmodified
- Added
- Removed
-
applications/doprava/texty/novotny_vyzk_LQ/Implementation/Implementation.tex
r1427 r1430 1 1 \def \obr {Implementation/fig/} 2 2 3 \chapter{Implementace} 3 \chapter{Použitá metoda} 4 5 Účelem této práce je decentralizovaně řídit provoz pomocí nastavení optimální délky cyklu 6 za použití multiagentního systému, kde 7 každý agent ovládá signální skupiny jedné křižovatky a jsou mu dostupné příslušné údaje. 8 Jako vhodná metoda bylo zvoleno LQ řízení, které jako stavovou proměnnou 9 bere délku fornty, kterou se snaží minimalizovat pomocí nalezení 10 vhodné hodnoty řídící proměnné, délku cyklu. 4 11 5 12 6 7 % \section{Seznam proměnných} 13 \section{Seznam proměnných} 8 14 % Všechny proměnné jsou zavedeny pro každého agenta reprezentujícího jednu křižovatku zvlášť 9 15 % a jsou označeny indexem $i$ signální skupiny. Tavždy ovládá jeden jízdní pruh. Pokud jsou bez indexu, … … 12 18 \begin{tabular}{ccp{5cm}p{5cm}} 13 19 \textbf{V textu} & \textbf{V programu} & \textbf{Název} & \textbf{Popis} \\ 14 $T \in \mathbb{N}$ & \texttt{T} & Vzorkovací perioda & \\15 $C \in \mathbb{N}$ & \texttt{Tc} & Délka cyklu & \\16 $S = 0,5$ & \texttt{ss} & Saturovaný tok & Maximální počet vozidel, která projedou křižovatkou za sekundu \\20 $T \in \mathbb{N}$ & \texttt{T} & Vzorkovací perioda & Perioda sběru dat a řízení \\ 21 $C \in \mathbb{N}$ & \texttt{Tc} & Délka cyklu & Doba, za kterou se vystřídají fáze signální skupiny, řízená veližina \\ 22 $S$ & \texttt{ss} & Saturovaný tok & Maximální počet vozidel, která projedou křižovatkou za sekundu \\ 17 23 $L \in \mathbb{R}^+$ & \texttt{L} & Ztrátový čas & Čas potřebný k vyklizení křižovatky mezi dvěma fázemi\\ 18 24 $J = \{j_1, ..., j_n\}$ & & Množina signálních skupin & \\ 19 25 $J_A \subset J$ & \texttt{} & Množina signálních skupin agenta $A$ & Skupiny náležící jednomu agentovi \\ 20 26 $I_j \subset J$ & \texttt{} & Množina vstupů signální skupiny & Signální skupiny ostatních agentů ústících do příslušné skupiny $g$ \\ 21 $g_j^N \in <0,1>$ & & Nominální poměr zelené & Defi 27 $g_j^N \in <0,1>$ & & Nominální poměr zelené & Definovaný poměr fází \\ 22 28 $g_j(t) \in <0,1>$ & & Efektivní poměr zelené & Část z délky cyklu, kdy je signální skupina průjezdná \\ 23 29 $i_j(t) \in \mathbb{R}^+$ & \texttt{i\_g} & Hustota vstupů & Počet přijíždějících vozidel do pruhu signální skupiny za jednotku času \\ … … 27 33 \end{tabular} 28 34 29 \section{Použitá metoda}30 Účelem této práce je řídit provoz pomocí nastavení optimální délky cyklu za použití multiagentního systému, kde31 každý agent ovládá signální skupiny jedné křižovatky a jsou mu dostupné příslušné údaje.32 Jako vhodná metoda bylo zvoleno LQ řízení, které se snaží minimalizovat fronty a penalizovat délku cyklu.33 35 34 \subsection{Přechodové vztahy} 36 37 38 \section{Přechodové vztahy} 35 39 Jako údaj popisující stav systému byla zvolena délka fronty $q_j(t)$, což je počet aut v jízdním pruhu jedoucích 36 40 méně než 3,6 km/h. Pro danou frontu v čase $t+1$ platí zřejmě vztah … … 69 73 \end{equation} 70 74 a $I$ je vektor s prvky $I_{0_{j}} = T i_{j,0}(t)$. 75 76 \section{Popis algoritmu} 77 Základ hlavní smyčky programu je postaven 78 na knihovně BDM (Bayesian Decision Making), vyvýjena na 79 ústavu teorie informace a automatizace. 80 Knihovna obsahuje třídu \texttt{Participant}, od 81 které je odvozena základní třída agenta \texttt{BaseTrafficAgent}. 82 Ta má předdefinované metody, které jsou volány v každém cyklu simulace. 83 Jsou to metody \texttt{Adapt}, sloužící k získání dat, \texttt{Broadcast}, ve které 84 se posílají data sousedním agentům, \texttt{Receive}, kde se zprávy příjímají a zpracovávají 85 a \texttt{Act}, metoda určená pro nastavení řídících parametrů, v našem případě délky cyklu.\\ 86 87 Finální agent určený pro LQ řízení je odvozen od této ťrídy. V každém cyklu 88 posílá ůdaje o délce front, zatížení detektorů a odbočovacích poměrec. 89 Z těchto dat si poté podle rovnic \ref{eq:my_trans_02} a \ref{eq:my_trans_mat} sestaví 90 matici $B$. Matice $A$ je jednotková a penalizační matice kvadratického kritéria $Q$ a $R$ jsou konstantně 91 nastaveny podle významnosti dopravních pruhů. Tím jsou sestaveny vstupní parametry pro minimalizátor, 92 který vypočte řídící matici $L$ potřebnou k získání optimální hodnoty délky cyklu. 71 93 72 94 … … 152 174 153 175 154 \section{Popis algoritmu}155 Základ hlavní smyčky programu je postaven156 na knihovně BDM (Bayesian Decision Making), vyvýjena na157 ústavu teorie informace a automatizace.158 Knihovna obsahuje třídu \texttt{Participant}, od159 které je odvozena základní třída agenta \texttt{BaseTrafficAgent}.160 Ta má předdefinované metody, které jsou volány v každém cyklu simulace.161 Jsou to metody \texttt{Adapt}, sloužící k získání dat, \texttt{Broadcast}, ve které162 se posílají data sousedním agentům, \texttt{Receive}, kde se zprávy příjímají a zpracovávají163 a \texttt{Act}, metoda určená pro nastavení řídících parametrů, v našem případě délky cyklu.164 \\165 \\166 Finální agent určený pro LQ řízení je odvozen od této ťrídy. V každém cyklu167 posílá ůdaje o délce front, zatížení detektorů a odbočovacích poměrec.168 Z těchto dat si poté podle rovnic \ref{eq:my_trans_02} a \ref{eq:my_trans_mat} sestaví169 matici $B$. Matice $A$ je jednotková a penalizační matice kvadratického kritéria $Q$ a $R$ jsou konstantně170 nastaveny podle významnosti dopravních pruhů. Tím jsou sestaveny vstupní parametry pro minimalizátor,171 který vypočte řídící matici $L$ potřebnou k získání optimální hodnoty délky cyklu.172 176 173 177 \section{Možné vylepšení do budoucna} -
applications/doprava/texty/novotny_vyzk_LQ/Implementation/Minimalization.tex
r1429 r1430 28 28 x(t+1) = Ax(t) + Bu(t) \;, 29 29 \end{equation} 30 kde chybí konstantní člen. Poté již můžeme použít metodu popsanou v kapitole \ref{sec:minim} 30 kde chybí konstantní člen. Poté již můžeme použít metodu popsanou v kapitole \ref{sec:minim}. 31 31 32 32 % Kvadratické kritérium ve tvaru