走向“软件定义的世界”
开始的时候,我们创造工具,后来他们造就我们。
——马歇尔.麦克卢汉,思想家
序
软件最初是一个工具,但现在已经成为我们工作、生活的一部分。我们借助软件所承载的信息技术管理这个世界,从全球各地搜索知识,在软件构成的世界中学习和成长,然后进一步创造了新的软件,让这个世界发生了改变,现在我们已经置身于“软件定义的世界”之中,无法分清那些是“物理的世界”,那些是“数字的世界”。
GIS从前是通过现实世界的“信息化”实现数字化的管理,将现实世界进行可视化以便于理解这个世界,或者作为一个工具去设计现实世界、指导对现实世界的改造。而未来,GIS将是一个虚拟和现实相互融合空间的数字载体,成为“软件定义的世界”中必不可少的一个组成部分,而不再仅仅是一个“工具”。
一、开始融合的二元世界
现在的我们大部分时间都通过手机、平板电脑、工作站等各种数字设备与物理世界发生关系,我们在虚拟世界体味喜怒哀乐,或者通过虚拟三维控制工厂的生产,在三维场景中管理这个城市的运行。我们已经生活在“二元世界”之中,处于由电脑和网络组成的Cyber空间中而浑然不觉。(左图:使用虚拟现实头盔和运动感知地板沉浸在虚拟世界。)
传统的信息系统是现实世界的表征,通过数字化采样在信息系统中对现实世界进行重建。但是,现在的信息系统逐步成为现实世界的延伸,数字空间已经成为“世界”的一部分,而其中的一部分已经开始脱离开现实世界而独自存在和发展演变。数字世界与物理世界的边界开始融合,互相转化、互相延伸、互相演进成为一个新的“有机体”。这个有机体成为广义上的“软件”,成为数字形式的“实体”。
曾经,我们通过GIS构建信息系统管理这个世界,通过模型和空间分析实现对世界的认知,通过地理设计(GeoDesign)实现对物理世界的改造。而现在,GIS将成为“赛博空间”(CyberSpace)的核心组成和数字载体。三维GIS将成为现实世界的“镜像”,把现实世界在数字世界重现。然后,在数字空间中可以进一步叠加任何现实世界中无法看见的要素,因此基于GIS的数字空间虽然源于现实但是却超逾了现实。譬如,当进行城市与区域规划、发展模拟、演变推演时,三维GIS成为“城市”这个有机体的一个组成部分,然后增强现实技术再把设计的信息叠加到现实世界,从而让我们“看见未来”。(下图:世界著名旅游城市桂林市使用SuperMap的三维GIS技术进行新开发区的规划和景观模拟。)
过去的二十多年中,GIS推动的“数字化世界”帮助我们更好地了解、研究和管理地理空间,并促进了产生新的认知,促进“世界”向更可持续的方向发展。而未来,基于时空数据的信息世界将逐步开始独立发展,并与物理世界融为一体,我们不仅通过GIS管理物理世界,还通过GIS管理信息世界本身并融合和进行自我演进,这将远远超出传统的GeoProcessing、GeoModeling、GeoDesign的范畴,从而让GIS进入一个全新的发展阶段,而GIS也将成为未来“智慧世界”、“智慧城市”的支撑平台。
数字世界将成为现实世界的不可分割的组成部分,二元世界也将在未来开始合二为一。
可以说,未来的GIS也将造就我们,因为我们所见到的世界是GIS所呈现出来的世界。
二、世界正被软件定义
“书中自有黄金屋”这一醒世名言已不再完全正确,因为数字媒体和网络已经席卷了整个世界。软件作为数字世界的基石,已经取代了书籍,成为了人类智慧和经验积累的最佳形式。
软件在过去的二十年中是如何改变这个世界的呢?计算机最初是作为“硬件”而出现的,而现在计算机的体系结构已经标准化,并通过软件来实现统一控制。计算机早已成为了“万能设备”,进入生活、工作、生产等各个领域,里面安装的软件往往超过硬件价格的数十倍、甚至数万倍以上。
现在,通过虚拟化技术,一台计算机可以像真正的“软件”一样被产生、管理和运行,几分钟之内即可创建一台新的“计算机”,能够执行传统“计算机”的所有功能,还可以通过一个U盘将其复制到别处去快速投入运行。这一趋势已经席卷了手机行业,传统的“电话”已经被通用的“智能手机”所取代,里面的功能已经完全被软件所取代。事实上,最新的手机只有很少的物理按键执行基本的操作,而里面的功能完全由软件所驱动。(下图:虚拟化计算系统的基本体系结构。)
虚拟存储可以认为是基于物理磁盘的存储硬件被软件化的系统,可以通过块存储、列存储、对象存储等多种方式来访问所存放的内容而无需再关心具体的磁盘的介质、格式,也可以通过软件模拟出多种传统的访问接口实现与传统软硬件的兼容,可以在多个逻辑存储系统之间进行数据的迁移和管理。存储现在已经与磁盘无关,只跟所要处理的内容有关,数据离用户的距离变得越来越近。
软件定义网络(SDN,Software Defined Network),将网络的应用逻辑从物理运行设施中抽象出来,从而让软件之间的连接通过逻辑层进行,让网络基础设施可以更为灵活地部署,将改变这个世界的连接的模式。未来改变系统的连接将不再需要对所有硬件进行调整,换句话说,交换机已经是一个“软件”,可以通过软件被“定义”出来。
2015年被炒得火热的Apple Watch,其表盘可以随时改变为想要的风格,完全颠覆了以前人们对“手表”的概念。在智能手机上装一个“手电筒”的小软件也可以顷刻就将手机变为一个手电筒进行使用。而当年高大上的录音机呢?恐怕很多人都已经忘记了它最初的模样。以前地理工作中必不可少的罗盘早已被电子罗盘和软件所取代。
可以预见,未来将会有更多的“硬件”被“软件化”,而传统的“硬件”将只会留存在博物馆中。
除了这些信息化的智能设备外,将智能部件植入生物体并相互增强的技术理论和方法被称为Cyborg(赛博格,Cybernetic Organism)。Cyborg是能够“自我调节的人机系统”(self-regulating man-machine system),它既拥有机械装置运作精确、寿命长久的特点,也具备人类的一切特质,比如感觉、感情以及思维。基于Cyborg技术的生物芯片将软件与机械、电子、生物完全融为一体,从而创建出前所未有的特殊能力。(左图:机械手与肌肉和神经控制融为一体。)
智能设备的定义主要包括外观、电路、软件三个部分,相当于人的肢体、神经和大脑。软件和电路的灵活制作已经不是问题,而最近两年发展得如火如荼的3D打印技术可以快速创建外壳和物理原型,打通了“软件定义世界”的最后一关。现在,通过3D打印机、通用开发板和开源软件就可以容易地制作做出一个全新的智能设备。当然,做出实用而智能化的功能,其核心关键还在于软件的算法、控制逻辑和经验。(右图:可以制作电路板的3D打印机,通过KickStart.com众筹成功。)
在软件的世界里,重构变得前所未有的容易,从而让整个信息生态以加速度地向前发展。软件不仅定义了各种信息化的设备,软件本身也在被重新定义,软件工程方法在网络化开放协同和开源社区与云托管的两大力量的推动下,通过敏捷开发、持续集成的方式实现快速演进。比如,数万人正在通过网络去不断地改进Linux和Android系统,而这些人分布在全球各地、从未谋面。
通过GIS技术来定义山川河流等地理特征,其实早就在进行。至少在城市里,规划、国土、房管等城市管理职能部门已经开始大量地采用这一技术来改变传统的工作方式。现在,借助于最新的技术,通过三维GIS重构虚拟化的地理世界,实现实体世界的信息化复制,而独立存在的信息系统部分将与实体部分相互依赖、相互影响并最终成为一个完全融合的“新世界”。
GIS将是这个未来世界的载体,承担着管理世界、复制世界、定义世界、延伸世界的职责。下图示范了通过3D打印技术将建筑垃圾转化为“油墨”进行新建筑的“打印”,实现城市自我循环式可持续发展。
从这个意义上说,“三维GIS”不是简单的可视化,而将衍生出一个全新的产业链,成为创新之源。新的数据采集技术,从“摇篮到坟墓”的全生命期运营模式,高维度、高动态的时空分析方法,自然用户界面的交互方式,新型的存储体系、应用系统等都将应运而生。然而,这一产业链如此之长,技术难度如此之大,无异于建造一座“巴别塔”,超过任何一家企业、联盟甚至一个国家的独立完成的能力。因此,地理空间信息领域的广泛合作,跨越国界、语言、肤色、种族的合作显得前所未有的重要和迫切。
在三维GIS时代,“地球村”这个概念变得更加真实,而且触手可及(下图:通过Hololens虚拟现实增强眼镜将数字地球重现在任何地方)。通过GIS实现真正的“软件定义世界”,也许在不久的将来就会成为现实。当然,考虑到现实世界是漫长的历史所形成,自然规律还远远没有人类被掌握,失败的“地理设计”案例影响深远,主观臆断的“设计”必然失败,因此服从自然规律仍然是必须遵循的法则。
三、高效计算催生智能设备
从目前的技术发展阶段来看,任何人工的“智能体”都离不开计算,即嵌入式计算系统的支撑。尽管工业上的MCU(微控制器)器件已经发展多年,但大部分的计算功能都比较弱,缺乏灵活的通用计算核心和通用的互联网组网能力,因而无法承载大量的数据存储、运算等智能操作,由于存在协同能力欠缺、安全性差、编程能力低、成本高昂等问题而难以适应现代的智能化设备的需求。不过,这一切随着ARM和各种低功耗MCU的飞速发展而正在发生巨大改变。
2005年诞生于意大利的Arduino是第一个基于MCU做出的通用电子平台,是创客(Maker)的必备工具(左图:Arduino的经典作品UNO开发板,可以快速插接多种扩展模块,如空气质量传感器等)。Arduino系统包括多种可堆叠的开源的电路板、简单的IDE和丰富的支持库,可以让软件开发者以“编程”的方式创建各种电子系统,而做到这些事情在传统方式需要购买昂贵的开发平台、掌握专业的开发技能、还要对硬件非常精通才能完成。
Arduino的出现犹如打开了“潘朵拉宝盒”,各种新型设备和创意产品不断涌现,已经成为电子教育、创客空间的必备平台,而且开始进入各种专业研发机构的实验室。Arduino大量用到艺术电子作品、创意装置、穿戴设备之中,是美国MakeFair大会展示场的常客,也是现在炒得火热的物联网开发的启蒙平台和开山鼻祖。Arduino主要采用Atmel单片机做主控芯片,可以进行实时控制、逻辑编程、简单计算等操作,使用C语言就可以快速开发一个控制逻辑器并立即投入运行,市面上有大量的扩展模块和开源、免费的驱动软件库,还可以通过内置接口扩展IP网络,让设备接入互联网。
ARM是专门面向低功耗、高并发、移动式应用的CPU芯片,采用了完全不同于以往的X86、SPARC、POWER、MIPS的芯片架构体系和计算指令集,专注近年来大量移动设备市场爆发的契机,发展非常迅猛,堪称奇迹。现在ARM的功能已经相当强大,不仅用于手机、平板电脑、车载设备,而且也开始用于桌面和服务器系统。ARM与老牌的Intel、AMD等厂商的封闭体系完全不同,采用技术授权第三方生产的方式进行市场推广,国外的苹果、高通、三星都是全球主要的ARM芯片厂商,国内的珠海全志、华为海思、国防科大的飞腾也都是自有品牌的ARM芯片,已开始进入量产和应用。
由于ARM采用比较开放的技术,可以支持多种操作系统(Linux系列、iOS、Windows 8/10),而基于Linux的嵌入式操作系统在上面运行已经非常成熟,具有基于gcc的完善的开发工具链,而且是完全开源和免费的。ARM公司还发起了Linaro组织,专门针对Linux(包括Android)进行优化版本和参考方案的开发,中国的华为公司是Linaro组织的核心成员,中兴通讯也是其成员之一。(左图:华为基于其海思芯片生产的ARM64参考板。)
移动和嵌入式设备是近几年来IT增长最快的领域,面对ARM的快速冲击,Intel终于开始醒悟,也推出了Quark众核芯片和Galieo等开发套件,但是除了兼容X86的优势之外,其价格和功耗没有任何竞争力,对市场影响目前还比较小。
在Arduino和ARM等新型硬件和开源软件体系的推动下,软硬件的界限已经模糊,新型智能设备的时代已经快速开启。2015年在中国也开始出现了智能设备井喷的局面,而大量的投资已经进入这个领域,各种更为先进、炫酷的设备还在研发之中。国外的苹果手表、谷歌眼镜、谷歌机器狗、无人驾驶车、Oculus虚拟现实头盔、Hololens增强现实眼镜等等可谓出尽了风头,而这一切只不过才刚刚开始。
移动设备、嵌入式设备催生了一个快速增长的低功耗CPU应用领域新兴市场。GIS软件已经开始大量进入移动和嵌入式设备,比如超图软件推出的iMobile和iClient系列产品都可以在基于ARM的iOS设备和Android设备上运行,iObjects早就支持在Linux上运行,而最新的版本将直接支持基于ARM的Linux操作系统,从而可以在基于ARM的低功耗桌面系统运行,让用户获得便携性强、使用方便、续航时间超长等优秀的使用体验,iServer也将支持基于64位的ARM服务器,更是提高并发能力、降低能耗、提高部署密度、降低运维成本的先锋。
四、互联网中的世界万物
新的软硬件体系对GIS系统的运行提出了新的需求,也极大地拓展了GIS的应用范围。一方面,GIS技术需要适应各种低功耗设备的运行环境和开发工具链,将GIS的各种能力带到各种移动式、嵌入式设备之中;另一方面,GIS需要对各种设备及其连接、采集的信息进行有效的管理和运维分析。由于各种设备的复杂性和用途的多样性,实现万物互联并非一件容易的事情,需要在物理层、链路层、数据层、内容层、语义层等各个层面实现标准化的协议。所幸的是,经过各行业的共同努力,这一情况已经大有改观。(下图:通过SuperMap三维GIS软件创建的虚拟空间和物联网技术进行炼油厂的生产管理。)
因为技术发展的局限性,网络链接曾经有很多种技术方案,给大型网络式自动化系统的建设和维护管理带来极大的困难。而现在,有线链接基本上统一到了基于IP的以太网技术架构,而无线网络在过去的几年中可谓突飞猛进,WiFi、蓝牙和ZigBee已经占有了自己特定的市场,尤其是WiFi,基本上处于绝对的优势地位,尽管在用于物联网领域内其功耗和连接性还有待于进一步改进。
从软件层面来看,过去的企业级系统中,主要采用C/S(客户/服务器)或者B/S(浏览器/服务器)的架构,系统是完全中心式的结构。随着IPv6和网络带宽的飞速发展,尤其是移动终端的网络链接能力和计算能力的快速提升,移动终端都已经具备了以前的服务器级的处理能力,新型的P2P网路结构将会得到更为广泛的使用,这将从根本上改变目前的软件体系架构以及由其构成的应用系统的部署模式。
在新的对等网络服务结构中,消息总线毫无疑问是其核心,其软件生态系的发展已经相当丰富。消息总线不仅承担系统监控、调度等运维职责,还可以直接传输数据到任何的终端,非常容易适应不同的网络结构尤其是移动网络环境,实现基于内容的网络路由,可以在已有的IP网络基础设施之上实现P2P的访问结构,以及用于大规模跨区域的并行任务处理调度等等。消息总线具有群发、分解、过滤、转发、增强等多种灵活的应用模式,通过与GIS集成和业务的融合将实现完全新型的高效的应用系统平台。
消息总线已将网络连接虚拟化,抽象出了基于“消息”的通讯体制,而无需再去关心网络底层的差异。2014年AMQP、MQTT相继成为国际标准以来,消息总线应用正得到快速的普及,将成为继HTTP之后最为重要的网络连接协议。Amazon 和Azure都已经推出基于云计算的消息总线服务,IBM的消息总线支持历来是其核心产品(MQTT即由IBM英国分公司提出和拟定),VMWare已将AMQP的支撑服务器软件RabbitMQ收入麾下,国内的腾讯也启动了基于微信的硬件生态系统的建设和推广,而智慧建筑、智慧交通、智慧农业、智慧工业、智慧环保等专业应用领域更是将基于消息总线架构的物联网应用的发展推向一个新的阶段。
LiveGeography将是三维GIS的更高级形式,可以通过物联网等技术与现实世界实时通联,实现信息的动态获取、双向反馈和智能控制。“Live”的现实世界与“Live”的数字世界相互联通,犹如电影Avatar(《阿凡达》)里的克隆人,相互复制、相互关联,数字世界与现实世界成为交替进化的同一主体。
当然,三维GIS也好、数字空间也好,还是LiveGeography也好,都只是信息和系统,还需要有人类的知识和智慧,才能成为一个真正的“活”的世界。物联网也并不是简单地给物体赋予联网的能力,而是至少具有“可思考”的计算能力。物联网中的万物皆通过网络连接改变了交互的方式,并正在改变物体本身。相互连接的智能物体未来将成为“超级智能体”,并通过互联网络进行重组和演化,而“人”也作为其中的一员参与其进化过程。
五、智能网络构成的大脑
人工智能是否会超越人类?这是2015年科技界争论的一个热门话题。尽管计算机的认知能力目前仍然无法与人脑相比(尤其是那些天才),但网络搜索替代了人的记忆、机器人取代了工人、信息交换改变了物流已经是不容置疑的事实。可以肯定的是,未来人工智能将超过大部分人,并且将进一步改变社会和经济结构。
如果将“智慧世界”比喻为人的话,可以说现在四肢已经具备,神经正在延伸,而大脑的发育正处于萌芽阶段。大脑的发育有待于认知模型和数据处理的理论和方法的进步,近年来在“大数据”这一概念的推动下也取得了不少的成果。
开源软件由于其开源、免费的特点,在大数据技术、人工智能等研究工作中具有重要的影响。R、Hadoop、Spark、Scala、OpenCV、OpenGL、OpenCL、OpenNI等著名的开源软件对相关领域的发展起到了极为重要的推动作用。而通过互联网的全球协作,这些软件本身也取得了快速的进步,形成了良性循环的生态系统。
迎接智慧的世界,GIS自然不可或缺。“机器地图”是李德毅院士提出的新型时空数据的组织模型,为智能机器的空间智能提供技术支撑。通过三维数字空间构建新型时空关系数据结构,进行数字空间的动态重建与逻辑运算,以及融入物理计算、机器视觉等能力,再赋予可扩展的编程能力,将为无人驾驶、无人机、智能交通等应用提供有效的空间智能技术。也许,麻省理工的ROS(Robot Operating System)和微软的机器人设计平台不久就会整合基于新型GIS的空间智能技术进入其中,给机器人提供上天入地的更强大能力。
一个好消息是,超图软件将多年研发的GIS核心库即将作为C++组件对外提供使用,对追求高效率和底层扩展的研究者来说又多了一个非常强大的工具;而基于该C++组件库的Python脚本也将释放出来,可以与Python的丰富的支持库一起运作,不断地探索无限的可能。
小结
理解地球的运行规律、发现和阐述我们生活的这个世界的宏观法则曾经是GIS的重要使命,但GIS本身正在与飞速发展的信息技术发生基因融合,并试图成为这个世界的不可分割的一部分。
我们将面临一个前所未有的而且时刻发生巨变的新世界,这个世界由软件所驱动,使用GIS来进行管理,由微芯片和人工智能所支撑,将现实世界与信息世界连接为一体,通过相互联网而具有超级智能并开始具有自我演进的能力。
GIS已经消失,并在另一个层面以更强大的姿态出现,以至于我们都难以认出她的本来面目,一个不一样的GIS创新时代已经来临。掌握这一切的人成为她的主人,定义这个世界,而服从它的将成为奴仆,在世界中被定义。
GIS不仅仅是一个工具,它关乎未来。
(本文作者:王尔琪 北京超图软件股份有限公司-http://www.supermap.com.cn,2015.08)