找回密码
 立即注册
查看: 407|回复: 0

挖掘机哪家强?用Unity人工智能模拟技术研发的自动驾驶 ...

[复制链接]
发表于 2022-2-20 07:55 | 显示全部楼层 |阅读模式
说到挖掘机,我们总能想到经典的蓝翔技校。依靠挖掘机操作技术支持美好生活也是一代劳动者的经典记忆。
新时代的挖掘机又有更新潮的话题:人工智能重型车辆自动化。为什么要自动化呢?如何自动化呢?让我们从重型机械的全系统物理模拟开始说起。



自动驾驶挖掘机在Unity中模拟

首先说说为什么要发展重型车辆的人工智能自动驾驶。两方法原因:降低试错成本,提高工作效率。建筑工地、 地下矿井这些工作环境风险系数很高的。同时在一些极端情况下,对机械操作员的经验和技艺有很高的要求,经验不足的操作人员很难完成。
Algoryx 公司在重型机械的全系统物理模拟方面有超过十年经验,其核心产品是一款用于多体和多域动力学数值模拟的SDK:AGX Dynamics。AGX Dynamics中的可变时间步进器,能快速且实时地模拟出非理想化、不连续(或不平顺)的物理事件,比如撞击。该SDK会在每个时间节点解算模型的几何和全局状态,形成一种稳定且不限制时长的物理模拟。配上Algoryx的快速直接解算器,AGX Dynamics能以机械精度来解算大型分散系统,无须额外的处理即可模拟大质量比的“刚性”系统。



Unity数字孪生系统中的自动驾驶模拟训练

另一方面,工程设计经常涉及机器与环境互动的深入分析,像对比关节的真实出力与传动系统的能量消耗,需要还原现实操作过程中的真实情况,用以指导早期设计决策。AGX Dynamics目前已整合至Unity,Unity用户可以用强大的Unity编辑器来构建设备与环境模型,再用AGX Dynamics进行模拟。
人工智能机械自动化的难点:找准测量对象

自动化过程中最困难的部分在于找准测量对象:弄清怎样将环境与车辆操控动态地联系起来,让车辆进行“自主决策”。人类操作员往往会利用视觉、听觉与车辆受到的阻力等多种感官输入,凭直觉做出决定。这种直觉需要经过数千小时的培育,操作员首先在模拟器上体验虚拟却逼真的情形,然后将学到的经验应用到真的机器上。这就要求模拟器有十分精确的物理模拟,才能让这些学习体验能有益于实际操作
近年来,不断进步的强化学习有望处理传统解决方案无法处理的复杂环境。在强化学习的帮助下,自动化工程师不必先单独解决自动化的每一个部分,再组装所有部件,而可以首先编写出要解决的问题、解决问题过程中可能会用到的行动和产生的现象,然后让代理在环境中“想出”解决方案。
这听起来很容易,但现实是强化学习模型要想解决任何一项任务都需要经过巨量的探索和训练,而让模型在真实设备上训练既危险又费钱。
那这该怎么解决呢?改用模拟
模拟情况下,不会存在损坏机器的情况,其运行速度也比实时更快,并且模拟无需额外支出便可并行运行数个实例。但类似于真人培训,强化学习的培训也必须用到精确的物理模拟,这样培训习得的经验才能在真实设备上发挥作用。如果模型不正确,智能代理学会的解决方案将无法应用到现实世界中。



基于Unity 机器学习代理(ML-Agents)构建模型环境

开发者可使用 Unity 引擎和 Unity 机器学习代理(ML-Agents)轻松构建环境模型,并加入一个或多个智能代理进行训练。还可以使用 Unity SystemGraph 来模拟观察环境用的各类图像传感器。
起初,智能代理并不知道该怎样解决任务,开发者需要根据先前的状态为其设置一个行动奖励,让 ML-Agent 的强化学习算法求出最大化奖励的策略,并最终解决问题。此类训练辅以 AGX Dynamics for Unity 快速而精确的物理模拟,即能让重型机械的建模和训练成为可能,使智能代理在模拟中就能自主地解决非常复杂的问题。
两个实际案例

案例一:野外伐木场景。于默奥大学的 Jennifer Andersson 使用 Algoryx 研究了怎样借助强化学习,来实现伐木机抓手原木抓取动作的自动化。有经验的人类操作员可以操控伐木机上动力较低的抓手抓取多根原木,同时在不平整的地面上行驶、躲避其他树木。这种技巧可不简单,操作员需要耗费大量的精力和体力、撇开直觉来协调多个作用器。
而在用 Unity 和 ML-Agents 搭建、用 AGX Dynamics for Unity 模拟物理的环境训练过后,智能代理也可以分别控制伐木机前臂的六个关节来抓取单根原木。其训练出的最佳策略有 97% 的成功率,相当于一名经验丰富的人类操作员。比如,智能代理能利用低动力抓手的摆动来减少整套抓取动作的耗时,这是一种较难学习的技巧。
研究还表明,设有节能奖励的智能代理与普通智能代理相比能极大地节省设备能耗。



Unity模拟野外伐木无人驾驶场景

案例二:地下矿井场景。Algoryx 与世界领先的隧道和采矿设备制造商 Epiroc 合作,实现了大型地下矿井装载机 ST-18 的自动化装载。该重型车辆能够用铲斗装载 18 吨碎石,并在各种地下矿井里不停地运行。在地下掘进时,隧道末端的爆破会产生大堆的碎石(泥土),只有清除这些障碍后隧道才能进一步挖掘。
在模拟中,训练好的智能代理可借助图像深度来规划装载位置,并在后续的装载环节中高效地填满铲斗。智能代理通过控制油门、方向盘和铲斗的升降来完成路线规划、装斗、躲避障碍和避免打滑等操作。如若为代理加上耗能惩罚,铲斗的平均容量可达到最大值的 75%,整个方案的表现也达到最佳。更多详情请参见发表于《Machines》的相关论文。
AGX Dynamics for Unity 让工程师能够安全地设计、开发和测试复杂的自动化设备。Algoryx 正积极使用 Unity 平台开发机器学习,以上的两个例子仅是一小部分。在未来,我们的技术将被用于解决其他更高难度的自动化难题。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-11-16 22:25 , Processed in 0.094917 second(s), 26 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表