この記事はOpenEsys Advent Calendar 6日目の記事です。
第4回世界将棋AI電竜戦本戦に参加してきました
自己紹介
こんにちは。JJ1GUJです。esys17&imis21で現在はあきはばらようちえんで園児をしています。 プロセカが好きで先日推しイベのガチャで爆死しました。
その後更に課金して限定全員引けたのは嬉しかったです(白目)
遥ちゃんかわええ
しれっとリンクを載せているのですが夏あたりからRaspberry Pi4を使用してMisskeyサーバーを建てて自宅でホスティングしています。 よかったらフォローしてくれると嬉しいです
電竜戦とは
電竜戦は2020年から始まった比較的新しい将棋AIの大会です。 カツ丼将棋(@katsudonshogi)さんがNPO法人を建てられて大会を運営しています。 よくある形式の対局だけでなく、指定局面から指し継いで競うTSECやハードウェア統一戦など様々なルールで大会を開いているのが大きな特徴です。 今大会では41チームが参加し、2日にかけて行われました。 持ち時間は先手5分1手ごとに2秒加算、後手10分1手ごとに2秒加算というルールで行われました。
ソフトの概要
今回もponkotsuというソフト名で出場しました。 Deep Learningを使用しており、学習モデルにDenseNetを使用しているのが大きな特徴です。 今大会に向けてブロック数を10ブロックから20ブロックに増やし、定跡を新たに掘り直しました。 モデル単体の性能で行くと世界11位を取ったモデルに対し約R+200と大きく強化されています。 また、マシンはGCPでNVIDIA L4を4台借りていました。
0回戦
クラウド勢は0回戦があります。 なにかというとGPUの確保です。 今回NVIDIA A100を4台借りたかったのですがみんなが生成AIの学習とかで使うので借りれませんでした。あ~あ。
電竜戦に向けてGCPでA100確保できるか試してみたんだけど確保できなくて泣いてる
— JJ1GUJ@WCSC33 11位 (@jj1guj) 2023年11月29日
この日を境に生成AIのアンチになりました。
俺はLLMを始め生成AIを許さない https://t.co/bFgOgvxGrg
— JJ1GUJ@WCSC33 11位 (@jj1guj) 2023年11月29日
0回戦敗退しました…
— JJ1GUJ@WCSC33 11位 (@jj1guj) 2023年11月29日
敗因は生成AIです… https://t.co/HFGcehw8RN
ということで仕方なくNVIDIA L4を4台借りることにしました。 単体でRTX3090より少し性能が落ちるくらいだったのでまあ4台も借りれれば十分かなといったところでした。
今回対局数が多いので(2日合わせて28戦)ダイジェストで勝った対局と負けた対局を1局ずつ取り上げようかなと思います。
1日目
1日目は先後入れ替えて計14局を戦い、上位10チームがA級リーグに、11位~20位がB級リーグに、残りがC級リーグに振り分けられました。
4回戦表
4回戦はponkotsuの先手で5月に開催された世界コンピュータ将棋選手権でも当たったあすとら将棋が相手でした。 選手権のときにはponkotsuがマシントラブルにより敗北しており、こちらにとってはリベンジ戦でした。 角換わりのオープニングで序盤からponkotsuが評価値400点を出している一方で、あすとら将棋は評価値が100点前後でハラハラする展開でした。 今回のponkotsuはかなり自分に甘い評価値を出しており、評価値500点程度でもひっくり返されそうな印象でした。 68手目からあすとら将棋も評価値が500点となり、一安心かと思いきやなかなか詰まず、またドキドキしていました。 最終的には相入玉となり、そこからなんとか詰ますことができました。 個人的にリベンジ達成でき、嬉しい一局となりました。
棋譜はこちら。
7回戦表
最終7回戦はponkotsuの先手でKyoShogiとの対戦でした。 最終戦は自力でのB級リーグ入りがかかっており、ここまで先手で負けたソフトは後手でも負ける流れだったため、とても重要な一戦でした。 この対局も序盤でponkotsuが評価値300点と自分に甘い点数をだしており、不安に思っていたところその不安が的中し、KyoShogiにうまく指され、負けとなりました。
棋譜はこちら
KyoShogiには先後入れ替えた次戦でも負けとなり、B級リーグ入りは他力となりました。
ponkotsu B級入り他力ですね
— JJ1GUJ@WCSC33 11位 (@jj1guj) 2023年12月2日
結果は7勝7敗の22位となり、惜しくもB級リーグ入りを逃してしまいました。 一方で最終戦で当たったKyoShogiは最終戦で連勝した結果A級リーグ入りを果たし、完全に明暗が分かれる形となりました。
ぐえええええ
— JJ1GUJ@WCSC33 11位 (@jj1guj) 2023年12月2日
ぎりぎりでC級だったのかああ
ponkotsuは7勝7敗で22位でした
— JJ1GUJ@WCSC33 11位 (@jj1guj) 2023年12月2日
ぎりぎりでB級入りを逃し悔しいですが明日のC級も頑張ります
応援ありがとうございました
明日もよろしくお願いします#電竜戦
いやぁ
— JJ1GUJ@WCSC33 11位 (@jj1guj) 2023年12月2日
B級入れなかったの悔しいなぁ
ただ新モデル学習させる暇なかったからそんなもんといえばそんなもんなんだけどそれでもなぁ…
途中A級リーグ入りが見える7位までつけていたこともあり、かなり悔しかったです。
ここから順位15個落としたってまじ? https://t.co/Rf50s8U6Ix
— JJ1GUJ@WCSC33 11位 (@jj1guj) 2023年12月2日
2日目
C級リーグであったこともあり、別にインスタンスを借りなくてもいいかと思っていたのですが、こうなったら優勝を目指そうと心を切り替え、結局借りることにしました。
インスタンス借りなくてええか
— JJ1GUJ@WCSC33 11位 (@jj1guj) 2023年12月2日
いろいろトラブルあったけどなんとかインスタンスの環境構築完了
— JJ1GUJ@WCSC33 11位 (@jj1guj) 2023年12月2日
4回戦表
4回戦はponkotsuの後手でAobaZeroとの対戦となりました。 AobaZeroとは2年前の世界コンピュータ将棋選手権依頼の直接対決で、ponkotsuにとってはリベンジがかかっていました。 また、ここまでAobaZeroとponkotsuは全勝できており、優勝を目指す上では落とせない一戦でした。 戦型不明の力戦?っぽい進行になり、80手目あたりまで互角の怖い展開だったのですがなんとか最後ponkotsuがリードを奪うことができなんとか勝つことができました。 リベンジ兼全勝を死守することができ嬉しかったです。
後手で勝てたのでけえええええ
— JJ1GUJ@WCSC33 11位 (@jj1guj) 2023年12月3日
[先300秒] 【C級】第4回電竜戦本戦 4回表☗AobaZero-☖ponkotsu 147手目 投了
https://t.co/NORR5c33il #将棋 #電竜戦 @DenryuSenより
棋譜はこちら。
5回戦裏
5回戦は十六式いろは幻との対戦でした。 裏はponkotsuの後手番となりました。 十六式いろは幻には前日にも当たっており、そのときには表裏両方でponkotsuが勝っていました。 しかしながら前日からR200くらい強くなっているとの情報があり、かなり不安でした。
十六式いろは幻(まほろ)は#電竜戦 の初日は
— すえよし@十六式いろは煌、将スタ、wshogi(公式) (@16shiki168) 2023年12月3日
wcsc33時の評価関数「キラゼロ評価関数」
を使っていましたが
今日2日目は、Haoの評価関数を混ぜて
さらにそこから機械学習を重ねた
「キラゼロHao評価関数」を使っています。
昨日と比べて
R差は200オーバー(勝率78%)です😎#将棋AI
表でponkotsuが先手番を持ったときはなんとか勝つことができたのですが、この対戦では60手目を越えたあたりから徐々に十六式いろは幻にリードを奪われ、負けとなってしまいました。 それと同時に全勝も阻止され悔しい一局となりました。
ぐええええええええ
— JJ1GUJ@WCSC33 11位 (@jj1guj) 2023年12月3日
負けてるうううううううううう
全勝だめかあああああ
— JJ1GUJ@WCSC33 11位 (@jj1guj) 2023年12月3日
負けたああああ泣
— JJ1GUJ@WCSC33 11位 (@jj1guj) 2023年12月3日
[先300秒] 【C級】第4回電竜戦本戦 5回裏☗十六式いろは幻(まほろ)-☖ponkotsu 4手目 ☖5一玉
https://t.co/s4aIESMAjp #将棋 #電竜戦 @DenryuSenより
どうも角換わりが苦手なようです
ponkotsu角換わり苦手定期
— JJ1GUJ@WCSC33 11位 (@jj1guj) 2023年12月3日
棋譜はこちら。
最終的に12.6勝1.4敗(後手番で1度引き分けたので0.6勝付与されている)となり、ギリギリではありましたがC級リーグを優勝することができました。
第4回電竜戦C級優勝しました#電竜戦
— JJ1GUJ@WCSC33 11位 (@jj1guj) 2023年12月3日
また、年明けから開催される第2回マイナビニュース杯電竜戦ハードウェア統一戦の出場権も獲得することができました。
え?統一ハード戦出場権ゲットまじ??!!!!!!!!
— JJ1GUJ@WCSC33 11位 (@jj1guj) 2023年12月3日
統一ハード戦出場権獲得、流石に青天の霹靂なので勝敗より来年の選手権に向けたデータ収集を目的として新ネタを仕込む方向で動こうと思います
— JJ1GUJ@WCSC33 11位 (@jj1guj) 2023年12月3日
感想とか
今回C級リーグで優勝することができ、非常に嬉しかったです。 個人的に任意の大会で優勝したことがなく、初めての経験でした。 また、ある程度ponkotsuが強いことがわかり安心しました。 一方で他ソフトのレベルが著しく上がっており、かなり厳しい大会でした。 ponkotsuも選手権と比べるとマシン性能込みでおそらくR200程度は強くなっているはずなのにC級リーグに振り分けられるという魔境でした。 半年程度でここまでレベルが上がるとかなりつらいものがあります。 正直来年の選手権の一次予選突破ラインがR4000になっていても震えどすれも驚かないと思います。
説ありそう(震え声 https://t.co/qZixvchtOY
— JJ1GUJ@WCSC33 11位 (@jj1guj) 2023年12月2日
ponkotsuに関しては序盤でかなり楽観視しているだけでなく中終盤で頓死筋を読み切ることができず負けるようなケースもあり、課題が残る大会となりました。 おそらくですが今大会でオリジナルなDenseNetを採用するのは最後になります。 というのもDenseNetは層を深くしていくにつれてチャンネル数が増大するため、ブロック数を増やすことができないという課題があるためです。 そのため現在この問題を解消した改良版のモデルを作成しており、年明けのハードウェア統一戦では改良版のモデルを出す予定です。 今大会で使用したモデル・定跡・設定は後日やる気が出たときに公開する予定です。 しばらくお待ち下さい…
年明けも第2回マイナビニュース杯電竜戦ハードウェア統一戦に向け頑張っていきますので応援よろしくお願いします(みんな強すぎて勝てるビジョンが見えない…)