Mujoco代码解读笔记

知识点:

1、关于yaml

python:yaml模块
一、yaml文件介绍
YAML是一种简洁的非标记语言。其以数据为中心,使用空白,缩进,分行组织数据,从而使得表示更加简洁。

  1. yaml文件规则
    基本规则:
    大小写敏感
    使用缩进表示层级关系
    缩进时不允许使用Tab键,只允许使用空格。
    缩进的空格数目不重要,只要相同层级的元素左侧对齐即可
    使用#表示注释
    字符串可以不用引号标注

  2. yaml文件数据结构

    对象:键值对的集合(简称 "映射或字典")
    键值对用冒号 “:” 结构表示,冒号与值之间需用空格分隔
    数组:一组按序排列的值(简称 "序列或列表")
    数组前加有 “-” 符号,符号与值之间需用空格分隔
    纯量(scalars):单个的、不可再分的值(如:字符串、bool值、整数、浮点数、时间、日期、null等)
    None值可用null可 ~ 表示

二、安装yaml

pip命令: pip install PyYaml
引入:import yaml
用python读取yaml文件如下:

代码:
import yaml
from Common.dir_config import *

2、关于Mujoco

在MuJoCo中,模型是使用XML文件定义的,这些文件要么是以物理引擎的原生MJCF格式编写的,要么是以更著名的URDF格式编写的。MJCF模型可以代表具有广泛特征和模型元素的复杂动态系统,MJCF建模语言可以被认为是建模格式和编程语言之间的混合。在编译时,以MJCF或URDF格式表示的纯文本XML文件被编译成一个低级MJCF模型,用于模拟和计算。
MuJoCo提供了建模柔体的可能性。软体被建模为复合物体,由一组刚体组成。根据需要建模的柔体类型,可以将刚体集合组织为一维、二维或三维网格。复合物体本质上是一个由刚体组成的粒子系统。但是,可以通过模拟柔性对象的方式约束粒子一起移动。


image.png

软3D对象特别有趣,因为它们可以用来模拟人体躯干。软3D对象的示例如图2.3所示。在这里,粒子沿着外壳形成网格,与密集的3D网格相比,有效地减少了建模3D对象所需的粒子数量。为了模拟柔性对象的柔软度,每个粒子都有一个远离网格中心的滑动关节。这些关节允许软物体的表面在任何点压缩和膨胀。为了使软对象在变形后保持其形状,并使变形本身平滑,关节都被平等地约束到其初始位置和相邻关节。最后,为了保持对象的体积,所有关节位移的总和应该是常数。

MuJoCo使用软接触模型。这类模型通常用于模拟软手指和刚性物体之间的接触,允许手指在接触点施加相对于法线的附加扭矩。

Mujoco的接触模型与标准LCP(线性互补问题)接触模型的不同之处在于,它完全放弃了互补约束。互补约束规定,接触法向上的力和速度不能同时为正,这是LCP公式的一个重要部分。移除约束将LCP模型转换为凸模型。因此,MuJoCo的接触模型可以看作是凸的。

基于所有物理材料在现实中都允许一些变形的观点,消除了互补性约束,基本上使所有类型的物理接触变软。对于软接触,必须排除互补约束:当存在穿透且材料推动接触体零件时,法向力和速度均为正。因此,当假设现实世界中的所有触点都是软触点时,该约束会对模拟施加不现实的限制。

接触模型进一步基于点接触。接触点在几何上由两个接触刚体和以该点为中心的空间框架之间的点定义。接触体和空间框架之间的点都用全局坐标表示。这个𝑥-空间框架的轴指向接触法线方向,而其余两个轴跨越切线平面。当两个物体分开时,接触距离定义为正,当它们接触时为零,当它们穿透时为负。接触点位于沿法向轴的两个表面之间的中间。

3、Robosuite相关

仿真模型由任务对象定义,任务对象封装了机器人仿真的三个关键组成部分。这些组件包括机器人模型、对象模型和环境场景arena。因此,一项任务可以由一个或多个机器人组成,而不是由多个物体和一个arena场组成。机器人模型由机器人模型和相应抓取器模型组成,两者都指定为XML文件。对象模型可以从XML文件加载,也可以通过编程API按程序生成。机器人的工作空间在竞技场中定义。竞技场包括环境装置及其放置,例如带有位置和方向的桌面。任务类将机器人模型、对象模型和竞技场组合成一个XML对象,该对象由MuJoCo的MJCF建模语言指定。


Image From 仿真框架论文.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,711评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,932评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,770评论 0 330
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,799评论 1 271
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,697评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,069评论 1 276
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,535评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,200评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,353评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,290评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,331评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,020评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,610评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,694评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,927评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,330评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,904评论 2 341

推荐阅读更多精彩内容