読者です 読者をやめる 読者になる 読者になる

読書は人間の夢を見るか

平々凡々な社会人の読書と考えたこと。本文・写真についてはCC-BY-SA。当然ながら引用部分等の著作権は原文著者に属します。

誰にもない責任を誰が負うか

思考の痕跡

SFの世界でしかあり得なかったようなことが次々と起こっている。
Googleは自動運転車の実験を行い、昨年12月にはプロトタイプの完成版を公表した。*1
それとともに、問題となってくるのは、これまで想定されていなかった事柄に対してどのような規則を設けていくかということだ。
例えば、自動運転車の場合でいけば、これが事故を起こした時にその責任はだれが、どのように負うのか、といったような具合に。
容易に想定できるような事態であれば、製造者の責任としてもよいのかもしれない。これまでの機械の延長のように、説明書に注意書きをつけて。
しかし、電子レンジに猫を入れて乾かすような事柄を逐一考慮に入れることは果たして可能であろうか。


私たちは、現実を把握する段階で、起こりうる事柄の可能性、社会の複雑性を「縮減」しながら生きている。
例えば、乗り込んだ通勤電車がいきなり逆方向に走って行って、会社に辿りつけないなどとは考えない。
そんなことを考えていては身がもたないし、効率的ではない。
コンピュータも同じように可能性を「枝切」することで効率化をする場合がある。人間の場合とは違って、刈りとられる可能性は明確に定義してやる必要がある。
その時、いわば「二重の想定外」によって、刈りとられた枝から大きな火の手があがることがありうる。
そのようなとき、私たちはどのように対処できるだろうか。


まさにそのような場面が、将棋電王戦FINAL 第2局 永瀬拓矢 六段 vs Seleneで起こった。時刻は19時を回った頃だっただろうか。

上の図の場面で、先手のSeleneは将棋のインターフェースソフト「将棋所」*2に▲2ニ銀の信号を送った。
局面は王手がかかっているから、この手をもってSeleneの反則負けとなった*3
先週のBlogで書いたような小学生のうっかり、のようにも見える。


なぜこのようなことが起こったか。
コンピュータ将棋プログラムでは、読む「無駄な」局面の数を減らすことが一つの重要な要素になる。
将棋のルールに沿った手は有限とはいえ、それをすべて読んでいては限界がある。
ドアを開けたら、天が落ちてくるかもしれない、電車に乗れば逆に行くかもしれない、と考えていれば、日常を送れないのと同じだ。
そこで、例えば、起こりにくい手は読まない、ということをプログラムに組み込むことになる*4
将棋の飛車・角行・歩兵の三種の駒は成った*5場合、元の駒の動きを包含して動ける場所が増える。だから、普通は成らない手は得にならないし、起こらない*6
そこで、そうした手は読む枝から切り落とす、といったように*7
Seleneの「生きる」世界には△2七角という手は存在しなかった。
そして、反則となる手を指してしまった、ということだ。


ただ、局面自体は永瀬六段の勝ち。
私が指し継いだら負ける自信があるけれど、10数手先には詰みかもしくはそれに近い状態になるということだ。
一方、この時点では、コンピュータ側は自分の方がよいと思っている。コンピュータは幅広く手を読むが深く読むのは評価すべき局面数が等比級数的に増えていくので難しい。
コンピュータよりも深く深く先を読んで行けるのは実はプロ棋士が非常に効率よく、「枝切」をしているからだとも言われる。*8
起こりうる「世界」をいかに効率的に、そして正確に絞り込めるか、という能力で勝負がついた、といえるのかもしれない。


永瀬六段は事前の研究で、Seleneは不成を認識できないということを知っていた。*9
彼の読みの範囲では「勝ち」だったけれども、しかしながら、強敵であるSeleneが予想だにしない手を用意している可能性は考慮に入れていた。
であれば、勝つ確率を上げるために出来ることはなんでもするのが勝負師。*10
穴熊は指すな。右玉は指すなと言われた時代もあった。今は許されるだろう。
勝つための手段として、あらゆる可能性を捨てなかった。責められるべきことは何もないだろう。


では、プログラムの側ではどうか。
コンピュータ将棋の草創期には、ルール通りに指すことができない、ということもよくあったようだけれど、プロ棋士を負かす、という段階に来て、そして数万人が見守るような環境でのこの事態は大きな衝撃を与えた。
バグだ、と言ってしまえば簡単だ。
不成は起こりうることだし、予期できる範囲だ、と言われればそれまでだ。
しかし、本当に想像だにできないような事態が起きた時に、それにコンピュータが対応できなかったとして、その責任は、誰が、どのように負うべきものなのだろうか。
もちろん、将棋ソフトは盤面の負けで終わる。それ以上に責を負うべきことは何もない*11


では、それ以外には?私たちは「可能性」を考慮に入れなければならないことを学んだはずだ。
電車が逆走して、会社に遅刻したくらいなら、笑い話で済むかもしれないけれど。


##
毎週毎週見せられるというか、考えさせられるというか、おもしろいですね。
自分なら、その可能性があっても、不成はちびって指せないかもしれません。
将棋のプロであるだけでなく、勝負のプロだということでしょう。
ともあれ、来週勝てば、今回の団体戦は棋士側勝利ということになるわけですが、いかに。

*1:http://japanese.engadget.com/2014/12/22/google-self/

*2:http://www.geocities.jp/shogidokoro/

*3:王手放置は反則負け

*4:枝切などという

*5:「成」とは、敵陣(敵側から3段以内)に入るかそこを起点として動いた場合に駒を裏返す表示をして動きを変えることのできるルール。駒の動きはhttp://www.shogi.or.jp/shogi/hon/03.html

*6:打ち歩詰という反則を回避するためなどの理由で成らないということも稀に起こりうる。プロでも実戦例がある。第24期(1983年)王位戦リーグ白組5回戦 大山康晴谷川浩司など参照。打ち歩詰めはhttp://www.shogi.or.jp/shogi/hon/05.html

*7:一般的には読みからは切り落としても、指されれば合法的な手としては認識できるようにしていると思われる。よって正確には今回の件は「枝切」の本質とは関係がない。

*8:過去の経験則に基づく。だからこそ、反対にコンピュータが「想定しない=プロ同士では良くないだろうと思われていて読まない」手を指すことも多くありうる。こうした枝切に特色があるのでプロに「何手読むんですか?」というのはあまり意味が無いのかもしれない。

*9:と同時に、修正されている可能性があること、またそれがされていたとしても受け入れる、という気持ちでいたようだ。

*10:たとえ修正されていたとしてもコンピュータの読み筋と一致した場合としない場合では、思考時間に差が出ることが多い

*11:プロだって反則負けをすることはある。二歩などはたまに目にするが、角の効きに自ら飛び出して反則負けした方もいたようだ。