ガイスターAI大会@GPW2018

大会の結果/Result

5チームの参加でした。当初はNaottiMinMaxと立木システムプレイヤー が同点ということでプレーオフを実施、その勝者のNaottiMinMaxが優勝!としていましたが、 その後ルールの勘違いが判明、△と×は0ポイントのため、○×と△△の差で立木システムプレイヤーが優勝でした。

対戦表
NaottiMinMax Yowagoshi mo2000 gaisuta- 立木システムプレイヤー 勝敗 ポイント 順位
NaottiMinMax △△ ○○ ○○ ×○ 5勝2分1敗 5 2位
Yowagoshi △△ ×× ×× ×× 0勝2分6敗 0 5位
mo2000 ×× ○○ ×○ ○× 4勝0分4敗 4 3位
gaisuta- ×× ○○ ×○ ×× 3勝0分5敗 3 4位
立木システムプレイヤー ○× ○○ ×○ ○○ 6勝0分2敗 6 1位
開発者
NaottiMinMax 川上直人(松江工業高等専門学校)
Yowagoshi 金川裕司(東京大学)
mo2000 伊藤篤志(電気通信大学)
gaisuta- 清水康平(電気通信大学)
立木システムプレイヤー 末續鴻輝(京都大学)織田祐輔(大阪大学)

大会の目的/Purpose

GPCCでも2年連続取り上げられるなど、人気のあるボードゲーム「ガイスター」AIの試合を行い、 不完全情報要素のある面白い題材のガイスターAI研究を促進することを目的とする。

サーバを介したAI同士の自動対戦をおこなう。

大会の概要/Outline

  • 日程:2018年 11月16日 (金) 〜 17日 (土)
  • 会場:箱根セミナーハウス(GPW2018会場)
  • 実行委員長:松江工業高等専門学校 橋本 剛
  • 参加条件:
    • 自作のガイスターAIプログラムを持参してください。コンピュータはなるべく持参してください。
    • (こちらでC++コンパイラ(Visual Studio)の入ったWindowsのノートパソコンを用意する予定ですが、プログラムが動く保証はありません。)
    • 当日会場にいること。
    • ただし、操作する代理人がいれば、開発者は不在でも構いません。(試合開始〜終了までが全自動であれば、私たちが代理人としてプログラムを動かすことができます)
  • 対戦形式:
    • リーグ戦 (総当りの予定。参加者が多ければスイス式)で上位2者を決定し、優勝決定戦を行う
    • 各組み合わせについて, 先手後手を交代して2試合おこなう。
    • 試合順は, 試合進行に応じて審判が決定する。
    • 勝ちポイント制:各試合について、勝ちなら1点、引き分けまたは負けなら0点が与えられ、総得点を競います。
  • 対戦プロトコル:

    • 以下のルールに基づいたガイスターサーバーを用いる予定です。対戦プロトコルは以下のURLを参照してください。
    • 対戦プロトコル
    • サーバ1台, クライアント2台を用います。サーバ用コンピュータはこちらで用意します(Windows 7またはWindows10)。
    • 不正手を送った場合はで負けとします。
    • (TCP/IP通信で文字列をやり取りします. それさえ可能であれば, どのOS, どの環境で作っていただいてもかまいません)
    • (現在は, 手元のWindows10マシン/Visual Studio 2015で開発した, C++によるAIが動作することを確認済みです。)
  • 時間制限:
    • それぞれに10分の持ち時間が与えられます。持ち時間が0秒になり次第, 1手10秒制限に切り替わります。
    • 時間切れは負けになります。
    • 時間はサーバーで計測します。
  • 引き分けについて:
    • 200手目を指したところで勝敗が決まっていなければ引き分けといたします。
  • 対戦プログラムに与えられる入力について (概要)
    • 盤面状態(盤上の相手駒の色は分かりませんが、自分駒の色・取った相手駒の色は分かります)
    • 残り時間(自分, 相手)は、現在の仕様では与えられません。
    • 詳細はこちら → 対戦プロトコル。
  • 申し込み・問い合わせ
    • 申し込み期限:大会開始直前まで(なるべく早めにお願いいたします)
    • 申込み・問い合わせ:松江高専 橋本までメールでお願いいたします。
      hashimoto●matsue_-_ct_dot_jp (●を@に, _-_を-に, _dot_を.に変えてください)
  • 参考:
  • 動作環境など/Setting

    • サーバマシン:
      • 型番:
      • スペック:
      • OS:
      • 搭載コンパイラ:Visual Studio 2015のc++コンパイラ(cl)
    • クライアントマシン(こちらで用意している1台):
      • 型番:
      • スペック:
      • OS:
      • 搭載コンパイラ:Visual Studio 2015のc++コンパイラ(cl)
    • 以下のシステム要件を満たすクライアントマシン・プログラムを, 各自持参して頂けると助かります。
      • OS:指定なし。Windowsの方が運営トラブルが少ないかもしれないです。
      • ガイスターサーバーのプロトコル(TCP/IPでやり取り)に準じた, ガイスターAIのプログラム。

    ガイスターについて

    ガイスターは, 相手の駒が見えない状態で戦うチェスゲームです。
    何が襲ってくるか互いに分からないというスリルを味わえます。
    十字方向に動かせる駒を互いに8個(青4個, 赤4個)持ち, 自陣の8マスに自由に設置した後, 先手後手が交互に動かしていきます。
    このゲームの勝利条件は、相手の青い駒(良いオバケ)をすべて取る or 自分の赤い駒(悪いオバケ)をすべて相手に取らせる or 自分の青い駒(良いオバケ)を1匹盤外に脱出させる、のいずれかです。
    なお, ローカルルールとして「自分の駒が見えないバージョンのガイスター」もあります。こちらもなかなか面白いですよ。