この文書は1993/11/28に商用パソコンネットPC-VAN内にあるデータベースクラブ (DATABASE)のフォーラムの2.データバンクへアップロードされたものです。 > 699 93/11/28 五目競争>公式ガイド 暫定版 ToMo 五目競争の第3回大会は現在無期延期の状態であり、この参加ガイドも暫定版のま まです。本ドキュメントの無断転載はしないでください。 また本ドキュメントは印刷することを考慮して改ページコードが挿入されています。 1997/02/11 ToMo(FQA51419@pcvan.or.jp, http://www2k.meshnet.or.jp/~tomo) ============================================================================ ----- 五目競争公式ガイド ----- 1993/11/28 暫定版 by ToMo ============================================================================ --- はじめに ---  「五目競争」とは五目並べのプログラムを作成し、その思考ルーチンの強 さを競い合おうというイベントで、思考アルゴリズムやそのプログラミング に関する技術情報の交換などを行っています。  PC−VANの「データベースクラブSIGのフォーラムの3.ランゲー ジ」において開催されています。  このドキュメントは「五目競争」で採用している五目並べのルールおよび 対戦プログラムのインターフェースに関する情報などをまとめたもので、五 目競争に参加するための手引きとして書かれたものです。 --- 目次 --- §1 大会運営 §1.1 参加方法 §1.2 対戦方法(第1、2大会で採用された方法) §2   五目競争採用ルール §2.1 基本ルール §2.2 3について §2.3 禁手 §2.4 基本珠型 §2.5 例外規定 §3  対戦プログラム仕様 §3.1 動作環境 §3.2 インターフェース仕様 §3.3 プログラム作成上の制限 付録A〜G - i - ■■ 第1章 大会運営 ■■ §1.1 参加方法 【開催時期】  不定期。次の第3回大会は1994年3月末頃の予定。 【場所】  PC−VANの「データベースクラブSIGのフォーラムの3.ランゲージ」 【参加方法】 1.大会前にボード上へエントリーする(3.ランゲージ)。 2.受け付け確認後、ISH形式でプログラムアップロード(2.データバンク)。 【大会当日】 1.審判は大会参加者が分担して行う。 2.審判は「2.データバンク」より土俵プログラムと自分の担当する対戦プログラ ムをダウンロードする。 3.対戦は土俵プログラムを介して行う。 4.対戦後、土俵プログラムの出力するログファイルをアップロードする(3.ラン ゲージ)。 【その他】 ・自分のプログラムの審判は行わない。 ・プログラム参加していない人の審判も歓迎。 ・定められた期日までにプログラムがUPされない場合は棄権となる。 §1.2 対戦方法(第1、2大会で採用された方法) 1.交互に黒と白の手番を交代して計10回戦行う。 2.実際には24基本珠型の中から土俵がランダムに珠型を選択し、白の4手目 から打ちはじめる。 3.200手までで勝負がつかないときは引き分けとする(次の大会からは 150手になる予定)。 4.勝ち点制を採用(勝ち2点 引き分け1点 負け0点)。 5.プログラムがハングアップしたときはハングアップした側が無条件で対戦成 績10−0で負けとなる。 6.基本珠形の選択などにランダム要素があるため、対戦は最初の1回目の結果 を採用する。また公平を期すためにそれぞれの対戦プログラムが同じ珠型で 黒番と白番の両方で打つようになっている。 以上1〜3については土俵プログラムによって自動的に処理される。 - ii - ■■ 第2章 五目競争採用ルール ■■ §2.1 基本ルール 【盤の大きさ】  15x15 【ゲームの進め方】  黒から打ちはじめる。黒、白と交互に打っていく(打ちはじめについては基本珠型 参照)。 【終了判定】  黒もしくは白石が縦横ななめのいずれかに石が5つ並んだ方が勝ち。  また黒が禁手を打った場合には白の勝ちとなる。 §2.2 3について (1)+●●●++ (2)+●●+●+  (1)または(2)のように石が並んだ場合、○が止めなければ●は4手先には5 となる。このような石の並びは3((2)は飛び3)と呼ばれる。  また3にならない特殊な並びとして次のようなものがある。 ・「○+★★★+○」   3にはならない。「夏止め」などと呼ばれる ・「○+★★★++●+」 ●黒に限って3にはならない              禁手(長連)が関係してくるため §2.3 禁手 ・禁手は黒だけで、白にはない。 ・3x3、4x4および長連を含む石の並びが、一手でできるものを禁手という。こ れは3x3x4、3x4x4なども禁手となることを意味する。 ・順番に3や4ができていって、3x3や3x3x4ができたような場合は禁手には ならない。 ・長連というのは6個以上石がつながったもので、7,8,・・・も含まれる。 ・5ができると同時に3x3ができるような場合は「5勝ち優先」というルールがあ り禁手にはならない。 ・「●+★★★+●」 禁手の特別な形で4x4禁手。一列に並んだ4x4の 例。 ・禁手にならない形  「++●+●★+●+++」3x3ではない。一度に両方の3を止めることが可能  「+●+★★+●+」             同上  「+●●+★+●●+」  3x3ではない。 - iii -  実際の盤での禁手にならない形      +++++++++++++++ ●:黒 ○:白      +++●+++++++++●+      ○+●★●+○+++++●++ ★:黒      +++●++++++●++++      ++++++++++★++++      ++++++++++●++++ ★の位置は一見して、3x3禁に      ++++++++●++++++ なるようで3x3禁にはならない。      +++++●+++++++++      ++++++++○++++++      +++○+++++++++++      ++++++++●+++●++      +●+★●++++●+++++      +++●++++++★++++      +++●+++++●+++++      ++++++++++++○++ §2.4 基本珠型 1.黒1手目は天元(盤の中央)から打ち始める 2.白2手目は黒1手目に隣接する位置に打つ 3.黒3手目は天元から一間飛びの範囲内とする  白2は黒1に対して斜めの位置と横の位置に打つ2通りある。前者は間接打ち、 後者は直接打ちと呼ばれている(●:黒 ○:白)。 +++++++        +++++++ +++++++        +++++++ ++++○++        +++○+++ +++●+++     +++●+++ +++++++        +++++++ +++++++        +++++++ 間接打ち           直接打ち  黒3までで対称、鏡像となるものをまとめて24基本珠型と呼ばれている(付 録A)。 §2.5 例外規定  「五目競争」では一般的な五目並べのルールに従っているが、次の2点については 例外としている。 (1)手の放棄を許さない  一般には許されている。 (2)3手先まで読むと禁手にならない場合があるがこれも禁手とする +++++++++ ++●++++++ ++○●●○○++ +++●*●+++ ++○○●++++ +++●★●+++ ++○+++○++ +++++++++  上の局面で★に置くとこれまでの説明では「3x3禁」となる。しかし実際には* - iv - の位置には石を置くことができない(「3x3禁」だから)ために、5になる見込み はない。一般にはこのような★の位置は「3x3禁」ではないとされている。  このようなパターンは出現頻度が低いと考えられる割には、判定が繁雑になるので 「五目競争」では★の位置も「3x3禁」と判定する。 - v - ■■ 第3章 対戦プログラム仕様 ■■ §3.1 動作環境  PC98上MS−DOSで土俵プログラムから子プロセスとして起動できること。 対戦プログラムはMS−DOS汎用であれば参加可能。 §3.2 インターフェース仕様 ・土俵プログラムが子プロセスとして対戦プログラムを起動する。 ・碁盤情報、次の手などはファイルを介して受け渡しを行う。 【碁盤情報】  土俵プログラムがカレントディレクトリへ出力→5moku.ban 808     ;1手目 (8,8) 碁盤中央(8,8)としている。 807     ;2手目 (8,7) 806     ;3手目 (8,6) 【次の手】  対戦プログラムがカレントディレクトリへ上書きモードで出力→5moku.res 906      ;4手目 (9,6)(次の手) 負けないぞー ;つぶやき機能→画面へ表示される30バイト以内(省略可) ・対戦プログラムは 5moku.ban を読み込み、次の手を 5moku.res へ出力する。 ・プロセスを終了して土俵プログラムへ制御を戻す。 §3.3 プログラム作成上の制限 ・思考時間   常識的な範囲内。今のところは具体的な制限は設けていない(実行マシン環境に  依存するため)。 <参考>   現在発表されているものは、386SX16MHz程度のマシンを使った場合、高速なもの  で一手3〜5秒程度。遅いものでは長考で数分かかるものもある(注:常に数分か  かるわけではない)。 ・プログラムサイズ、使用メモリー容量   土俵プログラムから子プロセスとして起動できれば可。ただし、土俵プログラム  のバージョンアップによって、対戦プログラムの使用可能メモリが減る可能性があ  るので小さいに越したことはない(目安としては2セグメントぐらい?)。 ・テンポラリファイルサイズ   特に制限はなし(1Mbyte以内?)。 ・使用コード   なるべく多くの機種で動くように(80386コードは使わないなど)。 ・その他 タイマ割り込みなどは使用不可。   碁盤情報ファイルを書き換える、相手の対戦プログラムを削除してしまうなども  反則。 - vi - --- おわりに ---  本ドキュメントは ToMo が「PC−VANデータベースクラブの3.ラン ゲージ」のログとKENJI氏の作成した「土俵プログラム」のソースリストな どを元に作成したものです。  プログラム作成上の制限があいまいなのはなるべく制限はもうけないとい う方針のためです。  この点も含めて細部については大会ごとに変わってきていますので、不明 な点やこうしたほうがいいのではないかという意見がありましたらボードの ほうへ提案してください。 文責 PC-VAN FQA51419 ToMo --- 転載条件 ---  このドキュメントの著作権は「PC−VANデータベースクラブSIGの フォーラム3.ランゲージ内五目競争実行委員会」にあります。  まだ暫定版のため許可なく転載はしないでください。 - vii - 付録A 基本珠型 (★:黒1 ○:白2 ●:黒3) 間接1号  間接2号  間接3号  間接4号  間接5号  間接6号 「長星」  「峡月」  「恒星」  「水月」  「流星」  「雲月」 +++++ +++++ +++++ +++++ +++++ +++++ +++●+ +++++ +++++ ++○++ ++○++ ++○++ ++○++ ++○●+ ++○++ +★+++ +★+++ +★●++ +★+++ +★+++ +★+●+ +++●+ +++++ +++++ +++++ +++++ +++++ +++++ +++●+ +++++ 間接7号  間接8号  間接9号  間接10号 間接11号 間接12号 「浦月」  「嵐月」  「銀月」  「明星」  「斜月」  「名月」 +++++ +++++ +++++ +++++ +++++ +++++ ++○++ ++○++ +++○+ +++○+ +++○+ +++○+ +★+++ +★+++ ++★++ ++★++ ++★++ ++★++ ++●++ +++++ ++●++ +++++ +●+++ +++++ +++++ ++●++ +++++ ++●++ +++++ +●+++ 直接1号  直接2号  直接3号  直接4号  直接5号  直接6号 「寒星」  「渓月」  「疎星」  「花月」  「残月」  「雨月」 +++++ +++++ +++++ +++++ +++++ +++++ ++●++ +++●+ +++●+ +++++ +++++ ++○++ ++○++ ++○++ +○+++ +○●++ +○+●+ ++★●+ ++★++ ++★++ +★+++ +★+++ +★+++ +++++ +++++ +++++ +++++ +++++ +++++ +++++ 直接7号  直接8号  直接9号  直接10号 直接11号 直接12号 「金星」  「松月」  「丘月」  「新月」  「瑞星」  「山月」 +++++ +++++ +++++ +++++ +++++ +++++ +○+++ ++○++ ++○++ +○+++ ++○++ ++○++ +★+●+ ++★++ ++★++ +★+++ ++★++ ++★++ +++++ ++●++ +++●+ +++●+ +++++ +++++ +++++ +++++ +++++ +++++ ++●++ +++●+ 彗星        遊星 +++++     +++++ +++○+     ++○++ ++★++     ++★++ +++++     +++++ ●++++     ++++● - viii - 付録B 過去の大会の記録 ・第1回大会 (Xmas大会)  開催  92年12月26、27日  審判長 H.KAMATA(機長) 審判団 H.KAMATA,KENJI,風小僧,謎の二面相,河,どひ,FLEX,ALBATROS.  優勝  BRAIN5X (謎の二面相)  準優勝 KAZE502 (風小僧)  対戦表  勝ち点優先(勝ち2点 引き分け1点 負け0点) +-------------+----+----+----+----+----+----+----+----+----+----+--+ |  | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |勝点|得失|位| +-------------+----+----+----+----+----+----+----+----+----+----+--+ | 1 機長 | \ | × | × | × | ○ | ○ | ○ | × | 6 | +4 | 5| | MOMIJI | |2-4 |0-5 |2-7 |4-2 |8-2 |10-0|2-4 | | | | +-------------+----+----+----+----+----+----+----+----+----+----+--+ | 2 KENJI | ○ | \ | × | × | ○ | ○ | × | ○ | 8 | +5 | 3| | 5K |4-2 | |3-5 |2-8 |6-2 |9-1 |3-7 |6-3 | | | | +-------------+----+----+----+----+----+----+----+----+----+----+--+ | 3 風小僧 | ○ | ○ | \ | △ | ○ | ○ | ○ | ○ | 13 | +39| 2| | KAZE502 |5-0 |5-3 | |5-5 |8-1 |10-0|8-2 |9-0 | | | | +-------------+----+----+----+----+----+----+----+----+----+----+--+ | 4 謎の二面相| ○ | ○ | △ | \ | ○ | ○ | ○ | ○ | 13 | +45| 1| | BRAIN5X |7-2 |8-2 |5-5 | |10-0|10-0|8-2 |9-1 | | | | +-------------+----+----+----+----+----+----+----+----+----+----+--+ | 5 MOUNTECH | × | × | × | × | \ | ○ | × | × | 2 | -33| 7| | 5MC |2-4 |2-6 |1-8 |0-10| |7-3 |3-7 |0-10| | | | +-------------+----+----+----+----+----+----+----+----+----+----+--+ | 6 河 | × | × | × | × | × | \ | × | × | 0 | -50| 8| | KW5MK |2-8 |1-9 |0-10|0-10|3-7 | |1-9 |3-7 | | | | +-------------+----+----+----+----+----+----+----+----+----+----+--+ | 7 ToMo | × | ○ | × | × | ○ | ○ | \ | × | 6 | -8| 6| | AOBA |0-10|7-3 |2-8 |2-8 |7-3 |9-1 | |4-6 | | | | +-------------+----+----+----+----+----+----+----+----+----+----+--+ | 8 FLEX | ○ | × | × | × | ○ | ○ | ○ | \ | 8 | -2| 4| | DAGANE |4-2 |3-6 |0-9 |1-9 |10-0|7-3 |6-4 | | | | | +-------------+----+----+----+----+----+----+----+----+----+----+--+ - ix - ・第2回大会  開催  93年5月1、2、3日  審判長 MOUNTECH 審判団 MOUNTECH, ALBATROS., 謎の二面相, 風小僧  優勝  BRAIN5X (謎の二面相)  準優勝 DEEP5-1 (GENESIS)  対戦表  勝ち点優先(勝ち2点 引き分け1点 負け0点) +------------+----+----+----+----+----+----+----+----+----+----+----+--+ |  | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |勝点|得失|位| +------------+----+----+----+----+----+----+----+----+----+----+----+--+ |1 どひ | \ | ○ | × | ○ | ○ | ○ | × | ○ | ○ | 12 | +15| 3| | 5MKD408 | |6-4 |4-6 |8-2 |5-3 |5-4 |4-6 |8-2 |6-4 | | | | +------------+----+----+----+----+----+----+----+----+----+----+----+--+ |2 FLEX | × | \ | × | △ | × | × | × | × | × | 1 | -28| 9| | DAGANE1 |4-6 | |0-10|5-5 |3-4 |0-10|0-10|3-7 |2-6 | | | | +------------+----+----+----+----+----+----+----+----+----+----+----+--+ |3 GENESIS | ○ | ○ | \ | ○ | × | ○ | × | ○ | ○ | 12 | +25| 2| | DEEP5-1 |6-4 |10-0| |9-1 |2-6 |6-3 |3-7 |8-2 |7-3 | | | | +------------+----+----+----+----+----+----+----+----+----+----+----+--+ |4 風小僧 | × | △ | × | \ | × | ○ | × | ○ | × | 5 | -22| 7| | KUMA56 |2-8 |5-5 |1-9 | |3-6 |5-2 |1-9 |8-2 |2-8 | | | | +------------+----+----+----+----+----+----+----+----+----+----+----+--+ |5 KENJI  | × | ○ | ○ | ○ | \ | ○ | × | △ | × | 9 | +4| 5| | 5K2 |3-5 |4-3 |6-2 |6-3 | |5-0 |2-8 |4-4 |3-4 | | | | +------------+----+----+----+----+----+----+----+----+----+----+----+--+ |6 MOUNTECH | × | ○ | × | × | × | \ | × | × | × | 2 | -21| 8| | 5MC |4-5 |10-0|3-6 |2-5 |0-5 | |0-10|1-8 |1-3 | | | | +------------+----+----+----+----+----+----+----+----+----+----+----+--+ |7 謎の二面相| ○ | ○ | ○ | ○ | ○ | ○ | \ | ○ | ○ | 16 | +50| 1| | BRAIN5X |6-4 |10-0|7-3 |9-1 |8-2 |10-0| |8-2 |7-3 | | | | +------------+----+----+----+----+----+----+----+----+----+----+----+--+ |8 ToMo | × | ○ | × | × | △ | ○ | × | \ | × | 5 | -21| 6| | AOBA93 |2-8 |7-3 |2-8 |2-8 |4-4 |8-1 |2-8 | |1-9 | | | | +------------+----+----+----+----+----+----+----+----+----+----+----+--+ |9 Yasu.Hara | × | ○ | × | ○ | ○ | ○ | × | ○ | \ | 10 | +11| 4| | 5RAKU |4-6 |6-2 |3-7 |8-2 4-3 3-1 |3-7 |9-1 | | | | | +------------+----+----+----+----+----+----+----+----+----+----+----+--+ - x - 付録C 思考アルゴリズムの動向 ・先読み無し  現在の局面から次の手を探す方法。第1回大会では多くが採用していたが、第2回 大会ではこのタイプは苦戦。 ・先読み  Min-Max法に代表される方法。V2を達成した BRAIN5 も採用している。 ・定石の利用  定石をデータとしてもっているものが第2回大会から登場。まだ発展途上。 付録D 用語の説明 ・土俵、土俵プログラム  KENJI氏作成の 5DO.EXE の事。 ・対戦プログラム  各人が作成した思考プログラムの事。 ・謎式、風式  手数の数え方       ●→○→●→○→●→○→・・・  謎式   1 2 3 4 5 6  風式  1   2   3  本ドキュメントでは謎式を採用。 付録E 参考文献 「連珠 五目並べ 必勝法」坂田吾郎著 高橋書店(1980) 「図解 早わかり連珠」 坂田吾郎著 日東書院(1987) 「コンピュータ将棋」小谷、吉川、柿木、森田著 サイエンス社 付録F 土俵ログ情報(Version 1.50)  1 1 24 53 61 < 8 8>< 8 7>< 8 6> 『寒星』(直接1・正・本) 02:  左から順番に   −何戦目か(1, 2, 3, ...)   −先手プレイヤーID(0 or 1)   −何手で勝負がついたか(これが奇数なら先手勝ち、偶数なら後手が勝ち)   −プレイヤーID=0のこの対戦での秒数の合計   −プレイヤーID=1のこの対戦での秒数の合計   −1手目の座標(必ず< 8 8>)   −2手目の座標   −3手目の座標   −珠型の名前と対称関係   −対戦終了時刻 - xi - 付録G 暫定版その2との互換インターフェース *子プロセスの起動  以前の土俵(暫定版その2)では、 手の履歴ファイル(5moku.ban)を出力しない で、コマンドラインでのみ対戦プログラムに情報を提供していました。この方式に対 応した対戦プログラムサンプルがいくつか発表されてますので、それらとの互換性を 維持するため、コマンドライン方式も残してあります。 各対戦の最初の1回 SHELL "prog_name S 4 xxyy xxyy xxyy" '←白(=後手)の場合 SHELL "prog_name S 5 xxyy xxyy xxyy xxyy" '←黒(=先手)の場合 | | | | | +- 直前までの手の履歴 | +- 今、何手目か +- 対戦開始の目印 各対戦の2回目以降 SHELL "prog_name gi xxyy" | | | +- 直前の手 +- 今、何手目か - xii -