大泽

工程师四十难不惑,越学越迷惑

0
阅读(1744)

Original:

   The uncertainty principle

  --The Article is quoted from Brian Fuller''s Blog

 

  In his dotage, my old man (a chemistry Ph.D) used to say, as he slowly stirred his martini with a crooked finger, “the more we know, the less we know.”

  As systems become increasingly complex because we overcome old technological hurdles, they also become more unpredictable.

  One recent example is report that NHTSA and the NASA Engineering and Safety Center (NESC) published regarding unintended acceleration of Toyota automobiles. Michael Barr has an excellent report on it. In short, NASA said it couldn’t rule in but couldn’t rule out software problems as a culprit in the unintended acceleration problem.

  Dave Kleidermacher blogged about making smart phones trustworthy platforms. Is it just me or is it complete lunacy to run a national TV advertising campaign touting the wonders of starting your car remotely with a cell phone? Your teenage daughter may appreciate the gesture but so too do legions of black hats. (See Kleidermacher’s earlier post on smart phones and security.

  The New York Times had a pair of posts this week about hacking a Times Square video screen. The first hacking attempt turned out to be a hoax but a really popular YouTube video; the second a real attempt that came up a bit short.

  And Stanford, via its Facebook page, has described how engineers are addressing the “aeroelastic flutter” problem, a complicated, unpredictable phenomenon. (P.S. don‘t watch this video if you happen to be on a plane with WiFi)。

  What’s ahead?

  The more complex the software (and hardware), the harder it is to model and find corner cases. We seem to be falling behind in assessing the known unknowns and we’re completely in the dark about how to approach unknown unknowns.

  We race up the abstraction ladder to try to keep our arms around design complexity, but that creates other issues. I attended the annual meeting of college engineering departments recently in Phoenix and one questioner from industry stood before a panel of academics shaking his head. It’s great to turn out really smart kids who know theory and can deal with abstraction, but if they struggle with basic engineering concepts, companies need to train (or retrain, perhaps) them.

  How are we going to get better at anticipating the unknown unknowns? It is formal methods? It is impossible?

 

一位已退休的长辈(他可是一位化学博士)经常告诫我,“了解得越多,所知越有限”(the more we know, the less we know)。

  由于我们不断地克服以往的一些技术障碍,整个系统正变得越来越复杂,同时也更加的不可预测。

  ·最近的一个例子是来自美国国道交通安全管理局(NHTSA)和美国太空总署(NASA)工程与安全中心(NESC)针对丰田(Toyota)汽车突然加速事件的安全性调查报告。对此,EETimes记者Michael Barr先前已发表过详实的报导。简单来说,NASA表示无法确认但也不排除软件问题是造成丰田汽车不正常加速的罪魁祸首。

  ·Green Hills公司技术长Dave Kleidermacher曾经在博客上讨论使智能手机更安全可靠的平台。透过全国性电视广告来宣传以手机远距离发动汽车是如何地不可思议──这难道是只有我一个人还是大家都觉得一整个方式十分愚蠢呢?不过,十多岁的青少年或是像美国黑帽乐队(Black Hat)才会欣赏这种方式吧!

  ·纽约时报(The New York Times)先前发布过有关骇客入侵时代广场(TimesSquare)电子看板的讯息。第一则骇客的行为最后被发现只是一种为电影宣传的手法──实际上只是网路上流传的一则YouTube短片,而第二则可是真正以手机控制了这些电视屏幕,只不过时间有点短罢了。

  ·史丹佛大学大学在其Facebook页面上描述了工程师们如何解决复杂且无法预测的“气动弹性颤振”(aeroelastic flutter)问题。(小心!如果你刚好在飞机上用WiFi看这则文章的话,千万别点选观看这则视讯短片。)

 

  何去何从?

 

  软件(和硬件)越复杂,就越难为其定型或找到极端案例(corner case)。我们对于已知的“未知”似乎就已经难以进行评估了,至于如何预测不可知的未知,当然就更加完全一无所知。

  我们只知道竞相攀爬莫测高深的“抽象阶梯”(abstraction ladder),以期拥抱设计复杂性,但却也制造了不少问题。我最近参加了在凤凰城(Phoenix,AZ)所举行的大学工程系年会,会中有一位来自业界的提问人在一群学术界人士为主的座谈上直摇头──能够培养出了解理论又会处理抽象问题的真正聪明学生固然不错,但如果他们缺乏工程学的基本概念,将来进入业界后,公司还是必须重新训练或再教育他们。

  在预测不可知的未知世界时,我们如何做得更好?有一种正规的方法可循吗?难道不可能吗?