计算机专业转机械做强化学习心得
引言
最近从计算机转专业到机械来读博士,不知道是不是一个正确的选择;毕竟现在计算机行业的势头还是非常迅猛的,做出这样的选择不知道是否正确,好在还是做的是和算法相关的,也不算完全脱离,但是会有很多涉及到控制的东西,比如无人机的运行机制,涉及到的力学知识和微分方程之类的,但是只能说是一个不错的机会;现在主要做的是强化学习方向的内容,希望有经验的同学可以来共同学习~一起加油!
airsim+强化学习
现在主要用到的是对无人机的一些强化学习知识,比如说使用强化学习做无人机的定点运动;当前使用的训练平台是AIRSIM和TD3算法,因为涉及到团队内部人员的一些工作内容,所以暂时不能公布代码,但是可以分享一下学习过程;(下面加粗的字体是需要单独进行分析讲解的部分)
无人机的运行机制:
无人机现在使用的是四旋翼无人机,对角的两个旋翼是同方向旋转,相邻的旋翼是相反方向旋转;在强化学习中之前没有涉及到太多坐标系的转换关系,但是无人机上有很多相关的知识:
- 机体坐标与地球坐标,涉及到了很多转换,今天先做一个大致的简介,后续慢慢会写到;坐标系的不同会对转换有很多影响,比如在不同训练环境中可能存在一个坐标系是北东地,另一个坐标系是北西天,这样在坐标、旋转矩阵上都需要做出一定的转换;
- 无人机的运动依靠的是旋翼旋转带来的拉力进行悬浮,飞机的姿态是依靠不同旋翼的转速来达到一定的调整;
- 在无人机运行中,不同环境间的转换具体的系数和参数值可能会有很多不同,但是拉力和力矩应该是保持一致的,一般保持固定的就是一个拉力和三个力矩;所以在不同环境之间转换的时候可以利用这两个量来传递两个环境的结果;(我们使用到的是crazyflie2.0上训练的模型需要加载到airsim上,所以涉及到了很多转换)
- 在控制中,总是使用一些微分方程来描述物体的运动状况,这对于计算机专业的同学是比较少使用到的,这一部分也需要专门使用一个专题来进行描述;
- 旋转矩阵求导,旋转矩阵本身就已经够绕的了,后面还要对它求导,确实难度也增加了不少(机械专业的勿嘲笑~)。需要专门分析,简单查了一下好像还涉及到了李代数的一些内容,需要补充较多知识点。