JP2023175366A - Control device, control method, and program - Google Patents
Control device, control method, and program Download PDFInfo
- Publication number
- JP2023175366A JP2023175366A JP2022087778A JP2022087778A JP2023175366A JP 2023175366 A JP2023175366 A JP 2023175366A JP 2022087778 A JP2022087778 A JP 2022087778A JP 2022087778 A JP2022087778 A JP 2022087778A JP 2023175366 A JP2023175366 A JP 2023175366A
- Authority
- JP
- Japan
- Prior art keywords
- flight device
- thrust
- flight
- user
- model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 18
- 230000002787 reinforcement Effects 0.000 claims abstract description 40
- 238000012545 processing Methods 0.000 claims abstract description 38
- 238000013528 artificial neural network Methods 0.000 claims description 9
- 230000015654 memory Effects 0.000 claims description 4
- 230000000306 recurrent effect Effects 0.000 claims description 4
- 230000009471 action Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 11
- 238000004891 communication Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 230000007246 mechanism Effects 0.000 description 5
- 230000004913 activation Effects 0.000 description 4
- 238000005259 measurement Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 239000000446 fuel Substances 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 235000015842 Hesperis Nutrition 0.000 description 1
- 235000012633 Iberis amara Nutrition 0.000 description 1
- HBBGRARXTFLTSG-UHFFFAOYSA-N Lithium ion Chemical compound [Li+] HBBGRARXTFLTSG-UHFFFAOYSA-N 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 229910001416 lithium ion Inorganic materials 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B64—AIRCRAFT; AVIATION; COSMONAUTICS
- B64C—AEROPLANES; HELICOPTERS
- B64C13/00—Control systems or transmitting systems for actuating flying-control surfaces, lift-increasing flaps, air brakes, or spoilers
- B64C13/02—Initiating means
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B64—AIRCRAFT; AVIATION; COSMONAUTICS
- B64C—AEROPLANES; HELICOPTERS
- B64C3/00—Wings
- B64C3/38—Adjustment of complete wings or parts thereof
- B64C3/40—Varying angle of sweep
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B64—AIRCRAFT; AVIATION; COSMONAUTICS
- B64C—AEROPLANES; HELICOPTERS
- B64C39/00—Aircraft not otherwise provided for
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B64—AIRCRAFT; AVIATION; COSMONAUTICS
- B64D—EQUIPMENT FOR FITTING IN OR TO AIRCRAFT; FLIGHT SUITS; PARACHUTES; ARRANGEMENT OR MOUNTING OF POWER PLANTS OR PROPULSION TRANSMISSIONS IN AIRCRAFT
- B64D27/00—Arrangement or mounting of power plants in aircraft; Aircraft characterised by the type or position of power plants
- B64D27/02—Aircraft characterised by the type or position of power plants
- B64D27/16—Aircraft characterised by the type or position of power plants of jet type
- B64D27/20—Aircraft characterised by the type or position of power plants of jet type within, or attached to, fuselages
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/10—Simultaneous control of position or course in three dimensions
Landscapes
- Engineering & Computer Science (AREA)
- Aviation & Aerospace Engineering (AREA)
- Automation & Control Theory (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mechanical Engineering (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
Description
本発明は、制御装置、制御方法、及びプログラムに関する。 The present invention relates to a control device, a control method, and a program.
ジェットやロケットの推力を利用してユーザを飛行させる装着型の飛行装置(飛行器具)が知られている。このような飛行装置は、ポータブル・パーソナル・エアモビリティ・システムとも呼ばれている。一方で、深層強化学習を用いてロボットを制御する技術が知られている(例えば非特許文献1参照)。 2. Description of the Related Art Wearable flying devices (flight instruments) that allow users to fly using the thrust of jets or rockets are known. Such flying devices are also called portable personal air mobility systems. On the other hand, a technique for controlling a robot using deep reinforcement learning is known (for example, see Non-Patent Document 1).
人間は一人ひとり体格が異なっているため、飛行装置がヘリコプターのような大きな装置でなく、スーツのように、人間の体格の差に対して相対的に大きな影響を受ける装置である場合、飛行装置を装着するユーザに応じて飛行装置の制御方法を調整する必要がある。しかしながら、従来の技術では、ユーザに応じて飛行装置の制御方法を十分に調整できていなかった。また、その制御方法はユーザが替わるたびに調整し直す必要があり、時間的或いは経済的コストが大きかった。 Since each human being has a different physique, if the flight device is not a large device such as a helicopter, but a device that is relatively affected by differences in human physique, such as a suit, the flight device should be It is necessary to adjust the control method of the flight device depending on the user wearing the device. However, with the conventional technology, it has not been possible to sufficiently adjust the control method of the flight device depending on the user. Furthermore, the control method needs to be readjusted every time the user changes, resulting in large time and economic costs.
本発明は、このような事情を考慮してなされたものであり、ユーザを問わずに飛行装置を好適に制御することができる制御装置、制御方法、及びプログラムを提供することを目的の一つとする。 The present invention has been made in consideration of such circumstances, and one of the objects is to provide a control device, a control method, and a program that can suitably control a flight device regardless of the user. do.
本発明の一態様は、ユーザが装着可能な飛行装置を制御するための制御装置である。前記飛行装置は、前記飛行装置の状態に関する状態データと、前記飛行装置の操作に関する操作データとを取得し、深層強化学習を用いて学習されたモデルに対して、前記取得した姿勢データ及び操作データを入力し、前記状態データ及び操作データが入力された前記モデルの出力結果に基づいて、前記飛行装置を制御する処理部を備える。 One aspect of the present invention is a control device for controlling a flight device wearable by a user. The flight device acquires state data regarding the state of the flight device and operation data regarding the operation of the flight device, and applies the acquired attitude data and operation data to a model learned using deep reinforcement learning. and a processing unit that controls the flight device based on the output result of the model to which the state data and operation data are input.
本発明の一態様によれば、ユーザの体格に依らずに、又はユーザの有無に依らずに飛行装置を好適に制御することができる。 According to one aspect of the present invention, the flight device can be suitably controlled regardless of the physique of the user or the presence or absence of the user.
以下、図面を参照し、本発明の制御装置、制御方法、及びプログラムの実施形態について説明する。 DESCRIPTION OF THE PREFERRED EMBODIMENTS Embodiments of a control device, a control method, and a program according to the present invention will be described below with reference to the drawings.
[飛行装置の利用場面]
図1は、実施形態に係る飛行装置1の利用場面を説明するための図である。図示のように、飛行装置1はユーザUによって装着される。ユーザUによって装着された飛行装置1は、ユーザUの操縦によって飛行したり、又はオートパイロットのように自律的に飛行したりする。例えば、飛行装置1は、出発地Aから目的地Bまで移動するために利用される。飛行装置1を装着したユーザUが出発地Aから目的地Bまで移動した後、飛行装置1を脱着して目的地Bに降り立った場合、飛行装置1は再度ユーザUが装着するまで目的地Bの周辺でホバリングし続けてもよいし、自律飛行によって目的地Bから出発地Aまで戻ってもよい。飛行装置1は、予め決められた単独のユーザだけでなく、不特定多数のユーザによって利用されてよい。
[Usage situations of flight equipment]
FIG. 1 is a diagram for explaining a usage scene of a
例えば、飛行装置1は、山岳救助隊が、山のふもとに設置された本部基地(出発地A)から登山道内の救助現場(目的地B)に空路で向かうために利用されてよい。この際、1人目の救助隊員が目的地Bに到着した後、飛行装置1を脱着して目的地Bに降り立ち、その後、飛行装置1が単独で出発地Aまで戻ることで、2人目の救助隊員が飛行装置1を装着して救助現場に向かう。これを繰り返すことで、1つの飛行装置1によって複数の救助隊員を目的地Bに出動させることができる。また、救助隊員が目的地Bに到着した後、飛行装置1を脱着して目的地Bに降り立ち、その後、飛行装置1が単独で出発地Aや給油地Cまで向かい、出発地Aや給油地Cにおいて給油を終えた後に飛行装置1が単独で目的地Bまで戻るようにしてもよい。この場合、出発地Aから目的地Bまでの片道分の燃料しか搭載しておらず、往路しか有人飛行できない場合であっても、途中で飛行装置1単独による給油を挟むことで、目的地Bから出発地Aまでの復路も有人飛行することができる。このように、航続距離をより長くすることもできる。
For example, the
また、飛行装置1は、前述の用途に加え、地上の要救助者を上空で待機中のヘリコプターまで移送させるために利用されてもよい。更に、飛行装置1は地上に限られず、海上でも利用されてよい。例えば、飛行装置1は、海上遭難者を上空のヘリコプターや海上の船舶まで移送させるために利用されてもよい。
Further, in addition to the above-mentioned uses, the
[飛行装置の構成]
図2は、実施形態に係る飛行装置1の構成例を表す図である。図示のように、飛行装置1は、例えば、推力装置10と、翼20と、着脱部30と、制御装置100とを備える。
[Configuration of flight equipment]
FIG. 2 is a diagram illustrating a configuration example of the
図2に示すΣWは慣性座標系の一つの地球固定座標ΣWを表し、OWは地球固定座標ΣWの原点を表し、XW軸は真北を表し、YW軸は東を表し、ZW軸は鉛直下方を表している。また、慣性主軸を機体固定座標系として定義した場合、図中XB軸は、飛行装置1の重心を原点としたときの機体の慣性主軸を表し、ZB軸は、機体の下方向を表し、YB軸は、機体の進行方向右側の方向を表している。言い換えれば、XB軸はロール軸を表し、ZB軸はヨー軸を表し、YB軸はピッチ軸を表している。
Σ W shown in Figure 2 represents one earth-fixed coordinate Σ W of the inertial coordinate system, O W represents the origin of the earth-fixed coordinate Σ W , the X W axis represents true north, and the Y W axis represents east. , Z W axis represents vertically downward direction. In addition, when the principal axis of inertia is defined as a coordinate system fixed to the aircraft, the XB axis in the figure represents the principal axis of inertia of the aircraft when the center of gravity of the
推力装置10は、燃料11を用いて飛行装置1に推力を発生させる。推力装置10には、例えば、公知のジェットエンジンが好適に用いられてよい。以下、一例として推力装置10には推力偏向可能なジェットエンジンが適用されるものとして説明する。ジェットエンジンの噴射口には、ダクトファンによって生じた噴流の向きを切り替えるための推力偏向機構(例えばパドルやノズル、リングなどを有するスラストベクタリング機構)が設けられており、これら推力偏向機構は、制御装置100によって制御される。
The
翼20は、飛行装置1の姿勢を維持し、かつ飛行する方向を転換する。翼20による方向の転換は、ユーザUが後述のユーザインターフェース120を操作することで行われてもよいし、制御装置100が行ってもよいし、ユーザUと制御装置100との協働で行われてもよい。
The
本実施形態において、翼20はリンク機構を備え、鳥の羽根のように折り畳みが可能である。上述の翼幅は、翼20を広げた状態におけるものとする。翼20を折り畳むことができることから、下記の機能を有する。すなわち、高速飛行時においては翼20を折り畳んで小さめにすることで空気抵抗を減らし、低速飛行時及び離着陸時には翼20を大きく展開することで空気力を得る。また、飛行装置1の不使用時には翼20を折り畳むことで、運搬時の機動性に寄与してもよい。また、上記に限らず、翼20は、折り畳むことに代えて伸縮構造を備えることによって展開及び格納が可能な構造としてもよい。あるいは、折りたたみ可能な構造を備えない平板状(つまり固定翼)であってもよい。また、本実施形態に係る翼20は、上述のリンク機構に加えて各種アクチュエータを備え、図2に示すロール軸XB、ヨー軸ZB、ピッチ軸YBまわりに回動することができるものとする。詳細については後述する。
In this embodiment, the
なお飛行装置1は、翼20が設けられている代わりに、手と足の間に布を張ったウィングスーツであってもよいし、上記のような固定翼であってもよい。
Note that instead of being provided with the
着脱部30は、ユーザUが飛行装置1を装着するための部材であり、この部材はユーザUが容易に着脱可能な構造を有する。例えば、着脱部30は、一般的なリュックサックのように肩に掛ける構造と、ユーザUに固定するための留め具と、を備える構造を有してよい。あるいは、各ユーザUが予め着脱部30に対応した形状を備えた取付部材を装備した状態において、ユーザUに装備された取付部材を介して、ユーザUと着脱部30とを適宜固定する構造としてもよい。
The attachment/
制御装置100は、推力装置10の推力を制御したり、その推力の向きを制御したりする。更に、制御装置100は、翼20の形状や向きを制御することで、飛行装置1の姿勢を調整したり、飛行する方向を転換したりする。
The
[制御装置の構成]
図3は、実施形態に係る制御装置100の構成例を表す図である。図示のように、制御装置100は、例えば、通信インターフェース110と、ユーザインターフェース120と、センサ130と、電源140と、記憶部150と、アクチュエータ160と、処理部170とを備える。
[Control device configuration]
FIG. 3 is a diagram illustrating a configuration example of the
通信インターフェース110は、例えば、WAN(Wide Area Network)などのネットワークを介して、外部装置と無線通信を行う。外部装置は、例えば、飛行装置1を遠隔操作可能なリモートコントローラであってよい。例えば、通信インターフェース110は、外部装置から、飛行装置1がとるべき目標の姿勢や速度などを指示するコマンドを受信してよい。これにより、ユーザUの操縦技能が未熟であって、かつ、制御部230による自律単独飛行が不可能であるような場合に、外部から操縦に熟練したオペレータによる操縦を行うことができる。
The
また、通信インターフェース110は、外部装置から、目的地Bが変更になった旨を飛行中のユーザUに対して連絡するための情報を受信してもよいし、目的地Bのより詳細な情報をユーザUに対して連絡するための情報を受信してもよい。
Further, the
また、通信インターフェース110は、外部装置に対して情報を送信してもよい。例えば、通信インターフェース110は、救助現場に関する詳細な情報(座標や高度等)を外部装置に送信してよい。
Additionally, the
ユーザインターフェース120は、入力インターフェース120aと、出力インターフェース120bとが含まれる。例えば、入力インターフェース120aは、ジョイスティックやハンドル、ボタン、スイッチ、マイクロフォンなどである。出力インターフェース120bは、例えば、ディスプレイやスピーカなどである。例えば、ユーザUは、入力インターフェース120aのジョイスティック等を操作して、推力装置10の推力やその向きを調整してもよいし、翼20の形状や向きを調整してもよい。また、ユーザUは、入力インターフェース120aのマイクロフォンに対して、飛行装置1がとるべき速度や高度、姿勢などを発話することで、推力装置10の推力やその向きを調整してもよいし、翼20の形状や向きを調整してもよい。
The
センサ130は、例えば、慣性計測装置である。慣性計測装置は、例えば、三軸式加速度センサと、三軸式ジャイロセンサとを含む。慣性計測装置は、三軸式加速度センサや三軸式ジャイロセンサによって検出された検出値を処理部170に出力する。慣性計測装置による検出値には、例えば、水平方向、垂直方向、奥行き方向の各加速度及び/又は角速度や、ピッチ、ロール、ヨーの各軸の速度(レート)などが含まれる。センサ130には、更に、レーダやファインダ、ソナー、GPS(Global Positioning System)受信機などが含まれてもよい。
電源140は、例えば、リチウムイオン電池などの二次電池である。電源140は、アクチュエータ160や処理部170などの構成要素に電力を供給する。電源140には、更に、ソーラーパネルなどが含まれてもよい。
The
またアクチュエータ160や処理部170などは、電源140から供給された電力を利用する代わりに、或いは加えて、推力装置10のジェットエンジンによって発電された電力を利用してもよい。
Further, the
記憶部150は、例えば、HDD(Hard Disc Drive)、フラッシュメモリ、EEPROM(Electrically Erasable Programmable Read Only Memory)、ROM(Read Only Memory)、RAM(Random Access Memory)などの記憶装置により実現される。記憶部150には、ファームウェアやアプリケーションプログラムなどの各種プログラムのほかに、処理部170の演算結果などがログとして格納される。また、記憶部150には、モデル情報152が格納される。モデル情報152は、例えば、ネットワークを介して外部装置から記憶部150にインストールされてもよいし、制御装置100のドライブ装置に接続された可搬型の記憶媒体から記憶部150にインストールされてもよい。モデル情報152については後述する。
The
アクチュエータ160は、例えば、推力アクチュエータ162と、スイープアクチュエータ164と、フォールドアクチュエータ168とを備える。
The
推力アクチュエータ162は、推力装置10を駆動させて、飛行装置1に推力を与えたり、その推力の向きを変更したりする。スイープアクチュエータ164は、ヨー軸ZB周りに翼20を回動させる。
The thrust actuator 162 drives the
処理部170は、例えば、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)などが記憶部150に格納されたプログラムを実行することにより実現される。また、処理部170は、LSI(Large Scale Integration)、ASIC(Application Specific Integrated Circuit)、またはFPGA(Field-Programmable Gate Array)などのハードウェアにより実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。
The
処理部170は、(i)入力インターフェース120aに対するユーザUの入力操作、(ii)センサ130の検出結果、(iii)通信インターフェース110が外部装置から受信した遠隔操作のためのコマンドのうちの一部又は全部に基づいて、推力アクチュエータ162を制御する。これによって、推力装置10の推力が制御されたり、その推力の向きが制御されたりする。例えば、制御装置100は、推力アクチュエータ162を制御することによって、推力装置10のジェットエンジンのダクトファンの回転数を制御することで推力を調整したり、ジェットエンジンの推力偏向機構を制御して推力方向を調整したりする。
The
また、制御装置100は、翼20が可変翼である場合、(i)~(iii)のうちの一部又は全部に基づいて、スイープアクチュエータ164やフォールドアクチュエータ168を制御する。これによって、翼20の形状や向きが制御される。翼20の形状や向きは、「可変翼の操作量」の一例である。
Further, when the
[処理部の処理フロー]
以下、処理部170の一連の処理の流れをフローチャートを用いて説明する。図4は、処理部170の一連の処理の流れを示すフローチャートである。本フローチャートの処理は、例えば、所定の周期で繰り返し行われてよい。
[Processing flow of processing unit]
The flow of a series of processes performed by the
まず処理部170は、現時刻tにおいて飛行装置1をとりまく環境の状態を示す状態変数stを取得する(ステップS100)。状態変数stには、例えば、飛行装置1の現時刻tの姿勢、位置、速度、及び角速度のうち少なくとも一つ(好ましくは全て)が含まれる。例えば、状態変数stに含まれる角度は、ピッチ軸周りの角度(以下、ピッチ角という)であってよい。また状態変数stに含まれる角速度は、ピッチ角の角速度であってよい。さらに、状態変数stには、現時刻tの推力装置10の推力及びその方向や、現時刻tの翼20の形状や向きが含まれてよい。現時刻tにおける姿勢、位置、速度、及び角速度のうち少なくとも一つ又は全部は「状態データ」の一例である。また現時刻tの推力装置10の推力及びその方向や、現時刻tの翼20の形状や向きは「操作データ」の一例である。
First, the
例えば、処理部170は、センサ130から姿勢、位置、速度、及び角速度を状態変数stとして取得する。
For example, the
また、処理部170は、入力インターフェース120aを介してユーザUが推力装置10の推力やその向きを指示した場合、入力インターフェース120aに対するユーザUの入力操作を状態変数stに加えてもよい。
Further, when the user U instructs the thrust force of the
次に、処理部170は、記憶部150からモデル情報152を読み出し、そのモデル情報152によって定義された深層強化学習モデルMDLを用いて、状態変数stから、次の時刻t+1において飛行装置1が取り得ることが可能な最適な行動(行動変数)at+1を決定する(ステップS102)。
Next, the
本実施形態における行動(行動変数)at+1は、所望のタスクを実現させるための行動であり、例えば、当タスクを実現させるために必要となる推力装置10の推力とその方向が含まれてよく、更には、翼20の形状や向きが含まれてよい。所望のタスクは、例えば、ある一定の高度を保ったまま飛行装置1をホバリングさせ続けることや、水平飛行から滑らかにホバリング体勢に遷移させること、強風下でも真っ直ぐに飛行すること、といった様々なタスクであってよい。
The action (action variable) a t+1 in this embodiment is an action for realizing a desired task, and may include, for example, the thrust of the
図5は、深層強化学習モデルMDLの一例を表す図である。本実施形態に係る深層強化学習モデルMDLは、深層強化学習を利用したニューラルネットワークである。図示のように、例えば、深層強化学習モデルMDLは、中間層(隠れ層)の一部がLSTM(Long Short Term Memory)であるリカレントニューラルネットワークであってよい。深層強化学習モデルMDLは、ドメイン-ランダマゼイション(Domain-Randomization)を用いて、飛行装置1の重量や重心、慣性モーメント等のダイナミクスとシステム応答遅れがランダムに設定されて学習される。
FIG. 5 is a diagram illustrating an example of a deep reinforcement learning model MDL. The deep reinforcement learning model MDL according to this embodiment is a neural network using deep reinforcement learning. As illustrated, for example, the deep reinforcement learning model MDL may be a recurrent neural network in which part of the intermediate layer (hidden layer) is LSTM (Long Short Term Memory). The deep reinforcement learning model MDL is trained by randomly setting dynamics such as the weight, center of gravity, and moment of inertia of the
ドメイン-ランダマゼイションによる(飛行装置1のダイナミクスがランダム化されて)学習をする際、深層強化学習モデルMDLのLSTMには、ランダムに設定された飛行装置1のダイナミクスを反映した時系列が記憶される。このように、ニューラルネットワークにLSTMを設けることで、ドメイン-ランダマゼイションによる学習が好適に行われる。
When learning by domain-randomization (the dynamics of
例えば、深層強化学習モデルMDLを学習させる深層強化学習のアルゴリズムが、価値ベース(Value based)である場合、深層強化学習モデルMDLは、DQN(Deep Q-Network)などを用いて学習されてよい。DQNとは、Q学習と呼ばれる強化学習において、ある時刻tのある環境の状態stの下で、ある行動atを選択したときの価値を関数として表した行動価値関数Q(st、at)を、ニューラルネットワークに近似関数として学習させる手法である。つまり、価値ベース(Value based)の手法で学習された深層強化学習モデルMDLは、現時刻tにおいて飛行装置1が取り得ることが可能な一つ又は複数の行動(行動変数)atのうち、価値(Q値)が最大となる行動(行動変数)atを出力するように学習されてよい。
For example, if the deep reinforcement learning algorithm for training the deep reinforcement learning model MDL is value based, the deep reinforcement learning model MDL may be trained using a DQN (Deep Q-Network) or the like. In reinforcement learning called Q-learning, DQN is an action value function Q(s t , a t ) as an approximation function in a neural network. In other words, the deep reinforcement learning model MDL learned using a value-based method selects one or more actions (action variables) a t that the
Q学習は、例えば、翼20や推力装置10が理想的な状態をとる場合に報酬を高くして、深層強化学習モデルMDLの重みやバイアスを学習する。例えば、決められた地点の上空において、飛行装置1の姿勢が90度のピッチアップ姿勢であり、飛行装置1の速度が静止と見做せる程度の速度にあるときには報酬を高くしてよい。一方、飛行装置1が地面や木々に接触したり、決められていた高度から逸脱したりする状態にあるときには、報酬を低く(例えばゼロ)にしてよい。
In Q-learning, for example, when the
また、例えば、深層強化学習モデルMDLを学習させる深層強化学習のアルゴリズムが方策ベース(Policy based)である場合、深層強化学習モデルMDLは、方策勾配法(Policy Gradients)などを用いて学習されてよい。 Further, for example, if the deep reinforcement learning algorithm that trains the deep reinforcement learning model MDL is policy based, the deep reinforcement learning model MDL may be trained using a policy gradient method or the like. .
また、例えば、深層強化学習モデルMDLを学習させる深層強化学習のアルゴリズムが価値と方策を組み合わせたActor-Criticである場合、深層強化学習モデルMDLに含まれるActor(行動器)を学習しながら、方策を評価するCritic(評価器)も同時に学習してよい。図5に例示した深層強化学習モデルMDLは、PPO(Proximal Policy Optimization)等のActor-Criticを用いて学習されたモデルであり、上段のレイヤが方策を出力するように学習され、下段のレイヤが価値を出力するように学習される。 For example, if the deep reinforcement learning algorithm that trains the deep reinforcement learning model MDL is Actor-Critic, which combines values and strategies, while learning the actors (behavioral devices) included in the deep reinforcement learning model MDL, You may also learn the Critic (evaluator) that evaluates at the same time. The deep reinforcement learning model MDL illustrated in Figure 5 is a model trained using Actor-Critic such as PPO (Proximal Policy Optimization), in which the upper layer is trained to output a policy, and the lower layer is trained to output a policy. It is learned to output value.
このような深層強化学習モデルMDLを定義したモデル情報152には、例えば、ニューラルネットワークを構成する複数の層のそれぞれに含まれるユニットが互いにどのように結合されるのかという結合情報や、結合されたユニット間で入出力されるデータに付与される結合係数などの各種情報が含まれる。結合情報とは、例えば、各層に含まれるユニット数や、各ユニットの結合先のユニットの種類を指定する情報、各ユニットを実現する活性化関数、隠れ層のユニット間に設けられたゲートなどの情報を含む。ユニットを実現する活性化関数は、例えば、正規化線形関数(ReLU関数)であってもよいし、シグモイド関数や、ステップ関数、その他の関数などであってもよい。ゲートは、例えば、活性化関数によって返される値(例えば1または0)に応じて、ユニット間で伝達されるデータを選択的に通過させたり、重み付けたりする。結合係数は、例えば、ニューラルネットワークの隠れ層において、ある層のユニットから、より深い層のユニットにデータが出力される際に、出力データに対して付与される重みを含む。結合係数は、各層の固有のバイアス成分などを含んでもよい。更に、モデル情報152には、LSTMに含まれる各ゲートの活性化関数の種類を指定する情報や、リカレント重みやピープホール重みなどが含まれてよい。 The model information 152 that defines such a deep reinforcement learning model MDL includes, for example, connection information on how units included in each of a plurality of layers constituting a neural network are connected to each other, and Contains various information such as coupling coefficients given to data input/output between units. Connection information includes, for example, the number of units included in each layer, information specifying the type of unit to which each unit is connected, activation functions that realize each unit, gates installed between units in hidden layers, etc. Contains information. The activation function that realizes the unit may be, for example, a normalized linear function (ReLU function), a sigmoid function, a step function, or other functions. The gate selectively passes or weights data communicated between units, eg, depending on the value returned by the activation function (eg, 1 or 0). The coupling coefficient includes, for example, a weight given to output data when data is output from a unit in a certain layer to a unit in a deeper layer in a hidden layer of a neural network. The coupling coefficient may include bias components specific to each layer, and the like. Furthermore, the model information 152 may include information specifying the type of activation function of each gate included in the LSTM, recurrent weights, peephole weights, and the like.
例えば、処理部170は、飛行装置1の現時刻tの姿勢、位置、速度、及び角速度のうち少なくとも一つと、現時刻tの推力装置10の推力及びその方向とを取得すると、それらを状態変数stとして深層強化学習モデルMDLに入力する。状態変数stが入力された深層強化学習モデルMDLは、次の時刻t+1において最適となる推力装置10の推力及びその方向を出力する。上述したように、深層強化学習モデルMDLは、次の時刻t+1において推力装置10が出力すべき推力及びその方向に加えて、或いは代えて、次の時刻t+1において翼20がとるべき形状や向きを出力するように学習されてもよい。
For example, upon acquiring at least one of the attitude, position, velocity, and angular velocity of the
図4のフローチャートの説明に戻る。次に、処理部170は、深層強化学習モデルMDLを用いて決定した飛行装置1がとるべき行動(行動変数)at+1、つまり次の時刻t+1において推力装置10が出力すべき推力及びその方向や、次の時刻t+1において翼20がとるべき形状や向きに基づいて、飛行装置1のアクチュエータ160を制御するための制御コマンドを生成する(ステップS104)。
Returning to the explanation of the flowchart in FIG. 4. Next, the
例えば、処理部170は、深層強化学習モデルMDLによって行動変数at+1として出力された推力装置10の推力及びその方向に基づいて、推力アクチュエータ162の制御コマンドを生成してよい。また、処理部170は、行動変数at+1として出力された翼20の形状や向きに基づいて、スイープアクチュエータ164やフォールドアクチュエータ168の制御コマンドを生成してよい。
For example, the
次に、処理部170は、生成した制御コマンドに基づいてアクチュエータ160を制御する(ステップS106)。これによって所望のタスクが実現され、その結果として飛行装置1を取り巻く環境の状態が変化し、その状態を表す状態変数がstがst+1へと変化する。
Next, the
処理部170は、状態変数stがst+1へと変化したのに伴って、時刻t+1における状態変数st+1を取得し直す。そして、処理部170は、時刻t+1における状態変数st+1が、飛行装置1によって所望のタスクが達成され続けるように制御コマンドを対象のアクチュエータ160に与え続ける。これによって本フローチャートの処理が終了する。
The
以上説明した第実施形態によれば、制御装置100の処理部170は、飛行装置1の現時刻tの姿勢、位置、速度、及び角速度のうち少なくとも一つ(好ましくは全て)と、現時刻tの推力装置10の推力及びその向きとを状態変数stとして取得する。この際、処理部170は、現時刻tの推力装置10の推力及びその向きに加えて、或いは代えて、現時刻tの翼20の形状や向きを、状態変数stとして取得してもよい。
According to the embodiment described above, the
処理部170は、状態変数stを取得すると、深層強化学習によって予め学習された深層強化学習モデルMDLに対して、状態変数stを入力する。処理部170は、状態変数stが入力されたことに応じて深層強化学習モデルMDLが出力した次の時刻t+1における行動変数at+1に基づいて、飛行装置1を制御する。このように、現時刻tの飛行装置1の姿勢、位置、速度、及び角速度と、現時刻tの推力装置10の推力及びその向きとを含む状態変数stをもとに深層強化学習された深層強化学習モデルMDLを利用して飛行装置1を制御するため、有人飛行の場合には、飛行装置1を装着するユーザUの体格(体重や身長など)にばらつきがあったとしても、ユーザUの体格に依らずに飛行装置1を好適に制御することができる。また、飛行途中でユーザが飛行装置1を離脱し、有人飛行から無人飛行に切り替わった場合であっても、飛行装置1を好適に制御することができる。
Upon acquiring the state variable s t , the
例えば、前述のように、山岳救助隊が飛行装置1を装着して登山道内の救助現場(目的地B)に空路で向かう場合、1人目の救助隊員が目的地Bに到着した後、飛行装置1を脱着して目的地Bに降り立ち、その後、飛行装置1が単独で出発地Aまで戻ることで、2人目の救助隊員が飛行装置1を装着して救助現場に向かうことが想定される。このような場合において、例えば、1人目の救助隊員と2人目の救助隊員との体格が大きく異なると、従来の技術では、同一の飛行装置1を利用することが難しい。これに対して本実施形態では、特にリカレントニューラルネットワークがLSTM層を有するため、時系列の記憶が可能となり、制御出力と状態変数の履歴からユーザの体格に応じたチューニングが可能となる。この結果、体重が重いユーザUが飛行装置1を装着したときでも、体重が軽いユーザUが飛行装置1を装着したときでも同じように飛行装置1を安定的に飛行させ続けることができる。
For example, as mentioned above, when a mountain rescue team attaches the
また、例えば、1人目の救助隊員が目的地Bに到着した後、飛行装置1を脱着して目的地Bに降り立った場合、飛行装置1にかかる荷重が急激に減少することになる。このような場合、従来の技術では、飛行装置1を安定して飛行させ続けることが難しい。これに対して本実施形態では、ユーザの体格を考慮したのではなく、飛行装置1のダイナミクスや応答遅れのばらつきを考慮して深層強化学習を行っているため、つまりドメイン-ランダマゼイションを用いて深層強化学習を行っているため、ユーザUが飛行装置1を離脱し、飛行装置1単体となった場合であっても、ユーザUが飛行装置1を装着していたとき同様に、飛行装置1を安定的に飛行させ続けることができる。
Further, for example, when the first rescue worker arrives at destination B and then attaches and detaches the
以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。 Although the mode for implementing the present invention has been described above using embodiments, the present invention is not limited to these embodiments in any way, and various modifications and substitutions can be made without departing from the gist of the present invention. can be added.
1…飛行装置、10…推力装置、20…翼、30…着脱部、100…制御装置、110…通信インターフェース、120…ユーザインターフェース、130…センサ、140…電源、150…記憶部、160…アクチュエータ、170…処理部
DESCRIPTION OF
Claims (7)
前記飛行装置の状態に関する状態データと、前記飛行装置の操作に関する操作データとを取得し、
深層強化学習を用いて学習されたモデルに対して、前記取得した状態データ及び操作データを入力し、
前記状態データ及び操作データが入力された前記モデルの出力結果に基づいて、前記飛行装置を制御する、
処理部を備える制御装置。 A control device for controlling a flight device wearable by a user, the control device comprising:
obtaining state data regarding the state of the flight device and operation data regarding the operation of the flight device;
Inputting the acquired state data and operation data into a model learned using deep reinforcement learning,
controlling the flight device based on the output result of the model into which the state data and operation data are input;
A control device including a processing section.
請求項1に記載の制御装置。 the model is a neural network trained by domain-randomization;
The control device according to claim 1.
請求項1又は2に記載の制御装置。 the model is a recurrent neural network including a memory layer;
The control device according to claim 1 or 2.
前記状態データには、前記飛行装置の姿勢、位置、速度、及び角速度のうち少なくとも一つが含まれ、
前記操作データには、前記ジェットエンジンの推力及び前記推力の方向が含まれ、
前記処理部は、前記モデルによって出力された前記推力及び前記推力の方向に基づいて、前記飛行装置の姿勢を制御する、
請求項1又は2に記載の制御装置。 The flight device includes a jet engine,
The state data includes at least one of the attitude, position, velocity, and angular velocity of the flight device,
The operation data includes the thrust of the jet engine and the direction of the thrust,
The processing unit controls the attitude of the flight device based on the thrust output by the model and the direction of the thrust.
The control device according to claim 1 or 2.
前記操作データには、更に、前記可変翼の操作量が含まれ、
前記処理部は、前記モデルによって出力された前記推力、前記推力の方向、及び前記可変翼の操作量に基づいて、前記飛行装置の姿勢を制御する、
請求項4に記載の制御装置。 The flight device further includes variable wings,
The operation data further includes an operation amount of the variable blade,
The processing unit controls the attitude of the flight device based on the thrust output by the model, the direction of the thrust, and the operation amount of the variable wing.
The control device according to claim 4.
前記飛行装置の状態に関する状態データと、前記飛行装置の操作に関する操作データとを取得すること
深層強化学習を用いて学習されたモデルに対して、前記取得した状態データ及び操作データを入力すること、
前記状態データ及び操作データが入力された前記モデルの出力結果に基づいて、前記飛行装置を制御すること、
を含む制御方法。 A control method for controlling a flight device wearable by a user using a computer, the method comprising:
acquiring state data regarding the state of the flight device and operation data regarding the operation of the flight device; inputting the acquired state data and operation data into a model learned using deep reinforcement learning;
controlling the flight device based on an output result of the model into which the state data and operation data are input;
control methods including.
前記飛行装置の状態に関する状態データと、前記飛行装置の操作に関する操作データとを取得すること
深層強化学習を用いて学習されたモデルに対して、前記取得した状態データ及び操作データを入力すること、
前記状態データ及び操作データが入力された前記モデルの出力結果に基づいて、前記飛行装置を制御すること、
を含むプログラム。 A program for causing a computer to control a flight device wearable by a user, the program comprising:
acquiring state data regarding the state of the flight device and operation data regarding the operation of the flight device; inputting the acquired state data and operation data into a model learned using deep reinforcement learning;
controlling the flight device based on an output result of the model into which the state data and operation data are input;
programs containing.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022087778A JP2023175366A (en) | 2022-05-30 | 2022-05-30 | Control device, control method, and program |
PCT/JP2023/015888 WO2023233857A1 (en) | 2022-05-30 | 2023-04-21 | Control device, control method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022087778A JP2023175366A (en) | 2022-05-30 | 2022-05-30 | Control device, control method, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023175366A true JP2023175366A (en) | 2023-12-12 |
Family
ID=89026227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022087778A Pending JP2023175366A (en) | 2022-05-30 | 2022-05-30 | Control device, control method, and program |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2023175366A (en) |
WO (1) | WO2023233857A1 (en) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4253625A (en) * | 1979-09-10 | 1981-03-03 | Igor Dmitrowsky | Aircraft attachable to the body of a pilot |
US6685135B2 (en) * | 1997-11-11 | 2004-02-03 | Alban Geissler | Lift system intended for free-falling persons |
JP7254347B2 (en) * | 2019-08-27 | 2023-04-10 | 国立研究開発法人宇宙航空研究開発機構 | Morphing wing, flight control device, flight control method, and program |
JP7280609B2 (en) * | 2019-09-24 | 2023-05-24 | 国立研究開発法人宇宙航空研究開発機構 | CONTROL DEVICE, LEARNING DEVICE, CONTROL METHOD, LEARNING METHOD, AND PROGRAM |
JP2023009892A (en) * | 2021-07-08 | 2023-01-20 | 国立研究開発法人宇宙航空研究開発機構 | Flight apparatus and operation method |
-
2022
- 2022-05-30 JP JP2022087778A patent/JP2023175366A/en active Pending
-
2023
- 2023-04-21 WO PCT/JP2023/015888 patent/WO2023233857A1/en unknown
Also Published As
Publication number | Publication date |
---|---|
WO2023233857A1 (en) | 2023-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Albers et al. | Semi-autonomous flying robot for physical interaction with environment | |
Frank et al. | Hover, transition, and level flight control design for a single-propeller indoor airplane | |
Ollero et al. | Control and perception techniques for aerial robotics | |
JP6816156B2 (en) | Systems and methods for adjusting UAV orbits | |
Kendoul et al. | Guidance and nonlinear control system for autonomous flight of minirotorcraft unmanned aerial vehicles | |
CN106444795B (en) | Method and system for assisting take-off of movable object | |
US11926415B2 (en) | Long line loiter apparatus, system, and method | |
CN109947122B (en) | Apparatus for controlling flight and method of operating the same | |
Geng et al. | Implementation and demonstration of coordinated transport of a slung load by a team of rotorcraft | |
Hylton et al. | The darpa nano air vehicle program | |
JP5493103B2 (en) | Simple manual flight control system for unmanned flying vehicles | |
WO2023282294A1 (en) | Flight equipment and operation method | |
Gayango et al. | Benchmark evaluation of hybrid fixed-flapping wing aerial robot with autopilot architecture for autonomous outdoor flight operations | |
Floreano et al. | Aerial locomotion in cluttered environments | |
WO2023233857A1 (en) | Control device, control method, and program | |
Ferrell et al. | Dynamic flight modeling of a multi-mode flying wing quadrotor aircraft | |
Elfes et al. | Autonomous flight control for a TITAN exploration AEROBOT | |
Wang et al. | Autonomous control of micro flying robot | |
Hazawa et al. | Autonomous flight control of unmanned small hobby-class helicopter | |
Jin et al. | Nezha‐IV: A hybrid aerial underwater vehicle in real ocean environments | |
Roberts et al. | Using a Large 2 Degree of Freedom Tail for Autonomous Aerobatics on a Flapping Wing Unmanned Aerial Vehicle | |
Santos et al. | Design and flight testing of an autonomous airship | |
Yang et al. | Position control of tethered UAV with onboard inertial sensors | |
Bayraktar et al. | Experiments with small unmanned helicopter nose-up landings | |
Oh et al. | CQAR: Closed quarter aerial robot design for reconnaissance, surveillance and target acquisition tasks in urban areas |