このブログは、株式会社フィックスターズのエンジニアが、あらゆるテーマについて自由に書いているブログです。
こんにちは。社内プロコン担当エンジニアの二木です。
昨年の11月に開催されたフィックスターズ社内プログラミングコンテスト『量子リバーシ』ですが、2月6日にコンテストが締め切られ、今月の16日に結果発表会および懇親会を開催しました。今回はそのご報告となります。
まず、おさらいとして量子リバーシのルールを説明しておきます。
詳細については、以前のブログ記事「第6回 社内プログラミングコンテスト『量子リバーシ』開催」をご覧ください。
今回のコンテストの参加人数は20人となり、これまでで最多の参加人数となりました。多くの方にご参加いただき、ありがとうございます!
社外からの参加者は3人でしたが、個人的にはもっと多くの方に参加していただきたいと思っています。やはり、正式な募集もしていませんし、社内プログラミングコンテストと銘打っているので、参加しづらかったのかもしれません。次回はそのあたりも考慮して参加しやすいようにしたいと思います。
参加者による発表では、工夫を凝らした戦略やアルゴリズムがたくさんあり、興味が尽きない内容でした。モンテカルロ木探索(MCTS)を多くの上位者たちが採用していましたが、それを基本としてどのように強くしていくかの戦略がそれぞれ異なっており、その差が結果に反映されたようです。
発表会資料
以下に上位3名の説明スライドを載せておきます。
優勝者 QIXさん
第二位 tsukammoさん
第三位 logicmachineさん
最後に順位表と対戦の分析結果を載せておきます。順位表ではプレイヤー名を非表示にしています。先攻・後攻それぞれ50対戦ずつの計2,100対戦の総当たり戦によるランキングになっています。
最終ランキング
rank | score | wins | losses | draw | rate | language |
---|---|---|---|---|---|---|
1 | 5406 | 1751 | 196 | 153 | 0.8338 | C++ |
2 | 5259 | 1721 | 283 | 96 | 0.8195 | Java |
3 | 5193 | 1692 | 291 | 117 | 0.8057 | C++ |
4 | 5006 | 1618 | 330 | 152 | 0.7705 | C# |
5 | 4798 | 1552 | 406 | 142 | 0.7390 | C++ |
6 | 4373 | 1405 | 537 | 158 | 0.6690 | C++ |
7 | 4203 | 1346 | 589 | 165 | 0.6410 | Python |
8 | 4115 | 1312 | 609 | 179 | 0.6248 | Python |
9 | 4102 | 1308 | 614 | 178 | 0.6229 | C++ |
10 | 3314 | 1049 | 884 | 167 | 0.4995 | Python |
11 | 2818 | 891 | 1064 | 145 | 0.4243 | C++ |
12 | 2707 | 807 | 1007 | 286 | 0.3843 | C++ |
13 | 2644 | 815 | 1086 | 199 | 0.3881 | Go |
14 | 2321 | 734 | 1247 | 119 | 0.3495 | Python |
15 | 2272 | 685 | 1198 | 217 | 0.3262 | C++ |
16 | 2141 | 672 | 1303 | 125 | 0.3200 | Python |
17 | 1985 | 592 | 1299 | 209 | 0.2819 | Nim |
18 | 1461 | 417 | 1473 | 210 | 0.1986 | C++ |
19 | 1442 | 409 | 1476 | 215 | 0.1948 | Python |
20* | 1110 | 352 | 1694 | 54 | 0.1676 | C++ |
21 | 576 | 178 | 1880 | 42 | 0.0848 | Python |
22⁑ | 364 | 104 | 1944 | 52 | 0.0495 | Python |
* サンプルコード「あけみさん」
⁑ サンプルコード「ただしくん」
対戦結果の解析を以下に示します。円グラフは、青が勝利、赤が敗北、黄色が引分を表しています。
結果発表会の後は、懇親会となりました。軽食と飲み物が用意され、どのような経緯でコンテストに参加したか、どのような戦略を取ったのかといった、今回のコンテストに因んだ話題から、普段はどんなコンテストに出ているか、どんなコードを書いているか、さらに普段の日常の話に至るまで、様々な話題で盛り上がっていました。グループを作ってホワイトボードを前にアルゴリズム談義が始まったりしたのもプロコンの懇親会ならではのことだったと思います。
今回のコンテストは、開催時のブログ記事を読まれて参加していただいた方もいらっしゃるので、さらに参加者が増えるように、来年度はもっと参加しやすい環境を用意したいと思います。是非ご参加ください!
コンピュータビジョンセミナーvol.2 開催のお知らせ - ニュース一覧 - 株式会社フィックスターズ in Realizing Self-Driving Cars with General-Purpose Processors 日本語版
[…] バージョンアップに伴い、オンラインセミナーを開催します。 本セミナーでは、...
【Docker】NVIDIA SDK Managerでエラー無く環境構築する【Jetson】 | マサキノート in NVIDIA SDK Manager on Dockerで快適なJetsonライフ
[…] 参考:https://proc-cpuinfo.fixstars.com/2019/06/nvidia-sdk-manager-on-docker/ […]...
Windowsカーネルドライバを自作してWinDbgで解析してみる① - かえるのほんだな in Windowsデバイスドライバの基本動作を確認する (1)
[…] 参考:Windowsデバイスドライバの基本動作を確認する (1) - Fixstars Tech Blog /proc/cpuinfo ...
2021年版G検定チートシート | エビワークス in ニューラルネットの共通フォーマット対決! NNEF vs ONNX
[…] ONNX(オニキス):Open Neural Network Exchange formatフレームワーク間のモデル変換ツー...
YOSHIFUJI Naoki in CUDAデバイスメモリもスマートポインタで管理したい
ありがとうございます。別に型にこだわる必要がないので、ユニバーサル参照を受けるよ...