採訪嘉賓 | 程先雲,七維高科CTO
記者 | 夕顏
出品 | CSDN(ID:CSDNnews)
MATLAB事件
2020 年 6 月 6 日起,哈爾濱工業大學和哈爾濱工程大學因被列入美國商務部實體名單,並被禁用數學基礎軟體 Matlab。這一消息迅速在網絡發酵,引發關於國產軟體獨立自主重要性的大規模討論。
哈爾濱工業大學和哈爾濱工程大學表示,其正在和美國 MathWorks 公司進行積極溝通,而 MathWorks 方面則回應稱,接到通知,根據美國政府最新的進出口管制名單,無法再為其提供服務。
這個在特殊環境下的非個例事件將會對國內產生深刻的影響是可以預見到的,但以此事為導火索,將具體會對學術科研界產生怎樣的影響,對國內自研軟體行業帶來哪些改變沒有人可以說得清楚。針對這些問題,數學科學計算軟體 1stOpt 的核心研發人程先雲博士從專業角度,帶來了他的看法。
無知識積累、團隊支持,自研 MATLAB 替代品純粹是「瞎忽悠」
首先,程先雲博士對哈工大等高校被限制使用 Matlab 一事有一個預判,認為此事對學術科研界影響巨大,而按目前的發展趨勢,不久的將來或許會有更多的專業/行業軟體被禁,涉及的高校及科研單位也會更廣,甚至最大的開源社區的 GitHub 對中國封禁也是大機率的事。
他提到,前段時間美國在硬體方面禁中興和華為,現在又在軟體方面發力,雖然很無奈也很遺憾,但有一點卻是痛苦的事實,也振醒了我們,那就是美國禁什麼,我們才發現我國在這方面確實很弱,差距巨大。硬體方面如此,軟體方面更是有過之而無不及,如此精準「打擊」,美國似乎比我們自己更了解我們,不得不說這顯然是件非常恐怖也很令人難堪的事。
如何破局應對?不少人都在討論 國產替代品的可能性,如 Python、Octave、Julia 等,然而,現實情況卻是, 語言上找到替代品簡單,但 Simulink 仿真卻很難找得到替代品。
程先雲博士說到,其實從理論上來說,世界上沒有任何東西是不可替代的,軟體產品也是如此,關鍵要看替換的代價和成本。打個比喻,如果一個人習慣而且一直喝咖啡,因為喝咖啡,地里種的也是咖啡樹,所有設備、器材都是為咖啡而備,此時如果咖啡相關的整體歸零,要求全部改為以茶為主,不喝茶就沒有水喝,結局會是什麼?無法適應而渴死?顯然不會,很順暢地適應而且喝得很舒服?那也絕對是假話,一定會有一段痛苦的調整適應階段,而且 Simulink 就像咖啡因,茶里也有,但含量遠遠低於咖啡,要完全適應會是一個長期的過程。
Matlab 禁用事件才幾天,據了解就有公司號稱一年內就能開發出完全替代 Matlab 的國產同類軟體產品,按過往的經驗,程先雲預計以「逐利」為本的一大波公司也已經「在路上」。程先雲博士不客氣地指出, 說白了,那些既無以往開發科學計算軟體的經歷及知識積累,也無強大的數學支持團隊,承諾可以完成 Matlab 替代品開發的基本可以說是「瞎忽悠」,否則這類產品早就應該出來了,而不會像現在這樣以蹭熱點式的方式冒出。
「Matlab 並不是像一些人說的僅僅是把已有成熟的算法、數學原理、數學公式及相關工具箱堆砌在一起那樣簡單,如果是這樣,10 年前清華大學搞得那個對標 Mathematica/Matlab的maTHμ也不會消失的無影無蹤了,」程先雲無奈道。
他指出,開發綜合數學類軟體,除了需要精通編程及具有深厚完善的數學知識外,算法上還需有自身的特點和先進之處,否則花大精力開發的產品連開源的 Scilab 和 Octave 等都比不過,意義何在?Matlab 不但是數學功能的集大成者,而且具有完全的開發環境和編程功能,早已被視為 Fortran 的替代者,而按國內目前的環境,跟風式的科研風氣,不重視基礎研究與應用,唯論文論英雄,科學界看似繁榮的表面實則都是建立在他人的基礎之上,被人釜底抽薪卡脖子自然是難免之事。
「開發出個數學應用軟體不難,但要想在短期內達到或超過 Matlab,可能性微乎其微,」程先雲從自己的專業角度做出了這個讓人遺憾但客觀的預測。
一蹴而就不現實,但從局部破局還是有希望的!
程先雲博士認為,Matlab 是大而全的數學類專業軟體,無法短期內開發出全面接近或超越 Matlab 的產品,也是客觀現實,但先從局部或某個方面先取得突破,再在此基礎上完善拓展還是很有希望的。Matlab 也是歷經幾十年不斷疊代累積修正發展而來的,任何希望一蹴而就的想法都是不現實的。
阿基米德說:「給我一個立足點和一根足夠長的槓桿,我就可以撬動地球」,但實際上人類目前根本就不存在這樣的槓桿,腳踏實地道路才會堅實,一磚一瓦大廈方可豎起。
如果沒有創新而只是重複,擁抱開源比獨立開發效率更高。
90 年代海外讀博期間開發 1stOpt
雖然短期內國內自研 Matlab 的替代品不現實,但是一旦大規模封禁,我們總需要些能夠暫時可以頂一陣的產品。我們關心的是,國內有哪些類似的產品可以暫緩燃眉之急呢?
程先雲博士所在的七維高科旗下,就有一款主要專注於優化數值計算(非線性擬合,非線性方程組,全局非線性最優化等)的產品 1stOpt。程先雲博士稱,在優化數值計算方面,1stOpt 可以實現不錯的求解效果和易用性。
七維高科科技有限公司是一家專注於數學科學計算軟體研發企業,數學優化分析計算軟體平台1stOpt 是其旗下獨立研發並擁有完全自主智慧財產權的一套軟體產品,軟體名「1stOpt」源自英文「First Optimization」,意喻最優化領域做到第一。該產品自上世紀末第一版面世,至今已有 20年的歷史。
程先雲博士是 1stOpt 的核心研發人員。上世紀 90 年代中期留學國外攻讀博士學位期間,因專業問題涉及到模型參數優化求解,程先雲開始了解並學習最優化算法、人工神經網絡及智能計算方法等,在大量研究的基礎上,開發提出了 UGO 通用全局優化算法(Universal Global Optimization),並以此為核心技術推出了 1stOpt 數值計算軟體平台的第一個版本。
程先雲博士說道,許多數學問題,包括當今火熱的人工智慧問題都可以最終歸結為數學優化問題,而要完美解決這類問題的重要密匙之一就是優化算法,尤其是具有全局尋優能力的全局優化算法更是重中之重,成為當下研究的焦點。從上世紀五、六十年代提出的具有全局尋優能力的模擬退火和遺傳算法,到如今數不勝數的各種仿生智能算法,雖然都號稱是全局優化算法,但實際表現與期待的理想結果還有相當大的差距,最多只能說是在理論上具有全局優化計算能力,而能在實際應用當中表現名副其實的並不多見。Matlab 官方就在其論壇指出 「任何優化問題,當今的基於進化的智能全局優化算法都不值得推薦使用」,這也是為什麼包括 Matlab 在內的主流計算軟體涉及到優化計算,比如擬合和方程求解,都還是採用經典的局部最優算法,如牛頓算法。
UGO 算法之最大特點是,與經典局部最優算法相比,克服了在優化計算領域中使用疊代法必須給出合適初始值的難題,即用戶勿需猜測給出待求參數的初始估值,而由 1stOpt 隨機給出,通過 UGO 算法,最終找出最優解;而與遺傳算法等具有全局優化能力的算法相比,其穩定的全局優化求解能力有了壓倒性的提升。
另外,1stOpt 吸引用戶的原因,除了獨有的算法及計算效果好之外,使用簡單也是最主要原因之一。有一個說法是,過去理工科學生必學的 Fortran,其代碼量 10 行,目前理工科學生必學的 Matlab 用一行即可,而如果 Matlab 用 10 行代碼,1stOpt 只需一行,入門門欄極低。程先雲博士認為,Python 也好,Julia 也罷,都是屬於程式語言了,而很大一部分科研人員實際上並不擅長編程,其中不少還有「編程」恐懼症,為了解決自己專業領域的一個數學計算問題就要花費大量額外時間去學習一門語言,實則事半功倍,從這一點看,1stOpt 具有很大優勢。
據悉,現在最新版的 Matlab,安裝包大小已接近 10G,完全安裝完需硬碟空間近 100G 左右,比較臃腫,而很多用戶實際只使用到很小一部分功能;而 1stOpt 安裝包只有 60M 左右,相比Matlab 要小巧很多,同時對硬碟和內存的要求也很低。
在語言支持方面,1stOpt 除了直接支持 Fortran、Basic、Pascal 等高級語言外,也直接支持Python,Julia 語言的支持也在計劃中,這樣,無論是簡單還是複雜的數值計算問題,1stOpt 都可以輕鬆應對。
在競爭激烈及國外類似軟體幾乎壟斷的境況下,1stOpt 依靠自己創新的全局最優算法及簡單易用的自然語言和用戶介面,處於雖然緩慢但始終發展上升的狀態,其在非線性回歸、曲線擬合、非線性方程組求解、非線性複雜模型參數全局求解、非線性規劃等科學計算領域,不僅國內,在世界上也居領先地位。
如今,1stOpt 可應用於幾乎所有科研、工程、金融、決策、等領域,據不完全統計,包括國家自然科學基金、國家863計劃項目、國家973項目、國家重大科技專項和國家"十一五"、"十二五"科技支撐計劃等數千項各類科研基金項目採用了1stOpt軟體平台,上百項發明專利及近萬篇學術研究論文採用了1stOpt作為分析計算支撐輔助工具,發表刊物包括眾多國內外SCI、EI、IEEE及中文核心期刊,包括國內幾乎所有「985」和「211」頂尖高校,中國科學院下屬數十個研究所,牛津大學、史丹福大學等國外高校,寶鋼集團、大慶石油集團等企業也都在用這款軟體。
程先雲博士表示,在國內搞這樣的基礎應用軟體,能堅持下來就是最大的勝利,他很欣慰做到了,即使面對 Matlab 這樣的「殺手」,自己的產品仍然有很強的競爭力。
他表示,雖然 1stOpt 不可能完全取代大而全的 Matlab,但在局部領域還是可以勝任的,將來若獲得政策上的支持,這款產品會在已有的基礎上豐富功能並持續發展。
技術不應有國界是偽命題,拿來申辯蒼白無力
在筆者看來,科技合作本應是共同體,技術原本也不應有國界,但受美國實體清單的影響,國內學術圈已然受到了波及。但對於「技術無國界」這個說法,程先雲博士卻有著不同的理解。
他認為,「科學」與「技術」是兩個不同概念,簡單而言,科學旨在回答「是什麼」和「為什麼」,而技術則關心「做什麼」和「怎麼做」。「科學無國界」這句話沒任何問題,牛頓、高斯、麥克斯韋爾、愛因斯坦等西方科學家的科學研究成果是現代科技的基石; 而「技術無國界」則是一個偽命題,就看如何理解了,技術是在科學的基礎上開發的實用方法或產品,是有投入的,不論是國與國之間,還是不同單位甚至不同個體之間,至少在可見的未來,「技術」產品不可能完全都是免費的,否則「專利」和「智慧財產權」的概念也不會存在了。即使單純從市場角度看,任何人都不可能去強買強用某款對方不願意給的技術產品。
因此,Matlab 對國內禁用,程先雲博士坦承,實話實說,我們沒有太多的抗辯理由,拿「技術無國界」來申辯更顯得蒼白無力。「弱者無外交」,「歷史是由勝利者書寫的」,這些定律同樣適用於科技界。
關鍵是形勢已經走到這一步,我們應該如何破局?程先雲博士認為還需從我們自身去尋找答案,比如為什麼 Matlab 被禁我們會感到難受?因為我們已經習慣了使用這款產品,因為沒有這款產品我們的科研會受到不小的影響,而令人尷尬的是短期內我們卻又無法找到或開發出類似的產品。
了解了現狀,也知道了原因,解決之道就一定會有的。
「能站在巨人的肩膀上固然是很好,但因此就覺得比巨人還高那就危險了,做好隨時被抖下肩而又不會迷失方向才是最重要的,」相信有很多人和程先雲博士一樣保持著這份清醒。
國產軟體,必須要有造血能力!
因實體清單以及出口管制等原因,去年,在開源層面上,Apache 基金會與 GitHub 也疑似受美國出口法律法規管制,今年,商業軟體再受限制,長遠來看,我們亟需拿出一些解決方案來擺脫目前的困境,在困境中,業界、學術界、技術人該如何參與進來?
程先雲博士的建議從反思國內教育開始。他指出,基礎教育的缺失和填鴨式教育導致國內很難出現數學方面有影響的創新方法和理論,如人工神經網絡、支持向量機、隨機森林法、深度神經網絡等等,國內大都是跟蹤模仿,這種「錦上添花」式的模式想出原創性成果幾無可能。
開發科學計算軟體,國內實際上並不缺乏人才,如在科技繪圖分析軟體領域居前列的美國軟體Origin Pro,據稱實際上既是最先由留美大陸學生開發並逐漸壯大成科技繪圖分析軟體第一霸主的,其目前的開發及服務支持團隊很大一部分就在中國大陸;另外一款在數學線性規劃領域執牛耳的美國軟體 Gurobi,該軟體的三位創始人之一姓顧(Gurobi 中的 Gu 的來源),也是一位華人;更不用說在微軟、谷歌和蘋果公司,都有大量華人在其中做貢獻。這些充分說明,在開發高端軟體上中國並不缺乏人才,而是環境,南橘北枳就是最好的比喻描述。
在程先雲博士看來,國產軟體主要面臨如下問題:
雖然一款軟體產品的成功與否最終取決於市場,但在目前國內,僅靠市場而沒有國家的扶持,想最終戰勝國外同類成熟產品,無異於比登天還難。
科學計算軟體的發展,需要長期的人才和技術積累,需要擁有自己的核心求解技術,不可能一蹴而就, 核心技術也是不可能通過引進獲取的,急功近利式的方式是無法產生偉大產品的。
程先雲博士表示,雖然在大而全方面不可能一蹴而就弄出個中國版的 Matlab 或 Mathematical,但先專注於某一方向,精雕細琢,取得局部領域的突破,再考慮全面地集成發展,雖然任重道遠,但畢竟是可行的發展方向。通過這次軟體禁用一事,相信國家會採取相應的應對措施,不論是政策層面還是資金扶持資助方面,基礎應用軟體會迎來發展的春天。但在這個過程中,要避免「頭痛醫頭腳痛醫腳」式的發展模式,更要杜絕騙取經費的鬧劇,要有長遠的規劃。
「軟體產品的成功與否最終要靠市場說話,中國是開放的國家,我們不能僅僅滿足於國內市場的一畝三分地,能走向國際市場,能得到世界範圍的認可,才可以說是一款成功的產品。溫室里的鮮花是永遠經不起大風大浪的,一時幫扶可以,但如果自身始終無自我造血機能,只能屬於被淘汰的產品,」程先雲博士如是說。