Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

AI(強化学習)でロボットに学習させてみた

2,387 views

Published on

Q学習を用いてロボットにボールを運ぶ行動を学習させてみました。資料では学習の概要を説明しています。動画に飛べない方は、こちら
https://youtu.be/7fUrinWahZs

Published in: Technology
  • Be the first to comment

AI(強化学習)でロボットに学習させてみた

  1. 1. AI(強化学習)で ロボットに学習させてみた
  2. 2. AIってなに?強化学習ってなに? AI =人間のやることを機械にまねさせること 何をすれば良いか分かっている ⇒玉を皿に置きたい! どうやったら良いか分からない ⇒とりあえずやってみる!! 何度もやると次第にうまくなる ⇒一度できると改善してうまくなる!!! 強化学習=例えば、けん玉の練習 強化学習=試行錯誤を通して自らの経験を元に学習 する方法
  3. 3. Deep Learningはよく聞くけど… 事例:AlphaGoが人間より強くなった ⇒碁の状態数は10 あるが、DLで過去事例から学習したのは10 程度 ⇒DLでは学習データ以上に強くならないため、 AlphaGo同士で強化学習 することで学習データ(人間の経験)よりも強くなった。 学習方法 できること、できないこと Deep Learning 詰込型の学習=試験勉強と同じ。問題を多く解いて傾向を把握 データに合わせてパターンを抽出してくれる 問題と答えのセットを用意しておかないと学習できない 教えたこと(学習したデータ)以上のことはできない 強化学習 経験型の学習=試行錯誤を通して問題に合わせた行動を学習 できる範囲(行動、認識)の組み合わせから目的を達成する 事前の学習データが不要。自らの経験を学習データとする 実環境では学習時間がかかる。別個体との結果共有が難しい Deep Learning と 強化学習 の組合わせが主流 172 9
  4. 4. で、ロボットに何を学習させたの? 赤いボール を 青い箱 まで持っていく行動を学習 カラーカメラで状況把握 2個のモーターで移動 グリッパでボールを つかむ
  5. 5. どうやって学習したの? 1.画像から色を抽出 2.位置と幅を計算 x座標⇒左 幅⇒遠い 3.状態に番号を付ける 左 中央 右 なし S1 S2 S3 遠い S4 S5 S6 近い S7 S8 S9 前進 A1 後退 A2 左回転 A3 右回転 A4 前進 後退 回転 ①画像からボールがどう見えるか(状態)を決める ②行動を決める 選択可能な行動を決めて番号を付ける ③何をするか決める 1.目標を決める 「ボールが中央で近い(S8)」状態 を目標とする 2.目標に達した時の褒め方を決める 目標にまでに行った行動に対して、 どれくらい褒めるかを決める
  6. 6. 何をすれば学習したことになるの? 学習前:状態に対する行動の価値が同じ ボールの 状態 行動 なし 遠い 近い 左 中 右 左 中 右 左 中 右 S1 S2 S3 S4 S5 S6 S7 S8 S9 前進 A1 48 73 83 79 96 89 93 0 92 後退 A2 49 77 85 86 93 90 93 0 93 左回転 A3 85 93 87 89 91 91 95 0 92 右回転 A4 48 75 94 85 92 93 93 0 95 ボールの 状態 行動 なし 遠い 近い 左 中 右 左 中 右 左 中 右 S1 S2 S3 S4 S5 S6 S7 S8 S9 前進 A1 0 0 0 0 0 0 0 0 0 後退 A2 0 0 0 0 0 0 0 0 0 左回転 A3 0 0 0 0 0 0 0 0 0 右回転 A4 0 0 0 0 0 0 0 0 0 学習後:状態ごとに得点の高い行動をする 状態と行動の表に対して、良い行動に得点を付ける 得点は目標到達時に与えられる報酬から設定する ①最初はランダムな行動をとる ②運よく目標に到達すると褒められる(報酬が与えられる) ③報酬を元に目標到達に行った行動に対して、得点を与える ④次第に得点の高い行動を行うようになる
  7. 7. 報酬を元にした「状態と行動」表の更新例 ボールの 状態 行動 なし 遠い 近い 左 中 右 左 中 右 左 中 右 S1 S2 S3 S4 S5 S6 S7 S8 S9 前進 A1 0 0 0 0 0 0 0 0 0 後退 A2 0 0 0 0 0 0 0 0 0 左回転 A3 0 0 0 0 0 0 0 0 0 右回転 A4 0 0 0 0 0 0 0 0 0 上から見たところ カメラ画像 状態と行動の履歴 初期状態 ・カメラには何も映らない ・この時はS2の状態とする 行動1回目 ・とりあえず前進してみた 学習初期はランダムに行動するしかないが、 この例は最短でうまくいく場合を示している。
  8. 8. 報酬を元にした「状態と行動」表の更新例 ボールの 状態 行動 なし 遠い 近い 左 中 右 左 中 右 左 中 右 S1 S2 S3 S4 S5 S6 S7 S8 S9 前進 A1 0 0 0 0 0 0 0 0 0 後退 A2 0 0 0 0 0 0 0 0 0 左回転 A3 0 0 0 0 0 0 0 0 0 右回転 A4 0 0 0 0 0 0 0 0 0 上から見たところ ① カメラ画像 状態と行動の履歴 行動1回目の後 ・まだ、カメラには何も映らない 行動2回目 ・とりあえず左回転してみた
  9. 9. 報酬を元にした「状態と行動」表の更新例 ボールの 状態 行動 なし 遠い 近い 左 中 右 左 中 右 左 中 右 S1 S2 S3 S4 S5 S6 S7 S8 S9 前進 A1 0 0 0 0 0 0 0 0 0 後退 A2 0 0 0 0 0 0 0 0 0 左回転 A3 0 0 0 0 0 0 0 0 0 右回転 A4 0 0 0 0 0 0 0 0 0 上から見たところ ① ② カメラ画像 状態と行動の履歴 行動2回目の後 ・ボールが遠くの左に見えた 行動3回目 ・とりあえず、また左回転してみた
  10. 10. 報酬を元にした「状態と行動」表の更新例 ボールの 状態 行動 なし 遠い 近い 左 中 右 左 中 右 左 中 右 S1 S2 S3 S4 S5 S6 S7 S8 S9 前進 A1 0 0 0 0 0 0 0 0 0 後退 A2 0 0 0 0 0 0 0 0 0 左回転 A3 0 0 0 0 0 0 0 0 0 右回転 A4 0 0 0 0 0 0 0 0 0 上から見たところ ① ② ③ カメラ画像 状態と行動の履歴 行動3回目の後 ・ボールが遠くの真ん中に見えた 行動4回目 ・とりあえず、前進してみた
  11. 11. 報酬を元にした「状態と行動」表の更新例 ボールの 状態 行動 なし 遠い 近い 左 中 右 左 中 右 左 中 右 S1 S2 S3 S4 S5 S6 S7 S8 S9 前進 A1 0 0 0 0 0 0 0 0 0 後退 A2 0 0 0 0 0 0 0 0 0 左回転 A3 0 0 0 0 0 0 0 0 0 右回転 A4 0 0 0 0 0 0 0 0 0 上から見たところ ① ② ③ ④ ⑤ カメラ画像 状態と行動の履歴 行動4回目の後 ・ボールが近くの真ん中に見えた(S8) ・目標状態に達したため、報酬が与えられる ・目標状態に遷移するまでが1回の学習となり、 ロボットを別の場所からスタートさせて学習 を繰り返す
  12. 12. 報酬を元にした「状態と行動」表の更新例 ボールの 状態 行動 なし 遠い 近い 左 中 右 左 中 右 左 中 右 S1 S2 S3 S4 S5 S6 S7 S8 S9 前進 A1 0 0 0 0 0 0 0 0 0 後退 A2 0 0 0 0 0 0 0 0 0 左回転 A3 0 0 0 0 0 0 0 0 0 右回転 A4 0 0 0 0 0 0 0 0 0 上から見たところ ① ② ③ ④ ⑤ カメラ画像 状態と行動の履歴 ボールの 状態 行動 なし 遠い 近い 左 中 右 左 中 右 左 中 右 S1 S2 S3 S4 S5 S6 S7 S8 S9 前進 A1 0 4 0 0 10 0 0 0 0 後退 A2 0 0 0 0 0 0 0 0 0 左回転 A3 0 6 0 8 0 0 0 0 0 右回転 A4 0 0 0 0 0 0 0 0 0 目標到達時:報酬を元に得点を与える
  13. 13. 強化学習でロボットに学習させてみた結果 赤いボール を 青い箱 まで持っていく行動を学習 ・動画は次ページ参照か https://youtu.be/7fUrinWahZs ・動画では、 ボールを探す ⇒ ボールを持つ ⇒ 青い箱を探す ⇒ 青い箱に行く を複数の報酬を用いて学習結果も共有して実現した。

×