一、前期工作基础
1.1 理论知识学习与实践
在研究生一年级这一整年里,本人主要进行了基础理论知识的学习,包括数学理论基础和专业理论基础的学习。通过学习加深了对于相关数学概念和专业概念的理解,对于所研究方向有了进一步的了解,了解了所研究方向的基础方法、确立了未来的研究方向。
1.1.1 数学理论
对于未来科研所要用到的数学理论知识进行了学习,在选课时选择了矩阵分析与数值分析两门主要数学课程。
- 数值分析:复习了以往接触过的插值方法(拉格朗日插值法、牛顿插值法、切比雪夫插值法),学习了线性方程组与非线性方程组的解法。通过对题目的练习,深刻掌握了相关理论的使用方法。
- 矩阵分析:学习了矩阵分析的基本理论、方法和应用,主要包括线性空间、内积空间、线性变换等基本概念和性质、范数理论和应用、矩阵的分解理论、矩阵函数的理论和应用以及特征值的估计等内容。
通过对这些数学理论知识的学习,提高了自己的数学能力,在阅读研究领域相关论文时,能够理解其中的数学模型及其推导过程,有充分的理论知识储备。
1.1.2 专业理论与编程
在专业课程方向,本人学习了人工智能与机器学习、深度学习基础、智能无人系统基础、多机器人协同控制技术等课程。通过对这些课程的学习,对神经网络相关的算法有了很深入的了解,学习了决策树、动态贝叶斯网络、随机森林(Random Forest, RF)、LSTM 网络等机器学习算法。同时基于项目也学习了关于空战的相关专业知识,了解了 Deep Q-Networks(DQN)算法、Deep Deterministic Policy Gradient(DDPG)算法、Proximal Policy Optimization(PPO)算法等强化学习相关算法,并且基于课题组内现有仿真环境对于未来研究方向做了一些研究,对于多无人机空战决策有了充分的理解,为将来课题的研究工作打下了一定的基础。
在编程语言的学习上,在项目中充分实践了 C++ 编程语言,跟随程序员学习 C++ 语言规范并且提高自身编程能力;在进行课题研究时学习了 Python 编程语言,并且基于现有仿真对于典型算法进行了一定程度的复现。具备了进行课题研究仿真的实践经验。
1.2 研究工作总结
1.2.1 课题相关算法学习
(1)马尔科夫决策过程 (MDP)
马尔科夫决策过程(Markov Decision Process, MDP)是强化学习的任务通常使用来描述的过程。智能体处于一个环境当中,通过对环境的感知获取自身状态与环境状态,智能体通过做一些特定动作来与环境进行交互。当智能体执行一个动作后,环境会根据智能体所做的动作,按照某种设定好的概率从当前状态转移到下一状态,同时环境会根据提前设定好的奖励函数对智能体做的动作做出奖励。
一个标准的马尔科夫决策过程可以由一个五元组构成:
- $S$:有限状态空间集,集合内包含了所有可能出现的状态。
- $A$:动作集合空间,包括当前状态下智能体可以执行到的所有动作,通常在离散动作空间中集合的动作是有限的。
- $P$:状态转移概率矩阵,元素表示在某个状态下执行动作使得环境状态由 $s$ 转移到 $s'$ 的概率。
- $R$:奖励函数,表示的是在某个状态下,智能体执行动作之后转移到状态所获得的奖励反馈,也就是当前动作的一个实时评价。如果智能体的动作是合理的,环境会反馈一个数值较高的奖励;如果智能体的动作不合理,环境会给出一个数值较低的奖励,对不合理的行为做出惩罚。
- $ ho$:折扣因子,取值在 0-1 之间。值越大,表明智能体在当前时刻的动作越重视长期动作的奖励;取值越小则代表短时间内的奖励对智能体的影响更大。
根据折扣因子可以计算马尔科夫决策过程中从时刻 $t$ 开始的后续累积折扣奖励。折扣因子的使用可以避免智能体进入循环马尔科夫过程从而带来无穷大的累计奖励。
马尔科夫决策过程中,算法的目的在于找到一种策略,使得智能体在与环境进行交互时获得更高的累计奖励,使其能够做出更为适当的动作。这里所说的策略实际上是状态空间内某个状态到动作空间的一个映射。策略的类型一般分为确定性策略与随机性策略:
- 确定性策略 (deterministic policy):在每一个状态只输出一个确定性的动作,其他动作的概率为 0。
- 随机性策略 (stochastic policy):在每个状态的输出是关于动作的概率分布,然后根据该分布随机采样获得一个动作。
我们使用状态价值函数和动作价值函数来衡量策略的优劣:
- 状态价值函数 ($V^ ho(s)$):定义为从状态 $s$ 出发遵循策略 $ ho$ 所能获得的期望回报。
- 动作价值函数 ($Q^ ho(s, a)$):表示 MDP 遵守策略 $ ho$ 时,对当前状态执行动作 $a$ 得到的期望回报。


