ゲーム1のAlphaZeroとStockfishの間の動きを例に挙げて、2番目のポイントについて詳しく説明すると、今日の好奇心を満たすのに最適だと思います。
1分/移動の制限時間(これはStockfishにどのように不利になりますか?)
Stockfishのパフォーマンスは、制限時間とハードウェア構成の両方に依存しているため、誰かがCPUスレッドを2倍にした場合、Stockfishは最初の構成よりも解決策を見つけるのに必要な時間(必ずしも半分ではない)を考えるだけです。
Chess.comに投稿された最初のレポートでは、Stockfishがコンピューターで同じStockfishを使用しても同じ結果を再現できなかったため、Stockfishが最適にプレイされていないと主張しました。彼は、下の位置(ゲーム1-11番)で、StockfishがKg1-h1(キングを動かした)をプレーしたが、まったく意味がないと言いました。一方、彼のコンピューター上のstockfishは、Be3(暗い四角の司教を動かしてください)のような、より発展している動きを示しました、位置を見てみましょう:
はい、それは受動的な動きであり、Stockfishはより発展的な動きをするべきだったようです。しかし、彼は間違っていました。どうして?ストックフィッシュを15秒間実行し、1時間実行した場合、その位置でのベストムーブとしてKg1-h1を獲得できたからです。Stockfishは、考えられるすべての動きをより詳細に分析すると、決定を変更します。ここだ、私はもともと私の返事に言いました:
私はその位置で最新のストックフィッシュを走らせました(11番手):
- 最初は、エンジンが約1分間作動しているときの最適な動きとしてb4を与えます。その後、Be3の方が優れていると判断します。
しかし、1,400kノード/秒で実行するハードウェアで5分後に、Kh1を最適な移動として使用することにします。
論文では、stockfishは毎秒70,000kポジションを計算し、1移動につき1分間実行されると言われています。これは私のハードウェアの約50倍であるため、Kg1-h1はまだストックフィッシュの選択。
制限時間が鍵です
上記の場合、意思決定は同じだったのでStockfishが2回実行されても大した問題ではなかったでしょうが、次の動きでは間違いなく次のようになります。
この位置で、Stockfishはポーンを左側に移動することを選択しました(a4-a5)。ストックフィッシュエンジンを毎秒1,400kノードの速度で実行するコンピューターがあるとします。これは、実際のゲームのストックフィッシュの約50倍低い(論文では、70,000kn / sと表示されています)。したがって、各移動で50分間実行すると、ゲームをシミュレートできます。はい。
上記の位置でStockfish分析を実行すると、次の結果が得られました。
- Stockfishはいくつかの動きを提案し始めましたが、コンピューターで6分(実際のゲームではStockfishで7.2秒に相当)した後、ゲームが進むにつれてa4-a5を好みました。
それは良いことですが、1分間許可されたゲームでStockfishの計算に到達するために、完全に50分間実行し続けました。
悲しい真実は、Stockfishが時間制限のためにすべてのゲームを失ったと信じていることです。Stockfishは、時間が経つにつれてより詳細な検索と評価を取得し、ゲームでは浅い深さでの多くの動きを考慮するオープニングブックの使用が許可されませんでした。実際のゲームではa4-a5がプレイされたことに注意してください(ゲームが毎秒7000万ポジションを評価できると仮定すると)、ゲームのStockfishは移動に21.6秒以上費やしていません。そうでなければ、その決定を実際のゲームの他の3つの動きに変更することになります。Stockfishのメモリ消費量が少ないため(これはすべてがハッシュテーブルに送られると仮定した場合、元の論文で言及された 1GBと比較して約130MBのRAM)、この理由はまだわかりません。
結論
私が指摘したように、Stockfishを実行したハードウェアは、分析した動きに基づいて、最高で私のものよりも18倍高速でした(更新:シングルコア上)。AlphaZeroがそのようなハードウェアを実際に使用して4時間でネットワークをトレーニングできるかどうかはわかりませんが、チェスのようなゲームには低すぎるとしか考えられません。その上、AlphaZeroはこれらの時間を学習に費やしました。これには、堅実な開口部の構築も含まれます(そして、論文が指摘するように、特定の開口部に対する選好)。一方、Stockfishは開始時に障害があり、各移動で60秒間、1秒あたり7000万のポジションを評価しませんでした。
最後に、私が言ったことはすべて私の仮定に基づいていました。もちろん、AlphaZeroとゲームの結果は私にとって非常に興味深いものでした。しかし、Stockfishのプレイがコンピューターでのプレイと同じようなゲームを楽しみたいと思っていました。つまり、より多くの時間と最初の本が許可されます。Stockfish分析の出力を移動するたびに簡単に取得することもできます。パフォーマンスを確認するためにリリースすることを希望します。