- 博客(22)
- 收藏
- 关注
原创 GRPO算法思想实现控制倒立摆
GRPO算法在控制倒立摆中的应用 GRPO(Group Relative Policy Optimization)是一种改进的PPO算法,通过消除Critic网络简化架构,利用多轨迹平均回报计算优势函数。其主要特点包括: 架构简化:完全移除Critic模型,通过组内相对奖励直接估计优势函数,减少显存占用 优势计算创新:为同一状态生成多个轨迹,计算组内奖励均值和标准差进行归一化 样本高效:特别适合数据稀缺场景,提高样本利用率 稳定更新:损失函数中加入KL散度惩罚项和熵正则项,防止策略更新过快。
2026-01-18 10:50:47
887
原创 DSAC-T算法实现控制倒立摆
DSAC-T算法改进SAC算法,通过分布估计替换点估计提升倒立摆控制能力。主要改进包括:1)将Critic网络输出修改为高斯分布的均值和方差;2)使用目标回报期望稳定均值更新;3)训练两个独立值分布模型减少高估风险;4)基于方差调整梯度增强鲁棒性。算法实现时,Critic网络输出均值和标准差,通过采样计算Q值,并采用动态裁剪和权重调节技术稳定训练。实验基于Gymnasium的InvertedPendulum-v5环境,验证算法在连续控制任务中的有效性。
2025-11-15 20:51:11
683
原创 DPPO(Distributed PPO)分布式算法实现控制倒立摆
本文介绍了基于分布式PPO(DPPO)算法实现倒立摆控制的单进程多线程方案。DPPO通过领导者-工作者架构,将策略网络训练与数据收集分离,其中领导者集中更新网络参数,工作者负责与环境交互生成轨迹。文中采用第一种工作者方案,仅进行数据收集。算法使用PPO-截断策略梯度,结合重要性采样和时序差分误差估计优势函数。实验构建了Actor-Critic网络结构,通过多线程Worker收集经验样本,主线程进行同步更新。实现中特别注意了网络更新的同步阻塞问题,防止策略差异导致数据偏移。
2025-06-29 11:04:58
889
原创 GA3C(GPU/CPU混合式异步优势Actor-Critic)算法实现控制倒立摆
本文介绍了GA3C算法在倒立摆控制中的应用。GA3C是一种GPU/CPU混合式异步优势AC算法,通过预测队列和训练队列实现高效并行计算。文章详细阐述了GA3C算法的三部分架构(智能体、预测者、训练者)及其理论基础,包括状态价值网络梯度和策略梯度的推导。代码实现展示了Actor-Critic网络结构,以及多线程预测者和训练者的设计,特别强调了GPU与CPU间的数据传输注意事项。实验采用多进程智能体与环境交互,通过队列机制实现异步通信,完整代码在文末提供。
2025-06-20 21:41:48
664
原创 TD3(Twin Delayed Deep Deterministic Policy Gradient)算法实现控制摆锤
TD3算法是一种强化学习方法,改进了DDPG算法。它使用两个Critic网络和一个Actor网络及其目标网络,通过截断双Q学习减少价值网络偏差,添加噪声平滑动作,降低策略网络更新频率来提高稳定性。代码中实现了TD3的Actor和Critic网络结构,以及TD3算法主体,使用PyTorch进行参数更新和学习。实现摆锤游戏的TD3算法的训练收敛。
2025-06-15 21:09:30
891
原创 A3C(Asynchronous Advantage Actor-Critic)算法实现控制倒立摆
本文介绍了A3C算法及其在倒立摆控制中的应用。A3C是一种异步优势AC算法,通过多个并行工作智能体加速训练,并引入熵正则项促进探索。文章详细推导了状态价值网络和策略梯度更新公式,并提供了基于PyTorch的实现代码。关键组件包括Actor-Critic网络架构、多线程训练机制以及参数更新方法。实验环境为CartPole-v1,代码展示了网络定义、动作选择和梯度更新过程。
2025-06-14 15:41:54
920
原创 SAC(Soft Actor-Critic)算法实现控制摆锤
本文介绍了基于SAC(Soft Actor-Critic)算法的摆锤控制实现。SAC是一种结合策略梯度与时序差分算法的Actor-Critic方法,采用Off-Policy训练方式,通过最大化熵来提升探索能力。文章详细推导了软Q值计算、策略梯度和熵正则项的自适应调整公式。在代码实现上,构建了包含Actor和Critic的神经网络结构,使用经验回放技巧优化训练过程。其中Actor采用重参数化采样处理连续动作空间,Critic使用双Q网络结构提高稳定性。完整代码展示了如何将SAC理论应用于具体控制任务。
2025-06-12 21:10:20
1328
原创 深度强化学习实战例子:PPO实现控制倒立摆
本文介绍了使用PPO算法控制倒立摆的实现。PPO是TRPO算法的改进版本,属于策略梯度算法中的Actor-Critic方法。文章重点分析了PPO-截断方法,通过限制新旧策略参数差距来提高稳定性。算法实现包含Actor和Critic两个神经网络:Actor生成动作概率分布,Critic评估状态价值。PPO采用On-Policy方式,每回合后使用采集样本进行策略优化,通过重要性采样和梯度截断技术确保训练稳定性。代码展示了网络结构和参数更新过程,包括梯度上升优化Actor和梯度下降优化Critic。实验结果表明P
2025-06-10 17:34:39
1208
原创 深度强化学习实战例子:A2C(Advantage Actor-Critic)实现控制倒立摆
使用A2C(Advantage Actor-Critic)算法实现控制倒立摆实例
2024-12-14 10:27:38
2073
原创 Matplotlib折线图类
为了以后方便使用,将Matplotlib中的折线图在这里封装成一个简单的类。并将标签重构为一个类,作为参数传递给折线图类。
2023-08-02 20:25:25
122
原创 运行RESLAM的TUM数据集问题
②运行association.py脚本,生成association.txt;再次编译,发现缺少Cere库。于是再下载安装Cere库,再次编译,成功。④输入运行指令,发现数据集路径没有更新,将数据集路径更新后,成功运行。发现是boost版本的问题,于是便重新安装boost1.6x版本。①先在官网下载TUM数据集fr1/xyz,解压;③编译RESLAM,出现问题。
2023-04-30 11:34:03
337
1
原创 Python小白学习日记(2)
②'分隔符'.join(variable)——返回列表variable中元素合并为一个字符串,字符串之间用'分隔符'隔开,分隔符可为空,或空格,或\及其他,如x=''.join(variable),这便是将variable列表中的所有元素合并为字符串,且每个字符串之间为空,存储在x中。还是一样,分享小浮自己学习到的基础Python内容,如果大家有什么补充的,欢迎在评论区发表自己的学习经验。②variable.insert(x,'C')——在列表的任何位置添加新元素,需要指定索引和值;
2023-04-26 18:43:34
190
1
原创 Python小白学习日记
这里是自律小浮第一篇博客,小浮下决心要在课余时间开始学习一下Python,同时想要用学习日记记录自己的学习过程,以及作为一种督促自己坚持学习的方式。以上便是小浮第一次学习到的内容,小浮这个Python学习日记会不定时继续更新,也希望uu们给出学习的建议。学习了Python定义字符串的格式——variable='XXX'。①variable.title()——将字符串中的每个首字母都改为大写。⑥variable.strip()——同时删除字符串两端的空白。'\t'——制表符;'\n'——换行符;
2023-03-19 00:20:22
173
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅