“MATLAB和Simulink是灵感与创新的工具”在MathWorks的官网上,他们这样定义MATLAB和Simulink。自问世以来,这两款工具就被广大开发者所接受,被应用在诸多的领域。在中国合肥结束的第19届世界机器人世界杯上,MATLAB和Simulink亦成为参赛者的主要工具,在仿真、建模等方面发挥了重要的作用。为了更深入地了解这两款工具,CSDN在机器人世界杯总决赛的现场采访了MathWorks北美教育科技市场部程邺博士,除了产品本身,也畅谈了其对机器人的理解。
CSDN:在MATLAB和Simulink的用户中,学生占有很大的比例,你们如何根据学生的需求来更新MATLAB 和Simulink两个平台以及相关工具箱的功能?
程邺: MathWorks一向很重视教育市场。我们积极参与各种类似于机器人世界杯这种学生大赛,一方面是为了帮助学生更好的利用我们的工具来实现他们的梦想,另一方面是为了在第一现场和用户沟通,了解业界形势以及他们的应用需求。除了给参赛团队提供免费的软件以外,我们的工程师也和参赛团队有非常紧密的合作,观察了解他们的实际操作,为这些学生和老师提供技术指导,并且听取他们的建议反馈,及时传达给我们的研发部门。根据用户需要以及业界发展,来指引未来产品的开发方向。
CSDN:现在MathWorks与中国学校的合作模式是什么?
程邺: 由于MathWorks产品多样性的特点,使我们在工业界和教育界都有极为广泛的应用。我们重视教育,其中的重要一点就是要成为连接工业界和教育界的桥梁:把工业界对于下一代工程师的能力需求传达到教育界;把教育界的科研发展方向传达到工业界。具体说来,比如,我们倡导基于项目的学习,将理论和实际结合起来。我们提倡对于学生科学计算以及建模能力的培养,通过大一到大四、基础课到专业课都加入对于计算和建模能力的训练,来培养更胜任的下一代工程师。全球前100名的大多数高校都购买了MATLAB校园级许可证的大规模授权。中国的一些高校也在开始实现大规模授权。这样,各院系的学生和老师都可以随时随地使用MATLAB。这样做有什么好处呢?你会发现很多你意想不到的专业也开始编程了,编程不再只限于理工科。比如艺术系,有些学生发现我们的软件在信号处理方面特别强并且容易上手,所以他们使用我们的软件来研究音乐声学。一些绘画及摄影专业的学生,利用MATLAB以及相关工具箱来进行图像处理来达到一些特殊效果。老师们会发现学生们使用MATLAB可以发挥无限可能的创造力。
CSDN:对于机器人开发而言,你认为中国和北美的开发者有哪些不同?
程邺: 我倒觉得中国和北美的用户没有太大的区别。其实做机器人的人分两种,一种是使用已经商业化的成熟平台,例如本次大赛标准平台组使用的NAO机器人,看上去已经很拟人化了。总体来说,这类开发者不会把主要时间用于机器人的设计上,而是更侧重于算法设计,机器人与机器人之间的沟通,机器人与人的互动,以及机器人在各种场合的应用。另一类的开发者注重于从零做起,就是在什么都没有的情况下,用各种传感器、微处理器、微控制器、摄像机、或动作捕捉系统等来设计制造机器人。这类开发者侧重于软件及硬件的结合、控制、以及代码生成。我认为MathWorks的产品在这两个方向都有很大的优势,而这两类用户在中国和北美都存在。现在中国是生产自动化机器人的最大的市场,在其他机器人领域也在飞速发展,MathWorks很希望能和中国的机器人开发者进行更密切的合作和交流。
CSDN:可以举一个例子说明MathWorks工具的实际应用吗?
程邺: 比如下面看到的机器人手臂,它的应用是工业焊接,目标是让末端的焊接枪沿着一定轨迹运动。这其实是一个相当复杂的动力学及控制问题。要想让手臂末端指向空间一点或者沿一轨迹运动,需要列出并解决很多很复杂的数学公式,每个关节的运动轨迹、速度、以及促使运动需要的力和力矩等都是要计算的未知量。没有计算机的帮助,靠手算是基本不可能的。MATLAB和Simulink是高级的计算和建模工具,可以大大节省设计、仿真、和跟硬件结合的时间。你可以看到在这个例子中,所有的部件、关节和约束等都是模块化的。用户可以直接选择一个SimMechanics工具箱自带的模块,比如定轴转动模块,设好其约束,机器人手臂的肩膀关节就做成了。用同样的方式很快便能组成整个机器人手臂的模型,并且模拟其运动,实时计算各关节需要的力矩。如果靠人自己推倒公式,或者用 C语言来从零开发,工作量将成几何倍增加,使用MATLAB和Simulink进行建模和仿真的方式则大大降低了研发成本和时间,这就是为什么工业界会采用这种标准流程。
CSDN:看起来很有趣。
程邺: 是的。再给你看一个和学生更相关的例子。这是一个LEGO机器人的仿真。这个机器人有两个并行的轮子,为了让它保持平衡需要有前后轻微的移动。你可能在海边或者公园见过这种电动平衡车(Segway),如果人骑的话,你会发现你在利用自己的感知来控制它的平衡。机器人也是一样,它配有一个角度仪,来感受自己和竖直位置的角度差异,从而判定轴编码器的转动方向来保持平衡。你现在看到的是在Simulink环境里面对于这个机器人的仿真。仿真往往适用于系统的前期设计和算法调试,并且仿真成本相对较低,流程时间短,不受实验环境和设备的限制。对于学生和初学者来说,还有一个好处是可以鼓励他们大胆尝试,因为不会损坏实际的硬件,可以随意尝试多种场景,来激发创新和培养解决问题的能力。
CSDN:这实际上跟游戏开发引擎有点类似。
程邺: 没错。尤其是对于大一学生或没有理工科背景的机器人开发者来说,他们会觉得仿真比较容易上手,在Simulink这样的环境里,设置一些简单的参数就能模拟出一些效果,会让初学者更有信心和兴趣。我还想强调的一点是,MATLAB和Simulink远远不只限仿真。你现在看到的这个Simulink的仿真模型,可以直接进行代码生成,下载到真正的LEGO机器人上运行。和硬件的结合以及自动代码生成一向是我们产品的优势之一,近几年来我们又推出了对于常见低成本硬件的免费支持包,比如Arduino、LEGO、Raspberry Pi等等,为了方便学生和广大创客和机器人开发者。在仿真环境里面测试好算法,调节好控制参数,然后一键点击,自动生成代码到相应的硬件平台上。你的算法就真的 “活”了。
CSDN:人的感知能力是非常微妙的,而机器则是通过参数的判断来实现,我们看到周围一些家居类的机器人,他们目前能达到的程度是什么?
程邺: 从某种程度上来说,人类就好像是很高级的机器人。比如你的手指上都是各种各样的关节和触觉,到机器手上,关节就大概对应了一系列电机,触觉也许就对应了电压传感器。比如抓起一个玻璃杯这样简单的小事,我们通常想都不用想。可是对于机器人来说,握的力小了,没有足够的摩擦力,杯子会滑落;握的力大了,又可能损坏玻璃杯。我们的下意识其实在及快速通过电信号将我们的感知传递给大脑,大脑再经过计算给各关节发出指令。机器人也是一样,但是要达到人类的感知和判断能力还是有一定距离的。一个是要提高传感器的精度和密度,采集大量的数据信息;一个是要完善人工智能的算法,做出 “聪明”的判断。大数据和人工智能也是 MathWorks当下非常重视的两个大发展方向。
CSDN:在你看来,阻碍机器人智能化发展的因素还包括哪些?
程邺: 虽然机器人的发展很快,但要达到科幻电影中的水平还是有很长的路要走的。机器人在很多方面是要大大强于人类的,比如瞬间算出数十万个数的乘法,高速从一点运动到另一点,记住国际象棋的所有可能解法等。可是,人类天生就有自我学习的能力,可以不断从经验中获取知识,来以后做更正确的决策。比如你告诉一个儿童什么是苹果,之后他又看到了几次苹果,虽然每次都不一样,但他肯定知道这是苹果。但这对于机器来说则很困难,你需要用成千上万的图像来让它学习。再一方面比如说直立行走的能力,大多数的人都不用想就可以做,那是因为人类大脑在时时刻刻利用身体的各种感知器官来调整各关节的运动,以达到平衡和行走的目的。要想把这种非常高级的感知和控制实现在机器人身上,是有很多技术难关的。但是你可以看到你周围大赛上的类人组机器人,它们已经有很惊人的行走和平衡能力了。机器人世界杯的目标是在 2050年之前,让机器人队可以战胜人类的世界杯冠军。还有35年的时间,我个人对这一目标仍有很大的期望。我也希望 MathWorks的产品和工程师们可以进一步推进机器人行业的发展,加快人类走向这一目标的步伐。
在与程邺交流的过程中得知,足球运动是全面调动机器人各个感官最均衡的运动。因此机器人世界杯每年都吸引着世界上成百上千的机器人爱好者参与。虽然机器人与人之间还有一段距离,但从目前来看,机器人的发展的确很迅速,每年的机器人世界杯,参赛机器人在速度、反应、精确度等方面的进步都令人欣喜。团队间与MathWorks更密切的合作,将会给我们带来更多惊喜。
机器人时代,未来,已来。