探索部について深い理解が得られるように、ここで時代を遡り原始的な探索部として、昔の将棋ソフトについて見ていこう。太古の将棋ソフト世界で最初に作られた将棋ソフトは、瀧澤武信さん(現CSA会長)が1975年に作られた将棋ソフトだと言われている。WCSC28の懇親会で私とQhapaqの澤田さんが瀧澤会長に「あれは何の言語で書かれたのですか?」と尋ねたところ、「Fortranで...」とお答えいただいた。Fortranが死ぬほど嫌いな澤田さんはその瞬間「ヒェッ」と毒蛇を踏みつけたときのような奇声を上げ、Fortranに親を殺されたかのような恨みしかない私は「ムグゥ」とヤンキーにカツアゲされてボディーブローをお見舞いされたかのような奇声を上げた。瀧澤会長に対して失礼極まりない態度の二人であったが、二人にとってはそれぐらいの衝撃であった。ちなみに小谷善行さん(現CSA副会長)は、当時(1970年代後半)、将棋ソフトをLISPで書いていたとか何とか...。1980年代の将棋ソフト将棋ソフトが一般的に知られるようになるのは1980年代だと思う。1980年ぐらいに『月刊アスキー』のマイクロオセロリーグというオセロソフト同士の対局企画が始まった。その第3回である1982年に森田和郎さんが参加して優勝された。1980年代最強のオセロソフトと言えると思う。森田さんはそのころから将棋ソフトのほうも作り始める。『森田のオセロ』が意外と売れたので将棋ソフトを作ればもっと売れると思ったからではないかと私は邪推している。実際、森田和郎さんは、この2年後である1984年にPC-8801用の将棋ソフト『森田和郎の将棋』をエニックスから発売する。このソフトはコンピュータ将棋の草分け的存在である。これを皮切りにファミコン向けの将棋ソフトもたくさん発売された。初代『谷川浩司の将棋指南』はMSX用のソフト『ファミコン名人戦』(SNK/1988年)『谷川浩司の将棋指南III』(ポニーキャニオン/1989年)『ファミコン将棋竜王戦』(アイマックス/1991年)...このようにWCSC1(第1回世界コンピュータ将棋選手権)が1990年に開催される時にはすでにかなりの数の商用将棋ソフトが発売されていたし、商用版であるからかなり本気で作られていた。ほとんどのソフトは、オールアセンブラで書かれていたし、『森田将棋』に至っては、森田さんがオセロソフトで培ったノウハウが投入されていたから、当然ながら現在のαβ探索のようなことはやっていたと思われる。(αβ探索について詳しいことは次回記事で書く。)『森田将棋』がαβ探索していた証拠をここで提示するのは難しいが、森田さんが『マイコンBASICマガジン』誌に1988年ごろちょくちょく記事を書くようになって、そこにAIの話題が何度か取り上げられていた。そこには「αβ探索」について触れている記事もあったと思うし、『月刊アスキー』のマイクロオセロリーグの記事でもαβ探索について森田さんが触れている記事があったと思う。そんなわけで当時にはすでにαβ探索は十分一般的になっていたと思う。大昔(30年前)の将棋ソフトというと事情を知らない人は「高校のパソコン部で学園祭のためにN88-BASICで作りました」ぐらいを想像してしまうかも知れないが、そうではなく、ファミコンブームに後押しされ、森田和郎さんのような天才プログラマーがガチ(本気)で作ったソフトが商用ソフトとして多数存在していたということであるな。言え、『森田将棋』が別格なだけで、他のファミコンソフトは、1手詰めに気づかず頓死することは多々あった。将棋秘伝』を15手で詰ませるという手順である。なんと、1手詰めが見えていない。このソフトは1手すら読んでいないのかというとそうではなく、選択的にしか先を読んでいないので1手先ですら読めていない指し手があるということだ。(と思う)1秒間に100局面しか読めない将棋ソフトところで、大昔のソフトでは、1秒間に100局面ぐらいしか読めなかったという話がある。https://twitter.com/tanaseY/status/1129194787783921664ここで言う大昔がどの時代かよくわからないが、1秒間に100局面というとファミコン版の『森田将棋』がおそらくそれくらいであったと思う。1秒間に100局面ぐらいしか読めない状況だと、評価関数に力を入れるのか、枝刈りに力を入れるのか、選択的探索に力を入れるのか、その開発者によって力の入れどころがまちまちなので、そういうソフトを長い持ち時間で対局させたときに差がでるのは、まあ、そうなんだろうなとは私は思うものの、当時のソースコードが入手できる形で残っているわけでもないのでそのへん検証のしようがない。想像にまかせて理由をあれこれ書くのもアレなので、この件はこれくらいに留めておく。超低ノード(1手10局面)で最強ところで、1手につき10局面を読める場合と100局面を読める場合とで指し手の方針が全く異なることには読者は異論ないであろう。1手につき10局面しか読めないのであれば、駒をタダ取りされる指し手と王手を回避することに注力するだろう。飛車が取られそう(だから逃げる)だとか、駒を取れそう(だから取る)だとか、取ったあとに取り返されそうだとか、その手を指した直後に詰まされそうだとか、そういう致命傷になりかねない指し手を最優先にして読まなければならない。ところが1手につき100局面読むのであれば、そういう指し手ばかりではなく、駒を取ったり取られたりする指し手以外も考えるべきである。プロの将棋の棋譜に出てくる8割以上の指し手は駒を取らない指し手なのであるから。駒を取らない指し手が最善手である局面が8割以上あるというのに、それらの指し手を適当にしか読まないのでは強くなるはずがない。このように超低ノード(少ない探索局面数)の場合、駒の取り合いや、王手回避、王手になる指し手などを中心に調べていく必要がある。これらは現代の将棋ソフトとはずいぶん事情が異なると思うかも知れないが、実際は全くの逆である。現代のソフトであっても上記(致命傷になりかねない指し手を最優先にして読む)と似た読みは確かにやっているのだ。それが静止探索である。https://t.co/3dv74yxdJdのように1手頓死するのは、序盤を極力定跡で指しているのが一因です。:メモリを1MBぐらい使わせてもらえるならKP64かKP128が収まるでしょうし、100npsぐらい出るはずなので1手10秒思考していいなら1000局面読めることになるので、(少ないメモリにプログラムを収めるために枝刈りを簡略化するなどして弱くなる部分があるとしても)R2400ぐらいはいくかと。:ソフトのタイトルにプロ棋士のお名前を冠している作品は少なそうですね。:これは説明が全然足りていませんでした。「ベーマガ」で検索しているとそのページが見つかりました。見てみると、ベーマガ見れてビックリしました。「インターネットアーカイブ」で見れるベーマガはこれ一冊でした。:あー、そうなんですね...。私はベーマガ、創刊号から10年分ぐらい持ってたんですけど、15年ぐらい前に家買ったときに新居に持っていくか悩んで捨てちゃいました...。:ああ、そういう意味なんですね。長い時間での棋力の伸びを見たいときは、0.1秒と1秒とのR差を見ると参考になったりします。コメントをキャンセルメールアドレスが公開されることはありません。*サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。