じゃんけんAIをパワーアップさせました!
こんにちは、小野です。
6月19日~6月21日に東京ビッグサイトで、「ものづくりワールド」という展示会が開催されました。
産業における様々な課題解決につながる技術や製品が一同に集結しました。製造業の展示会としては世界最大級の展示会となっており、今年は開催した3日間で合計69,717人もの人たちが来場されたとのことです。昨年よりもさらに3,000人ほど増えたようで、より注目度が上がってきました。
私たちOKIアイディエスは、その中の「ものづくりODM/EMS展」の一角に、OKI-EMSグループとして展示会に出展していました。
今年は宇宙関連の技術も展示していたこともあり、多くの人たちの興味を惹いていました!先日打ちあがったH3ロケットにも、OKIの技術が使われているらしいです!
今後はチェックします!
さて、私たちOKIアイディエスも昨年に引き続きOKIのEMSグループの一員として参加していました。昨年好評だったじゃんけんAIデモにさらなるブラッシュアップを施して展示していました。デモの内容としてはいたってシンプル!「カメラの前に手を出して、グー、チョキ、パーを出すと、その手に勝つ手をロボットハンドが出してくる」というものです。メカメカしい見た目のロボットハンドが動いている様子が気になって、足を止めて見てくださる方が多くいらっしゃいました。AI開発をより身近に感じていただき、その有用性や実用性のイメージを持っていただくことができました。
今日はそんなじゃんけんAIにどんな改良を行ったのか解説していきます。
勝利を目指して
見ての通り、じゃんけん勝負です。
毎週日曜日夕方、家でじゃんけんに勝つトレーニングを積んできたつもりですが…。
次のブログ、どっちが出るかをかけて勝負していました。今、私が勝ったので、今月の主役は私ですね。
敗者は去るのみ…。
先月出演したし、今回は譲ります…。
知らない間に、ブログの解説者枠が争われているんですね…。それでは勝者の伊田さん、今日はものづくりワールドで展示していたじゃんけんAIを解説してくれるんですよね。
去年もこのじゃんけんAIとじゃんけん勝負をしましたね。それはともかく、あの時のじゃんけんAIを入社3年目の若き技術者たちがさらなる勝利を求めて、改良を行いました。
USBカメラ前に出された手の形をKR260のK26 SOMが推論して判別、それに応じて出された手に対して勝つグー、チョキ、パーの手を出すようロボットハンドを制御するというデモでした。
全体的には今年改良したものも、この構成から変わっていません。
実は当時は言いませんでしたが、デモを見て反応速度が遅いと感じる方もいらっしゃいました。
「これは後出しじゃんけんでは??」と言われてしまいました。(泣)
「今年はそんなことは言わせない!」そんな思いを持って若い4人の技術者が立ち上がったわけです。というわけで、改良ではどんなことをしたのか、そのあたりを解説していきたいと思います。
AIの改良
まずはじゃんけんAIという名前だけあって、AIの改良はもちろんやっているかと思います。どのような改良をしたのでしょうか?
もちろんです。今までは挑戦者の手の形に対して必ず勝つ手を出すようにはなっていましたが、出した手の形を認識しないことがありました。
出した手の形を認識してくれないと、それに対して勝てる手の形を正しく出せませんよね。手の甲側か手の平側から出すかとか色々な出し方をする人がいます。
左手、右手どちらを出すかも違うし、手の向き、角度も人によって違います。
そうなんですよ。
他にはカメラから手までの距離が近すぎたり遠すぎたり、画角から見切れていることもあります。そういうパターンにも対応できるようにデータセットの作り直しを行いました。グー、チョキ、パーでそれぞれ500枚の画像を撮り直してデータセットを用意しました。
データセットの作り直し?!結構思いきりましたね。
確か以前はグー・チョキ・パーそれぞれ200枚ずつの写真に対して、サイズ変換などの処理を行ってデータセットを作っていましたね。
500枚といっても500枚撮影したわけじゃないですよ。
撮影した写真を左右反転したり、90°回転などを行いました。そうそう、前回は全て白い背景で撮影していましたが、今回は白背景だけでなく、さまざまな背景で撮影を行いました。
確かに出した手の形の認識が背景に影響されてしまうといったことも考えられますね。
データセットを1,500枚に増やしたおかげで、様々な向きや角度でカメラの前に手を出してもより正しくAIが手の形を認識できるようになりました。
認識率が上がったということですね。実際に展示会場で説明員対応したとき、去年に比べて手を出した時に「あれ?認識してくれない?」という事態が大幅に減りました!
データセットを増やしたので、AIモデルにも手を加える計画でした。具体的には畳み込み層を5層から増やす方向で調整していました。
ところが、層の数を増やしてもなかなか精度があがらず、むしろ下がってしまったんです。過学習ってやつですね。
学習データに対しては高い精度が出るけど、新しいデータで評価すると精度が落ちてしまうという現象ですね。
6層、7層…と色々と試して、結果的には、5層のニューラルネットワークに落ち着きました。1~4層には畳み込みニューラルネットワーク(CNN: Convolution Neural Network)、5層には全結合層を実装しました。
4層と5層の間にドロップアウトを追加しています。
ドロップアウトはランダムでノードを消去しながら学習するという方法です。過学習を抑える効果があります。
AIモデル作成時に過学習を抑えるためによく使われる手法です。細かなパラメータは微調整しましたが、データセットを新たに作り直したところが1番大きなポイントです。
ソフトの改善点
じゃあ続きまして、ソフトについて話を聞かせてください。ソフト面で改善したところってあるんですか?
もちろんですよ。主に2つです。
1つ目はAI処理とロボットハンドのモーター制御をROS2で行っている点です
ROS2…。Robot OS 2です。KD240でもロボットハンドを使ったじゃんけんAIを作っていました。
そう!それです。KR260にも同じように実装しました。
去年は「AI処理をしてから、ロボットハンドの制御をする」という流れでしたよね。
今回はAI処理とロボットハンドの制御を並列に行っています。つまり、AI処理をしてお客さんの手に勝てる手を出すようにロボットハンドの制御をしつつ、次のお客さんの手に勝てる手をAI処理しているんです。
2つ目の改善点はロボットハンドの各指の待機ポジションを設定したところです。
人間の手をカメラで認識していないときはパーとグーの中間になるような手の形になるよう各指を制御しているんです。
グー、チョキ、パーどれを出す場合でも、手の形が出るまでの時間が均等になった感じですね。
そういうことです。
これによって、ロボットハンドの起ち上がりが早くなり、これも後出しじゃんけんだと感じさせない自然な動きにつながりました。これは開発者のアイデアですよ!
メカとエレキ
そういえば、ロボットハンド自体も改造していますよね?
OKI- EMSグループ会社の連携によりロボットハンド自体も大幅なパワーアップを遂げたと聞いています…!
お気づきになられましたか…!
実はもともとのロボットハンドは購入品なんです。
元々実装されていたモーターをよりいいものに変えて改造したんですよ。
そのモーターこそ、OKIマイクロ技研の"サムベリーナ"です!!
先に言われてしまいました…。実は知っていました。
直径12mm, 全長25.5mmと超小型な高トルクブラシレスDCモーターとなっています。写真の“サムベリーナ”にはモーター本体の先に減速機がついています。
「それくらい小さいとトルクも小さくなるのでは…?」と思われるかもしれないですが、“サムベリーナ”ではトルク定数13×10-3N・m/A を実現しています。
インナーローター型(磁石をローター(回転子)として、巻き線をステーター(固定子)として配置した方式)を採用しています。これにより高出力かつ、高応答性であることが特徴です。
じゃんけんAIのロボットハンドの各指に1個ずつ実装しています。素早い手の切替を実現するのに大事な要素になりました。
ちなみに“Thumbelina(サムベリーナ)”って「親指姫」という意味だそうです。親指サイズのモーターにぴったりな名前ですね。“サムベリーナ”の詳しい情報については下記をご覧ください。
それだけでなく、モーターと電源をつなぐケーブルにはOKI電線のケーブルが使われています。
OKI電線のロボット向けケーブル“ORP-SL”です!!
“ORP-SL”にはOKI電線が独自開発したエラストマー絶縁材料が使われています。OKI電線の従来品よりも最大で30%細径化しつつ、高い耐久性を両立しています。
産業用ロボットを観察すると、屈曲や摺動部分が多いですし、24時間フル稼働していることもあります。
あらゆる機器の動きに対応できますね。
“ORP-SL”の詳しい情報については下記ページをご覧ください。
モーターやケーブルの実装時に大変だったことはありますか?
ありますよ。“サムベリーナ”を入手した後、これを動作させるのに結構時間がかかってしまいました。
サムベリーナの制御基板や電源を見直して、ようやく動かすことができました。
モーターが動かないと手の形をつくるためのパラメータを設定できませんから、このステップはとっても大事ですよね。
開発期間は1か月程度という短納期の中でしたが、見事に展示会前に完成させて、「ものづくりワールド」に展示することができました!!
OKI-EMSグループの垣根を越えて、OKIマイクロ技研とOKI電線と協力して、じゃんけんAIを開発することができました。今回のように、尖った技術を持つOKI EMSグループ会社のそれぞれの強みをどんどんアピールしていきたいです。
いずれはOKI EMSグループの技術を結集した製品などが作れたらいいですね!
最後に
最後に、どのくらい速くなったのか、ビフォーアフターを見てみましょう。
2023年ものづくりワールド出展:じゃんけんAI
2024年ものづくりワールド出展:じゃんけんAI改
比較してみると、改めてだいぶ速くなっているのがわかります。
カメラの前に手を出されてから、ロボットハンドがそれに対して勝つ手を出すまでの時間をそれぞれ見てみます。
2023年のじゃんけんAIでは0.5~0.8秒ほどかかっているのに対して、2024年のじゃんけんAI改では0.2~0.4秒程度です。これで後出しじゃんけんなんて言わせたりしないぞ!
伊田さん、今回のブログに出演するなら、今回は開発した若手メンバーじゃないんですか?
小野さんが来る前に出演をかけてじゃんけん勝負をしました。で、私が勝ちました。今の私なら何度でも勝てる気がします。またじゃんけんしましょうか、一発勝負で!
唐突ですね…でも私絶対負けません!
このじゃんけんAIのように!
えぇ…。いつの間に帰ってきたんですか。
それはずるいですよ!やり直しです!
それは置いておいて、展示会レポートも公開中です。
是非こちらもご覧くださいね!
次回のブログ更新は9月を予定しています。
お楽しみに!
- ※記載されている会社名、製品名は、各社の商標または登録商標です。
- ※ここに記載されている仕様、デザインなどは予告なしに変更する場合があります。