43
Introduction To A Simple Game Having Many Prospects Md. Asfak Mahamud [email protected] KAZ Software Ltd. Dhaka, Bangladesh Dated: March 09, 2010 - Arimaa Intuitively Simple. Intellectually Challenging

Arimaa

Embed Size (px)

DESCRIPTION

Seminar Slide.www.arimaa.org

Citation preview

Page 1: Arimaa

Introduction To A Simple Game Having Many Prospects

Md. Asfak [email protected]

KAZ Software Ltd.Dhaka, Bangladesh

Dated: March 09, 2010

- ArimaaIntuitively Simple. Intellectually Challenging

Page 2: Arimaa

2

Index

• What it is.• History.• Challenge.• Why this is hard.• Current status.• How I can participate.• How we can participate.• Conclusion.• References.

Page 3: Arimaa

3

Index

• What it is.• History.• Challenge.• Why this is hard.• Current status.• How I can participate.• How we can participate.• Conclusion.• References.

http://richardwiseman.files.wordpress.com/2009/05/question-mark3a.jpg

Page 4: Arimaa

4

What it is (1/4).

• Arimaa is a very deep strategy game with simple rules

– Playable with a standard chess set. – Easy to learn.

Chess --- Arimaa-------------------------------King ElephantQueen CamelRook HorseBishop DogKnight CatPawn Rabbit

Page 5: Arimaa

5

Page 6: Arimaa

6

What it is (3/4).

Rules: http://arimaa.com/arimaa/rules/ Online Gameroom: http://www.arimaa.com/arimaa/gameroom/ Puzzles: http://arimaa.com/arimaa/puzzles/list.cgi Match Rules: http://arimaa.com/arimaa/rules/matchRules.html Bot ladders: http://www.arimaa.com/arimaa/gameroom/botLadder.cgi Arimaa Notation: http://arimaa.com/arimaa/rules/notation.htm

Page 7: Arimaa

7

What it is (4/4).

• Rules are simple, intuitive and easy to learn.• Most anyone can learn to beat the computers with a little practice.• No possibility of draws; every match is settled with one of the players winning.• Equal winning chances for both players.• Computer cheating is not possible since humans are much better.• A yearly world championship tournament is held to determine the best human player.

David A. Wheeler Linux Security Consultant

http://www.dwheeler.com/blog/2004/

“Its rules are very simple, much simpler than chess -- kids can learn the rules in a few minutes. Yet with those simple rules you end up with

a very strategic and interesting game."

Page 8: Arimaa

8

Index

• What it is.• History.• Challenge.• Why this is hard.• Current status.• How I can participate.• How we can participate.• Conclusion.• References.

http://www.chess-theory.com/images_links/image_002.jpg

Page 9: Arimaa

9

History (1/10)

The Turk was a fake chess-playing machine constructed in the late 18th century inventedby Wolfgang von Kempelen.

From 1770 until its destruction by fire in 1854,it was exhibited by various owners as an automaton, though it was explained in the early 1820s as an elaborate hoax.

The Turk was in fact a mechanical illusion that allowed a human chess master hiding inside to operate the machine. With a skilled operator, the Turk won most of the games played during its demonstrations around

Europe and the Americas for nearly 84 years, playing and defeating many challengers including statesmen

such as Napoleon Bonaparte and Benjamin Franklin.

Arimaa history is rooted at that of Chess

Page 10: Arimaa

10

History (2/10)

Claude Shannon

Link: http://portal.acm.org/citation.cfm?id=67002

“Chess is generally considered to require ‘thinking’ for skilful play; a solution of this problem will force us either to admit the

possibility of a mechanized thinking or to further restrict our concept of ‘thinking’.”

“Shannon noted the theoretical existence of a perfect solution to Chess and the practical impossibility of finding it.”

Source: “ANALYSIS AND IMPLEMENTATION OF THE GAME ARIMAA” by Christ-Jan CoxUniversiteit Maastricht

Maastricht ICT Competence Centre Institute for Knowledge and Agent Technology

Maastricht, The Netherlands March 2006

Page 11: Arimaa

11

History (3/10)

Alan Turing

The "Turing" machine was described by Alan Turing in 1937.

Turing Machine = AlgorithmUniversal Turing Machine = Computer

1951, Alan Turing develops on paper the first program capable of playing a full game of chess. Its play is best described as “aimless”; it loses to weak players.

Page 12: Arimaa

12

History (4/10)

Given enough time and memory, any computer can run any algorithm.

Image source: http://www.credenda.net/efit/

So all that is left of computer science is building a faster computer, right?

This slide is partially built from the video•Arimaa Computer Science Lecture by Karl Juhnke (Fritzlein) at Bethel College

Page 13: Arimaa

13

History (5/10)

Game Algorithm #1: Tree

Chess game-tree complexity:

(2^5)^80 = 2^400 ≈ 10^120

Game Algorithm #2: Dictionary

1) Generate all positions with pointers to successor positions2) Mark terminal positions won/lost/drawn3) Loop through positions, marking won if any successor position is lost,

and lost if all successor positions are won4) If any positions were marked, goto 35) Mark all remaining positions drawn

Tic-tac-toe state-space complexity: 10^3

Chess state-space complexity:

More than 64!/(32!8!226) ≈ 10^43Actually ≈ 10^50

Game Algorithm #3: Tree + Evaluation

Shannon speculates:

Algorithm #3 is too slowImproved evaluation not enoughMust not search worthless branchesMust extend critical branches

Tic-tac-toe game-tree complexity: 10^5

This slide is partially built from the video•Arimaa Computer Science Lecture by Karl Juhnke (Fritzlein) at Bethel College

Page 14: Arimaa

14

History (6/10)

You can visit the IBM page : http://www.research.ibm.com/deepblue/home/html/b.shtml

The creation of Arimaa was inspired by the Deep Blue vs Gary Kasparov match in which the computer defeated the world chess champion.

Arimaa was created to show that humans can still outplay computers using a chess set and provide the

next challenge to the AI community.

Computer Chess

Time - Level60s – beginner70s – intermediate80s – grand master

Finally in 1997 …

Page 15: Arimaa

15

History (7/10)

“When will computer hardware match the human brain?” - 1997

http://www.transhumanist.com/volume1/moravec.htm

Hans MoravecRobotics Institute

Carnegie Mellon University

“At the present rate, computers suitable for humanlike robots will appear in the 2020s”

Page 16: Arimaa

16

History (8/10)

Marvin Minsky - Father of AI

2000 - "No one has tried to make a thinking machine… The bottom line is that we really haven't progressed too far toward a truly intelligent machine. We have collections of dumb specialists in small domains; the true majesty of general intelligence still awaits our attack. We have got to get back to the deepest questions of AI and general intelligence and quit wasting time on little projects that don't contribute to the main goal.“

[as interviewed in "Hal's Legacy", Edited by David Stork]

Source: http://mitpress.mit.edu/e-books/Hal/chap2/two4.htmlhttp://www.agiri.org/forum/index.php?showtopic=45

Page 17: Arimaa

17

History (9/10)

Omar Syed

Link: http://arimaa.com/arimaa/papers/030801ICGA/

Omar Syed was born in Hyderabad, India and moved with his family to the US when he was seven. He obtained his B.S. in Computer Engineering and a M.S. in Electronic Engineering both from Case Western Reserve University. His Masters Thesis focused on Neural Networks and Genetic Algorithms.

Current:Founder at Arimaa.comConsultant at 4You Net Services

Past:Principle Architect at Yahoo!Consultant at 4You Net ServicesComputer Engineer at NASA Glenn Research CenterComputer Engineer at NASAMember of Tech Staff at Raytheon

Aamir Syed

Aamir Syed is a student at Birchwood Elementary School.

He hopes to be a NASA Engineer someday so he can

build robots that explore other planets.

Page 18: Arimaa

18

History (10/10)

Bill Gates - Founder, Microsoft

2004 - "If you invent a breakthrough in artificial intelligence, so machines can learn, that is worth 10 Microsofts."

http://www.agiri.org/forum/index.php?showtopic=45

Page 19: Arimaa

19

Index

• What it is.• History.• Challenge.• Why this is hard.• Current status.• How I can participate.• How we can participate.• Conclusion.• References.

http://michaelhyatt.com/wp-content/uploads/2009/02/goal-setting-the-90-day-challenge.jpg

Page 20: Arimaa

20

Challenge

The first person, company or organization that develops a program which can defeat the top human Arimaa players in an official Arimaa challenge match before the year 2020 will win the Arimaa challenge prize.

The prize is currently $16,250 USD.

The official challenge match will be between the current best program and three selected human players.

To know more about the current challenge: http://arimaa.com/arimaa/challenge/2010/Challenge Match: Apr 4, 2010 to Apr 24, 2010

Page 21: Arimaa

21

Index

• What it is.• History.• Challenge.• Why this is hard.• Current status.• How I can participate.• How we can participate.• Conclusion.• References. http://farm1.static.flickr.com/120/299078131_507febc71a_m.jpg

Page 22: Arimaa

22

Why this is hard (1/6)“Human intelligence, refusing to be put on the back foot, is taking refuge in creative ingenuity, inventing games like Arimaa, which are specifically designed to be easy for

humans but hard for artificial intelligence.“

BBC 28 August 2007

State of Play: Man versus machine By Margaret Robertson Video game consultant and writer

Margaret Robertson

She has written extensively about games for Wired and the BBC, and has edited Edge, the world's most respected videogame magazine. Now as a game designer and consultant, she works on videogame projects of all sizes, for mainstream (EA, Sony, DICE) and indie(Kuju, Zoonami) developers,

as well as for educational organisations, broadcasters and major studios.

Bram Cohen is an American computer programmer, best known as the author of the peer-to-peer (P2P) BitTorrent protocol,

as well as the first file sharing program to use the protocol, also known as BitTorrent.

Arimaa's a better game than I thought. It follows a fairly sound approach to making the game difficult for

computers.

Page 23: Arimaa

23

Why this is hard (2/6)

• Arimaa is a very deep strategy game with simple rules.

Game-tree complexity is the size of the game tree: that is, the total number of possible games that can be played.

Game tree size of various games as powers of 10

Tic-tac-toe : 5 (10^5 or 100,000) Chess : 123 Arimaa : 296

http://www.codescope.com/docs/tictac.aspx

Tic-tac-toe – Game tree complexity.

A simple upper bound for the size of the game tree is 9! = 362,880. (There are nine positions for the first move, eight for the second, and so on.) This includes illegal games that continue after one side has won. A more careful count gives 255,168 possible games. When rotations and reflections of positions are considered the same, there are only 26,830 possible games.

Page 24: Arimaa

24

Why this is hard (2/6)Complexity Analysis

The complexity of a game is measured by two different factors, the state-space complexity and the game-tree complexity.

The state-space complexity roughly indicates the number of different board positions that are possible in principle. In Arimaa it is almost 1.66x1043

.

The game–tree complexity is an indication of how many nodes there are in the solution tree. The number depends on the specific search techniques used. In Arimaa it is almost 3.1x10300

.

“Analysis and Implementation of the game ARIMAA“ by Christ-Jan Cox

Universiteit Maastricht Maastricht ICT Competence Centre, Institute for Knowledge and Agent Technology Maastricht, The Netherlands, March 2006http://arimaa.com/arimaa/papers/CoxThesis/Cox_thesis1.pdf

Page 25: Arimaa

25

Why this is hard (3/6)

Source: “Methods of MCTS and the game Arimaa” by Tom´aˇs Kozelek (Dec 2009)Department of Theoretical Computer Science and Mathematical Logic, Faculty of Mathematics and Physics, Charles University in Prague

Huge branching factorArimaa was intentionally created as a game with an enormous branching factor.

The number of moves in an average position:

In Chess is around 35 (25=32),

In Go it is around 200,

In Arimaa this number rockets to 17,000 (214=16384) unique moves on average and in complicated middle game situations up to 50,000 unique moves.

http://static.panoramio.com/photos/original/11952977.jpg

Assume one million positions per second

Chess five-move search: (25)(10/2) = 225 = 34 million = 34 seconds

Arimaa five-move search: (214)(10/2) = 270 ≈ 1021million ≈ 31 688 764.6 years > 30 million years *

* More accurately 37.44 million yearsThis slide is partially built from the video•Arimaa Computer Science Lecture by •Karl Juhnke (Fritzlein) at Bethel College

Page 26: Arimaa

26

Why this is hard (4/6)

Source: “Methods of MCTS and the game Arimaa” by Tom´aˇs Kozelek (Dec 2009)

Department of Theoretical Computer Science and Mathematical LogicFaculty of Mathematics and PhysicsCharles University in Prague

Stability

Tactical combinations are much less common than in chess.

There are mainly two reasons for this: 1. the fact that a move consists of 4 steps and 2. the absence of “long shooting” pieces.

This longterm planning is a huge weapon in the hands of the humans who can beat computers with systematic cumulation of little strategic advantages.

http://media.photobucket.com/image/human%20thinking/VedaSun/Mind-1.jpg

Page 27: Arimaa

27

Why this is hard (5/6)

Source: “Methods of MCTS and the game Arimaa” by Tom´aˇs Kozelek (Dec 2009)

Department of Theoretical Computer Science and Mathematical LogicFaculty of Mathematics and PhysicsCharles University in Prague

Opening

Initial positioning of pieces is not prescribed which virtually makes opening books obsolete.

It has not been agreed on yet which opening setup is the best (or if there exists such a concept at all).

Page 28: Arimaa

28

Why this is hard (6/6)

Source: “Methods of MCTS and the game Arimaa” by Tom´aˇs Kozelek (Dec 2009)

Department of Theoretical Computer Science and Mathematical LogicFaculty of Mathematics and PhysicsCharles University in Prague

No endgame

While in chess or Go the position usually gets simpler when approaching the end of the game, this might well not be the case in Arimaa where most of the games are decided in the late middle game.

Page 29: Arimaa

29

Index

• What it is.• History.• Challenge.• Why this is hard.• Current status.• How I can participate.• How we can participate.• Conclusion.• References.

Page 30: Arimaa

30

Current Status(1/)

Challenge history:

To see more you can visit: http://en.wikipedia.org/wiki/Arimaa

Current Status

Page 31: Arimaa

31

Current Status (2/2)

• “Despite advances in Arimaa software during 2009, the Arimaa Challege appears quite safe for 2010.”

Karl Juhnke (Fritzlein)

Karl Juhnke (Fritzlein) discovered Arimaa in 2004 and within one year became one of the top Arimaa players in the world winning the annual Arimaa World Championship in 2005 and 2008. He is also writer of the book “Beginning Arimaa”. With a background in applied mathametics he is currently employed as a

quantitative analyst at Yahoo Inc.

•Source: http://arimaa.com/arimaa/forum/cgi/YaBB.cgi?board=events;action=display;num=1262545661

Page 32: Arimaa

32

Index

• What it is.• History.• Challenge.• Why this is hard.• Current status.• How I can participate.• How we can participate.• Conclusion.• References.

http://www.marinmagazine.com/images/cache/c37f186e5b6fd4d04d87e3e88b02db32.jpeg

Page 33: Arimaa

33

How I can participate (1/4)

1. As a player you can 1. play matches both in online and offline.2. participate in Arimaa Human World Championship.

2. As a developer you can 1. build your own bot to play games. 2. participate in Arimaa Computer World Championship. 3. take a chance to win the challenge 2020.

3. As a predictor you can 1. predict the world championship matches and win prize.

Page 34: Arimaa

34

How I can participate (2/4)To start with a sample bot:

1. http://arimaa.com/arimaa/gameroom/2. Create an account for you.

3. Go to http://arimaa.com/arimaa/download/bot/4. Download bot.zip or bot.tgz and extract.5. Read “README.1st”

6. Go to http://arimaa.com/arimaa/gameroom/botinfo.cgi7. Create an account for your bot.

8. Open the bot.cfg file and update the two fields$C{login} = "bot_sample_test";$C{passwd} = "password";with your newly created bot account info.

If you are in Windows OS then uncomment $C{getMove} = "perl ./getMove";

Page 35: Arimaa

35

How I can participate (3/4)9. Go to http://www.activestate.com/activeperl/ , download and install Perl.

10. Write click on the ‘bot’ file and run with Perl Interpreter (You can also run it from command Panel by “perl bot”.

11. The bot will then log into the www.arimaa.com/arimaa/gameroom and will wait for somebody to play with.

12. Now log in at www.arimaa.com/arimaa/gameroom with your own account and you will find your bot is waiting to play a game.

13. Click on the “sit” and start to play a game with this bot.

Page 36: Arimaa

36

How I can participate (2/)

Page 37: Arimaa

37

Index

• What it is.• History.• Challenge.• Why this is hard.• Current status.• How I can participate.• How we can participate.• Conclusion.• References.

KAZ

Page 38: Arimaa

38

How We can participate (1/2)

If few of us feel to do something we can

1. build a bot to play games.

2. participate in Arimaa Computer World Championship.

3. take a chance to win the challenge 2020.

bot_kazarimaa??

Page 39: Arimaa

39

How We can participate (2/2)(In future)

Page 40: Arimaa

40

Index

• What it is.• History.• Challenge.• Why this is hard.• Current status.• How I can participate.• How we can participate.• Conclusion.• References.

http://lifeboat.com/images/conclusion.jpg

Page 41: Arimaa

41

ConclusionIntent of the challenge:

The main intent of the Arimaa challenge is to promote research in AI, which can help to advance the field and potentially have applications in other areas.

Some areas of AI that would be involved depending on the approach taken include pattern recognition, machine learning, neural networks, evolutionary algorithms, and expert systems.

It is hoped that in the processes of achieving the Arimaa challenge some new techniques are developed in one or more of these areas that can also be applied to other problems.

The Arimaa challenge is designed to be met if significant progress is made in software and not from the advances in hardware, which are almost guaranteed.

As such the challenge will define the hardware and OS to be used and participants need only to develop the software.

Advancing the state of the art:

It is recommended that the participants (especially those with programs in the computer tournament) submit articles to the ICGA technical journal describing their research and results.

If a program wins the Arimaa challenge, it must be described in a paper submitted to the ICGA technical journal after winning the challenge in order to receive any prize.

http://arimaa.com/arimaa/challenge/2010/

Page 42: Arimaa

42

References

1. Arimaa site www.arimaa.com/arimaa

2. “Arimaa - A New Game Designed to be Difficult for Computers” http://www.arimaa.com/arimaa/papers/030801ICGA/

3. “When will computer hardware match the human brain?” by Hans Moravec http://www.transhumanist.com/volume1/moravec.htm

4. “Methods of MCTS and the game Arimaa” by Tomas Kozelek http://www.arimaa.com/arimaa/papers/TomasKozelekThesis/mt.pdf

5. “Arimaa Computer Science Lecture” by Karl Juhnke (Fritzlein) http://arimaa.com/arimaa/video/go/Fritzlein2009Bethel.htm

6. “Programming a Computer for Playing Chess” by CLAUDE E. SHANNON http://archive.computerhistory.org/projects/chess/related_materials/text/2-0%20and%202-1.Programming_a_computer_for_playing_chess.shannon/2-0%20and%202-1.Programming_a_computer_for_playing_chess.shannon.062303002.pdf

Page 43: Arimaa

43

Thank You.

Arimaa World League 2010http://arimaa.com/arimaa/mwiki/index.php/2010_Arimaa_World_League

Image source: http://www.boardgamegeek.com/image/614887/arimaa