制御モデルの学習

物理エンジン上に構築した制御環境を用いて強化学習を行い、 吊り荷を目標 Yaw 角へ制御する学習済みモデルを作成しました。

学習から評価までの流れ

制御環境と強化学習アルゴリズムを学習スクリプトから実行し、 吊り荷の制御モデルを作成します。 学習済みモデルは制御スクリプトから推論に使用し、 制御結果を可視化して性能を評価します。

吊り荷制御モデルの学習から推論および評価までの流れ
制御モデルの学習から推論・評価までの処理構成

物理シミュレーション

物理エンジンでは、吊り荷、ロープ、制御装置およびクレーンの 運動を計算します。実際の吊り下げ状態を模擬するため、 吊り荷の形状や重量だけでなく、ロープによる拘束や風外乱も考慮します。

重力吊り荷および制御装置に作用
ロープ拘束クレーン、制御装置、吊り荷を接続
慣性モーメント形状と重量による回転特性を反映
風外乱吊り荷に外力を付加
スラスター推力制御モデルの出力を力として適用
衝突判定構造物同士の接触を計算

強化学習

制御モデルには、連続値の制御出力を扱う強化学習モデルを使用しました。 モデルは吊り荷と制御装置の状態を入力として受け取り、 4 基のスラスター出力を算出します。

状態Yaw 角・角速度など
強化学習モデル制御出力を推論
行動4 基のスラスター出力

吊り荷を目標 Yaw 角へ到達させ、到達後も姿勢を維持できるように 学習を繰り返します。風外乱がある条件では、外力に対抗するための スラスター出力も学習します。

学習対象

HSteel(H剛)、Plate(平板)、Truss(トラス)では、形状、重量、ロープの接続位置および回転特性が異なります。 そのため、吊り荷と外乱条件の組み合わせごとに制御モデルを学習しました。

HSteelの制御モデル学習
HSteel 2点吊り
Plateの制御モデル学習
Plate 4点吊り
Trussの制御モデル学習
Truss 4点吊り

同一の強化学習方式を用い、異なる吊り荷および外乱条件への適用性を評価しています。

学習済みモデルの利用

学習後は、学習処理から制御に必要なモデルのみを分離し、制御スクリプトから推論に使用します。 制御中は一定周期で状態を入力し、算出されたスラスター出力を次の制御周期まで保持します。

制御環境現在の状態を取得
学習済みモデルスラスター出力を算出
物理エンジン推力を適用

推論結果は CSV に保存し、吊り荷の Yaw 角と各スラスターの 推力履歴を評価チャートとして可視化します。

評価チャートの見方

制御性能は、スラスターを使用しない場合(Baseline)と制御時(Control)の 吊り荷 Yaw 角、および各スラスターの推力履歴を比較して評価します。

評価チャートの見方

吊り荷 / 外乱条件

チャート上部には、評価対象の吊り荷と 外乱条件を表示します。

Baseline

スラスターを使用しない場合の吊り荷 Yaw 角です。 赤破線は目標 Yaw 角、青線は吊り荷 Yaw 角を示します。

Control

強化学習モデルによる制御結果です。 目標 Yaw 角への到達時間と、その後の姿勢維持を確認します。

Thruster force heatmap

4 基のスラスター推力履歴です。 黄色ほど推力が大きく、紫色ほど推力が小さいことを表します。

HSteel(H剛):2点吊り

HSteel は 2 点吊り構成です。 無風、一方向風、円軌道風の 3 条件で評価し、 外乱条件による制御特性の違いを比較します。

HSteel 2点吊り
HSteel(2点吊り)

X0Y0(無風)

制御開始後約10秒で目標姿勢へ到達し、その後は90°付近を維持します。

HSteel X0Y0

目標 yaw 角に到達後、断続的な推力で姿勢を維持。特に T3 スラスターの最大出力付近を使用。

X1Y0(一方向風)

制御開始後約10秒で目標姿勢へ到達し、その後も90°付近を維持します。

HSteel X1Y0

目標 yaw 角に到達後は、主に T1, T2 スラスターの最大出力付近を使用。

X1Y1(円軌道風)

制御開始後約10秒で目標姿勢へ到達し、その後も90°付近を維持します。

HSteel X1Y1

目標 yaw 角に到達後は、T1, T2, T4 を使用。特に T2 は最大出力付近を使用。

Plate(平板):4点吊り

Plate は 4 点吊り構成です。 無風、一方向風、円軌道風の 3 条件で評価し、 外乱条件による制御特性の違いを比較します。

Plate 4点吊り
Plate(4点吊り)

X0Y0(無風)

制御開始後約13秒で目標姿勢へ到達し、その後は90°付近を維持。

Plate X0Y0

目標 yaw 角に到達後、T2, T3 スラスターの最大出力付近を使用。

X1Y0(一方向風)

約13秒で目標姿勢へ到達し、その後も90°付近を維持。

Plate X1Y0

目標 yaw 角に到達後は、T1,T3,T4 スラスターを使用。T3 の最大出力付近を使用。

X1Y0とX1Y1で類似したスラスター制御が確認できる。

X1Y1(円軌道風)

約13秒で目標姿勢へ到達し、その後も90°付近を維持。

Plate X1Y1

目標 yaw 角に到達後は、T1,T3,T4 スラスターを使用。T3 の最大出力付近を使用。

X1Y0とX1Y1で類似したスラスター制御が確認できる。

Truss(トラス):4点吊り

HSteel は 2 点吊り構成です。 無風、一方向風、円軌道風の 3 条件で評価し、 外乱条件による制御特性の違いを比較します。

Turss 4点吊り
Truss(4点吊り)

X0Y0(無風)

制御開始後約20秒で目標姿勢へ到達し、その後は90°付近を維持。

Turss X0Y0

目標 yaw 角に到達後、全てのスラスターを使用。特に T3 スラスターの最大出力付近を使用。

X1Y0(一方向風)

制御開始後約20秒で目標姿勢へ到達し、その後は90°付近を維持。

Turss X1Y0

目標 yaw 角に到達後は、主にT4 スラスターの使用だが全体的にスラスターの出力は低い。

X1Y1(円軌道風)

制御開始後約40秒で目標姿勢へ到達し、その後は90°付近を維持。全評価中、最も到達時間を要した条件。

Turss X1Y1

目標 yaw 角に到達後は、全てのスラスターの最大出力付近を使用。