让机器人定向演化

《环球科学》杂志 2017-02-28

机器人border

2659 字丨阅读本文需 6 分钟

让-蒂斯特·穆雷、斯特凡·东希厄和尼古拉斯·布拉戴希是巴黎第六大学智能与系统研究所适应和认知模式及架构团队的研究人员。

 

自然选择适用于所有生命。我们可以借用自然选择的原理,设计出能够适应环境的机器人。如果我们在设计时保留一些随机性和创造性,创造出来的机器人也许会更加出色。

 

 

 

先驱图灵

 

演化的核心机制是不断循环的变异和自然选择。20世纪50年代,阿兰·图灵(Alan Turing)灵光一现,他提出可以在计算机上重现演化的迭代过程。

图灵的想法颇具先见之明。现在,研究者就在模仿达尔文提出的演化原理,把这一设想应用在机器人上。这样做的理由很简单,既然演化可以塑造生物,并让它们适应环境,那么人工演化理应也能自动地设计出适应环境的机器人。

这就是演化机器人学研究的主题。演化机器人学糅合了机器人学和人工智能。借助于演化原理带来的灵感,演化机器人学试图自动创造出机器人或机器人的部件。比如控制架构(机器人的脑)和形态(它们的身体),甚至将这两者同时创造出来。

从图灵到现代演化机器人学,中间发生了一些里程碑事件。基于图灵以及一些生物学家的理念,学术界设计出了演化算法。

 

 

演化算法与“黑箱”

 

如今,演化算法成了一种不错的“黑箱”优化算法。也就是说,它可以帮助我们找到某类函数的最大值。我们可以估算出这类函数的值,但却无法简单地用数学方法表达,因此无法直接求解。

就机器人来说,不管优化目的是改进它们的形态还是控制系统,最本质的问题都是类似的,而这些问题也是当前诸多研究的焦点。

第一个问题就是编码。如何用“人工基因型”来表征复杂的大型结构(比如器官或者神经系统)呢?如何才能确保这个基因型多次使用同样的基因(比如,我们所有的皮肤细胞表达的都是同样的基因),并且允许有时出现变异以及对称性呢?

另外一个问题和选择压力有关:应该让种群中的哪些个体生存下来,才能获得更好的解?比如,通过人工演化,什么样的步骤可以产生我们想要的结果,比方说仿生机器人?最关键的问题是,怎么做才能让人工演化自己发现这些步骤?

现在我们明白,在电脑上复制演化并不只是要找到函数的最大值。假设追求最大值就是演化的正确方式,我们首先要确认那个需要得到最大值的函数。除此以外,在建造最优演化解的大厦时,我们还要挑选正确的砖瓦进行操作。

为了让机器人的“身”(机械和电子)和“心”(软件)融合,让算法自行设计机器人有着非同寻常的意义。实际上,目前的机器人是用模块化的方式设计的,也就是说机器人的各个部件间是相互独立的。但是在实际操作过程中,模块间的界限往往变得模糊不清,因此这个设计方式常会遇到麻烦。

 

 

 

盲过程

 

对人类来说,行走的秘诀不只是身体本身,行走也是一个规划问题。还与感官的调用、平衡等因素有关。行走看起来既涉及大脑,又涉及肢体。面对这个需要两者兼顾的问题,机器人设计师要做出艰难的选择:哪些功能应该通过软件实现?哪些功能又应该通过机械实现?

如果由人工演化这种“盲”设计过程做决定,那么上述问题就迎刃而解了。和达尔文理解的一样,演化是盲目的。演化没有预期的目标,也不做规划。演化只关心最具有适应性的个体的存活,而并不在意这些个体为了生存所使用的手段。这种“盲”设计法使得演化成为一个代价高昂的过程。为了筛选出现在的物种,不计其数的生命逝去了。但这种盲目性也是演化的财富。

对于许多没有清晰解决方案的问题,演化机器人学非常实用。在柔性机器人的设计和控制方面,演化机器人学可谓是量身定制。这些机器人很难,甚至无法精确设计。因为它们的物理性质以及与环境的相互作用几乎都是未知的。

同样,让多个机器人学会共同行动也是一个极为复杂的问题,以至于协调少量机器人的行动所需的时间就已经长得让人无法接受了。即使机器人数量不多,机器人间的交互以及备选行动的复杂性也会使得精确的解决方案无法在现实环境中实施。

但在以上两种情况下,利用人工演化就能发现一些创新的解决方案。通过半盲探索并选择最具有适应性的个体,这些创新解能够逐步得到优化。

 

 

演化的创造力

 

2006年,美国康奈尔大学的一支科研团队研发出了一种四足机器人。它会用三十几种简单的测试来了解自己的形态。这个机器人建立了“自我模型”,因此它能够间接地辨认自身形态上受到的损伤。该机器人的测试方案背后是一套人工演化算法。这个算法能最完美地解释当前自我测试结果的机器人形态。

最近,我们的团队提出了另一种利用演化创造性来防止故障的方法。我们的六足机器人用人工演化来寻找一种新行为,该行为在模拟和现实中都能产生类似的结果。当机器人受伤时,算法能够自动找到一种放弃残肢的行为模式,而不必知道身体到底哪里出了问题。因此,我们的机器人能够在只剩五肢的情况下行走。

虽然演化机器人学能够让机器人具有某些自然演化的特征,但是通过人工演化得到的结果和大自然中的生物相比还是相形见绌。我们需要搞清楚一个问题:演化中最关键的因素是否都已经被考虑在内?在目前的研究中,这方面的问题最受重视。

 

 

演化和优化

 

不过,与演化相关的还有其他机制。在外部(如气候变化)和内部(如生物获得了新的技能,为自己带来了新机遇)因素的推动下,生物常会遇到新状况带来的挑战。在生物演化史上,这类变化随处可见,并造就了物种的多样性。这类机制也可归结为优化过程,而且很难通过传统工程学实现。

如果有什么方法能够超越对预设概念的优化,那么它一定能在机器人学中大展拳脚。比如,在欧洲的 SMAVNET(微型飞行器群集网络)项目中,科研人员用一套演化算法计算出了一些简单有效的行为。通过这些行为,无人机能够在两点之间快速建立起通信中继。这就是用算法找到新概念的实例。

在无比宽广的时间尺度上,演化打造出了现在的生物界。从第一批生物出现以来,已经过去了数十亿年。历时几千年甚至几百万年,不同的物种不断登场、不断演化。所有生物均享有这种适应机制,但是在一些物种身上,其他的机制也在发挥作用,而且这些机制的时间尺度更短。

从婴儿生长为成年个体的过程被称为发育。发育也是一种适应机制。此外,成年个体还可以具有学习能力,借助这种能力可以快速获得新知识,这比演化要快的多。

在一些动物身上可以观察到一定程度的学习能力,比如猴子、大鼠、小鼠甚至一些鸟类。因此,我们可以区分至少3种不同时间尺度的生物适应性:演化(需要几千甚至几百万年)、发育(需几年)、学习(需要花费几秒种到数月)。

 

 

演化加速

 

我们很好奇,这些成效显著的适应过程,在时间尺度上对于机器人来说是否遥不可及呢?理论上,发育和学习的时间尺度与工程师在设计机器人时愿意付出的时间比较契合。

但是,人工演化并不是从零开始的。机器人运动和感知环境所需的组件均已成型,它们能极大地加快演化过程。其次,计算机模拟能够以快进的速度给出演化结果。最后,演化过程可以只关注机器人的某个部分。根据经验,通过这些方式我们在几天甚至几小时内就能得到演化选择的产物。

这种提速的演化机制与大自然的演化(创造变异并通过自然选择筛选)有所不同。人工演化的时间尺度不同于需要几百万年的物种演化,而是与学习和发育的时间尺度相当。

对神经可塑性的新认识显示,演化机制可以应用于物种演化以外的地方。因此我们可以预见,演化机器人学自身的演化步伐也不会停歇。

免责声明:凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处本网。非本网作品均来自其他媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如您发现有任何侵权内容,请依照下方联系方式进行沟通,我们将第一时间进行处理。

0赞 好资讯,需要你的鼓励
来自:《环球科学》杂志
0

参与评论

登录后参与讨论 0/1000

为你推荐

加载中...