Почему маятник в тренажерном зале openai имеет особенность cos и sin? почему бы просто не использовать один из них? - PullRequest
0 голосов
/ 02 июля 2019

Почему маятник имеет черты cos и sin?Могу ли я просто использовать 1 из них?Или я могу использовать тета (угол) вместо этого?

Я ожидаю некоторого объяснения этому XD, интуитивное или теоретическое приветствуются.

1 Ответ

0 голосов
/ 03 июля 2019

Углы (thetas) передаются через функции sin () и cos (), так что наблюдения находятся в диапазоне [-1,1]. Этот фиксированный диапазон [-1,1] помогает стабилизировать обучение в нейронных сетях, что было хорошо объяснено здесь .

Вы могли бы даже использовать один из грехов () или cos () в качестве своего наблюдения. Причина (которую я могу придумать) для использования как sin (), так и cos (), вероятно, заключается в том, чтобы дать больше информации о состоянии. Возможно, использование как sin (), так и cos () приведет к более быстрой конвергенции.

Но нормализация входов необходима. Таким образом, вы не можете просто использовать углы в качестве наблюдений за состоянием для тренировки.

Редактировать: Ответить на комментарий @CHEN TIANRONG Plots

Я запустил DDPG только с sin () и theta_dot в одном эксперименте и с sin (), cos () и theta_dot в другом эксперименте. Очевидно, что агент никогда не изучает задачу в первом эксперименте.

Полагаю, что использование sin () и cos () экспериментально.

Вы можете найти код, который я использовал для экспериментов здесь .

Повышение скорости сходимости нейронной сети для агентов RL является активной областью исследований. Вы можете искать алгоритмы, которые являются эффективными по образцу. Например: Образец эффективного обучения усилению с использованием стохастического ансамбля. Значение , Образец эффективного актера-критика с повторением опыта и т. Д.

...