game playing in ai
TRANSCRIPT
![Page 1: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/1.jpg)
04/07/23 School of Information Technology 1
Seminar on
Game Playing in AI
by:
Gaurav Phapale
05 IT 6010
![Page 2: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/2.jpg)
04/07/23 School of Information Technology 2
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
![Page 3: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/3.jpg)
04/07/23 School of Information Technology 3
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.
![Page 4: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/4.jpg)
04/07/23 School of Information Technology 4
Characteristics of game playing
• Unpredictable Opponent.
• Time Constraints.
![Page 5: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/5.jpg)
04/07/23 School of Information Technology 5
Typical structure of the game in AI
2- person game
Players alternate moves
Zero-sum game: one player’s loss is the other’s 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
![Page 6: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/6.jpg)
04/07/23 School of Information Technology 6
Game Tree
Tic – Tac – Toe Game Tree
Ref: www.uni-koblenz.de/~beckert/ Lehre/Einfuehrung-KI-SS2003/folien06.pdf
![Page 7: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/7.jpg)
04/07/23 School of Information Technology 7
MAX
![Page 8: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/8.jpg)
04/07/23 School of Information Technology 8
MAX cont..
![Page 9: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/9.jpg)
04/07/23 School of Information Technology 9
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.
![Page 10: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/10.jpg)
04/07/23 School of Information Technology 10
MINIMAX Tree..
Ref: www.uni-koblenz.de/~beckert/ Lehre/Einfuehrung-KI-SS2003/folien06.pdf
![Page 11: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/11.jpg)
04/07/23 School of Information Technology 11
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))}
![Page 12: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/12.jpg)
04/07/23 School of Information Technology 12
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)
![Page 13: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/13.jpg)
04/07/23 School of Information Technology 13
Properties of MINIMAXComplete: Yes, if tree is finite Optimal: Yes, against an optimal opponent. Time: O(bd) (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?
![Page 14: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/14.jpg)
04/07/23 School of Information Technology 14
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
![Page 15: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/15.jpg)
04/07/23 School of Information Technology 15
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
![Page 16: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/16.jpg)
04/07/23 School of Information Technology 16
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
![Page 17: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/17.jpg)
04/07/23 School of Information Technology 17
Alpha Beta Pruning Cont..
Ref: www.uni-koblenz.de/~beckert/ Lehre/Einfuehrung-KI-SS2003/folien06.pdf
![Page 18: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/18.jpg)
04/07/23 School of Information Technology 18
Alpha Beta Pruning Cont..
Ref: www.uni-koblenz.de/~beckert/ Lehre/Einfuehrung-KI-SS2003/folien06.pdf
![Page 19: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/19.jpg)
04/07/23 School of Information Technology 19
Alpha Beta Pruning Cont..
Ref: www.uni-koblenz.de/~beckert/ Lehre/Einfuehrung-KI-SS2003/folien06.pdf
![Page 20: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/20.jpg)
04/07/23 School of Information Technology 20
Alpha Beta Pruning Cont..
Ref: www.uni-koblenz.de/~beckert/ Lehre/Einfuehrung-KI-SS2003/folien06.pdf
![Page 21: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/21.jpg)
04/07/23 School of Information Technology 21
Alpha Beta Pruning Cont..
Ref: www.uni-koblenz.de/~beckert/ Lehre/Einfuehrung-KI-SS2003/folien06.pdf
![Page 22: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/22.jpg)
04/07/23 School of Information Technology 22
Effectiveness of Alpha Beta Pruning.
Worst-Casebranches are ordered so that no pruning takes placealpha-beta gives no improvement over exhaustive search
Best-Caseeach player’s best move is the left-most alternative (i.e., evaluated first)
In practice often get O(b(d/2)) rather than O(bd) 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!
![Page 23: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/23.jpg)
04/07/23 School of Information Technology 23
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
![Page 24: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/24.jpg)
04/07/23 School of Information Technology 24
Applications
Entertainment
Economics
Military
Political Science
![Page 25: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/25.jpg)
04/07/23 School of Information Technology 25
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.
![Page 26: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/26.jpg)
04/07/23 School of Information Technology 26
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
![Page 27: Game Playing in AI](https://reader033.vdocument.in/reader033/viewer/2022061106/54488416afaf9f41088b4af7/html5/thumbnails/27.jpg)
04/07/23 School of Information Technology 27
Thank you……