SARSA算法

Neu*_*ise 5 artificial-intelligence reinforcement-learning

我无法理解SARSA算法:http: //en.wikipedia.org/wiki/SARSA

特别是,在更新Q值时,什么是gamma?什么值用于s(t + 1)和a(t + 1)?

有人可以向我解释这个算法吗?

谢谢.

Don*_*eba 4

Gamma 决定了您的算法有多少内存。如果你将其设置为0.0,那么你的算法将不会更新价值函数Q如果将其设置为 0.0,那么您的算法根本如果将其设置为 1.0,则新体验的权重将与之前所有体验的总和相同。最佳值介于两者之间,必须通过实验来确定。

\n\n

下面是它的工作原理:

\n\n
    \n
  • 在第一步中,您只需获得一个状态。只需将其存储为s t即可。另外,查找您的价值函数,以获得在此状态下采取的最佳操作,并将其存储t
  • \n
  • 在后续的每个步骤中,您都会得到r t+1s t+1。再次,使用您的值函数找到最佳操作 \xe2\x80\x94 a t+1。从前一操作到新操作的转换值等于r t+1 +Q(s t+1 ,a t+1 )-Q(s t ,a t )使用它来更新您对先前操作的值Q(s t ,a t t)的长期估计。最后,将s t+1a t+1存储为s ta t以供下一步使用。
  • \n
\n\n

实际上,价值函数只是每个动作和每个状态的这些更新值的运行平均值。

\n