虚拟空间里的高峰(程不时)
[2010-07-08 16:56:02]

    程不时博客链接http://chengbushi.blog.china.com



优化设计意味着登上设计域的峰顶

    (按:两个月前我在博客中刊出“锻造腾飞的翅膀”的文章——2010.5.6.博客,作为庆祝清华百年校庆的回忆。在文章中我曾谈到由于航空技术在20世纪后半个世纪巨大的发展,因此我在60年的工作中,除实际设计新的飞机型号(即硬件的研制)之外,还不得不从事软件(即思维概念上,工作方法上)的建设,至少参加过四项重大知识工程的拓展战役。在现在这篇博文里,谨对我在第四个战役“计算机辅助设计”中的经历作些回忆。)

    我在大学学习的时候,工学院的学生都向往有一把好算尺,就像剑客想有一把好剑,琴师要拥有一把好琴一样。当时最上品的是美国的GE算尺,只有家境殷实的学生才买得起。刚解放不久,1950年,学校向工学院学生提供一种简易算尺,是用照相术把GE算尺拍下来,把照片贴在竹片上来凑合使用的。这种仿造的算尺每把售价15斤小米(按实物价格),我当时就使用这种算尺。
    不要认为使用算尺来做设计很原始,在20世纪6、70年代以前出现的、今天还在世界上各地存在的很多工程,包括著名的桥梁大厦、高性能军用飞机及大型运输机等等,其中不少就是用这种方法设计出来的。
    50年代我设计最初的几架飞机的时候,在现场时胸前口袋插着一支粗写笔、一支细写笔、还有一把短算尺。现场遇到问题,便掏出算尺来拉几下,即时回答处理的意见。
    60年代末,中国推广优选法。我初步接触这种方法之后,引起了极大的好奇和热情。我到图书馆去找“试验设计”等应用数学的书来看,很奇怪在有了很科学而有效的方法之后,为什么一般设计工作中却很少有人应用,甚至很多人不知道这方面的研究成果。
    60年代中国开始有了电子计算机。当时使用还很不普及。我当时在沈阳,有了市一级的“计算机中心”,装备了初期的电子计算机。我阅读电子计算机的英文书藉之后(当时还没有计算机中文书藉),觉得用计算机来计算飞机的爬升性能会很有用。1964年,我绘出了详细的计算流程图,去找计算中心请他们协助计算。
    不料当时在计划经济下的习惯思路,一些部门总是多一事不如少一事。计算机中心接待我的那位计算工作者,眼睛看着桌面,头也不抬地拉长声音悠悠地说:“计算飞机问题很麻烦,许多曲线需要拟合,要花很大的力气。我们最擅长的是计算农业问题,公式非常简单,但计算的量很大,编程工作很轻松,然后就叫计算机去狠劲算就完事了。”
    我心里知道他的说法肯定不对,计算机就应该被用来解决复杂问题,而决不是仅当作一个“大算盘”来计算大量数字。但是我自己不懂编程,败下阵来。心里感到很窝火。
         
    在计算机内塞进山峰和天空

    20世纪70年代初我到了上海。1972年,飞机研究所推广计算机技术, 由大学的老师来讲“算法语言”。像往常一样,这样听课的机会从来不派我参加,我只有抽时间去“旁听”。
    一听之下,真给我带来分外的喜悦。只要摆弄算法语言的七种标准用句,就可以用不同组合来形成复杂得不可思议的计算链,有如在我的眼前打开一扇门似的使我极度兴奋。
    使用算法语句编写复杂的程序,是一种极富挑战的脑力运作。当听课的人员每人试拟几个题上机试算的时候,许多人只将一个常规的算式用算法语言表达出来,然后用计算机去算出一个早已知道的结果,觉得自己总算学会了一种操作。
    我为试算拟的最初两道算题,却想要试一试计算机这种新工具的能力。第一道是输进去两架飞机的性能,让它们在算机内自行格斗空战。每一架飞机要根据另一架飞机的位置,自行判断应该采取什么相应的动作。然后两机连续格斗形成空间三维的空战轨迹。第二道题是输进去对一架新飞机的性能要求,由计算机自动尝试各种参数的组合,最后输出最优的参数值出来。就是说,我在计算机内塞进了空战的天空和优化的山峰。
    当时国内对这类计算都没有实际的算法。我拟的这两道试算题都并不很长。但输进计算机以后,神了!计算机输出的数据,说明两架飞机真的凶猛地格斗起来,互不相让,好一派杀气腾腾!而第二道试题,计算机勤奋地做着各种参数的组合,最后打印出参数的最优组合,总共只花去几十秒钟时间。
    后来我才知道,我“旁听”后试算的两个试题,都是我国第一次这样使用计算机。这两个简短的程序,是同类程序在我国首次出现。
 
    爬山遇悬岩,是好事还是坏事?
 
    接着,在一次航空部门的全国计算机应用交流会议上,我把“双机格斗”程序作了一次论文报告。空军学院要求我为他们计算几种飞机的格斗性能,我算完后把结果寄给了他们。以后,由于我的主要工作已经投入民用飞机设计,就没有再在双机格斗的程序上工作下去。
    而第二个参数优化程序,我根据自己的体会,写了五篇介绍这种方法的论文,1976年在航空杂志上作为“讲座连载”发表了。当时处在“文化大革命”末期。在文革动乱中,我继续对航空技术发展追踪和写稿。当时写稿没有稿费,完全是义务的。并且为了防止被别人以莫须有的罪名滥加批判,我一直使用笔名发表技术文章。所以,当时钻研技术确实是“既无名又无利”,而且冒着风险的。 
    但是当我写成“总体参数优化”的连载讲座之后,我感觉到在飞机总体设计中采用计算机自动优化的方法,在某种程度是对传统的飞机设计方法的一种革命性的进步。介绍这样重要的方法,我不宜再使用匿名,便使用了真名。这是在我国首次介绍这样应用计算机的文章。编辑部给我转来一个单位盖了公章的来函说:刚读到这篇连载文章,以前没有注意到国内还有这样好的刊物,特要求编辑部提供若干套有载有该文的期刊,并要求同意申请补订该刊。
    不久,我被派往北京参加一种新飞机的方案讨论会议。许多国内飞机设计部门的著名人士和航空高等院校的教师都来了。我刚发表的那个讲座在飞机设计界引起了相当普遍的注意,会议邀请我对这种方法作一专题讲课。
    参加会议的北京有关人士听到讲课后,向自己的单位传播了这一消息。这样,紧接着北京航空管理部门的飞机局、和技术信息研究部门分别邀请我去作了专题讲座。我还受北京航空航天大学邀请,去对飞机和发动机系的教师讲课,讲解这种方法。
    按理说,我的工作岗位是设计出具体的飞机型号。至于设计方法本身的研究,应该由航空大学的教授和理论工作者去做。但是,用计算机优化来自动探寻飞机方案最优参数组合这个任务,却由我完成了。也许得益于我的外文阅读能力,使我关心着世界航空技术的最新进展;也许得益于我的数学能力,所以我能自行推演出必要的数学运算并将以编程;或许还得益于我对新事物总是怀着浓厚的兴趣,有着一股穷追猛打、直至亲自将其实现的犟劲吧。
 
    发表论文受阻
 
    计算机在作优化计算时,操作台上闪烁着红绿灯,那是在一座陡峭的山峰上勤勉地爬山,力图增加高度登上目标面的高峰。
    这是一座在虚拟的空间里高耸的山峰。山体的形状,由于航空技术多种因素的复杂关系而显得很奇特怪异。现在的目标,不是设计一架飞越青藏高原的运10一样的飞机从上面飞过去,而是要从底部曲折地爬上高峰,就找到了飞机总体参数的最优组合。
    我设想,在可行区的边缘建一道“悬岩”而不是挖一道沟,就可以同时得到当时时世界通用的两种罚函数的优点,而消除其各自的缺点。我把这种函数命名为“悬岩罚函数”。
    我用好几种方法试算了我设想的几何外形的目标面,证明这种罚函数果然有效。我写成论文投寄《航空学报》。没有想到,我的论文却被退稿。编辑对我说:“你不要问审稿者是谁,这对作者是保密的。但是审稿者认为这种‘悬岩’将破坏目标面的连续性,使优化得不到结果。”
    审稿者从数学表达式出发对山峰的几何描述,认为造成了“不连续”,这确实是“悬岩罚函数”的在几何上的特点。但是,不连续的目标面只是对无限短步长的、需要导数的优化法里可能出现麻烦(麻烦只出现在很小机率的悬岩奇点上)。而飞机总体参数优化最常用的是直接法。当采用直接法时,悬岩并不构成问题。
    我不知道审稿者是谁,无法向其申诉,只好向“中国航空学会”的理事长沈元教授写去一封申辩的信(他曾长期任北京航空学院院长)。我说,自从微积分发明,三百年来科学技术都是以微分方程为工具,因此很讲究数学描述的连续性,因为连续才能可微。但是微积分不能解释突变现象。近年来的“突变论”就特别在数学上表达了世间突变的不连续现象。现寄上科学院的《科学通报》刊载我写的关于介绍“突变论”的文章。不连续并不可怕。同时寄上我用“不连续”的“悬岩罚函数”对“罗森布拉克检验函数”的试算结果,证明这种罚函数的悬岩特征在用直接优化法时对达到目标面高峰没有障碍。
    我对自己创立的罚函数的信心,除来自实算的结果以外,还因为我刚发表的对于“突变论”研究的心得。70年代中期, 四人帮倒台。运10研制工程进入最后冲剌阶段, 中国经过20多年的封闭以后首次对外打开大门。这时我40多岁,但是心情感到突然变年经了,思想分外活跃。
    这时我从国外科学刊物上读到关于“突变论”的文章。这种世界学术界最新推出的学科有两点使我入迷:第一,渐变与突变,本是宇宙万物演变的最基本现象之一,但历来数学只能描绘连续发展的渐变。而“突变论”却首次对突变现象给出合理的描述和解释。第二、这种学说的数学核心,是看到某些现象的势能方程实际上是多维空间里的一张复杂曲面,我觉得就有如一张带有绉折的荷叶。某些过程就像荷叶上的一滴露珠,沿叶面流淌。在平滑的区域,水滴的流动轨迹是连续的,但遇到荷叶的绉折处,水滴就会从叶面突然坠落下来,落在下一层叶面上。这种突然坠落,就造成事物的突变。
    这是相当抽象的概念,但是我自幼来对美术的爱好,使我对多维空间里复杂曲面的描述的“形象思维”觉得很容易接受,也使我十分兴奋。于是我到市里的图书馆去查阅了国外几篇有关这最新学科的论文,加上我自己的理解,写了一篇关于“突变论”的综述文章,寄中国科学院的《科学通报》。不久,这篇文章发表在该刊1978年9月号的首篇。当时就有读者致书编辑部,对该刊发表这样的文章表示感谢。以后据说有好几篇论文引述了该文。
    以后的事却是我没有料到的。“突变论”后来与“信息论”、“系统论”并列,被认为是20世纪后半叶的“三大横断学科”,即可以应用于自然科学和社会科学广泛的领域。而我写的那篇综述文章,竟是国内首次正面介绍“突变论”。
    经过航空学会理事长沈元院长的干与,我关于“悬岩罚函数”的论文才得以发表。以后,这种罚函数被航空航天部门及高等院校所通用,取得很好的结果。在某种程度上,这项成绩得益于我的形象思维,或空间想象能力,与自幼进行的绘画训练有关。
    1977年12月,我用自己的体会写了一本《计算机辅助飞机设计》的书,分上下册。其中有相当的内容是讲目标面的山峰地形。我国的航空技术在20世纪后20年大步“计算机化”的进程中,此书被认为是第一部专论。
    以后我除了飞机设计技术工作之外, 还负责了计算机中心的技术领导任务。1993年,我接待台湾航空教授十人访问团,带队的是一位白发的老教授,以前在美国当教授,退休后受聘返回台湾。由于他的“资深”名望,作为代表团的带队。他带领的代表团中的教授全部都是美国留学的,其中有很大比例从事计算机技术。在参观我们的计算中心时,领队教授见我也是满头白发,便对我说:“像我们一辈的航空工程师(指他和我),对计算机不大懂。”我回答他说:“是的,我们当时学校学习时没有这个内容。但是这个计算中心技术上由我负责。”他听了便没有再说什么。
    我指导几个合作者扩大和完善了我原来编定的参数优化程序,成为我国第一个飞机总体参数优化的工具。航空与航天不少部门运用该方法编出的优化程序,都获得了我国航空与航天方面的科技进步奖。该方法被航空航天大学编入教科书。
    当我在计算机优化飞机总体参数上的工作日益完善的时候,这种方法在航空先进国家,还只停留在研究部门(如美国NASA)的研究上,还有一些大学对这种方法进行了一些初步的探讨(如日本京都大学)。而我们的程序已经装备到飞机实际设计部门。因此,在以后一系列国际技术交往中,我们的计算机优化飞机总体参数设计的能力,曾使我国占有一定先机,连续取得国际技术较量上的一定优势,使外人括目相看。

    因沉默而吃瘪

    1983年,我已经50多岁,一次参加与美国一个飞机公司的技术交流。对方头头是一个身材高大的胖老头。当时国内有“主谈”制度,即中方由一个人为主,一切听这位主谈的安排。这次中方的“主谈”是一个年轻的刚上任的头头,自己英语不错,很有自信,因此会谈中他始终一个人谈,我和其他人员一直陪坐在那里。
    两天以后,美方的头头向美国代表团中一个华人反映说:(这个华人没有参加我们这个组)中方怎么只有一个人讲话?中方有一个年纪和我差不多的,两天来一声不吭坐在那里,我们谈什么他懂不懂?
    这个华人马上听出是这话是指我,便对他说:“你不要搞错!这是个航空大权威!”(我从来不知道自己是什么“大权威”)。这个华人把美方的反映告诉了中方主谈。所以在第三天交流中,当谈到飞机总体参数的问题时,主谈转向我说:“这个问题请你谈谈。”
    于是我走上讲台,拿起粉笔在黑板上画出我们程序的流程图,然后用英语讲解我们的参数优化方法,简直就是给美方人员上了一课。我讲完后,美方相应的专家立即点头表态说:“我们也用了类似的思路,但方法没有这样巧妙。”这说明,就自动优化的方法来说,他们公司还没有接触过。
    美方的胖老头什么也没有说。看来我的英语表达能力、所谈到的问题的深度和新颖,超过了他的预想。到散会时,他赶紧跑到会议室门口,到我将走出门时,伸出手来握手相送,并低下他高傲的头,弯腰鞠躬说:“非常荣幸!”
 
    不是外星人
 
    1986年,我到欧洲一个国家,和那里的飞机公司进行联合工作。这是一个非英语国家,双方规定工作语言是英语。中国技术人员和外方技术人员混合编组,我参加的是工程组。最后开全体大会,讨论工程组所提出的飞机设计方案。
    一进入会场,我发现会场上中国人自然而然坐在长条桌的一侧,而外国各组人员坐在另一侧,并没有按混合编组入座。也许是当时中国人还很怯懦,觉得坐在自己同胞身边比较安全。
    工程组的外方人员报告了一个飞机的初步方案。接着各组对方案提出各种质询,频频进攻。坐在中方一侧的,没有一个人讲话。会场出现很滑稽的局面:一群非英语国家的人员,用英语进行激烈的争辨,为了的是讲给中国人听。而中国人一个个噤若寒蝉,默不作声。
    我这次只是中方的一个客座成员,并没有准备发言。这时实在看不下去了,便插进去说:“我来提一点看法。我是工程组的一员。我们对这个方案的考虑是这样的,我们的目的是这样的,这个方案到今天到达的程度我们是这样理解的,这只是一个初步的起点,下一步我们还要对这个原始方案进行优化……”
    从我开始发言,吵吵闹闹的会场突然变得鸦雀无声。我说了好大一段,讲完后会场还是没有人讲话。该公司的总裁坐在桌子对面,瞪大了眼睛从金丝边眼镜后看着我,仿佛我是不知从哪里钻出来的外星人一般。
    随同我们出国的一位官员曾在会下说:“像我们这样的英语水平,如果事先知道会议上要讲话,头天晚上准备好了,还能讲两句。但是吵架不行。在会议现场要现来现去地就一个问题临机发表观点,水平达不到。”但是我的即席发言却在某种程度对讨论作了总结,下面再没有进一步的争论了,转为讨论其他问题。
    回国后,我们用程序对国外提的方案进行了优化,发现飞机的机翼面积应减小10平方米,而机翼的展弦比应该加大30%。在下一次与国外的联合技术会议以前,我们带着这个结果来到会议召集地。会议是由国内另一单位主持的。我们报告优化结果之后,不料招到中方主持单位的拒绝,不允许我们在交流会上谈自己计算的结果。
    他们说:“外国人又不是吃干饭的,你想他们会向我们提出一个错误的方案吗?”他们还说:“在飞机方案设计的问题上,中国人不要想和外国人平起平坐地讨论问题,不要激怒了他们。中国只有草鞋草帽可以作为工艺品打入世界市场,在高技术问题上,中国是没有发言权的。”
    这是主持方的论点。这个单位,确实没有设计过飞机,要说他们没有资格对飞机设计提出任何观点,那可能是对的。但我已经设计过许多飞机了,我们设计的运10飞到了全国各地。我们的设计技术与美国一些飞机公司合作都取得了对方的尊重。为什么在这里就连意见也不许讲?
    经过我据理力争,主持方含糊其辞地说,因为安排不出时间给我发言。我很气愤,几天的会议日程,难道就安排不出我发言的时间?我说,“那么好,请给我五分钟。五分钟我就可以讲完我们的主要结果了。”主持方看问题僵持到这种程度,也不便再坚持,便假惺惺地开恩说:“就给你十分钟吧。”
    但是在约定的那次会议上,主持方却安排了一个对外方歌功颂德的报告,把外方方案说得其妙无比,天下无双,真是多一分太胖,少一分太瘦,恰到好处。这个拍外方马屁的报告讲了一个小时,然后才让我讲。
    我直接用英文,真正只讲了五分钟。我说,根据我们优化计算的结果,原方案的机翼面积太大,可以减少10平方米,但展弦比太小,应该加大30%。优化的过程是用一个自动优化的计算机程序完成的,这个过程很复杂,但是你们如果有分析程序,只要计算一下两个结果,就是原方案和我们改进过的方案就可以了,比较这两个结果,你们就会信服我们的道理是对的。
    我只说了这么多。没有想到参加会议的外方总工程师,一个留着白胡子的老人,听完后突然把双手向上方作V字形举起,大声说:“会议三天来,我一直在等的就是这个报告!我宣布从现在起,这个飞机方案的机翼面积减小10平方米,而展弦比加大30%!”
    一直阻拦我发言的那几个人,这时正襟危坐地坐在自己位置上,仿佛停止呼吸了似的一动不动。他们接受这个结果是毫无疑问的,因为这是外国人发的话。
    我们的优化程序,在与国际航空界的较量中取得了胜利,给那些满脑子崇洋迷外的国人一副清醒剂。人们值得记取在20世纪的中国航空界,曾发生过一次这样的思想交锋和技术交锋!
 
    20分钟的学术报告不得延长
 
    1979年10月,南京航空学院庆祝20周年校庆,邀请我作为嘉宾前去参加庆祝大会,在大会上作科学报告,并对设计专业的教师们作“参数优化方法”的讲座。以后,该校的飞机和直升机设计推行参数优化方法,在学术上获得很大成就,给我送来纪念品以表示在该校最早介绍优化方法的感谢。至于西北工业大学,则直接使用我编写的《计算机辅助飞机设计》上、下册作为研究生教材20余年。
    1990年9月,我收到一所航空航天大学来信,说该校将与日本联合举办第一次国际性学术讨论会,会议的工作语言是英语。日方将派一名设计过11架飞机的老设计师带队, 考虑到航空航天大学主要从事单科学术方面的研究和教学,而我是该校的兼职教授,他们想叫我准备一个报告以便与那个日本飞机设计师对阵。
    我参加设计的飞机和非常规航空器的研制,品种和架数也不算很少。我便准备了一份《飞机设计中的型式选择与参数优化》的英文报告。
    我在会议的前一天到达该城,主持会议的一位中方教授到我的住地来看我。我告诉他说:“我准备的报告,事先念了一下,时间大约需要24分钟。”
    他说:“那不行。规定是20分钟,不能超过。”
    我以前不认识这位教授。我后来才知道,他是从事专项领域研究的,关于中日飞机设计师在会上对阵的问题他根本不关心。
    第二天开会前,我在休息室见到了那位日本设计师,有80多岁了,比我大出20多岁。我与他交谈时发现他的英语没有明显的日本口音。想必他在年轻时代是到美国受到专业教育的。按时间推算,他设计的是第二次大战前的飞机,即20世纪前半叶的飞机,而我设计的都属于世纪的后半叶。
    开会时,他作报告是用日文坐着讲,另外由人翻译成中文。他讲的是设计那些古董飞机的概况和某些细节。对他根本没有20分钟的限制, 他讲了45分钟。看来这次会议对中方和外方报告人在时间上显然是不对等的。
    然后我讲。我不想违背会议组织者的规矩,所以抛开讲稿,对着幻灯图像用急促的语速清晰地大讲起来,很有滔滔不绝的架势,力图把超出的四分钟压回去。没有想到这样一来反而造成精力充沛,胸有成竹的印象。
    在参数优化部分,我讲了我长期研究的课题,当然娴熟在心,我制的幻灯图像也把很复杂的“非线性系统的有约束优化”问题表述得很清晰。我讲完后请问有什么问题,没有问题后我一看表,正好到达规定的时间。我走下讲台,几位日本教授站起身来和我握手,表示对做出精彩报告的祝贺。
    整个这次会议,我没有看到别的报告后有人祝贺。
    很多年后,我在西南一座城市参加航空技术会议,去参观他们的计算机房。陪同我们参观的工程部部长知道我的名字后,连忙说:知道知道。把我们带进计算机中心后,对迎接我们的计算机中心主任说:你知道这是谁?我一说你就知道了,我们都是读这两本书出来的。原来他们在研究生时是同学,就是用我写的书作教本。将近20年后, 我遇见一个大学副教授,他问我:这本书你那里还有没有?我们大学的那几本,多年来一直作为教材被历届研究生翻烂了。我回来后在旧书堆里再翻出几本寄给了他。
    我被航空航天部选为有突出贡献的专家,并被三所国内最大的航空航天大学聘为兼职教授,即:北京航空航天大学、西北工业大学,和南京航空航天大学。这也许与我在航空领域其他一些硬件和软件建设中做过的工作都有关系,但是,其中必定包括了对我首先推广计算机优化飞机总体设计,以及在“计算机辅助飞机设计”中其他工作的某种肯定。
 
程不时 博客文章
2010-07-07
 
上一篇: 身边有“矿山”、“森林”和“油田... 下一篇: 从世博会预见未来汽车科技趋势(朱...