当前位置: 首页 > wzjs >正文

北京做网站的公司哪家好sem竞价托管多少钱

北京做网站的公司哪家好,sem竞价托管多少钱,今日头条网站用什么做的,wordpress转盘上一篇文章讲了如何创建一个机器人训练地形,本篇文章将一步讲解如何添加地形到训练环境。 地形初始化逻辑 地形的创建函数 create_sim 位AzureLoong/gpugym/envs/base/legged_robot.py 中,它会在模拟初始化之后,机器人环境创造之前执行&…

上一篇文章讲了如何创建一个机器人训练地形,本篇文章将一步讲解如何添加地形到训练环境。

地形初始化逻辑

地形的创建函数 create_sim 位AzureLoong/gpugym/envs/base/legged_robot.py 中,它会在模拟初始化之后,机器人环境创造之前执行,具体代码如下

def create_sim(self):""" Creates simulation, terrain and evironments"""self.up_axis_idx = 2  # 2 for z, 1 for y -> adapt gravity accordinglyself.sim = self.gym.create_sim(self.sim_device_id, self.graphics_device_id, self.physics_engine, self.sim_params)mesh_type = self.cfg.terrain.mesh_typeif mesh_type in ['heightfield', 'trimesh']:self.terrain = Terrain(self.cfg.terrain, self.num_envs)if mesh_type=='plane':self._create_ground_plane()elif mesh_type=='heightfield':self._create_heightfield()elif mesh_type=='trimesh':self._create_trimesh()elif mesh_type is not None:raise ValueError("Terrain mesh type not recognised. Allowed types are [None, plane, heightfield, trimesh]")self._create_envs()

图片
图片来源于网络

通常的,我们创建地形会选用的 mesh_type 是 trimesh,所以在这段代码中,将会执行的是 Terrain 的初始化和 _create_trimesh 函数。_create_trimesh 函数会初始化仿真环境并设置动静摩擦系数等物理属性,这里就不展开讲解了。


在 create_sim 方法执行结束后会调用生成机器人的方法,这也意味着地形已经生成完毕,可以添加机器人到地形上了。

地形创建和添加

地形的使用主要包括了如何创建一个地形和如何把这个地形放入仿真环境中两部分,而这两部分都在 Terrain 类中。

图片
图片来源于网络

Terrain 中有三种添加地形的逻辑,分别为课程地形,选定地形,和随机地形。

if cfg.curriculum:self.curiculum()elif cfg.selected:self.selected_terrain()else:   self.randomized_terrain()
 

它们和根据 env.terrain.curriculum和env.terrain.selected 参数选择执行。而这三种地形创建逻辑的创建方式都大同小异,其中最关键的两行代码为:

terrain = self.make_terrain(choice, difficulty)
self.add_terrain_to_map(terrain, i, j)

selected_terrain  中创建地形的代码稍有不同,但是创建方式仍然是一样的。

以之前讲解的 jump_plat 举例,它被创建需要经过三个主要步骤:初始化 subTerrain,根据 difficulty 确定参数,创建地形(修改height_field_raw)。在上一篇中的 jump_plat_terrain 函数就承担了最后的创建地形的任务。


这些步骤都在 make_terrain 函数中,它需要两个入参,其中 choice 表示从众多地形中选择一种,而 difficulty 表示该地形的难度。make_terrain 函数可以被简化如下:

def make_terrain(self, choice, difficulty):terrain = terrain_utils.SubTerrain(   "terrain",width=self.width_per_env_pixels,length=self.width_per_env_pixels,vertical_scale=self.cfg.vertical_scale,horizontal_scale=self.cfg.horizontal_scale)height = 0.7 * difficultyjump_plat_terrain(terrain, height = height,  platform_size=2.)return terrain

通过上述的操作一个 subTerrain 就被创建好了,接下来就要通过 add_terrain_to_map 函数将其添加到地图上。该函数主要承担了协调地形位置的任务,即将地形放入对应的行列位置上而不重叠,这里就不展开解析了。

实战问题案例

在仿真训练中,经常会遇到各种无法溯源无法解决的问题。在青龙机器人的平地移动训练过程中,我们就发现在 mesh_type='plane' 的情况下,无法准确的测量足底接触力,非常影响对训练结果的观测和下一步调优的方向确定。


为了解决这一问题,我们选择将 mesh_type 改为 trimesh,但是注释掉了添加地形的函数,这样确保了训练地形仍是平地,且对整体代码的影响最小。

terrain = self.make_terrain(choice, difficulty)
# self.add_terrain_to_map(terrain, i, j)
 

图片

通过学习如何添加地形到训练环境,相信你已经掌握了关键操作!然而,真正的挑战在于复杂地形,你了解多少呢?下一篇,我们将为大家带来精讲复杂地形精讲之台阶,敬请期待~

"OpenLoong" 是全球领先的人形机器人开源社区,秉承技术驱动与开放透明的价值观,致力于汇聚全球开发者推动人形机器人产业发展。由国家地方共建人形机器人创新中心发起的 OpenLoong 项目,是业内首个全栈、全尺寸的开源人形机器人项目,有着人人都可以打造属于自己的机器人的美好愿景,旨在推动人形机器人全场景应用、助力具身智能时代的到来。

欢迎加入 OpenLoong 开源社区,探索人形机器人技术,共享创新成果,在这里一起见证开源的力量!

http://www.dtcms.com/wzjs/225211.html

相关文章:

  • 西藏阿里地区建设局网站武汉seo论坛
  • 移动端网站建设重庆seo整站优化设置
  • 做公司网站详细步骤6软文推广名词解释
  • 网站安全检测入口关键词优化公司哪家强
  • 自己做书画交易网站武汉大学人民医院光谷院区
  • 393网站如何免费制作自己的网站
  • 网站权限配置搭建网站教程
  • 网站建设好推荐app拉新渠道商
  • 做外贸进大公司网站代做网页设计平台
  • wordpress怎么滚动图片批量优化网站软件
  • 网站后台无上传图片按钮推广运营平台
  • 菏泽 兼职做网站免费seo工具
  • 做一的同志小说网站seo优化方法
  • 怎么用cms做网站软文案例大全
  • 精品课程网站开发免费自制app软件
  • 东莞58同城做网站电话冯站长之家官网
  • 微信网站开发怎么做没经验可以做电商运营吗
  • 商丘网站制作企业官网首页设计
  • 深圳网络专科网站建设不要手贱搜这15个关键词
  • 高校校园网站建设的要求西安网站seo
  • 手机建站系统源码优化设计答案大全英语
  • 百度人气榜排名哈尔滨seo关键字优化
  • html可以做网站后台吗站长统计app软件
  • 做网站颜色如何搭配顺德搜索seo网络推广
  • 乡村网站建设排名软件
  • 专业做尼泊尔的旅行网站北京seo公司哪家好
  • 集团网站建设新闻北京seo服务
  • 个人网站创意小学生一分钟新闻播报
  • 自助建站系统源码 资源网谷歌seo外链
  • 网站制作公司业务员谷歌搜索引擎入口2022