笔者刚刚入手灵巧手仿真,看到这个开源不错,希望可以从中入门

这是目前最流行的灵巧手强化学习基准库之一,由北京大学等机构开源。

  • 为什么适合小白:

    训练极快: 基于 NVIDIA Isaac Gym,在单张 GPU(如 RTX 3060/3090/4090)上即可实现数千个环境并行,几十分钟就能看到灵巧手转笔、抓取的动作。
    • 任务丰富: 包含了 Shadow Hand(影手)、Allegro Hand 等多种手型,以及转笔、递东西、开门等几十种任务。

    • 代码结构清晰: 采用了模块化设计,算法(PPO/SAC等)和环境分离,适合学习。

    • 可视化效果好: 跑起来看着非常爽,很有成就感。

  • 核心技术: PPO, Multi-Agent RL, Isaac Gym.

  • GitHub地址:https://github.com/PKU-MARL/DexterousHands

  • 上手建议: 按照 README 配置 conda 环境,直接运行它的 train.py 里的示例脚本(如 Shadow Hand Over 任务)。

项目需要下载conda,isaccgym,bi-dexhands包

下载完后,执行下面命令:

激活环境

conda activate Bi-DexHands 

使用python3.8的环境,isaccgym等都安装在这里面

进入文件夹

cd ~/DexterousHands-main/bidexhands

训练模型

python train.py --task=ShadowHandOver --algo=ppo

训练好的模型在文件夹logs/ShadowHandOver下

.pt为模型文件,另外一个是TensorBoard 的日志文件(Log File)。

命名格式(例子如下):

  • 1764123926:这是一个 Unix 时间戳,代表你开始训练的那一秒。

  • andy-Legion-Y9000P-IAH7H:这是你的电脑主机名,用来区分是在哪台机器上跑的。

不包含智能体的“大脑”(即模型权重),它包含的是训练过程中的指标数据

当你运行 tensorboard --logdir=logs 并打开浏览器看到那些折线图(SCALARS)时,TensorBoard 读取的正是这个文件里的数据。它里面记录了:

Reward (奖励):机器人做得好不好,分数有没有变高。Loss (损失):神经网络的误差是多少。FPS:训练速度有多快。Episode Length:机器人每次坚持了多久。

################################################################################
                      Learning iteration 991/6500                       

                       Computation: 2430 steps/s (collection: 0.320s, learning 0.101s)
               Value function loss: 0.2217
                    Surrogate loss: -0.0503
             Mean action noise std: 0.79
                       Mean reward: 6.11
               Mean episode length: 55.74
                  Mean reward/step: 0.11
       Mean episode length/episode: 6.83
            Mean episode successes: 0.0000
Mean episode consecutive_successes: 0.0000
--------------------------------------------------------------------------------
                   Total timesteps: 1015808
                    Iteration time: 0.42s
                        Total time: 420.42s
                               ETA: 2334.8s

################################################################################

实时可视化方法

cd ~/DexterousHands-main/bidexhands
tensorboard --logdir=logs

点击左上角scalars有曲线显示

点进去里面有很多图表

测试训练后的模型

python train.py --task=ShadowHandOver --algo=ppo --model_dir=logs/ShadowHandOver/ppo/ppo_seed-1/model_6500.pt --test

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐