自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 walk_these_ways项目学习记录第四篇(通过行为多样性 (MoB) 实现地形泛化)--配置文件阅读

在这个项目里,训练一个 Go2 策略,并不是简单地“把 PPO 跑起来”。更准确地说,是先用一套层级化配置系统,把“机器人是谁、看见什么、做什么、踩在什么地上、会遇到哪些扰动、什么行为算好”全部定义清楚,然后训练脚本再按具体任务目标,对这些默认值进行二次覆盖。提供通用四足任务的基础默认值在此基础上,把机器人具体化为 Go2再进一步把它改造成当前这篇任务对应的 gait-conditioned agility (基于步态条件的敏捷性)训练配置。

2026-04-06 01:30:51 80

原创 四足机器人强化学习中的底层控制接口与 Actuator Net:从经典控制到系统辨识

从控制接口的角度看,四足机器人底层通常还是围绕位置、速度和力矩三种基本方式展开;从期望的机械行为来看,阻抗控制为我们提供了兼顾跟踪与柔顺交互的绝佳视角。但一旦进入强化学习和实机部署的世界,理想化公式往往不再足够。的价值,正是在这里体现出来:它把难以手写建模的执行器非理性因素,压缩进了一个神经网络里。当这些命令真的落到一个不完美的真实电机上时,它究竟会怎样表现?这正是四足机器人从仿真走向现实过程中,最值得认真理解的一环。

2026-04-06 00:54:41 382

原创 walk_these_ways项目学习记录第三篇(通过行为多样性 (MoB) 实现地形泛化)--训练入口精读(scripts/train.py)

的价值不在于它实现了多少复杂算法,而在于它把这个项目真正“接通了”。它通过先装载 Go2 默认配置,再在入口脚本内集中覆盖 observation、command、reward、terrain、domain randomization 与 sim2real 相关设置,最终得到当前实验的完整Cfg。随后,它创建,再通过把原本只提供单步 observation 的环境包装成同时返回obs和的接口,这一步直接决定了后续 adaptation module、actor 和 critic 的输入形式。算法侧,

2026-04-05 00:06:55 496

原创 walk_these_ways项目学习记录第二篇(通过行为多样性 (MoB) 实现地形泛化)--总览

在这份 walk-these-ways-go2 实现里,adaptation module 不是论文中泛化描述的抽象环境编码器,而是一个以 30 x 70 = 2100 维历史观测为输入、以 2 维 privileged target 为监督信号的 MLP。当前配置下,这 2 维 target 分别是归一化后的 friction 和 restitution,因此它本质上是在做基于历史轨迹的隐式系统辨识。

2026-04-04 18:15:48 655

原创 RMA:让四足机器人在真实世界中快速适应的新范式

因为部署时,一旦 adaptation module 预测得不准,机器人动作就会偏离理想轨迹,而 student 从来没见过这种“偏离后的历史”,就会越来越错。SL (监督学习)更新:紧接着,拿同一个 batch 里的 obs_history 喂给 Adaptation Module,拿 privileged_obs 作为标签,算一个 MSE Loss,监督更新 Adaptation Module。也就是说,先在“知道环境真相”的情况下,把一个强大的 locomotion policy 练出来。

2026-04-02 17:26:48 319

原创 walk_these_ways项目学习记录第一篇(通过行为多样性 (MoB) 实现地形泛化)

MoB 并不是简单把行为参数塞进策略网络就能成功。真正困难的地方在于:如何让机器人既完成任务,又真的学出与行为参数相对应的不同风格。《Walk These Ways》提出的 MoB,不是试图让机器人在训练阶段预先见过一切,而是承认真实世界中总会存在超出训练分布的情况,并为此提供一种更实用的应对方式:让一个策略同时掌握多种成功行为,并在部署时开放给人类调节。这项工作的意义不只是“机器人能换步态”,而是它把四足机器人控制从“单一最优解”推进到了“可调的行为空间”。

2026-04-01 01:31:12 342

原创 从源码读懂 PPO:一个面向 Pendulum-v1 的最小连续动作实现

该项目的目标是训练一个智能体在 环境中学会稳定倒立摆。Pendulum-v1 是一个经典的倒立摆环境,它的控制目标是通过施加电机力矩,将一根受重力下垂的杆子甩起,并稳定在正上方。为了避免角度在 180∘180^\circ180∘ 和 −180∘-180^\circ−180∘ 边界处发生突变(数值不连续问题),环境并没有直接输出角度 θ\thetaθ,而是输出了它的三角函数,外加当前的角速度:s=[cos⁡θ,sin⁡θ,θ˙]s = [\cos\theta, \sin\theta, \dot{\thet

2026-03-31 00:02:34 580

原创 MPC在运动规划中的应用

我们修改原有的速度不等式约束,把一个允许越界的“松弛量”LLL−TvJ≤120×1BvL−Tv​J≤120×1​Bv​L−L≤0-L \le 0−L≤0(注:这里Ll1l2l3l20TLl1​l2​l3​l20​T是一个包含了未来 20 步松弛量的列向量。−L≤0-L \le 0−L≤0表示松弛量必须是非负的)。既然我们引入了新的未知变量LLL。

2026-03-30 17:56:06 477

原创 机器人路径规划与轨迹规划的区别与核心算法

在机器人导航领域,“路径规划”和“轨迹规划”是两个经常结对出现,却又极易被混淆的概念。严格来说,它们解决的问题并不完全一样。简单来说:路径规划关注的是:在已知地图或环境约束下,从起点到终点找到一条可通过的空间路线。它更关心:路径通常只描述纯粹的几何信息,比如一串二维或三维空间中的坐标点:轨迹规划关注的是:在路径基础上,进一步生成一条带时间属性的运动过程。它更关心:轨迹通常是严格的时间参数化函数:为了更直观地理解,我们可以通过下表来看它们的核心差异:在实际的机器人系统中,典型的运行流程是:也就是说,路径规划

2026-03-29 01:38:01 954

原创 A星学习记录

当开集非空时,从开集中取出f最小的点作为当前点。g/h/fg/f。

2026-03-24 18:12:14 650

原创 自定义Python脚本将PCD转换为PGM地图

把 3D 点云拍扁成 2D 栅格,主要分为以下几步:在运行以下代码前,请确保已经安装了 、、 和 等基础依赖。

2026-03-24 15:54:54 259

原创 fast-lio-localization学习记录

在这套系统里,重定位模块主要依赖 FAST-LIO 输出的两个话题: 表示 FAST-LIO 输出的局部里程计位姿,其含义可以写成:Todom_bodyT_{odom\_body}Todom_body​也就是 局部里程计系 (代码里叫 )到机体系 的位姿变换。它的特点是:因此, 适合做局部跟踪,不适合直接作为全局定位结果。 是 FAST-LIO 发布的 当前帧去畸变后的点云,但它有一个非常重要的特点:它 不是传感器局部坐标系下的点云,而是已经被 FAST-LIO 变换到了局部里程计系 下的点云。也就是说

2026-03-19 11:27:29 418

原创 点云配准算法(icp与ndt)学习记录

ICP (迭代最近点)是最直观的点云配准算法。它的核心思想非常简单:假设我们已经知道了两组点云中哪些点是一一对应的,那么我们只需要求出一个旋转矩阵 RRR 和平移向量 ttt,使得这些对应点的距离误差最小。假设我们有:假设通过最近邻搜索,已经找到了 pip_ipi​ 与 qiq_iqi​ 的对应关系。我们要最小化以下目标误差函数:E(R,t)=1n∑i=1n∥qi−(Rpi+t)∥2E(R, t) = \frac{1}{n} \sum_{i=1}^{n} \| q_i - (R p_i + t) \|^2E

2026-03-18 00:20:46 342

原创 fastlio添加基于距离与时间的回环检测

因子图本质上是一种二分图(Bipartite Graph),专门用来表示复杂的概率分布和非线性优化问题。在 SLAM 中,因子图由两种节点交替相连构成:变量节点(Variable Nodes): 代表我们想要估计的未知状态。在 LIO-SAM 中,这就是机器人在各个时刻的三维位姿x0​x1​x2​,在图上通常画成圆圈。三维位姿:(x, y, z, roll, pitch, yaw)

2026-03-15 23:38:53 898

原创 fastlio学习记录(2)

s-fastlio流程图整理:

2026-03-14 23:50:19 21

原创 fastlio学习记录(1)

旋转矩阵具有正交性:李群就是旋转矩阵的集合,如果你拿这个集合里的任意两个矩阵 R1R_1R1​ 和 R2R_2R2​ 相乘,得到的新矩阵 R3R_3R3​ 依然在这个集合里。为什么叫“李(Lie)”? 因为这个集合是光滑连续的。更准确地说,SO(3)SO(3)SO(3) 是一个光滑流形,不是普通的欧氏向量空间。你上面那个矩阵只是这个流形上的一个点。因为它是光滑的,所以你可以在局部做求导、线性化。这就是 Fast-LIO 能做优化的基础——能线性化才能构建雅可比和迭代更新。李代数是李群在“单位元”(即单位矩阵

2026-03-13 18:24:37 1736

原创 LOAM学习记录

LOAM 由高频的激光里程计(lidar odometry)和低频的激光建图(lidar mapping)两部分并行组成。,输入的一帧点云首先按照扫描线进行组织,并对大部分有效点计算局部曲率;随后在每条扫描线上分段选取曲率较大的边缘特征点和曲率较小的平面特征点。与此同时,考虑到一帧扫描中的各点并非在同一时刻采集,LOAM 假设传感器在单个扫描周期内运动平滑,并利用位姿插值对点云进行去畸变,将各点补偿到同一参考时刻。

2026-03-13 11:26:47 594

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除