thesis
This commit is contained in:
parent
8c1aed22ff
commit
4c5f8fcc86
@ -180,3 +180,10 @@ url = {http://de.statista.com/statistik/daten/studie/180759/umfrage/laermbelaest
|
||||
title = "Verkehrsadatipve Steuerung von Lichtsignalanlagen",
|
||||
publisher = "Institut für Verkehrswirtschaft, Straßenwesen und Städetbau, Universität Hannover"
|
||||
}
|
||||
|
||||
@paper{script:m3,
|
||||
author = "{Stefan Ulbrich}",
|
||||
title = "Mathematik III für Informatik",
|
||||
publisher = "Techniche Universität Darmstadt, Fachbereich Mathematik",
|
||||
year = 2011
|
||||
}
|
||||
@ -11,12 +11,12 @@ Es galt folgende Werte zu berechnen und Fragen zu l"osen:
|
||||
\item{Verkehrswerte f"ur einen Zeitpunkt in der Zukunft berechnen.}\label{problem:7}
|
||||
\end{enumerate}
|
||||
Es wurden im Rahmen dieser Arbeit mehrere Berechnungsans"atze daraufhin "uberpr"uft, ob sie eines der gegebenen Herausforderungen l"osen kann. Die beschriebenen Ans"atze sind \textit{Hidden Markov Modell}, \textit{Wegfindungsalorithmen} wie der \textit{A*-Algorithmus} und \textit{lineares Gleichungssystem} und werden jeweils in einem eigenen Unterkapitel diskutiert.\\ \\
|
||||
Das Ziel \ref{problem:1}, f"ur virtuelle Sensoren Werte zu berechnen war das erste Ziel, dass es zu erreichen galt. Da virtuelle Sensoren in dem entwickelten Verkehrsmodell ausschlie"slich Aus- und Eing"ange modellieren, da alle modellierten Kreuzungen auf den Einfahrtsspuren mit Sensoren best"uckt sind, kann die Herausforderung, Werte f"ur virtuelle Sensoren zu berechnen, gel"ost werden. So w"urde damit ebenfalls die Herausforderung einen Verkehrswert f"ur den jeweiligen Kreuzungsausgang zu berechnen gel"ost \ref{problem:2}.\\ \\
|
||||
Zun"achst wird das Aufbereiten der Abbiegewahrscheinlichkeiten beschrieben, um diese den einzelnen Verbindungen von Sensor zu Kreuzungsausgang zuzordnen. Danach werden die Berechnungsans"atze diskutiert, die die berechneten Abbiegewahrscheinlichkeiten ben"otigen.
|
||||
Die Herausforderung \ref{problem:1}, f"ur virtuelle Sensoren Werte zu berechnen war das erste Ziel, dass es zu erreichen galt. Da virtuelle Sensoren in dem entwickelten Verkehrsmodell ausschlie"slich Aus- und Eing"ange modellieren, da in der Stadt Darmsadt alle modellierten Kreuzungen auf den Einfahrtsspuren mit Sensoren best"uckt sind, kann die Herausforderung, Werte f"ur virtuelle Sensoren zu berechnen, gel"ost werden. So w"urde damit ebenfalls die Herausforderung einen Verkehrswert f"ur den jeweiligen Kreuzungsausgang bzw. Eingang zu berechnen gel"ost (Herausforderung \ref{problem:2} und \ref{problem:3}).\\ \\
|
||||
Zun"achst wird das Aufbereiten der Abbiegewahrscheinlichkeiten beschrieben, um diese den einzelnen Verbindungen von Sensor zu Kreuzungsausgang zuzuordnen. Danach werden die Berechnungsans"atze diskutiert, die die berechneten Abbiegewahrscheinlichkeiten ben"otigen. Schlussendlich wird beschrieben wie die entwickelte Berechnung, auf Basis von linearen Gleichungssystem, direkt an dem Graphen vollzogen werden kann.
|
||||
\subsection{Aufbereiten der Abbiegewahrscheinlichkeiten}
|
||||
Die Abbiegewahrscheinlichkeiten liegen mit einer sensorspezifischen Richtungsangabe vor. Diese richtet sich nach der Flie"srichtung des Verkehrs, welcher "uber den Sensor flie"st und bezeichnet die drei Richtungen Geradeaus, Links und Rechts. Mehr Informationen zu dem Format der Abbiegewahrscheinlichkeiten sind im Kapitel \ref{sec:modell} beschrieben.\\ \\
|
||||
Ermittelt man die Kreuzung, von welcher der Verkehrsteilnehmer, welcher den Sensor passiert hat, kommt, sowie die nachfolgenden Kreuzungen, welche "uber den Sensor erreichbar sind, so kann mithilfe der Positionen der vorhergehenden, der aktuellen und der nachfolgenden Kreuzung die Richtung der gew"ahlten ausgehenden Verbindung des Sensorknotens bestimmt werden.\\ \\
|
||||
Hierf"ur werden die Positionen, angegeben in Latitude und Longitude, von vorgehender und aktueller, sowie aktueller und nachfolgender Kreuzungen, voneinander subtrahiert. Durch Untersuchung der Differenz kann bestimmt werden, ob vorhergehende bzw. nachfolgende Kreuzung, s"udlich, n"ordlich, westlich oder "ostlich der Kreuzung des zu untersuchenden Sensors liegt. Wird dies f"ur beide vor und nachfolgende Kreuzungen durchgef"uhrt kann die Richtung des Verkehrsflusses bestimmt werden. Ein Beispiel w"are ein Fluss "uber Sensor x von Norden nach S"uden. Mithilfe einer Zuordnungstabelle kann die Richtung den Werten Geradeaus, Rechts und Links des Sensors zugeordnet werden und die entsprechende Abbiegewahrscheinlichkeit an der ausgehenden Kante des Sensor vermerkt werden. Die Zuordnungstabelle ist in \autoref{tbl:zuordnungstabell} zu finden. F"ur das Beispiel \textit{Norden nach S"uden} w"are die Richtung des Verkehrsflusses geradeaus.
|
||||
Hierf"ur werden die Positionen, angegeben in Latitude und Longitude, von vorgehender und aktueller, sowie aktueller und nachfolgender Kreuzungen, voneinander subtrahiert. Durch Untersuchung der Differenz kann bestimmt werden, ob vorhergehende bzw. nachfolgende Kreuzung, s"udlich, n"ordlich, westlich oder "ostlich der Kreuzung des zu untersuchenden Sensors liegt. Wird dies f"ur beide, vor- und nachfolgende Kreuzungen, durchgef"uhrt kann die Richtung des Verkehrsflusses bestimmt werden. Ein Beispiel w"are ein Fluss "uber Sensor x von Norden nach S"uden. Mithilfe einer Zuordnungstabelle kann die Richtung den Werten Geradeaus, Rechts und Links des Sensors zugeordnet werden und die entsprechende Abbiegewahrscheinlichkeit an der ausgehenden Kante des Sensor vermerkt werden. Die Zuordnungstabelle ist in \autoref{tbl:zuordnungstabell} zu finden. F"ur das Beispiel \textit{Norden nach S"uden} w"are die Richtung des Verkehrsflusses geradeaus.
|
||||
\begin{figure}
|
||||
\begin{tabular}{|l|l|l|l|}
|
||||
\hline
|
||||
@ -38,9 +38,10 @@ Zun"achst wird das Aufbereiten der Abbiegewahrscheinlichkeiten beschrieben, um d
|
||||
\end{tabular}
|
||||
\caption{Zuordnungstabelle der sensorspezifischen Richtungsangaben auf Himmelsrichtungen.}
|
||||
\label{tbl:zuordnungstabell}
|
||||
\end{figure}
|
||||
\end{figure}
|
||||
Die Berechnung der absoluten Fließrichtungsangaben erfolgt mithilfe des Algorithmus \textit{AlgoFindSensorOutputDirection}. Die Berechnung wird direkt am Graphen vollzogen - vom betrachteten Sensor ausgehend, wird der Kreuzungseingang, entgegen der Flussrichtung gesucht. Ist dieser gefunden kann bereits die Richtung, aus der der Verkehr, der über den Sensor fließt, kommt, bestimmt werden. Durch verfolgen aller Ausgehender Kanten des Knotens können nun bis zu drei darauffolgende Kreuzungen gefunden werden, die es ermöglichen durch oben beschrieben Berechnung und Zuordnung (siehe \autoref{tbl:zuordnungstabell}) die drei Abbiegewahrscheinlichkeiten genau einer Kante zuzuordnen.
|
||||
\subsection{L"osungsansatz: Hidden Markow Modell}\label{sec:berechnung:hmm}
|
||||
Das Hidden Markow Modell(gls:HMM) ist ein Modell zur Beschreibung von Systemen mit versteckten Zust"anden. Es beschreibt eine Kette von zeitdiskreten Zust"anden, die jeweils nur von dem vorhergehenden Zustand abh"angen. Diese Zust"ande k"onnen jedoch nicht beobachtet werden, sie sind versteckt (hidden). Stattdessen werden sog. Emissionen beobachtet, die je nach betrachtetem Zustand zu einer gewissen Wahrscheinlichkeit auftreten. Das Modell ist nach dem russischen Mathematiker \textit{Andrei Andrejewitsch Markow} benannt. Es schien ein geignetes Modell zu sein, da es vermag sowohl bekannte als auch unbekannte Einheiten zu modellieren, in Verbindung einer "Ubergangswahrscheinlichkeit. Dies schien passend, da sowohl die bekannten Sensoren, als auch die unbekannten \textit{virtuellen Sensoren} zu modellieren sind. Desweiteren wurde es in Form eines gekoppelten HMMs (CHMM) erfolgreich f"ur die Geschwindigkeitsabsch"atzung von Fahrzeugen in der Arbeit von \cite{paper:kwonmurphy} eingesetzt. Da diese Arbeit ebenfalls Induktionsschleifen als Grundlage verwendet, erschien dieser Ansatz sehr vielversprechend.\\ \\
|
||||
Das Hidden Markow Modell(gls:HMM) ist ein Modell zur Beschreibung von Systemen mit versteckten Zust"anden. Es beschreibt eine Kette von zeitdiskreten Zust"anden, die jeweils nur von dem vorhergehenden Zustand abh"angen. Diese Zust"ande k"onnen jedoch nicht beobachtet werden, sie sind versteckt (hidden). Stattdessen werden sog. Emissionen beobachtet, die je nach betrachtetem Zustand zu einer gewissen Wahrscheinlichkeit auftreten. Das Modell ist nach dem russischen Mathematiker \textit{Andrei Andrejewitsch Markow} benannt. Es schien ein geeignetes Modell zu sein, da es vermag sowohl bekannte als auch unbekannte Einheiten zu modellieren, in Verbindung einer "Ubergangswahrscheinlichkeit. Dies schien passend, da sowohl die bekannten Sensoren, als auch die unbekannten \textit{virtuellen Sensoren} zu modellieren sind. Desweiteren wurde es in Form eines gekoppelten HMMs (CHMM) erfolgreich f"ur die Geschwindigkeitsabsch"atzung von Fahrzeugen in der Arbeit von \cite{paper:kwonmurphy} eingesetzt. Da diese Arbeit ebenfalls Induktionsschleifen als Grundlage verwendet, erschien dieser Ansatz sehr vielversprechend.\\ \\
|
||||
Im Folgendem werden die Grundlagen des Hidden Marokw Modellen umrissen.
|
||||
\subsubsection{Grundlagen}
|
||||
Ein HMM beschreibt zwei zeitdiskrete Zufallsprozesse $X_t$ und $Y_t$ mit $t€N$. Allerdings sei nur der $Y_t$ Prozess beobachtbar. Er soll R"uckschluss auf den $X_t$ Prozess erm"oglichen. Dabei darf der Wert des jeweiligen Prozesses nur von dem vorhergehenden Zustand abh"angig sein. Es m"ussen folglich die beiden Bedingungen gelten:
|
||||
@ -71,13 +72,13 @@ Zun"achst wird das Aufbereiten der Abbiegewahrscheinlichkeiten beschrieben, um d
|
||||
\end{enumerate}
|
||||
F"ur beide Modellierungen fehlen allerdings die "Ubergangswahrscheinlichkeiten zwischen den Versteckten Zust"anden. Au"serdem kann nicht bestimmt werden, mit welcher Wahrscheinlichkeit eine Emission, f"ur welchen Zustand, auftritt und es sind f"ur alle Ausgangssensoren keine Emissionen vorhanden, da der Verkehr dort nicht gemessen wird. Eine Verbindung der Sensorwerte zwischen Kreuzungsausgang und den Sensorwerten der darauffolgenden Kreuzung kann nicht hergestellt werden (siehe \autoref{sec:modell:limits}).\\ \\
|
||||
Aus diesem Grund wurden HMMs als L"osungsansatz verworfen.
|
||||
Die Arbeit \cite{paper:kwonmurphy} kann ein gekoppeltes HMM erfolgreich f"ur die Modellierung von Freeway-Traffic nutzen und die Geschwindigkeit von Fahrzeugen einsch"atzen. Sie machen sich dabei insbesondere zunutze, dass alle Sensoren auf einer gerade Strecke verbaut sind und aus diesem Grund in direkter Beziehung stehen. Dies ist allerdings f"ur die vorliegenden Daten nicht m"oglich. Des weiteren besteht in einem Stra"sennetz einer Stadt st"andig die M"oglichkeit, dass ein Fahrzeug die Fahrbahn verl"asst, um z.B. zu parken. Auf einem Freeway entfallen diese M"oglichkeiten allerdings.
|
||||
Die Arbeit \cite{paper:kwonmurphy} kann ein gekoppeltes HMM erfolgreich f"ur die Modellierung von Freeway-Traffic nutzen und die Geschwindigkeit von Fahrzeugen einsch"atzen. Sie machen sich dabei insbesondere zunutze, dass alle Sensoren auf einer gerade Strecke verbaut sind und aus diesem Grund in direkter Beziehung stehen. Dies ist allerdings f"ur die vorliegenden Daten nicht m"oglich; Sensoren sind nur an den Eingängen zu finden und lassen sich nicht miteinander validieren. Des weiteren besteht in einem Stra"sennetz einer Stadt st"andig die M"oglichkeit, dass ein Fahrzeug die Fahrbahn verl"asst, um z.B. zu parken. Auf einer \textit{Schnellstra"se} entfallen diese M"oglichkeiten allerdings.
|
||||
\subsection{L"osungsansatz: Wegfindungsalgorithmen}\label{sec:berechnung:astar}
|
||||
Um den Weg eines Fahrzeugs oder einer Fahrzeugkolonne zu simulieren, bieten sich Wegfindungsalgorithmen an. Sie finden den k"urzesten Weg zum Ziel und das "ahnelt dem Verhalten der Menschen, einen Ort anzufahren. Die Idee die Anzahl der Autos anhand der Sensorwerte zu bestimmen und diese durch das Stra"sennetz zu ihrem Ziel fahren zu lassen erschien als eine gute L"osung. Bekannte Algorithmen, wie der \textit{A*} k"onnen ein solches Wegfindungsproblem l"osen. Insbesondere die M"oglichkeit einen Graphen direkt zur Berechnung zu verwenden, lie"sen diesen Ansatz erfolgversprechend erscheinen. Die ben"otigte Absch"atzung der Distanz zwischen Start- und Zielknoten w"are dabei die Luftlinie zwischen den beiden Punkten. Da keine Werte "uber einzelne Autos, sondern nur Messwerte "uber eine Minute zur Verf"ugung standen, musste nicht nur ein einzelnes Auto, sondern eine Autokolonne simuliert werden.\\ \\
|
||||
Es sind keinerlei Daten "uber das Ziel der Autofahrer in der Stadt Darmstadt bekannt oder gemessen worden, die f"ur diese Arbeit verwendet werden konnten. Eine Erhebung war ebenfalls nicht m"oglich, da eine Vielzahl von Ausg"angen aus der 'Ministadt' untersucht werden m"ussten. Da kein Wegfindungsalgorithmus ohne Ziel funktionieren kann, wurden Wegfindungsalgorithmen als L"osungsansatz verworfen.
|
||||
Um den Weg eines Fahrzeugs oder einer Fahrzeugkolonne zu simulieren, bieten sich Wegfindungsalgorithmen an. Sie finden den k"urzesten Weg zum Ziel und das "ahnelt dem Verhalten der Menschen, einen Ort anzufahren. Die Idee die Anzahl der Autos anhand der Sensorwerte zu bestimmen und diese durch das Stra"sennetz zu ihrem Ziel fahren zu lassen erschien als eine gute L"osung. Bekannte Algorithmen, wie der \textit{A*} k"onnen ein solches Wegfindungsproblem l"osen. Insbesondere die M"oglichkeit einen Graphen direkt zur Berechnung zu verwenden, lie"sen diesen Ansatz erfolgversprechend erscheinen. Die ben"otigte Absch"atzung der Distanz zwischen Start- und Zielknoten w"are dabei die Luftlinie zwischen den beiden Punkten. Da keine Werte "uber einzelne Autos, sondern nur Messwerte "uber eine Minute zur Verf"ugung standen, musste nicht nur ein einzelnes Fahrzeug, sondern eine Fahrzeugkolonne simuliert werden.\\ \\
|
||||
Es sind keinerlei Daten "uber das Ziel der Autofahrer in der Stadt Darmstadt bekannt oder gemessen worden, die f"ur diese Arbeit verwendet werden konnten. Eine Erhebung war ebenfalls nicht m"oglich, da eine Vielzahl von Ausg"angen aus der \textit{Ministadt} untersucht werden m"ussten. Da kein Wegfindungsalgorithmus ohne Ziel funktionieren kann, wurden Wegfindungsalgorithmen als L"osungsansatz verworfen.
|
||||
\subsection{L"osungsansatz: Lineares Gleichungssystem}\label{sec:berechnung:lgs}
|
||||
Das in Kapitel \ref{sec:modell} beschriebene Modell erlaubt es mit Hilfe von linearen Gleichungssystemen einen Wert f"ur jeden Kreuzungsein- und Ausgang zu berechnen. Voraussetzung daf"ur ist, dass alle Kreuzungseing"ange auf jeder Spur mit Sensoren best"uckt sind, sowie, dass alle Verkehrsteilnehmer sich an die Stra"senverkehrsordnung halten. Insbesodere das Einhalten der Spurrichtung ist Voraussetzung f"ur eine korrekte Berechnung. In Kapitel \autoref{sec:modell} werden die Einschr"ankungen des Modells n"aher erl"autert.\\ \\
|
||||
Durch Addition derjenigen Sensorwerte, die auf den jeweiligen Ausgang zeigen, kann ein Wert f"ur diesen ausgerechnet werden. F"ur Mischspursensoren werden daf"ur Abbiegewahrscheinlichkeiten ben"otigt, um den Sensorwert entsprechend dem Abbiegeverhalten der Verkehrsteilnehmer auf die Ausg"ange zu verteilen. Die Abbiegewahrscheinlichkeit gibt dabei an, wieviel Prozent des Verkehrs, welcher "uber den Sensor flie"st, dem jeweiligen Ausgangsknoten zugeordnet werden kann. Der Sensorwert wird entsprechend mit der jeweiligen Abbiegewahrscheinlichkeit multipliziert und auf den Ausgang addiert. Einspursensoren k"onnen dagegen direkt auf den Ausgang addiert werden auf den sie zeigen, ohne dass Abbiegewahrscheinlichkeiten von N"oten sind. Um das Berechnungsmodell einheitlich zu halten wurde bei der Matrizenrechnung eine Abbiegewahrscheinlichkeit von 1.0 f"ur Einspursensoren angegeben, da 100\% des Verkehrs, welcher "uber den Einspursensor flie"st, an dem entsprechenden Ausgang ankommen muss.\\ \\
|
||||
Das in Kapitel \ref{sec:modell} beschriebene Modell erlaubt es mit Hilfe von linearen Gleichungssystemen einen Wert f"ur jeden Kreuzungsein- und Ausgang zu berechnen. Voraussetzung daf"ur ist, dass alle Kreuzungseing"ange auf jeder Spur mit Sensoren best"uckt sind, sowie, dass alle Verkehrsteilnehmer sich an die Stra"senverkehrsordnung halten. Insbesondere das Einhalten der Spurrichtung ist Voraussetzung f"ur eine korrekte Berechnung. In Kapitel \ref{sec:modell:limits} werden die Einschr"ankungen des Modells n"aher erl"autert.\\ \\
|
||||
Durch Addition derjenigen Sensorwerte, die auf den jeweiligen Ausgang zeigen, kann ein Wert f"ur diesen ausgerechnet werden. F"ur Mischspursensoren werden daf"ur Abbiegewahrscheinlichkeiten ben"otigt, um den Sensorwert entsprechend dem Abbiegeverhalten der Verkehrsteilnehmer auf die Ausg"ange zu verteilen. Die Abbiegewahrscheinlichkeit gibt dabei an, wie viel Prozent des Verkehrs, welcher "uber den Sensor flie"st, dem jeweiligen Ausgangsknoten zugeordnet werden kann. Der Sensorwert wird entsprechend mit der jeweiligen Abbiegewahrscheinlichkeit multipliziert und auf den Ausgang addiert. Einspursensoren k"onnen dagegen direkt auf den Ausgang addiert werden auf den sie zeigen, ohne dass Abbiegewahrscheinlichkeiten von N"oten sind. Um das Berechnungsmodell einheitlich zu halten wurde bei der Matrizenrechnung eine Abbiegewahrscheinlichkeit von 1.0 f"ur Einspursensoren angegeben, da 100\% des Verkehrs, welcher "uber den Einspursensor flie"st, an dem entsprechenden Ausgang ankommen muss (sofern jeder Verkehrsteilnehmer sich an die Straßenverkehrsordnung h"alt).\\ \\
|
||||
Im Folgendem werden die Grundlagen von linearen Gleichungssystemen umrissen, woraufhin die entwickelte Berechnungsmethodik f"ur Kreuzungen und zwischen Kreuzungen genauer untersucht wird.
|
||||
\subsubsection{Grundlagen}\label{sec:berechnung:lgs:grund}
|
||||
Ein lineares Gleichungssystem, kurz LGS[gls:lgs], ist ein System linearer Gleichungen. Ein solches System hat n Unbekannte und m Gleichungen. Eine allgemeine Darstellungsform ist in Abbildung \ref{lgs:allgemein} beschrieben.\\
|
||||
@ -91,7 +92,7 @@ Zun"achst wird das Aufbereiten der Abbiegewahrscheinlichkeiten beschrieben, um d
|
||||
\end{equation}
|
||||
Ein lineares Gleichungssystem ist l"osbar, wenn alle Gleichungen erf"ullbar sind. Ist dies nicht der Fall spricht man von einem unl"osbaren Gleichungssystem. L"osbare Systeme lassen sich nochmals in die 'eindeutig L"osbaren' und 'nicht eindeutig L"osbaren' unterteilen. F"ur ein eindeutig l"osbares Gleichungssystem kann eine nummerische L"osung f"ur $x_1$ bis $x_n$ gefunden werden, im Gegensatz zu nicht eindeutig l"osbaren Systemen, f"ur welche eine L"osung nur in Abh"angigkeit von einem oder mehreren Parametern angeben werden kann.\\ \\
|
||||
Eine g"angige Art der Darstellung von linearen Gleichungssystemen ist die Matrixdarstellung. Das System zerf"allt dabei in drei Teile. Die Koeffizientenmatrix enth"alt die Werte $a_{11}$ bis $a_{nm}$ und wird mit $A$ bezeichnet. Die Unbekannten $x_1$ bis $x_n$ werden in einer einspaltigen Matrize zusammengefasst, ebenso wie die Ergebniswerte $b_1$ bis $b_m$. Die beiden Matrizen werden entsprechend mit $x$ und $b$ bezeichnet. Eine Allgemeine Darstellung eines LGS in Matrixform ist in Abbildung \ref{lgs:matrix} dargestellt.
|
||||
\begin{equation}\label{lgs:matrix}
|
||||
\begin{equation}
|
||||
\begin{pmatrix}
|
||||
a_{11} & a_{12} & \cdots & a_{1n} \\
|
||||
a_{21} & a_{22} & \cdots & a_{2n} \\
|
||||
@ -112,9 +113,10 @@ Zun"achst wird das Aufbereiten der Abbiegewahrscheinlichkeiten beschrieben, um d
|
||||
\vdots\\
|
||||
b_n\\
|
||||
\end{pmatrix}
|
||||
\label{lgs:matrix}
|
||||
\end{equation}
|
||||
Ein Kurzschreibweise, dieser Matrixform ist die sog. erweiterte Koeffizientenmatrix und ist in Abbildung \ref{lgs:koefmatrix} in allgemeiner Form abgebildet. Zur Bildung dieser Matrix wird die Koeffizientenmatrix $A$, zusammen mit dem Ergebnisvektor $b$ in eine Matrix geschrieben. Die Unbekannten der Matrix $x$ entfallen in dieser Darstellung.
|
||||
\begin{equation}\label{lgs:koefmatrix}
|
||||
\begin{equation}
|
||||
\left(\begin{array}{c|c}A & b\end{array}\right) =
|
||||
\left(\begin{array}{cccc|c}
|
||||
a_{11} & a_{12} & \cdots & a_{1n} & b_1\\
|
||||
@ -122,209 +124,206 @@ Zun"achst wird das Aufbereiten der Abbiegewahrscheinlichkeiten beschrieben, um d
|
||||
\vdots & \vdots & \ddots & \vdots & \vdots\\
|
||||
a_{m1} & a_{m2} & \cdots & a_{mn} & b_m
|
||||
\end{array}\right)
|
||||
\label{lgs:koefmatrix}
|
||||
\end{equation}
|
||||
Ein lineares Gleichungssystem ist genau dann eindeutig l"osbar, wenn der Rang der Koeffizientenmatrix gleich dem Rang der erweiterten Koeffizientenmatrix; $R(A) = R(A|b)$; ist. Gilt zus"atzlich die Bedingung, dass der Rang der erweiterten Koeffizientenmatrix der Anzahl der Unbekannten des Vektors $x$ entspricht, so ist das LGS eindeutig l"osbar. \\ \\
|
||||
F"ur ein solches Gleichungssystem existieren verschiedene L"osungsverfahren. Ein Beispiel ist der Gaus-Algorithmus.
|
||||
[gaus ref]. Neben dem Gaus-Algorithmus existieren viele weitere L"osungsalgorithmen, einschlie"slich nummerische Verfahren. Die Qualit"at der L"osung h"angt dabei von dem gew"ahlten L"osungsverfahren und dem vorliegenden Gleichungssystem ab.
|
||||
\subsubsection{Lineares Gleichungssystem einer Kreuzung}\label{sec:berechnung:lgs:xr}
|
||||
Die Beziehungen zwischen Induktionsschleifensensoren und Kreuzungsein- und Ausg"angen kann durch ein lineares Gleichungssystem ausgedr"uckt werden. Der Wert f"ur den Ausgang errechnet sich aus der Summe aller, diesem Kreuzungseingang zugeordneten, Sensoren. Ein Wert f"ur den Kreuzungsausgang errechnet sich aus den Werten der Sensoren, deren Spur dem Verkehr erlauben diesen Kreuzungsausgang zu bedienen. Dabei muss zwischen Einspursensoren und Mischspursensoren unterschieden werden. Einspursensoren k"onnen direkt auf den Ausgang addiert werden, w"ahrend f"ur Mischspursensoren eine Abbiegewahrscheinlichkeit ben"otigt wird, die angibt, wie viel des gemessenen Verkehrs in die entsprechende Richtung flie"st. Durch Multiplikation des Sensorwertes mit der Abbiegewahrscheinlichkeit erh"alt man den gesuchten Teil des Verkehrs und kann diesen auf den Ausgang addieren. Um einen Wert f"ur den Kreuzungseingang zu berechnen, werden keine Abbiegewahrscheinlichkeiten ben"otigt und die Sensorwerte k"onnen direkt, unerheblich ob nun Misch- oder Einzelspursensor, auf den Eingang addiert werden. Dies begr"undet sich in der Tatsache, dass alle Sensoren an den Kreuzungseing"angen verbaut sind und der gemessene Wert eindeutig einem Eingang zugeordnet werden kann.\\ \\
|
||||
Allgemein kann der Verkehrswert des Kreuzungsein- und -Ausgangs durch die in Abbildung \autoref{equ:xrallgemein} beschriebene Gleichung ausgedr"uckt werden.
|
||||
\begin{equation}\label{equ:xrallgemein}
|
||||
Kreuzungausgang_x = \sum ES_{xi} + \sum MS_{xj}*ABW_{xj}
|
||||
\end{equation}
|
||||
\begin{equation}
|
||||
Kreuzungseingang_x = \sum S_{xi}
|
||||
\end{equation}
|
||||
$Kreuzungseingang_x$ bezeichnet denjenigen Kreuzungseingang der betrachteten Kreuzung, der zur benachbarten Kreuzung x direkt verbunden ist.\\
|
||||
$Kreuzungausgang_x$ bezeichnet denjenigen Kreuzungsausgang der betrachteten Kreuzung, welche vor der benachbarten Kreuzung x liegt.\\
|
||||
$ES_x$ bezeichnet die \textit{count}-Werte alle Einspursensoren welche auf den Kreuzungsausgang x zeigen.\\
|
||||
$MS_x$ bezeichnet die \textit{count}-Werte alle Mehrspursensoren welche auf den Kreuzungsausgang x zeigen.\\
|
||||
$ABW_xi$ bezeichnet die Abbiegewahrscheinlichkeit an dem Mehrspursensor $MS_{xi}$ in Richtung Kreuzung x.\\
|
||||
$S_x$ bezeichnet die \textit{count}-Werte alle Sensoren welche direkt nach einem Kreuzungseingang in der Stra"se verbaut sind und entsprechend eine Verbindung, gegen die Flie"srichtung, zu dem Kreuzungseingang x hat.\\
|
||||
Die Berechnung erfolgt dabei f"ur alle Aus- bzw. Eing"ange mithilfe eines linearen Gleichungssystems, um unbekannte Werte, mithilfe der Abh"angigkeiten der Gleichungen untereinander, zu ermitteln.\\
|
||||
Eine allgemeine Form des Gleichungssystems f"ur Ein- bzw. Ausg"ange ist in Abbildung \ref{equ:algcalcmatrix} beschrieben.
|
||||
\begin{equation}\label{equ:algcalcmatrix}
|
||||
\bordermatrix{\text{}& S_1 & S_2 & \dots & S_n\cr
|
||||
In_1 & 0/1 & 0/1 & \dots & 0/1\cr
|
||||
In_2 & 0/1 & 0/1 & \dots & 0/1\cr
|
||||
\dots\cr
|
||||
In_m & 0/1 & 0/1 & \dots & 0/1\cr}
|
||||
*
|
||||
\begin{Bmatrix}
|
||||
S_1\\
|
||||
S_2\\
|
||||
S_3\\
|
||||
\dots\\
|
||||
S_n\\
|
||||
\end{Bmatrix}
|
||||
=
|
||||
\begin{Bmatrix}
|
||||
In_1\\
|
||||
In_2\\
|
||||
\dots\\
|
||||
In_m\\
|
||||
\end{Bmatrix}
|
||||
\end{equation}
|
||||
\begin{equation}
|
||||
\bordermatrix{\text{}& S_1 & S_2 & \dots & S_n\cr
|
||||
Out_1 & 0/1 & 0/1 & \dots & 0/1\cr
|
||||
Out_2 & 0/1 & 0/1 & \dots & 0/1\cr
|
||||
\dots\cr
|
||||
Out_m & 0/1 & 0/1 & \dots & 0/1\cr}
|
||||
*
|
||||
\begin{Bmatrix}
|
||||
S_1\\
|
||||
S_2\\
|
||||
S_3\\
|
||||
\dots\\
|
||||
S_n\\
|
||||
\end{Bmatrix}
|
||||
=
|
||||
\begin{Bmatrix}
|
||||
Out_1\\
|
||||
Out_2\\
|
||||
\dots\\
|
||||
Out_m\\
|
||||
\end{Bmatrix}
|
||||
\end{equation}
|
||||
Zur Erl"auterung wird nochmals die A23 (siehe \autoref{abb:a23}) betrachtet. Die in Kapitel \ref{sec:modell} entwickelte Matrixdarstellung erweist sich als hilfreich und kann durch Erg"anzen mit Abbiegewahrscheinlichkeiten zur Berechnung einer L"osung genutzt werden. Hierf"ur werden Verbindungen zwischen Einspursensoren und dem Aus- bzw. Eingang nach wie vor mit einer '1' markiert, da der gesamte Verkehr, der "uber diesen Sensor flie"st genau einem Ausgang zugeordnet werden kann. Es kann 100\% des Wertes auf den entsprechenden Ausgang "ubertragen werden.\\ \\
|
||||
F"ur Mischspursensoren dagegen werden die Verbindungen durch eine Flie"skommazahl ersetzt, welche die jeweilige Abbiegewahrscheinlichkeit repr"asentiert. Durch Multiplikation der Matrix mit den gemessenen Sensorwerten eines bestimmten Zeitpunktes, kann ein Wert f"ur die Ein- und Ausg"ange zu diesem Zeitpunkt berechnet werden, sofern aller, in die Kreuzung einstr"omender Verkehr von Sensoren erfasst wird und f"ur alle Mischspursensoren Abbiegewahrscheinlichkeiten vorliegen. Abbildung \ref{abb:a23calc} beschreibt diese Berechnung f"ur die Ein- und Ausg"ange der Kreuzung A23 zum Zeitpunkt [].
|
||||
Eingangsmatrix:[todo]
|
||||
\begin{equation}\label{abb:a23calc}
|
||||
\bordermatrix{\text{} & D1 & D2 & D3 & D4 & D5 & D6 & D7 & D8 & D9 & D10\cr
|
||||
A12 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0\cr
|
||||
A28 & 0 & 0 & 1 & 1 & 1 & 1 & 1 & 0 & 0 & 0\cr
|
||||
A4 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 1 & 1}
|
||||
*
|
||||
\bordermatrix{\text{}& count\cr
|
||||
D1 & 1\cr
|
||||
D2 & 2\cr
|
||||
D3 & 3\cr
|
||||
D4 & 4\cr
|
||||
D5 & 5\cr
|
||||
D6 & 6\cr
|
||||
D7 & 7\cr
|
||||
D8 & 8\cr
|
||||
D9 & 9\cr
|
||||
D10 & 0}
|
||||
=
|
||||
\bordermatrix{\text{}& count\cr
|
||||
A12 & 1\cr
|
||||
A28 & 2\cr
|
||||
A4 & 3\cr}
|
||||
\end{equation}
|
||||
Ausgangsmatrix:
|
||||
\begin{equation}
|
||||
\bordermatrix{\text{} & D1 & D2 & D3 & D4 & D5 & D6 & D7 & D8 & D9 & D10\cr
|
||||
A12 & 1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 0 & 0\cr
|
||||
A4 & 1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 0 & 0\cr
|
||||
A104 & 1 & 0 & 0 & 1 & 1 & 0 & 0 & 0 & 0 & 1}
|
||||
*
|
||||
\bordermatrix{\text{} & count\cr
|
||||
D1 & 1\cr
|
||||
D2 & 2\cr
|
||||
D3 & 3\cr
|
||||
D4 & 4\cr
|
||||
D5 & 5\cr
|
||||
D6 & 6\cr
|
||||
D7 & 7\cr
|
||||
D8 & 8\cr
|
||||
D9 & 9\cr
|
||||
D10 & 0}
|
||||
=
|
||||
\bordermatrix{\text{} & count\cr
|
||||
A12 & 1\cr
|
||||
AA & 2\cr
|
||||
A104 & 3}
|
||||
\end{equation}
|
||||
F"ur die Kreuzung A23 ist es nicht n"otig ein Gleichungssystem zu l"osen, da alle ben"otigten Werte bekannt sind und jede lineare Gleichung f"ur sich gel"ost werden kann. Dies ist darauf zur"uckzuf"uhren, dass alle Sensorwerte f"ur diese Kreuzung bekannt und alle eingehenden Spuren mit Sensoren best"uckt sind. Desweiteren stehen f"ur alle Mischspursensoren Abbiegewahrscheinlichkeiten der Stadt Darmstadt zur Verf"ugung.\\ \\
|
||||
Im folgenden wird diskutiert in wie fern das Gleichungssystem mit unbekannten Eingangsspuren bzw. unbekannten Abbiegewahrscheinlichkeiten gel"ost werden kann.\\
|
||||
Durch Hinzuf"ugen eines virtuellen Sensors f"ur eine weitere Kreuzungseingangspur wird das Gleichungssystem zu einem eben solchen, da nun Unbekannte in der Gleichung auftauchen. Dies f"uhrt unmittelbar zur Unl"osbarkeit des Systems, da Rang[]. Am Beispiel der A23 ist das demonstriert. Hierf"ur wird der Sensor D10 zu einer virtuellen Sensor, welcher keine Werte liefert (siehe Abbildung \ref{abb:a23d10virt}).
|
||||
[todo]
|
||||
\begin{equation}\label{abb:a23d10virt}
|
||||
\bordermatrix{\text{} & D1 & D2 & D3 & D4 & D5 & D6 & D7 & D8 & D9 & V10 &\cr
|
||||
A12 & 1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 0 & 0\cr
|
||||
A4 & 1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 0 & 0\cr
|
||||
A104 & 1 & 0 & 0 & 1 & 1 & 0 & 0 & 0 & 0 & 1}
|
||||
*
|
||||
\bordermatrix{\text{} & count\cr
|
||||
D1 & 1\cr
|
||||
D2 & 2\cr
|
||||
D3 & 3\cr
|
||||
D4 & 4\cr
|
||||
D5 & 5\cr
|
||||
D6 & 6\cr
|
||||
D7 & 7\cr
|
||||
D8 & 8\cr
|
||||
D9 & 9\cr
|
||||
V10 & V10}
|
||||
=
|
||||
\bordermatrix{\text{} & count\cr
|
||||
A12 & A12\cr
|
||||
AA & A4\cr
|
||||
A104 & A104}
|
||||
\end{equation}
|
||||
Dieses System ist nicht l"osbar, da zu viele Unbekannte in der Gleichung vorliegen. Das liegt insbesondere an fehlenden Ausgangswerten der Kreuzung. Diese k"onnen allerdings nicht bestimmt werden. Siehe hierf"ur \ref{sec:modell}.[todo?] Durch zus"atzliche Gleichungen k"onnen die Werte weiter eingeschr"ankt werden. Dies f"uhrt allerdings nicht zur L"osbarkeit des Systems. So m"ussen alle aufaddierten Abbiegewahrscheinlichkeiten eines Sensors kleiner gleich eins sein. Eine weitere M"oglichkeit das Gleichungssystem zu erweitern ist die Zuhilfenahme der Valierungssensoren. Da auf dem untersuchten Gebiet lediglich drei Validerungssensoren verbaut sind, tr"agt eine Einbeziehung dieser Sensoren in das LGS ebenfalls nicht zu einer L"osung bei. Eine genauere Diskussion "uber die Validierungssensoren und deren Verwendungsm"oglichkeiten bei einem fl"achendeckendem Einsatz auf Kreuzungen wird in einem eigenen Unterkapitel behandelt. \\ \\
|
||||
Eine weitere Anwendung ist die Berechnung der Abbiegewahrscheinlichkeiten. Unter der Annahme, dass alle Werte der Sensoren bekannt, allerdings f"ur einen Mischspursensor die Abbiegewahrscheinlichkeiten nicht bekannt sind. Dieses System ist ebenfalls nicht l"osbar, da abermals zu viele Unbekannte in dem System auftauchen. Hier sind die fehlenden Ausgangsverkehrswerte einer Kreuzung der Grund, weshalb es zu keiner L"osung kommen kann. Auch diese Anwendung wird in dem Unterkapitel zu Valliderungssensoren behandelt.[todo?]
|
||||
\subsection{Kreuzungsberechnung am Graphen}\label{sec:berechnung:graph}
|
||||
Da bei allen modellierten Kreuzungen der 'Ministadt' alle eingehenden Spuren mit Sensoren versehen sind, k"onnen die Gleichungen f"ur die jeweiligen Ausg"ange unabh"angig voneinander gel"ost werden. Dies erlaubt es die Ausg"ange bzw. Eing"ange mithilfe des Graphen zu berechnen. Das entwickelte Verfahren macht sich zunutze, dass alle Eing"ange mit den Ausg"angen einer Kreuzung "uber genau einen bekannten Sensor miteinander verbunden sind.\\ \\
|
||||
F"ur Eingangsknoten wird ausgehend von einem eben solchen, alle ausgehenden Kanten des Graphen verfolgt und der Wert aller darauffolgender Knoten aufaddiert. Dies entspricht der in \ref{sec:berechnung:lgs:xr} beschrieben Berechnungsmethode f"ur Eingangsknoten.
|
||||
[bild mit berechnung todo]
|
||||
F"ur Ausgangsknoten einer Kreuzung kann das selbe Verfahren genutzt werden. Es werden alle eingehenden Kanten, entgegen der Verkehrsflussrichtung, vom Ausgangsknoten ausgehend, verfolgt und die Sensorwerte aufaddiert. F"ur Mischspursensoren wird dabei der Wert mit der an der Kante annotierten Abbiegewahrscheinlichkeit multipliziert.
|
||||
[bild mit berechnung]
|
||||
Wird dieses Verfahren f"ur alle Aus- und Eing"ange einer Kreuzung durchgef"uhrt, k"onnen f"ur alle Aus- und Eing"ange ein Verkehrswert berechnet werden, unter der Vorraussetzung, dass alle Eingangsspuren der Kreuzung mit Sensoren best"uckt sind.\\ \\
|
||||
Das zeitlose "Ubertragen der Werte vom Kreuzungseingang auf den Ausgang begr"undet sich mit der Tatsache, dass alle vorliegenden Sensorwerte den Verkehr "uber einen Zeitraum von einer Minute messen und nach Ende des Intervalls eine Anzahl an Verkehrsteilnehmern ausweist, die "uber den Sensor gefahren sind. Die gemessenen Verkehrsteilnehmer haben die Kreuzung folglich bereits passiert. Lediglich die letzten Autos k"onnten sich noch auf der Kreuzung befinden. Dies wird allerdings vernachl"assigt.
|
||||
\subsubsection{Verkehrsfluss zwischen Kreuzungen}\label{sec:berechnung:betweenxr}
|
||||
Zwischen Kreuzungen ist das entwickelte Modell ungenau, da Seitenstra"sen und Kreuzungen ohne Sensoren nicht modelliert werden. Es kann aufgrund der Berechnungen aus \autoref{sec:berechnung:lgs:xr} ein Wert f"ur den Verkehr bestimmt werden, welcher von einer Kreuzung ausgehend, in eine bestimmte Richtung flie"st.
|
||||
Dieser Wert entspricht dem f"ur den Ausgang der Kreuzung berechneten Wert, da dieser Wert aussagt wie viele Autos die Kreuzung in diese Richtung verlassen haben.\\ \\
|
||||
Dadurch dass die vorliegenden Sensordaten f"ur eine Minute gemessen wurden, kann leider nicht berechnet werden wie viele Verkehrsteilnehmer, die eine Kreuzung verlassen, an einer anderen wieder einflie"sen und welcher Teil in Seitenstra"sen abgeflossen ist, da die Messungen zweier Kreuzungen nicht in eine Beziehung gesetzt werden k"onnen.
|
||||
\subsubsection{Sonderfall: Validierungssensor}\label{sec:berechnung:vallidate}
|
||||
Als Validierungssensoren werden diejenigen Sensoren bezeichnet, welche direkt vor einem Kreuzungsausgang liegen. Sie k"onnen von verschiedenen Seiten den Kreuzung befahren werden und z"ahlen in der Regeln Verkehr, welcher bereits von einem Sensor gez"ahlt wurden. Da der Einsatz dieser Validierungssensoren nicht fl"achendeckend ist, k"onnen diese Sensoren nicht sinnvoll verwendet werden. Im nachfolgendem Abschnitt wird beschrieben, welche Berechnungen auf Basis des weiter oben in diesem Kapitel entwickelten Gleichungssystems, mithilfe einer vollst"andig mit Validierungssensoren best"uckten Kreuzung, m"oglich sind.\\ \\
|
||||
Sind alle Ausgangsspuren einer Kreuzung mit Validierungssensoren best"uckt, kann der Ausgangswert einer Kreuzung durch aufaddieren der jeweiligen Sensorwerte, analog zur Berechnung der Kreuzungseingangswerte, exakt bestimmt werden. Es sind keine Abbiegewahrscheinlichkeiten mehr notwendig, der den Verkehr, welcher "uber einen Eingangssensor flie"st, aufteilt. Das Ergebnis $b$ des oben beschrieben Gleichungssystems kann eingef"ullt werden. Dies erm"oglicht es, die Abbiegewahrscheinlichkeiten mithilfe eines LGS-L"osungsverfahrens zu bestimmen. An Beispiel der Kreuzung A23 wurden Validierungssensoren durch ein vorhandenes, frei gew"ahltes, Ergebnis simuliert. Hierf"ur wird angenommen, dass jeder Ausgang der Kreuzung von 5 Fahrzeugen verlassen wird.
|
||||
\begin{equation}
|
||||
\bordermatrix{\text{} & D1 & D2 & D3 & D4 & D5 & D6 & D7 & D8 & D9 & D10\cr
|
||||
A12 & 1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 0 & 0\cr
|
||||
A4 & 1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 0 & 0\cr
|
||||
A104 & 1 & 0 & 0 & 1 & 1 & 0 & 0 & 0 & 0 & 1}
|
||||
*
|
||||
\bordermatrix{\text{} & count\cr
|
||||
D1 & 1\cr
|
||||
D2 & 2\cr
|
||||
D3 & 3\cr
|
||||
D4 & 4\cr
|
||||
D5 & 5\cr
|
||||
D6 & 6\cr
|
||||
D7 & 7\cr
|
||||
D8 & 8\cr
|
||||
D9 & 9\cr
|
||||
D10 & 0}
|
||||
=
|
||||
\bordermatrix{\text{} & count\cr
|
||||
A12 & 5\cr
|
||||
AA & 5\cr
|
||||
A104 & 5}
|
||||
\end{equation}
|
||||
Durch l"osen des LGS erh"alt man die Abbiegewahrscheinlichkeiten der einzelnen Sensoren. Diese Abbiegewahrscheinlichkeiten entsprechen dabei dem exakten Abbiegeverhalten der Verkehrsteilnehmer "uber dem Messinverall. Die f"ur dieses Beispiel bestimmten Abbiegewahrscheinlichkeiten sind in Tabelle [todo] aufgezeigt.
|
||||
|
||||
Nachfolgend ein Beispiel einer Kreuzung, der A4, welche an einer Stelle eine Validierung zul"asst.
|
||||
\begin{figure}[htbp!]
|
||||
\centering
|
||||
\fbox{\includegraphics[width=0.5\textwidth-2\fboxsep-2\fboxrule]{ext/KreuzungA4}}
|
||||
\caption{Kreuzung A4}
|
||||
\end{figure}
|
||||
|
||||
Der Sensor IR21 kann partiell durch den Sensor D22 validiert werden. Da die Fahrzeuge "uber den Sensor IR21 in genau zwei Richtungen fahren k"onnen, kann der Fluss eindeutig bestimmt werden und es kann f"ur jeden Datensatz berechnet werden wie viele Fahrzeuge, welche "uber den Sensor IR21 gefahren sind, nach rechts abgebogen, und wieviele geradeaus gefahren sind. Die Abbiegewahrscheinlichkeiten f"ur den Sensor IR21 berechnen sich wie folgt:
|
||||
\begin{equation}
|
||||
Abbw_{A23} = D22.count / IR21.count
|
||||
\end{equation}
|
||||
\begin{equation}
|
||||
Abbw_{A3} = (IR21.count - D22.count) / IR21.count
|
||||
\end{equation}
|
||||
Es l"asst sich ebenfalls die Anzahl der Autos bestimmen, welche in die entsprechende Richtung gefahren sind:
|
||||
\begin{equation}
|
||||
Out_{A23,IR21} = D22.count
|
||||
\end{equation}
|
||||
\begin{equation}
|
||||
Out_{A3,IR21} = (IR21.count - D22.count)
|
||||
\end{equation}
|
||||
Ein lineares Gleichungssystem ist genau dann eindeutig l"osbar, wenn der Rang der Koeffizientenmatrix gleich dem Rang der erweiterten Koeffizientenmatrix - $R(A) = R(A|b)$ - ist. Gilt zus"atzlich die Bedingung, dass der Rang der erweiterten Koeffizientenmatrix der Anzahl der Unbekannten des Vektors $x$ entspricht, so ist das LGS eindeutig l"osbar. \\ \\
|
||||
F"ur ein solches Gleichungssystem existieren verschiedene L"osungsverfahren. Ein Beispiel ist der Gaus-Algorithmus \cite{script:m3}. Neben dem Gaus-Algorithmus existieren viele weitere L"osungsalgorithmen, einschlie"slich nummerische Verfahren. Die Qualit"at der L"osung h"angt dabei von dem gew"ahlten L"osungsverfahren und dem vorliegenden Gleichungssystem ab.
|
||||
\subsubsection{Lineares Gleichungssystem einer Kreuzung}\label{sec:berechnung:lgs:xr}
|
||||
Die Beziehungen zwischen Induktionsschleifensensoren und Kreuzungsein- und Ausg"angen kann durch ein lineares Gleichungssystem ausgedr"uckt werden. Der Wert f"ur den Ausgang errechnet sich aus der Summe aller, diesem Kreuzungseingang zugeordneten, Sensoren. Ein Wert f"ur den Kreuzungsausgang errechnet sich aus den Werten der Sensoren, deren Spur dem Verkehr erlauben diesen Kreuzungsausgang zu bedienen. Dabei muss zwischen Einspursensoren und Mischspursensoren unterschieden werden. Einspursensoren k"onnen direkt auf den Ausgang addiert werden, w"ahrend f"ur Mischspursensoren eine Abbiegewahrscheinlichkeit ben"otigt wird, die angibt, wie viel des gemessenen Verkehrs in die entsprechende Richtung flie"st. Durch Multiplikation des Sensorwertes mit der Abbiegewahrscheinlichkeit erh"alt man den gesuchten Teil des Verkehrs und kann diesen auf den Ausgang addieren. Um einen Wert f"ur den Kreuzungseingang zu berechnen, werden keine Abbiegewahrscheinlichkeiten ben"otigt und die Sensorwerte k"onnen direkt, unerheblich ob nun Misch- oder Einzelspursensor, auf den Eingang addiert werden. Dies begr"undet sich in der Tatsache, dass alle Sensoren an den Kreuzungseing"angen verbaut sind und der gemessene Wert eindeutig einem Eingang zugeordnet werden kann.\\ \\
|
||||
Allgemein kann der Verkehrswert des Kreuzungsein- und -Ausgangs durch die in Abbildung \autoref{equ:xrallgemein} beschriebene Gleichung ausgedr"uckt werden.
|
||||
\begin{equation}\label{equ:xrallgemein}
|
||||
Kreuzungausgang_x = \sum ES_{xi} + \sum MS_{xj}*ABW_{xj}
|
||||
\end{equation}
|
||||
\begin{equation}
|
||||
Kreuzungseingang_x = \sum S_{xi}
|
||||
\end{equation}
|
||||
$Kreuzungseingang_x$ bezeichnet denjenigen Kreuzungseingang der betrachteten Kreuzung, der zur benachbarten Kreuzung x direkt verbunden ist.\\
|
||||
$Kreuzungausgang_x$ bezeichnet denjenigen Kreuzungsausgang der betrachteten Kreuzung, welche vor der benachbarten Kreuzung x liegt.\\
|
||||
$ES_x$ bezeichnet die \textit{count}-Werte alle Einspursensoren welche auf den Kreuzungsausgang x zeigen.\\
|
||||
$MS_x$ bezeichnet die \textit{count}-Werte alle Mehrspursensoren welche auf den Kreuzungsausgang x zeigen.\\
|
||||
$ABW_xi$ bezeichnet die Abbiegewahrscheinlichkeit an dem Mehrspursensor $MS_{xi}$ in Richtung Kreuzung x.\\
|
||||
$S_x$ bezeichnet die \textit{count}-Werte alle Sensoren welche direkt nach einem Kreuzungseingang in der Stra"se verbaut sind und entsprechend eine Verbindung, gegen die Flie"srichtung, zu dem Kreuzungseingang x hat.\\
|
||||
Die Berechnung erfolgt dabei f"ur alle Aus- bzw. Eing"ange mithilfe eines linearen Gleichungssystems, um unbekannte Werte, mithilfe der Abh"angigkeiten der Gleichungen untereinander, zu ermitteln.\\
|
||||
Eine allgemeine Form des Gleichungssystems f"ur Ein- bzw. Ausg"ange ist in Abbildung \ref{equ:algcalcmatrix} beschrieben.
|
||||
\begin{equation}\label{equ:algcalcmatrix}
|
||||
\bordermatrix{\text{}& S_1 & S_2 & \dots & S_n\cr
|
||||
In_1 & 0/1 & 0/1 & \dots & 0/1\cr
|
||||
In_2 & 0/1 & 0/1 & \dots & 0/1\cr
|
||||
\dots\cr
|
||||
In_m & 0/1 & 0/1 & \dots & 0/1\cr}
|
||||
*
|
||||
\begin{Bmatrix}
|
||||
S_1\\
|
||||
S_2\\
|
||||
\dots\\
|
||||
S_n\\
|
||||
\end{Bmatrix}
|
||||
=
|
||||
\begin{Bmatrix}
|
||||
In_1\\
|
||||
In_2\\
|
||||
\dots\\
|
||||
In_m\\
|
||||
\end{Bmatrix}
|
||||
\end{equation}
|
||||
\begin{equation}
|
||||
\bordermatrix{\text{}& S_1 & S_2 & \dots & S_n\cr
|
||||
Out_1 & 0/1 & 0/1 & \dots & 0/1\cr
|
||||
Out_2 & 0/1 & 0/1 & \dots & 0/1\cr
|
||||
\dots\cr
|
||||
Out_m & 0/1 & 0/1 & \dots & 0/1\cr}
|
||||
*
|
||||
\begin{Bmatrix}
|
||||
S_1\\
|
||||
S_2\\
|
||||
\dots\\
|
||||
S_n\\
|
||||
\end{Bmatrix}
|
||||
=
|
||||
\begin{Bmatrix}
|
||||
Out_1\\
|
||||
Out_2\\
|
||||
\dots\\
|
||||
Out_m\\
|
||||
\end{Bmatrix}
|
||||
\end{equation}
|
||||
Zur Erl"auterung wird nochmals die A23 (siehe \autoref{abb:a23}) betrachtet. Die in Kapitel \ref{sec:modell} entwickelte Matrixdarstellung erweist sich als hilfreich und kann durch Erg"anzen mit Abbiegewahrscheinlichkeiten zur Berechnung einer L"osung genutzt werden. Hierf"ur werden Verbindungen zwischen Einspursensoren und dem Aus- bzw. Eingang nach wie vor mit einer '1' markiert, da der gesamte Verkehr, der "uber diesen Sensor flie"st genau einem Ausgang zugeordnet werden kann. Es kann 100\% des Wertes auf den entsprechenden Ausgang "ubertragen werden.\\ \\
|
||||
F"ur Mischspursensoren dagegen werden die Verbindungen durch eine Flie"skommazahl ersetzt, welche die jeweilige Abbiegewahrscheinlichkeit repr"asentiert. Durch Multiplikation der Matrix mit den gemessenen Sensorwerten eines bestimmten Zeitpunktes, kann ein Wert f"ur die Ein- und Ausg"ange zu diesem Zeitpunkt berechnet werden, sofern aller, in die Kreuzung einstr"omender Verkehr von Sensoren erfasst wird und f"ur alle Mischspursensoren Abbiegewahrscheinlichkeiten vorliegen. Abbildung \ref{abb:a23calc} beschreibt diese Berechnung f"ur die Ein- und Ausg"ange der Kreuzung A23 zum Zeitpunkt 2013-07-13 13:00:00 UTC.
|
||||
Eingangsmatrix:
|
||||
\begin{equation}\label{abb:a23calc}
|
||||
\bordermatrix{\text{} & D1 & D2 & D3 & D4 & D5 & D6 & D7 & D8 & D9 & D10\cr
|
||||
A12 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0\cr
|
||||
A28 & 0 & 0 & 1 & 1 & 1 & 1 & 1 & 0 & 0 & 0\cr
|
||||
A4 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 1 & 1}
|
||||
*
|
||||
\bordermatrix{\text{}& count\cr
|
||||
D1 & 9\cr
|
||||
D2 & 8\cr
|
||||
D3 & 4\cr
|
||||
D4 & 2\cr
|
||||
D5 & 2\cr
|
||||
D6 & 3\cr
|
||||
D7 & 2\cr
|
||||
D8 & 1\cr
|
||||
D9 & 0\cr
|
||||
D10 & 1}
|
||||
=
|
||||
\bordermatrix{\text{}& count\cr
|
||||
A12 & 17\cr
|
||||
A28 & 13\cr
|
||||
A4 & 2\cr}
|
||||
\end{equation}
|
||||
Ausgangsmatrix:
|
||||
\begin{equation}
|
||||
\bordermatrix{\text{} & D1 & D2 & D3 & D4 & D5 & D6 & D7 & D8 & D9 & D10\cr
|
||||
A12 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 1 & 1 & 0\cr
|
||||
A4 & 0.4 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 0 & 0\cr
|
||||
A104 & 0.6 & 0 & 0 & 1 & 1 & 0 & 0 & 0 & 0 & 1}
|
||||
*
|
||||
\bordermatrix{\text{} & count\cr
|
||||
D1 & 9\cr
|
||||
D2 & 8\cr
|
||||
D3 & 4\cr
|
||||
D4 & 2\cr
|
||||
D5 & 2\cr
|
||||
D6 & 3\cr
|
||||
D7 & 2\cr
|
||||
D8 & 1\cr
|
||||
D9 & 0\cr
|
||||
D10 & 1}
|
||||
=
|
||||
\bordermatrix{\text{} & count\cr
|
||||
A12 & 5\cr
|
||||
AA & 16,6\cr
|
||||
A104 & 10,4}
|
||||
\end{equation}
|
||||
F"ur die Kreuzung A23 ist es nicht n"otig ein Gleichungssystem zu l"osen, da alle ben"otigten Werte bekannt sind und jede lineare Gleichung f"ur sich gel"ost werden kann. Dies ist darauf zur"uckzuf"uhren, dass alle Sensorwerte f"ur diese Kreuzung bekannt und alle eingehenden Spuren mit Sensoren best"uckt sind. Desweiteren stehen f"ur alle Mischspursensoren Abbiegewahrscheinlichkeiten der Stadt Darmstadt zur Verf"ugung.\\ \\
|
||||
Im folgenden wird diskutiert in wie fern das Gleichungssystem mit unbekannten Eingangsspuren bzw. unbekannten Abbiegewahrscheinlichkeiten gel"ost werden kann.\\
|
||||
Durch Hinzuf"ugen eines virtuellen Sensors f"ur eine weitere Kreuzungseingangspur wird das Gleichungssystem zu einem eben solchen, da nun Unbekannte in der Gleichung auftauchen. Dies f"uhrt unmittelbar zur Unl"osbarkeit des Systems, da Rang[]. Am Beispiel der A23 ist das demonstriert. Hierf"ur wird der Sensor D10 zu einer virtuellen Sensor, welcher keine Werte liefert (siehe Abbildung \ref{abb:a23d10virt}).
|
||||
\begin{equation}\label{abb:a23d10virt}
|
||||
\bordermatrix{\text{} & D1 & D2 & D3 & D4 & D5 & D6 & D7 & D8 & D9 & D10\cr
|
||||
A12 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 1 & 1 & 0\cr
|
||||
A4 & 0.4 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 0 & 0\cr
|
||||
A104 & 0.6 & 0 & 0 & 1 & 1 & 0 & 0 & 0 & 0 & 1}
|
||||
*
|
||||
\bordermatrix{\text{} & count\cr
|
||||
D1 & 9\cr
|
||||
D2 & 8\cr
|
||||
D3 & 4\cr
|
||||
D4 & 2\cr
|
||||
D5 & 2\cr
|
||||
D6 & 3\cr
|
||||
D7 & 2\cr
|
||||
D8 & 1\cr
|
||||
D9 & 0\cr
|
||||
D10 & D10}
|
||||
=
|
||||
\bordermatrix{\text{} & count\cr
|
||||
A12 & 5\cr
|
||||
AA & 16,6\cr
|
||||
A104 & 9.4+D10}
|
||||
\end{equation}
|
||||
Dieses System ist nicht l"osbar, da zu viele Unbekannte in der Gleichung vorliegen. Das liegt insbesondere an fehlenden Ausgangswerten der Kreuzung. Diese k"onnen allerdings nicht bestimmt werden. Siehe hierf"ur \ref{sec:modell}. Durch zus"atzliche Gleichungen k"onnen die Werte weiter eingeschr"ankt werden. Dies f"uhrt allerdings nicht zur L"osbarkeit des Systems. So m"ussen alle aufaddierten Abbiegewahrscheinlichkeiten eines Sensors kleiner gleich eins sein. Eine weitere M"oglichkeit das Gleichungssystem zu erweitern ist die Zuhilfenahme der Valierungssensoren. Da auf dem untersuchten Gebiet lediglich drei Validerungssensoren verbaut sind, tr"agt eine Einbeziehung dieser Sensoren in das LGS ebenfalls nicht zu einer L"osung bei. Eine genauere Diskussion "uber die Validierungssensoren und deren Verwendungsm"oglichkeiten bei einem fl"achendeckendem Einsatz auf Kreuzungen wird in einem eigenen Unterkapitel behandelt. \\ \\
|
||||
Eine weitere Anwendung ist die Berechnung der Abbiegewahrscheinlichkeiten. Unter der Annahme, dass alle Werte der Sensoren bekannt, allerdings f"ur einen Mischspursensor die Abbiegewahrscheinlichkeiten nicht bekannt sind. Dieses System ist ebenfalls nicht l"osbar, da abermals zu viele Unbekannte in dem System auftauchen. Hier sind die fehlenden Ausgangsverkehrswerte einer Kreuzung der Grund, weshalb es zu keiner L"osung kommen kann. Auch diese Anwendung wird in dem Unterkapitel zu Valliderungssensoren behandelt.
|
||||
\subsection{Kreuzungsberechnung am Graphen}\label{sec:berechnung:graph}
|
||||
Da bei allen modellierten Kreuzungen der \textit{Ministadt} alle eingehenden Spuren mit Sensoren versehen sind, k"onnen die Gleichungen f"ur die jeweiligen Ausg"ange unabh"angig voneinander gel"ost werden. Dies erlaubt es die Ausg"ange bzw. Eing"ange mithilfe des Graphen zu berechnen. Das entwickelte Verfahren macht sich zunutze, dass in der gewählten Modellierung alle Eing"ange mit den Ausg"angen einer Kreuzung "uber genau einen bekannten Sensor miteinander verbunden sind.\\ \\
|
||||
F"ur Eingangsknoten wird ausgehend von einem eben solchen, alle ausgehenden Kanten des Graphen verfolgt und der Wert aller darauffolgender Knoten aufaddiert. Dies entspricht der in \ref{sec:berechnung:lgs:xr} beschrieben Berechnungsmethode f"ur Eingangsknoten.\\ \\
|
||||
F"ur Ausgangsknoten einer Kreuzung kann das selbe Verfahren genutzt werden. Es werden alle eingehenden Kanten, entgegen der Verkehrsflussrichtung, vom Ausgangsknoten ausgehend, verfolgt und die Sensorwerte der darauffolgenden Sensoren aufaddiert. F"ur Mischspursensoren wird dabei der Wert mit der an der Kante annotierten Abbiegewahrscheinlichkeit, für Einspursensoren wird der Wert mit 1 multipliziert.\\ \\
|
||||
Wird dieses Verfahren f"ur alle Aus- und Eing"ange einer Kreuzung durchgef"uhrt, k"onnen f"ur alle Aus- und Eing"ange ein Verkehrswert berechnet werden, unter der Vorraussetzung, dass alle Eingangsspuren der Kreuzung mit Sensoren best"uckt sind.\\ \\
|
||||
Das zeitlose "Ubertragen der Werte vom Kreuzungseingang auf den Ausgang begr"undet sich mit der Tatsache, dass alle vorliegenden Sensorwerte den Verkehr "uber einen Zeitraum von einer Minute messen und nach Ende des Intervalls eine Anzahl an Verkehrsteilnehmern ausweist, die "uber den Sensor gefahren sind. Die gemessenen Verkehrsteilnehmer haben die Kreuzung folglich bereits passiert. Lediglich die letzten Fahrzeuge k"onnten sich noch auf der Kreuzung befinden. Dies wird allerdings vernachl"assigt.
|
||||
\subsubsection{Verkehrsfluss zwischen Kreuzungen}\label{sec:berechnung:betweenxr}
|
||||
Zwischen Kreuzungen ist das entwickelte Modell ungenau, da Seitenstra"sen und Kreuzungen ohne Sensoren nicht modelliert werden. Es kann aufgrund der Berechnungen aus \autoref{sec:berechnung:lgs:xr} ein Wert f"ur den Verkehr bestimmt werden, welcher von einer Kreuzung ausgehend, in eine bestimmte Richtung flie"st. Dieser Wert entspricht dem f"ur den Ausgang der Kreuzung berechneten Wert, da dieser Wert aussagt wie viele Autos die Kreuzung in diese Richtung verlassen haben.\\ \\
|
||||
Dadurch dass die vorliegenden Sensordaten f"ur eine Minute gemessen wurden, kann leider nicht berechnet werden wie viele Verkehrsteilnehmer, die eine Kreuzung verlassen, an einer anderen wieder einflie"sen und welcher Teil in Seitenstra"sen abgeflossen ist, da die Messungen zweier Kreuzungen nicht in eine Beziehung gesetzt werden k"onnen.\\ \\
|
||||
Durch Multiplikation des berechneten Kreuzungsausgangswertes mit einer Wahrscheinlichkeit, die angibt wie viele Fahrzeuge in Seitenstraßen abfließen, können Verkehrsstromtendenzen für das betrachtete Gebiet ausgerechnet werden. Es liegen allerdings keine Abbiegewahrscheinlichkeiten für Seitenstraßen vor. Auch sind keine Angaben zu Parkwahrscheinlichekeit von Autos vorhanden.\\ \\
|
||||
Der berechnete Ausgangswert wird in dem entwickelten Modell auf die Kreuzungsübersicht übertragen, und auf der Straße zwischen den entsprechenden Kreuzungen aufgetragen. Dieser Wert gibt an, wie viele Fahrzeuge sich aus der Kreuzung raus, in Richtung der nächsten kreuzung bewegen. Diese Zahl gibt allerdings keinen Aufschluss über die tatsächlich Anzahl der Fahrzeuge, die wiederum an der nächsten Kreuzung ankommen.
|
||||
\subsubsection{Sonderfall: Validierungssensor}\label{sec:berechnung:vallidate}
|
||||
Als Validierungssensoren werden diejenigen Sensoren bezeichnet, welche direkt vor einem Kreuzungsausgang liegen. Sie k"onnen von verschiedenen Seiten den Kreuzung befahren werden und z"ahlen in der Regeln Verkehr, welcher bereits von einem Sensor gez"ahlt wurden. Da der Einsatz dieser Validierungssensoren in Darmstadt nicht fl"achendeckend ist, k"onnen diese Sensoren nicht sinnvoll verwendet werden. Im nachfolgendem Abschnitt wird beschrieben, welche Berechnungen auf Basis des weiter oben in diesem Kapitel entwickelten Gleichungssystems, mithilfe einer vollst"andig mit Validierungssensoren best"uckten Kreuzung, m"oglich sind.\\ \\
|
||||
Sind alle Ausgangsspuren einer Kreuzung mit Validierungssensoren best"uckt, kann der Ausgangswert einer Kreuzung durch aufaddieren der jeweiligen Sensorwerte, analog zur Berechnung der Kreuzungseingangswerte, exakt bestimmt werden (in Abhängigkeit zur Sensorgenauigkeit). Es sind keine Abbiegewahrscheinlichkeiten mehr notwendig, der den Verkehr, welcher "uber einen Eingangssensor flie"st, aufteilt. Das Ergebnis $b$ des oben beschrieben Gleichungssystems kann eingef"ullt werden. Dies erm"oglicht es, die Abbiegewahrscheinlichkeiten mithilfe eines LGS-L"osungsverfahrens zu bestimmen. An Beispiel der Kreuzung A23 wurden Validierungssensoren durch ein vorhandenes, frei gew"ahltes, Ergebnis für die Kreuzungsausgänge simuliert. Hierf"ur wird angenommen, dass jeder Ausgang der Kreuzung von fünf Fahrzeugen verlassen wird. Die Sensorwerte sind ebenfalls frei gewählt und ergeben in der Summe fünfzehn, für jeden Kreuzungsausgang fünf Fahrzeuge.
|
||||
\begin{equation}
|
||||
\bordermatrix{\text{} & D1 & D2 & D3 & D4 & D5 & D6 & D7 & D8 & D9 & D10\cr
|
||||
A12 & 0 & 0 & 1 & 0 & 0 & 0 & 0 & 1 & 1 & 0\cr
|
||||
A4 & Abbw_{D1,A4} & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 0 & 0\cr
|
||||
A104 & Abbw_{D1,A104} & 0 & 0 & 1 & 1 & 0 & 0 & 0 & 0 & 1}
|
||||
*
|
||||
\bordermatrix{\text{} & count\cr
|
||||
D1 & 3\cr
|
||||
D2 & 2\cr
|
||||
D3 & 3\cr
|
||||
D4 & 1\cr
|
||||
D5 & 1\cr
|
||||
D6 & 1\cr
|
||||
D7 & 2\cr
|
||||
D8 & 0\cr
|
||||
D9 & 2\cr
|
||||
D10 & 0}
|
||||
=
|
||||
\bordermatrix{\text{} & count\cr
|
||||
A12 & 5\cr
|
||||
AA & 5\cr
|
||||
A104 & 5}
|
||||
\end{equation}
|
||||
Durch l"osen des LGS erh"alt man die Abbiegewahrscheinlichkeiten der einzelnen Sensoren. Diese Abbiegewahrscheinlichkeiten entsprechen dabei dem exakten Abbiegeverhalten der Verkehrsteilnehmer "uber dem Messinverall. Die f"ur dieses Beispiel bestimmten Abbiegewahrscheinlichkeiten sind
|
||||
$Abbw_{D1,A4} = 1/3$ und $Abbw_{D1,A104} = 2/3$.\\ \\
|
||||
Nachfolgend ein Beispiel einer Kreuzung, der A4 (siehe \autoref{abb:a4}), welche an einer Stelle eine Validierung zul"asst.
|
||||
\begin{figure}[htbp!]
|
||||
\centering
|
||||
\fbox{\includegraphics[width=0.5\textwidth-2\fboxsep-2\fboxrule]{ext/KreuzungA4}}
|
||||
\caption{Kreuzung A4}
|
||||
\label{abb:a4}
|
||||
\end{figure}
|
||||
Der Sensor \textit{IR21} kann partiell durch den Sensor \textit{D22} validiert werden. Da die Fahrzeuge "uber den Sensor \textit{IR21} in genau zwei Richtungen fahren k"onnen, kann der Fluss eindeutig bestimmt werden und es kann f"ur jeden Datensatz berechnet werden wie viele Fahrzeuge, welche "uber den Sensor \textit{IR21} gefahren sind, nach rechts abgebogen, und wie viele geradeaus gefahren sind. Die Abbiegewahrscheinlichkeiten f"ur den Sensor \textit{IR21} berechnen sich wie folgt:
|
||||
\begin{equation}
|
||||
Abbw_{IR21,A23} = D22.count / IR21.count
|
||||
\end{equation}
|
||||
\begin{equation}
|
||||
Abbw_{IR21,A3} = (IR21.count - D22.count) / IR21.count
|
||||
\end{equation}
|
||||
Es l"asst sich ebenfalls die Anzahl der Fahrzeuge bestimmen, welche über den Sensor \textit{IR21} in die entsprechende Richtung gefahren sind:
|
||||
\begin{equation}
|
||||
Out_{IR21,A23} = D22.count
|
||||
\end{equation}
|
||||
\begin{equation}
|
||||
Out_{IR21,A3} = (IR21.count - D22.count)
|
||||
\end{equation}
|
||||
Der flächendeckende Einsatz von Validierungssensoren würde sowohl das genaue bestimmen des Abbiegeverhaltens, als auch die genaue Berechnung der Verkehrsströme innerhalb von Kreuzungen erlauben. Da dies nicht der Fall ist wird mit den gemittelten Abbiegewahrscheinlichkeiten gearbeitet - das Ergebnis ist entsprechend ungenauer.
|
||||
\newpage
|
||||
@ -1,5 +1,5 @@
|
||||
\section{Datenbasis}\label{sec:daten}
|
||||
In diesem Kapitel werden die Verkehrsdaten, die f"ur diese Arbeit zur Verf"ugung standen, erklärt und erläutert, wie diese aufbereitet wurden. Die Aufbereitung der Daten dient der Modellierung des Verkehrssystems. Es wird im Kapitel \autoref{sec:modell} n"aher beschrieben. Dabei standen die Sensordaten der Induktionsschleifen, gemittelte Abbiegewahrscheinlichkeiten an den einzelnen Sensoren, sowie CAD-Zeichnungen der Kreuzungen zur Verfügung. Induktionsschleifenwerte und Abbiegewahrscheinlichkeiten werden für die Berechnung von Verkehrswerten verwendet (siehe Kapitel \ref{sec:berechnung}).
|
||||
In diesem Kapitel werden die Verkehrsdaten, die f"ur diese Arbeit zur Verf"ugung standen, erkl"art und erl"autert, wie diese aufbereitet wurden. Die Aufbereitung der Daten dient der Modellierung des Verkehrssystems. Es wird im Kapitel \autoref{sec:modell} n"aher beschrieben. Dabei standen die Sensordaten der Induktionsschleifen, gemittelte Abbiegewahrscheinlichkeiten an den einzelnen Sensoren, sowie CAD-Zeichnungen der Kreuzungen zur Verf"ugung. Induktionsschleifenwerte und Abbiegewahrscheinlichkeiten werden f"ur die Berechnung von Verkehrswerten verwendet (siehe Kapitel \ref{sec:berechnung}).
|
||||
\subsection{Induktionsschleifenwerte}\label{sec:daten:inductvalues}
|
||||
F"ur die Untersuchungen dieser Arbeit stellte die Stadt Darmstadt die Werte der in der Stadt verbauten Induktionsschleifen zur Verf"ugung. Die Daten werden \textit{live} gemessen, und f"ur die adaptive Ampelsteuerung eingesetzt. F"ur diese Arbeit standen allerdings nur Daten zur Verf"ugung, die "uber einen Zeitraum von einer Minute gemessen wurden. Die Induktionsschleifen liefern die Werte \textit{count} und \textit{load}. Sie geben Auskunft "uber die Anzahl der Autos, welche den Sensor innerhalb des Messintervalls von einer Minute passiert haben (\textit{count}) und wie lange dieser Sensor innerhalb des Intervalls belegt war (\textit{load}). Die Induktionsschleifen sind dabei fast ausschlie"slich an den Kreuzungseing"angen in den Stra"sen verbaut. Daten werden "uber ein fest definiertes Intervall von einer Minute erhoben.\\ \\
|
||||
Der \textit{load}-Wert gibt dabei an, wieviel Prozent des Messintervalls vom Sensor als belegt erkannt wurde. Es handelt sich folglich um einen Gleitkomma-Wert zwischen 0 und 1. Der \textit{count}-Wert repr"asentiert die Anzahl der Autos, welche den Sensor innerhalb des Messintervalls passiert haben. Es handelt sich folglich um eine ganze nat"urlich Zahl, einschlie"slich der Null, falls der Sensor im Intervall nicht passiert wurde.\\ \\
|
||||
@ -86,7 +86,7 @@ In diesem Kapitel werden die Verkehrsdaten, die f"ur diese Arbeit zur Verf"ugung
|
||||
'A104','A 23','A 28',
|
||||
'A 29','A 3','A 4','A 5')
|
||||
AND SD.CROSSROAD_ID = CD.ID) AS sensors,
|
||||
`jee_traf?clight_rawevents` AS raw
|
||||
`jee_trafficlight_rawevents` AS raw
|
||||
WHERE sensors.CR_NAME = raw.CROSSROAD
|
||||
AND raw.DATETIME IN ('2013-07-13 13:00:00','2013-07-13 13:01:00')
|
||||
AND sensors.CSVOFFSET = raw.CSVOFFSET
|
||||
@ -109,7 +109,7 @@ In diesem Kapitel werden die Verkehrsdaten, die f"ur diese Arbeit zur Verf"ugung
|
||||
Die Einbahnstra"se verl"auft dabei von Kreuzung A29 nach A104. Sie verspricht eine einfachere Berechnung von Verkehrswerten, da eine Kreuzung mit einer Einbahnstra"se nur drei Kreuzungsein- und -ausg"ange hat, im Gegensatz zu einer \textit{normalen} Kreuzung mit jeweils vier Ein- und Ausg"angen. Mischspuren sind dagegen hinderlich f"ur die Berechnung, da ihr gemessener Wert, im Gegensatz zu Einspursensoren, nicht direkt einem Ausgang zugeordnet werden kann.
|
||||
Eine genaue Untersuchung von Ein- und Mischspursensoren und wie mit diese verfahren werden muss, um Verkehrswerte zu berechnen, ist im Kapitel \ref{sec:berechnung} zu finden.
|
||||
\subsection{CAD-Zeichnungen der Kreuzungen}\label{sec:daten:cad}
|
||||
Es stehen au"serdem die CAD-Zeichnungen[gls:cad] der Kreuzungen der Stadt Darmstadt zur Verf"ugung. Diese CADs wurden im Rahmen der Kooperation der Arbeit von \textsc{C. M"uller}\cite{thesis:mueller} der TU-Darmstadt von der Stadt Darmstadt zur Verf"ugung gestellt\footnote{Die CAD-Bilder sind unter \url{http://www.da-sense.de/trafficdata/information.php} zu erhalten}. Sie geben Aufschluss, an welcher Stelle ein Sensor in der Stra"sendecke verbaut ist und wei"st dessen kreuzungsinternen Namen aus, der zur Identifizierung des Sensors ben"otigt wird. Die CAD-Zeichnungen dienen der händischen Modellierung des Stra"senmodells, sowie der Identifizierung der Sensoren und der Zuordnung ihrer Sensorklasse. So sind in den CAD-Zeichnungen die Fahrspuren und deren erlaubte Flie"srichtung markiert. Aufgrund dessen konnte eine Zuordnung von Sensoren nach ihrer Klasse, Einspursensor oder Mischspursensor, vorgenommen werden.
|
||||
Es stehen au"serdem die CAD-Zeichnungen[gls:cad] der Kreuzungen der Stadt Darmstadt zur Verf"ugung. Diese CADs wurden im Rahmen der Kooperation der Arbeit von \textsc{C. M"uller}\cite{thesis:mueller} der TU-Darmstadt von der Stadt Darmstadt zur Verf"ugung gestellt\footnote{Die CAD-Bilder sind unter \url{http://www.da-sense.de/trafficdata/information.php} zu erhalten}. Sie geben Aufschluss, an welcher Stelle ein Sensor in der Stra"sendecke verbaut ist und wei"st dessen kreuzungsinternen Namen aus, der zur Identifizierung des Sensors ben"otigt wird. Die CAD-Zeichnungen dienen der h"andischen Modellierung des Stra"senmodells, sowie der Identifizierung der Sensoren und der Zuordnung ihrer Sensorklasse. So sind in den CAD-Zeichnungen die Fahrspuren und deren erlaubte Flie"srichtung markiert. Aufgrund dessen konnte eine Zuordnung von Sensoren nach ihrer Klasse, Einspursensor oder Mischspursensor, vorgenommen werden.
|
||||
Des Weiteren wurden mithilfe der CAD-Zeichnungen die Verbindungen von Sensor zum virtuellem Kreuzungsausgangsknoten manuell in der Datenbank vermerkt, um den, im Kapitel\autoref{sec:modell} entwickelten, Graphen aufzuspannen. Die CAD-Zeichnungen der Kreuzungen der \textit{Ministadt} sind dem Anhang beigef"ugt (siehe Anhang \ref{anhang:a3}).
|
||||
\subsection{Abbiegewahrscheinlichkeiten}\label{sec:datengrund:abbw}
|
||||
Von der Stadt Darmstadt wurden neben den Sensorwerten, gemittelte Abbiegewahrscheinlichkeiten f"ur einige der Induktionsschleifen zur Verf"ugung gestellt. Sie werden f"ur die Berechnung von Verkehrsfl"ussen bei Mischspursensoren ben"otigt. Die Abbiegewahrscheinlichkeiten eines Sensors beschreiben dabei wie viel Prozent des Verkehrs, der "uber den Sensor flie"st, zu dem jeweiligen Ausgang der Kreuzung flie"sen wird. N"aheres ist im Kapitel \autoref{sec:berechnung} zu finden. Diese Daten wurden mit Hilfe von Video"uberwachung der zu untersuchenden Kreuzungen, f"ur die Planungsabteilung des Stra"senverkehrs- und Tiefbauamtes der Stadt Darmstadt ermittelt. Alle Werte sind dabei "uber die gesamten Messungen gemittelt und liegen in PDF-Format f"ur die beiden Teile der Stadt, Nord und S"ud, vor (siehe Anhang \ref{abb:abbwnorth} \ref{abb:abbwsouth}).\\ \\
|
||||
|
||||
@ -15,9 +15,9 @@ F"ur diese Aufgabe stehen die Sensordaten von den Ampelanlagen der Stadt Darmsta
|
||||
\caption{"Ubersicht "uber das entworfene Softwaresystem}
|
||||
\label{abb:system}
|
||||
\end{figure}
|
||||
Die generische Modellierung des Verkehrssystems wurde in Zusammenarbeit mit \textsc{M. Scholz}\cite{thesis:michael} entworfen, der dieses Modell ebenfalls f"ur seine Bachelor Thesis\cite{thesis:michael} verwendet. In \autoref{abb:system} ist eine "Ubersicht "uber die verschiedenen Teile der entwickelten Verkehrssimulation und den daf"ur implementierten Softwareteilen zu finden. Das System ist grob in drei Teile zu unterteilen. Die Datengrundlage, die Modellierung (einschließlich Visualisierung) des Verkehrssystems , sowie die Berechnungen, die auf diesem Modell durchgeführt werden. Wei"s hinterlegt werden die Datengrundlagen dargestellt. Systemteile, welche im Rahmen der Bachelor Arbeit von \textsc{M. Scholz} entstanden sind werden blau, solche die im Rahmen dieser Arbeit implementiert wurden gr"un dargestellt. Das Datenbankschema und die Modellierung des Verkehrssystem als Graph wurde in Zusammenarbeit entwickelt und wird mit einer Mischfarbe aus blau und gr"un aufgezeigt.\\ \\
|
||||
Eine Beschreibung der verkehrstechnischen Grundlagen ist in Kapitel \ref{sec:grundlagen} zu finden. Die in der \autoref{abb:system} abgebildeten Grundlage, die Daten der Induktionsschleifen der Stadt Darmstadt, werden im Kapitel \ref{sec:daten} beschrieben. Daf"ur wird auf die von \textsc{C. M"uller} entworfene JEE6 Anwendung zur Bereitstellung von Verkehrsdaten\cite{thesis:mueller} zur"uckgegriffen, die die Daten der Stadt Darmstadt bereits aufbereitet hat. Das entwickelte Graphen-basierte Zweistufenmodell f"ur Kreuzungen und zwischen den Kreuzungen wird in Kapitel \ref{sec:modell} vorgestellt. Es modelliert neben den Induktionsschleifen sog. \textit{virtuelle Sensoren}, f"ur die keine Sensorwerte vorliegen. Das Datenbankschema f"ur die, in \autoref{abb:system} abgebildete Datenbank, sowie die Implementierung des Verkehrsmodells mithilfe der Java-Bibliothek \textit{JGraphT} werden in einzelnen Unterkapiteln behandelt. In Kapitel \ref{sec:berechnung} wird beschrieben wie anhand dieses Modells ein Verkehrsfluss aus den Kreuzungen heraus, bzw. in die Kreuzung hinein, berechnet werden kann. Daf"ur werden verschiedene Ans"atze diskutiert und eine L"osung mithilfe linearer Gleichungssysteme vorgestellt, um Verkehrswerte f"ur \textit{virtuelle Sensoren} zu berechnen. Durch übertragen dieser Werte auf das zweite, ungenauere Modell konnten auch Vorhersagen f"ur Fl"usse zwischen zwei Kreuzungen gemacht werden. Grundlage dieser Berechnungen sind Matrizenmultiplikationen, die in dieser Arbeit direkt am entwickelten Graphen berechnet werden. Des weiteren wird untersucht inwieweit der Verkehr anhand der gegebenen Daten vorhergesagt werde kann. Die Ergebnisse und das Modell werden auf ihre G"ultigkeit hin im Kapitel \autoref{sec:validierung} "uberpr"uft. Hierf"ur wurde eine Verkehrsz"ahlung vorgenommen, um die berechneten Daten "uberpr"ufen zu k"onnen. Dabei wurde festgestellt, dass die, auf den Stra"sen verbaute Sensorik in sehr unterschiedlicher Qualit"at messen. Im Kapitel \ref{sec:visualisierung} werden daraufhin zwei computergest"utzte Visualisierungen des Modells, die im Rahmen dieser Arbeit entwickelt wurden, anhand des gew"ahlten Ausschnitts des Stra"sennetz der Stadt Darmstadt erl"autert. Abschlie"send werden die Ergebnisse dieser Arbeit in Kapitel \ref{sec:ausblick} zusammengefasst und ein Ausblick gegeben, wie sich die errechneten Werte und das entwickelte Modell weiter verbessern lassen.\\ \\
|
||||
Grundlage dieser Arbeit ist insbesondere die Arbeit \textit{Modelling Freeway Traffic with Coupled HMMs} \cite{paper:kwonmurphy}, welche eine Modellierung von Verkehr auf Schnellstra"sen anhand von Induktionsschleifen vornimmt und mit Hilfe eines \textit{gekoppelten Hidden Markov Modells} die Geschwindigkeit von Verkehrsteilnehmer vorhersagt. Diese Modell eignet sich allerdings nicht für ein innerstädtisches Verkehrssystem, da die Straßen Kreuzungen aufweisen, im Gegensatz zu Autobahnen. Die Arbeit \cite{thesis:lehnhoff} erwies sich als hilfreich zur Validierung. So konnten die dort befundenen Sensorungenauigkeiten best"atigt werden.\\ \\
|
||||
Die generische Modellierung des Verkehrssystems wurde in Zusammenarbeit mit \textsc{M. Scholz}\cite{thesis:michael} entworfen, der dieses Modell ebenfalls f"ur seine Bachelor Thesis\cite{thesis:michael} verwendet. In \autoref{abb:system} ist eine "Ubersicht "uber die verschiedenen Teile der entwickelten Verkehrssimulation und den daf"ur implementierten Softwareteilen zu finden. Das System ist grob in drei Teile zu unterteilen. Die Datengrundlage, die Modellierung (einschlie"slich Visualisierung) des Verkehrssystems , sowie die Berechnungen, die auf diesem Modell durchgef"uhrt werden. Wei"s hinterlegt werden die Datengrundlagen dargestellt. Systemteile, welche im Rahmen der Bachelor Arbeit von \textsc{M. Scholz} entstanden sind werden blau, solche die im Rahmen dieser Arbeit implementiert wurden gr"un dargestellt. Das Datenbankschema und die Modellierung des Verkehrssystem als Graph wurde in Zusammenarbeit entwickelt und wird mit einer Mischfarbe aus blau und gr"un aufgezeigt.\\ \\
|
||||
Eine Beschreibung der verkehrstechnischen Grundlagen ist in Kapitel \ref{sec:grundlagen} zu finden. Die in der \autoref{abb:system} abgebildeten Grundlage, die Daten der Induktionsschleifen der Stadt Darmstadt, werden im Kapitel \ref{sec:daten} beschrieben. Daf"ur wird auf die von \textsc{C. M"uller} entworfene JEE6 Anwendung zur Bereitstellung von Verkehrsdaten\cite{thesis:mueller} zur"uckgegriffen, die die Daten der Stadt Darmstadt bereits aufbereitet hat. Das entwickelte Graphen-basierte Zweistufenmodell f"ur Kreuzungen und zwischen den Kreuzungen wird in Kapitel \ref{sec:modell} vorgestellt. Es modelliert neben den Induktionsschleifen sog. \textit{virtuelle Sensoren}, f"ur die keine Sensorwerte vorliegen. Das Datenbankschema f"ur die, in \autoref{abb:system} abgebildete Datenbank, sowie die Implementierung des Verkehrsmodells mithilfe der Java-Bibliothek \textit{JGraphT} werden in einzelnen Unterkapiteln behandelt. In Kapitel \ref{sec:berechnung} wird beschrieben wie anhand dieses Modells ein Verkehrsfluss aus den Kreuzungen heraus, bzw. in die Kreuzung hinein, berechnet werden kann. Daf"ur werden verschiedene Ans"atze diskutiert und eine L"osung mithilfe linearer Gleichungssysteme vorgestellt, um Verkehrswerte f"ur \textit{virtuelle Sensoren} zu berechnen. Durch "ubertragen dieser Werte auf das zweite, ungenauere Modell konnten auch Vorhersagen f"ur Fl"usse zwischen zwei Kreuzungen gemacht werden. Grundlage dieser Berechnungen sind Matrizenmultiplikationen, die in dieser Arbeit direkt am entwickelten Graphen berechnet werden. Des weiteren wird untersucht inwieweit der Verkehr anhand der gegebenen Daten vorhergesagt werde kann. Die Ergebnisse und das Modell werden auf ihre G"ultigkeit hin im Kapitel \autoref{sec:validierung} "uberpr"uft. Hierf"ur wurde eine Verkehrsz"ahlung vorgenommen, um die berechneten Daten "uberpr"ufen zu k"onnen. Dabei wurde festgestellt, dass die, auf den Stra"sen verbaute Sensorik in sehr unterschiedlicher Qualit"at messen. Im Kapitel \ref{sec:visualisierung} werden daraufhin zwei computergest"utzte Visualisierungen des Modells, die im Rahmen dieser Arbeit entwickelt wurden, anhand des gew"ahlten Ausschnitts des Stra"sennetz der Stadt Darmstadt erl"autert. Abschlie"send werden die Ergebnisse dieser Arbeit in Kapitel \ref{sec:ausblick} zusammengefasst und ein Ausblick gegeben, wie sich die errechneten Werte und das entwickelte Modell weiter verbessern lassen.\\ \\
|
||||
Grundlage dieser Arbeit ist insbesondere die Arbeit \textit{Modelling Freeway Traffic with Coupled HMMs} \cite{paper:kwonmurphy}, welche eine Modellierung von Verkehr auf Schnellstra"sen anhand von Induktionsschleifen vornimmt und mit Hilfe eines \textit{gekoppelten Hidden Markov Modells} die Geschwindigkeit von Verkehrsteilnehmer vorhersagt. Diese Modell eignet sich allerdings nicht f"ur ein innerst"adtisches Verkehrssystem, da die Stra"sen Kreuzungen aufweisen, im Gegensatz zu Autobahnen. Die Arbeit \cite{thesis:lehnhoff} erwies sich als hilfreich zur Validierung. So konnten die dort befundenen Sensorungenauigkeiten best"atigt werden.\\ \\
|
||||
|
||||
\cite{thesis:elfers}
|
||||
\cite{book:bosserhoff}
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
\section{Grundlagen}\label{sec:grundlagen}
|
||||
In diesem Kapitel werden die Grundlagen der Verkehrstechnik und -modellierung beschrieben, die benötigt werden um den in den darauffolgenden Kapiteln beschriebenen Sachverhalt zu verstehen. Zum einen wird das Funktionsprinzip von Induktionsschleifen erkl"art, welche die, f"ur diese Arbeit verwendeten, Daten messen. Zum anderen wird auf die Verwendung der Induktionsschleifen f"ur eine adaptive Ampelsteuerung eingegangen. Ein Abschnitt "uber Makro- und Mikromodellierung umrei"st die verschiedenen Verkehrssimulationsans"atze.
|
||||
In diesem Kapitel werden die Grundlagen der Verkehrstechnik und -modellierung beschrieben, die ben"otigt werden um den in den darauffolgenden Kapiteln beschriebenen Sachverhalt zu verstehen. Zum einen wird das Funktionsprinzip von Induktionsschleifen erkl"art, welche die, f"ur diese Arbeit verwendeten, Daten messen. Zum anderen wird auf die Verwendung der Induktionsschleifen f"ur eine adaptive Ampelsteuerung eingegangen. Ein Abschnitt "uber Makro- und Mikromodellierung umrei"st die verschiedenen Verkehrssimulationsans"atze.
|
||||
\subsection {Induktionsschleifen}\label{sec:grundlagen:induct}
|
||||
Eine Induktionsschleife ist ein, in die Fahrbahndecke integrierter Sensor, der dem Messen des Verkehr dient. Er macht sich das Prinzip der elektromagnetischen Induktion zur Nutze, um metallische Objekte zu detektieren. Hierf"ur werden Kabelschleifen in die Fahrbahndecke eingelassen, parallel zu einem Kondensator geschaltet und mit einem Oszillator verbunden. Die Konstruktion aus Kondensator und Spule, der Induktionsschleife, wird Schwingkreis genannt. Durch Anlegen eines konstanten Gleichstroms erzeugen die Kabelschleifen ein Magnetfeld auf der Stra"se, welches sich ver"andert, wenn ein Fahrzeug darauf steht oder dar"uber f"ahrt. Diese "Anderung ist an einer ge"anderten Resonanzfrequenz mithilfe des Oszillators messbar. Die Resonanzfrequenz berechnet sich nach der Formel \ref{form:resonanzfrequenz} aus der Induktivit"at der Induktionsschleife und der Kapazit"at des Kondensators.
|
||||
\begin{equation}\label{form:resonanzfrequenz}
|
||||
@ -11,11 +11,11 @@ In diesem Kapitel werden die Grundlagen der Verkehrstechnik und -modellierung be
|
||||
\centering
|
||||
\subfigure[Induktionsschleife mit Kabel nach Abfr"asen der Fahrbahn. Quelle: wikipedia.org]{\includegraphics[width=0.3\textwidth-2\fboxsep-2\fboxrule]{pic/800px-Induktionsschleife}}
|
||||
\label{abb:induktfraese}
|
||||
\subfigure[Schematischer Aubau einer Induktionsschleife Quelle: \cite{thesis:mazur}.]{\includegraphics[width=0.5\textwidth-2\fboxsep-2\fboxrule]{pic/induktionsschleife-schema}}
|
||||
\subfigure[Schematischer Aubau einer Induktionsschleife. [Abbildung entnommen aus \cite{thesis:mazur}, S.7]{\includegraphics[width=0.5\textwidth-2\fboxsep-2\fboxrule]{pic/induktionsschleife-schema}}
|
||||
\label{abb:inductschema}
|
||||
\caption{Induktionsschleife}
|
||||
\end{figure}
|
||||
Wie bei jedem Sensor sind die Messungen unter Vorbehalt von Fehlern zu betrachten. In der Arbeit von \cite{thesis:lehnhoff} wurden die Induktionsschleifen des Stadtgebiets von Hannover untersucht und festgestellt, dass es sehr starke Unterschiede der Messgenauigkeit unter den Sensoren gibt. So wird in dieser Arbeit festgestellt, dass bei nur einem Drittel der Sensoren eine Messgenauigkeit von 90\% erreicht wird w"ahrend ein anderer, ebenso großer Teil, eine Genauigkeit von unter 40\% aufweist. Laut dem Merkblatt zu Detektoren f"ur den Stra"senverkehr \cite{merk:street} wird f"ur Messfehler von Induktionsschleifen zwischen vier Fehlertypen unterschieden:
|
||||
Wie bei jedem Sensor sind die Messungen unter Vorbehalt von Fehlern zu betrachten. In der Arbeit von \cite{thesis:lehnhoff} wurden die Induktionsschleifen des Stadtgebiets von Hannover untersucht und festgestellt, dass es sehr starke Unterschiede der Messgenauigkeit unter den Sensoren gibt. So wird in dieser Arbeit festgestellt, dass bei nur einem Drittel der Sensoren eine Messgenauigkeit von 90\% erreicht wird w"ahrend ein anderer, ebenso gro"ser Teil, eine Genauigkeit von unter 40\% aufweist. Laut dem Merkblatt zu Detektoren f"ur den Stra"senverkehr \cite{merk:street} wird f"ur Messfehler von Induktionsschleifen zwischen vier Fehlertypen unterschieden:
|
||||
\begin{enumerate}
|
||||
\item{Zeitlich bedingte Messfehler}
|
||||
\item{R"aumliche Messfehler}
|
||||
@ -35,7 +35,7 @@ In diesem Kapitel werden die Grundlagen der Verkehrstechnik und -modellierung be
|
||||
\begin{figure} \label{abb:verkehrsmanagement}
|
||||
\centering
|
||||
\includegraphics[width=0.5\textwidth]{pic/verkehrsmanagement}
|
||||
\caption{Aufgaben und System des Verkehrsmanagements\cite{thesis:lehnhoff}}
|
||||
\caption{Aufgaben und System des Verkehrsmanagements. [Abbildung Entnommen aus \cite{thesis:lehnhoff},S.7]}
|
||||
\end{figure}
|
||||
Durch eine solche Ampelsteuerung verk"urzt sich die Haltezeit von Fahrzeugen und sorgt f"ur einen fl"ussigeren Verkehr, im Vergleich zu einer sog. Festzeitsteuerung\cite{paper:adaptiv}, welche die Ampel nach fest definierten Ampelphasen schaltet. Dies begr"undet sich darin, dass die adaptive Ampelschaltung eine Spur nur dann freischaltet, wenn diese von einem Fahrzeug, detektiert mit Hilfe des Sensor in der Stra"se, ben"otigt wird. Es besteht au"serdem die M"oglichkeit, die Ampelphase so lange zu verl"angern, bis eine L"ucke in der Fahrzeugkolonne erkannt wird, um einen Zug von Fahrzeugen "uber die Kreuzung zu lassen. Werden die Induktionsschleifen an den Haltelinien einer Kreuzung verbaut, k"onnen sie au"serdem verwendet werden, um Rotlichtverst"o"se automatisch zu erkennen.\\ \\
|
||||
Die Steuerung der Ampelanlagen ist ein Teil des Verkehrsmanagement (siehe \autoref{abb:verkehrsmanagement}). Sie ist f"ur viele andere Bereiche der Verkehrstechnik von gro"sem Interesse, da die Ampeln Sensordaten liefern, die vielf"altig verwendet werden k"onnen. Ein Beispiel der Verwendung ist diese Arbeit, die aus den erfassten Induktionsschleifenwerten Verkehrsfl"usse berechnet.
|
||||
|
||||
@ -4,7 +4,7 @@ F"ur die Entwicklung des Modells wurden zuerst h"andisch Zeichnungen der zehn un
|
||||
In der Industrie eingesetzte Software zur Berechnung und Modellierung von Verkehrsfl"ussen, verwenden meistens ein sog. mikroskopisches Modell des Verkehrs\footnote{vgl. VISSIM \url{http://www.vissim.de/}}, um die Interaktion der einzelnen Verkehrsteilnehmer modellieren zu k"onnen. Da die Sensorwerte, welche zur Verf"ugung stehen, allerdings "uber einen Zeitraum von einer Minute aufgenommen werden, eignet sich eine Mikromodellierung des Verkehrs nicht. F"ur einen solchen Modellierungsansatz sind genauere und mehr Daten notwendig. Es stehen lediglich Messwerte von 178 Sensoren auf dem untersuchten Gebiet zur Verf"ugung. Eine Modellierung einzelner Fahrzeuge erscheint deshalb, allein anhand der Induktionsschleifen, nicht m"oglich zu sein.\\ \\
|
||||
In dieser Arbeit wird eine Zweistufenmodellierung vorgestellt, welche f"ur Kreuzungen eine genauere Modellierung auf Sensorebene zul"asst, w"ahrend es zwischen den Kreuzungen ein ungenauere Modellierung vornimmt. Dies ist sinnvoll, da nur im Kreuzungsbereich Sensoren zur Verf"ugung stehen. Kleinere Kreuzungen und Stra"senz"uge sind nicht mit Sensoren best"uckt und aus diesem Grund kann keine qualifiziert Aussage "uber diese gemacht werden. Sie werden aus diesem Grund nicht explizit modelliert. Die Modellierung verfolgt dabei einen makroskopischen Ansatz und ist den Prognosemodellen zuzuordnen\cite{lect:simumod}.\\
|
||||
Die Grundannahme f"ur das Modell ist, dass sich die Verkehrsteilnehmer an die Stra"senverkehrsordnung halten, da nur verkehrsg"ultige Verbindungen zwischen und innerhalb von Kreuzungen modelliert werden. Die beschriebene Modellierung kann dabei nicht jedes Verkehrsverhalten beschreiben. So kann beispielsweise der R"uckfluss von Autos, welche eine sog. \textit{U-Turn} an einer Kreuzung vollf"uhren, nicht mit dem entwickelten Modell modelliert werden. Eine genaue Beschreibung der Herausforderung des Modells ist am Ende dieses Kapitels zu finden.\\ \\
|
||||
Um ein Verkehrsmodell zu entwickeln muss zuerst festgelegt werden, welche Art des Verkehrs modelliert werden soll. Da die Induktionsschleifen, welche Grundlage der Berechnung sind, nicht jedes Stra"senfahrzeug detektieren k"onnen, werden nur solche modelliert, welche die Sensoren erkennen k"onnen (keine Fahrräder). Das Modell wurde zusammen mit \textsc{M. Scholz} \cite{thesis:michael} entwickelt, der mit Hilfe dieses Modells Abbiegewahrscheinlichkeiten f"ur einzelne Sensoren berechnet(siehe Kapitel \ref{sec:daten}).\\ \\
|
||||
Um ein Verkehrsmodell zu entwickeln muss zuerst festgelegt werden, welche Art des Verkehrs modelliert werden soll. Da die Induktionsschleifen, welche Grundlage der Berechnung sind, nicht jedes Stra"senfahrzeug detektieren k"onnen, werden nur solche modelliert, welche die Sensoren erkennen k"onnen (keine Fahrr"ader). Das Modell wurde zusammen mit \textsc{M. Scholz} \cite{thesis:michael} entwickelt, der mit Hilfe dieses Modells Abbiegewahrscheinlichkeiten f"ur einzelne Sensoren berechnet(siehe Kapitel \ref{sec:daten}).\\ \\
|
||||
\subsection{H"andische Modellierung der Ministadt}\label{sec:modell:ministadt}
|
||||
Die \textit{Ministadt}, der gew"ahlte geographische Ausschnit (siehe \ref{sec:daten:geo}), enth"alt zehn mit Sensoren best"uckte Kreuzungen. Diese Kreuzungen werden mit A3, A4, A5, A12, A23, A28, A29, A46, A59 und A104 bezeichnet. Die Bezeichnungen stammten dabei aus der CAD-"Ubersichtskarte (siehe Anhang \ref{abb:caddarmstadt}) der Stadt Darmstadt. Eine genaue Beschreibung des gew"ahlten geographischen Ausschnitts ist in Kapitel \autoref{sec:daten} zu finden.\\ \\
|
||||
Um eine "Ubersicht "uber das zu betrachtende Gebiet der \textit{Ministadt} zu erhalten wurde eine "Ubersicht "uber alle Kreuzungen in dem gesamten betrachteten Gebiet erstellt. In dieser Modellierung entfallen alle Seitenstra"sen und Zwischenkreuzungen ohne Sensoren. Die Zwischenkreuzungen entfallen, da keinerlei Messdaten f"ur diese Kreuzungen vorhanden sind, weshalb die Kreuzungs"ubersicht eine Abstraktion des Verkehrsnetzes darstellt. Es werden dabei nur sensorbest"uckte Kreuzungen aufgezeigt.\\
|
||||
@ -78,7 +78,7 @@ Um ein Verkehrsmodell zu entwickeln muss zuerst festgelegt werden, welche Art de
|
||||
\item{Sensor: Eine Induktionsschleife, welche Verkehrswerte misst.}
|
||||
\item{Virtueller Sensor: F"ur jede Richtung der Kreuzung wird jeweils ein virtueller Ausgang und Eingang angenommen.}
|
||||
\end{itemize}
|
||||
Es liegt nahe, Stra"sen als Kanten und Sensoren, sowie virtuelle Sensoren, als Knoten zu modellieren. Es wird festgelegt, dass zwischen Kreuzungsein- und -Ausgang genau ein Sensor liegen muss. Dieser kann allerdings ebenfalls ein virtueller Sensor sein, wenn keine Sensorwerte f"ur den entsprechende Fahrspur zu Verfügung stehen. Ein Sensor wird dabei einer Eingangsfahrspur zugeordnet, wenn dieser vor der entsprechenden Haltelinie verbaut ist.\\ \\
|
||||
Es liegt nahe, Stra"sen als Kanten und Sensoren, sowie virtuelle Sensoren, als Knoten zu modellieren. Es wird festgelegt, dass zwischen Kreuzungsein- und -Ausgang genau ein Sensor liegen muss. Dieser kann allerdings ebenfalls ein virtueller Sensor sein, wenn keine Sensorwerte f"ur den entsprechende Fahrspur zu Verf"ugung stehen. Ein Sensor wird dabei einer Eingangsfahrspur zugeordnet, wenn dieser vor der entsprechenden Haltelinie verbaut ist.\\ \\
|
||||
Der Graph l"asst sich mit dem Tupel $(V, E)$ beschreiben, wobei $V$ die Menge der virtuellen und realen Sensoren bezeichnet. $E$ bezeichnet gerichtete Kanten, die zwischen den Knoten bestehen. Eine Kante bezeichnet dabei die verkehrsg"ultige Verbindung zwischen zwei Knoten. Weiterhin gilt $E(V_1,V_2)$ nur, falls entweder $V_1$ oder $V_2$ ein Kreuzungsaus- bzw. -Eingang ist. F"ur Kreuzungen mit sog. Validierungssensoren gilt dies nicht, da die Validierungssensoren zwischen Sensor und Kreuzungsausgang in dem Graphen liegen. Aus diesem Grund werden f"ur das entwickelte Modell die Validierungssensoren nicht mit abgebildet. Im Kapitel \autoref{sec:berechnung} wird nochmals n"aher darauf eingegangen, wie diese Sensoren zur L"osung eines Gleichungssystems, um Abbiegewahrscheinlichkeiten auf einer Kreuzung zu berechnen, verwendet werden k"onnen.\\ \\
|
||||
Da fast alle betrachteten Kreuzungen der Stadt Darmstadt nur einen Sensor zwischen Ein- und entsprechenden Ausgang haben, ist das entwickelten Modell auf die meisten Kreuzungen, ohne das Weglassen von Sensoren, anzuwenden.
|
||||
\subsubsection{Kreuzungs"ubersichtsgraph} \label{sec:modell:graph:overview}
|
||||
@ -193,11 +193,11 @@ Um ein Verkehrsmodell zu entwickeln muss zuerst festgelegt werden, welche Art de
|
||||
\item{F"ur virtuelle Sensoren der Aus- und Eing"ange einer Kreuzung, der Name der vorhergehenden bzw. nachfolgenden Kreuzung.}
|
||||
\end{itemize}
|
||||
Dabei ist eine ID ein eindeutiges Merkmal des Sensors. Der Sensorname dagegen ist nur innerhalb einer Kreuzung eindeutig. So ist auf Kreuzung A4\ref{anhang:a4} ein Sensor D11 zu finden, sowie auf Kreuzung A5\ref{anhang:a5} einer mit dem selben Namen. Dementsprechend sind Verkn"upfungen unter den Sensoren "uber die Sensor ID identifiziert. Diese Verkn"upfungen werden "uber die Felder \textit{toSensorLeftID}, \textit{toSensorStraightID} und \textit{toSensorRightID} modelliert und erlauben es den Graphen aufzubauen. Verbindungen zwischen Knoten werden dabei in Verkehrsflussrichtung gespeichert. In der Spalte \textit{sensorType} wird der Type des Sensors gespeichert. Eine zus"atzliche Tabelle erlaubt es Einzelheiten zu den einzelnen Sensortypen zu definieren. In dieser Arbeit wird nur auf die beiden Sensortypen \textit{virtueller Sensor} und \textit{realer Sensor} zur"uckgegriffen. Die Datenbankstruktur erlaubt es allerdings durch hinzuf"ugen einer Zeile in der Tabelle \textit{bt\_sensor\_types} einen neuen Sensortyp zu definieren. Auf diesen Typ kann ein Algorithmus, der auf dem Graphen rechnet, anders als auf die anderen beiden Sensortypen reagieren.\\ \\
|
||||
Die Definition f"ur Kreuzungen ist dagegen deutlich einfacher. Da jede Kreuzung, die modelliert wurde, h"ochsten vier Ausg"ange hat, m"ussen jeweils vier Ausg"ange sowie vier Eing"ange modelliert werden. Auch hier werden Latitude und Logitude ben"otigt, um die Kreuzung auf einer Karte, oder relativ zu anderen Objekten der Modellierung, darstellen zu k"onnen. Die Kreuzungsnamen sind in der Stadt Darmstadt eindeutig, weshalb es keine ID f"ur eine Identifikation von Kreuzungen bedarf.\\ \\
|
||||
Die Tabelle \textit{bt\_Values} enth"alt aufbereitete Induktionsschleifenwerte. Diese werden mit den Abfragen, welche in Kapitel \ref{sec:daten} beschrieben sind, aus der MYSQL-Datenbank der JEE6 Anwendung zur Bereitstellung von Verkehrsdaten \cite{thesis:mueller} extrahiert, um das manuelle Untersuchung der CSV-Dateien zu umgehen. Sensoren werden hierf"ur mit ihrer eindeutigen ID identifiziert. Ein Zeitstempel der Sensordaten erlaubt es mehrere Datens"atze von verschiedenen Zeiten zu speichern. Ein Filter auf dem Zeitstempel ermöglicht es Daten eines gew"ahlten Zeitpunktes wieder zu extrahieren. Gespeichert werden daf"ur die Messwerte \textit{load} und \textit{count} der Induktionsschleifen, zusammen mit der eindeutigen Sensor ID und dem entsprechen Zeitstempel.\\ \\
|
||||
Die Definition f"ur Kreuzungen ist dagegen deutlich einfacher. Da jede Kreuzung, die modelliert wurde, h"ochsten vier Ausg"ange hat, m"ussen jeweils vier Ausg"ange sowie vier Eing"ange modelliert werden. Auch hier werden Latitude und Logitude ben"otigt, um die Kreuzung auf einer Karte, oder relativ zu anderen Objekten der Modellierung, darstellen zu k"onnen. Die Kreuzungsnamen sind in der Stadt Darmstadt eindeutig, weshalb es keine ID f"ur eine Identifikation von Kreuzungen bedarf. Die Kreuzungen werden in der Tabelle \textit{bt\_Crossroads} gespeichert. F"ur Kreuzungen, die nicht mehr modelliert werden wird daf"ur ein \textit{end} f"ur den entsprechenden Ausgang eingetragen.\\ \\
|
||||
Die Tabelle \textit{bt\_Values} enth"alt aufbereitete Induktionsschleifenwerte. Diese werden mit den Abfragen, welche in Kapitel \ref{sec:daten} beschrieben sind, aus der MYSQL-Datenbank der JEE6 Anwendung zur Bereitstellung von Verkehrsdaten \cite{thesis:mueller} extrahiert, um das manuelle Untersuchung der CSV-Dateien zu umgehen. Sensoren werden hierf"ur mit ihrer eindeutigen ID identifiziert. Ein Zeitstempel der Sensordaten erlaubt es mehrere Datens"atze von verschiedenen Zeiten zu speichern. Ein Filter auf dem Zeitstempel erm"oglicht es Daten eines gew"ahlten Zeitpunktes wieder zu extrahieren. Gespeichert werden daf"ur die Messwerte \textit{load} und \textit{count} der Induktionsschleifen, zusammen mit der eindeutigen Sensor ID und dem entsprechen Zeitstempel.\\ \\
|
||||
Die Tabelle \textit{bt\_FlowStatistics} enth"alt Abbiegewahrscheinlichkeiten f"ur Sensoren. Da diese Werte der Abbiegewahrscheinlichkeitstabelle der Stadt Darmstadt entnommen wurden, werden Sensoren "uber Kreuzungs- und Sensorname identifiziert und nicht "uber eine eindeutige Sensor ID. Dies ist m"oglich, obwohl Sensornamen nicht eindeutig sind, da innerhalb einer Kreuzung eine eindeutige Identifikation "uber den Namen des Sensors m"oglich ist. Eine Kombination aus dem eindeutigen Kreuzungsnamen und des, innerhalb der Kreuzung, eindeutigen Sensornamens, kann ein Sensor eindeutig identifizieren. F"ur die Abbiegewahrscheinlichkeitstabelle werden, neben dem Kreuzungs- und Sensornamen, bis zu drei verschiedene Abbiegewahrscheinlichkeiten angegeben. N"amlich die Wahrscheinlichkeit, dass ein Verkehrsteilnehmer, der "uber den Sensor f"ahrt, die Kreuzung rechts, links oder geradeaus verl"asst. Zus"atzlich wird der n"achste Sensorknoten f"ur jede Richtung mit angegeben. Wie die Zuordnung der Abbiegewahrscheinlichkeiten f"ur Links, Rechts und Geradeaus zu einem Knoten erfolgt, wird im Kapitel \autoref{sec:berechnung} beschrieben.\\
|
||||
Neben den Abbiegewahrscheinlichkeiten kann in der Abbiegewahrscheinlichkeitstabelle ebenfalls ein Zeitstempel und eine Intervalll"ange zu jedem Datensatz gespeichert werden. Dies erlaubt es, genauere, zeitspezifische Abbiegewahrscheinlichkeiten abzuspeichern. F"ur diese Arbeit lagen allerdings ausschlie"slich die Werte der Stadt Darmstadt vor, welche "uber alle Messungen gemittelt sind.
|
||||
\subsection{Implementierung}
|
||||
\subsection{Implementierung mit Hilfe von JGraphT}
|
||||
Zur Modellierung am Computer wird auf die Java Bibliothek \textit{JGraphT}\footnote{JGraphT ist unter \url{http://http://jgrapht.org/} zu erhalten} zur"uckgegriffen. Sie erlaubt es, dank Javas generischer Typen\footnote{siehe \url{http://docs.oracle.com/javase/tutorial/java/generics/types.html}}, Graphen mit beliebigen Klassen als Knoten aufzubauen. Das Selbe gilt f"ur Kanten mit wenigen Einschr"ankungen. Desweiteren erlaubt \textit{JGraphT} eine Konvertierung zu der weit verbreiteten Bibliothek \textit{JGraph}\footnote{Die Website von JGraph ist unter \url{http://www.jgraph.com/} zu erreichen}, die eine Visualisierungschnittstelle f"ur Graphen mitbringt. Der Kreuzungs"ubersichtsgraph soll die Graphen der einzelnen Kreuzungen als Knoten enthalten, um den Zusammenhalt des Modells zu gew"ahrleisten. Eine "Ubersicht "uber die Klassen und deren Zusammenhang untereinander ist in Form eines Klassendiagramms in \autoref{abb:classdiagstreet} dargestellt.\\ \\
|
||||
\begin{figure}
|
||||
\centering
|
||||
@ -216,7 +216,7 @@ Um ein Verkehrsmodell zu entwickeln muss zuerst festgelegt werden, welche Art de
|
||||
Wert und Testwert sind dabei von der Klasse \textit{VL}.\\ \\
|
||||
Die Klasse \textit{VL} kann die beiden Werte der Induktionsschleifen \textit{load} und \textit{count} halten, sowie eine Sensor ID, die eine eindeutige Zuordnung der Werte zu einem Sensor erm"oglicht. Ein Zeitstempel bestimmt dabei den Zeitpunkt der Messung. Auch diese Struktur entspricht der des Datenbankmodells. Zur "Uberpr"ufung eines Wertes mit einem Testwert kann ein gemessener Wert als Testwert in der Klasse abgespeichert werden. Eine Berechnung soll nun einen Wert berechnen, der durch Vergleich mit dem gemessenem Testwert Aufschluss "uber die Genauigkeit der Berechnung gibt. N"aheres ist im Kapitel \ref{sec:validierung} zu finden.\\ \\
|
||||
Die Klasse \textit{ST} modelliert eine Stra"se. Sie kann die Namen der Knoten, welche sie verbindet speichern, um den Graphen nicht st"andig nach den Namen der Nachbarn abzusuchen zu m"ussen. Diese beiden Werte dienen lediglich der Visualisierung. Desweiteren kann eine Gleitkommazahl gespeichert werden, welche die Abbiegewahrscheinlichkeit von einem Sensor, entlang dieser Kante, repr"asentiert. Dieser Wert dient der Aufteilung eines Mischspursensorwertes. Die Verwendung wird in Kapitel \autoref{sec:berechnung} beschrieben. Der Wert wird dabei aus der Abbiegewahrscheinlichkeitstabelle \textit{bt\_FlowStatistics} geladen.\\ \\
|
||||
Eine Kreuzung wird mit der Klasse \textit{XR} modelliert. Sie enth"alt den, in \autoref{lst:sensorgraph} gezeigten Sensorgraph einer Kreuzung. Weiterhin werden f"ur die Kreuzungen eine Position in Latitude und Longitude abgespeichert, sowie alle verbundenen eingehenden Kreuzungen und alle ausgehenden Kreuzungen. Das Speichern von beiden, Vorg"anger- und Nachfolgerkreuzungen, ist zum Aufbau des Graphen nicht n"otig. Daf"ur w"urden entweder Ein- oder Ausg"ange ausreichen. Um Visualisierung und Berechnung zu vereinfachen wurden allerdings beide definiert. \\ \\
|
||||
Eine Kreuzung wird mit der Klasse \textit{XR} modelliert. Sie enth"alt den, in \autoref{lst:sensorgraph} gezeigten Sensorgraph einer Kreuzung, der die virtuellen und realen Sensoren verkn"upft. Weiterhin werden f"ur die Kreuzungen eine Position in Latitude und Longitude abgespeichert, sowie alle verbundenen eingehenden Kreuzungen und alle ausgehenden Kreuzungen. Das Speichern von beiden, Vorg"anger- und Nachfolgerkreuzungen, ist zum Aufbau des Graphen nicht n"otig. Daf"ur w"urden entweder Ein- oder Ausg"ange ausreichen. Um Visualisierung und Berechnung zu vereinfachen wurden allerdings beide definiert (vgl. mit dem Datenbankschema). \\ \\
|
||||
Um den Graph mit der \textit{JGraphT}-Bibliothek zu modellieren, wurde die Klasse \textit{ListableDirectedGraph} benutzt (siehe \autoref{lst:sensorgraph}). Diese Klasse des Frameworks erlaubt gerichtete Graphen aufzubauen, die Struktur zur Berechnung zu verwenden und sp"ater zu visualisieren.\\
|
||||
\lstset{language=java}
|
||||
\begin{minipage}[t]{\dimexpr\textwidth-3\fboxsep-2\fboxrule-1em}
|
||||
@ -229,10 +229,10 @@ Um ein Verkehrsmodell zu entwickeln muss zuerst festgelegt werden, welche Art de
|
||||
= new ListenableDirectedGraph<>(ST.class);
|
||||
\end{lstlisting}
|
||||
\end{minipage}\\
|
||||
Die Klasse \textit{TrafficGraph} ist die Hauptklasse der JGraphT Modellierung. Sie enth"alt den Kreuzungs"ubersichtsgraphen (siehe \autoref{lst:streetgraph}) und "uber das Feld \textit{data\_timestamp} kann definiert werden welcher Datensatz aus der Datenbank selektiert wird. Die Funktion \textit{createGraph} der Klasse erzeugt den Kreuzungs"ubersichtsgraphen. Daf"ur werden zuerst alle Kreuzungsknoten aus der Datenbank selektiert und f"ur jeden ein neues \textit{XR}-Objekt angelegt und mit den Werten der Datenbank bef"ullt. Dieses wird daraufhin dem \textit{streeTGraph} hinzugef"ugt. In einem zweiten Schritt werden alle Verbindungen der Knoten untersucht. Wird der angegebene Zielknoten gefunden, wird eine Kante zwischen den beiden Kreuzungen dem \textit{streeGraph}-Objekt hinzugef"ugt. Eine Stra"se zwischen zwei Kreuzungen wird, wie in der Kreuzungsmodellierung mit der Klasse \textit{ST} beschrieben. Das Feld f"ur die Abbiegewahrscheinlichkeit kann allerdings nicht gef"ullt werden, da keine Abbiegewahrscheinlichkeiten au"serhalb von Kreuzungen bekannt sind. Das Feld wird sp"aterhin zum Speichern von Fl"ussen zwischen den Kreuzungen benutzt. \\ \\
|
||||
W"ahrend des Anlegens des \textit{XR}-Objekt werden die Kreuzungsdaten in dieses nachgeladen. Hierf"ur werden alle Sensoren, welche zu der entsprechenden Kreuzung geh"oren aus der Datenbank geholt, diese dem \textit{sensorGraph} hinzugef"ugt, sowie Verbindungen zwischen den Sensoren annotiert.\\ \\
|
||||
Die Klasse \textit{TrafficGraph} ist die Hauptklasse der JGraphT Modellierung. Sie enth"alt den Kreuzungs"ubersichtsgraphen (siehe \autoref{lst:streetgraph}) und "uber das Feld \textit{data\_timestamp} kann definiert werden welcher Datensatz aus der Datenbank selektiert wird. Die Funktion \textit{createGraph} der Klasse erzeugt den Kreuzungs"ubersichtsgraphen. Daf"ur werden zuerst alle Kreuzungsknoten aus der Datenbank selektiert und f"ur jeden ein neues \textit{XR}-Objekt angelegt und mit den Werten der Datenbank bef"ullt. Dieses wird daraufhin dem \textit{streetGraph} hinzugef"ugt. In einem zweiten Schritt werden alle Verbindungen der Knoten untersucht. Wird der angegebene Zielknoten im \textit{streetGraph} gefunden, wird eine Kante zwischen den beiden Kreuzungen dem \textit{streeGraph}-Objekt hinzugef"ugt. Eine Stra"se zwischen zwei Kreuzungen wird, wie in der Kreuzungsmodellierung mit der Klasse \textit{ST} beschrieben. Das Feld f"ur die Abbiegewahrscheinlichkeit kann allerdings nicht gef"ullt werden, da keine Abbiegewahrscheinlichkeiten au"serhalb von Kreuzungen bekannt sind. Das Feld wird sp"aterhin zum Speichern von Fl"ussen zwischen den Kreuzungen benutzt. \\ \\
|
||||
W"ahrend des Anlegens des \textit{XR}-Objekt werden die Kreuzungsdaten in dieses nachgeladen. Hierf"ur werden alle Sensoren, welche zu der entsprechenden Kreuzung geh"oren aus der Datenbank geholt, diese dem \textit{sensorGraph} des \textit{XR}-Objektes hinzugef"ugt, sowie Verbindungen zwischen den Sensoren annotiert.\\ \\
|
||||
Die Funktion \textit{loadData} der \textit{TrafficGraph}-Klasse erlaubt das Laden der Daten f"ur den spezifizierten Zeitpunkt. Diese l"ad sowohl die Sensorwerte und schreibt diese in die einzelnen Sensorknoten des \textit{sensorGraph}, als auch die Abbiegewahrscheinlichkeiten, welche den dazugeh"origen Kanten "ubergeben wird. Daraufhin sind alle Daten geladen und der Graph ist komplett aufgebaut. \\ \\
|
||||
Die Klasse \textit{TrafficGraph} bietet allerdings noch eine weitere Funktion \textit{calculate}, die das Aufrufen von verschiedenen Algorithmen erlaubt. Hierf"ur wurde die Klasse \textit{Algo} definiert, der im Konstruktor der Kreuzungs"ubersichtsgraph "ubergeben wird. Die abstrakte Funktion \textit{calculate} dieser Klasse erlaubt es beliebige Algorithmen zu schreiben, welche auf den Graphen zur"uckgreifen k"onnen. In \autoref{abb:classdiagalgo} ist die Struktur der \textit{Algo}-Klassen in einem Klassendiagramm aufgezeigt.\\ \\
|
||||
Die Klasse \textit{TrafficGraph} bietet allerdings noch eine weitere Funktion \textit{calculate}, die das Aufrufen von verschiedenen Algorithmen erlaubt. Hierf"ur wurde die abstrakte Klasse \textit{Algo} definiert, der im Konstruktor der Kreuzungs"ubersichtsgraph "ubergeben wird. Die abstrakte Funktion \textit{calculate} dieser Klasse erlaubt es beliebige Algorithmen zu schreiben, welche auf den Graphen zur"uckgreifen k"onnen. In \autoref{abb:classdiagalgo} ist die Struktur der \textit{Algo}-Klassen in einem Klassendiagramm aufgezeigt.\\ \\
|
||||
\begin{figure}
|
||||
\centering
|
||||
\includegraphics[width=0.95\textwidth]{pic/classdiagAlgo}
|
||||
|
||||
@ -1,18 +1,22 @@
|
||||
\section{Validierung}\label{sec:validierung}
|
||||
In diesem Kapitel wird die Validierung der berechneten Verkehrswerte beschrieben (siehe \autoref{sec:berechnung}). Dabei wird zun"achst ein angestrebtes Verfahren beschrieben und darauf eingegangen warum dieses Verfahren sich nicht eignet. Um die berechneten Werte dennoch validieren zu k"onnen, wurde eine Verkehrsz"ahlung im Rahmen dieser Arbeit vorgenommen.
|
||||
In diesem Kapitel wird die Validierung der berechneten Verkehrswerte beschrieben (siehe Kapitel \ref{sec:berechnung}). Dabei wird zun"achst ein angestrebtes Verfahren beschrieben und darauf eingegangen warum dieses Verfahren sich nicht eignet. Um die berechneten Werte dennoch validieren zu k"onnen, wurde eine Verkehrsz"ahlung im Rahmen dieser Arbeit vorgenommen.
|
||||
\subsection{Validierung durch Testdatenmenge}
|
||||
Ein "ubliches Testverfahren ist es, einen Teil der Datenmenge aus der Berechnung au"senvorzulassen und durch die verwendete Berechnung diese fehlenden Daten zu reproduzieren. Die Datenmenge wird hierf"ur in die sog. Testdatenmenge und die Rechendatenmenge aufgeteilt. Durch einen Vergleich der Testdaten und den zugeh"origen berechneten Daten, kann nun festgestellt werden wie genau die Berechnung ist.\\ \\
|
||||
Dieses Verfahren eignet sich hier allerdings nicht, da bei den vorliegenden Sensordaten das Auslassen von Sensorwerten, um diese als Testdaten zu verwenden, die Berechnung unm"oglich macht, da das LGS unl"osbar wird (vgl. \autoref{sec:berechnung:validate}). Das ist auf die geringe Menge an Sensoren zur"uckzuf"uhren.\\ \\
|
||||
Um dieses Verfahren anwenden zu k"onnen m"ussen Vallidierungssensoren fl"achendeckend auf den Kreuzungen zur Verf"ugung stehen. Dann kann durch Weglassen der Sensor- oder der Validierungssensordaten die Berechnung erfolgen und die Ausgelassenen Daten k"onnen zur Validierung eingesetzt werden.\\ \\
|
||||
Ein "ubliches Testverfahren ist es, einen Teil der Datenmenge aus der Berechnung au"sen vorzulassen und durch die verwendete Berechnung diese fehlenden Daten zu reproduzieren. Die Datenmenge wird hierf"ur in die sog. Testdatenmenge und die Rechendatenmenge aufgeteilt. Durch einen Vergleich der Testdaten und den zugeh"origen berechneten Daten, kann nun festgestellt werden wie genau die Berechnung ist.\\ \\
|
||||
Dieses Verfahren eignet sich hier allerdings nicht, da bei den vorliegenden Sensordaten das Auslassen von Sensorwerten, um diese als Testdaten zu verwenden, die Berechnung unm"oglich macht, da das LGS unl"osbar wird (vgl. Kapitel \ref{sec:berechnung:validate}). Das ist auf die geringe Menge an Sensoren zur"uckzuf"uhren.\\ \\
|
||||
Um dieses Verfahren anwenden zu k"onnen m"ussen Validierungssensoren fl"achendeckend auf den Kreuzungen zur Verf"ugung stehen. Dann kann durch Weglassen der Sensor- oder der Validierungssensordaten die Berechnung erfolgen und die Ausgelassenen Daten k"onnen zur Validierung eingesetzt werden.\\ \\
|
||||
Die vorliegenden Daten der Sensorwerte verbieten das Auslassen von Sensordaten, da die Berechnung ansonsten nicht erfolgen kann. Deshalb kann dieses Verfahren nicht verwendet werden, um die berechneten Daten zu validieren.
|
||||
\subsection{Verkehrsz"ahlung}
|
||||
Da kein anderes Testverfahren gefunden wurde, welches eine Validierung der Daten erm"oglichen w"urde, wurde im Rahmen dieser Arbeit eine Verkehrsz"ahlung durchgef"uhrt. Diese Verkehrsz"ahlung wurde mit Hilfe von \textit{M. Scholz} \autoref{thesis:michael} durchgef"uhrt. Gez"ahlt wurde dabei mit Strichliste an den Kreuzungen A12, A23 und A4. Dabei wurden in der einen Messreihe die Fahrzeuge an den Ausg"angen gez"ahlt, um die berechneten Werte der virtuellen Kreuzungsausg"ange in dem Graphenmodell validieren zu k"onnen. Desweiteren wurden die Fahrzeuge gez"ahlt, die "uber die Sensoren A12.D31, A23.D3 und A23.D1 gefahren sind. Jeder Sensor bzw. Ausgang wurde daf"ur "uber einen Zeitraum von 15 Minuten beobachtet und der Verkehr gez"ahlt.\\ \\
|
||||
Es wurden dabei starke Unterschiede zwischen den gez"ahlten und den, von den Sensoren ermittelten, Werten festgestellt. Dies ist zum einen auf ungenaue und fehleranf"allige Sensorik(vgl. \autoref{sec:grundlagen}) zur"uckzuf"uhren, zum anderen muss f"ur adaptiv gesteuerte Ampelanlagen sichergestellt werden, dass alle Fahrzeuge erkannt werden, um diese "uber die Kreuzung zu lassen. Diese Vorgabe wird dadurch erf"ullt, dass die Sensorik leichter als n"otig ausl"ost, um wirklich jedes Fahrzeug zu erkennen. Dies wiederum erh"oht die Fehleranf"alligkeit des Sensors. Eine tabellarische Auswertung der Daten ist in Anhang zu finde [todo]\\ \\
|
||||
In einer weiteren Untersuchung wurde der Sensor D31 der Kreuzung A12 im Minutentakt gez"ahlt, um eine genaueres Bild der Abweichung zu erhalten. Die gemessenen Werte lagen dabei bis zu 700\% von dem gez"ahlten Wert entfernt. Bei dieser Z"ahlung wurden neben der Anzahl der Verkehrsteilnehmer der Fahrzeugtyp untersucht, um die Fehleranf"alligkeit des Sensors f"ur die verschiedenen Fahrzeugtypen genauer zu bestimmen.[todo auswertung]. Eine tabellarische Auswertung der Daten ist im Anhang zu finden.[todo]\\ \\
|
||||
Die Erkenntnisse "uber die Ungenauigkeiten der Sensoren decken sich mit den Befunden der Disseration von \textsc{N. Lehnhoff}\cite{thesis:lehnhoff}. In dem dort Untersuchten Gebiet der Stadt Hannover wurde eine sehr starke Varianz der Messgenauigkeit der dort verbauten Induktionsschleifen festgestellt.
|
||||
\subsection{Validierung der Berechneten Verkehrswerte}
|
||||
Eine Berechnung der Verkehrswerte mittels LGS mit jeweils den Sensorwerten und den gez"ahlten Werten ergabt eine Abweichung von bis zu x\%.[geht nicht - zeit]
|
||||
[todo -> rechnung, abweichung bestimmen]
|
||||
|
||||
Da kein anderes Testverfahren gefunden wurde, welches eine Validierung der Daten erm"oglichen w"urde, wurde im Rahmen dieser Arbeit eine Verkehrsz"ahlung durchgef"uhrt. Diese Verkehrsz"ahlung wurde mit Hilfe von \textit{M. Scholz} \autoref{thesis:michael} durchgef"uhrt. Gez"ahlt wurde mit Strichliste an den Kreuzungen A12, A23 und A4. Dabei wurden in der einen Messreihe die Fahrzeuge an den Ausg"angen gez"ahlt, um die berechneten Werte der virtuellen Kreuzungsausg"ange in dem Graphenmodell validieren zu k"onnen. Desweiteren wurden die Fahrzeuge gez"ahlt, die "uber die Sensoren A12.D31, A23.D3 und A23.D1 gefahren sind. Jeder Sensor bzw. Ausgang wurde daf"ur "uber einen Zeitraum von 15 Minuten beobachtet und der Verkehr gez"ahlt.\\ \\
|
||||
Es wurden dabei starke Unterschiede zwischen den gez"ahlten und den, von den Sensoren ermittelten, Werten festgestellt. Dies ist zum einen auf ungenaue und fehleranf"allige Sensorik(vgl. \autoref{sec:grundlagen}) zur"uckzuf"uhren, zum anderen muss f"ur adaptiv gesteuerte Ampelanlagen sichergestellt werden, dass alle Fahrzeuge erkannt werden, um diese "uber die Kreuzung zu lassen. Diese Vorgabe wird dadurch erf"ullt, dass die Sensorik leichter als n"otig ausl"ost, um wirklich jedes Fahrzeug zu erkennen. Dies wiederum erh"oht die Fehleranf"alligkeit des Sensors.\\ \\
|
||||
In einer weiteren Untersuchung wurde der Sensor D31 der Kreuzung A12 im Minutentakt gez"ahlt, um eine genaueres Bild der Abweichung zu erhalten. Die gemessenen Werte lagen dabei bis zu 700\% von dem gez"ahlten Wert entfernt. Bei dieser Z"ahlung wurden neben der Anzahl der Verkehrsteilnehmer der Fahrzeugtyp untersucht, um die Fehleranf"alligkeit des Sensors f"ur die verschiedenen Fahrzeugtypen genauer zu bestimmen.\\ \\
|
||||
Die Erkenntnisse "uber die Ungenauigkeiten der Sensoren decken sich mit den Befunden der Dissertation von \textsc{N. Lehnhoff}\cite{thesis:lehnhoff}. In dem dort Untersuchten Gebiet der Stadt Hannover wurde eine sehr starke Varianz der Messgenauigkeit der dort verbauten Induktionsschleifen festgestellt.
|
||||
\subsection{Validierung durch die Verkehrszählung}
|
||||
Für die Valliderung wurden zwei Hypothesen aufgestellt:
|
||||
\begin{enumerate}
|
||||
\item{Hypothese: Die berechneten Verkehrswerte entsprechen den gemessenen mit einer hohen(>90 \%) Genauigkeit.}
|
||||
\item{Hypothese: Die Abbiegewahrscheinlichkeiten der Stadt haben eine hohe Genauigkeit(>90\%) für jeden Zeitpunkt.}
|
||||
\end{enumerate}
|
||||
[todo]
|
||||
Eine tabellarische Auswertung der Daten ist in Anhang zu finde [todo]
|
||||
Da die Berechnung der Kreuzungsein- und Ausgangswerte direkt von der Genauigkeit der Sensorwerte abh"angt, ist die Genauigkeit der berechneten Werte entsprechend. Eine Verbesserung der Qualit"at der Sensordaten w"urde eine direkte Verbesserung der Berechneten Werte zur folge haben.
|
||||
\newpage
|
||||
@ -1,8 +1,8 @@
|
||||
\section{Visualisierung}\label{sec:visualisierung}
|
||||
In diesem Kapitel wird beschrieben, wie der im Kapitel \ref{sec:modell} und im Kapitel \autoref{sec:berechnung} mit Werten bef"ullter Graph mit Hilfe von JGraph visualisiert wird. Neben den Graphen wird eine Kreuzungs"ubersicht mithilfe des JMapViewer Frameworks und Geoinformationen der JEE6 Anwendung\cite{thesis:mueller} mit den untersuchten Sensoren am Computer visualisiert.\\ \\
|
||||
In diesem Kapitel wird beschrieben, wie der im Kapitel \ref{sec:modell} und im Kapitel \ref{sec:berechnung} mit Werten bef"ullter Graph mit Hilfe von \textit{JGraph} visualisiert wird. Neben den Graphen wird eine Kreuzungs"ubersicht mithilfe des \textit{JMapViewer} Frameworks und Geoinformationen der JEE6 Anwendung\cite{thesis:mueller} mit den untersuchten Sensoren am Computer visualisiert.\\ \\
|
||||
Visualisierung eignet sich deshalb besonders gut, da die berechneten Zusammenh"ange komplex und wenig zug"anglich sind. Eine Visualisierung erm"oglicht eine andere Sicht auf den Sachverhalt und l"asst sich leichter auf Korrektheit oder Fehler "uberpr"ufen.
|
||||
\subsection{Visualisierung des Graphen mit JMapViewer}
|
||||
Um den Zusammenhang zwischen Realit"at und dem Graphen-basierten Modell herzustellen wurden die Kreuzungsinformationen auf eine Landkarte projeziert. Hierzu dient das JMapViewer Framework\footnote{JMapViewer Sourcecode ist unter \url{http://svn.openstreetmap.org/applications/viewer/jmapviewer/} zu erhalten.}, welches auf das Kartenmaterial des Open-Street-Map-Projektes, kurz OSM\footnote{Offiziell Website des OSM Projektes: http://www.openstreetmap.org/}, zugreift und dem Programmierer die M"oglichkeit gibt eine eigene Kartenanwendung zu schreiben.\\ \\
|
||||
Um den Zusammenhang zwischen Realit"at und dem Graphen-basierten Modell herzustellen wurden die Kreuzungsinformationen auf eine Landkarte projeziert. Hierzu dient das \textit{JMapViewer} Framework\footnote{JMapViewer Sourcecode ist unter \url{http://svn.openstreetmap.org/applications/viewer/jmapviewer/} zu erhalten.}, welches auf das Kartenmaterial des Open-Street-Map-Projektes, kurz OSM\footnote{Offiziell Website des OSM Projektes: http://www.openstreetmap.org/}, zugreift und dem Programmierer die M"oglichkeit gibt eine eigene Kartenanwendung zu schreiben.\\ \\
|
||||
In dieser Arbeit wurden die Kreuzungsbereiche auf die OSM-Karte projeziert und die Sensoren verzeichnet. Die Visualisierung dient der "Ubersicht und um die korrekte Positionierung von Kreuzungen und Sensoren zu "uberpr"ufen. Die Sensoren werden hierf"ur als gelbe Kreise dargestellt, Kreuzungsbereiche werden mit einem roten Rechteck markiert. Die Anwendung bringt schon von Haus aus Navigationsm"oglichkeiten mit, um den betrachteten Kartenausschnitt zu manipulieren und kann auf drei verschiedene Kartens"atze zur"uckgreifen oder ein lokal gespeichertes benutzen. Die Kartens"atze sind die folgenden:
|
||||
\begin{enumerate}
|
||||
\item{\textit{Mapnik}: CAD "ahnlich Ansicht der Karte aus dem OSM Projekt.}
|
||||
@ -10,22 +10,21 @@ Visualisierung eignet sich deshalb besonders gut, da die berechneten Zusammenh"a
|
||||
\item{\textit{Bing Aerial Map}: Microsoft Bing\footnote{Das Kartenmaterial von Micorsoft Bing kann unter \url{http://www.bing.com/maps/} abgerufen werden.} Satellitenbilder.}
|
||||
\item{\textit{Tiles At Home}: Lokal gespeichertes Kartenset.}
|
||||
\end{enumerate}
|
||||
Durch Zoom und verschieben der Karte k"onnen die einzelnen Kreuzungen untersucht werden. Der Detailgrad der Dartsellung ist dabei direkt abh"angig von dem Kartenmaterial, das OSM liefert. OSM erlaubt es dem Nutzer, "uber ein eigenst"andiges Werkzeug, Details in das Kartenmaterial einzupflegen. Da das Projekt sehr beliebt ist, weisen die meisten Bereiche des betrachteten Ausschnitts in etwa die Qualit"at der CAD-Zeichnungen der Stadt Darmstadt (siehe \autoref{sec:daten:cad}) auf. In Abbildung \autoref{abb:jmapviewer} ist die entwickelte Anwendung mit dem Kartenausschnitt der 'Ministadt' zu sehen. Abbildung \autoref{abb:handischxrover} zeigt die "aquivalente h"andische Modellierung.
|
||||
Durch Zoom und verschieben der Karte k"onnen die einzelnen Kreuzungen untersucht werden. Der Detailgrad der Darstellung ist dabei direkt abh"angig von dem Kartenmaterial, das OSM liefert. OSM erlaubt es dem Nutzer, "uber ein eigenst"andiges Werkzeug, Details in das Kartenmaterial einzupflegen. Da das Projekt sehr beliebt ist, weisen die meisten Bereiche des betrachteten Ausschnitts in etwa die Qualit"at der CAD-Zeichnungen der Stadt Darmstadt (siehe Kapitel \ref{sec:daten:cad}) auf. In Abbildung \autoref{abb:jmapviewer} ist die entwickelte Anwendung mit dem Kartenausschnitt der 'Ministadt' zu sehen.
|
||||
\begin{figure}
|
||||
\centering
|
||||
\subfigure[JMapViewer Anwendung mit eingezeichneten Kreuzungsbereichen (rot) und Sebsorpositionen (gelb). Zentriert auf den Bereich der 'Ministadt'] {\includegraphics[width=0.5\textwidth-2\fboxsep-2\fboxrule]{pic/osm_overview}}
|
||||
\label{abb:jmapviewer}
|
||||
\subfigure[Ministadt, h"andisch visualisiert.] {\includegraphics[width=0.5\textwidth-2\fboxsep-2\fboxrule]{ext/Kreuzungsuebersicht}}
|
||||
\label{abb:handischxrover}
|
||||
\includegraphics[width=0.8\textwidth-2\fboxsep-2\fboxrule]{pic/osm_overview}
|
||||
\caption{JMapViewer Anwendung mit eingezeichneten Kreuzungsbereichen (rot) und Sensorpositionen (gelb). Zentriert auf den Bereich der \textit{Ministadt}}
|
||||
\label{abb:jmapviewer}
|
||||
\end{figure}
|
||||
\subsection{Visualisierung des JGraphT-Graphen}{
|
||||
Die Visualisierung des JGraphT Graphen ist eine Visualisierung der Berechnungsstruktur, da die Berechnung an dem Graphen vollzogen wird. Mehr Informationen hierzu sind im Kapitel \autoref{sec:berechnung} zu finden. In Verbindung mit den Latitude und Longitude Koordinaten k"onnen die Knoten des Graphen auf dem Bildschirm angeordnet werden um eine Identifizierung von Objekten zu erleichtern. Der Nutzer erh"alt weiterhin die M"oglichkeit die einzelnen Knoten manuell nachzujustieren. Dies ist insbesondere f"ur solche Knoten ohne g"ultige Koordinaten hilfreich.\\ \\
|
||||
Ziel dieser Visualisierung ist es, die berechneten Werte darzustellen. Die Anordnung nach Koordinaten erm"oglicht es, den generierten Graphen einfach mit der Realit"at zu vergleichen. Es werden im Gegensatz zu der Visualisierung mit Luftbildern nicht nur die Kreuzungs"ubersicht visualisiert, sondern auch die einzelnen Kreuzungen, da f"ur beide ein Graph vorhanden ist (siehe \autoref{sec:modell}). Die Erzeugung der Graphen ist dabei auf die Visualisierungsf"ahigkeit der Java Graphen-Bibliothek JGraph gest"utzt. Die JGraphT-Bibliothek bietet eine Schnittstelle zu dieser Bibliothek und erlaubt es Graphen mit wenigen Befehlen zu visualisieren. In \autoref{lst:create_vis_graph} ist die Konvertierung von JGraphT und das Auftragen auf ein scrollbares Fenster aufgezeigt.\\
|
||||
Die Visualisierung des \textit{JGraphT} Graphen ist eine Visualisierung der Berechnungsstruktur, da die Berechnung an dem Graphen vollzogen wird. Mehr Informationen hierzu sind im Kapitel \ref{sec:berechnung} zu finden. In Verbindung mit den Latitude und Longitude Koordinaten k"onnen die Knoten des Graphen auf dem Bildschirm angeordnet werden um eine Identifizierung von Objekten zu erleichtern. Der Nutzer erh"alt weiterhin die M"oglichkeit die einzelnen Knoten manuell nachzujustieren. Dies ist insbesondere f"ur solche Knoten ohne g"ultige Koordinaten hilfreich.\\ \\
|
||||
Ziel dieser Visualisierung ist es, die berechneten Werte darzustellen. Die Anordnung nach Koordinaten erm"oglicht es, den generierten Graphen einfach mit der Realit"at zu vergleichen. Es werden im Gegensatz zu der Visualisierung mit Luftbildern nicht nur die Kreuzungs"ubersicht visualisiert, sondern auch die einzelnen Kreuzungen, da f"ur beide ein Graph vorhanden ist (siehe Kapitel \ref{sec:modell}). Die Erzeugung der Graphen ist dabei auf die Visualisierungsf"ahigkeit der Java Graphen-Bibliothek \textit{JGraph} gest"utzt. Die \textit{JGraphT}-Bibliothek bietet eine Schnittstelle zu dieser Bibliothek und erlaubt es Graphen mit wenigen Befehlen zu visualisieren. In \autoref{lst:create_vis_graph} ist die Konvertierung von \textit{JGraphT} und das Auftragen auf ein scrollbares Fenster aufgezeigt.\\
|
||||
\begin{minipage}[t]{\dimexpr\textwidth-3\fboxsep-2\fboxrule-1em}
|
||||
\begin{lstlisting}[caption={[Befehl zur Konvertierung und Darstellung eines JGraphT Graphen als JGraph] Befehl zur Konvertierung und Darstellung eines JGraphT Graphen als JGraph.}, label={lst:create_vis_graph}, captionpos=bsec]
|
||||
ListenableDirectedGraph<XR, ST> streetGraph
|
||||
= new ListenableDirectedGraph<>(ST.class);
|
||||
//...
|
||||
//... fill graph
|
||||
JGraphModelAdapter<XR, ST> adp
|
||||
= new JGraphModelAdapter<>( streetGraph );
|
||||
JGraph jgraph = new JGraph(adp);
|
||||
@ -34,8 +33,8 @@ Visualisierung eignet sich deshalb besonders gut, da die berechneten Zusammenh"a
|
||||
frame.add(srcPane);
|
||||
\end{lstlisting}
|
||||
\end{minipage}\\
|
||||
Das Resultat ist eine simple Darstellung des Graphen. Auf Knoten, den Kreuzungen, werden dabei der Name der entsprechenden Kreuzung, sowie die Anzahl der Sensorwerte, die f"ur die kreuzung zur Verf"ugung stehen, aufgetragen. Ein weiterer Wert zeigt auf, wie viele der Daten f"ur die Berechnung zur Verf"ugung stehen und wie viele Testdaten extrahiert wurden. Kanten werden in der Kreuzungs"ubersicht mit dem berechneten Verkehrswert, der in die entsprechenden Richtung aus der Kreuzung flie"st, markiert. Um zwei Kanten, die beiden m"oglichen Fahrrichtungen, zwischen zwei Knoten auseinander halten zu k"onnen wird an jeder Kante zus"atzlich zu dem Verkehrswert die Kreuzung in dessen Richtung der Verkehr flie"st mit angegeben.\\ \\
|
||||
F"ur die einzelnen Kreuzungen wird ebenfalls ein Graph generiert, der Sensor- oder virtuelle Sensorknoten als Knoten besitzt. Kanten, die die einzelnen Knoten verbinden, werden mit aufgetragenen Abbiegewahrscheinlichkeiten dargestellt.
|
||||
Das Resultat ist eine simple Darstellung des Graphen. Auf Knoten, den Kreuzungen in der Kreuzungsübersicht, werden dabei der Name der entsprechenden Kreuzung, sowie die Anzahl der Sensorwerte, die f"ur die Kreuzung zur Verf"ugung stehen, aufgetragen. Ein weiterer Wert zeigt auf, wie viele der Daten f"ur die Berechnung zur Verf"ugung stehen und wie viele Testdaten extrahiert wurden. Kanten werden in der Kreuzungs"ubersicht mit dem berechneten Verkehrswert, der in die entsprechenden Richtung aus der Kreuzung flie"st, markiert. Um zwei Kanten, die beiden m"oglichen Fahrrichtungen, zwischen zwei Knoten auseinander halten zu k"onnen wird an jeder Kante zus"atzlich zu dem Verkehrswert die Kreuzung in dessen Richtung der Verkehr flie"st mit angegeben.\\ \\
|
||||
F"ur die einzelnen Kreuzungen wird ebenfalls ein Graph generiert, der Sensor- oder virtuelle Sensorknoten als Knoten besitzt. Kanten, die die einzelnen Knoten verbinden, werden mit aufgetragenen Abbiegewahrscheinlichkeiten dargestellt. Knoten geben Auskunft über den Sensorwert, welche dort zu dem gewählten Zeitpunkt vorliegt.
|
||||
\begin{figure}
|
||||
\centering
|
||||
\subfigure[Kreuzungs"ubersichtsgraph mit JGraph visualisiert.] {\includegraphics[width=0.5\textwidth-2\fboxsep-2\fboxrule]{pic/jgraphuebersicht}}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user