The.Algorithm.Design.Manual.Springer-Verlag.1998
The.Algorithm.Design.Manual.Springer-Verlag.1998 The.Algorithm.Design.Manual.Springer-Verlag.1998
Lecture 18 - shortest path algorthms ● The fast programs were often recursive. Listen To Part 19-3 Winning Optimizations ● Finding a good initial solution via randomization or heuristic improvement helped by establishing a good upper bound, to constrict search. ● Using half the largest vertex degree as a lower bound similarly constricted search. ● Pruning a partial permutation the instant an edge was the target made the difference in going from (say) 8 to 18. ● Positioning the partial permutation vertices separated by b instead of 1 meant significantly earlier cutoffs, since any edge does the job. ● Mirror symmetry can only save a factor of 2, but perhaps more could follow from partitioning the vertices into equivalence classes by the same neighborhood. Listen To Part 19-10 Shortest Paths Finding the shortest path between two nodes in a graph arises in many different applications: ● Transportation problems - finding the cheapest way to travel between two locations. ● Motion planning - what is the most natural way for a cartoon character to move about a simulated environment. ● Communications problems - how look will it take for a message to get between two places? Which two locations are furthest apart, ie. what is the diameter of the network. Listen To Part 20-1 Shortest Paths and Sentence Disambiguation In our work on reconstructing text typed on an (overloaded) telephone keypad, we had to select which of many possible interpretations was most likely. file:///E|/LEC/LECTUR16/NODE18.HTM (2 of 10) [19/1/2003 1:35:18]
Lecture 18 - shortest path algorthms We constructed a graph where the vertices were the possible words/positions in the sentence, with an edge between possible neighboring words. Listen To Part 20-2 file:///E|/LEC/LECTUR16/NODE18.HTM (3 of 10) [19/1/2003 1:35:18]
- Page 949 and 950: Lecture 12 - introduction to dynami
- Page 951 and 952: Lecture 12 - introduction to dynami
- Page 953 and 954: Lecture 12 - introduction to dynami
- Page 955 and 956: Lecture 12 - introduction to dynami
- Page 957 and 958: Lecture 13 - dynamic programming ap
- Page 959 and 960: Lecture 13 - dynamic programming ap
- Page 961 and 962: Lecture 13 - dynamic programming ap
- Page 963 and 964: Lecture 14 - data structures for gr
- Page 965 and 966: Lecture 14 - data structures for gr
- Page 967 and 968: Lecture 14 - data structures for gr
- Page 969 and 970: Lecture 14 - data structures for gr
- Page 971 and 972: Lecture 14 - data structures for gr
- Page 973 and 974: Lecture 14 - data structures for gr
- Page 975 and 976: Lecture 15 - DFS and BFS Next: Lect
- Page 977 and 978: Lecture 15 - DFS and BFS In a DFS o
- Page 979 and 980: Lecture 15 - DFS and BFS It could u
- Page 981 and 982: Lecture 15 - DFS and BFS Algorithm
- Page 983 and 984: Lecture 16 - applications of DFS an
- Page 985 and 986: Lecture 16 - applications of DFS an
- Page 987 and 988: Lecture 16 - applications of DFS an
- Page 989 and 990: Lecture 17 - minimum spanning trees
- Page 991 and 992: Lecture 17 - minimum spanning trees
- Page 993 and 994: Lecture 17 - minimum spanning trees
- Page 995 and 996: Lecture 17 - minimum spanning trees
- Page 997 and 998: Lecture 17 - minimum spanning trees
- Page 999: Lecture 18 - shortest path algorthm
- Page 1003 and 1004: Lecture 18 - shortest path algorthm
- Page 1005 and 1006: Lecture 18 - shortest path algorthm
- Page 1007 and 1008: Lecture 18 - shortest path algorthm
- Page 1009 and 1010: Lecture 19 - satisfiability Next: L
- Page 1011 and 1012: Lecture 19 - satisfiability Why? Th
- Page 1013 and 1014: Lecture 19 - satisfiability between
- Page 1015 and 1016: Lecture 19 - satisfiability Note th
- Page 1017 and 1018: Lecture 20 - integer programming Ex
- Page 1019 and 1020: Lecture 20 - integer programming Ne
- Page 1021 and 1022: Lecture 21 - vertex cover Proof: VC
- Page 1023 and 1024: Lecture 21 - vertex cover Question:
- Page 1025 and 1026: Lecture 21 - vertex cover seen to d
- Page 1027 and 1028: Lecture 22 - techniques for proving
- Page 1029 and 1030: Lecture 22 - techniques for proving
- Page 1031 and 1032: Lecture 22 - techniques for proving
- Page 1033 and 1034: Lecture 22 - techniques for proving
- Page 1035 and 1036: Lecture 23 - approximation algorith
- Page 1037 and 1038: Lecture 23 - approximation algorith
- Page 1039 and 1040: Lecture 23 - approximation algorith
- Page 1041 and 1042: Lecture 23 - approximation algorith
- Page 1043 and 1044: Lecture 23 - approximation algorith
- Page 1045 and 1046: About this document ... Up: No Titl
- Page 1047 and 1048: 1.1.6 Kd-Trees ● Point Location
- Page 1049 and 1050: 1.1.3 Suffix Trees and Arrays Send
Lecture 18 - shortest path algorthms<br />
● <strong>The</strong> fast programs were often recursive.<br />
Listen To Part 19-3<br />
Winning Optimizations<br />
● Finding a good initial solution via randomization or heuristic improvement helped by establishing<br />
a good upper bound, to constrict search.<br />
● Using half the largest vertex degree as a lower bound similarly constricted search.<br />
● Pruning a partial permutation the instant an edge was the target made the difference in going<br />
from (say) 8 to 18.<br />
● Positioning the partial permutation vertices separated by b instead of 1 meant significantly earlier<br />
cutoffs, since any edge does the job.<br />
● Mirror symmetry can only save a factor of 2, but perhaps more could follow from partitioning the<br />
vertices into equivalence classes by the same neighborhood.<br />
Listen To Part 19-10<br />
Shortest Paths<br />
Finding the shortest path between two nodes in a graph arises in many different applications:<br />
● Transportation problems - finding the cheapest way to travel between two locations.<br />
● Motion planning - what is the most natural way for a cartoon character to move about a simulated<br />
environment.<br />
● Communications problems - how look will it take for a message to get between two places?<br />
Which two locations are furthest apart, ie. what is the diameter of the network.<br />
Listen To Part 20-1<br />
Shortest Paths and Sentence Disambiguation<br />
In our work on reconstructing text typed on an (overloaded) telephone keypad, we had to select which of<br />
many possible interpretations was most likely.<br />
file:///E|/LEC/LECTUR16/NODE18.HTM (2 of 10) [19/1/2003 1:35:18]