Vol.14 No.3 (1999/05) ゲームプログラミング(囲碁を中心に)


私のブックマーク

ゲームプログラミング(囲碁を中心に)

人工知能研究の初期の頃からゲームは優れた研究対象として取り上げられ,さ まざまな探索法がコンピュータチェス研究の成果として生み出されてきた.し かし,Deep Blue が人間の世界チャンピオンを破ってしまった現在,次なる研究の標的は囲碁や将棋であり,この中からまた新たな AI 技術が生まれてくる ものと確信している.ここでは,筆者の興味の対象である「囲碁」を中心に, ゲームプログラミングに関係するページを紹介したい.
1. ゲームプログラミング研究 ゲームプログラミングといえばこれまでは海外でのチェスに関する研究が最も 盛んであった. ICCA(International Computer Chess Association) では,定期的にコンピュータチェスの世界大会や国際会議を開催しており,特 に, ICCA Journal [1.1] は,チェスに限らずゲームプログラミングに関する主要な情報源となっている.

国内では,最近になってようやくゲームプログラミング関係の研究が認知されるようになり,研究発表の場も増えてきた. コンピュータ将棋協会(CSA) [1.2] 主催で 1994年に始まった 「ゲーム・プログラミングワークショップ」 は,その後, コンピュータ囲碁フォーラム(CGF) [1.3] が協賛に加わり,年1回のペースで 1997年までに4回行なわれてきた [1.4]. そして昨年はこれを発展させて,国内外の第一線の研究者を集めた 「第一回 コンピュータとゲーム国際会議(CG98)」[1.5] も開催された. コンピュータ囲碁に関していえば, COMPUTER-GO Mailing List [1.6] も有益な議論の場となっている. 囲碁プログラミングや組合せゲーム理論についての文献リストとしては, [1.7], [1.8], [1.9], [1.10], [1.11] などがあり,また, [1.12] ではゲームにおける機械学習についての話題が取り上げられている.

[1.1] http://www.dcs.qmw.ac.uk/~icca/journal.htm
[1.2] http://www.ff.iij4u.or.jp/~jun1/csa/
[1.3] http://www1.odn.ne.jp/~cag79530/cgf/indexj.html
[1.4] http://www.cs.inf.shizuoka.ac.jp/~iida/GPW/gpw97-review.html
[1.5] http://www.etl.go.jp/etl/suiron/~mueller/cg98/cg98_main.html
[1.6] http://www.hsc.fr/computer-go/
[1.7] http://www.cip.physik.uni-muenchen.de/~enz/biblio.html
[1.8] http://www.psy.uq.edu.au/~jay/go/comp-go.bib.html
[1.9] http://www.reiss.demon.co.uk/webgo/bib.htm
[1.10] http://www.usgo.org/computer/literat.html
[1.11] http://www.ics.uci.edu/~eppstein/cgt/
[1.12] http://forum.swarthmore.edu/~jay/learn-game/

2. コンピュータ囲碁

囲碁は中国で生まれ,その後日本で大きく開花し,今や世界中でプレイされている最も魅力的なゲームの一つである. AGA (American Go Association) [2.1] BGA (British Go Association) [2.2] のページでは,碁会所,棋書,インターネット対局,囲碁ソフトウェアなど,囲碁に関するさまざまな情報を提供してくれている. 例えば,代表的なコンピュータ囲碁プログラムの一覧は, [2.3][2.4] で見ることができる. その一方で,日本の囲碁の総本山である 日本棋院 [2.5] のページに,こういった情報が見あたらないのは寂しい限りである.

コンピュータ囲碁の国際大会としては,International Computer Go Championship (Ing Cup) や,日本で開催される FOST Cup などがあり,これらの大会の結果は, [2.6], [2.7], [2.8] にまとめられている.そして, [2.9], [2.10] には,大会の棋譜も掲載されている. また,代表的な囲碁プログラムの開発者の Web ページ中には,囲碁プログラミングに関する優れた情報を提供しているものがある. ここでその中のいくつかをかいつまんでリストアップすると, Explorer [2.11] , Many Faces of Go [2.12] , Go4++ [2.13] , 詰碁プログラム GoTools [2.14] , および [2.15] などがあげられる.

[2.1] http://www.usgo.org
[2.2] http://www.britgo.demon.co.uk/
[2.3] http://www.usgo.org/computer/program.html
[2.4] http://www.britgo.demon.co.uk/reviews/
[2.5] http://www.joy.ne.jp/nihonkiin/
[2.6] http://www.reiss.demon.co.uk/webgo/gores.htm
[2.7] http://www.smart-games.com/worldcompgo.html
[2.8] http://www.usgo.org/computer/icgc.html
[2.9] http://www.britgo.demon.co.uk/results/computer/ing98/results.html
[2.10] http://www1.odn.ne.jp/~cag79530/cgf/indexj.html
[2.11] http://www.etl.go.jp/etl/suiron/~mueller/
[2.12] http://www.smart-games.com/david.html
[2.13] http://www.reiss.demon.co.uk/webgo/compgo.htm
[2.14] http://www.maths.qmw.ac.uk/~tw/
[2.15] http://www.andromeda.com/people/ddyer/go-program.html

3. インターネット上の囲碁リソース

コンピュータ囲碁研究において,インターネット上のリソースは欠かすことの できない重要な要素となっている. その中でも, Go Archive [3.1] は囲碁関係のソフトウェアの総合的な ftp サイトとして最も有名である. また,ソースコード付きで提供されている優れたソフトウェアとしては, GnuGo [3.2] , OpenGo [3.3] , PubGo+ [3.4] , CGoban [3.5] , Jago Client [3.6] などがある. ソフトウェア以外では,膨大な量の棋譜データベース [3.7] , [3.8] や,標準的な棋譜フォーマットである SGF(Smart Game Format) についての詳細な解説 [3.9] などは有益な情報であろう.

インターネット上の対局サーバとしては, IGS (Internet Go Server) [3.10] が最も規模も大きく有名であるが,これ以外にも NNGS (No Name Go Server) [3.11] , WWGo (World Web Go) [3.12], WING (World-wide InterNet Gokaisho) [3.13] といった対局サーバがある.

囲碁に関する Hub サイトとしては, [3.14] , [3.15] , [3.16] , [3.17] , [3.18] がすばらしい.

[3.1] ftp://www.joy.ne.jp/welcome/igs/Go/
[3.2] http://match.stanford.edu/bump/go.html
[3.3] http://www.concentric.net/~Jgberg/Research/Research.html
[3.4] http://www.bath.ac.uk/~eespjl/go.html
[3.5] http://www.hevanet.com/wms/comp/cgoban/
[3.6] http://mathsrv.ku-eichstaett.de/MGF/homes/grothmann/jago/Go.html
[3.7] http://www.fin.or.jp/~igo/
[3.8] http://www.cwi.nl/~jansteen/go/
[3.9] http://www.sbox.tu-graz.ac.at/home/h/hollosi/sgf/
[3.10] http://igs.joyjoy.net/
[3.11] http://nngs.cosmic.org/
[3.12] http://www01.tjsys.co.jp/WWGo/jp/
[3.13] http://www2.tky.3web.ne.jp/~komei/wing/indexj.html
[3.14] http://www.cwi.nl/~jansteen/go/
[3.15] http://www.goban.demon.co.uk/go/main.html
[3.16] http://nngs.cosmic.org/hmkw/
[3.17] http://www.brl.ntt.co.jp/Go/
[3.18] http://www1.odn.ne.jp/~cag79530/indexj.html

4. 囲碁のルール

囲碁が世界中で共通にプレイされている一方で,スコアリングの方法やサイク ルを引きおこす着手の制限の仕方などに関して,地域によって微妙に異なる囲 碁ルールが存在している. これら,世界の囲碁ルールについては, [4.1], [4.2], [4.3] に詳しく述べられている. また,BGA(British Go Association) のページ [4.4] にもいくつかの囲碁ルールの比較が表としてまとめられている.

日本の囲碁ルールは,昭和24年に「日本棋院囲碁規約」として成文化され,平 成元年には,より合理的なルールである「日本囲碁規約」 [4.5] が制定された.しかし,これは元来人間同士の通常の対局を前提としたルール であるため,コンピュータ対局で使用するには不十分な点がある. そこで WWGo では,「日本囲碁規約」に準拠しつつ,かつ,コンピュータ対局 を快適に行なうための新ルール [4.6] を作成して使用している. また,囲碁ルールの国際化を目指して様々な囲碁ルールの検討を行なった池田氏の研究成果を [4.7] で見ることができる.

[4.1] http://www.inx.de/~jasiek/rules.html
[4.2] http://www.cs.cmu.edu/~wjh/go/rules/rules.html
[4.3] http://www.cwi.nl/~tromp/go.html
[4.4] http://www.britgo.demon.co.uk/rules/compare.html
[4.5] http://www1.odn.ne.jp/~cag79530/cgf/igorulej.html
[4.6] http://www01.tjsys.co.jp/WWGo/jp/free/rule.htm
[4.7] http://www.fujitsu.co.jp/hypertext/igo/

5. おわりに

「囲碁」を中心にゲームプログラミング分野のブックマークを紹介した.紙面の都合でここに掲載できなかった URL も多いが,それについてはどうか御容赦願いたい.そして,今後,日本におけるコンピュータ囲碁研究が世界のトップに立つことを願って本稿を終わることにする.
(九州工業大学 情報工学部 知能情報工学科 中村貞吾, teigo@ai.kyutech.ac.jp)