Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Lecture 10 of 41 Game Tree Search (Concluded) Introduction to Logical Agents Monday, 13 September 2004 William H. Hsu Department of Computing and Information Sciences, KSU http://www.kddresearch.org http://www.cis.ksu.edu/~bhsu Reading: Sections 6.4-6.8, Russell and Norvig 2e Next class (Wednesday): Sections 7.1-7.4 CIS 730: Introduction to Artificial Intelligence Kansas State University Department of Computing and Information Sciences Lecture Outline • Today’s Reading – Sections 6.4-6.8, Russell and Norvig 2e – Recommended references: Rich and Knight, Winston • Reading for Next Class: Chapter 6, Russell and Norvig • More on Game Tree Search – Review: framework; minimax algorithm; quiescence detection, horizon effect – Alpha-Beta pruning – Expectiminimax • Applications: Current “Hot” Problems – “Harder” games: Go – Interactive agents and games • Economically-founded multiagent systems, negotiation • Simulated societies • Next Week: Knowledge Representation – Logics and Production Systems CIS 730: Introduction to Artificial Intelligence Kansas State University Department of Computing and Information Sciences Review: Minimax Algorithm Adapted from slides by S. Russell, UC Berkeley CIS 730: Introduction to Artificial Intelligence Figure 5.2 p. 125 R&N Kansas State University Department of Computing and Information Sciences Alpha-Beta (-) Pruning: Definitions Adapted from slides by S. Russell, UC Berkeley CIS 730: Introduction to Artificial Intelligence Kansas State University Department of Computing and Information Sciences Alpha-Beta (-) Pruning: Example [1] ≥3 MAX MIN Warning: Gratuitous use of Microsoft® PowerPoint ® XP ≤2 3 ≤ 14 ≤5 2 MAX 3 12 8 2 Adapted from slides by S. Russell, UC Berkeley CIS 730: Introduction to Artificial Intelligence 14 5 2 Figure 5.6 p. 131 R&N Kansas State University Department of Computing and Information Sciences Alpha-Beta (-) Pruning: Example [2] What are , values here? ≥3 MAX MIN ≤2 3 ≤ 14 ≤5 2 MAX 3 12 8 2 Adapted from slides by S. Russell, UC Berkeley CIS 730: Introduction to Artificial Intelligence 14 5 2 Figure 5.6 p. 131 R&N Kansas State University Department of Computing and Information Sciences Alpha-Beta (-) Pruning: Modified Minimax Algorithm Adapted from slides by S. Russell, UC Berkeley CIS 730: Introduction to Artificial Intelligence Kansas State University Department of Computing and Information Sciences Expectiminimax Adapted from slides by S. Russell, UC Berkeley CIS 730: Introduction to Artificial Intelligence Kansas State University Department of Computing and Information Sciences Alpha-Beta (-) Pruning: Properties • Perfect Play (TBD from Perfect Information) – Common framework: two-player (or multi-player), zero-sum – Deterministic or known probability distribution function, totally observable – Minimax algorithm given ability to search to arbitrary ply • Assumptions about – … game? – … opponent? • Specifications and Ramifications – Combinatorics: finite depth (m), breadth (b) of search – Resource limits: need for static evaluation function • Practical Issues – Effects of depth cutoff – Need for pruning Adapted from slides by S. Russell, UC Berkeley CIS 730: Introduction to Artificial Intelligence Kansas State University Department of Computing and Information Sciences Digression: Learning Evaluation Functions [1] • Learning = Improving with Experience at Some Task – Improve over task T, – with respect to performance measure P, – based on experience E. • Example: Learning to Play Checkers – T: play games of checkers – P: percent of games won in world tournament – E: opportunity to play against self • Refining the Problem Specification: Issues – What experience? – What exactly should be learned? – How shall it be represented? – What specific algorithm to learn it? • Defining the Problem Milieu – Performance element: How shall the results of learning be applied? – How shall the performance element be evaluated? The learning system? CIS 730: Introduction to Artificial Intelligence Kansas State University Department of Computing and Information Sciences Digression: Learning Evaluation Functions [2] • Possible Definition – If b is a final board state that is won, then V(b) = 100 – If b is a final board state that is lost, then V(b) = -100 – If b is a final board state that is drawn, then V(b) = 0 – If b is not a final board state in the game, then V(b) = V(b’) where b’ is the best final board state that can be achieved starting from b and playing optimally until the end of the game – Correct values for minimax / alpha-beta, but not operational • Choosing a Representation for the Static Evaluation Function – Collection of rules? – Neural network? – Polynomial function (e.g., linear, quadratic combination) of board features? – Other? • A Representation for Learned Function – Vˆ b w 0 w 1bp b w 2 rp b w 3 bk b w 4 rk b w 5 bt b w 6 rt b – bp/rp = number of black/red pieces; bk/rk = number of black/red kings; bt/rt = number of black/red pieces threatened (can be taken on next turn) CIS 730: Introduction to Artificial Intelligence Kansas State University Department of Computing and Information Sciences State of The Art: Learning to Play Games • “Easy” Games: Nim, Tic-Tac-Toe – Nim: known Grundy function – TTT: ditto (easy to play, prove; hard to store game tree) • “Cracked” Games: Go-Moku, Checkers, Go Subgames – Go-Moku aka Connect Five – Some limited Go (smaller than 19x19) or specialized games (Guess – see SciAm) • Games where Best Human Players Have Been Defeated by AI – Reversi / Othello (1988, Lee et al) – Backgammon (1992, Tesauro) – Checkers (1994) – Chess (1997, Campbell et al) • “Harder” Games – Go (see Computer Go, Ing Prize pages) – Others CIS 730: Introduction to Artificial Intelligence Kansas State University Department of Computing and Information Sciences Current Research Topics in Games and AI • Game Theory – Common ramework: two-player (or multi-player), zero-sum – Deterministic or known probability distribution function, totally observable – Minimax algorithm given ability to search to arbitrary ply • Negotiation – … game? – … opponent? • Specifications and Ramifications – Combinatorics: finite depth (m), breadth (b) of search – Resource limits: need for static evaluation function • Practical Issues – Effects of depth cutoff – Need for pruning CIS 730: Introduction to Artificial Intelligence Kansas State University Department of Computing and Information Sciences Resources for Term Project • Print Resources on The Web (You May Cite Some as Print References) – CiteSeer (largest online citation database): http://citeseer.nj.nec.com – See also: Google (author search), E-journals (JAIR, JMLR), societies (AAAI, AUAI) • Resources for AI Projects – USENET: many AI-related groups • comp.ai, comp.ai.edu, comp.ai.{neural-nets | genetic | fuzzy} • Other groups on vision, optical character recognition (OCR) – Watch CIS730 Yahoo! Group (see Part 3 of 3, project guidelines) • Don’t Forget Interlibrary Loan! – K-State: off-campus borrowing facilities (http://www.lib.ksu.edu) – Arrangements for remote (NTU) students: contact instructor • Instructor Contact Info – ICQ #28651394, cis730ta, [email protected] – Voice: (785) 532-6350 x29 [Office], (785) 539-7180 [Home 18:00 – 20:00 CDT] – Mobile phone contact: call Delores Winfough (785) 532-6350 – Schedule: http://www.kddresearch.org/Personal/bhsu/schedule.txt CIS 730: Introduction to Artificial Intelligence Kansas State University Department of Computing and Information Sciences Ideas for Term Project • Rogue versus Angband – Idea: discrete domain, single-agent, control and target acquisition problem – Rog-O-Matic: http://www.cs.princeton.edu/~appel/papers/rogomatic.html – Angband Borg: http://www.phial.com/angborg/ • Empire versus Intergalactics – Idea: continuous domain, multi-agent, competitive, control and target acquisition – Empire: http://gamespot.com/gamespot/features/pc/history_spaceempire/ – Intergalactics: http://www.intergalactics.net • Robocode versus Space Pirates – Idea: continuous domain, multi-agent, competitive, control and target acquisition – Robocode: http://www.alphaworks.ibm.com/tech/robocode – Space Pirates: http://www.lostlogic.com • Hey! Are Computer Games All This Course Is About? – No! – Diagnostic expert systems, data mining, intelligent IR – Many many more… (see web group) CIS 730: Introduction to Artificial Intelligence Kansas State University Department of Computing and Information Sciences Advice About Term Project [1] • Start Early! – Recall “How to Get an A in This Course” (Lecture 0) – See below: start ball rolling ASAP • Ask Questions on Course Web Group (ksu-cis730-fall2001) – On online fora • Course web group (ksu-cis730-fall2001) – check progress with classmates! • USENET (caveat: know what you are asking, what you will do with answers) • Mailing lists (ditto) – data mining; Uncertainty in AI; many, many others – Directly question instructor • By remote: see contacts, previous page • in person: before class, Wednesday office hours (with project partner, by self) – Do footwork • Not everything is on web (Inter-Library Loan – excruciatingly slow) • Not everything on web is well-indexed, easily accessible • Stay Coordinated with Project Partner • Don’t Waste Too Much Time on Nonessentials (Display/GUI) CIS 730: Introduction to Artificial Intelligence Kansas State University Department of Computing and Information Sciences Advice About Term Project [2] • Evaluation Criteria – Originality, significance, scope • Nontriviality of problem: very important! • Originality of solution: reimplementation / rehashing of common “applet”? • Generality of results – Functionality – Writing quality • Proposal is not end of writing! • Conference/workshop-style report much more important • How to Focus on Essentials – Keep list of milestones, track schedule slippage carefully – Report to instructor and get feedback (no formal interim reports, but post) – Know what is essential • Ounce of prevention: good planning, design, specification, antibugging • Don’t lose time on interfaces, et cetera: scoring not based on “KLOC” • Leave time for debugging and testing! CIS 730: Introduction to Artificial Intelligence Kansas State University Department of Computing and Information Sciences Knowledge Bases Adapted from slides by S. Russell, UC Berkeley CIS 730: Introduction to Artificial Intelligence Kansas State University Department of Computing and Information Sciences Simple Knowledge-Based Agent Adapted from slides by S. Russell, UC Berkeley CIS 730: Introduction to Artificial Intelligence Figure 6.1 p. 152 R&N Kansas State University Department of Computing and Information Sciences Representing Intelligent Agent (IA) Problems: PAGE Formulation • Percepts – What can agent observe? – What can sensors tell it? • Actions – What actuators does agent have? – In what context are they applicable? • Goals – What are agents goals? Preferences (utilities)? – How does agent evaluate them (check environment, deliberate, etc.)? • Environment – What are “rules of the world”? – How can these be represented, simulated? CIS 730: Introduction to Artificial Intelligence Kansas State University Department of Computing and Information Sciences Wumpus World PAGE Description Adapted from slides by S. Russell, UC Berkeley CIS 730: Introduction to Artificial Intelligence Figure 6.2 p. 154 R&N Kansas State University Department of Computing and Information Sciences Wumpus World Characterization • Deterministic? – In general: is there any uncertainty about • Outcomes of actions? • Initial conditions? (Can still be deterministic domain; uncertainty is agent’s) – Yes, deterministic… outcomes exactly specified • Fully Accessible? – Global perception? – No, not fully accessible… can only observe locally • Static? – Obstacles, other “Non-Player Character (NPC)” agents can move? – Yes, static… wumpus, pits cannot move • Discrete? – NB: not representation; actual domain (why important?) – Yes, discrete Adapted from slides by S. Russell, UC Berkeley CIS 730: Introduction to Artificial Intelligence Kansas State University Department of Computing and Information Sciences Exploring A Wumpus World OK OK OK KSU Adapted from slides by S. Russell, UC Berkeley CIS 730: Introduction to Artificial Intelligence Figures 6.3-6.4 p. 156 R&N Kansas State University Department of Computing and Information Sciences Wumpus World Reasoning Problems: Uncertainty and Coercion Adapted from slides by S. Russell, UC Berkeley CIS 730: Introduction to Artificial Intelligence Kansas State University Department of Computing and Information Sciences Logic in General Adapted from slides by S. Russell, UC Berkeley CIS 730: Introduction to Artificial Intelligence Kansas State University Department of Computing and Information Sciences Ontology and Epistemology: Describing Types of Logic Adapted from slides by S. Russell, UC Berkeley CIS 730: Introduction to Artificial Intelligence Figure 6.7 p. 166 R&N Kansas State University Department of Computing and Information Sciences Summary Points • Games as Search Problems – Frameworks – Concepts: utility, reinforcements, game trees – Static evaluation under resource limitations • Family of Algorithms for Game Trees: Minimax – Static evaluation algorithm • To abritrary ply • To fixed ply • Sophistications: iterative deepening, pruning – Credit propagation • Intuitive concept • Basis for simple (delta-rule) learning algorithms • State of The Field • Uncertainty in Games: Expectiminimax and Other Algorithms CIS 730: Introduction to Artificial Intelligence Kansas State University Department of Computing and Information Sciences Terminology • Game Graph Search – Frameworks: zero-sum, multi-player – Concepts • Utility and representations (e.g., static evaluation function) • Reinforcements: possible role for machine learning • Game tree: node/move correspondence, search ply • Important distinction: perfect play versus perfect information • Family of Algorithms for Game Trees: Minimax – Propagation of credit – Imperfect decisions – Issues • Quiescence • Horizon effect • Alpha-Beta Pruning • Expectiminimax: Extension to Uncertain Games CIS 730: Introduction to Artificial Intelligence Kansas State University Department of Computing and Information Sciences