4

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

在这个项目中,我使用模拟器来收集训练数据(状态、动作、结束状态),以便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) ) )

(因此,在所有动作之间,从该状态引导代理处于具有最大 Value 的状态)在计算方面的成本很高,因为动作空间非常大。

有没有办法根据已经泛化的 VALUE FUNCTION 泛化 POLOCY ?

4

1 回答 1

0

我认为使用策略梯度的 actor-critic 方法将对您有用。

在这种情况下,您使用基于价值函数的目标函数进行调整的参数化策略。还有一些进一步的改进,例如使用优势函数等。

David Silver 制作了一个不错的视频,您可能会发现它很有用:

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

于 2016-02-27T12:05:19.220 回答