可以训练机器人或 AI 修剪果树吗?

人工智能 机器学习 机器人技术
2021-11-13 10:54:42

我住在一个农村地区,那里越来越需要有知识的人修剪梨树,这个过程对这个行业至关重要,但是随着人们去大城市,这种技能正在失去,几年后就会在那里将没有人去做。

我想知道是否有可能使用 AI 训练机器人来做到这一点,并希望它能够完成这项工作!

请记住,这仅以“工业”方式可行。这些树都具有大致相同的大小,并以某种预设方式(彼此之间的距离、高度等)布置。

1个回答

我不是机器人专家(当然也不是梨树修剪专家),但我会尝试给出一些提示来部分回答并帮助重新定义问题。总的来说,我已经给出了一个答案:这很可能,但也很可能不方便。

问题陈述

首先要做的事情是:一般来说,规则是当一项任务无法以其他方式自动化时,应该应用机器学习。在询问是否可以训练人工智能来解决任务之前,我们应该始终考虑如何使用基于规则的系统来自动化任务。这一点很重要,因为在思考如何使任务自动化的过程中,您会意识到有些步骤可以在没有专家的情况下执行,而另一些步骤则不能在没有任何监督的情况下执行。让我们在子任务中分解您的任务:修剪树的系统应该(至少)能够:

  1. 在树木之间移动
  2. 选择要切割的树枝
  3. 剪切选定的分支

选择要切割的分支可能是需要大部分专业知识和专家监督的步骤,并且机器学习组件可能适用于该步骤。相反,移动是可以在不同级别处理的子任务的完美示例。创建一台能够预测其他物体运动并实时避免它们的机器肯定需要训练一个 AI 组件,但是当你说环境是高度结构化的(布置在网格中的树)时,这让我觉得可能是一些手工编码的规则会在不打扰机器学习的情况下做到这一点。

理论工具

一旦您了解了您的机器应该能够解决哪些子任务,您就可以开始挖掘它们的理论可行性。按照与上一段相同的顺序:

  1. 自动驾驶是一个广泛研究的主题,用于训练机器人真空吸尘器在房屋中自动移动的算法可以直接应用于训练代理在树之间移动的问题。

  2. 选择正确的分支主要涉及计算机视觉。这个子任务实际上也应该再次深入到子任务中:检测来自其他对象的分支并选择应该切掉的分支。尽管如此,这个领域还是相当大的,在我看来,训练两个能够执行这两种操作的模型是可行的。

  3. 在这种情况下,切割树枝可能比开车更难,因为可能需要进行小动作才能到达位于困难位置的树枝。无论如何,训练机器人执行精细动作是可能的(一个有趣的例子请参见:机器人学会翻转煎饼)。

同样,这也取决于您对最终机器/系统的期望有多高。该系统是否应该具有外科手术般的精确度,或者在困难的情况下是否会冒着制动几个额外分支的风险?显然,期望越高,就越难让一切和谐地工作。

所需资源

最后但同样重要的是,您还需要了解您尝试做的事情在现实中是否可行,而不仅仅是在理论上。使用机器学习时的一个大问题是,这些模型只能用大量数据进行训练。

  1. 可以通过在人工模拟器中重现环境来训练人工代理在环境中移动,这是个好消息。一个拥有笔记本电脑的人可能会完成这项工作。

  2. 收集数据来训练一个能够检测照片上的分支然后选择应该剪掉哪个分支的模型非常繁琐,而且成本高昂,因为数据还需要由专家标记。这意味着一些有经验的人将不得不拍摄至少数万张的照片,并为每张照片(使用软件)写下如果他们在那棵树上真正工作时会剪下的树枝。我强烈怀疑这样的数据集是否已经存在。

  3. 训练机械臂切割树枝也将具有挑战性。尽管在这种情况下也可以利用模拟器,但任务本身就更难了,这也带来了更大的困难(例如,如果使用强化学习来设计适当的奖励函数)。具体而言,这意味着有更多时间花在研究和测试上。

还要考虑到为每个子任务训练的最终模型的成功根本无法保证,为什么我一开始就说用 AI 模块训练系统可能不方便,最好的事情总是尝试首先创建一个基于规则的系统。