SlideShare a Scribd company logo
1 of 4
Download to read offline
Game Playing and AI
•Games are well-defined problems that are generally
interpreted as requiring intelligence to play well.

•Introduces uncertainty since opponents moves can not be
determined in advance.

•Search spaces can be very large.
For chess:

Game Playing

-Branching factor: 35
-Depth: 50 moves each player
-Search tree: 35100 nodes (~1040 legal positions)
•Despite this, human players do quite well without doing
much explicit search. They seem to rely on remembering
many patterns.

•Good test domain for search methods and development of
pruning methods that ignore portions of the search tree that
do not affect the outcome.

1

2

Game Playing Problem

Sample Game Tree (Tic-Tac-Toe)

•Instance of the general search problem.
MAX (X)

•States where the game has ended are called terminal
states.
X

X

X

MIN (O)

X

X

X

•A utility (payoff) function determines the value of terminal
states, e.g. win=+1, draw=0, lose=-1.

X O

X

X O X

X O
X

O

MAX (X)

X
O

...

X O
X

...

•In two-player games, assume one is called MAX (tries to
maximize utility) and one is called MIN (tries to minimize
utility).

MIN (O)

...

...

...

...

X O X
O X
O

X O X
O O X
X X O

X O X
X
X O O

...

−1

0

+1

•In the search tree, first layer is move by MAX, next layer by
MIN, and alternate to terminal states.
TERMINAL

•Each layer in the search is called a ply.

3

X

Utility

4

X

X
Minimax Algorithm
•General method for determining optimal move.

Minimax Computation
3

MAX

A1

•Generate complete game tree down to terminal states.
•Compute utility of each node bottom up from leaves toward root.
•At each MAX node, pick the move with maximum utility.

A3

A2

3

MIN
A 11

3

2
A 21

A 13

A 12

12

8

4

A 31

A 22 A 23

2

2

6

A 32

14

A 33

5

2

•Can be performed using a depth-first search
•At each MIN node, pick the move with minimum utility
(assumes opponent always acts correctly to minimize utility).

•When reach the root, optimal move is determined.

function MINIMAX-DECISION(game) returns an operator
for each op in OPERATORS[game] do
VALUE[op] MINIMAX-VALUE(APPLY(op, game), game)
end
return the op with the highest VALUE[op]
function MINIMAX-VALUE(state, game) returns a utility value
if TERMINAL-TEST[game](state) then
return UTILITY[game](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)

5

6

Imperfect Decisions

Determining Cutoff

•Generating the complete game tree for all but the simplest

•Search to a uniform depth (ply) d.

games is intractable.

•Use iterative deepening to continue search to deeper levels
•Instead, cut off search at some nodes and estimate

until time runs out (anytime algorithm).

expected utility using a heuristic evaluation function.

•Could end in states that are very dynamic (not quiesent) in
•Ideally, a heuristic measures the probability that MAX will

which evaluation could change quickly, as in (d) below.

win given a position characterized by a given set of
features.

•Sample chess evaluation function based on “material
advantage:” pawn=1, knight/bishop=3, rook=5, queen=9

•An example of a weighted linear function:

(a) White to move

(b) Black to move

Fairly even

White slightly better

w1 f 1 + w2 f 2 + … + wn f n

(d) Black to move

(c) White to move

White about to lose

Black winning

7

8
Determining Cutoff (cont)

Alpha-Beta Pruning

•Continue quiescence search at dynamic states to improve
utility estimate.

•Frequently, large parts of the search space are irrelevant to
the final decision and can be pruned.

•Horizon problem: Inevitable problems can be pushed over
the search boundary.

•No need to explore options that are already definitely worse
•Example: Delay inevitable queening move by pawn by

than the current best option.

exploring checking moves.
3

MAX

A1
3

MIN
A 11

3

A 12

12

A3

A2
<=2
A 21

A 13

8

A 22 A 23

2

2
A 31

A 32

14

A 33

5

2

Black to move

9

10

Alpha-Beta General Principle

Alpha-Beta Algorithm

•Consider a node n where it is Player’s choice of moving to
that node. If Player has a better choice m at either the
parent node of n or at any choice point further up, then n
will never be reached in actual play.

if CUTOFF-TEST(state) then return EVAL(state)
for each s in SUCCESSORS(state) do
MAX( , MIN-VALUE(s, game, , ))
if
then return
end
return

Player

Opponent

function MAX-VALUE(state, game, , ) returns the minimax value of state
inputs: state, current state in game
game, game description
, the best score for MAX along the path to state
, the best score for MIN along the path to state

m

..
..
..

function MIN-VALUE(state, game, , ) returns the minimax value of state

Player
Opponent

n

if CUTOFF-TEST(state) then return EVAL(state)
for each s in SUCCESSORS(state) do
MIN( , MAX-VALUE(s, game, , ))
then return
if
end
return

•Maintain two parameters in depth-first search, α, the value
of the best (highest) value found so far for MAX along any
path; and β, the best (lowest) value found along any path for
MIN. Prune a subtree once it is known to be worse than the
current α or β.

11

12
Effectiveness of Alpha-Beta
•Amount of pruning depends on the order in which siblings

State of the Art Game Programs

•In optimal case where the best options are explored first,

•Chess: DeepBlue beat world champion
-Customized parallel hardware
-Highly-tuned evaluation function developed with expert
-Comprehensive opening and end-game databases

•With successors randomly ordered, assymptotic bound is

•Checkers:
-Samuel’s learning program eventually beat developer.
-Chinook is world champion, previous champ held title for

are explored.

time complexity reduces from O(bd) to O(bd/2), a dramatic
improvement. But entails knowledge of best move in
advance!

O((b/logb)d) which is not much help but only accurate for
b>1000. More realistic expectation is something like
O(b3d/4).

40 years had to withdraw for health reasons.

•Othello: Programs best players (e.g. Iago).
•Fairly simple ordering heuristic can produce closer to
optimal results than random results (e.g. check captures &
threats first).

•Theoretical analysis makes unrealistic assumptions such
as utility values distributed randomly across leaves and
therefore experimental results are necessary.

13

•Backgammon: Neural-net learning program TDGammon
one of world’s top 3 players.

•Go: Branching factor of ~360 kills most search methods.
Best programs still mediocre.

17

More Related Content

Viewers also liked

Viewers also liked (7)

Lecture3
Lecture3Lecture3
Lecture3
 
Graphtheory
GraphtheoryGraphtheory
Graphtheory
 
Matching
MatchingMatching
Matching
 
Summer+training 2
Summer+training 2Summer+training 2
Summer+training 2
 
Comerv3 1-12(2)
Comerv3 1-12(2)Comerv3 1-12(2)
Comerv3 1-12(2)
 
Math350 hw2solutions
Math350 hw2solutionsMath350 hw2solutions
Math350 hw2solutions
 
Summer2014 internship
Summer2014 internshipSummer2014 internship
Summer2014 internship
 

Similar to Game Playing and AI Problems

GamePlaying.ppt
GamePlaying.pptGamePlaying.ppt
GamePlaying.pptVihaanN2
 
Topic - 6 (Game Playing).ppt
Topic - 6 (Game Playing).pptTopic - 6 (Game Playing).ppt
Topic - 6 (Game Playing).pptSabrinaShanta2
 
It is an artificial document, please. regarding Ai topics
It is an artificial document, please. regarding Ai topicsIt is an artificial document, please. regarding Ai topics
It is an artificial document, please. regarding Ai topicschougulesup79
 
ch_5 Game playing Min max and Alpha Beta pruning.ppt
ch_5 Game playing Min max and Alpha Beta pruning.pptch_5 Game playing Min max and Alpha Beta pruning.ppt
ch_5 Game playing Min max and Alpha Beta pruning.pptSanGeet25
 
21CSC206T_UNIT3.pptx.pdf ARITIFICIAL INTELLIGENCE
21CSC206T_UNIT3.pptx.pdf ARITIFICIAL INTELLIGENCE21CSC206T_UNIT3.pptx.pdf ARITIFICIAL INTELLIGENCE
21CSC206T_UNIT3.pptx.pdf ARITIFICIAL INTELLIGENCEudayvanand
 
chess-algorithms-theory-and-practice_ver2017.pdf
chess-algorithms-theory-and-practice_ver2017.pdfchess-algorithms-theory-and-practice_ver2017.pdf
chess-algorithms-theory-and-practice_ver2017.pdfrajdipdas12
 
AI subject - Game Theory and cps ppt pptx
AI subject  - Game Theory and cps ppt pptxAI subject  - Game Theory and cps ppt pptx
AI subject - Game Theory and cps ppt pptxnizmishaik1
 
CptS 440/ 540 AI.pptx
CptS 440/ 540 AI.pptxCptS 440/ 540 AI.pptx
CptS 440/ 540 AI.pptxDrDejaVu2
 
Adversarial search
Adversarial searchAdversarial search
Adversarial searchDheerendra k
 

Similar to Game Playing and AI Problems (20)

GamePlaying.ppt
GamePlaying.pptGamePlaying.ppt
GamePlaying.ppt
 
Games
GamesGames
Games
 
Topic - 6 (Game Playing).ppt
Topic - 6 (Game Playing).pptTopic - 6 (Game Playing).ppt
Topic - 6 (Game Playing).ppt
 
Game playing.ppt
Game playing.pptGame playing.ppt
Game playing.ppt
 
It is an artificial document, please. regarding Ai topics
It is an artificial document, please. regarding Ai topicsIt is an artificial document, please. regarding Ai topics
It is an artificial document, please. regarding Ai topics
 
cai
caicai
cai
 
Two player games
Two player gamesTwo player games
Two player games
 
ch_5 Game playing Min max and Alpha Beta pruning.ppt
ch_5 Game playing Min max and Alpha Beta pruning.pptch_5 Game playing Min max and Alpha Beta pruning.ppt
ch_5 Game playing Min max and Alpha Beta pruning.ppt
 
Capgemini 1
Capgemini 1Capgemini 1
Capgemini 1
 
21CSC206T_UNIT3.pptx.pdf ARITIFICIAL INTELLIGENCE
21CSC206T_UNIT3.pptx.pdf ARITIFICIAL INTELLIGENCE21CSC206T_UNIT3.pptx.pdf ARITIFICIAL INTELLIGENCE
21CSC206T_UNIT3.pptx.pdf ARITIFICIAL INTELLIGENCE
 
chess-algorithms-theory-and-practice_ver2017.pdf
chess-algorithms-theory-and-practice_ver2017.pdfchess-algorithms-theory-and-practice_ver2017.pdf
chess-algorithms-theory-and-practice_ver2017.pdf
 
1.game
1.game1.game
1.game
 
AI subject - Game Theory and cps ppt pptx
AI subject  - Game Theory and cps ppt pptxAI subject  - Game Theory and cps ppt pptx
AI subject - Game Theory and cps ppt pptx
 
l3.pptx
l3.pptxl3.pptx
l3.pptx
 
CptS 440/ 540 AI.pptx
CptS 440/ 540 AI.pptxCptS 440/ 540 AI.pptx
CptS 440/ 540 AI.pptx
 
Adversarial search
Adversarial searchAdversarial search
Adversarial search
 
Adversarial search
Adversarial searchAdversarial search
Adversarial search
 
Ai
AiAi
Ai
 
AI.ppt
AI.pptAI.ppt
AI.ppt
 
AI_unit3.pptx
AI_unit3.pptxAI_unit3.pptx
AI_unit3.pptx
 

More from Praveen Kumar

More from Praveen Kumar (20)

Summer+training
Summer+trainingSummer+training
Summer+training
 
Solutions1.1
Solutions1.1Solutions1.1
Solutions1.1
 
Slides15
Slides15Slides15
Slides15
 
Scribed lec8
Scribed lec8Scribed lec8
Scribed lec8
 
Scholarship sc st
Scholarship sc stScholarship sc st
Scholarship sc st
 
Networks 2
Networks 2Networks 2
Networks 2
 
Mithfh lecturenotes 9
Mithfh lecturenotes 9Mithfh lecturenotes 9
Mithfh lecturenotes 9
 
Mcs student
Mcs studentMcs student
Mcs student
 
Line circle draw
Line circle drawLine circle draw
Line circle draw
 
Lec2 state space
Lec2 state spaceLec2 state space
Lec2 state space
 
Graphics display-devicesmod-1
Graphics display-devicesmod-1Graphics display-devicesmod-1
Graphics display-devicesmod-1
 
Dda line-algorithm
Dda line-algorithmDda line-algorithm
Dda line-algorithm
 
Cs344 lect15-robotic-knowledge-inferencing-prolog-11feb08
Cs344 lect15-robotic-knowledge-inferencing-prolog-11feb08Cs344 lect15-robotic-knowledge-inferencing-prolog-11feb08
Cs344 lect15-robotic-knowledge-inferencing-prolog-11feb08
 
Cse3461.c.signal encoding.09 04-2012
Cse3461.c.signal encoding.09 04-2012Cse3461.c.signal encoding.09 04-2012
Cse3461.c.signal encoding.09 04-2012
 
Cimplementation
CimplementationCimplementation
Cimplementation
 
Artificial intelligence lecturenotes.v.1.0.4
Artificial intelligence lecturenotes.v.1.0.4Artificial intelligence lecturenotes.v.1.0.4
Artificial intelligence lecturenotes.v.1.0.4
 
Ai ch2
Ai ch2Ai ch2
Ai ch2
 
Aipapercpt
AipapercptAipapercpt
Aipapercpt
 
01127694
0112769401127694
01127694
 
445 colouring0
445 colouring0445 colouring0
445 colouring0
 

Recently uploaded

Amil Baba in karachi Kala jadu Expert Amil baba Black magic Specialist in Isl...
Amil Baba in karachi Kala jadu Expert Amil baba Black magic Specialist in Isl...Amil Baba in karachi Kala jadu Expert Amil baba Black magic Specialist in Isl...
Amil Baba in karachi Kala jadu Expert Amil baba Black magic Specialist in Isl...Amil Baba Company
 
Authentic No 1 Amil Baba In Pakistan Authentic No 1 Amil Baba In Karachi No 1...
Authentic No 1 Amil Baba In Pakistan Authentic No 1 Amil Baba In Karachi No 1...Authentic No 1 Amil Baba In Pakistan Authentic No 1 Amil Baba In Karachi No 1...
Authentic No 1 Amil Baba In Pakistan Authentic No 1 Amil Baba In Karachi No 1...First NO1 World Amil baba in Faisalabad
 
QUIZ BOLLYWOOD ( weekly quiz ) - SJU quizzers
QUIZ BOLLYWOOD ( weekly quiz ) - SJU quizzersQUIZ BOLLYWOOD ( weekly quiz ) - SJU quizzers
QUIZ BOLLYWOOD ( weekly quiz ) - SJU quizzersSJU Quizzers
 
VIP Call Girls In Goa 7028418221 Call Girls In Baga Beach Escorts Service
VIP Call Girls In Goa 7028418221 Call Girls In Baga Beach Escorts ServiceVIP Call Girls In Goa 7028418221 Call Girls In Baga Beach Escorts Service
VIP Call Girls In Goa 7028418221 Call Girls In Baga Beach Escorts ServiceApsara Of India
 
Call Girls Prahlad Nagar 9920738301 Ridhima Hire Me Full Night
Call Girls Prahlad Nagar 9920738301 Ridhima Hire Me Full NightCall Girls Prahlad Nagar 9920738301 Ridhima Hire Me Full Night
Call Girls Prahlad Nagar 9920738301 Ridhima Hire Me Full Nightssuser7cb4ff
 
Russian Call Girls juhu MUMBAI 00000000000000
Russian Call Girls juhu MUMBAI 00000000000000Russian Call Girls juhu MUMBAI 00000000000000
Russian Call Girls juhu MUMBAI 00000000000000Call Girls Mumbai
 
Call Girl Contact Number Andheri WhatsApp:+91-9833363713
Call Girl Contact Number Andheri WhatsApp:+91-9833363713Call Girl Contact Number Andheri WhatsApp:+91-9833363713
Call Girl Contact Number Andheri WhatsApp:+91-9833363713Sonam Pathan
 
Hifi Laxmi Nagar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ D...
Hifi Laxmi Nagar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ D...Hifi Laxmi Nagar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ D...
Hifi Laxmi Nagar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ D...srsj9000
 
Call Girls Sanand 7397865700 Ridhima Hire Me Full Night
Call Girls Sanand 7397865700 Ridhima Hire Me Full NightCall Girls Sanand 7397865700 Ridhima Hire Me Full Night
Call Girls Sanand 7397865700 Ridhima Hire Me Full Nightssuser7cb4ff
 
Call Girls Near Taurus Sarovar Portico Hotel New Delhi 9873777170
Call Girls Near Taurus Sarovar Portico Hotel New Delhi 9873777170Call Girls Near Taurus Sarovar Portico Hotel New Delhi 9873777170
Call Girls Near Taurus Sarovar Portico Hotel New Delhi 9873777170Sonam Pathan
 
Call Girls Near Delhi Pride Hotel New Delhi 9873777170
Call Girls Near Delhi Pride Hotel New Delhi 9873777170Call Girls Near Delhi Pride Hotel New Delhi 9873777170
Call Girls Near Delhi Pride Hotel New Delhi 9873777170Sonam Pathan
 
The Fine Line Between Honest and Evil Comics by Salty Vixen
The Fine Line Between Honest and Evil Comics by Salty VixenThe Fine Line Between Honest and Evil Comics by Salty Vixen
The Fine Line Between Honest and Evil Comics by Salty VixenSalty Vixen Stories & More
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377087607FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377087607dollysharma2066
 
定制(UofT毕业证书)加拿大多伦多大学毕业证成绩单原版一比一
定制(UofT毕业证书)加拿大多伦多大学毕业证成绩单原版一比一定制(UofT毕业证书)加拿大多伦多大学毕业证成绩单原版一比一
定制(UofT毕业证书)加拿大多伦多大学毕业证成绩单原版一比一lvtagr7
 
Vip Udaipur Call Girls 9602870969 Dabok Airport Udaipur Escorts Service
Vip Udaipur Call Girls 9602870969 Dabok Airport Udaipur Escorts ServiceVip Udaipur Call Girls 9602870969 Dabok Airport Udaipur Escorts Service
Vip Udaipur Call Girls 9602870969 Dabok Airport Udaipur Escorts ServiceApsara Of India
 
Call Girls SG Highway 7397865700 Ridhima Hire Me Full Night
Call Girls SG Highway 7397865700 Ridhima Hire Me Full NightCall Girls SG Highway 7397865700 Ridhima Hire Me Full Night
Call Girls SG Highway 7397865700 Ridhima Hire Me Full Nightssuser7cb4ff
 
Taken Pilot Episode Story pitch Document
Taken Pilot Episode Story pitch DocumentTaken Pilot Episode Story pitch Document
Taken Pilot Episode Story pitch Documentf4ssvxpz62
 
Call Girls in Faridabad 9000000000 Faridabad Escorts Service
Call Girls in Faridabad 9000000000 Faridabad Escorts ServiceCall Girls in Faridabad 9000000000 Faridabad Escorts Service
Call Girls in Faridabad 9000000000 Faridabad Escorts ServiceTina Ji
 
Amil Baba in Pakistan Kala jadu Expert Amil baba Black magic Specialist in Is...
Amil Baba in Pakistan Kala jadu Expert Amil baba Black magic Specialist in Is...Amil Baba in Pakistan Kala jadu Expert Amil baba Black magic Specialist in Is...
Amil Baba in Pakistan Kala jadu Expert Amil baba Black magic Specialist in Is...Amil Baba Company
 

Recently uploaded (20)

Amil Baba in karachi Kala jadu Expert Amil baba Black magic Specialist in Isl...
Amil Baba in karachi Kala jadu Expert Amil baba Black magic Specialist in Isl...Amil Baba in karachi Kala jadu Expert Amil baba Black magic Specialist in Isl...
Amil Baba in karachi Kala jadu Expert Amil baba Black magic Specialist in Isl...
 
Authentic No 1 Amil Baba In Pakistan Authentic No 1 Amil Baba In Karachi No 1...
Authentic No 1 Amil Baba In Pakistan Authentic No 1 Amil Baba In Karachi No 1...Authentic No 1 Amil Baba In Pakistan Authentic No 1 Amil Baba In Karachi No 1...
Authentic No 1 Amil Baba In Pakistan Authentic No 1 Amil Baba In Karachi No 1...
 
QUIZ BOLLYWOOD ( weekly quiz ) - SJU quizzers
QUIZ BOLLYWOOD ( weekly quiz ) - SJU quizzersQUIZ BOLLYWOOD ( weekly quiz ) - SJU quizzers
QUIZ BOLLYWOOD ( weekly quiz ) - SJU quizzers
 
VIP Call Girls In Goa 7028418221 Call Girls In Baga Beach Escorts Service
VIP Call Girls In Goa 7028418221 Call Girls In Baga Beach Escorts ServiceVIP Call Girls In Goa 7028418221 Call Girls In Baga Beach Escorts Service
VIP Call Girls In Goa 7028418221 Call Girls In Baga Beach Escorts Service
 
Call Girls Prahlad Nagar 9920738301 Ridhima Hire Me Full Night
Call Girls Prahlad Nagar 9920738301 Ridhima Hire Me Full NightCall Girls Prahlad Nagar 9920738301 Ridhima Hire Me Full Night
Call Girls Prahlad Nagar 9920738301 Ridhima Hire Me Full Night
 
Russian Call Girls juhu MUMBAI 00000000000000
Russian Call Girls juhu MUMBAI 00000000000000Russian Call Girls juhu MUMBAI 00000000000000
Russian Call Girls juhu MUMBAI 00000000000000
 
Call Girl Contact Number Andheri WhatsApp:+91-9833363713
Call Girl Contact Number Andheri WhatsApp:+91-9833363713Call Girl Contact Number Andheri WhatsApp:+91-9833363713
Call Girl Contact Number Andheri WhatsApp:+91-9833363713
 
Hifi Laxmi Nagar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ D...
Hifi Laxmi Nagar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ D...Hifi Laxmi Nagar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ D...
Hifi Laxmi Nagar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ D...
 
Call Girls Sanand 7397865700 Ridhima Hire Me Full Night
Call Girls Sanand 7397865700 Ridhima Hire Me Full NightCall Girls Sanand 7397865700 Ridhima Hire Me Full Night
Call Girls Sanand 7397865700 Ridhima Hire Me Full Night
 
Call Girls Near Taurus Sarovar Portico Hotel New Delhi 9873777170
Call Girls Near Taurus Sarovar Portico Hotel New Delhi 9873777170Call Girls Near Taurus Sarovar Portico Hotel New Delhi 9873777170
Call Girls Near Taurus Sarovar Portico Hotel New Delhi 9873777170
 
Call Girls Near Delhi Pride Hotel New Delhi 9873777170
Call Girls Near Delhi Pride Hotel New Delhi 9873777170Call Girls Near Delhi Pride Hotel New Delhi 9873777170
Call Girls Near Delhi Pride Hotel New Delhi 9873777170
 
The Fine Line Between Honest and Evil Comics by Salty Vixen
The Fine Line Between Honest and Evil Comics by Salty VixenThe Fine Line Between Honest and Evil Comics by Salty Vixen
The Fine Line Between Honest and Evil Comics by Salty Vixen
 
young call girls in Hari Nagar,🔝 9953056974 🔝 escort Service
young call girls in Hari Nagar,🔝 9953056974 🔝 escort Serviceyoung call girls in Hari Nagar,🔝 9953056974 🔝 escort Service
young call girls in Hari Nagar,🔝 9953056974 🔝 escort Service
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377087607FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377087607
 
定制(UofT毕业证书)加拿大多伦多大学毕业证成绩单原版一比一
定制(UofT毕业证书)加拿大多伦多大学毕业证成绩单原版一比一定制(UofT毕业证书)加拿大多伦多大学毕业证成绩单原版一比一
定制(UofT毕业证书)加拿大多伦多大学毕业证成绩单原版一比一
 
Vip Udaipur Call Girls 9602870969 Dabok Airport Udaipur Escorts Service
Vip Udaipur Call Girls 9602870969 Dabok Airport Udaipur Escorts ServiceVip Udaipur Call Girls 9602870969 Dabok Airport Udaipur Escorts Service
Vip Udaipur Call Girls 9602870969 Dabok Airport Udaipur Escorts Service
 
Call Girls SG Highway 7397865700 Ridhima Hire Me Full Night
Call Girls SG Highway 7397865700 Ridhima Hire Me Full NightCall Girls SG Highway 7397865700 Ridhima Hire Me Full Night
Call Girls SG Highway 7397865700 Ridhima Hire Me Full Night
 
Taken Pilot Episode Story pitch Document
Taken Pilot Episode Story pitch DocumentTaken Pilot Episode Story pitch Document
Taken Pilot Episode Story pitch Document
 
Call Girls in Faridabad 9000000000 Faridabad Escorts Service
Call Girls in Faridabad 9000000000 Faridabad Escorts ServiceCall Girls in Faridabad 9000000000 Faridabad Escorts Service
Call Girls in Faridabad 9000000000 Faridabad Escorts Service
 
Amil Baba in Pakistan Kala jadu Expert Amil baba Black magic Specialist in Is...
Amil Baba in Pakistan Kala jadu Expert Amil baba Black magic Specialist in Is...Amil Baba in Pakistan Kala jadu Expert Amil baba Black magic Specialist in Is...
Amil Baba in Pakistan Kala jadu Expert Amil baba Black magic Specialist in Is...
 

Game Playing and AI Problems

  • 1. Game Playing and AI •Games are well-defined problems that are generally interpreted as requiring intelligence to play well. •Introduces uncertainty since opponents moves can not be determined in advance. •Search spaces can be very large. For chess: Game Playing -Branching factor: 35 -Depth: 50 moves each player -Search tree: 35100 nodes (~1040 legal positions) •Despite this, human players do quite well without doing much explicit search. They seem to rely on remembering many patterns. •Good test domain for search methods and development of pruning methods that ignore portions of the search tree that do not affect the outcome. 1 2 Game Playing Problem Sample Game Tree (Tic-Tac-Toe) •Instance of the general search problem. MAX (X) •States where the game has ended are called terminal states. X X X MIN (O) X X X •A utility (payoff) function determines the value of terminal states, e.g. win=+1, draw=0, lose=-1. X O X X O X X O X O MAX (X) X O ... X O X ... •In two-player games, assume one is called MAX (tries to maximize utility) and one is called MIN (tries to minimize utility). MIN (O) ... ... ... ... X O X O X O X O X O O X X X O X O X X X O O ... −1 0 +1 •In the search tree, first layer is move by MAX, next layer by MIN, and alternate to terminal states. TERMINAL •Each layer in the search is called a ply. 3 X Utility 4 X X
  • 2. Minimax Algorithm •General method for determining optimal move. Minimax Computation 3 MAX A1 •Generate complete game tree down to terminal states. •Compute utility of each node bottom up from leaves toward root. •At each MAX node, pick the move with maximum utility. A3 A2 3 MIN A 11 3 2 A 21 A 13 A 12 12 8 4 A 31 A 22 A 23 2 2 6 A 32 14 A 33 5 2 •Can be performed using a depth-first search •At each MIN node, pick the move with minimum utility (assumes opponent always acts correctly to minimize utility). •When reach the root, optimal move is determined. function MINIMAX-DECISION(game) returns an operator for each op in OPERATORS[game] do VALUE[op] MINIMAX-VALUE(APPLY(op, game), game) end return the op with the highest VALUE[op] function MINIMAX-VALUE(state, game) returns a utility value if TERMINAL-TEST[game](state) then return UTILITY[game](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) 5 6 Imperfect Decisions Determining Cutoff •Generating the complete game tree for all but the simplest •Search to a uniform depth (ply) d. games is intractable. •Use iterative deepening to continue search to deeper levels •Instead, cut off search at some nodes and estimate until time runs out (anytime algorithm). expected utility using a heuristic evaluation function. •Could end in states that are very dynamic (not quiesent) in •Ideally, a heuristic measures the probability that MAX will which evaluation could change quickly, as in (d) below. win given a position characterized by a given set of features. •Sample chess evaluation function based on “material advantage:” pawn=1, knight/bishop=3, rook=5, queen=9 •An example of a weighted linear function: (a) White to move (b) Black to move Fairly even White slightly better w1 f 1 + w2 f 2 + … + wn f n (d) Black to move (c) White to move White about to lose Black winning 7 8
  • 3. Determining Cutoff (cont) Alpha-Beta Pruning •Continue quiescence search at dynamic states to improve utility estimate. •Frequently, large parts of the search space are irrelevant to the final decision and can be pruned. •Horizon problem: Inevitable problems can be pushed over the search boundary. •No need to explore options that are already definitely worse •Example: Delay inevitable queening move by pawn by than the current best option. exploring checking moves. 3 MAX A1 3 MIN A 11 3 A 12 12 A3 A2 <=2 A 21 A 13 8 A 22 A 23 2 2 A 31 A 32 14 A 33 5 2 Black to move 9 10 Alpha-Beta General Principle Alpha-Beta Algorithm •Consider a node n where it is Player’s choice of moving to that node. If Player has a better choice m at either the parent node of n or at any choice point further up, then n will never be reached in actual play. if CUTOFF-TEST(state) then return EVAL(state) for each s in SUCCESSORS(state) do MAX( , MIN-VALUE(s, game, , )) if then return end return Player Opponent function MAX-VALUE(state, game, , ) returns the minimax value of state inputs: state, current state in game game, game description , the best score for MAX along the path to state , the best score for MIN along the path to state m .. .. .. function MIN-VALUE(state, game, , ) returns the minimax value of state Player Opponent n if CUTOFF-TEST(state) then return EVAL(state) for each s in SUCCESSORS(state) do MIN( , MAX-VALUE(s, game, , )) then return if end return •Maintain two parameters in depth-first search, α, the value of the best (highest) value found so far for MAX along any path; and β, the best (lowest) value found along any path for MIN. Prune a subtree once it is known to be worse than the current α or β. 11 12
  • 4. Effectiveness of Alpha-Beta •Amount of pruning depends on the order in which siblings State of the Art Game Programs •In optimal case where the best options are explored first, •Chess: DeepBlue beat world champion -Customized parallel hardware -Highly-tuned evaluation function developed with expert -Comprehensive opening and end-game databases •With successors randomly ordered, assymptotic bound is •Checkers: -Samuel’s learning program eventually beat developer. -Chinook is world champion, previous champ held title for are explored. time complexity reduces from O(bd) to O(bd/2), a dramatic improvement. But entails knowledge of best move in advance! O((b/logb)d) which is not much help but only accurate for b>1000. More realistic expectation is something like O(b3d/4). 40 years had to withdraw for health reasons. •Othello: Programs best players (e.g. Iago). •Fairly simple ordering heuristic can produce closer to optimal results than random results (e.g. check captures & threats first). •Theoretical analysis makes unrealistic assumptions such as utility values distributed randomly across leaves and therefore experimental results are necessary. 13 •Backgammon: Neural-net learning program TDGammon one of world’s top 3 players. •Go: Branching factor of ~360 kills most search methods. Best programs still mediocre. 17