110 likes | 162 Views
A Las Vegas Algorithm for the 8 Queens problem. Lecture 35 CS 312. The Final. http://faculty.cs.byu.edu/~jones/312/sample_final.pdf (or .doc) In the testing center Use their calculators. Multiple choice. Show work for partial credit Review on Wednesday. Objectives. Finish project 4
E N D
A Las Vegas Algorithm for the 8 Queens problem Lecture 35 CS 312
The Final • http://faculty.cs.byu.edu/~jones/312/sample_final.pdf (or .doc) • In the testing center • Use their calculators. • Multiple choice. • Show work for partial credit • Review on Wednesday
Objectives • Finish project 4 • Explain the difference between Monte Carlo and Las Vegas algorithms • Decide how many queens to place at random in 8 queens.
QueensLV queensLV (n,stopLV) : bool = place stopLV of the queens at random so that no queens attack each other. use backtracking to place the remaining n-stopLV queens if successful, report a solution otherwise fail.
QueensLV 1 Random 2 3 4 5 Backtrack 6 7 8 1 2 3 4 5 6 7 8
How many nodes explored? • suppose s(n) nodes to succeed • and f(n) nodes to fail • with probability p(n) of succeeding
How many nodes explored? • suppose s(n) nodes to succeed • and f(n) nodes to fail • with probability p(n) of succeeding • t(x) = p(x)s(x) + (1-p(x))(f(x) + t(x)), or
How much time? • Authors report that for 8-queens, backtracking is still faster. • takes a long time to gen. a random number • For 39 queens, queensLV is faster. • 41 hours using backtracking • 8.5 ms using queensLV
Homework • None. Cancelled.