General Game Playing

Only available on StudyMode
  • Download(s) : 24
  • Published : April 20, 2013
Open Document
Text Preview
General Game Playing

Lecture 1

Introduction

Michael Genesereth

Spring 2011

Game Playing
Human Game Playing • Intellectual Activity • Skill Comparison

Computer Game Playing • Testbed for AI • Limitations
2/42

1

General Game Playing
General Game Players are systems able to play arbitrary games effectively based solely on formal descriptions supplied at “runtime”. Translation: They don’t know the rules until the game starts.

3/42

Technology
Unlike specialized game players (e.g. Deep Blue), they do not use algorithms designed in advance for specific games. Artificial Intelligence Technologies knowledge representation deduction, reformulation, induction, … rational behavior w/ uncertainty, resource bounds

4/42

2

Variety of Games

5/42

Chess

6/42

3

Knight-Zone Chess

7/42

Bughouse Chess

8/42

4

Other Games

9/42

Single Player “Games”

a b c
10/42

5

Annual GGP Competition
Annual GGP Competition Held at AAAI or IJCAI conference Administered by Stanford (Stanford folks not eligible to participate) Reward 2005 - Cluneplayer (Jim Clune) 2006 - Fluxplayer (Stephan Schiffel, Michael Thielscher) 2007 - Cadiaplayer (Yngve Bjornsson, Hilmar Finsson) 2008 - Cadiaplayer (Yngve Bjornsson, Hilmar Finsson) 2010 - Ary (Jean Mehat) 11/42

GGP-05 Winner Jim Clune

12/42

6

GGP-06 Winners

13/42

Winners

14/42

7

Other Games, Other Winners

15/42

Competition at GGP-2011
Qualification Round via the web Tournaments in June Semi-Final Round at AAAI Tournament style (one full day) Final Round at AAAI Top two competitors head to head Winner take all (glory + chance to …)

16/42

8

Carbon versus Silicon

Come cheer on your favorite. The battle continues at GGP-2011. 17/42

Chris Welty

18/42

9

General Game Description

19/42

Single Player Game as a State Machine
s2
a b b a

s5
a d

b

s8
a a b

d

s1
c

s3
a

s6
c

b

s9
a

s11
b

a

s4

b

s7

a

s10

20/42

10

Composite Actions for Multiple Players
s2
aa ab ab aa

s5
aa

ab

s8
aa bb ab

ba

s1

s3
ab

bb

s6
ba

ab

s9
ba

s11

aa

bb

bb

s4

aa

s7

aa

s10

21/42

Direct Description
Since all of the games that we are considering are finite, it is possible in principle to communicate game information in the form of transition graphs. Problem:Size of description. Even though everything is finite, the graphs can be large. Solution: Compact Encoding

22/42

11

Tic-Tac-Toe
init(cell(1,1,b)) init(cell(1,2,b)) init(cell(1,3,b)) init(cell(2,1,b)) init(cell(2,2,b)) init(cell(2,3,b)) init(cell(3,1,b)) init(cell(3,2,b)) init(cell(3,3,b)) init(control(x)) legal(P,mark(X,Y)) :true(cell(X,Y,b)) & true(control(P)) legal(x,noop) :true(control(o)) legal(o,noop) :true(control(x)) next(cell(M,N,P)) :does(P,mark(M,N)) next(cell(M,N,Z)) :does(P,mark(M,N)) & true(cell(M,N,Z)) & Z#b column(N,P) :true(cell(1,N,P)) next(cell(M,N,b)) :true(cell(2,N,P)) does(P,mark(J,K)) & true(cell(3,N,P)) true(cell(M,N,b)) & (M#J | N#K) diagonal(P) :true(cell(1,1,P)) next(control(x)) :true(cell(2,2,P)) true(control(o)) true(cell(3,3,P)) next(control(o)) :true(control(x)) row(M,P) :true(cell(M,1,P)) & true(cell(M,2,P)) & true(cell(M,3,P))

& &

& &

diagonal(P) :true(cell(1,3,P)) & true(cell(2,2,P)) & true(cell(3,1,P)) line(P) :- row(M,P) line(P) :- column(N,P) line(P) :- diagonal(P) open :- true(cell(M,N,b)) draw :- ~line(x) & ~line(o)

terminal :- line(P) terminal :- ~open goal(x,100) :- line(x) goal(x,50) :- draw goal(x,0) :- line(o) goal(o,100) :- line(o) goal(o,50) :- draw goal(o,0) :- line(x)

23/42

No Built-in Assumptions
What we see:
next(cell(M,N,x)) :does(white,mark(M,N)) & true(cell(M,N,b))

What the player sees:
next(welcoul(M,N,himenoing)) :does(himenoing,dukepse(M,N)) & true(welcoul(M,N,lorenchise))

24/42

12

Game Management

25/42

Game Manager...
tracking img