编者按:正如一颗苹果砸出了万有引力,自然界所有存在的事物和现象都有其科学合理的一面,小小的鸟儿也能够给科学带来丰富的灵感和启示。

最近,微软研究人员从自然出发,研究鸟类能够自由停留在空中的科学原理,并以此为基础创建了一套系统,借助人工智能让滑翔机像鸟类一样在无须马达的情况下实现空中停留。和目前大多数AI系统不同的是,这套系统更加复杂,但结果却非常令人惊喜,理论上可以实现无限翱翔。

欢迎来到人工智能课堂之走进自然,为大家揭开这款无限滑翔机的神秘面纱。本文译自“Science mimics nature: Microsoft researchers test AI-controlled soaring machine”,点击阅读原文可查看英文。

近日,微软研究团队的两名成员Jim Piavis和Rick Rogahn在内华达州霍桑的小型机场内进行了一项“无限滑翔机”的飞行试验,他们希望能够创建一个系统,借助人工智能,让滑翔机像鸟类一样,自主发现和捕捉自然产生的热气流,在无须马达的情况下停留在空中

微软首席研究员Ashish Kapoor表示:“鸟类之所以能够在空中实现飞行和停留的无缝衔接,最重要的就是借助自然的力量。他们仅凭花生米那么小的大脑就做到了这一点。”

鸟类能够本能地做到在空中停留,但对于一台机器而言,则需要一套复杂的AI算法,以识别气温、风向和禁飞区域等要素。同时,系统必须使用其他AI手段来分析这些信息,并实时预测下一个可以利用的热气流。总而言之,这比人们目前所使用的照片人脸识别和语句单词识别等大多数面向单一任务的AI系统要复杂得多,它可能是少数在现实世界中运行的不仅要进行预测而且还要根据预测结果采取行动的AI系统之一。

目前,无限滑翔机仍在开发当中,但最终它可以用于执行各种实用任务,例如监测农村地区的农作物生长,或者在条件艰苦地区提供移动互联网服务等。Kapoor说:“有朝一日,它可能成为你的移动通信信号塔,你不再需要任何地面基础设施。”滑翔机最终甚至可以使用太阳能或风力发电获得能源,理论上可以无限期地在空中停留。

现实世界中的AI:零错容忍

自主滑翔机本身就已经大有用武之地,但负责项目研究及工程开发工作的微软研究员Andrey Kolobov表示,他们希望这项研究还可以应用于大量其它依赖人工智能且日益复杂的系统,并将能够在真实而不可预测的环境中运行。“对于我们而言,这架滑翔机是一个技术测试平台,用于测试未来十年内任何智能系统的核心技术。”

对于那些依靠AI来帮助驾驶汽车、保护住宅安全或管理繁忙日程的人而言,这些系统必须根据交通流量、噪音、天气等变量,甚至包括人类情感等其它条件,能够当场做出可靠的复杂决策。更重要的是,它们决不能犯那些会引发重大损失和潜在危险的错误。在研究领域中,这种能力被称为在不确定性条件下进行序贯决策。

Kolobov说:“现实世界中的AI不允许有犯错误的余地——就像我们的滑翔机一样。真正的问题在于‘你如何提前几步规划未来?’从计算科学的角度上看,这是一个非常困难的问题。”

理论付诸行动:有效模型+有效手段

本次实验中测试的滑翔机依靠电池来运行机载计算设备和方向舵以及与地面联络的无线电台等控制系统。它还备有一台马达,以便飞手可以在必要时接管,进行手动操作。但是在设计上,一旦升空后,它就应该自主运行,发现和利用热气流飞行,不需要马达或人工帮助。Kolobov说:“我们要做的是确保滑翔机完全自主运行,而且足够聪明,能够改变飞行方向。”

为了设计这套系统,研究团队从一个框架入手,来解决一个被称为“部分可见马尔可夫决策过程”的问题。Kolobov曾与他人共同撰写了一本关于马尔可夫决策过程的书,他说,这是一个旨在无法了解所有信息的情况下做出规划决策的模型。通过滑翔机实验,团队将这个模型与另一种AI手段(贝叶斯强化学习)相结合,开创了一种新方法,能够让系统尽快掌握其所处环境所需的信息,以便做出正确的决策。团队还使用了“蒙特卡罗树型搜索”的方法来寻求最优方案。

从左至右:Debadeepta Dey、Andrey Kolobov、Rick Rogahn、Ashish Kapoor、Jim Piavis

滑翔机的AI系统可分为两部分:高级规划器和低级规划器。高级规划器将所有的环境因素纳入考虑,并尝试制定一项策略,以便让滑翔机知道应该去哪里寻找热气流。随着时间推移,飞行器将能够根据每次升空所收集的信息,做出更好的预测。Kolobov说:“对于高级规划器而言,经验十分重要。系统今天的表现会比昨天更好,因为它(在决策中)纳入了既往飞行的信息。”

低级规划器部分可以说是“在实干中学习”,它使用贝叶斯强化学习方法,根据滑翔机传感器发回的数据实时侦测和锁定热气流。

实测:与模拟截然不同的全新体验

团队在微软位于华盛顿州雷德蒙的园区办公室内花了好几个月时间创建这些AI算法。随着天气转暖、热气流状况越来越好,该团队在公司总部附近的农场进行了受限飞行测试。然而,直至8月中旬他们来到内华达州霍桑的那座小型机场,才真正有机会见证他们的各项理论在现实世界中的表现如何。

在滑翔机飞行过程中,研究员们开着一辆敞篷吉普和一辆加长SUV在地面实时跟踪。坐在吉普车上的同事们用肉眼观察滑翔机的位置。而研究实习生Iain Guilliard和Sangwoo Moon(两人都参与编写了驱动系统的核心算法)则在SUV里使用四台笔记本电脑跟踪滑翔机动向,并监测它如何利用包括热气流在内的各项条件,每隔几秒钟,Guilliard就会大声报出滑翔机的飞行参数。而编写了滑翔机热气流预测模块的微软研究员Debadeepta Dey,和Kolobov轮流驾驶着这辆SUV,作为移动办公室,紧跟在吉普车和滑翔机之后。

从左至右:Kolobov、Iain Guilliard 、Sangwoo Moon

除了捕捉热气流之外,系统还需要规划自身飞行路线,以躲避某些障碍,例如附近的山脉、大型湖泊以及美国陆军在试飞地点附近地区的数十个弹药存放点。现实世界环境的复杂,以及在办公室里无法预测的各种障碍,为这个系统提供了完美的测试场所。

事实上,他们遭遇的许多问题与AI并没有任何关系。例如,接受测试的最大的一台滑翔机就遇到了通信系统故障,研究团队怀疑是因为道路灰尘中的磁性颗粒导致了电子部件损坏。在一次测试中,滑翔机马达出现了故障,他们试图用弹力绳将滑翔机拴在汽车上进行发射时,弹力绳又断了。

每遇到一次挫折,团队都会耐心地设法找到解决方案:修理马达、连结弹力绳、寻找新电池组、当一架滑翔机无法继续服役时就拉出另外一架……Kolobov说,正是现实世界中的这些问题才吸引了如此众多的人来参与这个项目。这也是为什么他们不会因为遇到每一个意想不到的挫折而气馁的原因。

“现实与模拟不同,”Kolobov说:“这是我们到这里来的原因。我们来到这里学习,尽管现在学到的并不一定符合我们最初的期望,但仍然非常值得。”

“算法比我还厉害

8月11日,团队在霍桑机场进行了最后一次汇报。在大约一小时前的最后一次试飞中,刚开始,算法完全按照预期方式完成了预定任务,将滑翔机送上了蓝天,但随后电池组意外失效,滑翔机以惊人的速度俯冲向地面。作为人类飞手的Rogahn在最后时刻重新获得滑翔机的操控,在飞行器距离地面只有几英寸的时候避免了坠毁。

“在室内戴牛仔帽并不礼貌,但刚才的经历让我觉得自己已经驯服了几头公牛,”Rogahn在作汇报时说道。尽管如此,他还是摘下帽子,认真地表示:“今年夏天,我们还是达到了这样一个境界——AI算法已经比作为滑翔机飞手的我更厉害了。”

立即访问http://market.azure.cn

科学效法自然:微软研究人员测试AI控制的滑翔机的更多相关文章

  1. Cortana携手微软学术搜索,变身研究人员最佳个人助理

    编者按:在美国时间7月14日于微软总部雷蒙德召开的2014年微软教育峰会上,负责技术与研究的微软全球执行副总裁沈向洋博士在他的开幕主题演讲中正式宣布,Windows Phone 8.1系统中的虚拟个人 ...

  2. IBM研究人员开发了一对低功耗,高性能的计算机视觉系统

    机器学习算法近年来有了突飞猛进的发展.例如,像Facebook这样的最先进的系统,可以在一小时内训练图像分类算法,而不会牺牲准确性.但是,许多这些系统都是在具有强大GPU的高端机器上进行培训的,随着物 ...

  3. 微软推出中文学习AI助手Microsoft Learn Chinese

    ​ 编者按:美国总统特朗普访华期间,他6岁的外孙女阿拉贝拉用中文普通话演唱和背诵传统诗歌的视频在中国社交媒体上引起广泛关注,可以感受得到,越来越多的人对中文学习充满了兴趣.智能私教微软小英帮助很多中国 ...

  4. SQLSERVER2012 列存储索引的简单研究和测试

    SQLSERVER2012 列存储索引的简单研究和测试 SQLSERVER2012 列存储索引的简单研究和测试 看这篇文章之前可以先看一下下面这两篇文章: 列存储索引 http://www.cnblo ...

  5. Google研究人员宣布完成全球首例SHA-1哈希碰撞!

    2004年的国际密码讨论年会(CRYPTO)尾声,我国密码学家王小云及其研究同事展示了MD5.SHA-0及其他相关杂凑函数的杂凑碰撞并给出了实例.时隔13年之后,来自Google的研究人员宣布完成第一 ...

  6. [转]BSD系统正在死亡?一些安全研究人员这样认为

    摘要:在代码安全上被关注太少,漏洞没有被报告修补,FreeBSD.OpenBSD和NetBSD还能活下来吗? 在德国莱比齐的34c3网站上,IOActive的渗透测试主管Ilja von Sprund ...

  7. 【GS基础】植物基因组选择研究人员及数量遗传学发展一览

    目录 1.GS研究 2.数量遗传发展 GS应用主要在国外大型动物和种企,国内仍以学术为主.近期整理相关学术文献,了解到一些相关研究人员,记录下备忘查询,但不可能全面. 1.GS研究 Theo Meuw ...

  8. MariaDB集群Galera Cluster的研究与测试

    MariaDB集群Galera Cluster的研究与测试 Galera Cluster是MariaDB的一个双活多主集群,其可以使得MariDB的所有节点保持同步,Galera为MariaDB提供了 ...

  9. 研究人员发现绝大部分酷派(Coolpad)手机暗藏后门(转)

    隐私问题被曝光得越来越多,随着物联网的发展,只会变得越来越严重,不过从当前看来 ,国人对隐私的重视度还远没有国外,期待加强对隐私的保护策略.   转自:http://www.freebuf.com/n ...

随机推荐

  1. KMP匹配 (1)

    ---恢复内容开始--- 字符串匹配是计算机的基本任务之一. 举例来说,有一个字符串"BBC ABCDAB ABCDABCDABDE",我想知道,里面是否包含另一个字符串" ...

  2. MemoryStream转string

    MemoryStream rtfTx = new MemoryStream(); var bs = rtfTx.ToArray(); string s = Encoding.UTF8.GetStrin ...

  3. pysam操作sam文件

    pysam模块 因为要分析sam文件中序列的情况,因此要对reads进行细分,所以之前想用数据库将sam文件信息存储,然后用sql语句进行分类.后来发现很麻烦,pysam就是一个高效读取存储在SAM ...

  4. 《Java多线程编程核心技术》读后感(九)

    当interrupt方法遇到wait方法 当线程呈wait()状态时,调用线程对象的interrupt()会出现InterruptedException异常 package Third; public ...

  5. linux下gsoap的初次使用 -- c风格加法实例

    摘自: http://blog.csdn.net/jinpw/article/details/3346844 https://www.cnblogs.com/dkblog/archive/2011/0 ...

  6. C/C++ Sleep(0)

    Sleep(0) 的意义是放弃当前线程执行的时间片,把自身放到等待队列之中.这时其它的线程就会得到时间片进行程序的程序.Sleep(0)能够降低当前线程的执行速 度,比如:现在系统中有100个线程(先 ...

  7. npm ERR! Cannot read property 'match' of undefined 错误处理

    跟往常一样运行npm install 的时候,突然报错.错误情况如下: npm ERR! Cannot read property 'match' of undefined npm ERR! A co ...

  8. Myeclipse如何使用自带git工具向远程仓库提交代码(转)

    Myeclipse如何使用自带git工具向远程仓库提交代码 第一步:将改动的代码标记 项目右键:team->synchronize workspace 点击确定 项目右键>add to g ...

  9. 731. My Calendar II

    Implement a MyCalendarTwo class to store your events. A new event can be added if adding the event w ...

  10. Segment Tree Range Minimum Query.

    int rangeMinQuery(int segTree[], int qlow, int qhigh, int low, int high, int pos) { if (qlow <= l ...