DOC PREVIEW
Berkeley COMPSCI 188 - Lecture 7: Adversarial Search

This preview shows page 1-2-15-16-31-32 out of 32 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 32 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 32 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 32 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 32 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 32 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 32 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 32 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

CS 188: Artificial Intelligence Fall 2007AnnouncementsLocal SearchHill ClimbingHill Climbing DiagramSimulated AnnealingSlide 7Beam SearchGenetic AlgorithmsExample: N-QueensAdversarial SearchGame Playing State-of-the-ArtGame PlayingDeterministic Single-Player?Deterministic Two-PlayerTic-tac-toe Game TreeMinimax ExampleMinimax SearchMinimax PropertiesResource LimitsEvaluation FunctionsEvaluation for PacmanIterative Deepening- Pruning Example- Pruning- Pruning Pseudocode- Pruning PropertiesNon-Zero-Sum GamesStochastic Single-PlayerStochastic Two-PlayerSlide 32What’s Next?CS 188: Artificial IntelligenceFall 2007Lecture 7: Adversarial Search9/18/2007Dan Klein – UC BerkeleyMany slides over the course adapted from either Stuart Russell or Andrew MooreAnnouncementsProject 2 is up (Multi-Agent Pacman)SVN groups coming, watch web pageDan’s office hours Tuesday moving to Friday 1-2pmLocal SearchQueue-based algorithms keep fallback options (backtracking)Local search: improve what you have until you can’t make it betterGenerally much more efficient (but incomplete)Hill ClimbingSimple, general idea:Start whereverAlways choose the best neighborIf no neighbors have better scores than current, quitWhy can this be a terrible idea?Complete?Optimal?What’s good about it?Hill Climbing DiagramRandom restarts?Random sideways steps?Simulated AnnealingIdea: Escape local maxima by allowing downhill movesBut make them rarer as time goes onSimulated AnnealingTheoretical guarantee:Stationary distribution:If T decreased slowly enough,will converge to optimal state!Is this an interesting guarantee?Sounds like magic, but reality is reality:The more downhill steps you need to escape, the less likely you are to every make them all in a rowPeople think hard about ridge operators which let you jump around the space in better waysBeam SearchLike hill-climbing search, but keep K states at all times:Variables: beam size, encourage diversity?The best choice in MANY practical settingsComplete? Optimal?Why do we still need optimal methods?Greedy Search Beam SearchGenetic AlgorithmsGenetic algorithms use a natural selection metaphorLike beam search (selection), but also have pairwise crossover operators, with optional mutationProbably the most misunderstood, misapplied (and even maligned) technique around!Example: N-QueensWhy does crossover make sense here?When wouldn’t it make sense?What would mutation be?What would a good fitness function be?Adversarial Search[DEMO 1]Game Playing State-of-the-ArtCheckers: Chinook ended 40-year-reign of human world champion Marion Tinsley in 1994. Used an endgame database defining perfect play for all positions involving 8 or fewer pieces on the board, a total of 443,748,401,247 positions. Checkers is now solved!Chess: Deep Blue defeated human world champion Gary Kasparov in a six-game match in 1997. Deep Blue examined 200 million positions per second, used very sophisticated evaluation and undisclosed methods for extending some lines of search up to 40 ply.Othello: human champions refuse to compete against computers, which are too good.Go: human champions refuse to compete against computers, which are too bad. In go, b > 300, so most programs use pattern knowledge bases to suggest plausible moves.Pacman: unknownGame PlayingAxes:Deterministic or stochastic?One, two or more players?Perfect information (can you see the state)?Want algorithms for calculating a strategy (policy) which recommends a move in each stateDeterministic Single-Player?Deterministic, single player, perfect information:Know the rulesKnow what actions doKnow when you winE.g. Freecell, 8-Puzzle, Rubik’s cube… it’s just search!Slight reinterpretation:Each node stores the best outcome it can reachThis is the maximal outcome of its childrenNote that we don’t store path sums as beforeAfter search, can pick move that leads to best nodewin loseloseDeterministic Two-PlayerE.g. tic-tac-toe, chess, checkersMinimax searchA state-space search treePlayers alternateEach layer, or ply, consists of a round of movesChoose move to position with highest minimax value = best achievable utility against best playZero-sum gamesOne player maximizes resultThe other minimizes result8 2 5 6maxminTic-tac-toe Game TreeMinimax ExampleMinimax SearchMinimax PropertiesOptimal against a perfect player. Otherwise?Time complexity?O(bm)Space complexity?O(bm)For chess, b  35, m  100Exact solution is completely infeasibleBut, do we need to explore the whole tree?10 10 9 100maxmin[DEMO2: minVsExp]Resource LimitsCannot search to leavesLimited searchInstead, search a limited depth of the treeReplace terminal utilities with an eval function for non-terminal positionsGuarantee of optimal play is goneMore plies makes a BIG difference[DEMO 3: limitedDepth]Example:Suppose we have 100 seconds, can explore 10K nodes / secSo can check 1M nodes per move- reaches about depth 8 – decent chess program? ? ? ?-1 -2 4 94min minmax-2 4Evaluation FunctionsFunction which scores non-terminalsIdeal function: returns the utility of the positionIn practice: typically weighted linear sum of features:e.g. f1(s) = (num white queens – num black queens), etc.Evaluation for Pacman[DEMO4: evalFunction, thrashing]Iterative DeepeningIterative deepening uses DFS as a subroutine:1. Do a DFS which only searches for paths of length 1 or less. (DFS gives up on any path of length 2)2. If “1” failed, do a DFS which only searches paths of length 2 or less.3. If “2” failed, do a DFS which only searches paths of length 3 or less.….and so on.This works for single-agent search as well!Why do we want to do this for multiplayer games?…b- Pruning Example- PruningGeneral configuration is the best value the MAX can get at any choice point along the current pathIf n is worse than , MAX will avoid it, so prune n’s branchDefine  similarly for MINPlayerOpponentPlayerOpponentn- Pruning Pseudocodev- Pruning PropertiesPruning has no effect on final resultGood move ordering improves effectiveness of pruningWith “perfect ordering”:Time complexity drops to O(bm/2)Doubles solvable depthFull search of,


View Full Document

Berkeley COMPSCI 188 - Lecture 7: Adversarial Search

Documents in this Course
CSP

CSP

42 pages

Metrics

Metrics

4 pages

HMMs II

HMMs II

19 pages

NLP

NLP

23 pages

Midterm

Midterm

9 pages

Agents

Agents

8 pages

Lecture 4

Lecture 4

53 pages

CSPs

CSPs

16 pages

Midterm

Midterm

6 pages

MDPs

MDPs

20 pages

mdps

mdps

2 pages

Games II

Games II

18 pages

Load more
Download Lecture 7: Adversarial Search
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Lecture 7: Adversarial Search and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Lecture 7: Adversarial Search 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?