第1回 UEC杯デジタルカーリング大会
大会結果
表の数字は試合終了時における総得点です。表を横に見たとき青が勝ちで赤が負けになっています。
また、「バグ*」は*エンド目でプログラムが終了した為負けになったことを表し、「時切*」は*エンド目で時間切れになった為負けになったことを表す。「降*」は*エンド目でプレイヤーが降参したことを表している。
ログファイル
UEC1 - Log(2).zip(118)
本大会での試合のログです。デジタルカーリングクライアントを用いて再生することができます。
大会参加プログラム
EXEファイル
- 歩 - 大渡 勝己
ayumuUEC'15.zip(140)
- プログラム紹介文
大部分の着手をモンテカルロ木探索により決定します。現局面での着手は、四分木によって速度ベクトル値の絞り込みを行い、最適点を探します。
先読み中の局面は、局面認識精度を段階分けすることで、最初は石の配置が近い局面は同一局面と認識し、ある局面の到達回数が多ければさらに認識精度を上げて細かく見分けるようにしています。
先読み中の着手は、最初にかなり絞り込んだりヒューリスティックに1つに決定したり等、かなり細い読みを行っています。
局面進行のための物理演算は大部分を自作しています(複雑な衝突で無限ループに入ったときには、Box2Dに投げています)。配列参照を基本としたアルゴリズムで公式のシミュレータより高速ですが、衝突モデルがBox2Dと異なるのか、たまに大きな誤差が出ています。
- じりつくん - 加藤 修
じりつくん.zip(104)
- プログラム紹介文
離散化させた盤面全体の各座標を投球目標座標の候補とし,各目標座標に対して投球後の局面評価値の期待値をもとにゲーム木探索を行って戦略を選択するカーリングAI
- ChickenRamen - 岡田 雷太
chickenramen.zip(122)
- プログラム紹介文
UCTを用いた手法を使っています。候補手はあらかじめ局面に応じて投げる場所を決めています。候補手に対してUCTを行い投げる手を選んでいます。並列化はルーと並列化を行ってプレイアウト数を稼いでいます。
- N197 - 北清 勇磨
N197.zip(121)
- プログラム紹介文
自チームの1〜7投目に関してはルールベースで動作します。基本的には、No.1ストーンが相手のストーンならそのストーンをはじき、No.1ストーンが自チームのストーンならガードを置き、ハウス内にストーンがない場合にはハウス内にドローします。
8投目に関しては自分のショットには乱数を加え、相手のショットには乱数を0にした上でツリー探索を行っています。その中で得点数の期待値が最も高い手を選択します。
- KC001 - 城戸 皓己
KC001.zip(85)
- プログラム紹介文
序盤から終盤までモンテカルロ法のプレイアウトを行うことによって評価しています。プレイアウトを行う手の選択には多腕バンディット問題の解決アルゴリズムの一つであるε-GREEDYアルゴリズムを適用しています。プレイアウトを行う際には8スレッドで並列化しています。スレッドそれぞれでプレイアウトを行うLeaf並列化をしています。最善手の選択については、ε-GREEDYアルゴリズムを5回行い、それぞれで計算した手の中で最も多いものを最善手としました。
- TOMania - 森 健太郎
TOMania.zip(91)
- プログラム紹介文
自分の1投目から6投目までは、No.1ストーンが相手のストーンであればテイクアウトします。7投目と8投目のみ原始モンテカルロによる探索を行います。
ソースコード
※実行ファイルとは若干異なる場合があります。
- 歩 - 大渡 勝己
- じりつくん - 加藤 修
- ChickenRamen - 岡田 雷太
- N197 - 北清 勇磨
- KC001 - 城戸 皓己
- TOMania - 森 健太郎
TakeOutMania.zip(94)
最終更新時間:2015年06月09日 02時43分21秒