Я читал лекционные заметки Эндрю Нга по обучению с подкреплением и пытался понять, почему итерации политики сходятся к функции оптимального значения и оптимальной политике .
Напомним, итерация политики:
Почему жадный алгоритм приводит к оптимальной политике и функции оптимального значения? (Я знаю, что жадные алгоритмы не всегда гарантируют это или могут застрять в локальных оптимах, поэтому я просто хотел увидеть доказательство его оптимальности алгоритма).
Кроме того, мне кажется, что итерация политики является чем-то аналогичным кластеризации или градиентному спуску. Для кластеризации, потому что с текущей настройкой параметров мы оптимизируем. Подобно градиентному спуску, потому что он просто выбирает какое-то значение, которое, кажется, увеличивает некоторую функцию. Эти два метода не всегда сходятся к оптимальным максимумам, и я пытался понять, чем этот алгоритм отличается от предыдущих, которые я упоминал.
Это мои мысли до сих пор:
Скажем, мы начинаем с некоторой политики , затем после первого шага для этой фиксированной политики:
Где V ^ {(1)} - функция значения для первой итерации. Затем после второго шага мы выбираем новую политику чтобы увеличить значение . Теперь, с новой политикой , если мы сделаем второй шаг алгоритма, справедливо следующее неравенство:
Поскольку мы выбираем на втором шаге, чтобы увеличить функцию значения на предыдущем шаге (т. Е. Улучшить . Пока ясно, что выбор может только увеличить V ^ {(1)}, потому что именно так мы выбираем . Однако моя путаница заключается в повторном шаге, потому что как только мы повторяем и возвращаемся к шагу 1, мы фактически полностью меняем вещи, потому что мы пересчитываем для новой политики . Который дает:
но это не так:
Это кажется проблемой, потому что был выбран для улучшения , а не этого нового . В основном проблема в том, что гарантирует улучшение , выполнив вместо из , когда функция значения . Но на шаге повторения мы меняем на , но я не вижу, как это гарантирует, что функция значения монотонно улучшается при каждом повторении, потому что была рассчитана для улучшения функции значения, когда функции значений остаются в V π 1, но шаг 1 меняет на (что плохо, потому что я только улучшил предыдущую функцию значений, которую мы имели).