GIS-Seminar WS00/01 Routen- und Tourenplanung

Preview:

DESCRIPTION

GIS-Seminar WS00/01 Routen- und Tourenplanung. - Motivation - Bedürfnisse - Spezifische Anforderungen - Algorithmen - Systemfunktionen mit ArcInfo - Bewertung. von Thorsten Berka. Motivation. - PowerPoint PPT Presentation

Citation preview

GIS-Seminar WS00/01

Routen- und Tourenplanung- Motivation

- Bedürfnisse

- Spezifische

Anforderungen

- Algorithmen

- Systemfunktionen mit

ArcInfo

- Bewertung

von Thorsten Berka

Motivation

Motivation ist der Wunsch, optimal im Sinne seiner persönlichen Bedürfnisse und der gewählten Fortbewegungsart von seinem Standort zu einem bestimmten Zielort zu gelangen.

Oder wie Konfuzius sagen würde: „Der Weg ist das Ziel.“

BedürfnisseSind hier beispielsweise, möglichst

• anzukommen• schnell am Ziel zu sein• wenig Energie (z.B.: Körperkraft, Benzin...) zu verbrauchen• wenig Gefahrenstellen zu passieren• über bestimmte andere Zielpunkte zu kommen• ...

FortbewegungsartenGemeint sind

• Fahrrad• Auto• zu Fuß• Schiff• Eisenbahn• Flugzeug• ...

Spezifische Anforderungenfür die Routenplanung sind Straßennetze, die enthalten könnten:

- Straßennamen

- Entfernungen

- Höhenunterschiede

- Fahrradwege

- Fußgängerzonen

- Tempolimits

- Baustellen

- Höhen von Tunneln und Unterführungen

- ...

Algorithmus von DijkstraDer Algorithmus von Dijkstra dient dazu, die kürzesten Entfernungen von einem Punkt aus zu allen anderen Punkten einer vorgegebenen Menge zu finden.

Realisierung:AdjazenzmatrixAdjazenzliste

B C D E F G A(A) 11 ∞ 12 13 ∞ ∞11 E1 = 11

P1 = B B --- 10 8 ∞ ∞ ∞ _________________________________________A(A,B) --- 21 12 13 ∞ ∞ 12 E2 = 12

P2 = DD --- ∞ --- ∞ 6 ∞__________________________________________A(A,B,D) --- 21 --- 13 18 ∞13 E3 = 13

P3 = EE --- ∞ --- --- 7 ∞__________________________________________A(A,B,D,E) --- 21 --- --- 18 ∞18 E4 = 18

P4 = FF --- ∞ --- --- --- 9____________________________________________A(A,B,D,E,F) --- 21 --- --- --- 27 21 E5 = 21

P5 = CC --- --- --- --- --- 12____________________________________________A(A,B,C,..,F) --- --- --- --- --- 2727 E6 = 27

P6 = G

Algorithmus von Dijkstra

Algorithmus von Dijkstra

1.) Ausgangspunkt A2.) Auflistung der direkten Verbindungen3.) Vergleich der Abständeund Ermittlung des nächstgelegenen Punktes4.) Aufnahme des neuenPunktes in die Menge und erneute Auflistung der Strecken unter Berücksichtigung diesesPunktes 5.) Eventuell Eliminierung „doppelter“ Strecken und so weiter...

Algorithmus von Dijkstra

Vorteile des Algorithmus von Dijkstra:

- Leicht zu implementieren

- sehr effizienter Algorithmus

Problem dieses Algorithmus:

- Nur ein Kriterium (meistens die Euklidsche Entfernung) wird berücksichtigt

- zwei verschiedene Kanten zwischen zwei Punkten möglich

Komplexität

Komplexität

Nimmt zu

Nimmt abO (log n) logarithmisch

O (n) linear

O (n log n)

O (n²) quadratisch

O (nª) polynomiell

O (an) exponentiell

O (nn)}kritisch

}machbar

Dijkstra

TSP

Traveling Salesman Problem

Beim TSP geht es darum,durch eine Anzahl vonvorgegebenen Städten eine Route zu legen, so daß ein möglichst kurzer Zyklus entsteht.

Oder: Ein Kraftfahrer muß zu verschiedenen Städten je ein Produkt liefern. Zum Schluß muß er wieder zumLager zurückkehren.Wie schafft er das am schnellsten?

Traveling Salesman ProblemVoraussetzungen: - Lagekoordinaten der Sehenswürdigkeiten

- alle Sehenswürdigkeiten sind miteinanderverbunden

Damit gibt es (n-1)! mögliche Routen.

Anzahl der Anzahl derSehenswürdigkeiten möglichen Routen

5 24 6 120 7 720 8 5.040 9 40.320 10 362.880 11 3.628.800 12 39.916.800 13 479.001.600 14 6.227.020.800 15 87.178.291.200 20 121.645.100.408.832.000 50 608.281.864.034.268.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000.000

Traveling Salesman Problem

Zwei Arten von Algorithmen:

- Systematische Algorithmen

- Heuristische Algorithmen

- Lokal Search

- The Elastic Net

Heuristische Algorithmen:

Traveling Salesman ProblemLokal Search:

Erst einmal müssen für Lokal Search einige Voraussetzungen erfüllt sein, damit sie arbeitet werden können.

1.) Methode zur Generierung einer Anfangslösung u

2.) Kostenfunktion f(u)

3.) Operationsziel

4.) Nachbarschaftsfunktion N(u)

Traveling Salesman ProblemLokal Search:

Programmschema von LS:

Initialize (u);

while not terminate (u) do

u´ := generate (u);

if accept (u´) then

u := u´

Startlösung

Abbruchkriterium

Auswahlverfahrender Lösungen

- iterativer Algorithmus

- generiert Lösungen aus der Nachbarschaft von u

- Vergleich dieser mit der aktuellen Lösung u´

Traveling Salesman ProblemLokal Search:

Es gibt einzelne Untertypen von Lokal Search, welche sichvor allem durch das Auswahlverfahren der Lösungen unter-scheiden. Das sind:

- Ramdom Walk

- Simple Descent (Hill Climbing)

- Steepest Descent

- Simulated Annealing

- Tabu Search

Traveling Salesman ProblemLokal Search:

- Simple Descent (Hill Climbing):

- klassisches Verfahren

- Vergleichslösung zufällig aus Nachbarschaft

- Lösung wird übernommen, wenn f(u´) < f(u)

- dann u´ := u

Traveling Salesman ProblemLokal Search:

- Simulated Annealing:

- Erweiterung von Simple Descent

- Akzeptanzniveau gesenkt

- auch u´ mit f(u´) > f(u) können bei hinreichend kleinem | f(u´) - f(u) | zu u gesetzt werden

- jetzt Ermittlung und Vergleich mehrerer Minima möglich

Traveling Salesman ProblemThe Elastic Net:

- interativer Algorithmus

- Funktionsweise:

- Ein Kreis bestehend aus vielen Punkten wird über die Karte mit den Städten gelegt.

- Jeder Punkt wird der Reihe nach durch zwei Kräfte beeinflußt

- Die erste bewegt ihn zur nächstgelegenen Stadt - Die zweite zieht ihn zu seinen jeweiligen Nachbarn.

http://nuweb.jinr.dubna.su/~filipova/tsp.htmlO Elastic Net

Routenplanung mit ArcInfo

Voraussetzungen sind gegeben:

Ist Routenplanung mit ArcInfo möglich?

- Features entsprechen Kantenkosten

- Knoten, Kanten und Features ergeben Netzwerke (=>Adjazenzliste)

Für uns wichtige Prozeduren:

- Bestimmung des kürzesten Weges zwischen zwei Punkten

- Ausschließen bestimmter Kanten möglich

- Route durch mehrere Punkte bedingt möglich

BewertungWie könnte Routenplanung in Zukunft aussehen?

- Globale Route mittels TSP-Algorithmen

- Lokal zwischen zwei benachbarten Punkten mit Algorithmus von Dijkstra

- Ermittlung der Kantenkosten im Vorfeld mit einer anwenderspezifischen Formel

Kantenkosten = α * Distanz + β * Steigung + γ * Panorama +...

Für Fahrradbote: α >> β >> γFür Oma (zum Einkauf): β > α >> γFür Tourist: γ >> β >= α

Route zur GIS-TourHinfahrt 14 km:

Loser-Route 11 km:

Winner-Route 16 km:

Kaffee-Route 21 km:

Heavy-Route 29 km:

The End ?

Recommended