ITエンジニアのための強化学習理論入門

サポートページ

この記事を読むのに必要な時間:およそ 0.5 分

お詫びと訂正(正誤表)

本書の以下の部分に誤りがありました。ここに訂正するとともに,ご迷惑をおかけしたことを深くお詫び申し上げます。

(2020年9月29日最終更新)

P.193 (下から6行目の末尾)

極端に小さな値(10−10 )
極端に小さな値(−1010 )

P.213 (SARSA の実装コード:[MSA-05])


------------------------------------------
16:      a_new = agent.policy[s]
------------------------------------------

------------------------------------------
16:      a_new = agent.policy[s_new]
------------------------------------------

この修正に伴い,コードの実行結果が少し変化するため,関連する本文の内容を次のように変更させていただきます。

P.214([MSA-09]の出力結果とその直後の一文)

変更前

############
#++++++++++#
#         +#
#######   +#
#         +#
#  ++++++++#
#  + #######
#  +       #
#  +++++++G#
############

 ここでは、ε=0を指定して、ランダムな行動は混ぜないようにしていますが、最短の経路を学ぶことはできていないようです。先に説明したように、SARSAでは、ランダムな行動が混ざったデータを本来の行動ポリシーに基づいたデータとみなして学習します。そのため、学習結果にこのような変動が発生します。
変更後

############
#+++++++   #
#      +   #
#######+   #
#    +++   #
#   ++     #
#   +#######
#   ++     #
#    +++++G#
############

 この例では、うまく最短の経路が学習できているようです。ただし、先に説明したように、SARSAでは、ランダムな行動が混ざったデータを本来の行動ポリシーに基づいたデータとみなして学習するため、もう少し複雑な問題になると、最短経路の学習に失敗する可能性が大きくなります(章末の演習問題2を参照)。

P.216(図4.13)

変更後

#----------#
#S        G#
#   ####   #
#   ####   #
#          #
#          #
#          #
############

SARSAが最短経路の学習に失敗しやすくなるように,迷路の形を変更しました。

P.218(図4.17:SARSAによる学習結果)

変更後

#----------#
#+        G#
#+  ####  +#
#+  ####+++#
#++++++++  #
#          #
#          #
############