强化学习&MPC——(二)

本篇主要介绍马尔科夫决策(MDP)过程,在介绍MDP之前,还需要对MP,MRP过程进行分析。

马尔科夫性质

马尔可夫性是指一个系统,在给定当前状态的情况下,未来的状态仅依赖于当前状态,而不依赖于过去的状态。换句话说,当前状态包含了过去所有状态的信息,因此未来的状态可以完全由当前状态决定。说白了就是带遗忘性质,下一个状态S_t+1仅与当前状态有关,而与之前的状态无关。
在这里插入图片描述
为什么需要马尔科夫性——简化环境模型。帮助强化学习来学习。
这种性质对于建模环境至关重要,因为它简化了问题的复杂性,并且使得我们能够用一个简洁的方式描述系统的动态演化。在强化学习中,马尔可夫性质的存在使得我们可以使用MDP来建模智能体与环境的交互,从而进行有效的决策和学习。

什么是马尔可夫过程(MP)

马尔科夫过程:通过状态转移概率的实现的过程,马尔科夫过程是一个**<S,P>**,S是有限状态集合,P是状态转移概率。
马尔可夫过程是指一个满足马尔可夫性质的随机过程。一个马尔可夫过程由状态空间 S S S和状态转移概率矩阵 P P P组成。状态转移概率矩阵 P P P表示了从一个状态转移到另一个状态的概率。

什么是马尔可夫奖励过程(MRP)

马尔科夫奖励过程:马尔可夫奖励过程是在马尔可夫过程的基础上增加了奖励的概念。一个马尔可夫奖励过程由状态空间 S S S、状态转移概率矩阵 P P P和奖励函数 R R R组成。奖励函数 R R R定义了在特定状态转移过程中,智能体会获得的即时奖励。
在马尔可夫过程的基础上增加奖励函数R和衰减系数γ,基本上一谈到奖励就会有折扣因子的存在。表示为 (S,P,R,γ)
S S S 是状态空间;
P P P 是状态转移概率矩阵,表示从一个状态转移到另一个状态的概率;
R R R 是奖励函数,表示在状态转移过程中智能体会获得的即时奖励。
对于一个马尔可夫奖励过程,我们可以定义一个状态的预期奖励,即在特定状态下智能体未来可能获得的奖励的期望值。状态 s s s的预期奖励可以表示为:
在这里插入图片描述
其中, R t R_t Rt是在时间步 t t t时智能体获得的即时奖励, γ \gamma γ是折扣因子。

R是一个奖励函数,S状态下的奖励是某一时t处在状态s下在下一个时刻(t+1)能获得的期望奖励。
在这里插入图片描述
期望的含义也就是说与概率是相关的,求概率平均。
累计回报:从t时刻所得到的折扣回报总和。折扣因子表示了对未来奖励的重视程度。越小就是越短视,越大就越远视。
在这里插入图片描述
价值函数:价值函数给出了某一状态或某一行为的长期价值
状态价值函数和动作价值函数来看待问题(强化学习最重要的公式)
在这里插入图片描述
注意这里的价值函数可能是状态价值,也可以是动作价值
在这里插入图片描述
马尔科夫一个重要的内容就是要通过bellman方程求解状态价值函数。
如何求解?
n比较小时直接计算,n比较大时通过迭代来求解:

  • 动态规划
  • 蒙特卡洛评估
  • 时序差分学习
    最后就是马尔科夫决策过程MDP了,由(SAPRγ)五元组成。

什么是马尔科夫决策过程?

状态动作,状态转移概率,回报函数,折扣因子
状态(State):描述环境可能处于的各种情况。
动作(Action):智能体可以采取的行动。
状态转移概率(State Transition Probability):描述在采取特定行动后,环境会转移到下一个状态的概率。
奖励函数(Reward Function):描述智能体在特定状态下采取特定行动所获得的即时奖励。
折扣因子(Discount Factor):用于衡量未来奖励的重要性,通常表示为γ(gamma)。
我们可以使用数学符号来表示MDP。假设我们有一个状态空间(State Space) S S S,动作空间(Action Space) A A A,状态转移概率函数 P P P,奖励函数 R R R,以及折扣因子 γ \gamma γ。MDP可以表示为元组 ( S , A , P , R , γ ) (S, A, P, R, \gamma) (S,A,P,R,γ)

在MDP中,我们通常会遇到两种主要的函数:状态转移函数和奖励函数。状态转移函数 P P P定义了从一个状态到另一个状态的转移概率,可以表示为:
在这里插入图片描述
其中, s t s_t st表示当前状态, a t a_t at表示采取的动作, s t + 1 s_{t+1} st+1表示下一个状态。
奖励函数 R R R定义了在给定状态和动作的情况下,智能体会获得的即时奖励,可以表示为:
在这里插入图片描述
在强化学习中,我们的目标是学习一个策略(Policy),即智能体在特定状态下选择动作的方式。通常,我们会使用价值函数(Value Function)来评估状态或状态-动作对的好坏程度。常见的价值函数包括状态值函数(State Value Function) V ( s ) V(s) V(s) 和动作值函数(Action Value Function) Q ( s , a ) Q(s, a) Q(s,a)

在这里插入图片描述
MDP就引入了policy的概念,策略是决定行为的机制。强化学习的本质就是最优策略的寻找。
策略同样是仅与当前状态有关。可以是随机策略或者确定性策略。

两大价值函数的引入:
状态值函数(State Value Function) V ( s ) V(s) V(s) 衡量了在给定策略(Policy)下,智能体处于状态 s s s时所能获得的预期回报(Expected Return)。换句话说,它描述了从当前状态开始,智能体在未来可能获得的累积奖励。
在这里插入图片描述
其中, G t G_t Gt 表示从时间步 t t t开始的累积奖励, π \pi π 是策略函数,表示智能体在特定状态下采取的动作。

展开如下所示:

在这里插入图片描述
动作值函数(Action Value Function) Q ( s , a ) Q(s, a) Q(s,a) 衡量了在给定策略(Policy)下,智能体处于状态 s s s并采取动作 a a a时所能获得的预期回报(Expected Return)。换句话说,它描述了在当前状态下采取特定动作后,智能体未来可能获得的累积奖励。

在这里插入图片描述
其中, G t G_t Gt 表示从时间步 t t t开始的累积奖励, π \pi π 是策略函数,表示智能体在特定状态下采取的动作。

推导如下所示:
在这里插入图片描述
最优理论就是关于价值函数的:
从所有策略产生的状态价值函数中,选取使状态s价值最大的函数:
在这里插入图片描述
从所有策略产生的行为价值函数中,选取是状态行为对 价值最大的函数:
在这里插入图片描述
状态值函数的贝尔曼方程
对于状态值函数 V π ( s ) V^{\pi}(s) Vπ(s),其贝尔曼方程可以表示为:
在这里插入图片描述
其中, π ( a ∣ s ) \pi(a|s) π(as) 表示在状态 s s s下选择动作 a a a的概率, p ( s ′ , r ∣ s , a ) p(s', r | s, a) p(s,rs,a) 表示在状态 s s s采取动作 a a a后,转移到状态 s ′ s' s并获得奖励 r r r的概率, γ \gamma γ 是折扣因子。
推导如下:
在这里插入图片描述

动作值函数的贝尔曼方程
对于动作值函数 Q π ( s , a ) Q^{\pi}(s, a) Qπ(s,a),其贝尔曼方程可以表示为:
在这里插入图片描述

其中, p ( s ′ , r ∣ s , a ) p(s', r | s, a) p(s,rs,a) 表示在状态 s s s采取动作 a a a后,转移到状态 s ′ s' s并获得奖励 r r r的概率, π ( a ′ ∣ s ′ ) \pi(a'|s') π(as) 表示在状态 s ′ s' s下选择动作 a ′ a' a的概率, γ \gamma γ 是折扣因子。
推导如下:
在这里插入图片描述

下次我们将先从价值函数出发分析问题,然后通过动态规划算法解决优化问题的思路。

后续内容:
线性mpc
包括等式约束和不等式约束
非线性mpc
构建优化问题
泰勒展开线性化
KKT条件处理不等式约束
求解SQP问题

一些重要参数
预测窗口
终端项

预见性的控制(优化问题与控制效果)

SQP解决MPC的优化问题。(解一个序列控制量问题)

另一种求解思路:
HJB方程。
成本函数-状态方程——哈密顿函数
转为泛函优化问题:
变分法,分部积分,求极点的思路。
构造哈密尔顿函数
状态方程,协状态方程
控制最优条件 终值和初值条件

线性模型+二次型优化问题。
求解黎卡提方程。

### 使用深度强化学习MPC实现无人船轨迹跟踪 #### 深度强化学习在无人船轨迹跟踪中的作用 深度强化学习(Deep Reinforcement Learning, DRL)能够通过环境交互不断优化控制策略,适用于复杂的动态场景。对于无人船而言,DRL可以用于训练路径跟踪控制器,在未知或变化的环境中实现自主学习和自适应控制[^2]。 具体来说,DRL的核心在于构建一个马尔科夫决策过程(Markov Decision Process, MDP),其中状态空间表示无人船的位置、速度和其他传感器数据;动作空间定义为推进力或其他控制输入;奖励函数设计则需考虑轨迹偏差最小化以及能耗等因素[^3]。 #### MPC在无人船轨迹跟踪中的角色 模型预测控制(Model Predictive Control, MPC)是一种基于模型的优化方法,适合处理具有约束条件的控制系统。它通过对未来一段时间内的行为进行滚动优化,实时调整控制指令以满足目标性能指标[^4]。 针对无人船的应用,MPC通常依赖精确的动力学模型来进行短期预测,并结合当前测量值生成最优控制序列。这种方法的优势在于其较强的鲁棒性和对复杂约束的良好支持能力[^1]。 #### 组合DRLMPC的设计思路 为了充分发挥两者优势,可采用如下架构: 1. **高层规划模块**:由DRL负责长期战略决策,例如全局路径的选择及应对突发状况下的快速反应。 2. **低层执行模块**:借助MPC完成即时操作层面的任务,比如依据预设航迹实施精准的速度调节与转向操控。 这种分层次结构不仅保留了各自特长——即DRL擅长探索未知领域而无需详尽先验知识的特点,同时也继承了MPC依靠准确物理描述保障稳定性与效率的传统强项。 以下是该混合方案的一个简化伪代码示例: ```python def combined_DRL_MPC_control(state): # Step 1: Use DRL to determine high-level action (e.g., desired heading angle) drl_action = deep_reinforcement_learning_policy(state) # Step 2: Pass the result into an MPC optimizer as reference trajectory or constraints. mpc_reference_trajectory = construct_mpc_input(drl_action) # Step 3: Solve MPC problem and get low-level control commands. u_star = model_predictive_controller(mpc_reference_trajectory, state) return u_star ``` 上述流程展示了如何将高层次的战略意图转化为具体的机械运动命令,从而达成理想的航行效果。 #### 总结 综上所述,利用深度强化学习MPC相结合的方式,可以在保持较高灵活性的同时确保系统的可靠性,这对于提升无人船只在多样化水域条件下自动巡航的表现至关重要。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

白云千载尽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值