DeepRacer 報酬関数について
はじめに
DeepRacerでタイム向上を狙う上で最も重要となるのが報酬関数になると思います。
初期状態だと下記のように「track_width(トラックの幅)」と「distance_from_center(車体の中心とトラックの中心の距離)」しか使用していなく、これだけではコースアウトばかりでした。
しかし報酬関数について調べても関数1つ1つに対して詳細に記載があるページは少なかったです。。。
AWS公式ドキュメントに記載がありましたがすぐにコーディング出来る程の記載はありませんでした。
そこで報酬関数について自分で調べて検証をした結果をここにまとめていこうと考えました。
そもそもDeepRacerってなに?どうやって始めるの?という方は、同じ会社の先輩が記事にまとめているのでそちらをご覧ください。
https://qiita.com/toma_shohei/items/be1ff2549c99f026829b
https://qiita.com/toma_shohei/items/a79abd8d71a2e284273f
報酬関数リスト
調査・検証が出来次第、詳細記事を書いて下記リストにリンクをつけていければと考えています。
更新まで少々お待ちください。。。
まずは比較の基準として報酬関数無しでモデルを作成して検証してみました。
-
all_wheels_on_track [Boolean]
- 車両のすべてのホイールがトラック内にあるかを示します。
-
x [float]、y [float]
- シミュレーション環境の左下隅を原点として車両の座標を示します。
-
closest_objects [int,int]
- 車両に最も近い2つの障害物の位置(x,y)
-
closest_waypoints [int,int]
- 車両に最も近い2つのウェイポイントの位置(x,y)
-
distance_from_center [float]
- 車両の中心とトラックの中心との距離
-
is_crashed [Boolean]
-
is_left_of_center [Boolean]
- 車両がトラックの中心より左側にある場合はTrue、右側にある場合はFalseを返すフラグです。
-
is_offtrack [Boolean]
-
is_reversed [Boolean]
-
heading [float]
-
objects_distance [float]
-
objects_heading [float]
-
objects_left_of_center [Boolean]
-
objects_location [float,float]
-
objects_speed [float]
-
progress [float]
-
speed [float]
-
steering_angle [float]
-
steps [int]
-
track_length [float]
-
track_width [float]
-
waypoints [float,float]
Author And Source
この問題について(DeepRacer 報酬関数について), 我々は、より多くの情報をここで見つけました https://qiita.com/trente_saito/items/42b0805710d0e6f0595f著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .