Presentation is loading. Please wait.

Presentation is loading. Please wait.

Seminar on Game Playing in AI. 1/21/2014University College of Engineering2 Definition…. Game Game playing is a search problem defined by: 1. Initial state.

Similar presentations


Presentation on theme: "Seminar on Game Playing in AI. 1/21/2014University College of Engineering2 Definition…. Game Game playing is a search problem defined by: 1. Initial state."— Presentation transcript:

1 Seminar on Game Playing in AI

2 1/21/2014University College of Engineering2 Definition…. Game Game playing is a search problem defined by: 1. Initial state 2. Successor function 3. Goal test 4. Path cost / utility / payoff function

3 1/21/2014University College of Engineering3 Types of Games Perfect Information Game: In which player knows all the possible moves of himself and opponent and their results. E.g. Chess. Imperfect Information Game: In which player does not know all the possible moves of the opponent. E.g. Bridge since all the cards are not visible to player.

4 1/21/2014University College of Engineering4 Characteristics of game playing Unpredictable Opponent. Time Constraints.

5 1/21/2014University College of Engineering5 Typical structure of the game in AI 2- person game Players alternate moves Zero-sum game: one players loss is the others gain Perfect information: both players have access to complete information about the state of the game. No information is hidden from either player. No chance (e.g. using dice) involved E.g. Tic- Tac- Toe, Checkers, Chess

6 1/21/2014University College of Engineering6 Game Tree Tic – Tac – Toe Game Tree Ref: www.uni-koblenz.de/~beckert/ Lehre/Einfuehrung-KI-SS2003/folien06.pdf

7 1/21/2014University College of Engineering7 MAX

8 1/21/2014University College of Engineering8 MAX cont..

9 1/21/2014University College of Engineering9 MINIMAX.. 2 players.. MIN and MAX. Utility of MAX = - (Utility of MIN). Utility of game = Utility of MAX. MIN tries to decrease utility of game. MAX tries to increase utility of game.

10 1/21/2014University College of Engineering10 MINIMAX Tree.. Ref: www.uni-koblenz.de/~beckert/ Lehre/Einfuehrung-KI-SS2003/folien06.pdf

11 1/21/2014University College of Engineering11 Assignment of MINIMAX Values Minimax_value(u) { //u is the node you want to score if u is a leaf return score of u; else if u is a min node for all children of u: v1,.. vn ; return min (Minimax_value(v1),..., Minimax_value(vn)) else for all children of u: v1,.. vn ; return max (Minimax_value(v1),..., Minimax_value(vn)) }

12 1/21/2014University College of Engineering12 MINIMAX Algorithm.. Function MINIMAX-DECISION (state) returns an operator For each op in OPERATORS[game] do VALUE [op] = MINIMAX-VALUE (APPLY (op, state), game) End Return the op with the highest VALUE [op] Function MINIMAX-VALUE (state, game) returns a utility value If TERMINAL-TEST (state) then Return UTILITY (state) Else If MAX is to move in state then Return the highest MINIMAX-VALUE of SUCCESSORS (state) Else Return the lowest MINIMAX-VALUE of SUCCESSORS (state)

13 1/21/2014University College of Engineering13 Properties of MINIMAX Complete: Yes, if tree is finite Optimal: Yes, against an optimal opponent. Time: O(b d ) (depth- first exploration) Space: O(bd) (depth- first exploration) b: Branching Factor d: Depth of Search Tree Time constraints does not allow the tree to be fully explored. How to get the utility values without exploring search tree up to leaves?

14 1/21/2014University College of Engineering14 Evaluation Function Evaluation function or static evaluator is used to evaluate the goodness of a game position. The zero-sum assumption allows us to use a single evaluation function to describe the goodness of a position with respect to both players. E.g. f(n) is the evaluation function of the position n. Then, – f(n) >> 0: position n is good for me and bad for you – f(n) << 0: position n is bad for me and good for you – f(n) near 0: position n is a neutral position

15 1/21/2014University College of Engineering15 Evaluation Function cont.. One of the evaluation function for Tic- Tac- Toe can be defined as: f( n) = [# of 3- lengths open for me] - [# of 3- lengths open for you] where a 3- length is a complete row, column, or diagonal

16 1/21/2014University College of Engineering16 Alpha Beta Pruning At each MAX node n, alpha(n) = maximum value found so far At each MIN node n, beta(n) = minimum value found so far

17 1/21/2014University College of Engineering17 Alpha Beta Pruning Cont.. Ref: www.uni-koblenz.de/~beckert/ Lehre/Einfuehrung-KI-SS2003/folien06.pdf

18 1/21/2014University College of Engineering18 Alpha Beta Pruning Cont.. Ref: www.uni-koblenz.de/~beckert/ Lehre/Einfuehrung-KI-SS2003/folien06.pdf

19 1/21/2014University College of Engineering19 Alpha Beta Pruning Cont.. Ref: www.uni-koblenz.de/~beckert/ Lehre/Einfuehrung-KI-SS2003/folien06.pdf

20 1/21/2014University College of Engineering20 Alpha Beta Pruning Cont.. Ref: www.uni-koblenz.de/~beckert/ Lehre/Einfuehrung-KI-SS2003/folien06.pdf

21 1/21/2014University College of Engineering21 Alpha Beta Pruning Cont.. Ref: www.uni-koblenz.de/~beckert/ Lehre/Einfuehrung-KI-SS2003/folien06.pdf

22 1/21/2014University College of Engineering22 Effectiveness of Alpha Beta Pruning. Worst-Case branches are ordered so that no pruning takes place alpha-beta gives no improvement over exhaustive search Best-Case each players best move is the left-most alternative (i.e., evaluated first) In practice often get O(b (d/2) ) rather than O(b d ) e.g., in chess go from b ~ 35 to b ~ 6 this permits much deeper search in the same amount of time makes computer chess competitive with humans!

23 1/21/2014University College of Engineering23 Iterative Deepening Search. IDS runs alpha-beta search with an increasing depth- limit The inner loop is a full alpha-beta search with a specified depth limit m When the clock runs out we use the solution found at the previous depth limit

24 1/21/2014University College of Engineering24 Applications Entertainment Economics Military Political Science

25 1/21/2014University College of Engineering25 Conclusion Game theory remained the most interesting part of AI from the birth of AI. Game theory is very vast and interesting topic. It mainly deals with working in the constrained areas to get the desired results. They illustrate several important points about Artificial Intelligence like perfection can not be attained but we can approximate to it.

26 1/21/2014University College of Engineering26 References 'Artificial Intelligence: A Modern Approach' (Second Edition) by Stuart Russell and Peter Norvig, Prentice Hall Pub. http://www.cs.umbc.edu/471/notes/pdf/games.pdf http://l3d.cs.colorado.edu/courses/AI-96/sept23glecture.pdf Theodore L. Turocy, Texas A&M University, Bernhard von Stengel, London School of Economics "Game Theory" CDAM Research Report Oct. 2001 http://www.uni-koblenz.de/~beckert/Lehre/Einfuehrung-KI- SS2003/folien06.pdf http://ai-depot.com/LogicGames/MiniMax.html

27 Thank you……


Download ppt "Seminar on Game Playing in AI. 1/21/2014University College of Engineering2 Definition…. Game Game playing is a search problem defined by: 1. Initial state."

Similar presentations


Ads by Google