5月22日,美國(guó)商務(wù)部宣布將北京計(jì)算機(jī)科學(xué)研究中心、奇虎360、哈爾濱工業(yè)大學(xué)、哈爾濱工程大學(xué)、云從科技等33家中國(guó)公司和機(jī)構(gòu)列入了“實(shí)體清單”。隨后在6月初,哈爾濱工業(yè)大學(xué)和哈爾濱工程大學(xué)的師生反應(yīng)無(wú)法使用MATLAB了,一時(shí)間引起國(guó)內(nèi)熱議。
知乎上關(guān)于“如何看待哈工大、哈工程受美國(guó)商務(wù)部[實(shí)體名單]影響,被禁止使用MATLAB商業(yè)軟件”的問(wèn)題,截止到目前有4075個(gè)關(guān)注,以及416萬(wàn)的瀏覽量。
圖:知乎上關(guān)于MATLAB被禁用影響的問(wèn)答。(來(lái)源:知乎)
說(shuō)到MATLAB,可能大多數(shù)人并不熟悉。但對(duì)于現(xiàn)在的工科生來(lái)說(shuō),MATLAB已經(jīng)成為必備神器,其重要性可能與office有得一拼,已經(jīng)滲透到數(shù)值計(jì)算、機(jī)械化工、建模仿真、汽車航空、電力能源等學(xué)術(shù)研究和工業(yè)制造領(lǐng)域。
自從MATLAB被禁用后,不少人也開始擔(dān)心,CAD、SOLIDWORSK、UNITY3DMAX、ANSYS這些軟件在未來(lái)也會(huì)被禁用嗎?對(duì)于這個(gè)問(wèn)題,大家的心里都沒(méi)有底。
雖然沒(méi)有MATLAB,數(shù)值計(jì)算和可視化等領(lǐng)域可以采用免費(fèi)的Python、Octave來(lái)暫時(shí)替代;航天軌道計(jì)算和任務(wù)規(guī)劃等領(lǐng)域可以使用General Mission Analysis Tool來(lái)應(yīng)急;信號(hào)處理和無(wú)線電等領(lǐng)域可以使用GNU Radio;機(jī)器人仿真領(lǐng)域則可以使用Robot Operating System,看起來(lái)好像影響不大,但是這里的軟件沒(méi)有一款是中國(guó)的軟件,而且維護(hù)開源社區(qū)的中堅(jiān)力量基本上也是以外國(guó)人為主,所以押寶開源社區(qū)其實(shí)也并不那么靠譜。
因此,在問(wèn)答種有個(gè)名為Truffer的答主,在回答種表示替代MATLAB的國(guó)產(chǎn)軟件已經(jīng)在路上了。且表示半年內(nèi)就能實(shí)現(xiàn)MATLAB科學(xué)計(jì)算與圖形顯示的70%,一年內(nèi)100%全部實(shí)現(xiàn);3年內(nèi)完全實(shí)現(xiàn)Simulink;100%自主版權(quán)源代碼;無(wú)需#openGL#等組件支持的三維、四維圖形顯示。短期內(nèi)將在周全性(需要積累)、高性能并行計(jì)算(需要廠家支持)、專業(yè)的擴(kuò)展工具箱(第三方支持,大家一起努力)等方面會(huì)稍微落后,不過(guò)足以應(yīng)付大家90%的日常科研需求。他承諾,至少在10%的功能,比Matlab更好用、易用。
該答主的回答一時(shí)引起了知乎網(wǎng)友的高度關(guān)注,目前已經(jīng)有8999人點(diǎn)贊了該回答。里面有鼓勵(lì)的、也有質(zhì)疑的。有的已經(jīng)通過(guò)答主獲得了他在回答中所說(shuō)的源代碼并進(jìn)行了分析。
圖:Truffer在知乎中的回答。
Truffer背后的企業(yè)是誰(shuí)?
在知乎關(guān)于Matlab 被禁的問(wèn)題里,這家軟件公司展示了 Truffer 的實(shí)力:Truffer 完全基于C#編寫,100% 自主版權(quán)源代碼,無(wú)需 openGL 等組件即可支持三維、四維圖形顯示。
該軟件背后的公司是北京聯(lián)高軟件開發(fā)有限公司,據(jù)其官網(wǎng)顯示,該公司成立于2002年,位于北京海淀高科技園區(qū),屬于高科技企業(yè)、雙軟企業(yè),獨(dú)立自主創(chuàng)新的《VNUC數(shù)控加工仿真軟件》是歷屆全國(guó)數(shù)控技能大賽指定仿真軟件,《多可文檔管理系統(tǒng)》行銷全國(guó)各行各業(yè),裝機(jī)量10萬(wàn)+,此外,還有《聯(lián)高固定資產(chǎn)管理系統(tǒng)》和《聯(lián)高小工具》系列免費(fèi)小軟件。
通過(guò)天眼查還可以看到,該公司的注冊(cè)資本位300萬(wàn)人民幣,人員規(guī)模小于50人,參保人數(shù)為14人。
該公司目前擁有1項(xiàng)“基于社交網(wǎng)絡(luò)的應(yīng)急疏散裝置和終端”的發(fā)明專利,該專利的申請(qǐng)公布日為2016年8月10日。此外,它還擁有11項(xiàng)軟件著作權(quán)。
圖:天眼查顯示的北京聯(lián)高公司信息。
Truffer到底是什么?
根據(jù)北京聯(lián)高在其官網(wǎng)上公布的軟件開發(fā)團(tuán)隊(duì)成員介紹,成員主要有三名資歷豐富的“資深程序員”,他們分別有30年、20年和23年的編程經(jīng)驗(yàn)。遺憾的是,該公司并沒(méi)有公布這些經(jīng)驗(yàn)豐富的“資深程序員”的具體照片和中文名。
圖:北京聯(lián)高軟件開發(fā)有限公司官網(wǎng)公布的軟件開發(fā)團(tuán)隊(duì)成員。
那在這些“資深程序員”操刀下的Truffer軟件現(xiàn)在到什么程度了呢,先看一下它的部分源碼樹:
圖:Truffer軟件的部分源碼樹。
可以看到這個(gè)架構(gòu)設(shè)計(jì)和MATLAB部分功能還是很貼近,核心在于矩陣的一些運(yùn)算。根據(jù)官方發(fā)布的數(shù)據(jù)來(lái)看,核心運(yùn)算都能夠完成,并且畫圖的效果非常不錯(cuò)。
由于Truffer還未完全成熟,公司表示短期內(nèi)會(huì)在周全性、高性能并行計(jì)算、專業(yè)的擴(kuò)展工具箱等方面落后于MATLAB,需要更多第三方的支持,不過(guò)Truffer足以應(yīng)付大家90%的日??蒲行枨?。
現(xiàn)在Truffer已經(jīng)能滿足數(shù)值擬合的基本功能。比如獲取了一些符合伽馬分布的數(shù)據(jù)點(diǎn),通過(guò)擬合曲線算出α和β數(shù)值。
還有簡(jiǎn)單物體的三維有限元計(jì)算,支持拷貝或粘貼OBJ格式的三維物體點(diǎn)線面數(shù)據(jù),點(diǎn)擊并運(yùn)行稀疏矩陣求解,即可自動(dòng)保存數(shù)據(jù)到文件。比如自主三維渲染得到洛克希德SR-71飛機(jī)的仿真圖。
圖:通過(guò)Truffer三維渲染得到的洛克希德SR-71飛機(jī)的仿真圖。
在這一部分功能里,官方表示三維顯示核心是自主知識(shí)產(chǎn)權(quán)的,沒(méi)有openGL,也沒(méi)有用到DirectX。
Truffer官方在回應(yīng)的時(shí)候也勾畫了一下現(xiàn)行軟件的使用場(chǎng)景。
第一個(gè)是用試驗(yàn)數(shù)據(jù)繪制曲線,導(dǎo)出公式;科研人員獲得了一些數(shù)據(jù),希望對(duì)其進(jìn)行畫圖擬合。第二個(gè)是三維有限元計(jì)算(簡(jiǎn)單物體);就是解稀疏矩陣。
網(wǎng)友是如何評(píng)價(jià)這個(gè)軟件的?
看到能夠有國(guó)內(nèi)企業(yè)站出來(lái)勇敢宣布自己可以做出像樣的工業(yè)軟件來(lái),特別是能夠替代MATLAB這樣的神器時(shí),多少還是有點(diǎn)讓人激動(dòng)的。其中不少人對(duì)這個(gè)軟件還是有很大的期待的。知乎網(wǎng)友們紛紛留下郵箱,申請(qǐng)第一批試用。
根據(jù)網(wǎng)友接收到的源碼,Truffer的三個(gè)源文件分別是CMatrix.cs,Complex.cs,Matrix.cs,三份文件大小分別是42K、16K和39K。按照Truffer所說(shuō),分別是復(fù)數(shù)矩陣、復(fù)數(shù)和實(shí)數(shù)矩陣的基本運(yùn)算。
有匿名人士在回答中指出,Truffer的這些文件是極其不完整的,沒(méi)有實(shí)現(xiàn)矩陣運(yùn)算的基本功能,在效率方面也極其低下,不能作為科學(xué)計(jì)算庫(kù)使用。而且Truffer并沒(méi)有實(shí)現(xiàn)矩陣求逆、SVD分解、QR分解和特征值等基本操作。
甚至連Truffer已經(jīng)實(shí)現(xiàn)的內(nèi)容,在可擴(kuò)展性、易用性方面也令人擔(dān)憂。其一,矩陣的設(shè)計(jì)中不包含stride,broadcast,view等功能,只是單純的二維數(shù)組,不能擴(kuò)展到n>2維的情況。
從目前常見(jiàn)的numpy、Matlab、Octave、tensorflow、pytorch這些庫(kù)來(lái)看,使用n維數(shù)組是一個(gè)基本的要求,因?yàn)閿?shù)組的reshape、permutation都是科學(xué)計(jì)算中的常規(guī)操作,vectorize是常用的加速方法。他能想到的只支持二維數(shù)組的庫(kù)是Eigen3,但Eigen3有其特殊性所在:它是C++的庫(kù),而C++的循環(huán)代價(jià)極低,所以可以由使用者來(lái)進(jìn)行循環(huán)。Eigen3付出的代價(jià)就是代碼簡(jiǎn)潔性降低。Truffer作為一個(gè)意圖取代Matlab并以簡(jiǎn)單好用為目標(biāo)的軟件,沒(méi)有使用n維數(shù)組而使用二維數(shù)組,實(shí)在是有些令人驚訝。
因此,這位網(wǎng)友的結(jié)論是Truffer目前還挑不起替代MATLAB的大梁。
也有來(lái)自哈爾濱工業(yè)大學(xué)的王霖瑋同學(xué)表示,大家不要太苛刻,不妨給他們一些時(shí)間試試看。
結(jié)語(yǔ)
老實(shí)說(shuō),Truffer也并不是完全沒(méi)有機(jī)會(huì),MATLAB不也是從1個(gè)人開始慢慢做起來(lái)的嗎?想當(dāng)年,MathWorks在1984年成立時(shí),只有1名員工。第一筆收入是1985年賣給了MIT10個(gè)Matlab版權(quán),收入500美元。MathWorks公司早期很不起眼,有個(gè)玩笑稱它前7年員工數(shù)每一年翻一番,1984年1個(gè)員工,1985年2個(gè)員工,1986年4個(gè)員工,直到7年后的1991年也才只有128個(gè)員工。和今天很多初創(chuàng)公司相比,這個(gè)成長(zhǎng)速度就像是蝸牛了。但是他們力出一孔,圍繞著Matlab不斷增加功能,使Matlab成為一個(gè)行業(yè)領(lǐng)先的工具軟件。1997年,MathWorks的營(yíng)業(yè)額達(dá)到了5000萬(wàn)美元,380名員工。如今2019年MathWorks公司營(yíng)業(yè)額是10億美元,3000多員工,全球有400多萬(wàn)用戶。雖然從營(yíng)業(yè)額看并不大,但其實(shí)這種模式更值得學(xué)習(xí)——不斷積累,把一項(xiàng)技術(shù)做到極致,成為某個(gè)細(xì)分領(lǐng)域的隱形冠軍。
未來(lái),希望國(guó)內(nèi)也能多出現(xiàn)一些這樣不斷積累,把一項(xiàng)技術(shù)做到極致的企業(yè)。
-
matlab
+關(guān)注
關(guān)注
182文章
2960瀏覽量
230047 -
工業(yè)軟件
+關(guān)注
關(guān)注
2文章
180瀏覽量
15983 -
哈工大
+關(guān)注
關(guān)注
0文章
13瀏覽量
5803
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論