深層強化学習における連続値制御
深層強化学習という技術は、機械に試行錯誤を通して物事を学習させる方法の一つです。まるで人間が経験から学ぶように、機械も様々な行動を試してみて、その結果から何が良かったのか、どうすればもっと良くなるのかを自分で考えていくのです。この学習の過程で、機械が取る行動には大きく分けて二つの種類があります。
一つ目は「離散行動」と呼ばれるものです。これは、選択肢がいくつか決まっていて、その中から一つを選ぶという行動です。例えば、テレビゲームでキャラクターを動かす時、「上」「下」「左」「右」のコマンドから一つを選びますよね。あるいは、「攻撃する」「防御する」「逃げる」といった選択肢から行動を決める場合もこれに当たります。このように、行動の選択肢が飛び飛びになっているのが離散行動の特徴です。
二つ目は「連続行動」です。こちらは選択肢が無限にあり、滑らかに変化する行動を指します。例えば、車の運転を想像してみてください。アクセルペダルをどのくらい踏むかによって、車の速度は微妙に変化します。少しだけ踏めばゆっくりと加速し、深く踏めば急発進します。ロボットアームの角度を調整する場合も同様です。微妙な角度の違いでロボットの動きは大きく変わります。このように、連続的な値で行動を調整するのが連続行動です。
そして、この連続行動を深層強化学習で扱う枠組みが「連続値制御」です。機械は、連続的な値を取りうる行動の中から、目的を達成するために最適な行動を学習しなければなりません。例えば、ロボットに物を掴ませる訓練をする場合、ロボットアームをどの角度、どの速度で動かせば掴めるのかを、連続値制御によって学習させるのです。