Über die Berechnung der Optimalwertfunktion in zeitabhängigen Netzwerken

Ähnliche Dokumente
Route Planning in Road Networks

Untersuchung von Beschleunigungsverfahren für den Dijkstra-Algorithmus im Zusammenhang mit multimodalem Routing

Hamiltonsche Graphen

Fortgeschrittene Routenplanung. Transportnetzen. Advanced Route Planning in Transportation Networks

Zählen perfekter Matchings in planaren Graphen

Berechnung von Abständen

Algorithmische Graphentheorie

Graphentheorie. Kürzeste Wege. Kürzeste Wege. Kürzeste Wege. Rainer Schrader. 25. Oktober 2007

8.4 Digraphen mit negativen Kantengewichten Grundsätzliches Betrachte Startknoten s und einen Kreis C mit Gesamtlänge < 0.

2. November Gradfolgen Zusammenhang Kürzeste Wege. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 37

Inhalt. 1. Flußprobleme. 2. Matching. 3. Lineares Programmieren. 4. Ganzzahliges Programmieren. 5. NP-Vollständigkeit. 6. Approximationsalgorithmen

Relative Kontrollierbarkeit und Invarianz-Entropie

Dynamische Programmierung. Problemlösungsstrategie der Informatik

Theoretische Grundlagen der Informatik

Minimal spannende Bäume

Approximationsalgorithmen

Algorithmik WS 07/ Vorlesung, Andreas Jakoby Universität zu Lübeck. 10 Matching-Probleme

Maximale s t-flüsse in Planaren Graphen

Algorithmen für Routenplanung Vorlesung 12

Rundreiseproblem und Stabilität von Approximationsalg.

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Netzwerkverbindungsspiele

Klausur zum Modul Einführung in die Diskrete Mathematik

KAPITEL 4 FLÜSSE IN NETZWERKEN

Literatur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS)

Nicht-kooperative Spiele

Theoretische Informatik. Exkurs: Komplexität von Optimierungsproblemen. Optimierungsprobleme. Optimierungsprobleme. Exkurs Optimierungsprobleme

Vorlesung 2 KÜRZESTE WEGE

Algorithmen für Routenplanung 8. Sitzung, Sommersemester 2012 Thomas Pajor 21. Mai 2012

Algorithmen für Routenplanung 7. Sitzung, Sommersemester 2010 Thomas Pajor 28. Mai 2010

Algorithmen und Datenstrukturen 2

Isomorphie von Bäumen

KAPITEL 10 DIE INNERE-PUNKTE-METHODE

1 Die direkte Methode der Variationsrechnung

Das Steinerbaumproblem

Algorithmen für Routenplanung 12. Sitzung, Sommersemester 2011 Reinhard Bauer, Thomas Pajor 6. Juni 2011

Hawkes Prozesse Grundlagen

Kapitel 5 KONVERGENZ

Lernmodul 7 Algorithmus von Dijkstra

Algorithmen für Routenplanung 2. Sitzung, Sommersemester 2010 Thomas Pajor 26. April 2010

6. Einführung 43. gilt. Dann soll also A B x B = b eindeutig lösbar sein, also A B vollen Rang haben, d. h. invertierbar (regulär) sein.

Die komplexe Halbebene faktorisiert nach einer Fuchsschen Gruppe

Richtig oder falsch? Richtig oder falsch? Richtig oder falsch? Mit dynamischer Programmierung ist das Knapsack- Problem in Polynomialzeit lösbar.

Orthogonalpolynome Einführung, Eigenschaften und Anwendungen

Algorithmen für Routenplanung 12. Sitzung, Sommersemester 2010 Thomas Pajor 28. Juni 2010

Map Matching. Problem: GPS-Punkte der Trajektorie weisen einen relativ großen Abstand zueinander auf.

Vorlesung Datenstrukturen

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Diskrete Strukturen Kapitel 4: Graphentheorie (Bäume)

4. Kreis- und Wegeprobleme Abstände in Graphen

Programmierkurs Python II

Perlen der Informatik I Wintersemester 2012 Aufgabenblatt 7

1 Pfade in azyklischen Graphen

Optimaler Transport. Marzena Franek. Skiseminar Februar Institut für Numerische und Angewandte Mathematik

Definition 3.1. Sei A X. Unter einer offenen Überdeckung von A versteht man eine Familie (U i ) i I offener Mengen U i X mit U i

Kap. 3: Exakte Lösungsverfahren für NPschwierige. Optimierungsprobleme VO Algorithm Engineering

Relationen und DAGs, starker Zusammenhang

Folgen und Reihen. Thomas Blasi

2. Das single-source-shortest-path-problem

Algorithmische Methoden für schwere Optimierungsprobleme

1.Aufgabe: Minimal aufspannender Baum

Kap. 6.6: Kürzeste Wege

Algorithmen zur Visualisierung von Graphen

Informatik II: Algorithmen und Datenstrukturen SS 2013

Gewöhnliche Differentialgleichungen Woche 6. Existenz nach Picard-Lindelöf

Kapitel 9: Lineare Programmierung Gliederung

Kap. 6.6: Kürzeste Wege

Theoretische Grundlagen der Informatik

Algorithmen zur Visualisierung von Graphen Lagenlayouts

Algorithmische Methoden zur Netzwerkanalyse

Bipartite Graphen. Beispiele

11. Übung zu Algorithmen I 6. Juli 2016

Das Trust-Region-Verfahren

Das Linear Ordering Problem Exakte Lösungsverfahren. für NP-schwierige. VO Algorithm Engineering

2. Optimierungsprobleme 6

Wintersemester 2004/ Februar 2005

Stochastische dynamische Optimierung

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 10, Henning Meyerhenke

Cauchy-Folgen und Kompaktheit. 1 Cauchy-Folgen und Beschränktheit

9 Höhere partielle Ableitungen und die Taylorformel

Kürzeste-Wege-Algorithmen und Datenstrukturen

Universität Stuttgart Fakultät Mathematik und Physik Institut für Analysis, Dynamik und Modellierung. Lösungen zur Probeklausur 2.

Mathematische Modelle in den Naturwissenschaften Proseminar

Theoretische Informatik 1

Nichtlineare Gleichungssysteme

Höhere Mathematik III

Algorithmen & Komplexität

Lösungen der Übungsaufgaben von Kapitel 3

Algorithmen für Routenplanung Vorlesung 11

Operations Research. Flüsse in Netzwerken. Flüsse in Netzwerken. Unimodularität. Rainer Schrader. 2. Juli Gliederung.

Aufgaben zur Klausurvorbereitung

ADS: Algorithmen und Datenstrukturen 2

Minimum Cost Flow Grundlagen und erste Algorithmen. Philip Ralph Weber

ADS: Algorithmen und Datenstrukturen 2

Algorithmen für Geographische Informationssysteme

Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen

Stetige Funktionen. Definition. Seien (X, d) und (Y, D) metrische Räume und f : X Y eine Abbildung. i) f heißt stetig in x 0 (x 0 D(f)), wenn

Diskontierte Markovsche Entscheidungsprozesse

Transkript:

Über die Berechnung der Optimalwertfunktion in zeitabhängigen Netzwerken Sebastian Kluge Elgersburg, 3.3.2010

Kürzeste Wege in Netzwerken H 288 km 426 km B K 194 km F 609 km 225 km N 439 km 204 km S 166 km 232 km Abbildung: Wo verläuft der kürzeste Weg von Stuttgart nach Berlin? M

Algorithmische Lösungsansätze In stark zusammenhängenden Graphen ohne negative Kreise existieren optimale Wege Lösungsverfahren beruhen auf dem Prinzip der dynamischen Programmierung: Bellman-Ford, O( E V ) Dijkstra, O( V log V + E ) Realbeispiele sind häufig sehr groß (Straßennetz Berlin): V = 2599953 E = 3899807 Beschleunigungstechniken: Heuristiken A*-Algorithmus Hierarchische Strategien, Kontraktion, Landmarken... Beschleunigung des Algorithmus von Dijkstra um Faktor 100...10000 ([Bast et al., 2007], [Bauer et al., 2008])

Zeitabhängige Netzwerke Zeitabhängige Netzwerke: Straßennetzwerk: Reisezeiten und Kraftstoffverbräuche unterliegen tageszeitbedingten Schwankungen. Internet: Kosten eines Weges sind abhängig vom aktuell vorhandenen Datenübertragungsbedarf. Bewegliche Multiagentensysteme: Energieaufwand der Kommunikation über Funk ist entfernungsabhängig und damit zeitabhängig. Hybride Systemstruktur

Optimale Wege in zeitabhängigen Netzwerken R R τ KH (t) τ BH (t) R τ FK (t) R τ NH (t) τ NF (t) R τ NB (t) τ SF (t) R τ MN (t) R τ MS (t) Abbildung: Wo verläuft der schnellste Weg von Stuttgart nach Berlin?

Überblick 1 Einführung 2 Zeitabhängige Netzwerke und optimale Wege 3 Lösungsverfahren

Zeitabhängige Netzwerke Definition Ein zeitabhängiges Netzwerk ist ein 5-Tupel G = (V, E,τ;β,δ), wobei V eine Knotenmenge, E eine Menge gerichteter Kanten, τ : E R R + 0 eine Reisezeitfunktion, β : E R R eine Reisekostenfunktion und δ : V R R + 0 R eine Wartekostenfunktion bezeichnen. Wege in zeitabhängigen Netzwerken sind Folgen von Knoten-Zeit-Paaren (v, t) V R. Sie werden durch die Auszeichnung eines Startzustandes (v 0, t 0 ) V R und einer Folge von Wartezeit-Kanten-Paaren ( t k, e k ) R + 0 E mit α(e k+1 ) = ω(e k ), k = 1, 2,..., eindeutig festgelegt.

Zustands- und Steuerungsbeschränkungen Assoziiere zu jedem Knoten v V eine Menge T(v) zulässiger Ankunftszeitpunkte. Assoziiere zu jedem zulässigen Knoten-Zeit-Paar (v, t) eine Menge T(v, t) zulässiger Wartezeiten. Definition Der Zustandsraum des zeitabhängigen Netzwerks ist gegeben durch X = ( ) v V {v} T(v). Eine Steuerung u = ( t, e) heißt zulässig in (v, t) X, falls u T(v, t) E + (v), ϕ((v, t), u) = (ω(e), t + t + τ(e, t + t)) X. U(v, t) bezeichne die Menge der in (v, t) X zulässigen Steuerfolgen.

Ein Beispiel e 1 { (2 t)/2, t < 2 τ(e 1, t) = 0, t 2, e 2 { v 0 v 2(2 t), t < 2 τ(e 2, t) = 0, t 2, Abbildung: Zeitabh. Netzwerk mit unendlichem schnellstem Weg Betrachte das Netzwerk aus obiger Abbildung mit β = τ, δ = t. Der Startzustand sei (v 0, 0), der Zielknoten v. Warten in v 0 ist erlaubt: Es ist optimal die Steuerung ( t, e) = (2, e 2 ) zu wählen. Warten in v 0 ist verboten: Durchläuft man k-mal die Kante e 1, dann die Kante e 2, so ergibt sich der Weg ((v 0, 0),(v 0, 1),...,(v, 2 + 2 1 k )).

Optimalwertfunktion Es bezeichne ( (v k, t k ) ) k=0,1,... den von u = ( ( t k, e k ) ) k=1,2,..., u U(v 0, t 0 ), induzierten Weg. Die verursachten Kosten sind: B ( (v 0, t 0 ), u ) = δ(v k 1, t k 1, t k ) + β(e k, t k 1 + t k ). Definition k=1,2,... Für einen festen Zielknoten v definieren wir die Optimalwertfunktion b : X R {± } durch b (v 0, t 0 ) = inf { B ( (v 0, t 0 ), u ) : u U(v 0, t 0 ), u <,ω(u) = v }. Eine Steuerfolge u U(v 0, t 0 ) und der von u induzierte Weg p heißen optimal bezüglich v V, falls B ( (v 0, t 0 ), u ) = b (v 0, t 0 ).

Existenzsatz (1) τ stetig, β, δ unterhalbstetig (2) T(v) abgeschlossen v V, T oberhalbstetig (3) B, B R, B > 0, so dass (v, t) X: B ( (v, t), u ) B, u U(v, t) mit u = 1, B ( (v, t), u ) B, (4) β,δ auf Kompakta beschränkt Satz u U(v, t) mit ω(u) = α(u). Seien v 0, v gegeben, und bezeichne T R (v 0 ) = {t T(v 0 ) : u U(v 0, t 0 ), u <,ω(u) = v }. Gelten (1)-(3), dann existiert für alle t 0 T R (v 0 ) ein optimaler Weg von (v 0, t 0 ) nach v. Gelten (1)-(4), dann ist die partielle Funktion t 0 b (v 0, t 0 ) unterhalbstetig auf T R (v 0 ).

Beweisskizze Beweis. Betrachte eine endliche Kantenfolge (e k ) k=1,...,n von v 0 nach v. Die Bestimmung der optimalen Wartevorschrift entlang (e k ) k=1,...,n ist ein n-stufiges Entscheidungsproblem. [Bertsekas, 2001] und [Fiacco, 1983] liefern die Existenz der optimalen Wartevorschrift und die Unterhalbstetigkeit der zugehörigen Wertfunktion. Steuerfolgen u mit u 2( V 1) + N V enthalten mindestens N Kreise. Wegen lim N 2( V 1)B + NB können nur endliche Wege optimal sein. Sind die Kostenfunktionen lokal beschränkt, dann ist die Optimalwertfunktion lokal das Minimum endlich vieler unterhalbstetiger Funktionen.

Dynamische Programmierung Proposition Unter den Voraussetzungen (1)-(3) gilt: b (v, t) = 0, b (v, t) = min u U(v,t) u=( t,e) [ b ( ϕ((v, t), u) ) ] + δ(v, t, t) + β(e, t + t), v v. ( t, e 1 ) e 1 v v w t v nw ( t, e 2 ) e 2 Abbildung: Entkopplung von Warten und Kantenwahl [Dean, 2004].

Überblick 1 Einführung 2 Zeitabhängige Netzwerke und optimale Wege 3 Lösungsverfahren

Idee Algorithmus von Dijkstra: (0) Ordne jedem Knoten den minimalen Kostenwert zu, den bisher bestimmte Wege liefern (1) Wähle einen Knoten ˆv mit minimalen Kosten (2) Berücksichtige zusätzlich alle Wege die nach einem Schritt ˆv erreichen und gehe zu (1) Die Bestimmung einer ganzen Funktion in jeder Iteration ist im zeitabhängigen Fall i.a. nicht möglich. Wähle an einem Knoten ein Zeitintervall, dessen Optimalwertfunktion bereits bestimmbar ist. Rechne rückwärts in der Zeit ( Erreichbarkeit) Auswahl eines geeigneten Knotens ˆv Auswahl eines geeigneten Zeitintervalls Î FD-Algorithmus

Auswahl des Knotens ˆv ˆb(ω(e), ) Kompaktes Zeitintervall: T(v) = [ t, t ] v V Bezeichne die berechneten Kostenwerte mit ˆb, wobei: ˆb(v, t)! = b (v w, t) = b (v, t) t ˆb(e, ) ˆt + (ω(e)) τ, β t t ˆb(e, t)! = b ( α(e) nw, t ), unter der NB: E +( α(e) ) = {e} Wähle den Knoten ˆv gemäß: E arg max e E ˆt + (e), e arg min e E ˆb( e,ˆt + (e) ), (ˆv,ˆt) ( α(e ),ˆt + (e ) ). t ˆb(α(e), ) t ˆt + (e) t t t ˆt + (α(e)) t t

Auswahl des Zeitintervalls Î Untere Schranke T der Reisezeit Untere Schranke B der Reisekosten Wähle das Zeitintervall Î (ˆt,ˆt] [ t, t ] gemäß: { ˆt sup t [ t,ˆt] : min ˆb(e, t) > e E + (ˆv) ˆb(e 1, t) ˆv T, B ˆb(e 2, t) v ˆb(e, θ) [ ]} min B+ min ˆb(e, θ). θ [t+t,ˆt] e E:ˆt + (e) θ v Verwende Sortierung der Kostenfunktionen {ˆb(e, t)} e E ˆt als Schnittpunkt zweier Minimumsfunktionen Stückweise linearer Fall: exakt und effizient lösbar

Iteration der Steuervorschriften und Kostenfunktionen Für t Î: Optimale Kantenvorschrift: t ê(ˆv, t) arg min e E + (ˆv) ˆb(e, t) graph( T) Optimale Wartevorschrift: ˆ t(ˆv, t) arg min t T(ˆv,t) t ˆt ˆt { δ(ˆv, t, t) + ˆb(ê(ˆv, t + t), t + t )} Parametrisches Optimierungsproblem in R Stückweise linearer Fall: Auswahl optimaler Liniensegmente Äquivalent zur Sortierung der Kantenkostenfunktionen Optimalwertfunktion: ˆb(ˆv, t) δ (ˆv, t, ˆ t(ˆv, t) ) ( +ˆb ê (ˆv, t+ ˆ t(ˆv, t) ), t+ ˆ t(ˆv, ) t) t t

Eigenschaften des FD-Algorithmus Eigenschaften des FD-Algorithmus: Das mit einem Knoten v V assoziierte Zeitintervall wird in strikt fallender Zeitreihenfolge expandiert. Jeder Kosten- und Steuerungswert wird höchstens einmal berechnet. Die berechneten Kostenwerte ˆb und die berechneten Steuervorschriften ê, ˆ t sind optimal. Ist T > 0, dann terminiert der FD-Algorithmus nach höchstens ( V 1)(1 + (t t)/t ) Iterationen. Die Berechnung optimaler Wege ist i.a. NP-schwer. Bei stückweise linearen Funktionen steckt die Komplexität in der Anzahl der Teilpunkte.

Praktisch verwendbare Berechnungsmethoden Praktische Verwendbarkeit: Rechenzeit, Speicherverbrauch Vermeide Mehrfachberechnungen Berechne nichts was nicht benötigt wird Bisherige Lösungsverfahren: Dynamischer Bellman-Ford [Orda und Rom, 1991],[Dean, 1999, Chapter 7] Mehrfachberechnungen Keine Auswahl relevanter Knoten-Zeit-Bereiche Decreasing Order of Time [Dean, 1999, Chapter 6] Nur stückweise linearer Fall Keine Auswahl relevanter Knoten-Zeit-Bereiche

FA* - Heuristische Erweiterung des FD-Algorithmus ˆb(e 1, t) ˆv ˆb(e 2, t) v v 0 T, B v ˆb(e, θ) Abbildung: Knoten- und Intervallwahl im FD-Algorithmus

FA* - Heuristische Erweiterung des FD-Algorithmus ˆb(e 1, t) π t (ˆv), π b (ˆv) ˆv ˆb(e 2, t) v v 0 ˆπ t (ˆv, v), ˆπ b (ˆv, v) v ˆb(e, θ) π t (v), π b (v) Abbildung: Knoten- und Intervallwahl im FA*-Algorithmus Verwende untere Schranken π t,π b der Reisezeit bzw. Reisekosten für die Auswahl von (ˆv,ˆt) Verwende untere Schranken ˆπ t, ˆπ b der Reisezeit bzw. Reisekosten für die Auswahl von ˆt

Eigenschaften des FA*-Algorithmus Es existiere eine Konstante t 0, so dass π t (v 2 ) π t (v 1 ) ˆπ t (v 1, v 2 ) t, v 1, v 2 V. Dann entsprechen die Eigenschaften des FA*-Algorithmus den Eigenschaften des FD-Algorithmus, bis auf: Ist t > 0, dann terminiert der FA*-Algorithmus nach höchstens v V \{v } Iterationen. { max 0, 1 + [ t ˆπt (v, v ) ] [ t + π t (v) ] } t

Literatur Fiacco, A. (1983). Introduction to Sensitivity and Stability Analysis in Nonlinear Programming. Academic Press. Orda, A. und Rom, R. (1991). Minimum weight paths in time-dependent networks. Networks, 21:295 319. Dean, B. (1999). Continuous-time dynamic shortest path algorithms. Master s thesis, MIT. Bertsekas, D. (2001). Dynamic Programming and Optimal Control, volume 2. Athena Scientific, Belmont, Massechusetts. Dean, B. (2004). Algorithms for minimum-cost paths in time-dependent networks with waiting policies. Networks, 33(1):41 46. Bast, H., Funke, S., Matijevic, D., Sanders, P., und Schultes, D. (2007). In transit to constant time shortest-path queries in road networks. In 9th Workshop on Algorithm Engineering and Experiments (ALENEX 07), pages 46 59. Bauer, R., Delling, D., Sanders, P., D., S., Schultes, D., und Wagner, D. (2008). Combining hierarchical and goal-directed speed-up techniques for dijkstra s algorithm. In Lecture Notes in Computer Science, pages 303 318. Springer Berlin / Heidelberg.