ответ

1

Динамическое программирование - это зонтик, охватывающий множество алгоритмов. Q-Learning - это конкретный алгоритм. Итак, нет, это не то же самое.

Кроме того, если вы имеете в виду динамическое программирование, как и в Значение Итерация или политики Iteration, до сих пор не то же самое. Этими алгоритмами являются «планирование». Вы должны дать им перехода и вознаграждения функции и они будут итеративно вычислить значение функции и оптимальную политики.

Q-Learning - модель метод обучения усилению. Этот «без модели» не потому, что он не использует модель машинного обучения или что-то в этом роде, а потому, что они не требуют, и не используют модель среды, также известную как MDP , чтобы получить оптимальную политику. У вас также есть «основанные на модели» методы. Они, в отличие от методов динамического программирования, основаны на изучении модели, а не просто на ее использовании.И, в отличие от методов без модели, не выбрасывайте образцы после оценки значений, вместо этого они пытаются восстановить функцию перехода и вознаграждения, чтобы получить лучшую производительность.

модель на основе методов скомбинировать безмодельного и планирования алгоритмов, чтобы получить такую ​​же хорошие результаты с меньшим количеством выборок, чем требуется по модели свободных методов (Q-Learning), и без необходимости модели, как динамическое программирование методы (Итерация ценности/политики).

-1

Если вы используете Q-обучение в автономной настройке, например AlphaGo, то это эквивалентно динамическому программированию. Разница в том, что его можно также использовать в онлайн-настройке.

+0

Нет, это не эквивалентно - вы не можете сравнивать эти две вещи таким образом. Динамическое программирование - это очень общий алгоритмический шаблон, который используется во многих алгоритмах. Ваш алгоритм может использовать стратегию динамического программирования, но это, конечно, ** ** не динамическое программирование. – cel

+0

@cel, вы должны рассмотреть контекст. Что касается RL, можно с уверенностью предположить, что DP относится к значению или итерации политики. –

6

Из книги Sutton & Барто в (Reinforcement Learning: An Introduction, chapter 4)

Термин динамическое программирование (ДП) относится к набору алгоритмов , которые могут быть использованы для вычисления оптимальной политики дается идеальная модель окружающей среды как Марковский процесс принятия решений (МДП). Классические алгоритмы DP имеют ограниченную полезность в обучении арматуре как из-за их предположения об идеальной модели, так и из-за их больших затрат вычислительных средств, но они по-прежнему важны теоретически.

Таким образом, хотя оба разделяют одни и те же принципы работы (либо с помощью табличного подкреплением/Динамическое программирование или приближена RL/DP), они ключевое различие между классическим DP и классической RL является то, что первая предположим модель известна. Это в основном означает знание вероятностей перехода (что указывает на вероятность перехода из состояния s в состояние s с учетом действия a) и ожидаемой непосредственной функции вознаграждения.

Напротив, для методов RL требуется только доступ к набору образцов, либо собранных онлайн, либо офлайн (в зависимости от алгоритма).

Конечно, существуют гибридные методы, которые могут быть между RL и DP, например те, которые изучают модель из образцов, а затем используют эту модель в процессе обучения.

ПРИМЕЧАНИЕ. Термин Динамическое программирование в дополнение к набору математических методов оптимизации, связанных с RL, также используется для обозначения «общей алгоритмической картины», как указано в некоторых комментариях. В обоих случаях основы одинаковы, но в зависимости от контекста может иметь другое значение.

 Смежные вопросы

  • Нет связанных вопросов^_^