最近检视学生硕士论文写的系统程序,有些太过零散,战线拉太长,觉得自己像普丁(Vladimir Putin)总统,不知如何收拾乌俄战局。第一阶段俄罗斯在乌克兰东北部推进失败中耗损和分散的单位,只能希望藉着地理上集中作战力量、缩短补给线和简化指挥管制等方式,纠正第一阶的问题。学生写的系统程序也一样,说模块化不像模块化,说集中也不太集中,指导教授如普丁大帝,
面对着巨大的挑战,被迫合并及重新部署其中的许多模块,也造成学生士气低落,主要是学生不熟悉分进合击的写程序策略。
数年前我接受邀请到湖北武汉参加资通讯国际会议,担任主题演讲者(keynote speaker)。研讨会结束后和国外学者Ivan Stojmenovic等人游览东湖磨山公园。散步时闲聊到研讨会主题,集中式(centralized)与分散式(distributed)计算的利弊。
东湖磨山公园入口城门题字「荆楚雄风」,让人想起西楚霸王项羽,于是大夥谈起楚汉相争时的诸位好汉,包括刘邦、韩信,和周亚夫。我向Ivan介绍项羽的故事,又聊到集中式及分散式的优劣。我说项羽擅长希特勒式的闪电战术(Blitz Tactics),打起仗来,单刀直入,锐不可当,属于集中式处理 (Centralized Processing);刘邦对抗项羽,在战略上则采取联合诸侯这种分散式处理(Distributed Processing),虽然每次被项羽打得像没头苍蝇一样逃窜,最后终能与盟友分进合击,因此获胜。可见楚汉相争,分散式的策略还是优于集中式。
除了刘邦,也有军事家洞烛分进合击的分散式策略,例如德国的邓尼兹(Karl Donitz)。第二次世界大战初期时德国的海军力量薄弱,而无线电通讯技术的发展让德国能和海军力量强大的盟军对垒,主要的功臣是邓尼兹。他是纳粹德国的海军元帅,1918年担任潜舰UC-25的舰长,在第一次世界大战时击沉5艘运输船。
邓尼兹检讨他在一次大战的经验,认为以单一潜舰袭击护航船队是非常危险的,于是发展出以「多艘潜舰集结起来攻击船队」的核心概念,创立「集结战术」(Rudeltaktik),以多艘潜艇进攻的战术:首先以单舰、侦察机巡逻,发现船团时先不攻击,而是一边跟踪船团,一边向总部通知通商船团的航行路线、规模、护航舰数量等信息,然后再以无线电通知邻近潜艇集结起来埋伏。当船团进入攻击范围,就包围攻击(通常是在夜间展开攻击)。包围攻击的方式和陆军的做法相反。陆军的袋状包围是袋口面对敌人的正面,而邓尼兹的潜艇袋口则包抄船队后方。这种战术需要在潜艇间建立很好的无线电通讯技术。
在两次大战期间,德国的无线电反干扰能力提升许多,而德国发明的恩尼格玛口令机(Enigma)更大幅加强防窃密能力。在无线电通讯技术的大力加持下,邓尼兹分进合击的战术屡建奇功,英国的船队被邓尼兹打得叫苦连天,称之为狼群战术(Wolf pack)。在资通讯的领域,我们的发展的最新方向应该是「集中的分散式」计算。换言之,资通讯系统内部的设计是分散式,而使用者写程序时,感觉是集中式。
现为国立阳明交通大学资工系终身讲座教授暨华邦电子讲座,曾任科技部次长,为ACM Fellow、IEEE Fellow、AAAS Fellow及IET Fellow。研究兴趣为物联网、移动计算及系统模拟,发展出一套物联网系统IoTtalk,广泛应用于智能农业、智能教育、智能校园等领域/场域。兴趣多元,喜好艺术、绘画、写作,遨游于科技与人文间自得其乐,着有<闪文集>、<大桥骤雨>。