Неограниченное увеличение Q-Value, последствие повторяющегося вознаграждения после повторения того же действия в Q-Learning
Я нахожусь в процессе разработки простой реализации Q-Learning над тривиальным приложением, но есть кое-что, что продолжает озадачивать меня.
Давайте рассмотрим стандартную формулировку Q-Learning
Q(S, A) = Q(S, A) + alpha * [R + MaxQ(S', A') - Q(S, A)]
Давайте предположим, что есть это состояниеK
у этого есть два возможных действия, оба награждают наши агентские вознагражденияR
а такжеR'
поA
а такжеA'
.
Если мы будем следовать почти полностью жадному подходу (допустим, мы принимаем 0,1 эпсилон), я сначала случайным образом выберу одно из действий, напримерA
, В следующий раз я, вероятно (в 90% случаев) выберу сноваA
и это приведет к тому, что Q (K, A) будет расти и расти, и это правда, даже если случайно я попытаюсьA'
так как, вероятно, его награда имеет ту же величину, что и награда А, мы попали в ситуацию, когда практически невозможно «оправиться» от нашего первого предположения во время оставшейся части обучения.
Я полагаю, что это не должно быть так, иначе агент в основном не научился бы - просто следовал бы простому рецепту: делай все как в первый раз
Я что-то пропустил? Я знаю, что могу настроить альфа-значение (обычно уменьшая его с течением времени), но это никоим образом не улучшает нашу ситуацию.