diff --git a/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.aux b/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.aux index b444af56..feaa098e 100644 --- a/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.aux +++ b/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.aux @@ -49,13 +49,13 @@ \citation{thesis:neubert} \citation{book:rilsa} \citation{book:verkehrdata} -\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces "ubersicht "uber das entworfene Softwaresystem}}{5}{figure.1}} -\newlabel{abb:system}{{1}{5}{"ubersicht "uber das entworfene Softwaresystem\relax }{figure.1}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces "Ubersicht "uber das entworfene Softwaresystem}}{5}{figure.1}} +\newlabel{abb:system}{{1}{5}{"Ubersicht "uber das entworfene Softwaresystem\relax }{figure.1}{}} \citation{thesis:mazur} \citation{thesis:mazur} \citation{thesis:lehnhoff} \citation{merk:street} -\@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces Drei Visualisierungen des betrachteten Ausschnitts der Stadt Darmstadt. a) händische Visualisierung b) Visualisierung mithilfe der OSM-Karte c) Visualisierung des Graphenmodells}}{6}{figure.2}} +\@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces Drei Visualisierungen des betrachteten Ausschnitts der Stadt Darmstadt. a) h"andische Visualisierung b) Visualisierung mithilfe der OSM-Karte c) Visualisierung des Graphenmodells}}{6}{figure.2}} \@writefile{toc}{\contentsline {section}{\numberline {4}Grundlagen}{6}{section.4}} \newlabel{sec:grundlagen}{{4}{6}{Grundlagen\relax }{section.4}{}} \@writefile{toc}{\contentsline {subsection}{\numberline {4.1}Induktionsschleifen}{6}{subsection.4.1}} @@ -143,81 +143,85 @@ \newlabel{abb:einmatrixa23}{{14}{20}{Eingangsmatrix der Kreuzung A23\relax }{figure.14}{}} \citation{thesis:mueller} \@writefile{toc}{\contentsline {subsection}{\numberline {6.5}Implementierung}{21}{subsection.6.5}} -\newlabel{lst:sensorgraph}{{3}{22}{abc\relax }{lstlisting.3}{}} -\@writefile{lol}{\contentsline {lstlisting}{\numberline {3}abc}{22}{lstlisting.3}} -\newlabel{lst:streetgraph}{{4}{22}{abc\relax }{lstlisting.4}{}} -\@writefile{lol}{\contentsline {lstlisting}{\numberline {4}abc}{22}{lstlisting.4}} -\@writefile{toc}{\contentsline {subsection}{\numberline {6.6}Zuk"unftige Herausforderungen des Modells}{23}{subsection.6.6}} -\newlabel{sec:modell:limits}{{6.6}{23}{Zuk"unftige Herausforderungen des Modells\relax }{subsection.6.6}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {15}{\ignorespaces Klassendiagramm der JGraphT Implementierung des Stra"senmodells.}}{22}{figure.15}} +\newlabel{abb:classdiagstreet}{{15}{22}{Klassendiagramm der JGraphT Implementierung des Stra"senmodells}{figure.15}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {16}{\ignorespaces Klassendiagramm der Algorithmenstruktur.}}{23}{figure.16}} +\newlabel{abb:classdiagalgo}{{16}{23}{Klassendiagramm der Algorithmenstruktur}{figure.16}{}} +\newlabel{lst:sensorgraph}{{3}{23}{abc\relax }{lstlisting.3}{}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {3}abc}{23}{lstlisting.3}} +\newlabel{lst:streetgraph}{{4}{23}{abc\relax }{lstlisting.4}{}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {4}abc}{23}{lstlisting.4}} \citation{thesis:michael} +\@writefile{toc}{\contentsline {subsection}{\numberline {6.6}Zuk"unftige Herausforderungen des Modells}{24}{subsection.6.6}} +\newlabel{sec:modell:limits}{{6.6}{24}{Zuk"unftige Herausforderungen des Modells\relax }{subsection.6.6}{}} \@writefile{toc}{\contentsline {subsubsection}{\numberline {6.6.1}Herausforderung: Verfolgung von Fahrzeugen "uber eine Kreuzung hinaus}{24}{subsubsection.6.6.1}} \newlabel{sec:datengrund:probtime}{{6.6.1}{24}{Herausforderung: Verfolgung von Fahrzeugen "uber eine Kreuzung hinaus\relax }{subsubsection.6.6.1}{}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.6.2}Herausforderung: Genaues Bestimmen des Abbiegeverhaltens}{24}{subsubsection.6.6.2}} -\newlabel{sec:datengrund:abbprob}{{6.6.2}{24}{Herausforderung: Genaues Bestimmen des Abbiegeverhaltens\relax }{subsubsection.6.6.2}{}} +\@writefile{toc}{\contentsline {subsubsection}{\numberline {6.6.2}Herausforderung: Genaues Bestimmen des Abbiegeverhaltens}{25}{subsubsection.6.6.2}} +\newlabel{sec:datengrund:abbprob}{{6.6.2}{25}{Herausforderung: Genaues Bestimmen des Abbiegeverhaltens\relax }{subsubsection.6.6.2}{}} \citation{paper:kwonmurphy} -\@writefile{toc}{\contentsline {section}{\numberline {7}L"osungsans"atze}{25}{section.7}} -\newlabel{sec:berechnung}{{7}{25}{L"osungsans"atze\relax }{section.7}{}} -\newlabel{problem:1}{{1}{25}{L"osungsans"atze\relax }{Item.43}{}} -\newlabel{problem:2}{{2}{25}{L"osungsans"atze\relax }{Item.44}{}} -\newlabel{problem:3}{{3}{25}{L"osungsans"atze\relax }{Item.45}{}} -\newlabel{problem:4}{{4}{25}{L"osungsans"atze\relax }{Item.46}{}} -\newlabel{problem:5}{{5}{25}{L"osungsans"atze\relax }{Item.47}{}} -\newlabel{problem:6}{{6}{25}{L"osungsans"atze\relax }{Item.48}{}} -\newlabel{problem:7}{{7}{25}{L"osungsans"atze\relax }{Item.49}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {7.1}Aufbereiten der Abbiegewahrscheinlichkeiten}{25}{subsection.7.1}} -\@writefile{lof}{\contentsline {figure}{\numberline {15}{\ignorespaces Zuordnungstabelle der Richtungen}}{26}{figure.15}} -\newlabel{tbl:zuordnungstabell}{{15}{26}{Zuordnungstabelle der Richtungen\relax }{figure.15}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {16}{\ignorespaces Zeitlicher Verlauf eines HMMs.}}{26}{figure.16}} -\@writefile{toc}{\contentsline {subsection}{\numberline {7.2}L"osungsansatz: Hidden Markow Modell}{26}{subsection.7.2}} -\newlabel{sec:berechnung:hmm}{{7.2}{26}{L"osungsansatz: Hidden Markow Modell\relax }{subsection.7.2}{}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.1}Grundlagen}{26}{subsubsection.7.2.1}} +\@writefile{toc}{\contentsline {section}{\numberline {7}L"osungsans"atze}{26}{section.7}} +\newlabel{sec:berechnung}{{7}{26}{L"osungsans"atze\relax }{section.7}{}} +\newlabel{problem:1}{{1}{26}{L"osungsans"atze\relax }{Item.43}{}} +\newlabel{problem:2}{{2}{26}{L"osungsans"atze\relax }{Item.44}{}} +\newlabel{problem:3}{{3}{26}{L"osungsans"atze\relax }{Item.45}{}} +\newlabel{problem:4}{{4}{26}{L"osungsans"atze\relax }{Item.46}{}} +\newlabel{problem:5}{{5}{26}{L"osungsans"atze\relax }{Item.47}{}} +\newlabel{problem:6}{{6}{26}{L"osungsans"atze\relax }{Item.48}{}} +\newlabel{problem:7}{{7}{26}{L"osungsans"atze\relax }{Item.49}{}} +\@writefile{toc}{\contentsline {subsection}{\numberline {7.1}Aufbereiten der Abbiegewahrscheinlichkeiten}{26}{subsection.7.1}} +\@writefile{lof}{\contentsline {figure}{\numberline {17}{\ignorespaces Zuordnungstabelle der sensorspezifischen Richtungsangaben auf Himmelsrichtungen.}}{27}{figure.17}} +\newlabel{tbl:zuordnungstabell}{{17}{27}{Zuordnungstabelle der sensorspezifischen Richtungsangaben auf Himmelsrichtungen}{figure.17}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {18}{\ignorespaces Zeitlicher Verlauf eines HMMs.}}{27}{figure.18}} +\@writefile{toc}{\contentsline {subsection}{\numberline {7.2}L"osungsansatz: Hidden Markow Modell}{27}{subsection.7.2}} +\newlabel{sec:berechnung:hmm}{{7.2}{27}{L"osungsansatz: Hidden Markow Modell\relax }{subsection.7.2}{}} +\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.1}Grundlagen}{27}{subsubsection.7.2.1}} \citation{paper:kwonmurphy} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.2}HMM f"ur eine Kreuzung}{27}{subsubsection.7.2.2}} -\@writefile{toc}{\contentsline {subsection}{\numberline {7.3}L"osungsansatz: Wegfindungsalgorithmen}{27}{subsection.7.3}} -\newlabel{sec:berechnung:astar}{{7.3}{27}{L"osungsansatz: Wegfindungsalgorithmen\relax }{subsection.7.3}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {7.4}L"osungsansatz: Lineares Gleichungssystem}{27}{subsection.7.4}} -\newlabel{sec:berechnung:lgs}{{7.4}{27}{L"osungsansatz: Lineares Gleichungssystem\relax }{subsection.7.4}{}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.4.1}Grundlagen}{28}{subsubsection.7.4.1}} -\newlabel{sec:berechnung:lgs:grund}{{7.4.1}{28}{Grundlagen\relax }{subsubsection.7.4.1}{}} -\newlabel{lgs:allgemein}{{4}{28}{Grundlagen\relax }{equation.7.4}{}} -\newlabel{lgs:matrix}{{5}{28}{Grundlagen\relax }{equation.7.5}{}} -\newlabel{lgs:koefmatrix}{{6}{28}{Grundlagen\relax }{equation.7.6}{}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.4.2}Lineares Gleichungssystem einer Kreuzung}{28}{subsubsection.7.4.2}} -\newlabel{sec:berechnung:lgs:xr}{{7.4.2}{28}{Lineares Gleichungssystem einer Kreuzung\relax }{subsubsection.7.4.2}{}} -\newlabel{equ:xrallgemein}{{7}{29}{Lineares Gleichungssystem einer Kreuzung\relax }{equation.7.7}{}} -\newlabel{equ:algcalcmatrix}{{9}{29}{Lineares Gleichungssystem einer Kreuzung\relax }{equation.7.9}{}} -\newlabel{abb:a23calc}{{11}{29}{Lineares Gleichungssystem einer Kreuzung\relax }{equation.7.11}{}} -\newlabel{abb:a23d10virt}{{13}{30}{Lineares Gleichungssystem einer Kreuzung\relax }{equation.7.13}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {7.5}Kreuzungsberechnung am Graphen}{30}{subsection.7.5}} -\newlabel{sec:berechnung:graph}{{7.5}{30}{Kreuzungsberechnung am Graphen\relax }{subsection.7.5}{}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.5.1}Verkehrsfluss zwischen Kreuzungen}{31}{subsubsection.7.5.1}} -\newlabel{sec:berechnung:betweenxr}{{7.5.1}{31}{Verkehrsfluss zwischen Kreuzungen\relax }{subsubsection.7.5.1}{}} -\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.5.2}Sonderfall: Validierungssensor}{31}{subsubsection.7.5.2}} -\newlabel{sec:berechnung:vallidate}{{7.5.2}{31}{Sonderfall: Validierungssensor\relax }{subsubsection.7.5.2}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {17}{\ignorespaces Kreuzung A4}}{32}{figure.17}} -\@writefile{toc}{\contentsline {section}{\numberline {8}Validierung}{33}{section.8}} -\newlabel{sec:validierung}{{8}{33}{Validierung\relax }{section.8}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {8.1}Validierung durch Testdatenmenge}{33}{subsection.8.1}} -\@writefile{toc}{\contentsline {subsection}{\numberline {8.2}Verkehrsz"ahlung}{33}{subsection.8.2}} -\@writefile{toc}{\contentsline {subsection}{\numberline {8.3}Validierung der Berechneten Verkehrswerte}{33}{subsection.8.3}} -\@writefile{toc}{\contentsline {subsection}{\numberline {8.4}"Uberpr"ufung des Modells}{33}{subsection.8.4}} +\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.2}HMM f"ur eine Kreuzung}{28}{subsubsection.7.2.2}} +\@writefile{toc}{\contentsline {subsection}{\numberline {7.3}L"osungsansatz: Wegfindungsalgorithmen}{28}{subsection.7.3}} +\newlabel{sec:berechnung:astar}{{7.3}{28}{L"osungsansatz: Wegfindungsalgorithmen\relax }{subsection.7.3}{}} +\@writefile{toc}{\contentsline {subsection}{\numberline {7.4}L"osungsansatz: Lineares Gleichungssystem}{28}{subsection.7.4}} +\newlabel{sec:berechnung:lgs}{{7.4}{28}{L"osungsansatz: Lineares Gleichungssystem\relax }{subsection.7.4}{}} +\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.4.1}Grundlagen}{29}{subsubsection.7.4.1}} +\newlabel{sec:berechnung:lgs:grund}{{7.4.1}{29}{Grundlagen\relax }{subsubsection.7.4.1}{}} +\newlabel{lgs:allgemein}{{4}{29}{Grundlagen\relax }{equation.7.4}{}} +\newlabel{lgs:matrix}{{5}{29}{Grundlagen\relax }{equation.7.5}{}} +\newlabel{lgs:koefmatrix}{{6}{29}{Grundlagen\relax }{equation.7.6}{}} +\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.4.2}Lineares Gleichungssystem einer Kreuzung}{29}{subsubsection.7.4.2}} +\newlabel{sec:berechnung:lgs:xr}{{7.4.2}{29}{Lineares Gleichungssystem einer Kreuzung\relax }{subsubsection.7.4.2}{}} +\newlabel{equ:xrallgemein}{{7}{30}{Lineares Gleichungssystem einer Kreuzung\relax }{equation.7.7}{}} +\newlabel{equ:algcalcmatrix}{{9}{30}{Lineares Gleichungssystem einer Kreuzung\relax }{equation.7.9}{}} +\newlabel{abb:a23calc}{{11}{30}{Lineares Gleichungssystem einer Kreuzung\relax }{equation.7.11}{}} +\newlabel{abb:a23d10virt}{{13}{31}{Lineares Gleichungssystem einer Kreuzung\relax }{equation.7.13}{}} +\@writefile{toc}{\contentsline {subsection}{\numberline {7.5}Kreuzungsberechnung am Graphen}{31}{subsection.7.5}} +\newlabel{sec:berechnung:graph}{{7.5}{31}{Kreuzungsberechnung am Graphen\relax }{subsection.7.5}{}} +\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.5.1}Verkehrsfluss zwischen Kreuzungen}{32}{subsubsection.7.5.1}} +\newlabel{sec:berechnung:betweenxr}{{7.5.1}{32}{Verkehrsfluss zwischen Kreuzungen\relax }{subsubsection.7.5.1}{}} +\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.5.2}Sonderfall: Validierungssensor}{32}{subsubsection.7.5.2}} +\newlabel{sec:berechnung:vallidate}{{7.5.2}{32}{Sonderfall: Validierungssensor\relax }{subsubsection.7.5.2}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {19}{\ignorespaces Kreuzung A4}}{33}{figure.19}} +\@writefile{toc}{\contentsline {section}{\numberline {8}Validierung}{34}{section.8}} +\newlabel{sec:validierung}{{8}{34}{Validierung\relax }{section.8}{}} +\@writefile{toc}{\contentsline {subsection}{\numberline {8.1}Validierung durch Testdatenmenge}{34}{subsection.8.1}} +\@writefile{toc}{\contentsline {subsection}{\numberline {8.2}Verkehrsz"ahlung}{34}{subsection.8.2}} +\@writefile{toc}{\contentsline {subsection}{\numberline {8.3}Validierung der Berechneten Verkehrswerte}{34}{subsection.8.3}} +\@writefile{toc}{\contentsline {subsection}{\numberline {8.4}"Uberpr"ufung des Modells}{34}{subsection.8.4}} \citation{thesis:mueller} -\@writefile{toc}{\contentsline {section}{\numberline {9}Visualisierung}{34}{section.9}} -\newlabel{sec:visualisierung}{{9}{34}{Visualisierung\relax }{section.9}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {9.1}Visualisierung des Graphen mit JMapViewer}{34}{subsection.9.1}} -\@writefile{toc}{\contentsline {subsection}{\numberline {9.2}Visualisierung des JGraphT-Graphen}{34}{subsection.9.2}} -\newlabel{abb:jmapviewer}{{9.1}{35}{Visualisierung des Graphen mit JMapViewer\relax }{subfigure.18.1}{}} -\newlabel{abb:handischxrover}{{9.1}{35}{Visualisierung des Graphen mit JMapViewer\relax }{subfigure.18.2}{}} -\@writefile{lof}{\contentsline {subfigure}{\numberline{(a)}{\ignorespaces {JMapViewer Anwendung mit eingezeichneten Kreuzungsbereichen (rot) und Sebsorpositionen (gelb). Zentriert auf den Bereich der 'Ministadt'}}}{35}{subfigure.18.2}} -\@writefile{lof}{\contentsline {subfigure}{\numberline{(b)}{\ignorespaces {Ministadt, h"andisch visualisiert.}}}{35}{subfigure.18.2}} -\newlabel{lst:create_vis_graph}{{5}{35}{Befehl zur Konvertierung und Darstellung eines JGraphT Graphen als JGraph\relax }{lstlisting.5}{}} -\@writefile{lol}{\contentsline {lstlisting}{\numberline {5}Befehl zur Konvertierung und Darstellung eines JGraphT Graphen als JGraph}{35}{lstlisting.5}} -\newlabel{abb:jgraphtubersicht}{{9.2}{36}{Visualisierung des JGraphT-Graphen\relax }{subfigure.18.3}{}} -\newlabel{abb:jgraphxr}{{9.2}{36}{Visualisierung des JGraphT-Graphen\relax }{subfigure.18.4}{}} -\@writefile{lof}{\contentsline {subfigure}{\numberline{(c)}{\ignorespaces {Kreuzungsübersichtsgraph mit JGraph visualisiert.}}}{36}{subfigure.18.4}} -\@writefile{lof}{\contentsline {subfigure}{\numberline{(d)}{\ignorespaces {Kreuzung AX mit JGraph visualisiert.}}}{36}{subfigure.18.4}} -\@writefile{toc}{\contentsline {section}{\numberline {10}Fazit \& Ausblick}{36}{section.10}} -\newlabel{sec:ausblick}{{10}{36}{Fazit \& Ausblick\relax }{section.10}{}} +\@writefile{toc}{\contentsline {section}{\numberline {9}Visualisierung}{35}{section.9}} +\newlabel{sec:visualisierung}{{9}{35}{Visualisierung\relax }{section.9}{}} +\@writefile{toc}{\contentsline {subsection}{\numberline {9.1}Visualisierung des Graphen mit JMapViewer}{35}{subsection.9.1}} +\@writefile{toc}{\contentsline {subsection}{\numberline {9.2}Visualisierung des JGraphT-Graphen}{35}{subsection.9.2}} +\newlabel{abb:jmapviewer}{{9.1}{36}{Visualisierung des Graphen mit JMapViewer\relax }{subfigure.20.1}{}} +\newlabel{abb:handischxrover}{{9.1}{36}{Visualisierung des Graphen mit JMapViewer\relax }{subfigure.20.2}{}} +\@writefile{lof}{\contentsline {subfigure}{\numberline{(a)}{\ignorespaces {JMapViewer Anwendung mit eingezeichneten Kreuzungsbereichen (rot) und Sebsorpositionen (gelb). Zentriert auf den Bereich der 'Ministadt'}}}{36}{subfigure.20.2}} +\@writefile{lof}{\contentsline {subfigure}{\numberline{(b)}{\ignorespaces {Ministadt, h"andisch visualisiert.}}}{36}{subfigure.20.2}} +\newlabel{lst:create_vis_graph}{{5}{36}{Befehl zur Konvertierung und Darstellung eines JGraphT Graphen als JGraph\relax }{lstlisting.5}{}} +\@writefile{lol}{\contentsline {lstlisting}{\numberline {5}Befehl zur Konvertierung und Darstellung eines JGraphT Graphen als JGraph}{36}{lstlisting.5}} +\newlabel{abb:jgraphtubersicht}{{9.2}{37}{Visualisierung des JGraphT-Graphen\relax }{subfigure.20.3}{}} +\newlabel{abb:jgraphxr}{{9.2}{37}{Visualisierung des JGraphT-Graphen\relax }{subfigure.20.4}{}} +\@writefile{lof}{\contentsline {subfigure}{\numberline{(c)}{\ignorespaces {Kreuzungs"ubersichtsgraph mit JGraph visualisiert.}}}{37}{subfigure.20.4}} +\@writefile{lof}{\contentsline {subfigure}{\numberline{(d)}{\ignorespaces {Kreuzung AX mit JGraph visualisiert.}}}{37}{subfigure.20.4}} +\@writefile{toc}{\contentsline {section}{\numberline {10}Fazit \& Ausblick}{37}{section.10}} +\newlabel{sec:ausblick}{{10}{37}{Fazit \& Ausblick\relax }{section.10}{}} \bibstyle{is-abbrv} \bibdata{bib/literature} \bibcite{book:rilsa}{1} @@ -240,58 +244,58 @@ \bibcite{web:statista:lkw}{18} \bibcite{web:statista:pkw}{19} \bibcite{book:verkehrdata}{20} -\@writefile{toc}{\contentsline {section}{\numberline {11}Bibliographie}{37}{section.10}} -\@writefile{toc}{\contentsline {section}{\numberline {12}Abbildungsverzeichnis}{38}{section.10}} -\@writefile{toc}{\contentsline {section}{\numberline {13}Quellcodeverzeichnis}{38}{section.10}} -\@writefile{toc}{\contentsline {section}{\numberline {14}Anhang}{39}{section.14}} -\newlabel{sec:anhang}{{14}{39}{Anhang\relax }{section.14}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {18}{\ignorespaces CAD Bild der Stadt Darmstadt, mit eingezeichneten Kreuzungen}}{40}{figure.18}} -\newlabel{abb:caddarmstadt}{{18}{40}{CAD Bild der Stadt Darmstadt, mit eingezeichneten Kreuzungen\relax }{figure.18}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {19}{\ignorespaces Abbiegewahrscheinlichkeiten Darmstadt Nord}}{41}{figure.19}} -\newlabel{abb:abbwnorth}{{19}{41}{Abbiegewahrscheinlichkeiten Darmstadt Nord\relax }{figure.19}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {20}{\ignorespaces Abbiegewahrscheinlichkeiten Darmstadt Süd}}{42}{figure.20}} -\newlabel{abb:abbwsouth}{{20}{42}{Abbiegewahrscheinlichkeiten Darmstadt Süd\relax }{figure.20}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {21}{\ignorespaces Kreuzungsübersicht 'Ministadt'in der Stadt Darmstadt}}{44}{figure.21}} -\newlabel{anhang:a3}{{14}{45}{\relax }{figure.21}{}} -\newlabel{anhang:a4}{{14}{45}{\relax }{figure.24}{}} -\newlabel{anhang:a5}{{14}{45}{\relax }{figure.27}{}} -\newlabel{anhang:a12}{{14}{45}{\relax }{figure.30}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {22}{\ignorespaces Kreuzung A3}}{46}{figure.22}} -\@writefile{lof}{\contentsline {figure}{\numberline {23}{\ignorespaces Übersetzungstabelle für Kreuzung A3}}{47}{figure.23}} -\@writefile{lof}{\contentsline {figure}{\numberline {24}{\ignorespaces CAD Zeichnung der Kreuzung A3}}{48}{figure.24}} -\@writefile{lof}{\contentsline {figure}{\numberline {25}{\ignorespaces Kreuzung A4}}{49}{figure.25}} -\@writefile{lof}{\contentsline {figure}{\numberline {26}{\ignorespaces Übersetzungstabelle für Kreuzung A4}}{50}{figure.26}} -\@writefile{lof}{\contentsline {figure}{\numberline {27}{\ignorespaces CAD Zeichnung der Kreuzung A4}}{51}{figure.27}} -\@writefile{lof}{\contentsline {figure}{\numberline {28}{\ignorespaces Kreuzung A5}}{52}{figure.28}} -\@writefile{lof}{\contentsline {figure}{\numberline {29}{\ignorespaces Übersetzungstabelle für Kreuzung A5}}{53}{figure.29}} -\@writefile{lof}{\contentsline {figure}{\numberline {30}{\ignorespaces CAD Zeichnung der Kreuzung A5}}{54}{figure.30}} -\@writefile{lof}{\contentsline {figure}{\numberline {31}{\ignorespaces Kreuzung A12}}{55}{figure.31}} -\newlabel{anhang:a23}{{14}{56}{\relax }{figure.33}{}} -\newlabel{anhang:a28}{{14}{56}{\relax }{figure.36}{}} -\newlabel{anhang:a29}{{14}{56}{\relax }{figure.39}{}} -\newlabel{anhang:a46}{{14}{56}{\relax }{figure.42}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {32}{\ignorespaces Übersetzungstabelle für Kreuzung A12}}{57}{figure.32}} -\@writefile{lof}{\contentsline {figure}{\numberline {33}{\ignorespaces CAD Zeichnung der Kreuzung A12}}{58}{figure.33}} -\@writefile{lof}{\contentsline {figure}{\numberline {34}{\ignorespaces Kreuzung A23}}{59}{figure.34}} -\@writefile{lof}{\contentsline {figure}{\numberline {35}{\ignorespaces Übersetzungstabelle für Kreuzung A23}}{60}{figure.35}} -\@writefile{lof}{\contentsline {figure}{\numberline {36}{\ignorespaces CAD Zeichnung der Kreuzung A23}}{61}{figure.36}} -\@writefile{lof}{\contentsline {figure}{\numberline {37}{\ignorespaces Kreuzung A28}}{62}{figure.37}} -\@writefile{lof}{\contentsline {figure}{\numberline {38}{\ignorespaces Übersetzungstabelle für Kreuzung A28}}{63}{figure.38}} -\@writefile{lof}{\contentsline {figure}{\numberline {39}{\ignorespaces CAD Zeichnung der Kreuzung A28}}{64}{figure.39}} -\@writefile{lof}{\contentsline {figure}{\numberline {40}{\ignorespaces Kreuzung A29}}{65}{figure.40}} -\@writefile{lof}{\contentsline {figure}{\numberline {41}{\ignorespaces Übersetzungstabelle für Kreuzung A29}}{66}{figure.41}} -\@writefile{lof}{\contentsline {figure}{\numberline {42}{\ignorespaces CAD Zeichnung der Kreuzung A29}}{67}{figure.42}} -\newlabel{anhang:a59}{{14}{68}{\relax }{figure.45}{}} -\newlabel{anhang:a104}{{14}{68}{\relax }{figure.48}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {43}{\ignorespaces Kreuzung A46}}{69}{figure.43}} -\@writefile{lof}{\contentsline {figure}{\numberline {44}{\ignorespaces Übersetzungstabelle für Kreuzung A46}}{70}{figure.44}} -\@writefile{lof}{\contentsline {figure}{\numberline {45}{\ignorespaces CAD Zeichnung der Kreuzung A46}}{71}{figure.45}} -\@writefile{lof}{\contentsline {figure}{\numberline {46}{\ignorespaces Kreuzung A59}}{72}{figure.46}} -\@writefile{lof}{\contentsline {figure}{\numberline {47}{\ignorespaces Übersetzungstabelle für Kreuzung A59}}{73}{figure.47}} -\@writefile{lof}{\contentsline {figure}{\numberline {48}{\ignorespaces CAD Zeichnung der Kreuzung A59}}{74}{figure.48}} -\@writefile{lof}{\contentsline {figure}{\numberline {49}{\ignorespaces Kreuzung A104}}{75}{figure.49}} -\@writefile{lof}{\contentsline {figure}{\numberline {50}{\ignorespaces Übersetzungstabelle für Kreuzung A104}}{76}{figure.50}} -\@writefile{lof}{\contentsline {figure}{\numberline {51}{\ignorespaces CAD Zeichnung der Kreuzung A104}}{77}{figure.51}} -\@writefile{lof}{\contentsline {figure}{\numberline {52}{\ignorespaces Verkehrszählung vom 30.7.2013.}}{79}{figure.52}} -\@writefile{lof}{\contentsline {figure}{\numberline {53}{\ignorespaces Verkehrszählung vom 5.8.2013.}}{80}{figure.53}} -\@writefile{toc}{\contentsline {section}{\numberline {15}Glossar}{81}{figure.53}} +\@writefile{toc}{\contentsline {section}{\numberline {11}Bibliographie}{38}{section.10}} +\@writefile{toc}{\contentsline {section}{\numberline {12}Abbildungsverzeichnis}{39}{section.10}} +\@writefile{toc}{\contentsline {section}{\numberline {13}Quellcodeverzeichnis}{39}{section.10}} +\@writefile{toc}{\contentsline {section}{\numberline {14}Anhang}{40}{section.14}} +\newlabel{sec:anhang}{{14}{40}{Anhang\relax }{section.14}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {20}{\ignorespaces CAD Bild der Stadt Darmstadt, mit eingezeichneten Kreuzungen}}{41}{figure.20}} +\newlabel{abb:caddarmstadt}{{20}{41}{CAD Bild der Stadt Darmstadt, mit eingezeichneten Kreuzungen\relax }{figure.20}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {21}{\ignorespaces Abbiegewahrscheinlichkeiten Darmstadt Nord}}{42}{figure.21}} +\newlabel{abb:abbwnorth}{{21}{42}{Abbiegewahrscheinlichkeiten Darmstadt Nord\relax }{figure.21}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {22}{\ignorespaces Abbiegewahrscheinlichkeiten Darmstadt S"ud}}{43}{figure.22}} +\newlabel{abb:abbwsouth}{{22}{43}{Abbiegewahrscheinlichkeiten Darmstadt S"ud\relax }{figure.22}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {23}{\ignorespaces Kreuzungs"ubersicht 'Ministadt'in der Stadt Darmstadt}}{45}{figure.23}} +\newlabel{anhang:a3}{{14}{46}{\relax }{figure.23}{}} +\newlabel{anhang:a4}{{14}{46}{\relax }{figure.26}{}} +\newlabel{anhang:a5}{{14}{46}{\relax }{figure.29}{}} +\newlabel{anhang:a12}{{14}{46}{\relax }{figure.32}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {24}{\ignorespaces Kreuzung A3}}{47}{figure.24}} +\@writefile{lof}{\contentsline {figure}{\numberline {25}{\ignorespaces "Ubersetzungstabelle f"ur Kreuzung A3}}{48}{figure.25}} +\@writefile{lof}{\contentsline {figure}{\numberline {26}{\ignorespaces CAD Zeichnung der Kreuzung A3}}{49}{figure.26}} +\@writefile{lof}{\contentsline {figure}{\numberline {27}{\ignorespaces Kreuzung A4}}{50}{figure.27}} +\@writefile{lof}{\contentsline {figure}{\numberline {28}{\ignorespaces "Ubersetzungstabelle f"ur Kreuzung A4}}{51}{figure.28}} +\@writefile{lof}{\contentsline {figure}{\numberline {29}{\ignorespaces CAD Zeichnung der Kreuzung A4}}{52}{figure.29}} +\@writefile{lof}{\contentsline {figure}{\numberline {30}{\ignorespaces Kreuzung A5}}{53}{figure.30}} +\@writefile{lof}{\contentsline {figure}{\numberline {31}{\ignorespaces "Ubersetzungstabelle f"ur Kreuzung A5}}{54}{figure.31}} +\@writefile{lof}{\contentsline {figure}{\numberline {32}{\ignorespaces CAD Zeichnung der Kreuzung A5}}{55}{figure.32}} +\@writefile{lof}{\contentsline {figure}{\numberline {33}{\ignorespaces Kreuzung A12}}{56}{figure.33}} +\newlabel{anhang:a23}{{14}{57}{\relax }{figure.35}{}} +\newlabel{anhang:a28}{{14}{57}{\relax }{figure.38}{}} +\newlabel{anhang:a29}{{14}{57}{\relax }{figure.41}{}} +\newlabel{anhang:a46}{{14}{57}{\relax }{figure.44}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {34}{\ignorespaces "Ubersetzungstabelle f"ur Kreuzung A12}}{58}{figure.34}} +\@writefile{lof}{\contentsline {figure}{\numberline {35}{\ignorespaces CAD Zeichnung der Kreuzung A12}}{59}{figure.35}} +\@writefile{lof}{\contentsline {figure}{\numberline {36}{\ignorespaces Kreuzung A23}}{60}{figure.36}} +\@writefile{lof}{\contentsline {figure}{\numberline {37}{\ignorespaces "Ubersetzungstabelle f"ur Kreuzung A23}}{61}{figure.37}} +\@writefile{lof}{\contentsline {figure}{\numberline {38}{\ignorespaces CAD Zeichnung der Kreuzung A23}}{62}{figure.38}} +\@writefile{lof}{\contentsline {figure}{\numberline {39}{\ignorespaces Kreuzung A28}}{63}{figure.39}} +\@writefile{lof}{\contentsline {figure}{\numberline {40}{\ignorespaces "Ubersetzungstabelle f"ur Kreuzung A28}}{64}{figure.40}} +\@writefile{lof}{\contentsline {figure}{\numberline {41}{\ignorespaces CAD Zeichnung der Kreuzung A28}}{65}{figure.41}} +\@writefile{lof}{\contentsline {figure}{\numberline {42}{\ignorespaces Kreuzung A29}}{66}{figure.42}} +\@writefile{lof}{\contentsline {figure}{\numberline {43}{\ignorespaces "Ubersetzungstabelle f"ur Kreuzung A29}}{67}{figure.43}} +\@writefile{lof}{\contentsline {figure}{\numberline {44}{\ignorespaces CAD Zeichnung der Kreuzung A29}}{68}{figure.44}} +\newlabel{anhang:a59}{{14}{69}{\relax }{figure.47}{}} +\newlabel{anhang:a104}{{14}{69}{\relax }{figure.50}{}} +\@writefile{lof}{\contentsline {figure}{\numberline {45}{\ignorespaces Kreuzung A46}}{70}{figure.45}} +\@writefile{lof}{\contentsline {figure}{\numberline {46}{\ignorespaces "Ubersetzungstabelle f"ur Kreuzung A46}}{71}{figure.46}} +\@writefile{lof}{\contentsline {figure}{\numberline {47}{\ignorespaces CAD Zeichnung der Kreuzung A46}}{72}{figure.47}} +\@writefile{lof}{\contentsline {figure}{\numberline {48}{\ignorespaces Kreuzung A59}}{73}{figure.48}} +\@writefile{lof}{\contentsline {figure}{\numberline {49}{\ignorespaces "Ubersetzungstabelle f"ur Kreuzung A59}}{74}{figure.49}} +\@writefile{lof}{\contentsline {figure}{\numberline {50}{\ignorespaces CAD Zeichnung der Kreuzung A59}}{75}{figure.50}} +\@writefile{lof}{\contentsline {figure}{\numberline {51}{\ignorespaces Kreuzung A104}}{76}{figure.51}} +\@writefile{lof}{\contentsline {figure}{\numberline {52}{\ignorespaces "Ubersetzungstabelle f"ur Kreuzung A104}}{77}{figure.52}} +\@writefile{lof}{\contentsline {figure}{\numberline {53}{\ignorespaces CAD Zeichnung der Kreuzung A104}}{78}{figure.53}} +\@writefile{lof}{\contentsline {figure}{\numberline {54}{\ignorespaces Verkehrsz"ahlung vom 30.7.2013.}}{80}{figure.54}} +\@writefile{lof}{\contentsline {figure}{\numberline {55}{\ignorespaces Verkehrsz"ahlung vom 5.8.2013.}}{81}{figure.55}} +\@writefile{toc}{\contentsline {section}{\numberline {15}Glossar}{82}{figure.55}} diff --git a/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.log b/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.log index 91641c53..91737fd5 100644 --- a/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.log +++ b/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.log @@ -1,4 +1,4 @@ -This is pdfTeX, Version 3.1415926-1.40.11 (MiKTeX 2.9) (preloaded format=pdflatex 2013.8.19) 21 AUG 2013 14:43 +This is pdfTeX, Version 3.1415926-1.40.11 (MiKTeX 2.9) (preloaded format=pdflatex 2013.8.19) 21 AUG 2013 17:36 entering extended mode **TUDthesis.tex ("C:\Daten\source\college\ss2013\Bachelor Thesis\thesis_ug\TUDthesis.tex" @@ -1598,7 +1598,7 @@ Underfull \hbox (badness 10000) in paragraph at lines 59--63 [] - + File: ext/graphen.pdf Graphic file (type pdf) [17] @@ -1671,92 +1671,103 @@ Underfull \hbox (badness 10000) in paragraph at lines 192--197 [] + +File: pic/classdiagStreet.png Graphic file (type png) -Underfull \hbox (badness 10000) in paragraph at lines 198--200 + +Underfull \hbox (badness 10000) in paragraph at lines 198--206 [] -[21] -Underfull \hbox (badness 10000) in paragraph at lines 204--228 +[21] +File: pic/classdiagAlgo.png Graphic file (type png) + + +Underfull \hbox (badness 10000) in paragraph at lines 210--238 [] -Underfull \hbox (badness 10000) in paragraph at lines 204--228 +Underfull \hbox (badness 10000) in paragraph at lines 210--238 [] -Underfull \hbox (badness 10000) in paragraph at lines 204--228 +Underfull \hbox (badness 10000) in paragraph at lines 210--238 [] -Underfull \hbox (badness 10000) in paragraph at lines 204--228 +Underfull \hbox (badness 10000) in paragraph at lines 210--238 [] -Underfull \hbox (badness 10000) in paragraph at lines 204--228 +Underfull \hbox (badness 10000) in paragraph at lines 210--238 [] -Overfull \hbox (14.46513pt too wide) in paragraph at lines 204--228 +Overfull \hbox (14.46513pt too wide) in paragraph at lines 210--238 [] \T1/5ch/m/n/9.5 Die Klas- [] -Underfull \hbox (badness 10000) in paragraph at lines 204--228 +Underfull \hbox (badness 10000) in paragraph at lines 210--238 [] -Underfull \hbox (badness 10000) in paragraph at lines 204--228 +Underfull \hbox (badness 10000) in paragraph at lines 210--238 [] -Underfull \hbox (badness 10000) in paragraph at lines 204--228 +Underfull \hbox (badness 10000) in paragraph at lines 210--238 [] -[22] -Underfull \hbox (badness 10000) in paragraph at lines 234--236 +[22 ] +Underfull \vbox (badness 10000) has occurred while \output is active [] - [] - - -Underfull \hbox (badness 10000) in paragraph at lines 237--243 - - [] - - -Underfull \hbox (badness 10000) in paragraph at lines 237--243 - - [] - - -Underfull \hbox (badness 10000) in paragraph at lines 237--243 - - [] - - -Underfull \hbox (badness 10000) in paragraph at lines 237--243 - - [] - - -Underfull \hbox (badness 10000) in paragraph at lines 237--243 - - [] - -[23] + [23 ] Underfull \hbox (badness 10000) in paragraph at lines 244--246 [] -[24]) + +Underfull \hbox (badness 10000) in paragraph at lines 247--253 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 247--253 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 247--253 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 247--253 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 247--253 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 254--256 + + [] + +[24] [25]) ("C:\Daten\source\college\ss2013\Bachelor Thesis\thesis_ug\tex/berechnung.tex" Underfull \hbox (badness 10000) in paragraph at lines 2--4 @@ -1787,11 +1798,11 @@ Underfull \hbox (badness 10000) in paragraph at lines 43--45 [] -[25] +[26] Missing character: There is no â in font mdbchr7t! Missing character: There is no ‚ in font mdbchr7t! Missing character: There is no ¬ in font mdbchr7t! - + File: pic/500px-Hmm_temporal_bayesian_net.png Graphic file (type png) @@ -1799,7 +1810,7 @@ Underfull \hbox (badness 10000) in paragraph at lines 52--66 [] -[26 ] Underfull \hbox (badness 10000) in paragraph at lines 72--75 @@ -1825,7 +1836,7 @@ Underfull \hbox (badness 10000) in paragraph at lines 83--84 [] -[27] +[28] Underfull \hbox (badness 10000) in paragraph at lines 91--94 [] @@ -1840,49 +1851,49 @@ Underfull \hbox (badness 10000) in paragraph at lines 130--132 [] -[28] -Underfull \hbox (badness 10000) in paragraph at lines 193--197 - - [] - [29] -Underfull \hbox (badness 10000) in paragraph at lines 255--260 - - [] - - -Underfull \hbox (badness 10000) in paragraph at lines 288--291 - - [] - - -Underfull \hbox (badness 10000) in paragraph at lines 292--299 - - [] - - -Underfull \hbox (badness 10000) in paragraph at lines 292--299 +Underfull \hbox (badness 10000) in paragraph at lines 189--193 [] [30] -Underfull \hbox (badness 10000) in paragraph at lines 300--303 +Underfull \hbox (badness 10000) in paragraph at lines 239--244 [] -Underfull \hbox (badness 10000) in paragraph at lines 304--306 +Underfull \hbox (badness 10000) in paragraph at lines 266--269 [] - + +Underfull \hbox (badness 10000) in paragraph at lines 270--277 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 270--277 + + [] + +[31] +Underfull \hbox (badness 10000) in paragraph at lines 278--281 + + [] + + +Underfull \hbox (badness 10000) in paragraph at lines 282--284 + + [] + + File: ext/KreuzungA4.pdf Graphic file (type pdf) - [31] [32 [32] [33 ]) ("C:\Daten\source\college\ss2013\Bachelor Thesis\thesis_ug\tex/validierung.tex" -LaTeX Warning: Reference `sec:berechnung:validate' on page 33 undefined on inpu +LaTeX Warning: Reference `sec:berechnung:validate' on page 34 undefined on inpu t line 5. @@ -1901,7 +1912,7 @@ Underfull \hbox (badness 10000) in paragraph at lines 4--8 [] -LaTeX Warning: Reference `thesis:michael' on page 33 undefined on input line 9. +LaTeX Warning: Reference `thesis:michael' on page 34 undefined on input line 9. @@ -1919,7 +1930,7 @@ Underfull \hbox (badness 10000) in paragraph at lines 9--13 [] -[33]) +[34]) ("C:\Daten\source\college\ss2013\Bachelor Thesis\thesis_ug\tex/visualisierung.t ex" Underfull \hbox (badness 10000) in paragraph at lines 2--4 @@ -1937,17 +1948,17 @@ Package hyperref Warning: No autoref name for `subfigure' on input line 13. Package hyperref Warning: No autoref name for `subfigure' on input line 13. - + File: pic/osm_overview.png Graphic file (type png) File: ext/Kreuzungsuebersicht.pdf Graphic file (type pdf) - + File: pic/jgraphuebersicht.png Graphic file (type png) - + File: pic/jgraphxr.png Graphic file (type png) Underfull \hbox (badness 10000) in paragraph at lines 22--47 @@ -1959,7 +1970,7 @@ Underfull \hbox (badness 10000) in paragraph at lines 22--47 [] -[34] [35 ]) ("C:\Daten\source\college\ss2013\Bachelor Thesis\thesis_ug\tex/ausblick.tex" Underfull \hbox (badness 10000) in paragraph at lines 2--7 @@ -1976,7 +1987,7 @@ Underfull \hbox (badness 10000) in paragraph at lines 2--7 [] -[36 ]) ("C:\Daten\source\college\ss2013\Bachelor Thesis\thesis_ug\TUDthesis.bb l" @@ -1985,7 +1996,7 @@ Underfull \hbox (badness 2158) in paragraph at lines 45--50 er-run-gen mit-tels Zel-lu-la-r-au-to-ma-ten für den [] -) [37] +) [38] Class scrartcl Warning: Usage of deprecated \float@listhead! (scrartcl) You should use the features of package `tocbasic' @@ -1997,210 +2008,210 @@ e 82. ("C:\Daten\source\college\ss2013\Bachelor Thesis\thesis_ug\TUDthesis.lol") \tf@lol=\write8 -[38] ("C:\Daten\source\college\ss2013\Bachelor Thesis\thesis_ug\tex/anhang.tex" +[39] ("C:\Daten\source\college\ss2013\Bachelor Thesis\thesis_ug\tex/anhang.tex" pdfTeX warning: pdflatex.exe (file C:/Daten/source/college/ss2013/Bachelor Thes is/thesis_ug/ext/overviewmap.pdf): PDF inclusion: found PDF version <1.6>, but at most version <1.5> allowed - + File: ext/overviewmap.pdf Graphic file (type pdf) - + File: ext/MessgruppentabelleNord-2013-01-08.pdf Graphic file (type pdf) - + File: ext/MessgruppentabelleSued-2013-01-08.pdf Graphic file (type pdf) - [39] [40 ] [41 [40] [41 ] [42 ] [42 ] [43 ] File: ext/Kreuzungsuebersicht.pdf Graphic file (type pdf) - [43 + [44 ] -[44] +[45] File: ext/KreuzungA3.pdf Graphic file (type pdf) - + File: ext/A3_Uebersetzungstabelle.pdf Graphic file (type pdf) - + File: ext/DA_A_3_L4.pdf Graphic file (type pdf) File: ext/KreuzungA4.pdf Graphic file (type pdf) - + File: ext/A4_Uebersetzungstabelle.pdf Graphic file (type pdf) - + File: ext/DA_A_4_L3.pdf Graphic file (type pdf) - + File: ext/KreuzungA5.pdf Graphic file (type pdf) - + File: ext/A5_Uebersetzungstabelle.pdf Graphic file (type pdf) - + File: ext/DA_A_5_L3.pdf Graphic file (type pdf) - + File: ext/KreuzungA12.pdf Graphic file (type pdf) - + File: ext/A12_Uebersetzungstabelle.pdf Graphic file (type pdf) - + File: ext/DA_A_12.pdf Graphic file (type pdf) -[45 +[46 -] [46 ] [47 ] [48 ] [49] [50 ] [51 ] [52 ] [53 ] [48 ] [49 ] [50] [51 ] [52 ] [53 ] [54 ] -[54 ] [55 ] [56 ] File: ext/KreuzungA23.pdf Graphic file (type pdf) - + File: ext/A23_Uebersetzungstabelle.pdf Graphic file (type pdf) - + File: ext/DA_A_23_L1.pdf Graphic file (type pdf) - + File: ext/KreuzungA28.pdf Graphic file (type pdf) - + File: ext/A28_Uebersetzungstabelle.pdf Graphic file (type pdf) - + File: ext/DA_A_28_L1.pdf Graphic file (type pdf) - + File: ext/KreuzungA29.pdf Graphic file (type pdf) - + File: ext/A29_Uebersetzungstabelle.pdf Graphic file (type pdf) - + File: ext/DA_A_29_L2.pdf Graphic file (type pdf) - + File: ext/KreuzungA46.pdf Graphic file (type pdf) - + File: ext/A46_Uebersetzungstabelle.pdf Graphic file (type pdf) - + File: ext/DA_A_46_L1.pdf Graphic file (type pdf) - [56] [57 ] [58 ] [59] [60 [57] [58 ] [59 ] [60] [61 ] -[61 ] [62 ] [63 ] [64 ] [65 ] [66 ] [67 ] [63 ] [64 ] [65 ] [66 ] [67 ] [68 ] - + File: ext/KreuzungA59.pdf Graphic file (type pdf) - + File: ext/A59_Uebersetzungstabelle.pdf Graphic file (type pdf) - + File: ext/DA_A_59.pdf Graphic file (type pdf) - + File: ext/KreuzungA104.pdf Graphic file (type pdf) - + File: ext/A104_Uebersetzungstabelle.pdf Graphic file (type pdf) - + File: ext/DA_A_104_L1.pdf Graphic file (type pdf) - [68] [69 ] [70 ] [71 ] [72 ] [73 [69] [70 ] [71 ] [72 ] [73 ] [74 -] [74 ] [75 ] [76 ] [77 ] [76 ] [77 ] [78 ] - + File: ext/verkehrszaehlung.pdf Graphic file (type pdf) - + File: ext/verkehrszaehlung_08_05.pdf Graphic file (type pdf) -) [78 +) [79 -] [79 ] [80 ] [81 ] No file TUDthesis.gls. Package atveryend Info: Empty hook `BeforeClearDocument' on input line 90. -[81] +[82] Package atveryend Info: Empty hook `AfterLastShipout' on input line 90. ("C:\Daten\source\college\ss2013\Bachelor Thesis\thesis_ug\TUDthesis.aux") Package atveryend Info: Executing hook `AtVeryEndDocument' on input line 90. Package rerunfilecheck Info: File `TUDthesis.out' has not changed. -(rerunfilecheck) Checksum: D0A00731A9D00861DC54E24C86B7B282;4182. +(rerunfilecheck) Checksum: 8D973AE307B6137E8EDC8F3DEC3C3376;4182. LaTeX Warning: There were undefined references. ) Here is how much of TeX's memory you used: - 17640 strings out of 494019 - 268730 string characters out of 3145626 - 483561 words of memory out of 3000000 - 20043 multiletter control sequences out of 15000+200000 - 177087 words of font info for 124 fonts, out of 3000000 for 9000 + 17656 strings out of 494019 + 269059 string characters out of 3145626 + 483760 words of memory out of 3000000 + 20054 multiletter control sequences out of 15000+200000 + 179147 words of font info for 125 fonts, out of 3000000 for 9000 714 hyphenation exceptions out of 8191 65i,13n,77p,2255b,1293s stack positions out of 5000i,500n,10000p,200000b,50000s {C:/Program Files (x86)/MiKTeX/fonts/enc/dvips/fontname/texnansi.enc}{C:/Prog @@ -2219,9 +2230,9 @@ oftmake/stafford/5sfr8a.pfb> -Output written on TUDthesis.pdf (84 pages, 16919332 bytes). +Output written on TUDthesis.pdf (85 pages, 16949550 bytes). PDF statistics: - 2313 PDF objects out of 2487 (max. 8388607) - 344 named destinations out of 1000 (max. 500000) - 690 words of extra memory for PDF output out of 10000 (max. 10000000) + 2326 PDF objects out of 2487 (max. 8388607) + 347 named destinations out of 1000 (max. 500000) + 700 words of extra memory for PDF output out of 10000 (max. 10000000) diff --git a/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.lol b/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.lol index 4d2a43b8..4805eaa1 100644 --- a/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.lol +++ b/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.lol @@ -1,5 +1,5 @@ \contentsline {lstlisting}{\numberline {1}SQL-Abfrage der Sensorens}{11}{lstlisting.1} \contentsline {lstlisting}{\numberline {2}SQL-Abfrage der Sensorwerte}{12}{lstlisting.2} -\contentsline {lstlisting}{\numberline {3}abc}{22}{lstlisting.3} -\contentsline {lstlisting}{\numberline {4}abc}{22}{lstlisting.4} -\contentsline {lstlisting}{\numberline {5}Befehl zur Konvertierung und Darstellung eines JGraphT Graphen als JGraph}{35}{lstlisting.5} +\contentsline {lstlisting}{\numberline {3}abc}{23}{lstlisting.3} +\contentsline {lstlisting}{\numberline {4}abc}{23}{lstlisting.4} +\contentsline {lstlisting}{\numberline {5}Befehl zur Konvertierung und Darstellung eines JGraphT Graphen als JGraph}{36}{lstlisting.5} diff --git a/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.out b/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.out index 940a8d96..fd57762c 100644 --- a/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.out +++ b/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.out @@ -51,4 +51,4 @@ \BOOKMARK [1][-]{section.10}{Abbildungsverzeichnis}{}% 51 \BOOKMARK [1][-]{section.10}{Quellcodeverzeichnis}{}% 52 \BOOKMARK [1][-]{section.14}{Anhang}{}% 53 -\BOOKMARK [1][-]{figure.53}{Glossar}{}% 54 +\BOOKMARK [1][-]{figure.55}{Glossar}{}% 54 diff --git a/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.pdf b/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.pdf index f1f29779..1a558e95 100644 Binary files a/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.pdf and b/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.pdf differ diff --git a/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.synctex.gz b/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.synctex.gz index 5d38ffd7..0f21acdf 100644 Binary files a/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.synctex.gz and b/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.synctex.gz differ diff --git a/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.toc b/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.toc index edf5571c..ad37dafd 100644 --- a/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.toc +++ b/ss2013/Bachelor Thesis/thesis_ug/TUDthesis.toc @@ -24,32 +24,32 @@ \contentsline {subsubsection}{\numberline {6.3.2}Eingangsmatrix}{20}{subsubsection.6.3.2} \contentsline {subsection}{\numberline {6.4}Datenbankmodell}{20}{subsection.6.4} \contentsline {subsection}{\numberline {6.5}Implementierung}{21}{subsection.6.5} -\contentsline {subsection}{\numberline {6.6}Zuk"unftige Herausforderungen des Modells}{23}{subsection.6.6} +\contentsline {subsection}{\numberline {6.6}Zuk"unftige Herausforderungen des Modells}{24}{subsection.6.6} \contentsline {subsubsection}{\numberline {6.6.1}Herausforderung: Verfolgung von Fahrzeugen "uber eine Kreuzung hinaus}{24}{subsubsection.6.6.1} -\contentsline {subsubsection}{\numberline {6.6.2}Herausforderung: Genaues Bestimmen des Abbiegeverhaltens}{24}{subsubsection.6.6.2} -\contentsline {section}{\numberline {7}L"osungsans"atze}{25}{section.7} -\contentsline {subsection}{\numberline {7.1}Aufbereiten der Abbiegewahrscheinlichkeiten}{25}{subsection.7.1} -\contentsline {subsection}{\numberline {7.2}L"osungsansatz: Hidden Markow Modell}{26}{subsection.7.2} -\contentsline {subsubsection}{\numberline {7.2.1}Grundlagen}{26}{subsubsection.7.2.1} -\contentsline {subsubsection}{\numberline {7.2.2}HMM f"ur eine Kreuzung}{27}{subsubsection.7.2.2} -\contentsline {subsection}{\numberline {7.3}L"osungsansatz: Wegfindungsalgorithmen}{27}{subsection.7.3} -\contentsline {subsection}{\numberline {7.4}L"osungsansatz: Lineares Gleichungssystem}{27}{subsection.7.4} -\contentsline {subsubsection}{\numberline {7.4.1}Grundlagen}{28}{subsubsection.7.4.1} -\contentsline {subsubsection}{\numberline {7.4.2}Lineares Gleichungssystem einer Kreuzung}{28}{subsubsection.7.4.2} -\contentsline {subsection}{\numberline {7.5}Kreuzungsberechnung am Graphen}{30}{subsection.7.5} -\contentsline {subsubsection}{\numberline {7.5.1}Verkehrsfluss zwischen Kreuzungen}{31}{subsubsection.7.5.1} -\contentsline {subsubsection}{\numberline {7.5.2}Sonderfall: Validierungssensor}{31}{subsubsection.7.5.2} -\contentsline {section}{\numberline {8}Validierung}{33}{section.8} -\contentsline {subsection}{\numberline {8.1}Validierung durch Testdatenmenge}{33}{subsection.8.1} -\contentsline {subsection}{\numberline {8.2}Verkehrsz"ahlung}{33}{subsection.8.2} -\contentsline {subsection}{\numberline {8.3}Validierung der Berechneten Verkehrswerte}{33}{subsection.8.3} -\contentsline {subsection}{\numberline {8.4}"Uberpr"ufung des Modells}{33}{subsection.8.4} -\contentsline {section}{\numberline {9}Visualisierung}{34}{section.9} -\contentsline {subsection}{\numberline {9.1}Visualisierung des Graphen mit JMapViewer}{34}{subsection.9.1} -\contentsline {subsection}{\numberline {9.2}Visualisierung des JGraphT-Graphen}{34}{subsection.9.2} -\contentsline {section}{\numberline {10}Fazit \& Ausblick}{36}{section.10} -\contentsline {section}{\numberline {11}Bibliographie}{37}{section.10} -\contentsline {section}{\numberline {12}Abbildungsverzeichnis}{38}{section.10} -\contentsline {section}{\numberline {13}Quellcodeverzeichnis}{38}{section.10} -\contentsline {section}{\numberline {14}Anhang}{39}{section.14} -\contentsline {section}{\numberline {15}Glossar}{81}{figure.53} +\contentsline {subsubsection}{\numberline {6.6.2}Herausforderung: Genaues Bestimmen des Abbiegeverhaltens}{25}{subsubsection.6.6.2} +\contentsline {section}{\numberline {7}L"osungsans"atze}{26}{section.7} +\contentsline {subsection}{\numberline {7.1}Aufbereiten der Abbiegewahrscheinlichkeiten}{26}{subsection.7.1} +\contentsline {subsection}{\numberline {7.2}L"osungsansatz: Hidden Markow Modell}{27}{subsection.7.2} +\contentsline {subsubsection}{\numberline {7.2.1}Grundlagen}{27}{subsubsection.7.2.1} +\contentsline {subsubsection}{\numberline {7.2.2}HMM f"ur eine Kreuzung}{28}{subsubsection.7.2.2} +\contentsline {subsection}{\numberline {7.3}L"osungsansatz: Wegfindungsalgorithmen}{28}{subsection.7.3} +\contentsline {subsection}{\numberline {7.4}L"osungsansatz: Lineares Gleichungssystem}{28}{subsection.7.4} +\contentsline {subsubsection}{\numberline {7.4.1}Grundlagen}{29}{subsubsection.7.4.1} +\contentsline {subsubsection}{\numberline {7.4.2}Lineares Gleichungssystem einer Kreuzung}{29}{subsubsection.7.4.2} +\contentsline {subsection}{\numberline {7.5}Kreuzungsberechnung am Graphen}{31}{subsection.7.5} +\contentsline {subsubsection}{\numberline {7.5.1}Verkehrsfluss zwischen Kreuzungen}{32}{subsubsection.7.5.1} +\contentsline {subsubsection}{\numberline {7.5.2}Sonderfall: Validierungssensor}{32}{subsubsection.7.5.2} +\contentsline {section}{\numberline {8}Validierung}{34}{section.8} +\contentsline {subsection}{\numberline {8.1}Validierung durch Testdatenmenge}{34}{subsection.8.1} +\contentsline {subsection}{\numberline {8.2}Verkehrsz"ahlung}{34}{subsection.8.2} +\contentsline {subsection}{\numberline {8.3}Validierung der Berechneten Verkehrswerte}{34}{subsection.8.3} +\contentsline {subsection}{\numberline {8.4}"Uberpr"ufung des Modells}{34}{subsection.8.4} +\contentsline {section}{\numberline {9}Visualisierung}{35}{section.9} +\contentsline {subsection}{\numberline {9.1}Visualisierung des Graphen mit JMapViewer}{35}{subsection.9.1} +\contentsline {subsection}{\numberline {9.2}Visualisierung des JGraphT-Graphen}{35}{subsection.9.2} +\contentsline {section}{\numberline {10}Fazit \& Ausblick}{37}{section.10} +\contentsline {section}{\numberline {11}Bibliographie}{38}{section.10} +\contentsline {section}{\numberline {12}Abbildungsverzeichnis}{39}{section.10} +\contentsline {section}{\numberline {13}Quellcodeverzeichnis}{39}{section.10} +\contentsline {section}{\numberline {14}Anhang}{40}{section.14} +\contentsline {section}{\numberline {15}Glossar}{82}{figure.55} diff --git a/ss2013/Bachelor Thesis/thesis_ug/bib/texput.log b/ss2013/Bachelor Thesis/thesis_ug/bib/texput.log index 172f949b..c9ab0068 100644 --- a/ss2013/Bachelor Thesis/thesis_ug/bib/texput.log +++ b/ss2013/Bachelor Thesis/thesis_ug/bib/texput.log @@ -1,4 +1,4 @@ -This is pdfTeX, Version 3.1415926-1.40.11 (MiKTeX 2.9) (preloaded format=pdflatex 2013.8.19) 20 AUG 2013 11:05 +This is pdfTeX, Version 3.1415926-1.40.11 (MiKTeX 2.9) (preloaded format=pdflatex 2013.8.19) 21 AUG 2013 16:51 entering extended mode **literature.tex diff --git a/ss2013/Bachelor Thesis/thesis_ug/tex/anhang.tex b/ss2013/Bachelor Thesis/thesis_ug/tex/anhang.tex index 06b3f690..42a1a4aa 100644 --- a/ss2013/Bachelor Thesis/thesis_ug/tex/anhang.tex +++ b/ss2013/Bachelor Thesis/thesis_ug/tex/anhang.tex @@ -16,16 +16,16 @@ \begin{figure} \centering \fbox{\includegraphics[width=0.95\textwidth-2\fboxsep-2\fboxrule]{ext/MessgruppentabelleSued-2013-01-08}} - \caption{Abbiegewahrscheinlichkeiten Darmstadt Süd} + \caption{Abbiegewahrscheinlichkeiten Darmstadt S"ud} \label{abb:abbwsouth} \end{figure} \clearpage -\subsection*{Kreuzungsübersicht 'Ministadt'} +\subsection*{Kreuzungs"ubersicht 'Ministadt'} \begin{figure} \centering \fbox{\includegraphics[angle={90},width=0.90\textwidth-2\fboxsep-2\fboxrule]{ext/Kreuzungsuebersicht}} - \caption{Kreuzungsübersicht 'Ministadt'in der Stadt Darmstadt} + \caption{Kreuzungs"ubersicht 'Ministadt'in der Stadt Darmstadt} \end{figure} \clearpage @@ -56,7 +56,7 @@ Modellierung der Kreuzung A3:\\ \begin{figure} \centering \fbox{\includegraphics[width=0.85\textwidth-2\fboxsep-2\fboxrule]{ext/A3_Uebersetzungstabelle}} - \caption{Übersetzungstabelle für Kreuzung A3} + \caption{"Ubersetzungstabelle f"ur Kreuzung A3} \end{figure} CAD-Zeichnung der Kreuzung A3:\\ \begin{figure} @@ -96,7 +96,7 @@ Modellierung der Kreuzung A4:\\ \begin{figure} \centering \fbox{\includegraphics[width=0.95\textwidth-2\fboxsep-2\fboxrule]{ext/A4_Uebersetzungstabelle}} - \caption{Übersetzungstabelle für Kreuzung A4} + \caption{"Ubersetzungstabelle f"ur Kreuzung A4} \end{figure} CAD-Zeichnung der Kreuzung A4:\\ \begin{figure} @@ -132,7 +132,7 @@ Modellierung der Kreuzung A5:\\ \begin{figure} \centering \fbox{\includegraphics[width=0.95\textwidth-2\fboxsep-2\fboxrule]{ext/A5_Uebersetzungstabelle}} - \caption{Übersetzungstabelle für Kreuzung A5} + \caption{"Ubersetzungstabelle f"ur Kreuzung A5} \end{figure} CAD-Zeichnung der Kreuzung A5:\\ \begin{figure} @@ -172,7 +172,7 @@ Modellierung der Kreuzung A12:\\ \begin{figure} \centering \fbox{\includegraphics[width=0.95\textwidth-2\fboxsep-2\fboxrule]{ext/A12_Uebersetzungstabelle}} - \caption{Übersetzungstabelle für Kreuzung A12} + \caption{"Ubersetzungstabelle f"ur Kreuzung A12} \end{figure} CAD-Zeichnung der Kreuzung A12:\\ \begin{figure} @@ -212,7 +212,7 @@ Modellierung der Kreuzung A23:\\ \begin{figure} \centering \fbox{\includegraphics[width=0.95\textwidth-2\fboxsep-2\fboxrule]{ext/A23_Uebersetzungstabelle}} - \caption{Übersetzungstabelle für Kreuzung A23} + \caption{"Ubersetzungstabelle f"ur Kreuzung A23} \end{figure} CAD-Zeichnung der Kreuzung A23:\\ \begin{figure} @@ -252,7 +252,7 @@ Modellierung der Kreuzung A28:\\ \begin{figure} \centering \fbox{\includegraphics[width=0.95\textwidth-2\fboxsep-2\fboxrule]{ext/A28_Uebersetzungstabelle}} - \caption{Übersetzungstabelle für Kreuzung A28} + \caption{"Ubersetzungstabelle f"ur Kreuzung A28} \end{figure} CAD-Zeichnung der Kreuzung A28:\\ \begin{figure} @@ -284,7 +284,7 @@ Modellierung der Kreuzung A29:\\ \begin{figure} \centering \fbox{\includegraphics[width=0.95\textwidth-2\fboxsep-2\fboxrule]{ext/A29_Uebersetzungstabelle}} - \caption{Übersetzungstabelle für Kreuzung A29} + \caption{"Ubersetzungstabelle f"ur Kreuzung A29} \end{figure} CAD-Zeichnung der Kreuzung A29:\\ \begin{figure} @@ -320,7 +320,7 @@ Modellierung der Kreuzung A46:\\ \begin{figure} \centering \fbox{\includegraphics[width=0.95\textwidth-2\fboxsep-2\fboxrule]{ext/A46_Uebersetzungstabelle}} - \caption{Übersetzungstabelle für Kreuzung A46} + \caption{"Ubersetzungstabelle f"ur Kreuzung A46} \end{figure} CAD-Zeichnung der Kreuzung A46:\\ \begin{figure} @@ -356,7 +356,7 @@ Modellierung der Kreuzung A59:\\ \begin{figure} \centering \fbox{\includegraphics[width=0.95\textwidth-2\fboxsep-2\fboxrule]{ext/A59_Uebersetzungstabelle}} - \caption{Übersetzungstabelle für Kreuzung A59} + \caption{"Ubersetzungstabelle f"ur Kreuzung A59} \end{figure} CAD-Zeichnung der Kreuzung A59:\\ \begin{figure} @@ -392,7 +392,7 @@ Modellierung der Kreuzung A104:\\ \begin{figure} \centering \fbox{\includegraphics[width=0.95\textwidth-2\fboxsep-2\fboxrule]{ext/A104_Uebersetzungstabelle}} - \caption{Übersetzungstabelle für Kreuzung A104} + \caption{"Ubersetzungstabelle f"ur Kreuzung A104} \end{figure} CAD-Zeichnung der Kreuzung A104:\\ \begin{figure} @@ -401,14 +401,14 @@ CAD-Zeichnung der Kreuzung A104:\\ \caption{CAD Zeichnung der Kreuzung A104} \end{figure} \clearpage -\subsection*{Verkehrszählungen} +\subsection*{Verkehrsz"ahlungen} \begin{figure} \centering \fbox{\includegraphics[width=0.85\textwidth-2\fboxsep-2\fboxrule]{ext/verkehrszaehlung}} - \caption{Verkehrszählung vom 30.7.2013.} + \caption{Verkehrsz"ahlung vom 30.7.2013.} \end{figure} \begin{figure} \centering \fbox{\includegraphics[angle={90},width=0.95\textwidth-2\fboxsep-2\fboxrule]{ext/verkehrszaehlung_08_05}} - \caption{Verkehrszählung vom 5.8.2013.} + \caption{Verkehrsz"ahlung vom 5.8.2013.} \end{figure} \ No newline at end of file diff --git a/ss2013/Bachelor Thesis/thesis_ug/tex/ausblick.tex b/ss2013/Bachelor Thesis/thesis_ug/tex/ausblick.tex index 5927f23c..0e953681 100644 --- a/ss2013/Bachelor Thesis/thesis_ug/tex/ausblick.tex +++ b/ss2013/Bachelor Thesis/thesis_ug/tex/ausblick.tex @@ -1,7 +1,7 @@ \section{Fazit \& Ausblick}\label{sec:ausblick} -Zusammenfassend kann man sagen, dass das entwickelte Straßenmodell es erlaubt innerhalb von Kreuzungen Verkehrswerte zu berechnen. Diese Werte lassen sich auf den entwickelten Kreuzungsübersichsgraph übertragen. Allerdings sind die berechneten Verkehrswerte von sehr unterschiedlicher Qualität, da die Sensorwerte, welche Grundlage der Berechnung sind, eine sehr große Varianz in ihrer Messqualität aufweisen. Die Modellierung für den gewählten Ausschnitt der \textit{Ministadt} hat gezeigt, dass das Modell für Kreuzungen, welche mit adaptiven Ampelanlagen und den dazugehörigen Sensoren bestückt sind, anwendbar ist. Eine Verbesserung des Modells ist denkbar durch weitere Sensordaten oder genauere Berechnung in Teilen des Modells. So können z.B. mit Verkehrskameras genauere Informationen über die Autos, welche einen Sensor passieren, gewonnen werden. Das entwickelte Modell kann auch auf jede andere Stadt "ubertragen werden, deren Ampelanlagen mit Sensoren am Kruezungseingang bestückt sind. \\ \\ -Desweiteren ist es möglich durch den flächendeckenden Einsatz von Validierungssensoren an den Kreuzungsausgängen die Abbiegewahrscheinlichkeiten an Mischspursensoren direkt zu bestimmen, was zu einer deutlichen Verbesserung der berechneten Werte führen würde. -Außerdem ist es denkbar das Modell mit mehr Informationen zu \textit{taggen} um die Berchnung zu verbessern. Ein Beispiel wäre das Auftragen der Höchstgeschwindigkeit auf die Kanten des entwickelten Graphen.\\ \\ -Die durch Modell und Berechnung gewonnenen Erkenntnisse k"onnen zur Optimierung von Verkehr, als Analysetool oder zur Planung von neuen Kreuzungen eingesetzt werden. Insbesondere da die Technisierung des Verkehrssystems fortschreitet, ist damit zu rechnen, dass mehr Sensoren auf die Straßen gelangen. So plant Deutschland in einer Gesetzesinitiative[] sog. Blackboxen für PKWs vorzuschreiben. Diese können neben Geschwindigkeit, Fahr- und Bremsverhalten die GPS-Position des Fahrzeugs übermitteln. Diese Daten würden eine Echtzeit-Simulation des Verkehrs erlauben. Insbesondere der flächendeckende Einsatz in PKWs würden millionen Sensoren auf die Straße bringen. \\ \\ +Zusammenfassend kann man sagen, dass das entwickelte Stra"senmodell es erlaubt innerhalb von Kreuzungen Verkehrswerte zu berechnen. Diese Werte lassen sich auf den entwickelten Kreuzungs"ubersichsgraph "ubertragen. Allerdings sind die berechneten Verkehrswerte von sehr unterschiedlicher Qualit"at, da die Sensorwerte, welche Grundlage der Berechnung sind, eine sehr gro"se Varianz in ihrer Messqualit"at aufweisen. Die Modellierung f"ur den gew"ahlten Ausschnitt der \textit{Ministadt} hat gezeigt, dass das Modell f"ur Kreuzungen, welche mit adaptiven Ampelanlagen und den dazugeh"origen Sensoren best"uckt sind, anwendbar ist. Eine Verbesserung des Modells ist denkbar durch weitere Sensordaten oder genauere Berechnung in Teilen des Modells. So k"onnen z.B. mit Verkehrskameras genauere Informationen "uber die Autos, welche einen Sensor passieren, gewonnen werden. Das entwickelte Modell kann auch auf jede andere Stadt "ubertragen werden, deren Ampelanlagen mit Sensoren am Kruezungseingang best"uckt sind. \\ \\ +Desweiteren ist es m"oglich durch den fl"achendeckenden Einsatz von Validierungssensoren an den Kreuzungsausg"angen die Abbiegewahrscheinlichkeiten an Mischspursensoren direkt zu bestimmen, was zu einer deutlichen Verbesserung der berechneten Werte f"uhren w"urde. +Au"serdem ist es denkbar das Modell mit mehr Informationen zu \textit{taggen} um die Berchnung zu verbessern. Ein Beispiel w"are das Auftragen der H"ochstgeschwindigkeit auf die Kanten des entwickelten Graphen.\\ \\ +Die durch Modell und Berechnung gewonnenen Erkenntnisse k"onnen zur Optimierung von Verkehr, als Analysetool oder zur Planung von neuen Kreuzungen eingesetzt werden. Insbesondere da die Technisierung des Verkehrssystems fortschreitet, ist damit zu rechnen, dass mehr Sensoren auf die Stra"sen gelangen. So plant Deutschland in einer Gesetzesinitiative[] sog. Blackboxen f"ur PKWs vorzuschreiben. Diese k"onnen neben Geschwindigkeit, Fahr- und Bremsverhalten die GPS-Position des Fahrzeugs "ubermitteln. Diese Daten w"urden eine Echtzeit-Simulation des Verkehrs erlauben. Insbesondere der fl"achendeckende Einsatz in PKWs w"urden millionen Sensoren auf die Stra"se bringen. \\ \\ Die n"achste Generation der verkehrsabh"angig gesteuerten Ampelanlagen, die sog. voll-adaptiven Lichtanlagen, erlauben es Kreuzungen untereinander Sensorwerte auszutauschen um den Verkehr noch besser flie"sen zu lassen. Es ist zu erwarten, das mit dieser neuen Technik noch mehr Induktionsschleifensensorik auf die Stra"sen der Gro"sst"adte gelangt und eine wesentlich genauere Untersuchung des Verkehrs zul"asst. \newpage \ No newline at end of file diff --git a/ss2013/Bachelor Thesis/thesis_ug/tex/berechnung.tex b/ss2013/Bachelor Thesis/thesis_ug/tex/berechnung.tex index bdd365b6..54e56f7f 100644 --- a/ss2013/Bachelor Thesis/thesis_ug/tex/berechnung.tex +++ b/ss2013/Bachelor Thesis/thesis_ug/tex/berechnung.tex @@ -16,7 +16,7 @@ Zun"achst wird das Aufbereiten der Abbiegewahrscheinlichkeiten beschrieben, um d \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ür das Beispiel \textit{Norden nach Süden} wäre 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 @@ -40,41 +40,41 @@ Zun"achst wird das Aufbereiten der Abbiegewahrscheinlichkeiten beschrieben, um d \label{tbl:zuordnungstabell} \end{figure} \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änden, die jeweils nur von dem vorhergehenden Zustand abhängen. Diese Zustände können 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ür die Geschwindigkeitsabschätzung 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 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.\\ \\ 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ückschluss auf den $X_t$ Prozess ermöglichen. Dabei darf der Wert des jeweiligen Prozesses nur von dem vorhergehenden Zustand abhängig sein. Es müssen folglich die beiden Bedingungen gelten: + 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: \begin{equation} \forall t \in N \colon P(X_t = x_t | X_1 = x_1; \ldots; X_{t-1} = x_{t-1}; Y_1 = y_1; \ldots; Y_t = y_t ) = P(X_t = x_t | X_{t-1} = x_{t-1}) \end{equation} \begin{equation} \forall t \in N \colon P(Y_t = y_t | X_1 = x_1; \ldots; X_t = x_t; Y_1 = y_1; \ldots; Y_{t-1} = y_{t-1}) = P(Y_t = y_t | X_t = x_t) \end{equation} - Haben die Prozesse eine endliche Menge an Zuständen, spricht man von einen Markow-Prozess.\\ \\ + Haben die Prozesse eine endliche Menge an Zust"anden, spricht man von einen Markow-Prozess.\\ \\ Ein Hidenn Marow Modell kann dabei mit einem 5-Tupel beschrieben werden $\lambda = (S;V;A;B;\pi)$.\\ - $S = \{s_1; \dotsc; s_n \}$ beschreibt die möglichen Werte der Zustandsvariablen $X_t$, welche nicht beobachtbar sind.\\ - $V = \{v_1; \dotsc; v_m \}$ beschreibt die möglichen Werte der Emissionszustände, welche beobachtbar sind.\\ - $A \in R^{n \times n}$ ist eine Matrix, welche die Übergangswahrscheinlichkeiten eines Zustands des $X_t$ Prozesses in einen anderen beschreibt.\\ - $B \in R^{n \times m}$ beschreibt eine Matrix, welche die Emissionswahrscheinlichkeiten der einzelnen Zustände des $X_t$ Prozesses angibt. Emissionen werden anhand des $Y_T$ Prozesses modelliert. + $S = \{s_1; \dotsc; s_n \}$ beschreibt die m"oglichen Werte der Zustandsvariablen $X_t$, welche nicht beobachtbar sind.\\ + $V = \{v_1; \dotsc; v_m \}$ beschreibt die m"oglichen Werte der Emissionszust"ande, welche beobachtbar sind.\\ + $A \in R^{n \times n}$ ist eine Matrix, welche die "Ubergangswahrscheinlichkeiten eines Zustands des $X_t$ Prozesses in einen anderen beschreibt.\\ + $B \in R^{n \times m}$ beschreibt eine Matrix, welche die Emissionswahrscheinlichkeiten der einzelnen Zust"ande des $X_t$ Prozesses angibt. Emissionen werden anhand des $Y_T$ Prozesses modelliert. $\pi \in R^n$ gibt die Anfangsverteilung an. \begin{figure} \centering \includegraphics[width=0.5\textwidth]{pic/500px-Hmm_temporal_bayesian_net} \caption{Zeitlicher Verlauf eines HMMs.} \end{figure} - Hängt ein versteckter Zustand nicht nur von einem vorhergehenden ab, sondern von Mehreren, spricht man von gekoppelten HMMs (Coupled HMM). + H"angt ein versteckter Zustand nicht nur von einem vorhergehenden ab, sondern von Mehreren, spricht man von gekoppelten HMMs (Coupled HMM). \subsubsection{HMM f"ur eine Kreuzung} - Es wurde nun versucht ein HMM für das in Kapitel \ref{sec:modell} entwickelte Modell zu definieren. Dabei wurden zwei Ansätze verfolgt: + Es wurde nun versucht ein HMM f"ur das in Kapitel \ref{sec:modell} entwickelte Modell zu definieren. Dabei wurden zwei Ans"atze verfolgt: \begin{enumerate} - \item{Verkehrswerte werden als versteckte Zustände, Sensorwerte als Emissionen modelliert.} - \item{Ampelphasen werden als versteckte Zustände, Sensorwerte als Emissionen modelliert.} + \item{Verkehrswerte werden als versteckte Zust"ande, Sensorwerte als Emissionen modelliert.} + \item{Ampelphasen werden als versteckte Zust"ande, Sensorwerte als Emissionen modelliert.} \end{enumerate} - Für beide Modellierungen fehlen allerdings die Übergangswahrscheinlichkeiten zwischen den Versteckten Zuständen. Außerdem kann nicht bestimmt werden, mit welcher Wahrscheinlichkeit eine Emission, für welchen Zustand, auftritt und es sind für 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ösungsansatz verworfen. - Die Arbeit \cite{paper:kwonmurphy} kann ein gekoppeltes HMM erfolgreich für die Modellierung von Freeway-Traffic nutzen und die Geschwindigkeit von Fahrzeugen einschätzen. 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ür die vorliegenden Daten nicht möglich. Des weiteren besteht in einem Straßennetz einer Stadt ständig die Möglichkeit, dass ein Fahrzeug die Fahrbahn verlässt, um z.B. zu parken. Auf einem Freeway entfallen diese Möglichkeiten allerdings. + 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. \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ür 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. + 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. \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.\\ \\ @@ -137,20 +137,18 @@ Zun"achst wird das Aufbereiten der Abbiegewahrscheinlichkeiten beschrieben, um d \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 alle Einspursensoren welche auf den Kreuzungsausgang x zeigen.\\ - $MS_x$ bezeichnet alle Mehrspursensoren welche auf den Kreuzungsausgang x zeigen.\\ - $ABW_xi$ bezeichnet die Abbiegewahrscheinlichkeit des Mehrspursensors $MS_{xi}$ in Richtung Kreuzung x.\\ - $S_x$ bezeichnet 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.\\ + $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} - \begin{Bmatrix} - & S_1 & S_2 & S_3 & \dots & S_n\\ - In_1 & 0/1 & 0/1 & \dots & 0/1\\ - In_2 & 0/1 & 0/1 & \dots & 0/1\\ - \dots\\ - In_m & 0/1 & 0/1 & \dots & 0/1\\ - \end{Bmatrix} + \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\\ @@ -168,13 +166,11 @@ Zun"achst wird das Aufbereiten der Abbiegewahrscheinlichkeiten beschrieben, um d \end{Bmatrix} \end{equation} \begin{equation} - \begin{Bmatrix} - & S_1 & S_2 & S_3 & \dots & S_n\\ - Out_1 & 0/1 & 0/1 & \dots & 0/1\\ - Out_2 & 0/1 & 0/1 & \dots & 0/1\\ - \dots\\ - Out_m & 0/1 & 0/1 & \dots & 0/1\\ - \end{Bmatrix} + \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\\ @@ -191,100 +187,82 @@ Zun"achst wird das Aufbereiten der Abbiegewahrscheinlichkeiten beschrieben, um d Out_m\\ \end{Bmatrix} \end{equation} - Zur Erl"auterung wird nochmals die A23\ref{abb:a23} betrachtet. Die in Kapitel \autoref{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.\\ \\ + 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} - \begin{Bmatrix} - & D1 & D2 & D3 & D4 & D5 & D6 & D7 & D8 & D9 & D10\\ - A12 & 1 & 1 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0\\ - A28 & 0 & 0 & 1 & 1 & 1 & 1 & 1 & 0 & 0 & 0\\ - A4 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 1 & 1 & 1\\ - \end{Bmatrix} + \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} * - \begin{Bmatrix} - & count\\ - D1 & 1\\ - D2 & 2\\ - D3 & 3\\ - D4 & 4\\ - D5 & 5\\ - D6 & 6\\ - D7 & 7\\ - D8 & 8\\ - D9 & 9\\ - D10 & 0\\ - \end{Bmatrix} + \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} = - \begin{Bmatrix} - & count\\ - A12 & 1\\ - A28 & 2\\ - A4 & 3\\ - \end{Bmatrix} + \bordermatrix{\text{}& count\cr + A12 & 1\cr + A28 & 2\cr + A4 & 3\cr} \end{equation} Ausgangsmatrix: \begin{equation} - \begin{Bmatrix} - & D1 & D2 & D3 & D4 & D5 & D6 & D7 & D8 & D9 & D10\\ - A12 & 1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 0 & 0\\ - A4 & 1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 0 & 0\\ - A104 & 1 & 0 & 0 & 1 & 1 & 0 & 0 & 0 & 0 & 1\\ - \end{Bmatrix} + \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} * - \begin{Bmatrix} - & count\\ - D1 & 1\\ - D2 & 2\\ - D3 & 3\\ - D4 & 4\\ - D5 & 5\\ - D6 & 6\\ - D7 & 7\\ - D8 & 8\\ - D9 & 9\\ - D10 & 0\\ - \end{Bmatrix} + \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} = - \begin{Bmatrix} - & count\\ - A12 & 1\\ - AA & 2\\ - A104 & 3\\ - \end{Bmatrix} + \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} - \begin{Bmatrix} - & D1 & D2 & D3 & D4 & D5 & D6 & D7 & D8 & D9 & V10 &\\ - A12 & 1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 0 & 0\\ - A4 & 1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 0 & 0\\ - A104 & 1 & 0 & 0 & 1 & 1 & 0 & 0 & 0 & 0 & 1\\ - \end{Bmatrix} + \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} * - \begin{Bmatrix} - & count\\ - D1 & 1\\ - D2 & 2\\ - D3 & 3\\ - D4 & 4\\ - D5 & 5\\ - D6 & 6\\ - D7 & 7\\ - D8 & 8\\ - D9 & 9\\ - V10 & V10\\ - \end{Bmatrix} + \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} = - \begin{Bmatrix} - & count\\ - A12 & A12\\ - AA & A4\\ - A104 & A104\\ - \end{Bmatrix} + \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?] @@ -304,33 +282,27 @@ Zun"achst wird das Aufbereiten der Abbiegewahrscheinlichkeiten beschrieben, um d 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} - \begin{Bmatrix} - & D1 & D2 & D3 & D4 & D5 & D6 & D7 & D8 & D9 & D10\\ - A12 & 1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 0 & 0\\ - A4 & 1 & 1 & 0 & 0 & 0 & 1 & 1 & 0 & 0 & 0\\ - A104 & 1 & 0 & 0 & 1 & 1 & 0 & 0 & 0 & 0 & 1\\ - \end{Bmatrix} + \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} * - \begin{Bmatrix} - & count\\ - D1 & 1\\ - D2 & 2\\ - D3 & 3\\ - D4 & 4\\ - D5 & 5\\ - D6 & 6\\ - D7 & 7\\ - D8 & 8\\ - D9 & 9\\ - D10 & 0\\ - \end{Bmatrix} + \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} = - \begin{Bmatrix} - & count\\ - A12 & 5\\ - AA & 5\\ - A104 & 5\\ - \end{Bmatrix} + \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. diff --git a/ss2013/Bachelor Thesis/thesis_ug/tex/daten.tex b/ss2013/Bachelor Thesis/thesis_ug/tex/daten.tex index 3cb3fd39..109ab188 100644 --- a/ss2013/Bachelor Thesis/thesis_ug/tex/daten.tex +++ b/ss2013/Bachelor Thesis/thesis_ug/tex/daten.tex @@ -1,10 +1,10 @@ \section{Datenbasis}\label{sec:daten} -In diesem Kapitel werden die Verkehrsdaten, die für 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. +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. \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 '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 nicht passiert wurde.\\ \\ W"urde ein Sensor einen \textit{load} von 0,3 und einen \textit{count} von 5 melden, bedeutet das, dass dieser Sensor 30 Prozent einer Minute (18 Sekunden) belegt war und 5 Fahrzeuge ihn passiert haben.\\ \\ - Die Daten wurden von der Stadt Darmstadt als CSV-Dateien[gls:csv] zur Verf"ugung gestellt und im Rahmen der Arbeit von \textsc{C. Müller}\cite{thesis:mueller} aufbereitet und ver"offentlicht\footnote{Die Induktionsschleifenwerte sind als CSV-Dateien und \url{http://www.da-sense.de/trafficdata/} zu finden}. + Die Daten wurden von der Stadt Darmstadt als CSV-Dateien[gls:csv] zur Verf"ugung gestellt und im Rahmen der Arbeit von \textsc{C. M"uller}\cite{thesis:mueller} aufbereitet und ver"offentlicht\footnote{Die Induktionsschleifenwerte sind als CSV-Dateien und \url{http://www.da-sense.de/trafficdata/} zu finden}. \subsubsection{CSV-Dateien der Induktionsschleifenwerte}\label{sec:daten:inductvalues:csv} Die von der Stadt Darmstadt zur Verf"ugung gestellten CSV-Dateien "ubermitteln die gesamten Sensorwerte der Induktionsschleifen der Stadt Darmstadt in zwei Teilen, dem Bereich \textit{Darmstadt S"ud} und den von \textit{Darmstadt Nord}.\\ \\ Die CSV Datei ist speziell kodiert und bietet folgende Spalten an Informationen an: @@ -14,7 +14,7 @@ In diesem Kapitel werden die Verkehrsdaten, die f \item{Die Intervall"ange der Messung in Minuten} \item{Die Werte \textit{load} und \textit{count} f"ur bis zu 64 Sensoren} \end{enumerate} - Die Bezeichnung der Kreuzungen richtet sich dabei nach der Kreuzungsbezeichnung des Straßenverkehrs- und Tiefbauamt der Stadt und ist eindeutig. Eine "Ubersicht "uber ganz Darmstadt mit eingezeichneten Kreuzungen ist im Anhang zu finden \ref{abb:caddarmstadt}. Ein Kreuzungsname in Darmstadt besteht dabei aus einem 'A' und einer eindeutigen Nummer. Die L"ange des Messintervalls ist in Darmstadt auf eine Minute definiert. Ein Ausschnitt einer solchen CSV-Datei ist in \ref{tbl:csv} zu sehen. + Die Bezeichnung der Kreuzungen richtet sich dabei nach der Kreuzungsbezeichnung des Stra"senverkehrs- und Tiefbauamt der Stadt und ist eindeutig. Eine "Ubersicht "uber ganz Darmstadt mit eingezeichneten Kreuzungen ist im Anhang zu finden \ref{abb:caddarmstadt}. Ein Kreuzungsname in Darmstadt besteht dabei aus einem 'A' und einer eindeutigen Nummer. Die L"ange des Messintervalls ist in Darmstadt auf eine Minute definiert. Ein Ausschnitt einer solchen CSV-Datei ist in \ref{tbl:csv} zu sehen. \begin{figure}\label{tbl:csv} \begin{tabular}{|l|l|l|l|lllllllllll|} \hline @@ -37,9 +37,9 @@ In diesem Kapitel werden die Verkehrsdaten, die f \end{tabular} \caption{CSV-Datei Ausschnitt von 8.8.2013} \end{figure} - Sensorspalten, welche auf Z enden, bezeichnen den \textit{count}-Wert des jeweiligen Sensors, solche die auf B enden den \textit{load}-Wert. Jede Zeile in der CSV-Datei repr"asentiert eine Kreuzung zu dem gegebenen Zeitpunkt. F"ur eine Kreuzung k"onnen dabei bis zu 64 Sensoren in der CSV-Datei bereitgestellt werden. Um die Zuordnung von CSV-Spalte zu dem tats"achlichen Sensornamen herzustellen, werden sog. \textit{"Ubersetzungstabellen} ben"otigt. Diese ordnen einer CSV-Sensorspalte (1-64) einen kreuzungsspezifischen Sensornamen zu, welcher der Sensorbezeichnung der CAD-Zeichnungen[gls:cad] der Kreuzungen entspricht. In der Praxis wird eine solche "Ubersetzungstabelle durch einen Offset auf der CSV-Datei im Computer nachgebildet. F"ur die in diese Arbeit modellierten Kreuzungen sind \textit{"Ubersetzungstabellen} sowie die CAD-Zeichnung im Anhang zu finden [\ref{anhang:a3}]\footnote{Die CAD-Zeichnungen, sowie die Übersetzungstabellen aller Kreuzungen sind unter \url{http://www.da-sense.de/trafficdata/} zu finden}. + Sensorspalten, welche auf Z enden, bezeichnen den \textit{count}-Wert des jeweiligen Sensors, solche die auf B enden den \textit{load}-Wert. Jede Zeile in der CSV-Datei repr"asentiert eine Kreuzung zu dem gegebenen Zeitpunkt. F"ur eine Kreuzung k"onnen dabei bis zu 64 Sensoren in der CSV-Datei bereitgestellt werden. Um die Zuordnung von CSV-Spalte zu dem tats"achlichen Sensornamen herzustellen, werden sog. \textit{"Ubersetzungstabellen} ben"otigt. Diese ordnen einer CSV-Sensorspalte (1-64) einen kreuzungsspezifischen Sensornamen zu, welcher der Sensorbezeichnung der CAD-Zeichnungen[gls:cad] der Kreuzungen entspricht. In der Praxis wird eine solche "Ubersetzungstabelle durch einen Offset auf der CSV-Datei im Computer nachgebildet. F"ur die in diese Arbeit modellierten Kreuzungen sind \textit{"Ubersetzungstabellen} sowie die CAD-Zeichnung im Anhang zu finden [\ref{anhang:a3}]\footnote{Die CAD-Zeichnungen, sowie die "Ubersetzungstabellen aller Kreuzungen sind unter \url{http://www.da-sense.de/trafficdata/} zu finden}. \subsubsection{MYSQL-Daten der JEE6 Anwendung zur Bereitstellung von Verkehrsdaten} \label{sec:datengrund:inductvalues:mysql} - Im Rahmen der Arbeit von \textsc{C. Müller}\cite{thesis:mueller}, wurde eine JEE6\footnote{Das aktuelle JEE-Framework ist unter \url{http://www.oracle.com/technetwork/java/javaee/overview/} zu erhalten.}[gls:jee6] Anwendung entwickelt, die die aufbereiteten Verkehrsdaten der Stadt Darmstadt bereit stellt. Hierf"ur wurden die CSV-Dateien eingelesen und in eine MYSQL-Datenbank "uberf"uhrt. Die dort gesammelten Sensordaten wurden bereits mit Geoinformation des OpenStreetMap Projektes\footnote{Die Website des OpenStreetMap-Projektes ist unter \url{http://openstreetmap.org/} zu erreichen.} verkn"upft und erlauben es eine Position für Kreuzungs- und Sensorknoten zu bestimmen.\\ \\ + Im Rahmen der Arbeit von \textsc{C. M"uller}\cite{thesis:mueller}, wurde eine JEE6\footnote{Das aktuelle JEE-Framework ist unter \url{http://www.oracle.com/technetwork/java/javaee/overview/} zu erhalten.}[gls:jee6] Anwendung entwickelt, die die aufbereiteten Verkehrsdaten der Stadt Darmstadt bereit stellt. Hierf"ur wurden die CSV-Dateien eingelesen und in eine MYSQL-Datenbank "uberf"uhrt. Die dort gesammelten Sensordaten wurden bereits mit Geoinformation des OpenStreetMap Projektes\footnote{Die Website des OpenStreetMap-Projektes ist unter \url{http://openstreetmap.org/} zu erreichen.} verkn"upft und erlauben es eine Position f"ur Kreuzungs- und Sensorknoten zu bestimmen.\\ \\ (todo ER Diagramm) Aus dieser Datenbank wurden alle Sensorwerte und Positionsangaben, welche im Rahmen dieser Arbeit ben"otigten wurden, entnommen. Die gesuchten Daten sind dabei auf drei Tabellen verteilt: \begin{enumerate} @@ -102,11 +102,11 @@ In diesem Kapitel werden die Verkehrsdaten, die f 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 \autoref{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üller}\cite{thesis:mueller} der TU-Darmstadt von der Stadt zur Verf"ugung gestellt\footnote{Die CAD-Bilder sind unter \url{http://www.da-sense.de/trafficdata/information.php} zu erhalten}. + 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 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. 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 [\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ßenverkehrs- und Tiefbauamtes der Stadt Darmstadt ermittelt. Alle Werte sind dabei "uber die gesamten Messungen eines Tages 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}).\\ \\ + 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 eines Tages 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}).\\ \\ \cite{thesis:michael} hat im Rahmen seiner Bachelorarbeit diese Daten in eine MYSQL-Datenbank "ubertragen. Desweiteren berechnet er genauere Abbiegewahrscheinlichkeiten f"ur die einzelnen Knoten, indem mithilfe einer Mittelung die Ausgangswerte einer Kreuzung in Beziehung zu einem Wert am benachbarten Kreuzungseingang gesetzt werden. Diese Daten lagen allerdings noch nicht vor und konnten aus diesem Grund im Rahmen dieser Arbeit nicht untersucht werden.\\ \\ Die aufbereiteten Abbiegewahrscheinlichkeiten der Stadt liegen in der Form (Kreuzung, Sensor, Geradeaus, Links, Rechts) (siehe Tabelle \ref{tbl:abbw}) vor. Die Werte f"ur Links, Rechts und Geradeaus sind dabei in einer komplexen Form angegeben und m"ussen zur Verwendung auf eine Gleitkommazahl reduziert werden. Des Weiteren gilt es, die Richtung vom Sensor unabh"angig zu machen, da sich die Angaben Links, Rechts und Geradeaus auf die Fahrtrichtung des Verkehrs, der "uber den Sensor flie"st, beziehen.\\ \\ Zur Reduzierung der Werte auf Gleitkommazahlen wurden die Daten manuell bearbeitet. Die CAD-Zeichnungen dienen dabei als Hilfe, um die kreuzungsspezifischen Angaben interpretieren zu k"onnen. Ein aufbereiteter Ausschnitt der Abbiegewahrscheinlichkeiten ist in Tabelle \ref{tbl:abbw} zu finden. diff --git a/ss2013/Bachelor Thesis/thesis_ug/tex/einleitung.tex b/ss2013/Bachelor Thesis/thesis_ug/tex/einleitung.tex index 9f47cc82..d45a9b44 100644 --- a/ss2013/Bachelor Thesis/thesis_ug/tex/einleitung.tex +++ b/ss2013/Bachelor Thesis/thesis_ug/tex/einleitung.tex @@ -3,19 +3,19 @@ Die Anzahl der LKWs und PKWs auf den Stra"sen Deutschlands steigt st"andig an. I Eine dieser Ma"snahmen ist der Einsatz von verkehrsaufkommensgesteuerten Ampelanlagen. Besonders gr"o"sere St"adte, welche unter hohem Verkehrsaufkommen leiden, setzen diese Technik seit einigen Jahren vermehrt ein\cite{paper:adaptiv}. Sie erm"oglichen es der Ampel mit Hilfe von, in der Fahrbahndecke verbauten Sensoren, ihre Ampelphasen, unter gewissen Rahmenbedingung, selbst zu steuern. Die Sensorik erkennt dabei, ob ein Auto an der Haltelinie steht und fordert eine Freigabe der Fahrtrichtung. Durch Einsatz einer solchen verkehrsaufkommensgesteuerten Ampel kann nachweislich \cite{paper:adaptiv} eine Verbesserung des Verkehrsflusses erreicht und die Haltezeiten an der Ampeln verk"urzt werden. Zunehmend werden auch sog. 'voll-adaptive' Ampelsteuerungen eingesetzt, welche neben den Sensorwerten der jeweiligen Kreuzung auch die Sensorwerte benachbarter Kreuzungen in die Berechnung der Ampelphasen einflie"sen lassen. Dieser Ansatz verspricht einen noch fl"ussigeren Verkehr und eine nochmalige Verbesserung des Verkehrsflusses\cite{paper:adaptiv}.\\ \\ Neben einer verbesserten Ampelsteuerung um den Verkehr schneller flie"sen zu lassen, haben sich einige Firmen auf die Untersuchung des Verkehrs spezialisiert und bieten Analysewerkzeuge f"ur den Verkehr an. So bieten die Programme VISSIM\footnote{Die Website der Software VISSIM lautet \url{http://www.vissim.de/}} und PELOPS\footnote{PELOPS: Programm zur Entwicklung L"angsdynamischer, mikrOskopischer VerkehrsProzesse in Systemrelevanter Umgebung} eine professionelle Modellierung von Verkehr an. Dabei kommt eine sog. mikroskopische Verkehrsmodellierung zum Einsatz. Mikroskopische Verkehrsmodelle modellieren dabei jeden einzelnen Verkehrsteilnehmer um Beziehungen unter diesen aufzeigen und berechnen zu k"onnen. So bestimmt sich die Geschwindigkeit eines Fahrzeugs in einem solchen Modell in der Regel aus der des Vordermanns.\\ \\ In dieser Arbeit wird untersucht inwieweit die Sensorik einer verkehrsaufkommensgesteuerten Ampelanlage ausreicht, um zu bestimmen, in welche Richtung und wie viel des Verkehrs aus und in die Kreuzungen flie"st. Dies ist besonders interessant, da die Sensorik bereits auf der Stra"se verbaut ist und keine manuellen Datenerhebungen notwendig sind. Die Herausforderung dabei ist, dass nicht alle Stra"sen und Kreuzungen mit Induktionsschleifen ausgestattet sind, da nicht alle Kreuzungen Ampelanlagen aufweisen, welche die Sensorik erfordert. Man m"ochte allerdings Verkehrswerte f"ur diese, nicht bekannten Bereiche, berechnen oder absch"atzen k"onnen, um die momentane Verkehrssituation besser einsch"atzen und sich einen "Uberblick "uber die aktuelle Verkehrslage verschaffen zu k"onnen. Dabei erweisen sich die geringe Sensormenge und der gro"se Abstand zwischen diesen, als die gr"o"sten Herausforderungen. F"ur die Untersuchung wurde ein Ausschnitt des Stra"sennetzes der Stadt Darmstadt\footnote{Die Website der Stadt Darmstadt ist unter \url{http://www.darmstadt.de/} zu erreichen.} gew"ahlt und ein Modell f"ur eine Kreuzung und ein zweites Modell f"ur Kreuzungen und deren Verbindungen erstellt. Hierf"ur wird, im Gegensatz zu industriellen Verkehrssimulationswerkzeugen ein makroskopischer Ansatz gew"ahlt um der geringen Sensordichte gerecht zu werden.\\ \\ -F"ur diese Aufgabe stehen die Sensordaten von den Ampelanlagen der Stadt Darmstadt zur Verf"ugung. Die Stadt hat eine Vielzahl ihrer Kreuzungen mit sog. Induktionsschleifen, Verkehrssensoren, best"uckt. Diese liefern im Minutentakt Messwerte "uber die Anzahl der Fahrzeuge, welche den Sensor passiert und solche die auf dem Sensor gestanden haben. Für diese Arbeit wurde ausschließlich der Zählwert der Fahrzeuge zur Berechnung von Verkehr verwendet. Es wurde ein Ausschnitt von zehn Kreuzungen betrachtet, die eine hohe Sensordichte aufweisen. Die Einschr"ankung auf das verkleinerte Gebiet begr"undet sich aus der Menge der zu betrachtenden Daten. Die Stadt Darmstadt hat [] Sensoren in ihrem Stadtgebiet auf [] Kreuzungen verbaut. Das Betrachten eines kleineren Ausschnitts erm"oglichte es im Rahmen dieser Arbeit eine genauere Untersuchung durchzuf"uhren, als dies auf dem gesamten Stadtgebiet der Stadt Darmstadt m"oglich w"are. Für eine erste Untersuchung wurden die zehn Kreuzungen händisch modelliert. Mit den Erkenntnissen dieser Modellierung wurde ein generisches Modell des Verkehrssystems entwickelt.\\ \\ -Die generische Modellierung des Verkehrssystems wurde in Zusammenarbeit mit \textsc{M. Scholz}\cite{thesis:michael} entworfen, der dieses Modell ebenfalls für seine Bachelor Thesis\cite{thesis:michael} verwendet. In \autoref{abb:system} ist eine Übersicht über die verschiedenen Teile der entwickelten Verkehrssimulation und den dafür implementierten Softwareteilen zu finden. Weiß hinterlegt werden die Datengrundlagen, auf denen das Modell fußt, 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ün dargestellt. Das Datenbankschema und die Modellierung des Verkehrssystem als Graph wurde in Zusammenarbeit entwickelt und wird mit einer Mischfarbe aus blau und grün aufgezeigt. +F"ur diese Aufgabe stehen die Sensordaten von den Ampelanlagen der Stadt Darmstadt zur Verf"ugung. Die Stadt hat eine Vielzahl ihrer Kreuzungen mit sog. Induktionsschleifen, Verkehrssensoren, best"uckt. Diese liefern im Minutentakt Messwerte "uber die Anzahl der Fahrzeuge, welche den Sensor passiert und solche die auf dem Sensor gestanden haben. F"ur diese Arbeit wurde ausschlie"slich der Z"ahlwert der Fahrzeuge zur Berechnung von Verkehr verwendet. Es wurde ein Ausschnitt von zehn Kreuzungen betrachtet, die eine hohe Sensordichte aufweisen. Die Einschr"ankung auf das verkleinerte Gebiet begr"undet sich aus der Menge der zu betrachtenden Daten. Die Stadt Darmstadt hat [] Sensoren in ihrem Stadtgebiet auf [] Kreuzungen verbaut. Das Betrachten eines kleineren Ausschnitts erm"oglichte es im Rahmen dieser Arbeit eine genauere Untersuchung durchzuf"uhren, als dies auf dem gesamten Stadtgebiet der Stadt Darmstadt m"oglich w"are. F"ur eine erste Untersuchung wurden die zehn Kreuzungen h"andisch modelliert. Mit den Erkenntnissen dieser Modellierung wurde ein generisches Modell des Verkehrssystems entwickelt.\\ \\ +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. Wei"s hinterlegt werden die Datengrundlagen, auf denen das Modell fu"st, 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. \begin{figure} \centering \includegraphics[width=0.95\textwidth]{ext/systembild} \caption{"Ubersicht "uber das entworfene Softwaresystem} \label{abb:system} \end{figure} -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ür wird auf die von \textsc{C. Müller} entworfene JEE6 Anwendung zur Bereitstellung von Verkehrsdaten\cite{thesis:mueller} zurückgegriffen, 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ür 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 weitere lineare Gleichungen konnten auch Vorhersagen f"ur Fl"usse zwischen zwei Kreuzungen berechnet 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ßen verbaute Sensorik in sehr unterschiedlicher Qualität messen. Im Kapitel \ref{sec:visualisierung} werden daraufhin zwei computergestützte Visualisierungen des Modells, die im Rahmen dieser Arbeit entwickelt wurden, anhand des gew"ahlten Ausschnitts des Stra"sennetz der Stadt Darmstadt erl"autert. +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 weitere lineare Gleichungen konnten auch Vorhersagen f"ur Fl"usse zwischen zwei Kreuzungen berechnet 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. \begin{figure} \centering \includegraphics[width=0.95\textwidth]{ext/colage} - \caption{Drei Visualisierungen des betrachteten Ausschnitts der Stadt Darmstadt. a) händische Visualisierung b) Visualisierung mithilfe der OSM-Karte c) Visualisierung des Graphenmodells} + \caption{Drei Visualisierungen des betrachteten Ausschnitts der Stadt Darmstadt. a) h"andische Visualisierung b) Visualisierung mithilfe der OSM-Karte c) Visualisierung des Graphenmodells} \end{figure} 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 Hidden Markov Modells die Geschwindigkeit von Verkehrsteilnehmer vorhersagt. Die Arbeit \cite{thesis:lehnhoff} erwies sich als hilfreich zur Validierung. So konnten die dort befundenen Sensorungenauigkeiten best"atigt werden.\\ \\ diff --git a/ss2013/Bachelor Thesis/thesis_ug/tex/grundlagen.tex b/ss2013/Bachelor Thesis/thesis_ug/tex/grundlagen.tex index b11a8a3a..85a5771e 100644 --- a/ss2013/Bachelor Thesis/thesis_ug/tex/grundlagen.tex +++ b/ss2013/Bachelor Thesis/thesis_ug/tex/grundlagen.tex @@ -1,5 +1,5 @@ \section{Grundlagen}\label{sec:grundlagen} -In diesem Kapitel werden die Grundlagen der Verkehrstechnik und -modellierung beschrieben. Zum einen wird das Funktionsprinzip von Induktionsschleifen erklärt, welche die, für diese Arbeit verwendeten, Daten messen. Zum anderen wird auf die Verwendung der Induktionsschleifen für eine adaptive Ampelsteuerung eingegangen. Ein Abschnitt über Makro- und Mikromodellierung umreißt die verschiedenen Verkehrssimulationsansätze. +In diesem Kapitel werden die Grundlagen der Verkehrstechnik und -modellierung beschrieben. 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} @@ -22,7 +22,7 @@ In diesem Kapitel werden die Grundlagen der Verkehrstechnik und -modellierung be \item{Lage- und formbedingte Messfehler} \item{Umfeldbedingte Messfehler} \end{enumerate} - Zeitliche Fehler wirken sich dabei auf die Belegzeitmessung aus. Da diese nicht innerhalb dieser Arbeit betrachtet wird, hat dieser Fehlertyp keine Auswirkungen auf die verwendeten Daten. R"aumlich Messfehler beziehen sich ebenfalls auf die Belegzeitmessung und k"onnen zu Problemen mit der Bestimmung des Fahrzeugtyps f"uhren, da f"ur gleich lange Fahrzeuge verschiedene Belegzeiten gemessen werden k"onnen. Lage- und formbedingte Fehler wirken sich auf den, in dieser Arbeit benutzten, Fahrzeugz"ahlwert aus. Diese treten auf, wenn ein Fahrzeug der, mit einem Sensor best"uckten, Nachbarspur zu nahe kommt und f"alschlicherweise ein Fahrzeug f"ur diese gez"ahlt wird. Umfeldbedingte Fehler sind am schwersten festzustellen. Es handelt sich dabei um Fehler, die durch magnetische St"orquellen in der Umgebung oder schlechte Isolation der Induktionsschleife auftreten. Eine Induktionsschleife kann weiterhin nicht jedes Fahrzeug detektieren. So werden Fahrräder oft nicht erkannt, da sich zu wenige Metall auf der Fahrbahn befindet, um den Sensor auszulösen. "Uber die Fehlerh"aufigkeit liegen keine Daten der Stadt Darmstadt vor. F"ur die Berechnungen dieser Arbeit wird deshalb angenommen die Sensorwerte seien korrekt. Die G"ultigkeit der Induktionsschleifenwerte wird in dem Kapitel \autoref{sec:validierung} genauer behandelt. \\ \\ + Zeitliche Fehler wirken sich dabei auf die Belegzeitmessung aus. Da diese nicht innerhalb dieser Arbeit betrachtet wird, hat dieser Fehlertyp keine Auswirkungen auf die verwendeten Daten. R"aumlich Messfehler beziehen sich ebenfalls auf die Belegzeitmessung und k"onnen zu Problemen mit der Bestimmung des Fahrzeugtyps f"uhren, da f"ur gleich lange Fahrzeuge verschiedene Belegzeiten gemessen werden k"onnen. Lage- und formbedingte Fehler wirken sich auf den, in dieser Arbeit benutzten, Fahrzeugz"ahlwert aus. Diese treten auf, wenn ein Fahrzeug der, mit einem Sensor best"uckten, Nachbarspur zu nahe kommt und f"alschlicherweise ein Fahrzeug f"ur diese gez"ahlt wird. Umfeldbedingte Fehler sind am schwersten festzustellen. Es handelt sich dabei um Fehler, die durch magnetische St"orquellen in der Umgebung oder schlechte Isolation der Induktionsschleife auftreten. Eine Induktionsschleife kann weiterhin nicht jedes Fahrzeug detektieren. So werden Fahrr"ader oft nicht erkannt, da sich zu wenige Metall auf der Fahrbahn befindet, um den Sensor auszul"osen. "Uber die Fehlerh"aufigkeit liegen keine Daten der Stadt Darmstadt vor. F"ur die Berechnungen dieser Arbeit wird deshalb angenommen die Sensorwerte seien korrekt. Die G"ultigkeit der Induktionsschleifenwerte wird in dem Kapitel \autoref{sec:validierung} genauer behandelt. \\ \\ Induktionsschleifen m"ussen zus"atzlich in zwei Sensortypen unterschieden werden, da sie eine unterschiedliche Behandlungsweise erfordern. Dabei gibt es keinen Unterschied zwischen der verbauten Sensorelektronik oder -installation. Der Sensortyp bestimmt sich aus der Fahrspur, auf der er in die Stra"sendecke eingelassen ist: \begin{enumerate} \item{\textit{Einspursensor}: Ein Auto auf dieser Spur kann die Kreuzung nur in genau eine Richtung verlassen.} diff --git a/ss2013/Bachelor Thesis/thesis_ug/tex/modell.tex b/ss2013/Bachelor Thesis/thesis_ug/tex/modell.tex index 12836e63..e98fc984 100644 --- a/ss2013/Bachelor Thesis/thesis_ug/tex/modell.tex +++ b/ss2013/Bachelor Thesis/thesis_ug/tex/modell.tex @@ -1,14 +1,14 @@ \section{Graphen-basiertes Verkehrsmodell}\label{sec:modell} -In diesem Kapitel wird eine Modellierung des Verkehrsnetzes auf Basis eines Graphen vorgestellt. Es berücksichtigt im Besonderen die Verkehrssensoren, da diese Grundlage der Verkehrsflussberechnung sind. Es werden weiterhin zwei Darstellungen des Modells entwickelt. Die Darstellung als Matrix und als klassischer Graph mit Knoten und Kanten. Diese beiden Darstellungen sind untereinander kompatibel, k"onnen deshalb ineinander "uberf"uhrt werden. Der Graph ist ein n"utzliches Werkzeug der Visualisierung w"ahrend die Matrixdarstellung der Berechnung dient.\\ \\ -Für die Entwicklung des Modells wurden zuerst händisch Zeichnungen der zehn untersuchten Kreuzungen, der \textit{Ministadt}, angefertigt, um den lokalen Gegebenheiten gerecht zu werden und das Modell daran zu orientieren. Auf Grundlage dieser Zeichnungen wird daraufhin ein allgemeines Kreuzungsverkehrsmodell entwickelt. Als Grundlage f"ur die Modellierung dienen die in Kapitel \autoref{sec:datengrund} beschriebenen Daten.\\ \\ +In diesem Kapitel wird eine Modellierung des Verkehrsnetzes auf Basis eines Graphen vorgestellt. Es ber"ucksichtigt im Besonderen die Verkehrssensoren, da diese Grundlage der Verkehrsflussberechnung sind. Es werden weiterhin zwei Darstellungen des Modells entwickelt. Die Darstellung als Matrix und als klassischer Graph mit Knoten und Kanten. Diese beiden Darstellungen sind untereinander kompatibel, k"onnen deshalb ineinander "uberf"uhrt werden. Der Graph ist ein n"utzliches Werkzeug der Visualisierung w"ahrend die Matrixdarstellung der Berechnung dient.\\ \\ +F"ur die Entwicklung des Modells wurden zuerst h"andisch Zeichnungen der zehn untersuchten Kreuzungen, der \textit{Ministadt}, angefertigt, um den lokalen Gegebenheiten gerecht zu werden und das Modell daran zu orientieren. Auf Grundlage dieser Zeichnungen wird daraufhin ein allgemeines Kreuzungsverkehrsmodell entwickelt. Als Grundlage f"ur die Modellierung dienen die in Kapitel \autoref{sec:datengrund} beschriebenen Daten.\\ \\ In der Industrie eingesetzte Software zur Berechnung und Modellierung von Verkehrsfl"ussen, verwenden meistens ein sog. mikroskopisches Modell des Verkehrs\footnote{vissim}, 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 89 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 makroskapischen Ansatz und ist den Prognosemodellen zuzuordnen.\\ 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ßenfahrzeug detektieren können, werden nur solche modelliert, welche die Sensoren erkennen können[verweisen?]. Das Modell wurde zusammen mit \textsc{M. Scholz} \cite{thesis:michael} entwickelt, der mit Hilfe dieses Modells Abbiegewahrscheinlichkeiten für einzelne Sensoren berechnet(siehe \autoref{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[verweisen?]. Das Modell wurde zusammen mit \textsc{M. Scholz} \cite{thesis:michael} entwickelt, der mit Hilfe dieses Modells Abbiegewahrscheinlichkeiten f"ur einzelne Sensoren berechnet(siehe \autoref{sec:daten}).\\ \\ \subsection{H"andische Modellierung der Ministadt}\label{sec:modell:ministadt} - Die \textit{Ministadt}, der gewählte geographische Ausschnit\ref{sec:daten:geo}, enth"alt zehn mit Sensoren best"uckte Kreuzungen. Diese Kreuzungen werden mit A3 [\ref{anhang:a3}], A4 [\ref{anhang:a4}], A5 [\ref{anhang:a5}], A12 [\ref{anhang:a12}], A23 [\ref{anhang:a23}], A28 [\ref{anhang:a28}], A29 [\ref{anhang:a29}], A46 [\ref{anhang:a46}], A59 [\ref{anhang:a59}] und A104 [\ref{anhang:a104}] bezeichnet. Die Bezeichnungen stammten dabei aus der CAD-"Ubersichtskarte \ref{abb:caddarmstadt} der Stadt Darmstadt. Eine genaue Beschreibung des gew"ahlten geographischen Ausschnitts ist in Kapitel \autoref{sec:daten} zu finden.\\ \\ + Die \textit{Ministadt}, der gew"ahlte geographische Ausschnit\ref{sec:daten:geo}, enth"alt zehn mit Sensoren best"uckte Kreuzungen. Diese Kreuzungen werden mit A3 [\ref{anhang:a3}], A4 [\ref{anhang:a4}], A5 [\ref{anhang:a5}], A12 [\ref{anhang:a12}], A23 [\ref{anhang:a23}], A28 [\ref{anhang:a28}], A29 [\ref{anhang:a29}], A46 [\ref{anhang:a46}], A59 [\ref{anhang:a59}] und A104 [\ref{anhang:a104}] bezeichnet. Die Bezeichnungen stammten dabei aus der CAD-"Ubersichtskarte \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 Verallgemeinerung des Verkehrsnetzes darstellt. Es werden dabei nur sensorbest"uckte Kreuzungen aufgezeigt.\\ - Mit Rechtecken werden die betrachteten Kreuzungen vermerkt, mit Kreisen die nicht mehr modellierten Nachbarkreuzungen. Pfeile weisen dabei die Flie"srichtung der Stra"sen aus, in welche der Verkehr regelkonform flie"sen darf. So ist von der Kreuzung A29 nach A104 eine Einbahnstra"se an den einfachen Pfeilen zu erkennen, w"ahrend Stra"sen, welche in beide Richtungen befahren werden k"onnen mit Doppelpfeilen dargestellt werden. Die Kreuzungsübersicht ist in \autoref{abb:xroverview} zu sehen. + Mit Rechtecken werden die betrachteten Kreuzungen vermerkt, mit Kreisen die nicht mehr modellierten Nachbarkreuzungen. Pfeile weisen dabei die Flie"srichtung der Stra"sen aus, in welche der Verkehr regelkonform flie"sen darf. So ist von der Kreuzung A29 nach A104 eine Einbahnstra"se an den einfachen Pfeilen zu erkennen, w"ahrend Stra"sen, welche in beide Richtungen befahren werden k"onnen mit Doppelpfeilen dargestellt werden. Die Kreuzungs"ubersicht ist in \autoref{abb:xroverview} zu sehen. \begin{figure}[htbp!] \centering \fbox{\includegraphics[width=0.50\textwidth-2\fboxsep-2\fboxrule]{ext/Kreuzungsuebersicht}} @@ -16,17 +16,17 @@ Um ein Verkehrsmodell zu entwickeln muss zuerst festgelegt werden, welche Art de \label{abb:xroverview} \end{figure} Um eine "Ubersicht "uber die zu betrachtenden Kreuzungen zu erhalten wurden h"andisch Zeichnungen von den zehn Kreuzungen angefertigt. Die gew"ahlte intuitive Modellierung entspricht in etwa der, welche sp"ater im Computer entsteht. Die Grundlage f"ur diese Modellierung sind die CAD-Zeichnungen der Kreuzungen der Stadt Darmstadt. Sie werden im Kapitel \autoref{sec:daten} genauer beschrieben.\\ \\ - In der Kreuzungs"ubersicht entfallen sehr viele Details, da keine Daten f"ur Seitenstra"sen zwischen den Kreuzungen vorhanden sind. Dagegen k"onnen die modellierten Kreuzungen wesentlich genauer dargestellt werden und lassen sich sehr gut auf Sensorebene modellieren. Neben den realen Sensoren erh"alt jede Kreuzung jeweils bis zu vier Ein- und Ausg"ange, modelliert als sog. \textit{virtuelle Sensoren}. Die Sensoren werden dabei nach den jeweiligen Kreuzungseing"angen platziert, vor dessen Haltelinie sie in der Realit"at in der Stra"se verbaut sind. Validierungssensoren sind solche, welche R"uckschl"usse auf andere Sensoren der Kreuzung zulassen. Sie sind vor einem Kreuzungsausgang in der Straßendenke verbaut. Die Validierungssensoren werden in der h"andischen Modellierung aufgezeigt, in der allgemeinen Modellierung einer Kreuzung findet sich allerdings keinen Platz f"ur diese, da f"ur die Berechnung von der Grundannahme ausgegangen wird, dass ein Sensor direkt mit einem Kreuzungsein- und Ausgang, ohne Zwischenknoten, verbunden ist. Wie anhand des entwickelten Modells Verkehrsstr"ome berechnet werden k"onnen und wie sich Sensorwerte mit Validierungssensoren validieren lassen wird im Kapitel \ref{sec:berechnung} genauer behandelt.\\ \\ - F"ur die Modellierung der Kreuzungen sind mehr Daten bekannt - die Positionen der Induktionsschleifen. Sensoren werden als Achtecke mit aufgetragenen Flie"srichtungen dargestellt. Die Verbindungen von Sensoren und virtuellen Sensoren werden analog zur Kreuzungs"ubersicht als Pfeile mit ihrer Flie"srichtung eingezeichnet. Dekoriert wird ein Kreuzungsbild dabei mit bis zu acht virtuellen Sensorknoten, jeweils ein rechteckiger f"ur den Kreuzungsausgang, ein runden f"ur den Kreuzungseingang. Die Position der Sensoren wird dahingehend vereinfacht, dass sie einem Kreuzungseingang zugeordnet und direkt nach dem entsprechenden virtuellen Eingangssensor platziert werden. Die händische Modellierung der Kreuzung A23 ist in \autoref{abb:a23} zu sehen. Die restlich neun Kreuzungsbilder sind dem Anhang beigefügt. + In der Kreuzungs"ubersicht entfallen sehr viele Details, da keine Daten f"ur Seitenstra"sen zwischen den Kreuzungen vorhanden sind. Dagegen k"onnen die modellierten Kreuzungen wesentlich genauer dargestellt werden und lassen sich sehr gut auf Sensorebene modellieren. Neben den realen Sensoren erh"alt jede Kreuzung jeweils bis zu vier Ein- und Ausg"ange, modelliert als sog. \textit{virtuelle Sensoren}. Die Sensoren werden dabei nach den jeweiligen Kreuzungseing"angen platziert, vor dessen Haltelinie sie in der Realit"at in der Stra"se verbaut sind. Validierungssensoren sind solche, welche R"uckschl"usse auf andere Sensoren der Kreuzung zulassen. Sie sind vor einem Kreuzungsausgang in der Stra"sendenke verbaut. Die Validierungssensoren werden in der h"andischen Modellierung aufgezeigt, in der allgemeinen Modellierung einer Kreuzung findet sich allerdings keinen Platz f"ur diese, da f"ur die Berechnung von der Grundannahme ausgegangen wird, dass ein Sensor direkt mit einem Kreuzungsein- und Ausgang, ohne Zwischenknoten, verbunden ist. Wie anhand des entwickelten Modells Verkehrsstr"ome berechnet werden k"onnen und wie sich Sensorwerte mit Validierungssensoren validieren lassen wird im Kapitel \ref{sec:berechnung} genauer behandelt.\\ \\ + F"ur die Modellierung der Kreuzungen sind mehr Daten bekannt - die Positionen der Induktionsschleifen. Sensoren werden als Achtecke mit aufgetragenen Flie"srichtungen dargestellt. Die Verbindungen von Sensoren und virtuellen Sensoren werden analog zur Kreuzungs"ubersicht als Pfeile mit ihrer Flie"srichtung eingezeichnet. Dekoriert wird ein Kreuzungsbild dabei mit bis zu acht virtuellen Sensorknoten, jeweils ein rechteckiger f"ur den Kreuzungsausgang, ein runden f"ur den Kreuzungseingang. Die Position der Sensoren wird dahingehend vereinfacht, dass sie einem Kreuzungseingang zugeordnet und direkt nach dem entsprechenden virtuellen Eingangssensor platziert werden. Die h"andische Modellierung der Kreuzung A23 ist in \autoref{abb:a23} zu sehen. Die restlich neun Kreuzungsbilder sind dem Anhang beigef"ugt. \begin{figure}[htbp!] \centering \fbox{\includegraphics[width=0.50\textwidth-2\fboxsep-2\fboxrule]{ext/KreuzungA23}} \caption{H"andische Modellierung der Kreuzung A23} \label{abb:a23} \end{figure} - Wie in Figur \autoref{abb:a23} zu erkennen, sind in der Kreuzung A23 zwei Validierungssensoren verbaut, die Sensoren \textit{D13} und \textit{D14}. Die händische Modellierung verbindet diese mit den entsprechenden Eingangssensoren. Dies ist zwar korrekt, erweist sich f"ur die Berechnung allerdings als hinderlich. Aus diesem Grund werden bei der computergest"utzten Modellierung die Eingangssensoren direkt mit den jeweiligen Ausg"angen verbunden.\\ \\ + Wie in Figur \autoref{abb:a23} zu erkennen, sind in der Kreuzung A23 zwei Validierungssensoren verbaut, die Sensoren \textit{D13} und \textit{D14}. Die h"andische Modellierung verbindet diese mit den entsprechenden Eingangssensoren. Dies ist zwar korrekt, erweist sich f"ur die Berechnung allerdings als hinderlich. Aus diesem Grund werden bei der computergest"utzten Modellierung die Eingangssensoren direkt mit den jeweiligen Ausg"angen verbunden.\\ \\ Diese intuitive Modellierung auf zwei Ebenen hat sich sowohl aus "Ubersichtsgr"unden, als auch f"ur die Berechnung als sinnvoll erwiesen. W"ahrend ein Kreuzungsbild eine wesentlich genauere Abbildung der Realit"at ist, ist im Vergleich die Kreuzungs"ubersicht relativ ungenau, da Seitenstra"sen nicht modelliert werden und alle Kreuzungen als gleich weit voneinander entfernt betrachtet werden. Die gew"ahlte Modellierung hat folglich zwei Genauigkeitsstufen. Die "Ubersicht "uber die Kreuzungen gew"ahrt einen Blick auf die Gesamtverkehrssituation. Sie dient, wie der Name schon sagt, der "Ubersicht. Ein wesentliches Ziel ist es Verkehrsdaten f"ur dieses Modell zu errechnen oder abzusch"atzen. Es stehen zwar Informationen "uber die einzelnen Sensoren der Kreuzungen zur Verf"ugung. Diese Werte k"onnen allerdings noch nicht auf ein Gesamtbild des Verkehrs "ubertragen werden. \\ \\ - Im Folgendem wird ein allgemeines Verkehrsmodell auf Basis von Grapehn entwickelt. Grundlage dafür ist die händische Modellierung der Kreuzungen. + Im Folgendem wird ein allgemeines Verkehrsmodell auf Basis von Grapehn entwickelt. Grundlage daf"ur ist die h"andische Modellierung der Kreuzungen. \subsection{Allgemeines Verkehrsmodell auf Basis eines Graphen}\label{sec:modell:graph} Ein naheliegender Modellierungsansatz ist es, das Stra"sennetz als Graph zu modellieren. Dies eignet sich nicht nur deshalb gut, da Graphen sehr gut erforscht und viele Algorithmen auf ihnen zur Verf"ugung stehen, sondern auch, weil die intuitiv gew"ahlte h"andische Modellierung sich als Graph darstellen l"asst. Aus diesem Grund wurden Graphen als Basis der computergest"utzten Modellierung gew"ahlt. Insbesondere die M"oglichkeit, Graphen in Matrizen zu "uberf"uhren, oder lineare Gleichungen an Graphen zu l"osen erweist sich als n"utzlich.\\ \\ F"ur das hier entwickelte Stra"senmodell wurde das Stra"sennetz in sechs Objekte unterteilt: @@ -38,8 +38,8 @@ Um ein Verkehrsmodell zu entwickeln muss zuerst festgelegt werden, welche Art de \item{Kreuzungsausgang: Ein Ausgang einer Kreuzung auf dem Verkehr die Kreuzung verlassen kann.} \item{Kreuzungseingang: Ein Eingang einer Kreuzung auf dem Verkehr in die Kreuzung einfahren kann.} \end{enumerate} - Eine Fahrspur bezeichnet dabei einen Bereich der Stra"senfahrbahn der mit seiner vorgegebenen Fahrtrichtung auf bestimmt Ausg"ange der Kreuzung zeigt. Ein Kreuzungsein bzw. -ausgang kann mehrere Fahrspuren aufweisen. Außerdem wurde festgelegt, dass Kreuzungsein- bzw. Ausgänge als Virtuelle Sensoren modelliert werden.\\ \\ - Zunächst müssen allerdings die Sensoren genauer untersucht werden. Alle Sensoren wurde dafür neben der Unterteilung nach Einspursensor und Mischspursensor nochmals in Subklassen unterschieden.\\ Einspursensoren unterteilen sich dabei in drei Subklassen:\\ + Eine Fahrspur bezeichnet dabei einen Bereich der Stra"senfahrbahn der mit seiner vorgegebenen Fahrtrichtung auf bestimmt Ausg"ange der Kreuzung zeigt. Ein Kreuzungsein bzw. -ausgang kann mehrere Fahrspuren aufweisen. Au"serdem wurde festgelegt, dass Kreuzungsein- bzw. Ausg"ange als Virtuelle Sensoren modelliert werden.\\ \\ + Zun"achst m"ussen allerdings die Sensoren genauer untersucht werden. Alle Sensoren wurde daf"ur neben der Unterteilung nach Einspursensor und Mischspursensor nochmals in Subklassen unterschieden.\\ Einspursensoren unterteilen sich dabei in drei Subklassen:\\ \begin{enumerate} \item{Einspur - Geradeaus} \item{Einspur - Links} @@ -53,8 +53,8 @@ Um ein Verkehrsmodell zu entwickeln muss zuerst festgelegt werden, welche Art de \item{Mischspur - Rechts + Links} \end{enumerate} Alle beschriebenen Sensorklassen und deren Subklassen sind in dem betrachteten Ausschnitt von Darmstadt enthalten.\\ \\ - Einbahnstra"sen und Verkehr mit einer Flussrichtung m"ussen modelliert werden, daher w"ahlt man einen gerichteten Graphen, um dies abzubilden. Da sich die Zweistufenmodellierung als n"utzlich erwiesen hat, wird auch die Kreuzungsübersicht als Graph im Computer abgebildet. Daf"ur m"ussen zwei verschiedenen Graphen aufgebaut werden. Der einer Kreuzung, mit Sensoren und virtuellen Sensoren als Knoten, sowie Stra"sen als Kanten. Der Graph der Kreuzungs"ubersicht dagegen hat Kreuzungen als Knoten und ebenfalls Stra"sen als Kanten. Das entwickelte Modell weist folglich zwei Ebenen auf, welche sich beide als Graph darstellen lassen. \\ \\ - Es folgt eine kurze "Ubersicht "uber Graphen woraufhin der Kreuzungsgraph und der Kreuzungsübersichtsgraph in einem eigenen Unterkapitel näher erläutert wird. + Einbahnstra"sen und Verkehr mit einer Flussrichtung m"ussen modelliert werden, daher w"ahlt man einen gerichteten Graphen, um dies abzubilden. Da sich die Zweistufenmodellierung als n"utzlich erwiesen hat, wird auch die Kreuzungs"ubersicht als Graph im Computer abgebildet. Daf"ur m"ussen zwei verschiedenen Graphen aufgebaut werden. Der einer Kreuzung, mit Sensoren und virtuellen Sensoren als Knoten, sowie Stra"sen als Kanten. Der Graph der Kreuzungs"ubersicht dagegen hat Kreuzungen als Knoten und ebenfalls Stra"sen als Kanten. Das entwickelte Modell weist folglich zwei Ebenen auf, welche sich beide als Graph darstellen lassen. \\ \\ + Es folgt eine kurze "Ubersicht "uber Graphen woraufhin der Kreuzungsgraph und der Kreuzungs"ubersichtsgraph in einem eigenen Unterkapitel n"aher erl"autert wird. \subsubsection{Grundlagen}\label{sec:modell:graph:grund} Ein Graph ist eine Struktur, die Objekte und deren Verbindung untereinander abbilden kann. Die Objekte werden dabei Knoten, die Verbindungen Kanten genannt. Eine Kante verbindet genau zwei Knoten. Graphen lassen sich besonders gut visualisieren, indem Knoten als Punkte oder K"asten und Kanten als Linien zwischen diesen dargestellt werden.\\ \\ Ein Graph kann als Tupel $(V, E)$ beschrieben werden. $V$ bezeichnet dabei die Menge der Knoten, @@ -64,7 +64,7 @@ Um ein Verkehrsmodell zu entwickeln muss zuerst festgelegt werden, welche Art de \item{ungerichter Graph} \item{gerichteter Graph} \end{itemize} - Ein ungerichteter Graph kann genau eine Kante zwischen zwei Knoten haben. Ein gerichteter Graph dagegen kann bis zu zwei Kanten zwischen zwei Knoten haben, einen f"ur jeder Richtung. Diese Einschr"ankung gilt hingegen nicht f"ur Graphen, die Mehrfachkanten erlauben. Mehrfachkanten sind solche, welche zwei oder mehr Kanten zwischen zwei Knoten zulassen. Eine graphische Übersicht über die verschiedenen Graphen ist in \autoref{abb:graphen} zu finden. + Ein ungerichteter Graph kann genau eine Kante zwischen zwei Knoten haben. Ein gerichteter Graph dagegen kann bis zu zwei Kanten zwischen zwei Knoten haben, einen f"ur jeder Richtung. Diese Einschr"ankung gilt hingegen nicht f"ur Graphen, die Mehrfachkanten erlauben. Mehrfachkanten sind solche, welche zwei oder mehr Kanten zwischen zwei Knoten zulassen. Eine graphische "Ubersicht "uber die verschiedenen Graphen ist in \autoref{abb:graphen} zu finden. \begin{figure}[htbp!]\label{abb:graphen} \centering \fbox{\includegraphics[width=0.5\textwidth-2\fboxsep-2\fboxrule]{ext/graphen}} @@ -72,22 +72,22 @@ Um ein Verkehrsmodell zu entwickeln muss zuerst festgelegt werden, welche Art de \end{figure} Bei dem, in dieser Arbeit, entworfen Graphen handelt es sich um gerichtete Graphen ohne Mehrfachkanten, da jede Fahrspuren durch einen eigenen Sensorknoten modelliert und aus diesem Grund keine Mehrfachkanten ben"otigt werden. Typische Algorithmen auf einem Graphen sind die Tiefensuche, Breitensuche oder Wegfindungsalgorithmen. \subsubsection{Kreuzungsgraph} \label{sec:modell:graph:xr} - Da der Kreuzungs"ubersichtsgraph die Kreuzungsgraphen als Knoten beinhalten soll, um den Zusammenhalt des Modells zu gewährleisten, werden zuerst die Kreuzungsgraphen modelliert. Dabei gilt es folgende Elemente abzubilden und entweder als Knoten oder als Kante zu definieren. Validierungssensoren werden aus der Modellierung au"sen vorgelassen, um die Modellierung und Berechnung zu vereinfachen. + Da der Kreuzungs"ubersichtsgraph die Kreuzungsgraphen als Knoten beinhalten soll, um den Zusammenhalt des Modells zu gew"ahrleisten, werden zuerst die Kreuzungsgraphen modelliert. Dabei gilt es folgende Elemente abzubilden und entweder als Knoten oder als Kante zu definieren. Validierungssensoren werden aus der Modellierung au"sen vorgelassen, um die Modellierung und Berechnung zu vereinfachen. \begin{itemize} \item{Stra"se: Ein nicht mit Sensoren best"uckte Stra"se, auf der Fahrzeuge fahren d"urfen.} \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 wurde festgelegt, dass zwischen Kreuzungsein- und -Ausgang genau ein Sensor liegen muss. Dieser kann allerdings ebenfalls ein virtueller Sensor sein, wenn keine Werte für den entsprechende Fahrspur bekannt sind. Des weiteren wird für jede Eingangsspur ein Sensor angenommen, da die Induktionsschleifen der Stadt Darmstadt diese Bedingung auf dem untersuchten Bereich erfüllt. Ein Sensor wird dabei einer Eingangsspur zugeordnet, wenn dieser vor der entsprechenden Haltelinie verbaut ist.\\ \\ - Der Graph lässt 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ültige 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.\\ \\ + Es liegt nahe, Stra"sen als Kanten und Sensoren, sowie virtuelle Sensoren, als Knoten zu modellieren. Es wurde festgelegt, dass zwischen Kreuzungsein- und -Ausgang genau ein Sensor liegen muss. Dieser kann allerdings ebenfalls ein virtueller Sensor sein, wenn keine Werte f"ur den entsprechende Fahrspur bekannt sind. Des weiteren wird f"ur jede Eingangsspur ein Sensor angenommen, da die Induktionsschleifen der Stadt Darmstadt diese Bedingung auf dem untersuchten Bereich erf"ullt. Ein Sensor wird dabei einer Eingangsspur 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} - Für die Kreuzungsübersicht ist ebenfalls eine Reduktion auf Knoten und Kanten notwendig, um die Kreuzungs"ubersicht als Graph darstellen zu k"onnen. Folgende Festlegung wurde hierf"ur getroffen: + F"ur die Kreuzungs"ubersicht ist ebenfalls eine Reduktion auf Knoten und Kanten notwendig, um die Kreuzungs"ubersicht als Graph darstellen zu k"onnen. Folgende Festlegung wurde hierf"ur getroffen: \begin{itemize} \item{Stra"se: Eine Stra"se sei eine Kante} \item{Kreuzung: Eine Kreuzung sei ein Knoten} \end{itemize} - Auch dieser Graph lässt sich als Tupel von $(V, E)$ beschreiben, wobei $V$ die Menge der einzelnen Kreuzungsgraphen bezeichnet. $E$ bezeichnet gerichtete Kanten zwischen zwei Kreuzungen. Eine solche Kante darf nur eingezeichnet werden, wenn die entsprechenden Kreuzungen nahe beieinander liegen und keine Kreuzung, nach dem Kreuzungsausgang der vorhergehenden Kreuzung, näher ist. Desweiteren muss eine direkte Verbindung mittels einer Straße zwischen den beiden Kreuzungen vorliegen. + Auch dieser Graph l"asst sich als Tupel von $(V, E)$ beschreiben, wobei $V$ die Menge der einzelnen Kreuzungsgraphen bezeichnet. $E$ bezeichnet gerichtete Kanten zwischen zwei Kreuzungen. Eine solche Kante darf nur eingezeichnet werden, wenn die entsprechenden Kreuzungen nahe beieinander liegen und keine Kreuzung, nach dem Kreuzungsausgang der vorhergehenden Kreuzung, n"aher ist. Desweiteren muss eine direkte Verbindung mittels einer Stra"se zwischen den beiden Kreuzungen vorliegen. \subsection{Matrixdarstellung des Kreuzungsmodells}\label{sec:modell:matrix} Als Grundlage f"ur die Berechnung wurde eine Matrixdarstellung f"ur Kreuzungen entwickelt. Der oben entwickelte Graph l"asst sich dabei in eine Matrixform "uberf"uhren. Matrizen bieten z.b. durch Matrixmultiplikation die M"oglichkeit komplexe Zusammenh"ange durch einfache Rechenschritte auszudr"ucken. Mehr zu der Verwendung von Matrizen ist im Kapitel \autoref{sec:berechnung} zu finden.\\ \\ Um en Graph einer Kreuzung zu beschreiben, ist es n"otig die Verbindungen von Sensoren zu deren m"oglichen Kreuzungsausg"angen bzw. -Eing"angen zu modellieren.\\ \\ @@ -116,7 +116,7 @@ Um ein Verkehrsmodell zu entwickeln muss zuerst festgelegt werden, welche Art de \caption{H"andische Modellierung der Kreuzung A23 mit markierten Ausgangsverbindungen in Richtung A104 und markierten Eingangsverbindungen aus Richtung A4.} \label{abb:a23marked} \end{figure} - Am Beispiel der Kreuzung A23 sei das hier demonstriert. Dabei entf"allt eine Ausgangszeile, da die A23 eine Einbahnstra"se beinhaltet, welche es gebietet die Kreuzung nicht in die eine Richtung zu verlassen. Die entsprechenden Ausgangszeilen werden dabei mit der, auf den Ausgang folgenden, Kreuzung benannt. Die Tabelle \autoref{abb:ausmatrixa23} beschreibt die Ausgangsmatrix der Kreuzung A23. Um die Zusammensetzung der Matrizen zu verdeutlichen sind in \autoref{abb:a23marked} die Verbindungen für den Eingang aus Richtung A4 markiert, sowie die Verbindungen für den Ausgang in Richtung A104. + Am Beispiel der Kreuzung A23 sei das hier demonstriert. Dabei entf"allt eine Ausgangszeile, da die A23 eine Einbahnstra"se beinhaltet, welche es gebietet die Kreuzung nicht in die eine Richtung zu verlassen. Die entsprechenden Ausgangszeilen werden dabei mit der, auf den Ausgang folgenden, Kreuzung benannt. Die Tabelle \autoref{abb:ausmatrixa23} beschreibt die Ausgangsmatrix der Kreuzung A23. Um die Zusammensetzung der Matrizen zu verdeutlichen sind in \autoref{abb:a23marked} die Verbindungen f"ur den Eingang aus Richtung A4 markiert, sowie die Verbindungen f"ur den Ausgang in Richtung A104. \begin{figure} \centering \begin{tabular}{|c|c|c|c|c|c|c|c|c|c|c|}\hline @@ -195,11 +195,11 @@ Um ein Verkehrsmodell zu entwickeln muss zuerst festgelegt werden, welche Art de 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, diesmal identifiziert "uber die \textit{SensorID}, 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} - Zur Modellierung am Computer wird auf die Java Bibliothek \textit{JGraphT} zur"uckgegriffen. Sie erlaubt es, dank Javas moderner 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}, 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 Übersicht über die Klassen und deren Zusammenhang untereinander ist in Form eines Klassendiagramms in \autoref{abb:classdiagstreet} dargestellt.\\ \\ + Zur Modellierung am Computer wird auf die Java Bibliothek \textit{JGraphT} zur"uckgegriffen. Sie erlaubt es, dank Javas moderner 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}, 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 - \includegraphics[width=0.95\textwidth]{pic/classdiagStreet} - \caption{Klassendiagramm der JGraphT Implementierung des Straßenmodells.} + \includegraphics[width=0.6\textwidth]{pic/classdiagStreet} + \caption{Klassendiagramm der JGraphT Implementierung des Stra"senmodells.} \label{abb:classdiagstreet} \end{figure} Um eine Kreuzung mit \textit{JGraphT} zu modellieren wurden folgende zwei Klassen definiert: @@ -209,7 +209,7 @@ Um ein Verkehrsmodell zu entwickeln muss zuerst festgelegt werden, welche Art de \end{itemize} Die Klasse \textit{SE} kann dabei Sensorname, Position in Latitude und Longitude, sowie die Kreuzung, welche den Sensor beinhaltet, speichern. Das Feld \textit{sensorType} erlaubt zus"atzlich die Unterscheidung von verschiedenen Sensortypen. Des weiteren stehen drei Felder zur Verkn"upfung mit anderen Sensoren zur Verf"ugung. Das Feld \textit{multipleOutputDirections} erlaubt es zu bestimmen, ob es sich um einen Mehr- oder Einspursensor handelt. Sollte es sich um einen virtuellen Ein- oder Ausgang einer Kreuzung handeln, so werden in den Feldern \textit{outXR} und \textit{inXR} die Namen der benachbarten Kreuzungen gespeichert. Dies entspricht den Felder der in \autoref{sec:modell} beschriebenen Datenbankstruktur. Zus"atzlich zu den Verkn"upfungs- und Typinformationen k"onnen noch ein Sensorwert und ein Testwert gespeichert werden. Der Wert, falls gesetzt, wird dabei zur Berechnung eingesetzt, w"ahrend der Testwert zur "Uberpr"ufung eines berechneten Ergebnisses dient. 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äheres ist im Kapite \ref{sec:validierung} zu finden.\\ \\ + 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 Kapite \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 Stra"se 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. \\ \\ @@ -224,10 +224,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ält den Kreuzungsübersichtsgraphen (siehe \autoref{lst:streetgraph}) und über das Feld \textit{data\_timestamp} kann definiert werden welcher Datensatz aus der Datenbank selektiert wird. Die Funktion \textit{createGraph} der Klasse erzeugt den Kreuzungsübersichtsgraphen. Dafür werden zuerst alle Kreuzungsknoten aus der Datenbank selektiert und für jeden ein neues \textit{XR}-Objekt angelegt und mit den Werten der Datenbank befüllt. Dieses wird daraufhin dem \textit{streeGraph} hinzugefügt. 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ügt. - Während des Anlegens des \textit{XR}-Objekt werden die Kreuzungsdaten in dieses nachgeladen. Hierfür werden alle Sensoren, welche zu der entsprechenden Kreuzung gehören aus der Datenbank geholt, diese dem \textit{sensorGraph} hinzugefügt, sowie Verbindungen zwischen den Sensoren annotiert.\\ \\ - Die Funktion \textit{loadData} der \textit{TrafficGraph}-Klasse erlaubt das Laden der Daten für den spezifizierten Zeitpunkt. Diese läd sowohl die Sensorwerte und schreibt diese in die einzelnen Sensorknoten des \textit{sensorGraph}, als auch die Abbiegewahrscheinlichkeiten, welche den dazugehörigen Kanten übergeben 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ür wurde die Klasse \textit{Algo} definiert, der im Konstruktor der Kreuzungsübersichtsgraph übergeben wird. Die abstrakte Funktion \textit{calculcate} dieser Klasse erlaubt es beliebige Algorithmen zu schreiben, welche auf den Graphen zurückgreifen können. In \autoref{abb:classdiagalgo} ist die Struktur der Klassen in einem Klassendiagramm aufgezeigt.\\ \\ + 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{streeGraph} 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. + 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 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{calculcate} dieser Klasse erlaubt es beliebige Algorithmen zu schreiben, welche auf den Graphen zur"uckgreifen k"onnen. In \autoref{abb:classdiagalgo} ist die Struktur der Klassen in einem Klassendiagramm aufgezeigt.\\ \\ \begin{figure} \centering \includegraphics[width=0.95\textwidth]{pic/classdiagAlgo} @@ -239,20 +239,20 @@ Um ein Verkehrsmodell zu entwickeln muss zuerst festgelegt werden, welche Art de \item{\textit{AlgoGraphPropagation}: Mithilfe dieses Algorithmus werden die Ausgangsverkehrswerte einer Kreuzung berechnet. Eine genaue Beschreibung des Verfahrens ist in \autoref{sec:berechnung} zu finden.} \item{\textit{AlgoGraphInputPropagation}: Mithilfe dieses Algorithmus werden die Eingangsverkehrswerte einer Kreuzung berechnet. Eine genaue Beschreibung des Verfahrens ist in \autoref{sec:berechnung} zu finden.} \item{\textit{AlgoFindSensorOutputDirection}: Mithilfe dieses Algorithmus wird die sensorspezifischen Richtungsangaben der Abbiegewahrscheinlichkeiten auf absolute Werte umgerechnet. Eine genaue Beschreibung des Verfahrens ist in \autoref{sec:berechnung} zu finden.} - \item{\textit{AlgoFindFlowToNextXR}: Mithilfe dieses Algorithmus werden die Werte welche für den Ausgang einer Kreuzung berechnet wurden auf das Kreuzungsübersichtsmodell übertragen. Eine genaue Beschreibung des Verfahrens ist in \autoref{sec:berechnung} zu finden.} + \item{\textit{AlgoFindFlowToNextXR}: Mithilfe dieses Algorithmus werden die Werte welche f"ur den Ausgang einer Kreuzung berechnet wurden auf das Kreuzungs"ubersichtsmodell "ubertragen. Eine genaue Beschreibung des Verfahrens ist in \autoref{sec:berechnung} zu finden.} \end{enumerate} - Die gewählte Struktur ist darauf ausgelegt das Modell um weitere Algorithmen zu erweitern, um eine schrittweise Verbesserung der Modellierung zu erleichtern. Außerdem erlaubt die Struktur ein austauschen von Algorithmen, um ein beliebiges Berechnungsverfahren auf den Graphen anzuwenden. \\ \\ + Die gew"ahlte Struktur ist darauf ausgelegt das Modell um weitere Algorithmen zu erweitern, um eine schrittweise Verbesserung der Modellierung zu erleichtern. Au"serdem erlaubt die Struktur ein austauschen von Algorithmen, um ein beliebiges Berechnungsverfahren auf den Graphen anzuwenden. \\ \\ Die letzten beiden Funktionen der Klasse \textit{TrafficGraph} sind \textit{buildGUI} und \textit{buildXRGUI}. Beide dienen der Visualisierung des \textit{JGraphT} Graphen und werden im Kapitel \ref{sec:visualisierung} beschrieben. \subsection{Zuk"unftige Herausforderungen des Modells}\label{sec:modell:limits} Das entwickelte Modell kann nicht alle Verkehrsverhalten modellieren. In diesem Abschnitt wird behandelt, welche Einschr"ankungen das Modell mit sich bringt und welche Reduktionen des Detailgrades vorgenommen wurden.\\ \\ Das Modell kann sog. \textit{U-Turns}, nicht modellieren. Als \textit{U-Turn} bezeichnet man das Verkehrsman"over, dass den Verkehrsteilnehmer von dem Kreuzungseingang einer Kreuzung zu dem Ausgang, welcher in die Richtung zeigt, aus der er gekommen ist, zur"uck bringt. Dieses Verkehrsverhalten ist selten zu beobachten und wurde aus diesem nicht modelliert. Desweiteren w"urde eine Modellierung dieses Man"overs eine \textit{U-Turn-Wahrscheinlichkeit} erfordern, welche nicht vorliegt.\\ \\ Eine weitere, sehr elementare Schw"ache des Modells ist die Abstraktion der Sensorposition. Wie in den manuell angefertigten Kreuzungszeichnungen wird die Position eines Sensors innerhalb des Graphenmodells einem Eingang zugeordnet. Die Latitude und Longitude Werte des Sensors werden nur zur Visualisierung benutzt und nicht zur Berechnung. Ein Spurwechseln nach dem "Uberfahren eines Sensors kann nicht modelliert werden. Die Genauigkeit des Modells h"angt folglich direkt mit der Entfernung des Sensors von der Kreuzung ab. Ist der Sensor weit entfernt, so kann ein Verkehrsteilnehmer die Spur nochmals wechseln. Ist der Sensor direkt vor der Haltelinie verbaut, kann die Spur nicht mehr gewechselt werden, wenn das Fahrzeug darauf steht. Sind die Sensoren eines Kreuzungseingangs auf verschiedenen H"ohen in die Stra"se eingelassen, so k"onnen Verkehrsteilnehmer im schlechtesten Fall "uber zwei Sensoren fahren, wenn sie nach dem "Uberfahren eines Sensors die Spur nochmals wechseln, die einen Sensor weiter vorne im Kreuzungsbereich verbaut hat.\\ \\ - Außerdem wird nur g"ultiges Verkehrsverhalten modelliert. So k"onnen Verkehrsteilnehmer, welche zwar auf einer Rechtsabbiegerspur stehen, allerdings geradeaus fahren, nicht von dem Modell modelliert werden.\\ \\ + Au"serdem wird nur g"ultiges Verkehrsverhalten modelliert. So k"onnen Verkehrsteilnehmer, welche zwar auf einer Rechtsabbiegerspur stehen, allerdings geradeaus fahren, nicht von dem Modell modelliert werden.\\ \\ Es ist allerdings denkbar, das Modell durch U-Turn-, Spurwechsel- sowie Falschfahrwahrscheinlichkeiten zu erg"anzen und somit die Menge der modellierbaren Kreuzungszust"ande und -"Uberg"ange zu vergr"o"sern um ein realistischeres Bild des Verkehrs zu berechnen. Allerdings lagen keine Daten "uber das Verhalten der Verkehrsteilnehmer vor. \\ \\ - Im Folgendem werden nochmal zwei besonders wichtige Herausforderungen vorgestellt, die elementare Herausforderungen für die Verkehrsflussberechnung darstellen. Zum einen ist dies das Verfolgen von Fahrzeugkolonnen über Kreuzungen hinweg. Es beschreibt das eine Verbindung von Sensorwerten zweier Kreuzungen nicht möglich ist, da nicht bestimmt werden kann, wann die Fahrzeuge an der nächsten Kreuzung ankommen. Zum anderen ist das das genaue Bestimmen der Abbiegewahrscheinlichkeiten der Fahrzeuge an den Sensoren. Dies ist nicht möglich da nicht ausreichend viele Validierungssensoren zur Verfügung stehen. + Im Folgendem werden nochmal zwei besonders wichtige Herausforderungen vorgestellt, die elementare Herausforderungen f"ur die Verkehrsflussberechnung darstellen. Zum einen ist dies das Verfolgen von Fahrzeugkolonnen "uber Kreuzungen hinweg. Es beschreibt das eine Verbindung von Sensorwerten zweier Kreuzungen nicht m"oglich ist, da nicht bestimmt werden kann, wann die Fahrzeuge an der n"achsten Kreuzung ankommen. Zum anderen ist das das genaue Bestimmen der Abbiegewahrscheinlichkeiten der Fahrzeuge an den Sensoren. Dies ist nicht m"oglich da nicht ausreichend viele Validierungssensoren zur Verf"ugung stehen. \subsubsection{Herausforderung: Verfolgung von Fahrzeugen "uber eine Kreuzung hinaus} \label{sec:datengrund:probtime} Die Daten der Induktionsschleifen sind die Werte der Sensoren "uber die letzte Minute. Sie zeigen eine Art summierte Momentaufnahme des Verkehrs an den Messpunkten. Das macht es allerdings schwer, zwei Messungen in eine Beziehung zu setzen. Bildlich gesprochen kann man nicht trivial bestimmen, wie lange ein Auto von der einen zur anderen Kreuzung ben"otigt. Da die Daten nur f"ur bestimmte Zeitpunkte zur Verf"ugung stehen, kann nicht mehr festgestellt werden, wann ein Auto, welches an Kreuzung A "uber den Sensor gefahren ist, an Kreuzung B ankommt und dort "uber einen anderen Sensor f"ahrt. Die \textit{Verfolgung} eines Autos ist somit nicht m"oglich, da nicht festgestellt werden kann, wie weit es sich bis zur n"achsten Momentaufnahme fortbewegt hat.\\ \\ Die Arbeit von \textsc{M. Scholz} \cite{thesis:michael} versucht dieses Problem durch das Gleichsetzen des Kreuzungsausgangswertes mit dem Eingangswert der darauffolgenden Kreuzung zu l"osen. Dies ist allerdings nicht im Minutentakt durchzuf"uhren. Durch den Zeitversatz der Messungen m"ussen die Werte gemittelt werden. F"ur eine Berechnung des momentanen Verkehrsaufkommens zu einem Zeitpunkt eignet sich das Verfahren nicht. \subsubsection{Herausforderung: Genaues Bestimmen des Abbiegeverhaltens} \label{sec:datengrund:abbprob} - Das das Abbiegeverhalten nicht für jede Minute berechnet werden kann, ist auf zu wenige Sensorwerte zur"uckzuf"uhren. In den Kreuzungen von Darmstadt sind die Induktionsschleifen am Kreuzungseingang verbaut, jedoch nicht am Kreuzungsausgang (bis auf wenige Ausnahmen). Aus diesem Grund wurden die sog. \textit{Valliderungssensoren} nicht modelliert. Es kann f"ur Mischspursensoren folglich nicht \textit{live} bestimmt werden, wie viele Fahrzeuge in die eine und wie viele in die andere Richtung gefahren sind, da keine Messungen der Kreuzungsausgänge vorliegen. Um den Fluss trotzdem bestimmen zu k"onnen, wird in dieser Arbeit mit Abbiegewahrscheinlichkeiten gearbeitet, die angeben, wie viel Prozent des Verkehrs, der "uber einen Sensor f"ahrt, die Kreuzung in welche Richtung verl"asst. Die Wahrscheinlichkeiten, die für diese Arbeit zur Verfügung standen, sind die gemittelte Abbiegewahrscheinlichkeiten an den Sensoren, die von der Stadt Darmstadt ermittelt wurden. Eine Bestimmung der exakten Abbiegewahrscheinlichkeiten für jede Minute ist mit einem fl"achendeckenden Einsatz von Vallidierungssensoren m"oglich. Mehr Informationen zu Vallierungssensoren und deren Verwendungsm"oglichkeiten sind im Kapitel \autoref{sec:berechnung} aufgezeigt. + Das das Abbiegeverhalten nicht f"ur jede Minute berechnet werden kann, ist auf zu wenige Sensorwerte zur"uckzuf"uhren. In den Kreuzungen von Darmstadt sind die Induktionsschleifen am Kreuzungseingang verbaut, jedoch nicht am Kreuzungsausgang (bis auf wenige Ausnahmen). Aus diesem Grund wurden die sog. \textit{Valliderungssensoren} nicht modelliert. Es kann f"ur Mischspursensoren folglich nicht \textit{live} bestimmt werden, wie viele Fahrzeuge in die eine und wie viele in die andere Richtung gefahren sind, da keine Messungen der Kreuzungsausg"ange vorliegen. Um den Fluss trotzdem bestimmen zu k"onnen, wird in dieser Arbeit mit Abbiegewahrscheinlichkeiten gearbeitet, die angeben, wie viel Prozent des Verkehrs, der "uber einen Sensor f"ahrt, die Kreuzung in welche Richtung verl"asst. Die Wahrscheinlichkeiten, die f"ur diese Arbeit zur Verf"ugung standen, sind die gemittelte Abbiegewahrscheinlichkeiten an den Sensoren, die von der Stadt Darmstadt ermittelt wurden. Eine Bestimmung der exakten Abbiegewahrscheinlichkeiten f"ur jede Minute ist mit einem fl"achendeckenden Einsatz von Vallidierungssensoren m"oglich. Mehr Informationen zu Vallierungssensoren und deren Verwendungsm"oglichkeiten sind im Kapitel \autoref{sec:berechnung} aufgezeigt. \newpage \ No newline at end of file diff --git a/ss2013/Bachelor Thesis/thesis_ug/tex/uebersicht.tex b/ss2013/Bachelor Thesis/thesis_ug/tex/uebersicht.tex index ba5f06ac..2104363b 100644 --- a/ss2013/Bachelor Thesis/thesis_ug/tex/uebersicht.tex +++ b/ss2013/Bachelor Thesis/thesis_ug/tex/uebersicht.tex @@ -1,7 +1,7 @@ \section{"Ubersicht}\label{sec:uebersicht} In Ballungsgebieten, vornehmlich in St"adten, steigt die Anzahl der Verkehrsteilnehmer. Insbesondere die Anzahl der Fahrzeuge ist in den letzten Jahren drastisch gestiegen. Diese zunehmende Belastung wirkt sich auf Stra"sen, auf den Verkehr und durch Verschmutzung und L"armbelastung auch auf den Menschen aus. Um der gestiegenen Anzahl an Fahrzeugen gerecht zu werden wurden verkehrsabh"angige Ampelanlagen entwickelt, welche ihre Ampelphasen dem Verkehrsaufkommen anpassen k"onnen. Hierf"ur wird der Verkehr der einzelnen Spuren einer Kreuzung mithilfe von Sensoren - Induktionsschleifen - erfasst. Mit der fortschreitenden Technisierung und dem gestiegenem Verkehr erhielten diese 'adaptiv' gesteuerten Ampelanlagen Einzug in die Stra"sen gr"o"serer St"adte, um die bereits vorhandenen Verkehrswege besser nutzen zu k"onnen.\\ \\ In dieser Arbeit wird untersucht, in wieweit man durch Verkehrsdaten, welche mithilfe von Induktionsschleifen auf den Stra"sen erfasst werden, Verkehrsfl"usse voraussagen und Stra"senbelastungen berechnen kann. Hierf"ur wurde ein zweistufiges Graphen-basiertes Modell der Stra"se entwickelt und verschiedene Ans"atze, um Verkehrsfl"usse innerhalb einer Kreuzung und zwischen Kreuzungen zu berechnen, diskutiert. Als Grundlage dieser Berechnungen dienen Induktionsschleifenwerte der Stadt Darmstadt, die eine Vielzahl ihrer Kreuzungen mit Induktionsschleifen versehen hat.\\ \\ -Mithilfe von linearen Gleichungssystemen konnten Verkehrsfl"usse innerhalb von Kreuzungen, sowie eine Anzahl an Verkehrsteilnehmer, welche eine Kreuzung in eine bestimmte Richtung verlassen, berechnet werden. Neben den Sensorwerten der Induktionsschleifen kamen dabei sog. Abbiegewahrscheinlichkeiten zum Einsatz. Diese wurden ebenfalls von der Stadt Darmstadt zur Verf"ugung gestellt. Eine Visualisierung des entwickelten Graphen erlaubt es die berechneten Verkehrsfl"usse besser zu untersuchen und zu verstehen. Eine zweite Visualisierung projeziert das Straßenmodell auf eine Luftbildkarte. Die Validit"at der ermittelten Daten h"angt allerdings von den zugrundeliegenden Sensorwerten ab. In einer Verkehrsz"ahlung konnten ein Teil der modellierten Sensoren untersucht und bei einigen Sensoren eine sehr hohe Genauigkeit feststellen werden. Bei anderen Sensoren ergab die Z"ahlung allerdings Abweichungen von bis zu siebenhundert Prozent.\\ \\ +Mithilfe von linearen Gleichungssystemen konnten Verkehrsfl"usse innerhalb von Kreuzungen, sowie eine Anzahl an Verkehrsteilnehmer, welche eine Kreuzung in eine bestimmte Richtung verlassen, berechnet werden. Neben den Sensorwerten der Induktionsschleifen kamen dabei sog. Abbiegewahrscheinlichkeiten zum Einsatz. Diese wurden ebenfalls von der Stadt Darmstadt zur Verf"ugung gestellt. Eine Visualisierung des entwickelten Graphen erlaubt es die berechneten Verkehrsfl"usse besser zu untersuchen und zu verstehen. Eine zweite Visualisierung projeziert das Stra"senmodell auf eine Luftbildkarte. Die Validit"at der ermittelten Daten h"angt allerdings von den zugrundeliegenden Sensorwerten ab. In einer Verkehrsz"ahlung konnten ein Teil der modellierten Sensoren untersucht und bei einigen Sensoren eine sehr hohe Genauigkeit feststellen werden. Bei anderen Sensoren ergab die Z"ahlung allerdings Abweichungen von bis zu siebenhundert Prozent.\\ \\ \section*{Abstract} In urban areas, most notably Cities, have an increasing the number of road users. diff --git a/ss2013/Bachelor Thesis/thesis_ug/tex/validierung.tex b/ss2013/Bachelor Thesis/thesis_ug/tex/validierung.tex index 5735d49e..c6c3f2f6 100644 --- a/ss2013/Bachelor Thesis/thesis_ug/tex/validierung.tex +++ b/ss2013/Bachelor Thesis/thesis_ug/tex/validierung.tex @@ -1,20 +1,20 @@ \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. \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ür in die sog. Testdatenmenge und die Restdatenmenge aufgeteilt. Durch einen Vergleich der Testdaten und den zugehörigen berechneten Daten, kann nun festgestellt werden wie genau die Berechnung ist.\\ \\ + 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 Restdatenmenge 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ügung stehen. Dann kann durch Weglassen der Sensor- oder der Validierungssensordaten die Berechnung erfolgen und die Ausgelassenen Daten k"onnen zur Validierung eingesetzt werden.\\ \\ + 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.\\ \\ 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öglichen würde, wurde im Rahmen dieser Arbeit eine Verkehrsz"ahlung durchgef"uhrt. Diese Verkehrsz"ahlung wurde mit Hilfe von \textit{Scholz} \autoref{thesis:michael} durchgeführt. Gez"ahlt wurde dabei mit Strichliste an den Kreuzungen [], [] und []. Dabei wurden in der einen Messreihe die Autos 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 [] und [] gefahren sind. Jeder Sensor bzw. Ausgang wurde dafür über einen Zeitraum von 15 Minuten beobachtet und der Verkehr gezählt.\\ \\ - Es wurden dabei starke Unterschiede zwischen den gezählten und den, von den Sensoren ermittelten, Werten festgestellt. Dies ist zum einen auf ungenaue und fehleranfällige Sensorik(vgl. \autoref{sec:grundlagen}) zurückzuführen, zum anderen muss für adaptiv gesteuerte Ampelanlagen sichergestellt werden, dass alle Fahrzeuge erkannt werden, um diese über die Kreuzung zu lassen. Diese Vorgabe wird dadurch erfüllt, dass die Sensorik leichter als nötig auslöst, um wirklich jedes Fahrzeug zu erkennen. Dies wiederum erhöht die Fehleranfälligkeit des Sensors. [todo auswertung]\\ \\ - In einer weiteren Untersuchung wurde der Sensor [] im Minutentakt gezählt, um eine genaueres Bild der Abweichung zu erhalten. Die gemessenen Werte lagen dabei bis zu 700\% von dem gezählten Wert entfernt. Bei dieser Zählung wurden neben der Anzahl der Verkehrsteilnehmer der Fahrzeugtyp untersucht, um die Fehleranfälligkeit des Sensors für die verschiedenen Fahrzeugtypen genauer zu bestimmen.[todo auswertung]\\ \\ - Die Erkenntnisse über die Ungenauigkeiten der Sensoren decken sich mit den Befunden der Arbeit [] von [][cite]. In dem dort Untersuchten Gebiet der Stadt Hannover wurde eine sehr starke Varianz der Messgenauigkeit der dort verbauten Induktionsschleifen festgestellt. + 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{Scholz} \autoref{thesis:michael} durchgef"uhrt. Gez"ahlt wurde dabei mit Strichliste an den Kreuzungen [], [] und []. Dabei wurden in der einen Messreihe die Autos 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 [] und [] 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. [todo auswertung]\\ \\ + In einer weiteren Untersuchung wurde der Sensor [] 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]\\ \\ + Die Erkenntnisse "uber die Ungenauigkeiten der Sensoren decken sich mit den Befunden der Arbeit [] von [][cite]. 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ählten Werten ergabt eine Abweichung von bis zu x\%.[geht nicht - zeit] + 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 die Berechnung der Kreuzungsein- und Ausgangswerte direkt von der Genauigkeit der Sensorwerte abhängt, ist die Genauigkeit der berechneten Werte entsprechend. Eine Verbesserung der Qualität der Sensordaten würde eine direkte Verbesserung der Berechneten Werte zur folge haben. + 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. \subsection{"Uberpr"ufung des Modells} [todo ausblick] Das in Kapitel \autoref{sec:modell} entwickelte Modell muss auf seine G"ultigkeit "uberpr"uft werden. Hierzu wird "uberpr"uft, ob die f"ur das Modell getroffenen Annahmen mit einer realen Verkehrssituation angebracht sind. diff --git a/ss2013/Bachelor Thesis/thesis_ug/tex/visualisierung.tex b/ss2013/Bachelor Thesis/thesis_ug/tex/visualisierung.tex index adde04f7..eaba0e5d 100644 --- a/ss2013/Bachelor Thesis/thesis_ug/tex/visualisierung.tex +++ b/ss2013/Bachelor Thesis/thesis_ug/tex/visualisierung.tex @@ -1,16 +1,16 @@ \section{Visualisierung}\label{sec:visualisierung} -In diesem Kapitel wird beschrieben, wie der im Kapitel \autoref{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 \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.\\ \\ 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.\\ \\ - 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ätze sind die folgenden: + 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.} \item{\textit{OSM Cycle Map}: Die Fahrradkarte des OSM Projekts.} \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 äquivalente händische Modellierung. + 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. \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}} @@ -19,7 +19,7 @@ Visualisierung eignet sich deshalb besonders gut, da die berechneten Zusammenh"a \label{abb:handischxrover} \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öglichkeit die einzelnen Knoten manuell nachzujustieren. Dies ist insbesondere f"ur solche Knoten ohne g"ultige Koordinaten hilfreich.\\ \\ + 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.\\ \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] @@ -28,17 +28,17 @@ Visualisierung eignet sich deshalb besonders gut, da die berechneten Zusammenh"a //... JGraphModelAdapter adp = new JGraphModelAdapter<>( streetGraph ); - JGraph jgraph = new JGraph(adp); + JGraph jgraph = new JGraph(adp); JFrame frame = new JFrame("StreetGraph"); JScrollPane scrPane = new JScrollPane(jgraph); 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ür die kreuzung zur Verfügung stehen, aufgetragen. Ein weiterer Wert zeigt auf, wie viele der Daten für die Berechnung zur Verfügung 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ür 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, 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. \begin{figure} \centering - \subfigure[Kreuzungsübersichtsgraph mit JGraph visualisiert.] {\includegraphics[width=0.5\textwidth-2\fboxsep-2\fboxrule]{pic/jgraphuebersicht}} + \subfigure[Kreuzungs"ubersichtsgraph mit JGraph visualisiert.] {\includegraphics[width=0.5\textwidth-2\fboxsep-2\fboxrule]{pic/jgraphuebersicht}} \label{abb:jgraphtubersicht} \subfigure[Kreuzung AX mit JGraph visualisiert.] {\includegraphics[width=0.5\textwidth-2\fboxsep-2\fboxrule]{pic/jgraphxr}} \label{abb:jgraphxr}