コンピュータ将棋の指し手一致率に見るNINTENDO64の性能の高さ

「コンピュータ将棋 Advent Calendar 2016」の十番手の緑SM64です。よろしくお願いします!
「コンピュータ将棋 Advent Calendar 2016へのリンクはこちら。
http://www.adventar.org/calendars/1457

 

  自己紹介

主にNINTENDO64のゲームをやりこんでいる人です。
コンピュータ将棋開発者ではありません。

 

コンピュータ将棋 Advent Calendar 2016の紹介文の
>一見関係ない話がそこでコンピュータ将棋と繋がるのか〜って話でも何でも歓迎です!
という一文に釣られてやってきた門外漢です。

 

今回は今年で20周年を迎えたNINTENDO64が当時としてはいかに高性能だったかを、コンピュータ将棋の指し手一致率から見ていきたいと思います。

 

長文の割に検証がとても雑なので、適当にお読みください。

 

  NINTENDO64とはなんぞや?

NINTENDO64は今から20年前の1996年に任天堂から発売されたゲーム機です。
当時としては圧倒的な性能を誇り、発売前には「25000円のスーパーコンピュータ」と呼ばれたこともあったそうです。
(参考記事:http://n-styles.com/main/archives/2004/11/26-052000.php

 

その驚異的な性能がよく現れているゲームソフトの一つとして、F-ZERO Xというレースゲームが挙げられます。
このゲーム、特筆すべき点はライバルマシンの多さです。
当時のレースゲームは、ライバルがせいぜい数台だったり、設定上はライバルが多くても一度に画面に映るマシン台数は数台というようなものがほとんどでした。
ところがなんとF-ZERO Xでは、プレイヤーを含め30台のマシンが、リアルタイムにレースを繰り広げるのです。
F-ZERO XNINTENDO64の性能がとてつもなく高かったからこそ実現できたゲームの一つであるといえるでしょう。

 

  NINTENDO64とコンピュータ将棋に何の関係が?

1996年には、プロ棋士羽生善治氏が史上初の七冠王となったこともあり、将棋ブームが起こっていました。
そんなわけでNINTENDO64の本体と同時発売タイトルには、将棋ゲームである最強羽生将棋がラインナップされました。

 

この最強羽生将棋の思考部には、1996年のコンピュータ将棋選手権で優勝した金沢将棋が採用されています。
現在では金沢将棋はスマホアプリとして人気を博しており、馴染みのある方も多いのではないでしょうか。
この時金沢将棋は、前身の極からカウントして選手権を四連覇していたそうで、これは未だに破られていない記録だそうです。
まさしく当時最強のコンピュータ将棋プログラムといえます。

 

  本題

前置きが長くなりました。
今回は「NINTENDO64の性能って本当にすごかったの?」という疑問を、棋譜解析による一致率という指標で検証していきたいと思います。

 

用意するもの

・第6回コンピュータ将棋選手権(以下CSC6)の棋譜ファイル
・最強羽生将棋にNINTENDO64で対局させた棋譜
・金沢将棋'96(NINTENDO64発売と同年の末に発売されたPC用ソフト)
・金沢将棋'96を自動操作するための自作ツール

 

手順

最強羽生将棋や金沢将棋'96には「レベル」という概念が存在します。
これを利用して
(1)金沢将棋'96の各レベルでコンピュータ将棋選手権のCSC6の棋譜を解析する。
(2)最強羽生将棋のいくつかのレベルの棋譜を金沢将棋'96の各レベルで解析する。
(3)(1)(2)からCSC6で使われたレベルに最も近い最強羽生将棋のレベルを割り出す。
(4)選手権の棋譜と最強羽生将棋の思考時間を比較し、大会用マシンとNINTENDO64との性能差を推定する。
という手順で検証していきたいと思います。

 

Q.直接最強羽生将棋で解析できないの?
A.手動ならなんとかできるとは思うのですが、自動化は私の実力では厳しかったですごめんなさい。

 

検証

  (1)金沢将棋'96の各レベルでコンピュータ将棋選手権のCSC6の棋譜を解析する。

【金沢将棋'96とCSC6の棋譜の一致率】
森田将棋 YSS Ver.6.0 柿木将棋 JIII 矢埜将棋II S1 宗銀 平均
L1 65% 75% 54% 56% 68% 69% 65% 64%
L2 65% 81% 54% 54% 73% 67% 65% 65%
L3 71% 84% 59% 56% 73% 75% 76% 70%
L4 68% 81% 57% 55% 71% 73% 76% 68%
L5 68% 80% 56% 57% 77% 69% 65% 67%
研究 68% 76% 63% 58% 75% 75% 65% 68%

金沢将棋'96のレベル3との一致率が高いようです。

 

  (2)最強羽生将棋のいくつかのレベルの棋譜を金沢将棋'96の各レベルで解析する。

全レベルでは検証してません。ごめんなさい。
【金沢将棋'96と最強羽生将棋の棋譜の一致率】
最強羽生将棋のレベル5の棋譜
L2 67% 60% 59%
L3 75% 66% 71%
L4 84% 66% 69%
最強羽生将棋のレベル4の棋譜
L2 58% 62% 67% 84% 73% 80% 50% 65% 56%
L3 69% 73% 77% 84% 82% 86% 67% 63% 56%
L4 68% 65% 72% 78% 86% 80% 60% 60% 50%
最強羽生将棋のレベル3の棋譜
L2 65% 75% 70% 66% 66% 70% 70% 57%
L3 68% 67% 70% 53% 63% 59% 59% 57%
L4 62% 62% 70% 53% 59% 60% 60% 59%
最強羽生将棋のレベル2の棋譜
L2 90%
L3 80%
L4 75%

…サンプル数が少なかったりバラバラだったりしますね。
このデータを見ると、金沢将棋'96のL3は最強羽生将棋のL4に近そうです。

 

  (3)(1)(2)からCSC6の設定に最も近い最強羽生将棋のレベルを割り出す。

L4あたりっぽいですね。

 

  (4)選手権の棋譜と最強羽生将棋の思考時間を比較し、大会用マシンとNINTENDO64との性能差を推定する。

持ち時間を見ていきましょう。
CSC6の7局の平均思考時間:15分12秒
CSC6の7局の平均思考手数:115.6手

 

最強羽生将棋のL4の棋譜7局の平均思考時間:31分48秒
最強羽生将棋のL4の棋譜7局の平均手数:133.7手

 

大体倍くらい違いそうです。
同等の棋力を達成するのに倍の時間がかかっているということは、
NINTENDO64の性能は大会用PCの半分くらいと言えそうです。(雑)

 

もちろん最強羽生将棋の思考時間は、展開によって大きく変わってきます。
そのため、選手権の棋譜を入力しながら各手の思考時間を入力して比較するなどすれば、もう少し精度の高い検証が可能かもしれません。

 

さて、では当時このマシンはいくらしたのかということが問題ですが、残念ながら私にレトロPCの知識が皆無なのでわかりませんでした。(誰か教えて)
第5回コンピュータ将棋選手権と異なるマシンで、かつ第5回で使用されたマシンよりCPUのクロックがあがっているので、多分当時の最先端に近いマシンだと思います。

 

以下の記事によれば、1996年のPCの平均価格は243,000円だそうです。
https://matome.naver.jp/odai/2145176062729422701
NINTENDO64はこの10分の1程度の値段なので、当時強い将棋ソフトが欲しかった場合、コスパは抜群だったようです。

 

  まとめ

NINTENDO64は、当時の平均的なPCの10分の1くらいの価格で、金沢将棋の大会出場マシンの2分の1くらい(やや雑)の性能を実現していました。

 

NINTENDO64の性能は時代、価格を考えればとてもすごいといえるのではないでしょうか。
様々な工夫を重ね、ゲームに特化することでここまで高性能、低価格を実現できたんですね。

 

ここまでの検証から、最強羽生将棋は当時最先端のマシンと最先端の将棋プログラムがセットで手軽に手に入る歴史的遺産といえるのではないでしょうか。
羽生七冠(当時)の棋譜が600局くらい(すべて解説付き)、詰将棋が300題くらい、羽生七冠の写真が50枚くらい(すべて撮り下ろし)入っているという大ボリュームも魅力です。
ぜひお近くのお店でお買い求めください。

 

また、今のコンピュータ将棋プログラムは最強羽生将棋とは比べ物にならないほど強くなっています。
今後のコンピュータ将棋選手権にも注目ですね。

 

最後までお付き合い頂き、ありがとうございました。

 

-終-



  おまけ

余りに将棋に関係のある記述が少ない気がしたので、最強羽生将棋COML5の短手数攻略を置いておきます。
攻略本の31手の手順よりも8手(片側4手)短いです。

 

先手:あなた
後手:最強 羽生将棋 COML5

▲8六歩      △8四歩      ▲7六歩      △8五歩      ▲同 歩      △同 飛
▲9六歩      △8七飛成    ▲9五歩      △6七龍      ▲6八飛      △5七龍
▲5八飛      △4七龍      ▲8二歩      △8七歩      ▲8一歩成    △8八歩成
▲7一と      △7九と      ▲5三飛成    △5二金左    ▲6一と
まで23手で先手の勝ち

 

 

[2016/12/10 23:10] まとめがわかりにくかったので先頭に1文追加しました
[2022/01/13 20:17] おまけの手順を差し替えました