USIプロトコルのコンピュータ将棋エンジンのフェイルオーバーツール【コンピュータ将棋】
コンピュータ将棋エンジンの強さを最大化するにはAWS等のクラウド上の強力なマシンの利用が不可欠ですが、大会で本番対局中に回線が切れるという可能性があります。また普段より性能の高いマシンで十分に動作テストが行えず、クラッシュするリスクもあります。このような問題が生じた際に時間切れ負けとして諦めるのではなく、ローカルのマシン上で別のエンジンに切り替えて終局まで指し続けられるようにするツールを作成しました。
今年は世界コンピュータ将棋選手権が中止となり代替としてオンライン開催になります。オンライン開催だとローカルマシンと対局サーバ間の通信が切れるリスクと、クラウドとローカルマシン間の通信が切れるリスクは同じなのであまりこのツールの出番はないかもしれません。とはいえ作りかけで放置するとソースコードの構造を忘れてしまうので、完成させて公開しました。