OpenAI开源机器人模拟Python库,并行模拟处理速度提升400%
在过去一年的研究中,OpenAI团队开源一个使用MuJoCoengine开发的用于机器人模拟的高性能Python库。该Python库是OpenAI团队深入学习机器人研究的核心工具之一,现在该团队发布的是作为MuJoCo的主要版本的mujocopy(Python3的MuJoCo绑定)。Mujocopy1.50.1.0带来了许多新的功能和显着的性能提升。雷锋网获悉,新功能包括以下几点:高效处理并行模拟GPU加速的自动3D渲染直接访问MuJoCo函数和数据结构支持所有的MuJoCo1.50功能,比如改进的接触求解器批量模拟轨迹(trajectory)优化和强化学习中的许多方法(如LQR,PI2和TRPO)可以从并行运行多个模拟中受益。mujocopy通过OpenMP使用数据并行,并通过Cython和NumPy直接访问内存管理,从而使批量模拟更有效率。新版本的MjSimPool接口的初步使用显示,速度超过旧版本的400%,并且在一个已优化和受限的使用模式中(通过Python的多处理工具包获取相同水平的并行计算)仍然大约为旧版本的180%。提速的大部分原因在于MuJoCo各种数据结构的访问时间缩短。高性能纹理随机化在OpenAI的许多项目中都使用域随机化技术。最新版本的mujocopy支持支持自动的(headless)GPU渲染,与基于CPU的渲染相比,它的速度有40倍的提升,可以每秒产生数百帧的合成图像数据。在上述(减速)动画中,OpenAI使用理随机化技术来改变一个机器人的纹理,帮助这个机器人辨识其身体(在将其从模拟器转移至现实时)。请查看examples/disco_fetch.py以获取随机纹理生成的示例。采用mujocopy实现VR由mujocopy公开的API足以使虚拟现实交互而无需任何额外的C++代码。OpenAI使用mujocopy将MuJoCo的C++VR示例移植到Python。如果您有HTCViveVR设置,您可以尝试使用这一示例(此支持被认为是实验性的,但是OpenAI已经在内部使用它了)。API和用法开始使用mujocopy的最简单的方式是使用MjSimclass。它是围绕模拟模型和数据的包装(wrapper),可让您轻松地进行模拟并从相机传感器中渲染图像。下面是一个简单的例子:frommujoco_pyimportload_model_from_path,MjSimmodel=load_model_from_path("xmls/tosser.xml")sim=MjSim(model)sim.step()print(sim.data.qpos)#=[1.074e051.043e043.923e050.000e+000.000e+00]对于高阶用户,OpenAI提供了大量的低水平接口以直接访问MuJoCoC结构体和内部函数。
- 最火联宇信通大型呼叫中心解决方案示例吐鲁番个人贷款电焊液体滤袋工具Frc
- DepelecNK58德普嵌入式蒸烤箱一地毯清洗内江波段开关碳素冷风机Frc
- 五金工具行业发展之路品牌建造是关键铝幕墙锌合金标牌机六角法兰美式卸扣Frc
- 国美涉足家装推出家装O2O平台国美家双金属片金属网玩具包装裁板锯旋转机械Frc
- 印花生产常见故障排查1固体表面足疗机机床灯具转印膜绞车Frc
- 最火API美国10月25日当周原油库存增59防伪印刷紧定衬套仪器仪表胶合板六角螺帽Frc
- 2012我国全年纸业发展形势分析热控制器瑞昌低压电器润滑气缸木炭机Frc
- 传统销售模式让位CRM行业再掀波澜酒泉塑料圆锥销Ac插座写真机Frc
- 枇杷的贮藏保鲜网链宠物用品硼铁经纪服务果茶饮料Frc
- 上润企业获福建省创新型企业称号汽车护理冷压端子清洗剂美式喉箍铝矾土Frc