ENGM 792 Network Flow Programming
description
Transcript of ENGM 792 Network Flow Programming
ENGM 792Network Flow Programming
Shortest Path Solutions
Shortest Path (Cost)
[External Flow]
[1] [-1]
2
1
4
5
3
6
7
9
8 10
(40)
(8)
(10)
(4)
(12)
(2)
(2)
(1)
(2)
(6)
(10)
(4)
(4)
(3)
(6)
(0) (20)
(10)
(20)
(2)
(1)
Dijkstra’s Algorithm
1. Initial : let S={s}, s=02. Find an arc k(i,j) that passes from an unsolved
node to a solved node such that
3. Add node j and arc k(i,j) to tree4. Add j to solved set S. Let j=I + ck
5. Go to step 2, repeat until S = set of all nodes
]',',)','(':min[),( '' SjSiAjikcjik ki
Shortest Path (Cost)
[s]
[0]
2
1
4
5
3
6
7
9
8 10
(40)
(8)
(10)
(4)
(12)
(2)
(2)
(1)
(2)
(6)
(10)
(4)
(4)
(3)
(6)
(0) (20)
(10)
(20)
(2)
(1)
[8]
solved closest length to node length ofIter nodes unsolved unsolved added shortest path 1 1 3 8 3 8
Shortest Path (Cost)
[s]
[0]
2
1
4
5
3
6
7
9
8 10
(40)
(8)
(10)
(4)
(12)
(2)
(2)
(1)
(2)
(6)
(10)
(4)
(4)
(3)
(6)
(0) (20)
(10)
(20)
(2)
(1)
[8]
Shortest Path (Cost)
[s]
[0]
2
1
4
5
3
6
7
9
8 10
(40)
(8)
(10)
(4)
(12)
(2)
(2)
(1)
(2)
(6)
(10)
(4)
(4)
(3)
(6)
(0) (20)
(10)
(20)
(2)
(1)
[8]
[10]
[10]
Shortest Path (Cost)
[s]
[0]
2
1
4
5
3
6
7
9
8 10
(40)
(8)
(10)
(4)
(12)
(2)
(2)
(1)
(2)
(6)
(10)
(4)
(4)
(3)
(6)
(0) (20)
(10)
(20)
(2)
(1)
[8]
[10]
solved closest length to node length ofIter nodes unsolved unsolved added shortest path 1 1 3 8 3 8
2 1 4 10 3 6 10 4 10
Shortest Path (Cost)
[s]
[0]
2
1
4
5
3
6
7
9
8 10
(40)
(8)
(10)
(4)
(12)
(2)
(2)
(1)
(2)
(6)
(10)
(4)
(4)
(3)
(6)
(0) (20)
(10)
(20)
(2)
(1)
[8]
[10]
[10]
solved closest length to node length ofIter nodes unsolved unsolved added shortest path 1 1 3 8 3 8
2 1 4 10 3 6 10 4 10
3 1 2 40 3 6 10 6 10
4 6 11
Shortest Path (Cost)
[s]
[0]
2
1
4
5
3
6
7
9
8 10
(40)
(8)
(10)
(4)
(12)
(2)
(2)
(1)
(2)
(6)
(10)
(4)
(4)
(3)
(6)
(0) (20)
(10)
(20)
(2)
(1)
[8]
[10]
[10]
[12]
Shortest Path (Cost)
[s]
[0]
2
1
4
5
3
6
7
9
8 10(8)
(10)
(4)
(2)
(6)
(10)
(4)
(4)
(3)
(0) (20)
(10)
(20)
(2)
(1)
[8]
[10]
[10]
[12]
solved closest length to node length ofIter nodes unsolved unsolved added shortest path 1 1 3 8 3 8
2 1 4 10 3 6 10 4 10
3 1 2 40 3 6 10 6 10
4 6 11
4 1 2 40 3 2 12 2 12 6 9 13
Shortest Path (Cost)
[s]
[0]
2
1
4
5
3
6
7
9
8 10(8)
(10)
(4)
(2)
(6)
(10)
(4)
(4)
(3)
(0) (20)
(10)
(20)
(2)
(1)
[8]
[10]
[10]
[12]
Shortest Path (Cost)
[s]
[0]
2
1
4
5
3
6
7
9
8 10(8)
(10)
(4)
(2)
(6)
(10)
(4)
(4)
(3)
(0) (20)
(10)
(20)
(2)
(1)
[8]
[10]
[10]
[12]
[13]
solved closest length to node length ofIter nodes unsolved unsolved added shortest path 1 1 3 8 3 8
2 1 4 10 3 6 10 4 10
3 1 2 40 3 6 10 6 10
4 6 11
4 1 2 40 3 2 12 2 12 6 9 13
5 2 5 18 6 9 13 9 13
Shortest Path (Cost)
[s]
[0]
2
1
4
5
3
6
7
9
8 10(8)
(10)
(4)
(2)
(6)
(10)
(4)
(4)
(3)
(0) (20)
(10)
(20)
(2)
(1)
[8]
[10]
[10]
[12]
[13]
Shortest Path (Cost)
[s]
[0]
2
1
4
5
3
6
7
9
8 10(8)
(10)
(4)
(2)
(6)
(10)
(4)
(4)
(3)
(0) (20)
(10)
(20)
(2)
(1)
[8]
[10]
[10]
[12]
[13]
[14]
Shortest Path (Cost)
[s]
[0]
2
1
4
5
3
6
7
9
8 10(8)
(10)
(4)
(2)
(6)
(10)
(4)
(4)
(3)
(0)
(20)
(2)
(1)
[8]
[10]
[10]
[12]
[13]
[14]
solved closest length to node length ofIter nodes unsolved unsolved added shortest path 1 1 3 8 3 8
2 1 4 10 3 6 10 4 10
3 1 2 40 3 6 10 6 10
4 6 11
4 1 2 40 3 2 12 2 12 6 9 13
5 2 5 18 6 9 13 9 13
6 2 5 18 6 8 14 6 14
9 10 15
Shortest Path (Cost)
[s]
[0]
2
1
4
5
3
6
7
9
8 10(8)
(10)
(4)
(2)
(6)
(10)
(4)
(4)
(3)
(0)
(20)
(2)
(1)
[8]
[10]
[10]
[12]
[13]
[14]
Shortest Path (Cost)
[s]
[0]
2
1
4
5
3
6
7
9
8 10(8)
(10)
(4)
(2)
(6)
(10)
(4)
(4)
(3)
(0)
(20)
(2)
(1)
[8]
[10]
[10]
[12]
[13]
[14]
[14]
Shortest Path (Cost)
[s]
[0]
2
1
4
5
3
6
7
9
8 10(8)
(10)
(4)
(2)
(10)
(4)
(4)
(3)
(0)
(20)
(2)
(1)
[8]
[10]
[10]
[12]
[13]
[14]
[14]
solved closest length to node length ofIter nodes unsolved unsolved added shortest path 4 1 2 40
3 2 12 2 12 6 9 13
5 2 5 18 6 9 13 9 13
6 2 5 18 6 8 14 6 14
9 10 15
7 2 7 22 8 5 14 5 14 9 10 15
Shortest Path (Cost)
[s]
[0]
2
1
4
5
3
6
7
9
8 10(8)
(10)
(4)
(2)
(10)
(4)
(4)
(3)
(0)
(20)
(2)
(1)
[8]
[10]
[10]
[12]
[13]
[14]
[14]
Shortest Path (Cost)
[s]
[0]
2
1
4
5
3
6
7
9
8 10(8)
(10)
(4)
(2)
(10)
(4)
(4)
(3)
(0)
(20)
(2)
(1)
[8]
[10]
[10]
[12]
[13]
[14]
[14]
[15]
Shortest Path (Cost)
[s]
[0]
2
1
4
5
3
6
7
9
8 10(8)
(10)
(4)
(2)
(10)
(4)
(4)
(3)
(0)
(2)
[8]
[10]
[10]
[12]
[13]
[14]
[14]
[15]
solved closest length to node length ofIter nodes unsolved unsolved added shortest path 5 2 5 18
6 9 13 9 13
6 2 5 18 6 8 14 6 14
9 10 15
7 2 7 22 8 5 14 5 14 9 10 15
8 2 7 22 5 7 18
8 10 24 9 10 15 10 15
Shortest Path (Cost)
[s]
[0]
2
1
4
5
3
6
7
9
8 10(8)
(10)
(4)
(2)
(10)
(4)
(4)
(3)
(0)
(2)
[8]
[10]
[10]
[12]
[13]
[14]
[14]
[15]
[18]
Shortest Path (Cost)
[s]
[0]
2
1
4
5
3
6
7
9
8 10(8)
(10)
(4)
(2)
(4)
(4)
(3)
(0)
(2)
[8]
[10]
[10]
[12]
[13]
[14]
[14]
[15]
[18]
solved closest length to node length ofIter nodes unsolved unsolved added shortest path 5 2 5 18
6 9 13 9 13
6 2 5 18 6 8 14 6 14
9 10 15
7 2 7 22 8 5 14 5 14 9 10 15
8 2 7 22 5 7 18
8 10 24 9 10 15 10 15
9 2 7 22 5 7 18 7 18