ガイスターAI大会@GAT2020

大会の目的/Purpose

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

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

大会の概要/Outline

  • 日程:2020年 3月14日 (土) ~ 15日 (日)
  • 会場:電気通信大学内/University of Electro-Communications
  • 実行委員長:松江工業高等専門学校 橋本 剛
  • 実行委員:北陸先端科学技術大学院大学 川上 直人
  • 参加条件:
    • 自作のガイスターAIプログラムを持参してください。コンピュータはなるべく持参してください。
    • (こちらでC++コンパイラ(Visual Studio)の入ったWindowsのノートパソコンを用意する予定ですが、プログラムが動く保証はありません。)
    • 当日会場にいること。
    • ただし、操作する代理人がいれば、開発者は不在でも構いません。(試合開始~終了までが全自動であれば、私たちが代理人としてプログラムを動かすことができます)
  • 対戦形式:
    • リーグ戦 (総当りの予定。参加者が多ければスイス式)で上位2者を決定し、優勝決定戦を行う
    • リーグ戦各組み合わせについて, 先手後手を交代して2試合おこなう。
    • リーグ戦各試合は,勝ち3点,引き分け1点,負け0点として勝ち点を計算しその合計で順位を決定する。
    • 優勝決定戦は, 先手後手を交代して2試合行う。引き分けとなった場合は, じゃんけんで先後を決定しさらにもう1試合で優勝を決定する
    • 試合順は, 試合進行に応じて審判が決定する。
  • 対戦プロトコル:

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