Hatena::ブログ(Diary)

buoyance

Aperyのダウンロードなどはこちらへ

2015-03-13

電王戦FINAL 初戦

明日斎藤慎太郎五段とAperyが対局する訳だけれど、

Aperyは負ける時は最後の一手まで指します。

開発者に投了の権利があるらしいですが、どんな勝ち目の無い状況になろうとも、途中で投げません。

一部の将棋ファンからしたら退屈になるかも知れませんが、

もしもプログラムに興味を持ってくれた人がいるなら、、、

負ける直前のコンピュータの特徴的な手は新鮮に映るかもかも知れません。

折角棋譜が残るのだから、コンピュータの特徴的な手を残したいと思います。

それに、Aperyと斎藤五段が戦う訳で、私が間に入って投了するというのは気が引けます。

斎藤五段とは今日少しお話できました。その際に一応先にことわっておいた方が良いと思って、

すみませんが負ける時は最後の一手まで指しますと伝えておきました。


あと、人間同士やコンピュータ同士の対局と違って、一手ごとにタイムラグが生じるので、時間切れてるやんとか思うかも知れないので先にこれを見ておきましょう。

https://twitter.com/HiraokaTakuya/status/576026507086172161


明日はどんな将棋になるかな。

   2015/03/14 21:30 お疲れ様でした。
良い物を見せていただきました。

シチョウシャシチョウシャ 2015/03/14 22:34 中継見みました。
良いものをありがとう。

将棋初心者将棋初心者 2015/03/15 05:11 はじめまして!電王戦から将棋を見始めた将棋初心者です。
まずは、第一戦お疲れさまでした。

投了の仕方について、いろいろな意見があるかと思いますけど、
名人とやりたいなら、最低でも投了のプログラムは作成するべきかと思います。

投了のプログラムを作成した上で、ポリシーとして、最後の一手まで指します、
というのであれば、よいと思います。

しかし、現状では、平岡さんの作成したプログラムには、仕様上の
バグがある、将棋ソフトとして、未完成であるとしか思えません。
投了のプログラムが実装できないので、最後まで指します、としか思えません。

プログラムできないことを、開き直って最後まで指す姿を見せたいというのは
ちょっと違うと思います。

これは初心者の意見ですが、自分はプログラムもやっているので、
そう感じるのかもしれません。

文化の違いとか何とかではなく、投了の思考回路まで作成して
はじめて人工知能といえるのではないでしょうか。

ボナンザのメソッドを借り、プロ棋士の棋譜データを借り、
投了のプログラムできず、最後の一手まで指させていただきますでは、
どこに、平岡さんのオリジナルが入っているのでしょうか。

次回、もし、電王戦が継続し、またAperyが出場する機会があれば
ぜひご検討いただきたくコメントさせていただきました。

 2015/03/15 07:07 投了したければ評価値一定数で判定すればできるんじゃない?
できないってことは無かったと思うけど敢えてしないのは別に好みじゃない
常に人間側が上っていう感じの試合だったけど良い将棋だったよ
でも最後の手数稼ぎはやっぱりAIっぽかったけどw

345345 2015/03/15 07:41 お疲れ様でした。
ブログさかのぼりいろいろ読みました。
演出上ヒールのような扱いにされやすい立場ではありますが
真実を知れた気がします。

次はぜひ勝った姿が見たいです!!
これからも応援してます!!

視聴者視聴者 2015/03/15 13:07 昨日の電王戦を拝見しました。
将棋の内容自体もとてもおもしろかったですが、それ以上に、終盤の王手ラッシュ等から、コンピュータの合理的な思考が透けて見えるようで、将棋プログラムに興味が出てきました。
最後の王手ラッシュがなければこんなモチベーションは湧いてこなかったと思います。
敢えて詰みまで指していただき、ありがとうございました。

40代エンジニア40代エンジニア 2015/03/15 16:07 お疲れ様でした。
あえて投了しない(投了ルーチンを組み込まない)という平岡さんの選択は、非常に有意義であったと感じています。
最終盤の「負けが確実な中での最も合理的で最善の着手」にこそコンピューターらしさが現れることを提示することで、人工知能(コンピューター将棋)の未来に貢献しようとしているのですね。
会見での平岡さんの最後の言葉(オープンソース化すること)によって、その真意を知り、感動しました。

「自分はプログラムもやっている」という方の「投了のプログラムが実装できないので…」というコメントがありますが…どの程度プログラムをかじっているお方なのか疑問です^^;
一定のマイナス評価値となった時点か、あるいは自玉の詰みが見えて(評価値マイナス無限大・いわゆる9999)から数手進んだ時点で投了させればいいだけで、プログラミング初心者でも組みこめるものすごく簡単なルーチンですよ。
平岡さんが、その程度のものを実装できないレベルのプログラマーだとは到底考えられません。

簡単に投了ルーチンを組み込むことは、むしろ逃げでもあるんじゃないかと思います。
人間(プロ)の将棋のように、形作りをして「今こそが最も適切な投了図」という局面で投了できないのであれば、詰みまで指した方が「美しく」感じます。

棋力の向上以上に、美しい投了図を(対局者と協力して)作れる将棋ソフトができるといいなあと思います。それを実感させられた、素晴らしい一局でした。斎藤さんの協力があってこその美しい詰みの終局図だったと思います。
ありがとうございました。

初心者初心者 2015/03/15 19:14 プログラム知らない人から見たら悪足掻きにしか見えなかったよ。すごく醜かった。
やっぱりある程度のところで投了はするべきだと思う。コンピュータを全く知らない人間の意見で申し訳ありません

アマ5段アマ5段 2015/03/15 21:39 Aperyは立派に戦ったと思います。
プログラミングは素人ですが、勉強してみたいと思いました。

themaindmapperthemaindmapper 2015/03/15 21:46 C言語しかできませんがソフト作ってみたいと思いました
言語は何をやればいいのか気がかりですがオープンソースとなるというので楽しみに待ってます

noodlesoupnoodlesoup 2015/03/15 22:51
ぜひソースの解説もお願いしたい。
概要だけでも。

初心者プログラマーの要望です。



将棋は古い業界で独占企業ですので、
いろいろあるでしょう。
気にせず、「こんなところだな」ってことでいいと思いますよ。

おつかれさまでした。

えのくまえのくま 2015/03/16 00:03 電脳戦お疲れ様でした。
まずは大きなトラブルなく、無事対局が終えられましたことをお慶び申し上げます。
結果としてはAperyの負けとなってしまいましたが、棋界に残る大きな歴史の1つにふさわしい内容だったかと思います。
また、平岡さんの記者会見の内容感銘を受けました。特にOSSになさるということで、私的ながら私は将棋が大好きな、ぺーぺープログラマーですので、これを機に拝見させていただこうと思っております。
影ながらではありますが、Aperyと平岡さんの今後のご活躍を応援いたしております。

#投了をどうするか、という意見に関してはいろいろあろうかと思います。極端に言えば、王手ラッシュを無様ととる人もいれば、コンピューターらしい、いい意味で最後まであきらめないという風にとる方もいるでしょう。そういった意味では、平岡さんが事前に宣言されていたのはよかったかと思います。こうした話題は今後も続いていくのでしょうね。アマチュア同士ならともかく、プロ棋士は、伝統を守り、棋譜を残すことがお仕事なわけですから、そもそも人間とコンピュータの、将棋を指す目的が少し異なるのかもしれません。ファンの一人として、プロもコンピュータもお互いに協調できるようになってほしいと思います。

AnonymousAnonymous 2015/03/20 15:49 王手ラッシュが不快と思うのは自由ですし、投了の美学も個人の自由ですが、王手ラッシュが「将棋的(=数学的)に最善手」であるという事実は認識しておいてほしいですね。

でもそれがわかっていない人もいるようで…

http://anond.hatelabo.jp/20150316221119
>投了まで1手伸びました。が最善手であると?絶対に違う

いや、それが_まさに_最善手なんですが。「相手が間違える可能性が出る難しい手」なんて曖昧すぎて定義として何の役にも立たない(ill-defined)だろうが…

少し調べれば

http://en.wikipedia.org/wiki/Solved_game#Perfect_play
>fastest method leading to a good result

と出てくるし、どうぶつしょうぎを知っていれば

http://en.wikipedia.org/wiki/D%C5%8Dbutsu_sh%C5%8Dgi#Theoretical_result
>The best opening move (the one that delays loss the longest)

と、「最短=最善手」がゲーム理論的常識であることは誰でも分かる。

ところがこの「最善手の定義」がわかっていない人が多すぎる。とにかく「最短=最善手」という前提が当たり前だと思えない人はこの議論に関わらないでほしい。

最善手だということをわかった上で、プロ相手に王手ラッシュは無意味だから投了したら?という意見なら受け付ける。

まあ一般人の数学センスなんてこんなもんですかね。

将棋初心者将棋初心者 2015/04/05 15:29 今現在、「詰みから何手前までに投了という設定をする」
これしかできないのであれば、あえてそれを組み込むべきではないでしょうか。
それが最善を尽くすってことではないですか?

コンピュータ同士の世界だけでやってればよいのであればそれでいいのかも
しれないですが、名人とやりたい、または最終的には将棋を楽しむ人に使って
ほしいのであれば、ちゃんと投了のロジックを考えるべきではないでしょうか?
mate xxxだけでは投了のロジックは完成したとはいえないですよね?
「9999が見えないと投了できない」ってことではないんですか?

何で人間は9999の場面でもないのに、投了するんでしょうかね?

左馬左馬 2015/04/18 12:11 >将棋初心者さん
投了の美学を他人に押し付けてはいけないと思いますよ。
その論理を延長すると、電王戦第2回の塚田泰明九段は早々に投了すべきだった、あんな悪粘りはプロにはふさわしくない、興醒めでプロ失格だとも言えるわけですが。
貴方はそれが将棋ファンの総意だとでも主張したいのですか?
思い上がりも甚だしいように感じますね。

投了のロジックを搭載するかどうかは、それこそ各将棋ソフト作者の信念、美学によるものです。
どんなソフトを使いたいかは好みの問題でしょうが、そのソフトの基底を成す信念を批評したいのであれば、単なる貴方の好み以上の論理をもって良否を主張してもらわないと困ります。

さ 2015/05/11 18:22 素人が勉強に使うのには勝手に投了されるよりも最後まで指してくれた方がありがたいと思うしね。素晴らしい判断だと思いました。

トラックバック - http://d.hatena.ne.jp/hiraoka64/20150313/1426258905