版权归原作者所有,如有侵权,请联系我们

[科普中国]-5张玩家地图,1000多万个游戏角色,谁才是这个虚拟城市里的头号大BOSS?| 罗训

我是科学家
原创

最刺激的VR游戏是什么?生化危机?节奏光剑?那你大概没有听说过虚拟城市。明明是在虚拟的世界里完成的操作,却能在真实世界中影响数百万人的生活,这是怎么做到的?天津理工大学罗训教授,带你踏上虚拟城市的头号玩家之旅。

我是一名做计算机科学的研究者,我研究的方向是“虚拟现实”,也就是VR。我的母亲和她的朋友们经常给我下达一些计算机方面非常困难的研究问题,比如说键盘和鼠标是从京东买好还是从淘宝买好?比如说office到底应该是装正版的还是应该装盗版的?这些年来我一直在回答这些问题。

这些问题真让人头大……

但是2016年的时候,我妈妈有一天忽然问了我一个问题,让我觉得自己的春天来了。她问我说:“罗训,这些年你做的到底是VR还是AR?”这个技术现在已经连我妈妈都知道了,真的太棒了,我感觉这个时代属于我了。

我博士读了六年,之后工作了十多年,这么多年我一直在做虚拟现实。虚拟现实并不是一个很新的学科,上世纪60年代的时候,虚拟现实就已经在实验室产生了;90年代的时候,就已经有说“我已经没有自己的身体”这样的说法了。

尽管我的研究方向一直是虚拟现实,但是我做的项目是在不断演进的。今天我想给大家介绍的一个项目,就是我和我的团队最近正在做的一件事情,我们对它非常有兴趣,我们也充满了激情,这个项目叫做 “数字仿真城市” 。

现在有一款非常火的玩具套件,小朋友们特别爱玩,就是小火车的游戏。小火车的套件里有很多积木,有商场,有农场,有学校,孩子们可以自由地把这些积木拿来组合,用轨道把这些社区连起来,让小火车在里面跑,非常好玩。它的创意来自英国的一个动画片,叫做《托马斯和他的朋友们》。

动画片《托马斯和他的朋友们》。图片来源:腾讯视频

在这部动画片里,小火车们居住的地方叫多多岛,是一个宁静有序的小城市。我的儿子特别喜欢这部动画片,也特别爱用小火车玩具,搭建多多岛。多多岛有多大呢?大概100个居民,五十辆小火车,就这样规模的城市,我儿子要一整个下午什么都不干才能搭出来。当然,你搭积木肯定比我儿子快多了,因为他只有六岁,这周才刚刚成为一名小学生。

可是,如果给你一个挑战,让你用积木来建像北京这样规模的一座城市,这个事情可就不是那么容易了。北京有多大呢?北京有2200万常住人口,有600万辆车。如果我们要把北京这样的城市给你积木块让你搭出来,毫不夸张地说,可能要花费你一辈子的时间。而且你还要考虑到,万一你不小心把积木碰倒了,这个怎么办?

我来做这件事情要多长时间呢?在我们现在的实验室团队里头,我们做这个事情大概不到八个小时。 我们在一天的时间里头,可以搭出像北京这么一座大的城市。 所以我也就可以自豪地说,我是“虚拟城市里面的头号玩家”。不但我自己和我们的实验室能够做到这个事情,其实我想把搭建出来的数字城市拿出来让大家都来用,让大家都来玩这个数字城市构造这样的游戏。

我们为什么要构建这个数字城市呢?仅仅是为了玩吗?

全世界有70%的人住在城市中,但城市的面积只占陆地面积的3%不到,70%的人口居住在不到3%的陆地上,而且据说每周还以三百万人的速度涌入到大大小小的城市。拥挤的交通、污染的空气、糟糕的规划成为了很多大城市的常态。我们经常也想说我们怎么来改变这样的城市。我们做的虚拟城市实际上就是让大家可以用玩游戏的方法来做城市的规划。当然这当中有很多很多挑战。

交通拥挤是大城市的常态。图片来源:pexels

数字城市对我们的帮助是明显的。

第一它能够让更多的人广泛地参与到城市的变化和演进当中来。 每一个对解决城市问题有热情的居民,或者专业的城市规划者都可以在数字世界中尝试,就像在多多岛上改变铁轨方向或者增加减少建筑的孩子们一样。

第二就是多元性。 我们所在的城市应该怎么样,男生和女生可能有不一样的看法,男生可能希望有更多的足球场和运动的设施,可能希望道路上的限速更高一点,让自己开车的时候能享受到驾驶的快乐;而女生可能会想为什么购物街离我就这么远,或者为什么我想去吃的那家韩国餐馆要坐这么久的地铁才能达到?

一个城市的规划者和一个城市的使用者想法也是不一样的,城市规划者想的可能更多的是宏观,而城市使用者想的是微观。人类社会的优势在于可以集中很多很多人的智慧和力量,从不同的角度来解决一个问题,让这个问题得到最全面、利益最大化地解决。

第三个能避免试错成本。 城市的规模是很大的,在城市里面修一个公园、修一个新的商业区、建一条新的道路,花费的成本是非常高的。再精心的规划也难以完全避免纰漏,世界上没有完美的设计,所以试错是一个必然的过程。但是在真实世界中试错却可能付出很高的代价。我这里有两件真事儿和大家分享一下。

拥堵是城市中都有的普遍现象,科学家们做了很多尝试来治理城市拥堵。比如在武汉就进行了这样的尝试。科学家们发现上班和下班的时候,大家进城和出城的方向是不一样的。科学家们最后设想出一个方案, 就是根据上下班不同时间的车流方向不同,在城市里划定潮汐车道。 简单的说就是不同时间,可以通行的方向不一样的车道,并且专门改造了一种车辆来铺设潮汐车道,花了很多的精力,花了很多的钱。大家猜结果怎么样?改进非常小,后来这个事情就取消了——这些铺设车辆被撤回,潮汐的车道被取消。付出了很大的成本,结果发现没有改进。

另外一个例子是济南,济南也是一个省会级城市,拥堵同样很严重,科学家们换了一种方法,根据道路上的车辆拥堵情况,动态地调整交通路口信号等的时长,结果效果特别明显。

根据上下班不同时间的车流方向不同,在城市里划定潮汐车道。

其实科学的过程本来就是一个提出假设、验证假设,是不断试错的过程。但是当我们在城市里来做验证的时候,试错成本是非常高的。 如果我们能够在数字的城市里面试错,那么这些试错成本就可以大大降低。 这也是促进我们去做数字城市的另一个动机。

当然,想法总是很美好的,但是要攀登的高峰和要经历的道路往往是很曲折的。要解决数字城市的建设,不但要有美好的愿望和强大的内心,更需要有超人的能力。

传统的建模方法需要大量人工,建造一座虚拟城市的工作量,并不比建造一座真实的城市少多少。而且建立的城市哪怕是要做一点点的修改都非常麻烦。此外,城市不仅仅包括静态的道路和建筑,也包括动态的人流、车辆和社会活动,这些在数字城市中也需要进行模拟重现。最后,这些动态还得靠谱,也就是模拟结果的大致规律和真实的城市相同,只有这样当我们用数字城市去做模拟工作的时候,才能真正有助于现实的城市。

还好我们有计算机,和使用计算机的虚拟现实技术。VR的进展,可以一一解决这些挑战问题。

在孩子们玩小火车玩具的时候怎么做呢,第一,准备积木块。第二,把积木块搭成不同的功能的社区。第三,在社区当中放上小火车让它动起来。建立数字城市的过程很像是用小火车玩具套件搭积木。

数字城市的积木块就是各种风格的建筑物的数字模型,我们可以用无人机绕着一座建筑物拍很多张照片,然后用计算机把这些照片组合成三维模型,一个积木块就出来了。这个视频就是我们用这种方法重建的天津理工大学图书馆。这只是我们做的上百上千块积木之一。

有了很多这样的积木块之后,就可以按一定方式把他们组合起来变成街区,比如北京,我们知道它是一环围一环的,就可以用这种叫做“环形路扩张技术”的方式来生成街区,这样生成的街区也是一环一环的。这样的城市就具备了仿真城市的雏形。

光有了这个街区和积木块,其实还不够,还要把积木块放到街区里面去,要把很多积木块组合起来,让不同的街区具有不同的功能。在做这个功能的时候,我们还不能乱放。比如说如果搭出来一座北京城,结果在故宫的位置,你发现是三里屯的结构,那这样的城市建设出来是不行的。

这个时候就用到一个超级玩家的超级道具——社交网络的大数据了。 你在发朋友圈,晒美食,晒狗粮的时候,有一些单身狗在注视着你,其实还有一些计算机科学的单身狗也在注视着你。他除了被虐以外,他还在想一个想法,你这个数据对我有啥用。然后他默默地写一行程序,把这个数据扒下来,你这一行数据来讲可能是虐了他,但是100万人这样的数据对计算机科学工作者可不是这样的,它就有规律了,它可以让我们知道哪些街区是干啥的,告诉我们怎么把这些基木块搭进去。

你在发朋友圈,晒美食,晒狗粮的时候,一些计算机科学的单身狗也在注视着你,然后默默地写一行程序,把这个数据扒下来。图片来源:pixabay

另外,一些公开的数据库,例如城市里面的停车场、医院、学校等的黄页地址,也可以用计算机转换到地图上的位置。这样我们就能搭成不同的街区。

这样建成的城市是静态的,想让它“活”起来,还要有人。这个时候我们就用到另外一种数据,叫做 “时空数据” 。

“时空数据”指的是数据本身和特定的时间和特定的位置是相关的,听起来比较抽象,给大家举两个最鲜活的时空数据的例子,一个是网约车的数据,一个是出租车的数据。网约车和出租车占了咱们这个城市里面运行的车辆的相当大的部分,用它们来做抽样,我们基本上可以复原出城市里面的交通是什么样的,就能猜出城市里面的车在怎么动,以及能够大致猜出城市里面的人在怎么动。这样一来我们就能生成动态的城市。

下面这个视频是国外的学者做的一些初步的研究,他们做了一个比较小的城市,但是可以看到这样小的城市里已经具有了其模块的多元性,也具有了组合出来的视觉和功能上的近似性,我们能在这里看到不同的停止的或者运行的车辆。

科学家做出来的虚拟城市。

那么我们建设的城市只是用来看的吗?其实不是,我们可以做很多有意义的事情。

比如说在拉美的城市里,棚户区是一种广泛的存在。棚户区是由于在城市扩张的过程中,人口数量急剧增加,而基础设施缺乏规划,或者是有规划但建设速度跟不上造成的。

这样的棚户区造成了很多城市问题,亟需改造,但棚户区的改造不仅仅是拆除或者是重建这么简单,需要为好几个问题找到答案。比如棚户区里的居民该怎么办?他们都在从事哪些职业,平时通勤去城市的哪些地方?棚户区改造后,地块是用作商业区合适,还是作为住宅区合适?如果改造为商业区,应该是哪一种类型?如果只是简单鲁莽地做出决定,不仅不能解决现有的问题,还可能带来新的问题。

中国在治理棚户区方面已经积累了大量的经验和教训,也摸索出来了很多成熟的方式方法。可不可以把这些经验和方法用到拉美城市中呢?这个时候, 如果我们把拉美地区的一座大城市,构建为数字城市。那么,就可以把中国类似城市的棚户治理模式,在数字城市中进行仿真和尝试。 充分考虑各种各样可能的结果,最大程度地综合专业人士的观点,制定出最好的治理方案。这是非常有意义的尝试,在一带一路国家中,可以这样做的城市还有很多很多。

数字仿真城市可以帮助城市的管理者,解决当下城市中的问题。它还可以帮助城市的使用者,来探索在城市中应用未来科技的方式。

自动驾驶是当下的一个热词,自动驾驶技术中最核心的,是计算机对海量环境感知数据的处理算法。这些感知数据包括摄像头数据、雷达数据等等。对于算法单元来说,只要能获得城市级的数据,并不需要车辆真的上路,在实验室中就可以完成数十亿次出行,验证在不同情形下,油门、车速、变道等控制算法的正确性。它的好处是显而易见的。首先,它能够减少排放,更重要的是它很安全,我们说哪怕是100万次实验当中撞到一次人,其实在几十亿次这种危险性都是很大的,而如果我们能够用仿真的城市来做这样,就会好很多。

Google的自动驾驶汽车。

各种游戏都有自己的玩家地图。作为一个虚拟城市的头号玩家,我的地图特别特别大,游戏里的角色也特别特别多。我们最近重建了五个数字的城市,有中国的两座,成都和西安,还有北美的三座。我们目前正在建设五座南美地区的城市,包括哥伦比亚的三座,波哥大、麦德林和卡利,还有包括厄尔多尔的两座,基多和瓜亚基尔。这些城市人口加起一共有1690万。

我们团队的愿景是为了在第一步让1690万的人们,他们的城市生活有三分钟的体验,可以变得更好,那么1690万人的三分钟加起来就是5070万分钟,大概相当于100年,这也是一个计算机科学家能够活得最长的寿命。如果我们的小小愿景如果能实现,这一生也就很满足了。

我喜欢虚拟现实,它能让我们去体验和感受当下的世界,但更重要的是可以在虚拟现实里创造和想象未来的世界 。这也就是作为一个计算机科学家所不知疲倦,能够坚持自己所做的这个事情的一个动力和理由。我相信我们今天想要的将是我们城市的未来,愿意和你分享。

谢谢大家的聆听。

演讲嘉宾罗训:《虚拟城市的头号玩家》