Меню

Главная
Случайная статья
Настройки
Q-обучение
Материал из https://ru.wikipedia.org

Q-обучение (англ. Q-learning) — метод машинного обучения, применяемый при разработке искусственного интеллекта в рамках агентного подхода. Относится к экспериментам вида обучение с подкреплением. На основе получаемого от среды вознаграждения агент формирует функцию полезности Q, что впоследствии дает ему возможность уже не случайно выбирать стратегию поведения, а учитывать опыт предыдущего взаимодействия со средой. Одно из преимуществ Q-обучения — то, что оно в состоянии сравнить ожидаемую полезность доступных действий, не формируя модели окружающей среды. Применяется для ситуаций, которые можно представить в виде марковского процесса принятия решений.

Содержание

Алгоритм Q-обучения
   Повторять до сходимости или конечного состояния:
       # Наблюдение:
       s_пред = s
       a_пред = a
       s = Получить текущее состояние сенсора
       r = Получить вознаграждение за предыдущее действие
       # Обновление полезности:
       Q[s_пред, a_пред] = Q[s_пред, a_пред] + LF * (r + DF * MAX(Q, s) - Q[s_пред, a_пред])
       # Выбор действия:
       a = ARGMAX(Q, s)
       Передать действие a активатору
   Функция MAX(Q, s):
       max = minValue
       Для каждого a из возможных действий для состояния s:
           Если Q[s, a] > max, то max = Q[s, a]
       Вернуть max
   Функция ARGMAX(Q, s):
       amax = Первое возможное действие для состояния s
       Для каждого a из возможных действий для состояния s:
           Если Q[s, a] > Q[s, amax], то amax = a
       Вернуть amax


где:
  • LF — это коэффициент обучения . Чем он выше, тем сильнее агент доверяет новой информации.
  • DF — это коэффициент обесценивания (дисконтирования) . Чем он меньше, тем меньше агент предпочитает выгоду от своих будущих действий в пользу настоящего.


См. также

Примечания

Литература
Downgrade Counter