machine-learning reinforcement-learning q-learning

machine learning - Valor óptimo de épsilon(gre-codicioso)



machine-learning reinforcement-learning (2)

política ϵ codiciosa

Sé que el algoritmo Q-learning debe tratar de equilibrar entre exploración y explotación . Como soy un principiante en este campo, quería implementar una versión simple del comportamiento de exploración / explotación.

Valor óptimo de épsilon

Mi implementación utiliza la política gre-codiciosa, pero estoy perdido cuando se trata de decidir el valor épsilon. ¿Debe la épsilon estar limitada por la cantidad de veces que el algoritmo ha visitado un par dado (estado, acción), o debe estar limitada por la cantidad de iteraciones realizadas?

Mis sugerencias:
  1. Reduzca el valor de épsilon por cada vez que se encuentre un par dado (estado, acción).
  2. Baje el valor de épsilon después de que se haya realizado una iteración completa.
  3. Baje el valor de épsilon para cada vez que encontremos un estado s.

¡Muy apreciado!


Aunque en muchos casos simples el εk se mantiene como un número fijo en el rango 0 y 1, debe saber que: Generalmente, la exploración disminuye con el tiempo, por lo que la política utilizada asintóticamente se vuelve codiciosa y, por lo tanto, (como Qk → Q ∗) óptima . Esto se puede lograr haciendo que k enfoque 0 a medida que k crezca. Por ejemplo, un programa de exploración en medio de la forma εk = 1 / k disminuye a 0 como k → ∞, mientras sigue satisfaciendo la segunda condición de convergencia de Q-learning, es decir, permitiendo infinitas visitas a toda la acción del estado parejas (Singh et al., 2000).

Lo que generalmente hago es esto: establezca el alfa inicial = 1 / k (considere el k inicial = 1 o 2) después de ir a prueba por prueba, ya que k aumenta, el alfa disminuirá. También mantiene garantizada la convergencia.


Por lo general, es aconsejable establecer simplemente ε en una constante positiva, a menos que tenga una buena razón para no hacerlo.