15.082J & 6.855J & ESD.78J Visualizations Dijkstra’s Algorithm An Example ∞ 2 0 ∞ 4 4 2 2 1 1 2 3 4 6 ∞ 2 3 ∞ 3 5 ∞ Initialize Select the node with the minimum temporary distance label. 2 An Example ∞ 2 0 ∞ 4 4 2 2 1 1 2 3 4 6 ∞ 2 3 ∞ 3 5 ∞ Initialize Select the node with the minimum temporary distance label. 3 Update Step 2 ∞ 2 0 ∞ 4 4 2 2 1 1 2 3 4 6 ∞ 2 3 ∞ 4 3 5 ∞ 4 Choose Minimum Temporary Label ∞ 2 2 0 4 4 2 2 1 1 2 3 4 6 ∞ 2 3 4 3 5 ∞ 5 Update Step 6 ∞ 2 2 0 4 4 2 2 1 1 2 3 4 6 ∞ 2 3 4 3 3 5 ∞ 4 The predecessor of node 3 is now node 2 6 Choose Minimum Temporary Label 2 2 0 6 4 4 2 2 1 1 2 3 4 6 ∞ 2 3 3 3 5 4 7 Update 2 2 0 6 4 4 2 2 1 1 2 3 4 6 ∞ 2 3 3 3 5 4 d(5) is not changed. 8 Choose Minimum Temporary Label 2 2 0 6 4 4 2 2 1 1 2 3 4 6 ∞ 2 3 3 3 5 4 9 Update 2 2 0 6 4 4 2 2 1 1 2 3 4 6 6 ∞ 2 3 3 3 5 4 d(4) is not changed 10 Choose Minimum Temporary Label 2 2 0 6 4 4 2 2 1 1 2 3 4 6 6 2 3 3 3 5 4 11 Update 2 2 0 6 4 4 2 2 1 1 2 3 4 6 6 2 3 3 3 5 4 d(6) is not updated 12 Choose Minimum Temporary Label 2 2 0 6 4 4 2 2 1 1 2 3 4 6 6 2 3 3 3 5 4 There is nothing to update 13 End of Algorithm 2 2 0 6 4 4 2 2 1 1 2 3 4 6 6 2 3 3 3 5 4 All nodes are now permanent The predecessors form a tree The shortest path from node 1 to node 6 can be found by tracing back predecessors 14 MITOpenCourseWare http://ocw.mit.edu 15.082J / 6.855J / ESD.78J Network Optimization Fall 2010 For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms.