Upload
landebert-bobb
View
104
Download
0
Embed Size (px)
Citation preview
Gru
ndpr
akti
kum
Gru
ndpr
akti
kum
Technische Universität Dresden
1
Grundpraktikum WS 04/05
Weight-Constrained Shortes Path :
Teil 1 : Preprocessing
Praktikanten : Hao Li & Tingting Wang
Betreuer : Dr. Gleb Belov
Gru
ndpr
akti
kum
Gru
ndpr
akti
kum
Technische Universität Dresden
2
Überblick
• Problemstellung
• Preprocessing Algorithmus
• Ergebnis
Gru
ndpr
akti
kum
Gru
ndpr
akti
kum
Technische Universität Dresden
3
MotivationMotivation
Problem der kürzesten Wege
Stadt 1Stadt 3
Stadt 2
25€ 30€
70€
Problem der kürzesten Wege unter Ressourcenrestiktion ( RCSPP)
2h 3 h
4 h
Anzahl der Ressourcenarten = 1
Weight Constained Shortest Path Problem
Fahrtzeit <=4
Gru
ndpr
akti
kum
Gru
ndpr
akti
kum
Technische Universität Dresden
4
Teil I: ProblemstellungTeil I: ProblemstellungAllgemeine Beschreibung des WCSPPGegeben: • Graph G = G (V, A) gerichtet , schleifefrei
• cij : Kosten auf dem Bogen (i,j)• wij : Ressourcenverbrauch auf dem Bogen (i,j) • W : maximale verfügbare Ressourcenmengen
Gesucht: einen zulässigen Weg P = (i0, i1, ... , ip )
d.h. den kürzesten Weg bezüglich der Kosten, auf
dem maximal W Einheiten der Ressourcen
konsumiert werden
Gru
ndpr
akti
kum
Gru
ndpr
akti
kum
Technische Universität Dresden
5
Teil I: ProblemstellungTeil I: Problemstellung
WCSPP ( in Standform) :
min!1
1
p
kii kk
c
p
kii WwPwkk
11
)(bei
ijij wc ,
Gru
ndpr
akti
kum
Gru
ndpr
akti
kum
Technische Universität Dresden
6
Komplette Preprocessing Methode zur Graphenreduzierung!
Teil II: Preprocessing Algorithmus
Gru
ndpr
akti
kum
Gru
ndpr
akti
kum
Technische Universität Dresden
7
Teil II: Preprocessing AlgorithmusAblauf des Algorithmus
• Schritt 0: Bestimmung von oberer Kostenschranke U; und setze die untere Schranke L=0 ein.
• Schritt 1: Finde kürzesten Weg bezüglich Kosten. (Algorithmus von Dijkstra)
• Schritt 2: Finde kürzesten Weg bezüglich Ressourcenverbrauch.
• Schritt 3: Graphenreduzierung
Gru
ndpr
akti
kum
Gru
ndpr
akti
kum
Technische Universität Dresden
8
Ablauf des Algorithmus anhand
eines Beispiel
Teil II: Preprocessing Algorithmus
Gru
ndpr
akti
kum
Gru
ndpr
akti
kum
Technische Universität Dresden
9
(2 , 5)
(1, 3)
(4 , 3)
(2 , 4)(3, 3)
(2 , 2)
(4 , 2)
(3 , 4)
V1
V2
V3
V4
V5
V6
Kosten Ressourcen
Beispiel : Graph mit 6 Knoten und W = 8
Gru
ndpr
akti
kum
Gru
ndpr
akti
kum
Technische Universität Dresden
10
• Bestimmung der oberen und untere Schranke für die Kosten • U0 = max Ca * ( V -1) +1 = 4 * (5 -1) +1 = 17• Wir setzen U = U0 = 17 L = 0
4
4
Schritt 0 :
Gru
ndpr
akti
kum
Gru
ndpr
akti
kum
Technische Universität Dresden
11
• Finde kürzeste Wege von V1 nach allen Knoten ohne Berücksichtigung der Ressourcenrestriktion mittels Algorithmus von Dijkstra • Bezeichnung :
)(: csi
ci Qc
csiQ
Summe der Kosten auf dem Weg
Schritt 1 :
csiQ
z.B. 3)(: 133 cc Qc
Gru
ndpr
akti
kum
Gru
ndpr
akti
kum
Technische Universität Dresden
12
Knoten Vi (S=V1 )
V2 1
V3 3
V4 3
V5 5
V6 7
• Der Algorithmus von Dijkstra liefert uns :
Schritt 1 (Forts.) :
ciQ1
421
321
531
6421
21
ci
Gru
ndpr
akti
kum
Gru
ndpr
akti
kum
Technische Universität Dresden
13
* hier :
• Überprüfe, ob optimal ist.
Schritt 1 (Forts.) :cQ16
?)( 16 WQw c
ja
Nein *
Optimale Lösung gefunden !!
weiter suchen WQw c 810)( 16
Gru
ndpr
akti
kum
Gru
ndpr
akti
kum
Technische Universität Dresden
14
• Finde kürzeste Wege von allen Knoten nach Endknoten t (=V6) ohne Beachtung der Ressourcenrestriktion ( Dijkstra)
citQ
Schritt 1 (Forts.):
Knoten Vi (t=V6)
V1 7V2 6V3 5V4 4V5 3
citQ
ci
6421
642
653
64
65
Gru
ndpr
akti
kum
Gru
ndpr
akti
kum
Technische Universität Dresden
15
• Finde kürzeste Wege von V1 nach allen Knoten nun bezüglich Ressourcenverbrauch (ebenfalls Dijkstra )• Bezeichnung :
)(: wsi
wi Qw
wsiQ
Gesamte Menge der Ressourcenverbrauche auf dem Weg
Schritt 2 :
wsiQ
• Hier gilt 8)( 16 wQw
Kostenoberschrank zu verbessern
15)( 16 wQcU
Gru
ndpr
akti
kum
Gru
ndpr
akti
kum
Technische Universität Dresden
16
• Untersuche die Optimalität des (zulässigen) Weges• Finde kürzeste Wege von allen Knoten nach V6 bezüglich Ressourcenverbrauch (ebenfalls Dijkstra )
wQ16
Schritt 2 (Forts.) :
witQ
Gru
ndpr
akti
kum
Gru
ndpr
akti
kum
Technische Universität Dresden
17
• Nachprüfen , ob wenn ja , den Knoten Vi und alle mit dem inzidenten Bögen zu entfernen !!
Schritt 3 : Reduzieren des Graphen
?Wwi
wi tsVi ,\
Ressourcen
V2 3 7 10V3 3 5 8V4 6 2 8V5 5 4 9
wi w
i
Gru
ndpr
akti
kum
Gru
ndpr
akti
kum
Technische Universität Dresden
18
(2 , 5)
(1, 3)
(4 , 3)
(2 , 4)(3, 3)
(2 , 2)
(4 , 2)
(3 , 4)
V1
V2
V3
V4
V5
V6
Schritt 3 (Forts.) :
Optimale Lösung gefunden !!!
Gru
ndpr
akti
kum
Gru
ndpr
akti
kum
Technische Universität Dresden
19
Teil III:Teil III: Preprocessing ErgebnisPreprocessing Ergebnis
Ergebnis für „Road_graph_small.txt“ :
Gru
ndpr
akti
kum
Gru
ndpr
akti
kum
Technische Universität Dresden
20
Teil III:Teil III: Preprocessing ErgebnisPreprocessing Ergebnis
Ergebnis für die ersten 10 Knoten
Gru
ndpr
akti
kum
Gru
ndpr
akti
kum
Technische Universität Dresden
21
Teil III:Teil III: Preprocessing ErgebnisPreprocessing Ergebnis
Ergebnis für das gesamte Testdatei
Gru
ndpr
akti
kum
Gru
ndpr
akti
kum
Technische Universität Dresden
22
Ende !!!
Danke für Ihre Aufmerksamkeit !
*^_^*