From Deep Blue to Monte Carlo: An Update on Game - - PowerPoint PPT Presentation

from deep blue to monte carlo
SMART_READER_LITE
LIVE PREVIEW

From Deep Blue to Monte Carlo: An Update on Game - - PowerPoint PPT Presentation

From Deep Blue to Monte Carlo: An Update on Game Tree Research Akihiro Kishimoto and Mar0n Mller AAAI-14 Tutorial 6: State of


slide-1
SLIDE 1

¡

From ¡Deep ¡Blue ¡to ¡Monte ¡Carlo: ¡ ¡ An ¡Update ¡on ¡Game ¡Tree ¡Research ¡

Akihiro ¡Kishimoto ¡and ¡Mar0n ¡Müller ¡ ¡

AAAI-­‑14 ¡Tutorial ¡6: ¡ ¡ State ¡of ¡the ¡art ¡ ¡ in ¡specific ¡games. ¡ ¡ Wrap-­‑up. ¡ ¡ Presenter: ¡ ¡ Mar0n ¡Müller, ¡University ¡of ¡Alberta ¡

Image ¡source: ¡ebay.com ¡

slide-2
SLIDE 2

Which ¡Method ¡to ¡Choose? ¡

You ¡want ¡to ¡write ¡a ¡strong ¡program ¡for ¡a ¡new ¡game ¡ How ¡to ¡approach ¡it? ¡

  • Approach ¡1: ¡find ¡similar ¡game, ¡follow ¡their ¡approach ¡
  • Approach ¡2: ¡try ¡all ¡methods, ¡choose ¡best… ¡
  • Approach ¡3: ¡use ¡a ¡rapid ¡prototyping ¡framework ¡

(more ¡on ¡this ¡a ¡bit ¡later) ¡

  • Approach ¡4: ¡follow ¡the ¡rough ¡guidelines ¡on ¡the ¡next ¡slide ¡

Remark: ¡in ¡prac0ce, ¡a ¡lot ¡depends ¡on ¡how ¡much ¡0me ¡

you ¡spend ¡on ¡enhancements, ¡engineering, ¡details ¡

slide-3
SLIDE 3

Guidelines ¡– ¡Which ¡Method ¡to ¡Choose ¡ ¡ for ¡Heuristic ¡Player? ¡

Evalua0on ¡func0on ¡

Do ¡you ¡think ¡you ¡can ¡program ¡a ¡reasonable ¡

evalua0on ¡func0on? ¡

Yes: ¡

Try ¡alphabeta, ¡or ¡MCTS ¡with ¡short ¡playouts ¡

No: ¡

Try ¡MCTS ¡with ¡full ¡playouts ¡

slide-4
SLIDE 4

Guidelines ¡– ¡Which ¡Method ¡to ¡Choose ¡ ¡ for ¡Solving ¡Game? ¡

Does ¡your ¡game ¡have ¡early ¡wins, ¡or ¡non-­‑uniform ¡

branching ¡factor? ¡

Yes: ¡

Try ¡PNS ¡

No: ¡

Try ¡MCTS ¡with ¡solver ¡enhancement ¡

slide-5
SLIDE 5

State ¡of ¡ ¡the ¡Art ¡in ¡Selected ¡Games ¡

Chess ¡ Checkers, ¡Draughts, ¡Othello ¡ Go ¡ Japanese ¡chess ¡ Chinese ¡Chess ¡ Amazons, ¡Arimaa, ¡Havannah ¡ Beyond ¡classic ¡board ¡games ¡

slide-6
SLIDE 6

Chess ¡

Method: ¡parallel ¡alphabeta ¡with ¡many ¡

enhancements, ¡sophis0cated ¡manually ¡designed ¡ evalua0on ¡func0on, ¡extensive ¡tuning ¡by ¡play-­‑ tes0ng, ¡endgame ¡databases ¡

Performance: ¡far ¡superior ¡to ¡humans, ¡has ¡beaten ¡

strong ¡grandmasters ¡giving ¡pawn ¡handicap ¡

Top ¡programs: ¡Stockfish ¡(open ¡source), ¡Komodo ¡

(commercial), ¡Houdini ¡(commercial) ¡

slide-7
SLIDE 7

Checkers ¡

Method: ¡alphabeta ¡+ ¡df-­‑pn ¡+ ¡PNS ¡+ ¡endgame ¡

databases ¡

Performance: ¡solved ¡as ¡a ¡draw ¡with ¡best ¡play. ¡Top ¡

humans ¡can ¡usually ¡draw ¡but ¡lose ¡once ¡in ¡a ¡while ¡

Top ¡program: ¡Chinook ¡(online ¡play ¡vs ¡limited ¡

version) ¡

slide-8
SLIDE 8

Awari ¡

Method: ¡parallel ¡retrograde ¡analysis ¡ Performance: ¡strongly ¡solved, ¡full ¡database ¡

computed ¡

Top ¡program: ¡h_p://awari.cs.vu.nl ¡(currently ¡

  • ffline) ¡
slide-9
SLIDE 9

Draughts ¡

10x10 ¡version ¡of ¡checkers ¡ Method: ¡alphabeta ¡+ ¡endgame ¡databases ¡ Performance: ¡close ¡to ¡top ¡humans ¡? ¡Many ¡draws. ¡ Top ¡programs: ¡? ¡

slide-10
SLIDE 10

Othello ¡

Method: ¡alphabeta ¡+ ¡ProbCut, ¡specialized ¡fast ¡

endgame ¡solvers ¡

Performance: ¡Far ¡above ¡human. ¡Close ¡to ¡perfect? ¡ Top ¡programs: ¡Saio, ¡Cyrano, ¡Edax ¡

Source: ¡h_p://en.wikipedia.org/wiki/

Computer_Othello ¡

slide-11
SLIDE 11

Go ¡

Method: ¡MCTS ¡ Performance: ¡Strong ¡amateur ¡ Top ¡programs: ¡Crazy ¡Stone, ¡Zen ¡

slide-12
SLIDE 12

Hex ¡

Method: ¡MCTS ¡+ ¡heavy ¡game-­‑specific ¡knowledge ¡ Performance: ¡solved ¡up ¡to ¡9x9, ¡mid-­‑level ¡amateur ¡

  • n ¡large ¡boards ¡

Top ¡programs: ¡MoHex, ¡Wolve ¡(alphabeta-­‑based) ¡

slide-13
SLIDE 13

Japanese ¡Chess ¡-­‑ ¡Shogi ¡

Method: ¡alphabeta ¡+ ¡df-­‑pn ¡solver ¡+ ¡depth-­‑first ¡

search ¡solver, ¡large ¡machine-­‑learned ¡evalua0on ¡ func0on ¡

Performance: ¡surpassed ¡top ¡human? ¡No ¡formal ¡

match ¡yet. ¡

Top ¡programs: ¡GPS ¡shogi, ¡Gekisashi, ¡Bonanza ¡+ ¡

many ¡deriva0ves, ¡ponanza, ¡Apery ¡

slide-14
SLIDE 14

Chinese ¡Chess ¡-­‑ ¡Xiangqi ¡

Method: ¡alphabeta ¡+ ¡endgame ¡databases ¡ Performance: ¡near ¡top ¡human? ¡ Top ¡programs: ¡Shiga, ¡Chimo, ¡? ¡

slide-15
SLIDE 15

Draughts ¡

Method: ¡alphabeta ¡+ ¡endgame ¡databases ¡ Performance: ¡close ¡to ¡top ¡human ¡ Top ¡programs: ¡TDKing, ¡Maximus ¡

slide-16
SLIDE 16

Amazons ¡

Method: ¡MCTS ¡with ¡short ¡playouts ¡(4-­‑5 ¡ply) ¡+ ¡

evalua0on ¡func0on ¡

Performance: ¡slightly ¡be_er ¡than ¡best ¡humans? ¡ Top ¡programs: ¡Invader, ¡8QP, ¡Amazong ¡

slide-17
SLIDE 17

Clobber ¡

Method: ¡alphabeta ¡+ ¡comb. ¡game-­‑theore0c ¡

databases ¡

Performance: ¡? ¡ Top ¡programs: ¡Pan, ¡Mila ¡

slide-18
SLIDE 18

Konane, ¡DisKonnect ¡

Method: ¡MCTS ¡ Performance: ¡likely ¡super-­‑human ¡ Top ¡programs: ¡dkf ¡(Fuego-­‑based) ¡

slide-19
SLIDE 19

NoGo ¡

Method: ¡MCTS ¡ Performance: ¡likely ¡superhuman ¡ Top ¡programs: ¡HappyNoGo ¡

slide-20
SLIDE 20

Lines ¡of ¡Action ¡

Method: ¡MCTS ¡+ ¡short ¡playouts ¡+ ¡evalua0on ¡ Performance: ¡superhuman ¡ Top ¡programs: ¡MC-­‑LOA, ¡MIA ¡

slide-21
SLIDE 21

Arimaa ¡

Method: ¡alphabeta, ¡machine-­‑learned ¡move ¡

  • rdering ¡+ ¡strong ¡pruning ¡(Wu ¡2011) ¡

Performance: ¡2014 ¡match: ¡7-­‑2 ¡for ¡humans ¡ Top ¡programs: ¡Sharp, ¡Ziltoid, ¡Marwin ¡

slide-22
SLIDE 22

Havannah ¡

Method: ¡MCTS ¡+ ¡solver ¡ Performance: ¡strong ¡amateur ¡ Top ¡programs: ¡Castro, ¡Lajkonik, ¡Wanderer ¡

slide-23
SLIDE 23

Poker ¡

Method: ¡see ¡Poker ¡workshop ¡at ¡AAAI ¡2014 ¡ Performance: ¡see ¡Poker ¡workshop ¡at ¡AAAI ¡2014 ¡ Top ¡programs: ¡see ¡Poker ¡workshop ¡at ¡AAAI ¡2014 ¡

slide-24
SLIDE 24

Bridge ¡

Method: ¡Monte ¡Carlo ¡simula0on, ¡double ¡dummy ¡

solver, ¡bidding ¡rules, ¡? ¡

Performance: ¡strong ¡amateur? ¡ Top ¡programs: ¡Jack, ¡? ¡

slide-25
SLIDE 25

Skat ¡

Method: ¡Perfect ¡Informa0on ¡Monte ¡Carlo, ¡

endgame ¡lookup ¡tables, ¡recursive ¡rollouts, ¡par00on ¡ search, ¡bidding ¡rules ¡

Performance: ¡super-­‑human? ¡ Top ¡programs: ¡Recursive ¡Kermit, ¡Kermit ¡ Link: ¡h_p://hdl.handle.net/10402/era.34080 ¡

slide-26
SLIDE 26

Your ¡game ¡here… ¡

Method: ¡? ¡ Performance: ¡? ¡ Top ¡programs: ¡? ¡

slide-27
SLIDE 27

Summary ¡

Overview ¡of ¡the ¡three ¡current ¡main ¡methods ¡in ¡

“classical” ¡two-­‑player ¡board ¡games ¡

Alphabeta ¡search ¡ Proof-­‑number ¡search ¡ Monte ¡Carlo ¡tree ¡search ¡

Many ¡enhancements ¡for ¡state ¡of ¡the ¡art ¡

performance ¡

How ¡to ¡deal ¡with ¡evalua0on ¡ Parallel ¡search ¡

slide-28
SLIDE 28

For ¡More ¡Information ¡

  • Follow ¡the ¡references ¡on ¡tutorial ¡homepage ¡
  • Specialized ¡Conferences: ¡
  • Computers ¡and ¡Games ¡(CG) ¡
  • Advances ¡in ¡Computer ¡Games ¡(ACG) ¡
  • Computa0onal ¡Intelligence ¡and ¡Games ¡(CIG) ¡
  • Game ¡Programming ¡Workshop ¡in ¡Japan ¡(GPW) ¡
  • Games ¡workshops ¡at ¡IJCAI, ¡AAAI,… ¡
  • Specialized ¡Journals: ¡
  • IEEE ¡TCIAIG ¡
  • ICGA ¡Journal ¡
  • General ¡AI ¡conferences ¡+ ¡journals: ¡IJCAI, ¡AAAI, ¡AIJ, ¡JAIR,… ¡
slide-29
SLIDE 29

Image ¡source: ¡h_p:// stoppopts.org ¡