週刊アスキー

  • Facebookアイコン
  • Twitterアイコン
  • RSSフィード

将棋電王戦で大人気だった電王手くん・ここだけの開発秘話

2014年04月27日 10時00分更新

文● いーじま ●撮影 篠原孝志(パシャ)、編集部

大好評だった電王手くんについて開発者にいろいろ聞いてみた

電王手くんの秘密

 今回の電王戦から登場した、コンピューター側の指し手ロボット『電王手くん』。そのサイズ感と愛嬌のある動きで、視聴者はもちろん、対局した棋士や関係者をも魅了した。電王手くんの発表が開幕直前だったが、これはすでに語られているようにかなりのタイトスケジュールだったため、本当にできるのかどうか見極めてからの公表だった。電王手くんを開発した責任者である澤田洋祐氏にいろいろ伺った。

 と、その前に第一局第三局の電王手くん開発話の記事は先に読んでおこう。

電王手くんの秘密

デンソーウェーブの澤田洋祐氏

――まず、電王手くんは将棋ソフトから指し手をもらって指しているそうですが全部自動なんですか?
澤田氏「そうですね。ロボットとしては、コマを取る、コマを置く、駒が成るという基本動作をするのですが、それ自身は将棋ソフトとロボットのコントローラーとの間にもう一台コンピューターがあって、そこで解釈しています。コンピューターから来た、例えば△4六歩という情報を、81マスのなかのどこなのか、それを取るのか、次にそれをどこへ置くのかという情報をバラバラにして、ロボットへ伝えているのです。△4六歩と言われてもロボットではわからないので、どのように動かすかを自動で解釈する仕組みが必要なのです」

電王手くんの秘密

↑やぐらで嵩上げして設置しているのは、制御用のコンピューターを床下に仕込んでいるからという意味もある。

――ということは、画像認識は何に使っているのですか?
澤田氏「ロボットにとっては金でも銀でもなんでも同じです。画像認識は駒の位置のズレと回転を認識するために使っています。そのために駒自身を写真で撮影したものを登録し、パターンマッチングを用いて、そこに登録されたものから、どれだけずれているかを判断しています。駒の種類はまったく関係ないのですが、今回は手づくりの駒なので、同じ駒でも違うためすべて登録しています」

電王手くんの秘密

↑将棋ソフトから指し手が届き、それを元に解釈してロボットへ動き方を伝えるコンピューターの画面。画像を認識してズレを感知している。

澤田氏「駒をマッチングさせて、その駒が何度回転しX軸Y軸でどのぐらいずれているのか補正している。吸着する位置を、駒の真ん中になるようにするためで、最大45度までずれていても大丈夫です」

電王手くんの秘密
電王手くんの秘密
電王手くんの秘密

↑まずカメラで駒を撮影してパターンマッチングさせ位置を補正してから、駒を取りに行き、置く。

澤田氏「今回、本番で使う用と予備の駒と盤があり、そちらもすべて登録されています。今日(取材は第2局のとき)感じたんですが、駒を触っていると、駒の色が変わってくるんです。カメラから見て、それがいつ変化点になるのか。スコア値がだんだん落ちてくるので、次戦の前に再登録しようと考えています」

――手垢による汚れでも認識度が落ちてしまうんですね。
澤田氏「パターンマッチンクで一致できないと、駒が無いとなって駒が取れなくなってしまうんです」

電王手くんの秘密

――設置にはどのぐらいかかるのですか?
澤田氏「まずやぐらを組んで、ある程度できるのを待って、1時間から1時間半ぐらい掛けて電王手くんを設置しています。そのあと、照明などの調整をして全て整ったところで、2時間ぐらい調整しています。セットは3等分にできるのですが、前回(第一局の有明コロシアム)からそのままの状態で搬入したから大きな調整はせずに済みましたが、次(第三局あべのハルカス)へはバラバラにして搬入しなければならないので、再度調整が必要になりますね」

電王手くんの秘密

――今回開発期間が短かったですが、どうして実現できたのですか?
澤田氏「今回というかロボット開発では主流なんですが、シミュレーションという作業でつくっています。まったく同じ3次元のバーチャルな空間で、その中でプログラムをつくると、実機を使わなくてもほぼ完成形のプログラムをつくれます。そのときCADデータを使うのですが、将棋盤とかはないので、ひとつひとつ、線からつくっているんですよ。棋士の人は、正座しているCADデータがないので、座っている人のデータを利用して、ひざ下を床下に埋めて対応しました」

電王手くんの秘密
電王手くんの秘密
電王手くんの秘密
電王手くんの秘密

↑これがシミュレーションさせるためにつくったデータ。この中でロボットアームがちゃんと動くようにプログラミングをする。将棋盤はデータがなかったので、盤上のマス目は0.5mmの線を0.1mmぐらい浮かして置いている。また将棋盤の脚はローマ時代の柱を使っていたりする。

澤田氏「ロボットを開発する時、実機をぶつけてしまったら終わってしまうので、まずシミュレーションでタフにプログラムして開発しています。シミュレーション内ならいくらぶつけても問題ないので。青い線でバリアをつくっておくと、その線より下とかにはいけないようにできます。プログラムはBASIC系の言語でできていて簡単です。制御部分はインテルのAtom D525というCPUを使っており、OSはウィンドウズを使用してます。ウィンドウズをリアルタイム化したり、ウィンドウズの上部のところにバーチャルロボットコントローラーというのを埋め込んでいます」

電王手くんの秘密

澤田氏「設計から制作は3週間ぐらい掛けてつくり、プログラムは同時に3週間かけてつくりました。こういうバーチャルな環境がなければ、すべてシリアルになってしまう。パラレルで動けたおかげで、物ができてからプログラムを入れて半日で動くようになりました。普通なら3週間+3週間になってしまいます。なので、だいたい半分ぐらいの期間ですむことになります」

――駒置き台にボタンがありますが、あれはなんのためですか?
澤田氏
「あのボタンを押しているときは、セーフティーバリアを解除しています。ボタンを押しているということは、そこにロボットがいるということなので。外れた瞬間にバリアがかかる仕組みです」

電王手くんの秘密
電王手くんの秘密

↑左が第二局まであったボタン。右が第三局以降にボタンを排除し、位置で認識させるようにし動作を早くするように改善した。

――昼食休憩に吸引用のチューブを掃除してますけど。
澤田氏「巾着袋に入れていると、毛が着くんです。これが原因で止まってしまったらいけないので、すごく神経質になっていますね。普通そんなところまで見ないだろうというところまで見ていたりします」

電王手くんの秘密

↑駒は巾着袋の中に入れられている。この毛が着くのを心配しているとか……。

――次回電王戦があるとして、電王手くんをまたお願いされるとしたら改良したい点がありますか?
澤田氏「まず音を出したいですね。駒の成りを、もっとエレガントに人間っぽくしたいです。次やるかどうかはわからないですが、もしできるようなら、時間的に余裕もあるでしょうし、個人的には受けたいですね。やりたいことがあるんですよ。今回、安定した仕様で開発期間も1ヵ月だと、このような仕様で限界ですね」

電王手くんの秘密
電王手くんの秘密

↑左が第一局のセンサー(黄色い物体)、右が第三戦の様子。センサーもしっかり固定し黒く塗られ存在感は薄くなっている。

――電王手くんのお仕事を受けていかがでしたか?
澤田氏「ロボットは産業用のものばかりではなく、人に近い部分で活躍するという点ではすごくいい機会であり、皆さんにわかりやすく知ってもらえるチャンスでもありました。今回この仕事をさせていただき、とても勉強になりました。受けて本当に良かったと思います。結構ロボットにこんな機能があったら楽だったのにということを、今後の商品に反映できますので。こんなことをしなければ気が付かなかったと思います」

電王手くんの秘密

↑お辞儀がよかったですね。この姿が結構人気でした。

 ということで、次回電王戦があり、かつ、電王手くんもバージョンアップして帰って来て欲しいですね。

 本日のニコニコ超会議3でも、電王手くんが間近で見られるので、実際の目と耳で動きをぜひ感じ取ってね!!

 

●関連サイト
『GALLERIA 電王戦』モデル
日本将棋連盟
第3回将棋電王戦のページ
将棋電王トーナメント

この記事をシェアしよう

週刊アスキーの最新情報を購読しよう