discrete math 2 shortest paths using matrix
DESCRIPTION
Discrete Math 2 Shortest Paths Using Matrix. CIS112 February 14, 2007. Overview. Previously: In weighted graph . . Shortest path from #7 to all others Search matrix method Now: Problem 8.6.2 Implement Floyd’s Algorithm. Strategy. 3 nested loops i ≔ 1 to 6 j ≔ 1 to 6 - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/1.jpg)
Discrete Math 2Discrete Math 2Shortest Paths Using MatrixShortest Paths Using Matrix
CIS112CIS112February 14, 2007February 14, 2007
![Page 2: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/2.jpg)
2007 Kutztown University 2
OverviewOverview Previously:Previously:
In weighted graph . .In weighted graph . . Shortest path from #7 to all othersShortest path from #7 to all others Search matrix methodSearch matrix method
Now:Now: Problem 8.6.2Problem 8.6.2 Implement Floyd’s AlgorithmImplement Floyd’s Algorithm
![Page 3: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/3.jpg)
2007 Kutztown University 3
StrategyStrategy 3 nested loops 3 nested loops
i i ≔≔ 1 to 6 1 to 6 j j ≔≔ 1 to 6 1 to 6 k k ≔≔ 1 to 6 1 to 6
Basic ruleBasic rule If d(j,i) + d(i,k) < d(j,k) . .If d(j,i) + d(i,k) < d(j,k) . . Then d(j,k) Then d(j,k) d(j,i) + d(i,k) d(j,i) + d(i,k)
![Page 4: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/4.jpg)
2007 Kutztown University 4
Interpretation of MatrixInterpretation of Matrix Row designates Row designates from verticesfrom vertices Column designates Column designates to verticesto vertices SuppSuppose entry [2,3] is 7ose entry [2,3] is 7
From vertex #2 to vertex #3 . .From vertex #2 to vertex #3 . . cost of travel = 7cost of travel = 7
![Page 5: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/5.jpg)
2007 Kutztown University 5
The Basic OperationThe Basic Operation
Seek – best cost route from Seek – best cost route from jj to to kk Initial entries = cost of direct route, Initial entries = cost of direct route,
i.e., cost of edge i.e., cost of edge jkjk No edge No edge cost = cost = ∞∞ Guarantees that any route found is Guarantees that any route found is
betterbetter
![Page 6: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/6.jpg)
2007 Kutztown University 6
The Basic OperationThe Basic Operation
Old cost from Old cost from jj to to kk compared to . . compared to . . Cost of 2 step hopCost of 2 step hop
jj to to ii and and then then ii to to kk
If 2 step hop has better cost . .If 2 step hop has better cost . . Then it becomes the new Then it becomes the new jj to to kk cost cost
![Page 7: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/7.jpg)
2007 Kutztown University 7
The Basic OperationThe Basic Operation
Initially old cost is edge costInitially old cost is edge cost Later . .Later . . Old cost is cost of best route found Old cost is cost of best route found
so far so far
![Page 8: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/8.jpg)
2007 Kutztown University 8
DenotationsDenotations
Outer loop – the Outer loop – the i loopi loop Middle loop – the Middle loop – the j loopj loop Inner loop – the Inner loop – the k loopk loop
![Page 9: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/9.jpg)
2007 Kutztown University 9
OperationOperation Loops work in tandemLoops work in tandem 2 outer loops {2 outer loops {ii & & jj loops} loops} 2 inner loops {2 inner loops {jj & & kk loops} loops} Proceed Proceed
» row by row &row by row &
» column by columncolumn by column
Update travel cost . . Update travel cost . . from vertex from vertex jj to vertex to vertex kk
![Page 10: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/10.jpg)
2007 Kutztown University 10
Matrix for Weighted GraphMatrix for Weighted Graph
VtxVtx AA BB CC DD EE ZZ
AA ∞∞ 22 33 ∞∞ ∞∞ ∞∞
BB 22 ∞∞ ∞∞ 55 22 ∞∞
CC 33 ∞∞ ∞∞ ∞∞ 55 ∞∞
DD ∞∞ 55 ∞∞ ∞∞ 11 22
EE ∞∞ 22 55 11 ∞∞ 44
ZZ ∞∞ ∞∞ ∞∞ 22 44 ∞∞
![Page 11: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/11.jpg)
2007 Kutztown University 11
First Outer LoopFirst Outer Loop
i = 1i = 1 j = j = ≔≔ 1 to 6 1 to 6 k k ≔≔ 1 to 6 1 to 6
![Page 12: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/12.jpg)
2007 Kutztown University 12
First Inner LoopFirst Inner Loop
i = 1i = 1 j = 1j = 1 k k ≔≔ 1 to 6 1 to 6
![Page 13: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/13.jpg)
2007 Kutztown University 13
First Middle LoopFirst Middle Loop
d(1,1) = d(1,1) = ∞∞ d(1,1) + d(1,k) d(1,1) + d(1,k) ≮≮ d(1,k), d(1,k), ∀∀kk Therefore, no changeTherefore, no change
![Page 14: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/14.jpg)
2007 Kutztown University 14
Second Middle LoopSecond Middle Loop
i = 1i = 1 j = 2j = 2 k k ≔≔ 1 to 6 1 to 6
![Page 15: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/15.jpg)
2007 Kutztown University 15
Second Middle LoopSecond Middle Loop
k = 1k = 1 d(1,1) = d(1,1) = ∞∞ d(2,1) + d(1,1) = d(2,1) + d(1,1) = ∞∞ d(2,1) + d(1,1) = d(2,1) + d(1,1) = ∞∞ ≮≮ d(2,1) d(2,1) Therefore, no changeTherefore, no change
![Page 16: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/16.jpg)
2007 Kutztown University 16
i=1; j=2; k = 2 i=1; j=2; k = 2 (2,1) + (1,2) < (2,2) (2,1) + (1,2) < (2,2) ≡ 4 < ∞≡ 4 < ∞
VtxVtx AA BB CC DD EE ZZ
AA ∞∞ 22 33 ∞∞ ∞∞ ∞∞
BB 22 44 ∞∞ 55 22 ∞∞
CC 33 ∞∞ ∞∞ ∞∞ 55 ∞∞
DD ∞∞ 55 ∞∞ ∞∞ 11 22
EE ∞∞ 22 55 11 ∞∞ 44
ZZ ∞∞ ∞∞ ∞∞ 22 44 ∞∞
![Page 17: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/17.jpg)
2007 Kutztown University 17
i=1; j=2; k = 3 i=1; j=2; k = 3 (2,1) + (1, 3) < (2,3) (2,1) + (1, 3) < (2,3) ≡ ≡ 5 < 5 < ∞∞
VtxVtx AA BB CC DD EE ZZ
AA ∞∞ 22 33 ∞∞ ∞∞ ∞∞
BB 22 44 55 55 22 ∞∞
CC 33 ∞∞ ∞∞ ∞∞ 55 ∞∞
DD ∞∞ 55 ∞∞ ∞∞ 11 22
EE ∞∞ 22 55 11 ∞∞ 44
ZZ ∞∞ ∞∞ ∞∞ 22 44 ∞∞
![Page 18: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/18.jpg)
2007 Kutztown University 18
i=1; j=2; k i=1; j=2; k ≔≔ 4,5,6 4,5,6(2,1) + (1,k) < (2,k) (2,1) + (1,k) < (2,k) ≡ ∞ ≮ ≡ ∞ ≮ xx
VtxVtx AA BB CC DD EE ZZ
AA ∞∞ 22 33 ∞∞ ∞∞ ∞∞
BB 22 44 55 55 22 ∞∞
CC 33 ∞∞ ∞∞ ∞∞ 55 ∞∞
DD ∞∞ 55 ∞∞ ∞∞ 11 22
EE ∞∞ 22 55 11 ∞∞ 44
ZZ ∞∞ ∞∞ ∞∞ 22 44 ∞∞
![Page 19: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/19.jpg)
2007 Kutztown University 19
Third Middle LoopThird Middle Loop
i = 1i = 1 j = 3j = 3 k k ≔≔ 1 to 6 1 to 6
![Page 20: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/20.jpg)
2007 Kutztown University 20
Third Middle LoopThird Middle Loop
k = 1k = 1 d(1,1) = d(1,1) = ∞∞ d(3,1) + d(1,1) = d(3,1) + d(1,1) = ∞∞ d(3,1) + d(1,1) = d(3,1) + d(1,1) = ∞∞ ≮≮ d(3,1) d(3,1) Therefore, no changeTherefore, no change
![Page 21: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/21.jpg)
2007 Kutztown University 21
i=1; j=3; k = 2 i=1; j=3; k = 2 (3,1) + (1, 2) < (3,2) (3,1) + (1, 2) < (3,2) ≡ ≡ 5 < 5 < ∞∞
VtxVtx AA BB CC DD EE ZZ
AA ∞∞ 22 33 ∞∞ ∞∞ ∞∞
BB 22 44 55 55 22 ∞∞
CC 33 55 ∞∞ ∞∞ 55 ∞∞
DD ∞∞ 55 ∞∞ ∞∞ 11 22
EE ∞∞ 22 55 11 ∞∞ 44
ZZ ∞∞ ∞∞ ∞∞ 22 44 ∞∞
![Page 22: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/22.jpg)
2007 Kutztown University 22
i=1; j=3; k = 3 i=1; j=3; k = 3 (3,1) + (1, 3) < (3,3) (3,1) + (1, 3) < (3,3) ≡ ≡ 6 < 6 < ∞∞
VtxVtx AA BB CC DD EE ZZ
AA ∞∞ 22 33 ∞∞ ∞∞ ∞∞
BB 22 44 55 55 22 ∞∞
CC 33 55 66 ∞∞ 55 ∞∞
DD ∞∞ 55 ∞∞ ∞∞ 11 22
EE ∞∞ 22 55 11 ∞∞ 44
ZZ ∞∞ ∞∞ ∞∞ 22 44 ∞∞
![Page 23: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/23.jpg)
2007 Kutztown University 23
i=1; j=3; k i=1; j=3; k ≔≔ 4,5,6 4,5,6 (3,1) + (1, k) < (3,k) (3,1) + (1, k) < (3,k) ≡ ≡ ∞ ≮ ∞ ≮ xx
VtxVtx AA BB CC DD EE ZZ
AA ∞∞ 22 33 ∞∞ ∞∞ ∞∞
BB 22 44 55 55 22 ∞∞
CC 33 55 66 ∞∞ 55 ∞∞
DD ∞∞ 55 ∞∞ ∞∞ 11 22
EE ∞∞ 22 55 11 ∞∞ 44
ZZ ∞∞ ∞∞ ∞∞ 22 44 ∞∞
![Page 24: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/24.jpg)
2007 Kutztown University 24
44thth, 5, 5thth & 6 & 6thth Middle Loops Middle Loops
i = 1i = 1 j j ≔≔ 4 to 6 4 to 6 k k ≔≔ 1 to 6 1 to 6
![Page 25: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/25.jpg)
2007 Kutztown University 25
44thth, 5, 5thth & 6 & 6thth Middle Loops Middle Loops
j j ≔≔ 4 to 6 4 to 6 d(j,1) = d(j,1) = ∞∞ d(j,1) + d(i,k) = d(j,1) + d(i,k) = ∞∞ d(j,1) + d(i,1) = d(j,1) + d(i,1) = ∞∞ ≮≮ d(j,k) d(j,k) Therefore, no changeTherefore, no change
![Page 26: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/26.jpg)
2007 Kutztown University 26
Second Outer LoopSecond Outer Loop
i = 2i = 2 j = j = ≔≔ 1 to 6 1 to 6 k k ≔≔ 1 to 6 1 to 6
![Page 27: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/27.jpg)
2007 Kutztown University 27
i=2; j=1; k = 1 i=2; j=1; k = 1 (1,2) + (2, 1) < (1,1) (1,2) + (2, 1) < (1,1) ≡ ≡ 4 < 4 < ∞∞
VtxVtx AA BB CC DD EE ZZ
AA 44 22 33 ∞∞ ∞∞ ∞∞
BB 22 44 55 55 22 ∞∞
CC 33 55 66 ∞∞ 55 ∞∞
DD ∞∞ 55 ∞∞ ∞∞ 11 22
EE ∞∞ 22 55 11 ∞∞ 44
ZZ ∞∞ ∞∞ ∞∞ 22 44 ∞∞
![Page 28: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/28.jpg)
2007 Kutztown University 28
i=2; j=1; k = 2 i=2; j=1; k = 2 (1,2) + (2, 2) < (1,2) (1,2) + (2, 2) < (1,2) ≡ ≡ 6 6 ≮≮ 2 2
VtxVtx AA BB CC DD EE ZZ
AA 44 22 33 ∞∞ ∞∞ ∞∞
BB 22 44 55 55 22 ∞∞
CC 33 55 66 ∞∞ 55 ∞∞
DD ∞∞ 55 ∞∞ ∞∞ 11 22
EE ∞∞ 22 55 11 ∞∞ 44
ZZ ∞∞ ∞∞ ∞∞ 22 44 ∞∞
![Page 29: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/29.jpg)
2007 Kutztown University 29
i=2; j=1; k = 3 i=2; j=1; k = 3 (1,2) + (2, 3) < (1,3) (1,2) + (2, 3) < (1,3) ≡ ≡ 7 7 ≮≮ 3 3
VtxVtx AA BB CC DD EE ZZ
AA 44 22 33 ∞∞ ∞∞ ∞∞
BB 22 44 55 55 22 ∞∞
CC 33 55 66 ∞∞ 55 ∞∞
DD ∞∞ 55 ∞∞ ∞∞ 11 22
EE ∞∞ 22 55 11 ∞∞ 44
ZZ ∞∞ ∞∞ ∞∞ 22 44 ∞∞
![Page 30: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/30.jpg)
2007 Kutztown University 30
i=2; j=1; k = 4 i=2; j=1; k = 4 (1,2) + (2, 4) < (1,4) (1,2) + (2, 4) < (1,4) ≡ ≡ 7 7 < ∞< ∞
VtxVtx AA BB CC DD EE ZZ
AA 44 22 33 77 ∞∞ ∞∞
BB 22 44 55 55 22 ∞∞
CC 33 55 66 ∞∞ 55 ∞∞
DD ∞∞ 55 ∞∞ ∞∞ 11 22
EE ∞∞ 22 55 11 ∞∞ 44
ZZ ∞∞ ∞∞ ∞∞ 22 44 ∞∞
![Page 31: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/31.jpg)
2007 Kutztown University 31
i=2; j=1; k = 5 i=2; j=1; k = 5 (1,2) + (2, 5) < (1,5) (1,2) + (2, 5) < (1,5) ≡ ≡ 4 4 < ∞< ∞
VtxVtx AA BB CC DD EE ZZ
AA 44 22 33 77 44 ∞∞
BB 22 44 55 55 22 ∞∞
CC 33 55 66 ∞∞ 55 ∞∞
DD ∞∞ 55 ∞∞ ∞∞ 11 22
EE ∞∞ 22 55 11 ∞∞ 44
ZZ ∞∞ ∞∞ ∞∞ 22 44 ∞∞
![Page 32: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/32.jpg)
2007 Kutztown University 32
i=2; j=1; k = 6 i=2; j=1; k = 6 (1,2) + (2, 6) < (1,6) (1,2) + (2, 6) < (1,6) ≡ ≡ ∞ ≮ ∞∞ ≮ ∞
VtxVtx AA BB CC DD EE ZZ
AA 44 22 33 77 44 ∞∞
BB 22 44 55 55 22 ∞∞
CC 33 55 66 ∞∞ 55 ∞∞
DD ∞∞ 55 ∞∞ ∞∞ 11 22
EE ∞∞ 22 55 11 ∞∞ 44
ZZ ∞∞ ∞∞ ∞∞ 22 44 ∞∞
![Page 33: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/33.jpg)
2007 Kutztown University 33
Second Middle LoopSecond Middle Loop
i = 2i = 2 j = 2j = 2 k k ≔≔ 1 to 6 1 to 6
![Page 34: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/34.jpg)
2007 Kutztown University 34
Second Middle Loop k Second Middle Loop k ≔≔ 1 to3 1 to3 ii jj kk 22 22 11
(2,2) + (2,1) < (2,1) ?(2,2) + (2,1) < (2,1) ? 4 + 2 4 + 2 ≮≮ 2 2
22 22 22 (2,2) + (2,2) < (2,2) ?(2,2) + (2,2) < (2,2) ? 4 + 4 4 + 4 ≮≮ 4 4
22 22 33 (2,2) + (2,3) < (2,3) ?(2,2) + (2,3) < (2,3) ? 4 + 5 4 + 5 ≮≮ 5 5
![Page 35: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/35.jpg)
2007 Kutztown University 35
Second Middle Loop k Second Middle Loop k ≔≔ 4 to6 4 to6 ii jj kk 22 22 44
(2,2) + (2,4) < (2,4) ?(2,2) + (2,4) < (2,4) ? 4 + 5 4 + 5 ≮≮ 5 5
22 22 55 (2,2) + (2,5) < (2,5) ?(2,2) + (2,5) < (2,5) ? 4 + 2 4 + 2 ≮≮ 2 2
22 22 66 (2,2) + (2,6) < (2,6) ?(2,2) + (2,6) < (2,6) ? 4 + 4 + ∞∞ ≮≮ ∞∞
![Page 36: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/36.jpg)
2007 Kutztown University 36
VtxVtx AA BB CC DD EE ZZ
AA 44 22 33 77 44 ∞∞
BB 22 44 55 55 22 ∞∞
CC 33 55 66 ∞∞ 55 ∞∞
DD ∞∞ 55 ∞∞ ∞∞ 11 22
EE ∞∞ 22 55 11 ∞∞ 44
ZZ ∞∞ ∞∞ ∞∞ 22 44 ∞∞
Matrix After 2Matrix After 2ndnd Middle Loop Middle Loop {no change}{no change}
![Page 37: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/37.jpg)
2007 Kutztown University 37
Third Middle Loop k Third Middle Loop k ≔≔ 1 to3 1 to3 ii jj kk 22 33 11
(3,2) + (2,1) < (3,1) ?(3,2) + (2,1) < (3,1) ? 5 + 2 5 + 2 ≮≮ 3 3
22 33 22 (3,2) + (2,2) < (3,2) ?(3,2) + (2,2) < (3,2) ? 5 + 4 5 + 4 ≮≮ 5 5
22 33 33 (3,2) + (2,3) < (3,3) ?(3,2) + (2,3) < (3,3) ? 5 + 5 5 + 5 ≮≮ 6 6
![Page 38: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/38.jpg)
2007 Kutztown University 38
Third Middle Loop k Third Middle Loop k ≔≔ 4 to6 4 to6 ii jj kk 22 33 44
(3,2) + (2,4) < (3,4) ?(3,2) + (2,4) < (3,4) ? 5 + 5 < 5 + 5 < ∞∞
22 33 55 (3,2) + (2,5) < (3,5) ?(3,2) + (2,5) < (3,5) ? 5 + 2 5 + 2 ≮≮ 5 5
22 33 66 (3,2) + (2,6) < (3,6) ?(3,2) + (2,6) < (3,6) ? 5 + 5 + ∞∞ ≮≮ ∞∞
![Page 39: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/39.jpg)
2007 Kutztown University 39
VtxVtx AA BB CC DD EE ZZ
AA 44 22 33 77 44 ∞∞
BB 22 44 55 55 22 ∞∞
CC 33 55 66 1010 55 ∞∞
DD ∞∞ 55 ∞∞ ∞∞ 11 22
EE ∞∞ 22 55 11 ∞∞ 44
ZZ ∞∞ ∞∞ ∞∞ 22 44 ∞∞
Matrix After 3Matrix After 3rdrd Middle Loop Middle Loop {1 cell changed}{1 cell changed}
![Page 40: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/40.jpg)
2007 Kutztown University 40
Fourth Middle Loop k Fourth Middle Loop k ≔≔ 1 to3 1 to3 ii jj kk 22 44 11
(4,2) + (2,1) < (4,1) ?(4,2) + (2,1) < (4,1) ? 5 + 2 < 5 + 2 < ∞∞
22 44 22 (4,2) + (2,2) < (4,2) ?(4,2) + (2,2) < (4,2) ? 5 + 4 5 + 4 ≮≮ 5 5
22 44 33 (4,2) + (2,3) < (4,3) ?(4,2) + (2,3) < (4,3) ? 5 + 5 < 5 + 5 < ∞∞
![Page 41: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/41.jpg)
2007 Kutztown University 41
Fourth Middle Loop k Fourth Middle Loop k ≔≔ 4 to6 4 to6 ii jj kk 22 44 44
(4,2) + (2,4) < (4,4) ?(4,2) + (2,4) < (4,4) ? 5 + 5 < 5 + 5 < ∞∞
22 44 55 (4,2) + (2,5) < (4,5) ?(4,2) + (2,5) < (4,5) ? 5 + 2 5 + 2 ≮ ≮ 11
22 44 66 (4,2) + (2,6) < (4,6) ?(4,2) + (2,6) < (4,6) ? 5 + 5 + ∞∞ ≮≮ 2 2
![Page 42: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/42.jpg)
2007 Kutztown University 42
VtxVtx AA BB CC DD EE ZZ
AA 44 22 33 77 44 ∞∞
BB 22 44 55 55 22 ∞∞
CC 33 55 66 1010 55 ∞∞
DD 77 55 1010 1010 11 22
EE ∞∞ 22 55 11 ∞∞ 44
ZZ ∞∞ ∞∞ ∞∞ 22 44 ∞∞
Matrix After 4Matrix After 4thth Middle Loop Middle Loop {3 cells changed}{3 cells changed}
![Page 43: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/43.jpg)
2007 Kutztown University 43
Fifth Middle Loop k Fifth Middle Loop k ≔≔ 1 to3 1 to3 ii jj kk 22 55 11
(5,2) + (2,1) < (5,1) ?(5,2) + (2,1) < (5,1) ? 2 + 2 < 2 + 2 < ∞∞
22 55 22 (5,2) + (2,2) < (5,2) ?(5,2) + (2,2) < (5,2) ? 2 + 4 2 + 4 ≮≮ 2 2
22 55 33 (5,2) + (2,3) < (5,3) ?(5,2) + (2,3) < (5,3) ? 2 + 5 2 + 5 ≮≮ 5 5
![Page 44: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/44.jpg)
2007 Kutztown University 44
Fifth Middle Loop k Fifth Middle Loop k ≔≔ 4 to6 4 to6 ii jj kk 22 55 44
(5,2) + (2,4) < (5,4) ?(5,2) + (2,4) < (5,4) ? 2 + 5 2 + 5 ≮≮ 1 1
22 55 55 (5,2) + (2,5) < (5,5) ?(5,2) + (2,5) < (5,5) ? 2 + 2 < 2 + 2 < ∞∞ 22 55 66 (5,2) + (2,6) < (5,6) ?(5,2) + (2,6) < (5,6) ? 2 + 2 + ∞∞ ≮≮ 4 4
![Page 45: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/45.jpg)
2007 Kutztown University 45
VtxVtx AA BB CC DD EE ZZ
AA 44 22 33 77 44 ∞∞
BB 22 44 55 55 22 ∞∞
CC 33 55 66 1010 55 ∞∞
DD 77 55 1010 1010 11 22
EE 44 22 55 11 44 44
ZZ ∞∞ ∞∞ ∞∞ 22 44 ∞∞
Matrix After 5Matrix After 5thth Middle Loop Middle Loop {2 cells changed}{2 cells changed}
![Page 46: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/46.jpg)
2007 Kutztown University 46
Sixth Middle Loop k Sixth Middle Loop k ≔≔ 1 to3 1 to3 ii jj kk 22 66 11
(6,2) + (2,1) < (6,1) ?(6,2) + (2,1) < (6,1) ? ∞∞ + 2 + 2 ≮ ∞≮ ∞ 22 66 22 (6,2) + (2,2) < (6,2) ?(6,2) + (2,2) < (6,2) ? ∞∞ + 4 + 4 ≮ ∞≮ ∞
22 66 33 (6,2) + (2,3) < (6,3) ?(6,2) + (2,3) < (6,3) ? ∞∞ + 5 + 5 ≮ ∞≮ ∞
![Page 47: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/47.jpg)
2007 Kutztown University 47
Sixth Middle Loop k Sixth Middle Loop k ≔≔ 4 to6 4 to6 ii jj kk 22 66 44
(6,2) + (2,4) < (6,4) ?(6,2) + (2,4) < (6,4) ? ∞∞ + 5 + 5 ≮ ∞≮ ∞
22 66 55 (6,2) + (2,5) < (6,5) ?(6,2) + (2,5) < (6,5) ? ∞∞ + 2 + 2 ≮ ∞≮ ∞ 22 66 66 (6,2) + (2,6) < (6,6) ?(6,2) + (2,6) < (6,6) ? ∞∞ + + ∞∞ ≮ ∞≮ ∞
![Page 48: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/48.jpg)
2007 Kutztown University 48
VtxVtx AA BB CC DD EE ZZ
AA 44 22 33 77 44 ∞∞
BB 22 44 55 55 22 ∞∞
CC 33 55 66 1010 55 ∞∞
DD 77 55 1010 1010 11 22
EE 44 22 55 11 44 44
ZZ ∞∞ ∞∞ ∞∞ 22 44 ∞∞
Matrix After 6Matrix After 6thth Middle Loop Middle Loop {0 cells changed}{0 cells changed}
![Page 49: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/49.jpg)
2007 Kutztown University 49
Third Outer LoopThird Outer Loop
i = 3i = 3 j = j = ≔≔ 1 to 6 1 to 6 k k ≔≔ 1 to 6 1 to 6 Step by step details given hereStep by step details given here
![Page 50: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/50.jpg)
2007 Kutztown University 50
VtxVtx AA BB CC DD EE ZZ
AA 44 22 33 77 44 ∞∞
BB 22 44 55 55 22 ∞∞
CC 33 55 66 1010 55 ∞∞
DD 77 55 1010 1010 11 22
EE 44 22 55 11 44 44
ZZ ∞∞ ∞∞ ∞∞ 22 44 ∞∞
Matrix After 3Matrix After 3rdrd Outer Loop Outer Loop {0 cells changed}{0 cells changed}
![Page 51: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/51.jpg)
2007 Kutztown University 51
Fourth Outer LoopFourth Outer Loop
i = 4i = 4 j = j = ≔≔ 1 to 6 1 to 6 k k ≔≔ 1 to 6 1 to 6 Step by step details given hereStep by step details given here
![Page 52: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/52.jpg)
2007 Kutztown University 52
VtxVtx AA BB CC DD EE ZZ
AA 44 22 33 77 44 99
BB 22 44 55 55 22 77
CC 33 55 66 1010 55 1212
DD 77 55 1010 1010 11 22
EE 44 22 55 11 22 33
ZZ 99 77 1212 22 33 44
Matrix After 4Matrix After 4thth Outer Loop Outer Loop {10 cells changed}{10 cells changed}
![Page 53: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/53.jpg)
2007 Kutztown University 53
Fifth Outer LoopFifth Outer Loop
i = 5i = 5 j = j = ≔≔ 1 to 6 1 to 6 k k ≔≔ 1 to 6 1 to 6 Step by step details given hereStep by step details given here
![Page 54: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/54.jpg)
2007 Kutztown University 54
VtxVtx AA BB CC DD EE ZZ
AA 44 22 33 55 44 77
BB 22 44 55 33 22 55
CC 33 55 66 66 55 88
DD 55 33 66 22 11 22
EE 44 22 55 11 22 33
ZZ 77 55 88 22 33 44
Matrix After 5Matrix After 5thth Outer Loop Outer Loop {12 cells changed}{12 cells changed}
![Page 55: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/55.jpg)
2007 Kutztown University 55
Sixth Outer LoopSixth Outer Loop
i = 6i = 6 j = j = ≔≔ 1 to 6 1 to 6 k k ≔≔ 1 to 6 1 to 6 Step by step details given hereStep by step details given here
![Page 56: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/56.jpg)
2007 Kutztown University 56
VtxVtx AA BB CC DD EE ZZ
AA 44 22 33 55 44 77
BB 22 44 55 33 22 55
CC 33 55 66 66 55 88
DD 55 33 66 22 11 22
EE 44 22 55 11 22 33
ZZ 77 55 88 22 33 44
Matrix After 6Matrix After 6thth Outer Loop Outer Loop {0 cells changed}{0 cells changed}
![Page 57: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/57.jpg)
2007 Kutztown University 57
VtxVtx AA BB CC DD EE ZZ
AA -- 22 33 55 44 77
BB 22 -- 55 33 22 55
CC 33 55 -- 66 55 88
DD 55 33 66 -- 11 22
EE 44 22 55 11 -- 33
ZZ 77 55 88 22 33 --
Final MatrixFinal MatrixDiagonal values are removedDiagonal values are removed
![Page 58: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/58.jpg)
2007 Kutztown University 58
Path Costs from APath Costs from A Given by row entriesGiven by row entries A A B :: 2 B :: 2 A A C :: 3 C :: 3 A A D :: 5 D :: 5 A A E :: 4 E :: 4 A A Z :: 7 Z :: 7
![Page 59: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/59.jpg)
2007 Kutztown University 59
Path Costs from BPath Costs from B Given by row entriesGiven by row entries B B A :: 2 A :: 2 B B C :: 5 C :: 5 B B D :: 3 D :: 3 B B E :: 2 E :: 2 B B Z :: 5 Z :: 5
![Page 60: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/60.jpg)
2007 Kutztown University 60
Path Costs from CPath Costs from C Given by row entriesGiven by row entries C C A :: 3 A :: 3 C C B :: 5 B :: 5 C C D :: 6 D :: 6 C C E :: 5 E :: 5 C C Z :: 8 Z :: 8
![Page 61: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/61.jpg)
2007 Kutztown University 61
Path Costs from DPath Costs from D Given by row entriesGiven by row entries D D A :: 5 A :: 5 D D B :: 3 B :: 3 D D C :: 6 C :: 6 D D E :: 1 E :: 1 D D Z :: 2 Z :: 2
![Page 62: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/62.jpg)
2007 Kutztown University 62
Path Costs from EPath Costs from E Given by row entriesGiven by row entries E E A :: 4 A :: 4 E E B :: 2 B :: 2 E E C :: 5 C :: 5 E E D :: 1 D :: 1 E E Z :: 3 Z :: 3
![Page 63: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/63.jpg)
2007 Kutztown University 63
Path Costs from ZPath Costs from Z Given by row entriesGiven by row entries Z Z A :: 7 A :: 7 Z Z B :: 5 B :: 5 Z Z C :: 8 C :: 8 Z Z D :: 2 D :: 2 Z Z E :: 3 E :: 3
![Page 64: Discrete Math 2 Shortest Paths Using Matrix](https://reader035.vdocuments.mx/reader035/viewer/2022062407/56812da7550346895d92cc01/html5/thumbnails/64.jpg)
2007 Kutztown University 64
Shortest PathsShortest Paths
Floyd’s Algorithm gives the path costsFloyd’s Algorithm gives the path costs Finding the actual paths reuqires Finding the actual paths reuqires
additional workadditional work We will need two matricesWe will need two matrices
One to hold travel costsOne to hold travel costs Other to hold actual pathsOther to hold actual paths