Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.
-
Upload
jeremy-simpson -
Category
Documents
-
view
219 -
download
0
Transcript of Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.
![Page 1: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/1.jpg)
Management Science 461
Lecture 2b – Shortest Paths
September 16, 2008
![Page 2: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/2.jpg)
2
Graph Theory
Branch of mathematics “Graph” has a very specific definition:
Collection of objectsCollection of relationships between objects
Both collections can have associated data (costs, weights)
![Page 3: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/3.jpg)
3
Physical Abstraction
Euler and the Königsberg Bridges - 1736
![Page 4: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/4.jpg)
4
Shortest Path Problems
Find the shortest (distance, time, cost) path between two nodes (e.g. 15)
1
2
34
58
2
5
4
3
5
9
Node = Vertex
Arc = Edge = Link
Route = Path
Tour = Circuit = Cycle
![Page 5: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/5.jpg)
5
Algebraic formulation
otherwise0
selected is to node connecting edge theif1 jixij
1
2
34
58
2
5
4
3
5
9452543
344224
23321312
954
433
5528
minimize
xxx
xxx
xxxx
![Page 6: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/6.jpg)
6
Flow and Integrality Constraints
subject to x12 + x13 = 1 (node 1)x12 + x32 + x42 = x23 + x24 + x25 (node 2)x13 + x23 + x43 = x32 + x34 (node 3)x34 + x24 = x43 + x42 + x45 (node 4)x25 + x45 = 1 (node 5)xij = 0 or 1 for all i, j
1
2
34
5
![Page 7: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/7.jpg)
7
Rearranging, we get…
subject to - x12 - x13 = -1 (node 1)x12 + x32 + x42 - x23 - x24 - x25 = 0 (node 2)x13 + x23 + x43 - x32 - x34 = 0 (node 3)x34 + x24 - x43 - x42 - x45 = 0 (node 4)x25 + x45 = 1 (node 5)xij = 0 or 1 for all i, j
1
2
34
5
Flow in = flow out flow in – flow out = 0
Do these -1, 0, 1 values look familiar?
![Page 8: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/8.jpg)
8
Shortest Path Problems
Solve using Excel’s Solver
However, a network with several hundred nodes would be out of reach, even for Premium Solver
e.g. Edmonton
Efficient algorithms need to be used – like Dijkstra’s algorithm
![Page 9: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/9.jpg)
9
Dijkstra’s algorithm
“Label-setting” algorithmAt each node, keep track of minimum
distance from origin to the node, and how we got there
Very fast – polynomial time algorithmTime to solve increases polynomially with
problem size (not exponential)
![Page 10: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/10.jpg)
10
Dijkstra’s Algorithm
8
2
5
4
3
5
9
1
2
34
5
![Page 11: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/11.jpg)
11
Step 0 – Place Labels
8
2
5
4
3
5
9
1
2
34
5Dist: 0Pred: 1
Dist: Pred: 2
Dist: Pred: 5
Dist: Pred: 4
Dist: Pred: 3
![Page 12: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/12.jpg)
12
Step 1 – Choose Minimum Label
8
2
5
4
3
5
9
1
2
34
5Dist: 0Pred: 1
Dist: Pred: 2
Dist: Pred: 5
Dist: Pred: 4
Dist: Pred: 3
![Page 13: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/13.jpg)
13
Step 2 – Update Adjacent Labels
8
2
5
4
3
5
9
1
2
34
5Dist: 0Pred: 1
Dist: 8Pred: 1
Dist: Pred: 5
Dist: Pred: 4
Dist: 2Pred: 1
![Page 14: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/14.jpg)
14
Step 2b – Mark Node As Optimal
8
2
5
4
3
5
9
1
2
34
5Dist: 0Pred: 1
Dist: 8Pred: 1
Dist: Pred: 5
Dist: Pred: 4
Dist: 2Pred: 1
![Page 15: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/15.jpg)
15
Step 3 – Choose Next Min Dist
8
2
5
4
3
5
9
1
2
34
5Dist: 0Pred: 1
Dist: 8Pred: 1
Dist: Pred: 5
Dist: Pred: 4
Dist: 2Pred: 1
![Page 16: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/16.jpg)
16
Step 4 – Update Adjacent Labels
8
2
5
4
3
5
9
1
2
34
5Dist: 0Pred: 1
Dist: 7Pred: 3
Dist: Pred: 5
Dist: 6Pred: 3
Dist: 2Pred: 1
![Page 17: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/17.jpg)
17
Step 4b – Mark Node As Optimal
8
2
5
4
3
5
9
1
2
34
5Dist: 0Pred: 1
Dist: 7Pred: 3
Dist: Pred: 5
Dist: 6Pred: 3
Dist: 2Pred: 1
![Page 18: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/18.jpg)
18
Step 5 – Choose Next Min Dist
8
2
5
4
3
5
9
1
2
34
5Dist: 0Pred: 1
Dist: 7Pred: 3
Dist: Pred: 5
Dist: 6Pred: 3
Dist: 2Pred: 1
![Page 19: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/19.jpg)
19
Step 6 – Update Adjacent Labels
8
2
5
4
3
5
9
1
2
34
5Dist: 0Pred: 1
Dist: 7Pred: 3
Dist: 15Pred: 4
Dist: 6Pred: 3
Dist: 2Pred: 1
![Page 20: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/20.jpg)
20
Step 6b – Mark Node As Optimal
8
2
5
4
3
5
9
1
2
34
5Dist: 0Pred: 1
Dist: 7Pred: 3
Dist: 15Pred: 5
Dist: 6Pred: 3
Dist: 2Pred: 1
![Page 21: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/21.jpg)
21
Step 7 – Choose Next Min Dist
8
2
5
4
3
5
9
1
2
34
5Dist: 0Pred: 1
Dist: 7Pred: 3
Dist: 15Pred: 5
Dist: 6Pred: 3
Dist: 2Pred: 1
![Page 22: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/22.jpg)
22
Step 8 – Update Adjacent Labels
8
2
5
4
3
5
9
1
2
34
5Dist: 0Pred: 1
Dist: 7Pred: 3
Dist: 12Pred: 2
Dist: 6Pred: 3
Dist: 2Pred: 1
![Page 23: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/23.jpg)
23
Step 8b – Mark Node As Optimal
8
2
5
4
3
5
9
1
2
34
5Dist: 0Pred: 1
Dist: 7Pred: 3
Dist: 12Pred: 2
Dist: 6Pred: 3
Dist: 2Pred: 1
![Page 24: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/24.jpg)
24
Step 9 – Choose Next Min Dist
8
2
5
4
3
5
9
1
2
34
5Dist: 0Pred: 1
Dist: 7Pred: 3
Dist: 12Pred: 2
Dist: 6Pred: 3
Dist: 2Pred: 1
![Page 25: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/25.jpg)
25
Step 10 – Update Adjacent Labels
8
2
5
4
3
5
9
1
2
34
5Dist: 0Pred: 1
Dist: 7Pred: 3
Dist: 12Pred: 2
Dist: 6Pred: 3
Dist: 2Pred: 1
![Page 26: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/26.jpg)
26
Step 10b – Mark Node As Optimal
8
2
5
4
3
5
9
1
2
34
5Dist: 0Pred: 1
Dist: 7Pred: 3
Dist: 12Pred: 2
Dist: 6Pred: 3
Dist: 2Pred: 1
![Page 27: Management Science 461 Lecture 2b – Shortest Paths September 16, 2008.](https://reader036.fdocuments.net/reader036/viewer/2022081515/56649cea5503460f949b5c82/html5/thumbnails/27.jpg)
27
Final Solution – Min Dist Tree
8
2
5
4
3
5
9
1
2
34
5Dist: 0Pred: 1
Dist: 7Pred: 3
Dist: 12Pred: 2
Dist: 6Pred: 3
Dist: 2Pred: 1