推广具有大状态和动作空间的基于模型的强化学习算法的策略

时间:2015-08-25 20:10:33

标签: machine-learning policy reinforcement-learning generalization

我正在使用基于模型的单一代理强化学习方法进行自主飞行。

在这个项目中,我使用模拟器来收集训练数据(状态,动作,结束状态),以便Locally Weighted Linear Regression算法可以学习MODEL

STATE由向量[Pitch , Yaw , Roll , Acceleration]定义,用于定义无人机在太空中的位置。 给予POLICY时还有另外一项功能[WantedTrajectory]

ACTION也由矢量定义:[PowerOfMotor1 , PowerOfMotor2 , PowerOfMotor3 , PowerOfMotor4]

根据所采用的轨迹的精确度计算REWARD:给定起始空间状态,所需轨迹和结束空间状态,实际取得的轨迹越接近想要的轨迹越小负面奖励是

policy iteration的算法如下:

start from a state S0

loop    

         1) select the best action according to the Policy

         2) use LWLR to find the ending state

         3) calculate reward

         4) update generalized V function



endloop;

这样所采取的行动还取决于所需的轨迹(由用户选择),代理人自主选择4个电机的功率(试图获取想要的轨迹并获得更大,更少负面的奖励)和策略是动态的,因为它取决于更新的值函数。

唯一的问题是选择POLICY如下(S = Pitch,Yaw,Roll,Acceleration,WantedTrajectory):

π(S) = argmax_a ( V( LWLR(S,a) ) )

(因此,在动作空间非常大的情况下,来自此状态的所有动作将导致代理处于具有最大值的状态中)在计算方面花费很多。

有没有办法根据已经推广的值函数来推广POLOCY?

1 个答案:

答案 0 :(得分:0)

我认为使用政策梯度的演员评论方法对你有用。

在这种情况下,您使用一个paremetrized策略,该策略根据您的值函数根据目标函数进行调整。还有一些进一步的改进,例如使用优势函数等。

David Silver制作了一个很有用的视频:

https://www.youtube.com/watch?v=KHZVXao4qXs&index=7&list=PL5X3mDkKaJrL42i_jhE4N-p6E2Ol62Ofa