(58)【調査した分野】(Int.Cl.,DB名)
強化学習に基づくAUV行動計画及び動作制御
の方法であって、
水中ロボットによるトンネル検出を総タスク、即ちタスクとして定義し、タスクを完了するための行動には、ターゲットへの移動、壁追跡及び障害物回避が含まれ、ロボットが計画する行動を水中で完了するために生じる具体的な制御命令を動作として定義するステップと、
AUVはトンネル検出タスクを実行するときに、検出対象の水中環境に基づいて、ディープ強化学習DQNアルゴリズムを用いて行動計画をリアルタイムで行い、つまり、マルチ行動ネットワーク呼び出しに基づく行動計画アーキテクチャを構築し、タスクのニーズに応じて3つの行動の環境状態特徴の入力及び出力の動作を定義して、対応するディープ学習の行動ネットワークを構築し、報酬関数を設計するステップと、
計画システムが
学習済み行動ネットワークを呼び出すことで
前記トンネル検出タスクを完了するステップと、
制御システムが
学習済み動作ネットワークを呼び出すことで計画された行動を完了するステップと、を含み、
対応するディープ学習の行動ネットワークを構築し、報酬関数を設計する
設計過程においては、以下のステップを含み、
前記トンネル検出タスクを行動シーケンスに分解し、グローバル経路計画において事前環境情報に基づいて複数の実現可能な経路ポイントを計画し、AUVが配置位置から出発し、各経路ポイントに順次到着し、
航行過程において、AUVはリアルタイム環境状態に基づいて、障害物回避行動を呼び出して安全に経路ポイントに到着し、
前記トンネル検出タスクのうちAUVは主に壁追跡行動を呼び出し、所定の検出目標に従ってタスクを完了し、
決定モジュールは、
前記強化学習に基づくAUV行動計画を実行するものであって、グローバルデータ
ベース、決定システム、行動ライブラリ及び評価システムを含み、
前記グローバルデータベースは、タスク情報、状況情報、計画知識が含まれるグローバルデータ
を記憶し、
前記決定システムは、
前記ディープ強化学習DQNアルゴリズム
を用いる自学習計画システムであり、
動作から環境へのマッピングを学習したうえ、計画タスクを実行するに先立って
前記行動ライブラリから
学習済みネットワークパラメータを抽出し、次に現在の環境状態情報を入力として現在の行動動作を計画し、
前記評価システムは、
前記ディープ強化学習
DQNアルゴリズムの報酬関数システムであり、AUVが1つの行動動作計画を計画して実行するたびに、状態環境とタスク情報に基づいて報酬を提供し
、
前記行動のうちターゲットへの移動過程においては、以下のステップを含み、
ターゲットポイントへの移動行動は、AUVが障害物を検知しないときに向首角を調整しながらターゲットポイントへ航行することであり、特徴入力量として主にAUVとターゲットポイントの位置と角度の関係を考慮し、具体的には、現在のAUV位置座標(x
AUV,y
AUV)、ターゲットポイント座標(x
goal,y
goal)、現在の向首角θ及びターゲット向首角βの計6次元の入力を設定し、その中でも、ターゲット向首角βはAUVがターゲットへ航行しているときの向首角であり、
報酬関数については、ターゲットへの移動行動によりAUVが障害物無し環境でターゲットポイントへ航行するときに、報酬関数は2項に設定され、
第1項r
11はAUVとターゲットポイントの距離の変化を考慮し、
【数1】
第2項r
12はAUVの向首角の変化を考慮し、向首角がターゲットに近いほど、ターゲット値の報酬値が大きく、現在のAUV向首とターゲット向首との夾角αが
α=θ−β (2)であり、
αの絶対値が小さいほど、取得する報酬値が大きく、具体的には、
r
12=k
Acos(α) (3)
式中、k
Aはターゲットへの移動過程に対応する報酬係数であり、
総報酬値は2項を加重したものであり、
r
1=k
11r
11+k
12r
12 (4)
式中、k
11、k
12はそれぞれ加重値であり、
前記行動のうち壁追跡過程においては、以下のステップを含み、
AUV壁追跡行動は、AUVと壁の距離及び相対角度の情報を考慮し、AUVは、一方の側に配置された前後にある2つのレンジングソナーを通じて壁からのAUVの距離x
4とx
5を取得し、
方位磁針で現在のAUV向首角θを取得して、現在の壁角度θ
wallを推定し、
【数2】
式中、l
AUVは前後にある2つのソナーの間の距離であり、壁追跡行動の環境状態の特徴入力はx
1、x
2、x
3、x
4、x
5、θ、θ
wall及びターゲット追跡距離l
goalに設定され、ここで、x
1〜x
5はそれぞれ3つの前方ソナーと一側に設けられた前後ソナーにより測定されたデータであり、特徴入力量は8個であり、AUVと壁の間の状態関係を完全に記述することができ、距離閾値を設定してソナーデータについて判断を行い、
学習中に閾値を超えると、現在の
学習周期を終了し、
報酬関数は、AUVができるだけ壁に平行し、壁とは一定の距離を保持するようにし、仮想ターゲットポイントに基づく壁追跡行動の報酬信号が主に4項に設定され、一般的な壁追跡行動の報酬信号が主に2項に設定され、
第1項は、式(6)のようにAUVと現在の壁がなす角度を考慮し、AUVと壁の角度が増大し閾値を超えると、負の報酬値を取得し、AUVと壁の角度が減少すると、正の報酬値を取得し、
【数3】
第2項は、式(7)のようにAUVの前後両端と壁の距離を考慮し、AUVと壁の距離と予め設定された値との差が減少すると、正の報酬を取得し、この差が増大すると負の報酬を取得し、追跡距離が予め設定された値の±0.2mの範囲にあることができ、追跡範囲内のこの項の報酬値が0である場合、この場所と壁の距離値は、同一側面にある2つのレンジングソナーによるデータの平均値であり、
【数4】
一般的な壁追跡行動の総報酬rは2項の報酬を加重したものであり、
r
2=k
21r
21+k
22r
22 (8)
式中、k
21、k
22はそれぞれ加重値であり、
仮想ターゲットポイントに基づく追跡では、この仮想ターゲットポイントは外直角と内直角の壁により作成された仮想ターゲットポイントであり、環境が外直角である場合、前側のソナーが障害物を検知していないときに入力が最大検出距離であるので、仮想壁が構築され、仮想ターゲットポイントが追加され、環境が内直角である場合、前方ソナーが壁を検知したとき、AUVが対向する現在のターゲット壁の他方の側で仮想ターゲットポイントが構築され、
仮想ターゲットポイントに基づく報酬関数の構築は、以下のとおりであり、
【数5】
r
24=k
Bcos(α)
式中、k
Bは壁追跡過程に対応する報酬係数であり、
仮想ターゲットポイントに基づく追跡行動の総報酬rは4項の報酬を加重したものであり、
r
2=k
21r
21+k
22r
22+k
23r
23+k
24r
24
式中、k
23、k
24はそれぞれ加重値であり、
AUVが次の部分の壁を追跡するまで徐々に調整したとき、たとえば、外直角環境におけるレンジングソナーが再度ターゲット壁を検知したか、内直角環境における前方ソナーがさらに前方の壁を検知しない場合、仮想ターゲットポイントを削除し、一般的な壁追跡行動ネットワークを呼び出し、
前記行動のうち障害物回避過程においては、以下のステップを含み、
AUV障害物回避行動のニーズについて、環境状態の特徴入力は3つの前方ソナーと両側のそれぞれに設けられたフロントソナーのデータを含み、AUVは、障害物を回避しながらターゲットポイントの方向へ近づき、特徴入力はAUVの現在の位置座標(x
AUV,y
AUV)、ターゲットポイント位置座標(x
goal,y
goal)、現在の向首角θ及びターゲット向首角βの計11次元の入力をさらに含み、
報酬関数については、報酬信号が3項に分けられ、第1項は障害物に対するAUV距離に基づいて得られた報酬値r
31であり、AUVが障害物に近づくと、負の報酬の警告を取得し、AUVが障害物から離間すると、正の報酬を取得し、AUVが障害物から離間して航行するように促し、障害物と衝突すると報酬値−1を取得し、現在の
学習周期を終了し、
【数6】
第2項は、現在のAUVとターゲットポイントの距離に基づいて生じる報酬値r
32であり、AUVが障害物を回避しながらターゲットポイントへ航行するように促し、このため、AUVがターゲットポイントから離間すると、負の報酬を取得し、ターゲットポイントに近づくと正の報酬を取得し、AUVターゲットポイントに到着すると、正の報酬値1.0を取得し、
学習周期を終了し、
【数7】
第3項は、AUVと現在のターゲットがなす角度αに基づいて生じる報酬r
33であり、同様にAUVがターゲットポイントの方向へ航行するように促すが、この項の報酬は、主に、現在のターゲット向首に近くなるように向首角を調整することをAUVに学習させ、経路の長さを減らすようにするためであり、
r
33=k
ccos(α)
式中、k
Cは壁障害物の回避過程に対応する報酬係数であり、
最後の総報酬信号はこの3項の報酬値を加重したものに等しく、
r
3=k
31r
31+k
32r
32+k
33r
33
式中、k
31〜k
33はそれぞれ加重値であり、
強化学習は、動作から環境へのマッピングを
学習するものであり、ロボットを環境として、DDPG
学習を通じて力とトルクを得て水中ロボットに作用させ、AUVモデルを用いて計算することによりロボットの速度と角速度を得て、速度、角速度とターゲット速度、ターゲット角速度との誤差を利用して報酬値r
4=−|△v+△Ψ|を設計し、ここで△vは速度誤差であり、△Ψは向首誤差であり、
また、
学習中のAUVモデルにランダム干渉力を追加することで、DDPGに基づく制御システムを
学習により得て、制御システムの
学習が完了した後、ロボットの現在の位置及びターゲット経路から、経路追跡戦略に従ってターゲット命令を得て、DDPG制御システムを用いてロボットを計画命令に従うように制御する、ことを特徴とする強化学習に基づくAUV行動計画及び動作制御
の方法。
【発明の概要】
【発明が解決しようとする課題】
【0006】
本発明は、複雑なタスクを実施するときに、水中ロボットのインテリジェントレベルが不十分であり、人工経験に頼りすぎる問題、及び従来の水中ロボットではインテリジェントアルゴリズムに基づいて設計される制御方法には正確な環境モデルが必要であることにより、トレーニング経験が制限され、実環境への適用が困難である問題を解決する。
【課題を解決するための手段】
【0007】
強化学習に基づくAUV行動計画及び動作制御方法であって、
水中ロボットによるトンネル検出を総タスク、即ちタスクとして定義し、タスクを完了するための行動には、ターゲットへの移動、壁追跡及び障害物回避が含まれ、ロボットが計画する行動を水中で完了するために生じる具体的な制御命令を動作として定義するステップと、
AUVはトンネル検出タスクを実行するときに、検出対象の水中環境に基づいて、ディープ強化学習DQNアルゴリズムを用いて行動計画をリアルタイムで行い、つまり、マルチ行動ネットワーク呼び出しに基づく行動計画アーキテクチャを構築し、タスクのニーズに応じて3つの行動の環境状態特徴の入力及び出力の動作を定義して、対応するディープ学習の行動ネットワークを構築し、報酬関数を設計するステップと、
計画システムがトレーニング済み行動ネットワークを呼び出すことでトンネル検出タスクを完了するステップと、
制御システムがトレーニング済み動作ネットワークを呼び出すことで計画された行動を完了するステップと、を含む。
前記強化学習に基づくAUV行動計画及び動作制御方法において、対応するディープ学習の行動ネットワークを構築し、報酬関数を設計する前記過程においては、以下のステップを含み、
トンネル検出タスクを行動シーケンスに分解し、グローバル経路計画において事前環境情報に基づいて複数の実現可能な経路ポイントを計画し、AUVが配置位置から出発し、各経路ポイントに順次到着し、
経路ポイントが既知環境下のグローバル計画であるため、航渡過程において、AUVはリアルタイム環境状態に基づいて、障害物回避行動を呼び出して安全に経路ポイントに到着し、トンネル検出タスクのうちAUVは主に壁追跡行動を呼び出し、所定の検出目標に従ってタスクを完了し、
決定モジュールは、グローバルデータ、決定システム、行動ライブラリ及び評価システムを含み、グローバルデータにタスク情報、状況情報、計画知識が記憶されており、決定システムは、DQNアルゴリズムと組み合わせた自学習計画システムであり、トレーニングされておき、計画タスクを実行するに先立って行動ライブラリからトレーニング済みネットワークパラメータを抽出し、次に現在の環境状態情報を入力として現在の行動動作を計画し、評価システムは、強化学習アルゴリズムの報酬関数システムであり、AUVが1つの行動動作計画を計画して実行するたびに、状態環境とタスク情報に基づいて報酬を提供し、すべてのデータはグローバルデータベースに記憶されており
前記行動のうちターゲットへの移動過程においては、以下のステップを含み、
ターゲットポイントへの移動行動は、AUVが障害物を検知しないときに向首角を調整しながらターゲットポイントへ航行することであり、特徴入力量として主にAUVとターゲットポイントの位置と角度の関係を考慮し、具体的には、現在のAUV位置座標(x
AUV,y
AUV)、ターゲットポイント座標(x
goal,y
goal)、現在の向首角θ及びターゲット向首角βの計6次元の入力を設定し、その中でも、ターゲット向首角βはAUVがターゲットへ航行しているときの向首角であり、
報酬関数については、ターゲットへの移動行動によりAUVが障害物無し環境でターゲットポイントへ航行するときに、報酬関数は2項に設定され、
第1項r
11はAUVとターゲットポイントの距離の変化を考慮し、
【数1】
第2項r
12はAUVの向首角の変化を考慮し、向首角がターゲットに近いほど、ターゲット値の報酬値が大きく、現在のAUV向首とターゲット向首との夾角αが
α=θ−βであり、
αの絶対値が小さいほど、取得する報酬値が大きく、具体的には、
r
12=k
Acos(α)
式中、k
Aはターゲットへの移動過程に対応する報酬係数であり、
総報酬値は2項を加重したものであり、
r
1=k
11r
11+k
12r
12
式中、k
11、k
12はそれぞれ加重値であり、
前記行動のうち壁追跡過程においては、以下のステップを含み、
AUV壁追跡行動は、AUVと壁の距離及び相対角度の情報を考慮し、AUVは、一方の側に配置された前後にある2つのレンジングソナーを通じて壁からのAUVの距離x
4とx
5を取得し、
方位磁針で現在のAUV向首角θを取得して、現在の壁角度θ
wallを推定し、
【数2】
式中、l
AUVは前後にある2つのソナーの間の距離であり、壁追跡行動の環境状態の特徴入力はx
1、x
2、x
3、x
4、x
5、θ、θ
wall及びターゲット追跡距離l
goalに設定され、ここで、x
1〜x
5はそれぞれ3つの前方ソナーと一側に設けられた前後ソナーにより測定されたデータであり、特徴入力量は8個であり、AUVと壁の間の状態関係を完全に記述することができ、距離閾値を設定してソナーデータについて判断を行い、トレーニング中に閾値を超えると、現在のトレーニング周期を終了し、
報酬関数は、AUVができるだけ壁に平行し、壁とは一定の距離を保持するようにし、仮想ターゲットポイントに基づく壁追跡行動の報酬信号が主に4項に設定され、一般的な壁追跡行動の報酬信号が主に2項に設定され、
第1項は、式(6)のようにAUVと現在の壁がなす角度を考慮し、AUVと壁の角度が増大し閾値を超えると、負の報酬値を取得し、AUVと壁の角度が減少すると、正の報酬値を取得し、
【数3】
第2項は、式(7)のようにAUVの前後両端と壁の距離を考慮し、AUVと壁の距離と予め設定された値との差が減少すると、正の報酬を取得し、この差が増大すると負の報酬を取得し、追跡距離が予め設定された値の±0.2mの範囲にあることができ、追跡範囲内のこの項の報酬値が0である場合、この場所と壁の距離値は、同一側面にある2つのレンジングソナーによるデータの平均値であり、
【数4】
一般的な壁追跡行動の総報酬rは2項の報酬を加重したものであり、
r
2=k
21r
21+k
22r
22
式中、k
21、k
22はそれぞれ加重値であり、
仮想ターゲットポイントに基づく追跡では、この仮想ターゲットポイントは外直角と内直角の壁により作成された仮想ターゲットポイントであり、環境が外直角である場合、前側のソナーが障害物を検知していないときに入力が最大検出距離であるので、仮想壁が構築され、仮想ターゲットポイントが追加され、環境が内直角である場合、前方ソナーが壁を検知したとき、AUVが対向する現在のターゲット壁の他方の側で仮想ターゲットポイントが構築され、
仮想ターゲットポイントに基づく報酬関数の構築は、以下のとおりであり、
【数5】
r
24=k
Bcos(α)
式中、k
Bは壁追跡過程に対応する報酬係数であり、
仮想ターゲットポイントに基づく追跡行動の総報酬rは4項の報酬を加重したものであり、
r
2=k
21r
21+k
22r
22+k
23r
23+k
24r
24
式中、k
23、k
24はそれぞれ加重値であり、
AUVが次の部分の壁を追跡するまで徐々に調整したとき、たとえば、外直角環境におけるレンジングソナーが再度ターゲット壁を検知したか、内直角環境における前方ソナーがさらに前方の壁を検知しない場合、仮想ターゲットポイントを削除し、一般的な壁追跡行動ネットワークを呼び出し、
前記行動のうち障害物回避過程においては、以下のステップを含み、
AUV障害物回避行動のニーズについて、環境状態の特徴入力は3つの前方ソナーと両側のそれぞれに設けられたフロントソナーのデータを含み、AUVは、障害物を回避しながらターゲットポイントの方向へ近づき、特徴入力はAUVの現在の位置座標(x
AUV,y
AUV)、ターゲットポイント位置座標(x
goal,y
goal)、現在の向首角θ及びターゲット向首角βの計11次元の入力をさらに含み、
報酬関数については、報酬信号が3項に分けられ、第1項は障害物に対するAUV距離に基づいて得られた報酬値r
31であり、AUVが障害物に近づくと、負の報酬の警告を取得し、AUVが障害物から離間すると、正の報酬を取得し、AUVが障害物から離間して航行するように促し、障害物と衝突すると報酬値−1を取得し、現在のトレーニング周期を終了し、
【数6】
第2項は、現在のAUVとターゲットポイントの距離に基づいて生じる報酬値r
32であり、AUVが障害物を回避しながらターゲットポイントへ航行するように促し、このため、AUVがターゲットポイントから離間すると、負の報酬を取得し、ターゲットポイントに近づくと正の報酬を取得し、AUVターゲットポイントに到着すると、正の報酬値1.0を取得し、トレーニング周期を終了し、
【数7】
第3項は、AUVと現在のターゲットがなす角度αに基づいて生じる報酬r
33であり、同様にAUVがターゲットポイントの方向へ航行するように促すが、この項の報酬は、主に、現在のターゲット向首に近くなるように向首角を調整することをAUVに学習させ、経路の長さを減らすようにするためであり、
r
33=k
ccos(α)
式中、k
Cは壁障害物の回避過程に対応する報酬係数であり、
最後の総報酬信号はこの3項の報酬値を加重したものに等しく、
r
3=k
31r
31+k
32r
32+k
33r
33
式中、k
31〜k
33はそれぞれ加重値であり、
強化学習は、動作から環境へのマッピングをトレーニングするものであり、ロボットを環境として、DDPGトレーニングを通じて力とトルクを得て水中ロボットに作用させ、AUVモデルを用いて計算することによりロボットの速度と角速度を得て、速度、角速度とターゲット速度、ターゲット角速度との誤差を利用して報酬値r
4=−|△v+△Ψ|を設計し、ここで△vは速度誤差であり、△Ψは向首誤差であり、
また、トレーニング中のAUVモデルにランダム干渉力を追加することで、DDPGに基づく制御システムをトレーニングにより得て、制御システムのトレーニングが完了した後、ロボットの現在の位置及びターゲット経路から、経路追跡戦略に従ってターゲット命令を得て、DDPG制御システムを用いてロボットを計画命令に従うように制御する。
【発明の効果】
【0008】
本発明の有益な効果は以下のとおりである。
1、本発明で設計された3層計画システムは、総タスクをターゲットへの移動と障害物回避のサブ動作に分解し、環境状態モデルと報酬関数を設計し、動作中の戦略最適化により空間次元を削減し、それによって、複雑な環境モデルでも安全で衝突のない経路を計画することができ、「次元の呪い」の問題を解決する。
また、本発明は、インテリジェントレベルが高く、計画が手動プログラミングに依存する必要がなく、人工経験によらずにロボット制御を実現することができる。
2、本発明は、ディープ強化学習アルゴリズムを行動計画システムに適用し、ニューラルネットワークを介して高次元データ特徴を抽出することで、連続的な環境状態での検知の問題を解決し、また強化学習を使用して行動決定計画を行うものである。トンネル検出タスクのニーズに応じて、ターゲットポイントへの移動、壁追跡、障害物回避という3つの典型的な動作が定義され、動作ごとに動作ネットワークが構築され、対応する環境状態変数と報酬関数が設計されて、壁の隅の問題については、仮想ターゲットポイントに基づく追跡方法が提案される。各動作は対応する目標に達しており、各動作ネットワークを呼び出すことでトンネル検出タスクを完了し、それにより、アルゴリズムは、安定性が高く、汎化能力が強い。
3、本発明は、AUVの運動学モデルを環境として、力から速度へのマッピング関係をトレーニングしているため、本発明の制御方法は、正確な環境モデルを必要とせず、トレーニング経験が制限され、実環境への適用が困難であるという問題を解決し、他のインテリジェント制御アルゴリズムの研究と比較して、普遍的な適応性を有し、一度だけトレーニングに成功すると、さまざまなタスクに適用できる。
【発明を実施するための形態】
【0010】
実施形態1
本実施形態は、強化学習に基づくAUV行動計画及び動作制御方法である。
【0011】
本発明は、自律型無人潜水機のタスクの3層構造、すなわち、タスク層、行動層、及び行動層を定義し、緊急事態が発生したときにAUV行動計画が実行され、Deep Deterministic Policy Gradient(DDPG)コントローラによってAUVの行動制御が行われる。
【0012】
実現過程においては、次の3つの部分が含まれる。
(1)自律型無人潜水機のタスクの階層的設計
(2)行動計画システムの構築
(3)DDPG制御アルゴリズムに基づく設計。
【0013】
さらに、前記(1)の過程は以下の通りである。
水中ロボットによるトンネル検出タスクを階層化するには、自律型無人潜水機によるトンネル検出タスク、行動及び動作の概念を定義し、つまり、自律型無人潜水機によるトンネル検出を総タスクとして定義し、総タスクを完了するためには、ターゲットへの移動、壁追跡及び障害物回避という3つの典型的な行動を定義し、ロボットが水中で航行して計画された行動を完了するために生じる特定の制御命令を動作として定義し、たとえば、n度左折、n度右折、nノットの速度での前進などがある。
【0014】
図1に示すように、自律型無人潜水機の行動計画システムのアーキテクチャは、総タスク層、行動層及び動作層という3層に分かれている。このモデルは、下から上に階層化されたフレームワークであり、動作層は、AUVが環境と相互作用するプロセスと見なすことができ、AUVは、動作を実行して環境に作用し、計画システムは、この層を通じてリアルタイムな環境と自体状態データを取得し、計画システムの以前の学習経験に従って学習とトレーニングを行うことで、グローバル計画知識を更新する。トレーニングサンプルライブラリ内の環境状態データの履歴経験情報を現在の環境状態と比較・分析し、次に、比較結果と計画知識更新データを層タスク層にフィードバックし、総タスク層は、主に現在の環境状態を分析して、特定の内部戦略に従って計画結果を出力し、行動動作シーケンスの形で行動層に送信し、つまり、現在の環境状態データに従って行動シーケンスを計画する計画システムの上位層であり、行動層は、主に現在の動作層によって取得されたローカル環境状態情報を考慮し、総タスク層による上位層の計画結果に基づき、特定の戦略に従って行動を選択する中間層である。以上説明するように、総タスク層は、環境状態データに基づいて上位層の計画結果を提供し、行動層は、上位層の計画結果に基づいて行動を選択して実行し、動作層では、AUVは行動戦略に従って基本的な動作を実行し、環境状態の変化を検知する役割を果たし、3層のフレームワークは、ボトムアップ計画の決定モデルを構成する。
【0015】
また、前記(2)の過程は以下の通りである。
AUVは、トンネル検出タスクを実行する際に、タスクのニーズに応じて、グローバル経路計画によって指定されたクリティカル経路ポイントに順次到着する。ただし、実際の作業過程では、急に現れた障害物やトンネル壁の損傷によるトンネル壁環境の変化など、未知の環境情報が存在するため、安全性を確保するために、AUVは環境情報と自身の状況に基づいてタイムリーに応答する必要がある。ディープ強化学習に基づく行動計画システムは、反応式に基づく計画アーキテクチャを採用しており、環境状態と動作の間のマッピング関係を構築することにより、AUVは環境の変化に応じて動作をすばやく計画することができ、緊急環境変化に対するAUVの対処能力を向上できる。
【0016】
本発明は、研究対象としてインテリジェント加圧送水トンネルを検出するAUVを採用し、このAUVは、AUVに装備した水中音響機器やセンサーなどを利用して水中環境を検出し、ディープ強化学習DQNアルゴリズムを使用して行動計画をリアルタイムで行い、つまり、マルチ行動ネットワークコール呼び出しに基づく行動計画アーキテクチャを構築し、タスクのニーズに応じて3つの基本動作の環境状態特徴の入力及び出力の動作を定義し、対応するディープ学習動作ネットワークを構築し、報酬関数を設計し、壁追跡行動では、壁の隅の問題に対しては、仮想ターゲットポイントに基づく追跡方法が提案されている。
【0017】
行動層の計画の問題については、本発明は、トンネル検出を適用背景の代表例として、ターゲットへの移動行動、壁追跡行動、及び障害物回避行動という3つの代表的行動を提案し、底層の基本行動を定義し、行動ネットワークを設計し、計画システムは、トレーニング済み行動ネットワークを呼び出すことでトンネル検出タスクを完了する。トンネル検出タスクの場合、このタスクは一連の行動シーケンスに分解でき、
図2に示すように、グローバル経路計画は、事前環境情報に基づいて複数の実行可能な経路ポイントを計画し、AUVは配置位置から出発し、各経路ポイントに順次到着する。
【0018】
航渡タスクは、AUVが各経路の開始ポイントから各クリティカルポイントに到着することであり、各航渡タスクごとに異なる速度制約を設定することができる。経路ポイントは既知環境下のグローバル計画であるため、航渡中、AUVはリアルタイム環境状態に従って障害物回避行動を呼び出して、経路ポイントに安全に到着するため、各トラックは一意ではない。トンネル検出タスクは経路ポイント3から始まり経路ポイント4で終わり、AUVは主に壁追跡行動を呼び出して、所定の検出目標に従ってタスクを完了する。
【0019】
さらに、アーキテクチャ内の検知モジュール(ソナーを含む)は、AUVセンサーのデータを取得し、行動のニーズに応じてデータを分析することで、リアルタイムなAUV状態情報と環境情報を検出する。決定モジュールは、グローバルデータ、決定システム、行動ライブラリ及び評価システムを含む、計画システムの中核である。グローバルデータには、タスク情報、状況情報、計画知識などが記憶されており、決定システムは、DQNアルゴリズムと組み合わせた自己学習計画システムでもあり、決定システムは、まず大量のトレーニングを行い、計画タスクを実行するに先立って行動データベースからトレーニング済みネットワークパラメータを抽出し、次に、現在の環境状態情報を入力として、現在の行動動作を計画し、評価システムは強化学習アルゴリズムの報酬関数システムであり、AUVが行動動作を計画して実行すると、状態環境とタスク情報に基づいて報酬を提供し、すべてのデータはグローバルデータベースに記憶されている。
【0020】
2.1)ターゲットへの移動
AUVは、トンネル検出タスクを実行する過程に亘って、予めグローバルに計画されたターゲットポイントに到着する必要があり、経路を最短にするために、ターゲットポイントへの移動行動は、AUVが障害物を検知していないときに向首角を調整しながらターゲットポイントへ航行するようにし、したがって、ターゲットへの移動行動過程におけるAUVのリアルタイム向首をできるだけターゲット方向付近に制御する必要がある。ターゲットへの移動行動のニーズに応じて、
図2に示すように、特徴入力量は主にAUVとターゲットポイントの位置及び角度の関係を考慮し、具体的には、現在のAUV位置座標(x
AUV,y
AUV)、ターゲットポイント座標(x
goal,y
goal)、現在の向首角θ及びターゲット向首角βの計6次元の入力を設定する。ターゲット向首角βは、AUVがターゲットへ航行しているときの向首角である。
【0021】
2.1.1)報酬関数の設計
ターゲットへの移動行動は、主にAUVが障害物無し環境でターゲットポイントへ航行するように駆動し、したがって、具体的な報酬関数は、2項に設定され、第1項r
11はAUVとターゲットポイントの距離の変化を考慮し、具体的には、
【数8】
第2項r
12はAUVの向首角の変化を考慮し、AUVがターゲット向首に調整して航行するように促し、首角がターゲットに近いほど、ターゲット値の報酬値が大きく、現在のAUV向首とターゲット向首との夾角αが、
α=θ−β (2)であり、
αの絶対値が小さいほど、取得する報酬値が大きく、具体的には、
r
12=k
Acos(α) (3)
式中、k
Aはターゲットへの移動過程に対応する報酬係数であり、
総報酬値は2項を加重したものであり、
r
1=k
11r
11+k
12r
12 (4)
式中、k
11、k
12はそれぞれ加重値である。
【0022】
2.2)壁追跡
ほとんどのトンネルの距離が長いため、水利プロジェクト全体が10km以上に達する可能性があり、AUVがトンネルの入口に入ると、手動による介入が困難になり、このため、AUVがトンネル環境に応じて自律的に検出タスクを完了することが求められる。衝突を回避するには、AUVは壁から安全な距離だけ離れる必要があり、そして、水中の光源や視認性などによって制限されて、AUVと壁の間の距離が画像収集の品質にも直接影響し、したがって、AUVには、壁から一定の距離を保持しながら壁に沿って航行する能力が求められる。
【0023】
2.2.1)上記AUVの壁追跡機能のニーズに応じて、この行動は主にAUVと壁の距離及び相対角度の情報を考慮する。
図3に示すように、AUVが自体の右側の壁を追跡して航行する例では、AUVは、右側に配置された前後の2つのレンジングソナーを通じて壁からのAUVの距離x
4とx
5を取得する。
【0024】
本実施形態では、AUVは、合計7個のレンジングソナーが設けられており、
図7に示すように、AUVの前端には3つの前方ソナー(
図7の1、2、3)が設けられ、AUVの両側のそれぞれに2つのソナー(
図7の4、5、と6、7)が設けられ、各側にある2つのソナーはそれぞれ前後でそれぞれ1つ設けられ、前端のものをフロントソナー、後端のものをリアソナーと呼ぶ。
【0025】
方位磁針で現在のAUV向首角θを取得し、現在の壁角度θ
wallを推定する。
【数9】
式中、l
AUVは前後の2つのソナーの間の距離であり、壁追跡行動の環境状態の特徴入力はx
1、x
2、x
3、x
4、x
5、θ、θ
wall及びターゲット追跡距離l
goalに設定され、ここで、x
1〜x
5はそれぞれ3つの前方ソナーと一側に設けられた前後ソナー(本実施形態では、1−5ソナーと記載する)により測定されたデータであり、特徴入力量は8個であり、前方ソナーと側面ソナーのデータを含み、前方ソナーは主に壁環境での前方の壁からの距離x
1を検出し、以上の特徴変量はAUVと壁の間の状態関係を完全に記述することができる。距離閾値を設定してソナーデータについて判断を行い、トレーニング中に閾値を超えると、現在のトレーニング周期を終了する。
【0026】
2.2.2)報酬関数の設計
AUVの壁追跡行動学習において、報酬関数は、AUVができるだけ壁に平行し、壁となす角度を約0°に維持し、壁とは一定の距離を保持するようにすることに用いられる。
【0027】
以上の要素を考慮して、仮想ターゲットポイントに基づく壁追跡行動の報酬信号が主に4項に設定され、一般的な壁追跡行動の報酬信号が主に2項に設定される。
【0028】
第1項は、式(6)のようにAUVと現在の壁がなす角度を考慮し、AUVと壁の角度が増大し閾値を超えると、負の報酬値を取得し、AUVと壁の角度が減小すると、正の報酬値を取得し、
【数10】
第2項は、式(7)のようにAUVの前後両端と壁の距離を考慮し、AUVと壁の距離と予め設定された値との差が減小すると、正の報酬を取得し、この差が増大すると、負の報酬を取得し、追跡距離が予め設定された値の±0.2mの範囲にあることができ、追跡範囲内のこの項の報酬値が0である場合、この場所と壁の距離値は、同一側面にある2つのレンジングソナーデータによる平均値である。
【数11】
一般的な壁追跡行動の総報酬rは2項の報酬を加重したものであり、
r
2=k
21r
21+k
22r
22 (8)
式中、k
21、k
22はそれぞれ加重値である。
【0029】
2.2.3)仮想ターゲットポイントに基づく追跡方法
一般的な壁環境では、壁追跡行動には、ターゲットの向首角とターゲットの追跡距離のみを考慮すればよく、ターゲットへの移動行動や障害物回避行動に比べて、実際ターゲットポイントによる案内がないので、壁の隅などのような特殊な環境の場合は、正確な計画結果を提供することができない。壁の隅の問題は、AUV壁追跡行動における主な難問であり、本発明では、主に2種類の壁の隅の環境、つまり外直角環境と内直角環境を考慮する。壁の隅の環境の特殊性のため、外直角を追跡する場合、AUVの前方にあるレンジングソナーが壁を検出できず、AUVはタイムリーに向首角を調整できず、ターゲットを失うことがある。内側の壁の隅の場合、基本報酬の設計に前方の障害物を考慮しないので、衝突が発生する。
【0030】
この問題に対しては、本発明は、AUV壁追跡をガイドするための仮想ターゲットポイントを構築する方法を提案する。
図4及び
図5には、外直角の壁と内直角の壁について構築される仮想ターゲットポイントが示されている。環境が外直角である場合、フロントソナーが障害物を検出していないときに入力が最大検出距離であるので、仮想壁は点線のように構築され、これに基づいて仮想ターゲットポイントが追加される。仮想ターゲットポイントの位置は、AUV位置、レンジングソナーデータ、及び安全距離L
1によって決定される。
【数12】
環境が内直角である場合、
図5に示すように、仮想壁を構築できず、AUVがタイムリーに方向を変更して前方の壁の障害物を回避することを考慮すると、前方ソナーにより壁が検知されると、AUVが対向する現在のターゲット壁の他方の側で仮想ターゲットポイントが構築され、仮想ターゲットポイントの位置はAUV位置、向首角及び安全距離L
2により決定される。
【数13】
2種の環境のいずれにも安全距離L
1とL
2が設定され、シミュレーションテストを行った結果、その値がターゲット追跡距離程度である場合、行動計画の効果が良好である。仮想ターゲットポイントに基づく報酬関数の構築は以下のとおりである。
【数14】
r
24=k
Bcos(α) (14)
式中、k
Bは壁追跡過程に対応する報酬係数であり、
仮想ターゲットポイントに基づく追跡行動の総報酬rは4項の報酬を加重したものである。
r
2=k
21r
21+k
22+r
22+k
23r
23+k
24r
24 (15)
式中、k
23、k
24はそれぞれ加重値であり、
報酬係数k
23とk
24値が大きいため、壁の隅の環境ではAUVは仮想ターゲットポイントにより案内される傾向がある。
【0031】
AUVが次の部分の壁を追跡するまで徐々に調整したとき、つまり、外直角環境におけるレンジングソナーが再度ターゲット壁を検知したか、内直角環境における前方ソナーがさらに前方の壁を検知しない場合、仮想ターゲットポイントを削除し、一般的な壁追跡行動ネットワークを呼び出す。
【0032】
2.3)障害物回避
障害物回避行動は、行動計画システムのキーであり、AUVの自律的決定レベルを決定し、AUVが作業タスクを安全的に実施できるかを左右する。
【0033】
2.3.1)AUV障害物回避行動のニーズに応じて、
図6に示すように、行動計画システムは、周辺の障害物環境情報を十分に取得する必要があるので、環境状態の特徴入力には、3つの前方ソナーと両側のそれぞれに設けられたフロントソナーによるデータが含まれる。
【0034】
AUVは、障害物回避を実行しながらターゲットポイントの方向へ近づき、AUVとターゲットポイントの相対位置情報を取得する必要があるので、特徴入力は、AUVの現在の位置座標(x
AUV,y
AUV)、ターゲットポイント位置座標(x
goal,y
goal)、現在の向首角θ及びターゲット向首角βという計11次元の入力を含む。
【0035】
2.3.2)報酬関数の設計
障害物回避行動は、AUVが急に現れた障害物を回避しターゲットポイントに順調に到着するようにするために用いられ、したがって、報酬信号分が3項に分けられ、第1項は障害物に対するAUV距離に基づいて得られた報酬値r
31であり、式16に示すように、AUVが障害物に近づくと、負の報酬の警告を取得し、AUVが障害物から離間すると、正の報酬を取得し、AUVが障害物から離間して航行するように促し、障害物と衝突すると報酬値−1を取得し、現在のトレーニング周期を終了する。
【数15】
第2項は、現在のAUVとターゲットポイントの距離に基づいて生じる報酬値r
32であり、AUVが障害物を回避しながらターゲットポイントへ航行するように促し、このため、AUVがターゲットポイントから離間すると、負の報酬を取得し、ターゲットポイントに使づくと正の報酬を取得し、AUVがターゲットポイントに到着すると、正の報酬値1.0を取得し、トレーニング周期を終了する。
【数16】
第3項は、AUVと現在のターゲットがなす角度αに基づいて生じる報酬r
33であり、同様にAUVがターゲットポイントの方向へ航行するように促すが、この項の報酬は、主に、現在のターゲット向首に近くなるように向首角を調整することをAUVに学習させ、経路の長さを減らすようにするためである。
r
33=k
ccos(α) (18)
式中、k
Cは障害物回避過程に対応する報酬係数であり、
最後の総報酬信号はこの3項の報酬値を加重したものに等しく、
r
3=k
31r
31+k
32r
32+k
33r
33 (19)
式中、k
31〜k
33はそれぞれ加重値である。
【0036】
さらに、前記(3)の過程は以下のとおりである。
強化学習は、動作から環境へのマッピングをトレーニングするものであり、ロボットモデルを環境モデルとして、動作からロボットモデルへのマッピングをトレーニングすることができる。したがって、本発明では、直接ロボットを環境として、ファジー流体力学パラメータのロボットの運動学及び動力学モデル、即ちAUVモデルを作成し、DDPGトレーニングを通じて力とトルクを得て水中ロボットに作用させ、AUVモデルを用いて計算することによりロボットの速度と角速度を得て、速度、角速度とターゲット速度、ターゲット角速度との誤差を利用して報酬値r
4=-|△v+△Ψ|を設計し、ここで、△vは速度誤差であり、△Ψは向首誤差である。また、トレーニング中のAUVモデルにランダム干渉力を追加することで、動的に変化している水中環境をシミュレーションし、それにより、抗干渉能力を有するDDPGに基づく完全な制御システムがトレーニングにより得られる。制御システムのトレーニングが完了した後、ロボットの現在の位置及びターゲット経路から、経路追跡戦略に従ってターゲット命令を得て、DDPG制御システムを用いてロボットを計画命令に従うように制御する。
【0037】
前記DDPGの制御システムは動作ネットワークに対応し、Deep Deterministic Policy Gradient(DDPG)は、Actor CriticとDQNを組み合わせたアルゴリズムであり、Actor Criticの安定性及び収束性を向上させる。その構想は、DQN構造中のメモリバンク、及び構造が同じであるが、パラメータの更新頻度が異なる2つのニューラルネットワークの構想をActor Criticに適用することである。さらに、Deterministic構想を利用して、従来のActor Criticが連続動作区間においてランダムにスクリーニングするという方式を、連続空間において2つだけの動作値を出力するように変更する。
【0038】
Criticシステムでは、Criticの学習過程はDQNと類似しており、下式のように現実Q値と推定Q値の損失関数を用いてネットワーク学習を行う。
【数17】
式中、Q(s,a)は、状態推定ネットワークに基づいて得られるものであり、aは動作推定ネットワークから伝送してきた動作である。前の部分R+γmax
aQ(s’,a)は現実Q値であり、DQNと異なるのは、Q値を計算するときに、貪欲法を使用して動作a’を選択するのではなく、動作現実ネットワークによりここでのa’を得るのである。前記のように、Criticの状態推定ネットワークのトレーニングは、現実Q値と推定Q値の二乗損失に基づくものであり、推定Q値は、現在の状態sに基づいて、動作推定ネットワークにより出力される動作aの入力状態を推定ネットワークに入力して得るものであり、現実Q値は、現実の報酬Rに基づいて、次の時刻の状態s’と、動作現実ネットワークにより得られた動作a’を状態現実ネットワークに入力して得たQ値とを加算して得るものである。
【0039】
Actorシステムでは、下記式に基づいて動作推定ネットワークのパラメータを更新する。
【数18】
sは状態を表し、s
tはt時刻での状態であり、aは動作を表し、θ
Qとθμはネットワークの重みパラメータを表す。
【0040】
同じ状態について、システムが2つの異なる動作a1とa2を出力し、状態推定ネットワークから2つのQ値Q1及びQ2がフィードバックされる場合、Q1>Q2であれば、動作1を用いると、より多くの報酬を得て、この場合、Policy gradientの構想によれば、a1の確率が増加し、a2の確率が低下し、つまり、Actorはできるだけ大きなQ値を取得しようとする。したがって、Actorの損失については、得たフィードバックQ値が大きいほど、損失が小さく、得たフィードバックQ値が小さいほど、損失が大きいと理解でき、このため、状態推定ネットワークから戻されたQ値を負にすればよい。
【0041】
DDPGコントローラの構想は、強化学習アルゴリズム中の動作をロボットの推力及びトルクに対応させ、アルゴリズム中の状態をロボットの速度及び角速度に対応させることである。アルゴリズムに対して学習トレーニングを行うことにより力から状態へのマッピング関係が実現される。
【0042】
DDPGをAUV制御に適用するには、まず、Criticニューラルネットワーク構造Q(s
ta
t|θ
Q)及びActorニューラルネットワーク構造μ(s
t|θμ)、(θ
Qとθμはネットワークの重みパラメータを示す。)を作成する。次に、それぞれCriticとActorの2つの構造中に、ターゲットネットワーク(target_net)と予測ネットワーク(eval_net)との2つのニューラルネットワークを作成する。次に、DDPGの動作出力を制御システムの作用力τとして、制御システムが出力する作用力でロボットの動きを制御すると、DDPG制御システムをAUVの現在の状態sからロボットの受ける力へのマッピングとすることができ、式(21)の
【数19】
と組み合わせ、関数で
τ=μ(s
t|θμ) (22)として表し、
ロボット状態sは主にロボットの速度と向首として示され、
V=[u,v,r]
Ψ=[0,θ,Ψ] (23)
式中、u、v、rはそれぞれAUVの縦方向速度、横方向速度及び角速度であり、ΨはAUVの向首角であり、
水平運動であるので、v、rは無視され、このため、
τ=μ(s
t)=μ(μ(t),Ψ(t)) (24)
この式は、制御システムの出力力がロボットの速度、向首及びトリム角がターゲット命令のようになるように制御することを示す。
【0043】
実施形態2
実施形態1に記載のファジー流体力学パラメータのAUVモデルの作成過程は、一般的なAUVダイナミックモデリングの過程であり、本分野の従来技術を用いて実現でき、上記過程をより明瞭にするために、本実施形態では、ファジー流体力学パラメータのAUVモデルの作成過程を説明するが、ただし、本発明は、以下のファジー流体力学パラメータのAUVモデルの作成方式を含むが、それに制限されない。ファジー流体力学パラメータのAUVモデルの作成過程には、
水中ロボットの流体力学方程を作成するステップと、
【数20】
式中、f−ランダム干渉力;M−システムの慣性係数行列、M=M
RB+M
A≧0; M
RB−キャリアの慣性行列、
【数21】
且つ
【数22】
;M
A−追加品質係数行列、
【数23】
;
【数24】
−コリオリ力・求心力係数行列、
【数25】
;C
RB−求心力係数行列;
【数26】
−コリオリ力(モーメント)係数行列、
【数27】
;
【数28】
−粘性流体力係数行列、
【数29】
;τ−制御入力ベクター;g
0−静圧荷重ベクター、研究し易さからゼロとする;
【数30】
−復元力/トルクベクター。
【0044】
自律型無人潜水機の実行機構の構成から、その横揺れが小さく、主にスラスターを用いて上昇・ダイビング、縦方向動き、前後揺れ及び縦揺れの動きが行われると考えられ、その運動学モデルは5自由度の方程式で近似的に記述することができる。
【数31】
【数32】
式中、X、Y、Z、M、Nは、水中ロボットのアクチュエータが発生する作用による水中ロボットの各自由度での力(トルク)を表し、水中ロボットの受ける重力と浮力、スラスターの推力、水中ロボットの動きによる流体動力やいくつかの環境からの外力を含み、
Mは水中ロボットの全水中排水量の質量であり、
x
G、y
G、z
Gは水中ロボットの重心の艇体座標系における座標であり、
I
y、I
zはそれぞれ艇体座標系のy、z軸に対する水中ロボットの質量の慣性モーメントであり、
u、v、ω、q、rはそれぞれ水中ロボットの艇体座標系での縦方向速度、横方向速度、垂向速度、トリム角速度、回転角速度であり、
【数33】
は水中ロボットの艇体座標系での対応する自由度の(角)加速度であり、
【数34】
などはすべて艇体の一次又は二次流体力学的導関数であり、理論計算、制約付きモデルの試験、識別及び近似推定により得られ得る。
【0045】
実施例
本発明の最も主な目的は、水中ロボットが水中環境において現在の環境状態に基づいて行動決定及び動作制御を自律的に行うことによって、人を複雑なプログラミングプロセスから解放することであり、具体的には、以下のように実現される。
【0046】
1)プログラミングソフトウェアを用いてディープ強化学習に基づく自律型無人潜水機の行動計画シミュレーションシステムを作成し、シミュレーショントレーニングによりロボットの最適決定戦略を得て、具体的には、
1.1)環境モデルを作成して、初期位置とターゲットポイントを決定し、アルゴリズムパラメータを初期化させる。
1.2)現在のt時刻での環境状態及びロボットタスクを決定し、タスクをターゲットへの移動行動、壁追跡行動、障害物回避行動に分解する。
1.3)現在の状態に基づいてターゲットへの移動、壁追跡又は障害物回避を選択して、行動を動作に分解する。
1.4)動作aを実行して、新しい状態s’を観察し、報酬値Rを得る。
1.5)ニューラルネットワークをトレーニングして各動作のQ値を得て、最大Q値に基づいて動作を出力する。
1.6)Q関数を更新する。
1.7)現在の時刻の状態を判断し、ターゲット状態に達する場合、1.8)に入り、そうではない場合、1.4)に入る。
1.8)選択した行動が完了した後、Q関数を更新する。
1.9)検出が完了したか否かを判断し、完了した場合、1.10)に入り、そうではない場合、1.3)に入る。
1.10)Q値が収束しているか否かを判断し、収束している場合、トレーニング又は計画を終了し、収束していない場合、ロボット位置を初期化させ、1.2)に入る。
【0047】
2)DDPGコントローラを用いて、計画して出力する動作を完了するようにロボットを制御し、具体的には、以下のステップを含む。
2.1)パラメータを初期化する。
2.2)外部ループを行う。
2.2.1)ターゲット向首、ターゲット速度をランダムに生成する。
2.2.2)内部ループを行う。
2.2.2.1)DDPGアルゴリズムを実行させて、動作τ=a=μ(s
t|θμ)を出力する。
2.2.2.2)AUV運動学モデルに基づいてAUVの加速度を計算する。
【数35】
2.2.2.3)AUV運動学モデルに基づいてAUV速度
【数36】
、向首角
【数37】
及びトリム角
【数38】
、速度誤差△v、向首誤差△Ψ及びトリム誤差△θを計算し、報酬戦略に従って報酬値を取得する。
r=−|△v+△Ψ+△θ|
2.2.2.4)制御誤差が0であり、r+=1である場合、小ループを終了する。
2.2.2.5)criticニューラルネットワークを更新して最小損失を取得する。
【数39】
2.2.2.6)勾配降下法によってactorを更新する。
【数40】
2.2.2.7)ネットワークパラメータ
【数41】
を更新する。
2.2.2.8)内ループのステップ数に達すると、内ループを終了する。
2.2.3)外ループのステップ数に達すると、外ループを終了する。