演講嘉賓 | 孫海龍
回顧整理 | 廖 濤
排版校對 | 李萍萍
嘉賓簡介
孫海龍,北京航空航天大學(xué)教授。目前擔(dān)任CCF協(xié)同計算專委副秘書長、開源發(fā)展委員會執(zhí)行委員,入選國家級青年人才計劃。主要研究群體智能、智能化軟件開發(fā)方法、開源軟件和分布式系統(tǒng)等。主持了國家重點研發(fā)計劃項目、國家自然科學(xué)基金專項重點項目及面上項目等。在OSDI、IJCAI、AAAI和ICSE等發(fā)表論文130余篇,獲得中國發(fā)明專利授權(quán)40余項、美國發(fā)明專利授權(quán)2項。獲國家技術(shù)發(fā)明二等獎2項、教育部科技進步一等獎3項。
內(nèi)容來源
第一屆開放原子開源基金會OpenHarmony技術(shù)峰會——開發(fā)者工具分論壇
視頻回顧
打開 嗶哩嗶哩APP 搜索 OpenHarmony-TSC 視頻更清晰
正 文 內(nèi) 容
建立開源生態(tài)是發(fā)展系統(tǒng)軟件的有效途徑,群智方法是開源生態(tài)構(gòu)建與治理的重要手段。創(chuàng)新群智化社區(qū)構(gòu)建、持續(xù)性生態(tài)治理和全鏈?zhǔn)桨踩u估等技術(shù),研發(fā)支撐工具與系統(tǒng),助力OpenHarmony生態(tài)發(fā)展和萬物智聯(lián)新場景。來自北京航空航天大學(xué)軟件學(xué)院的孫海龍教授在第一屆OpenHarmony技術(shù)峰會上圍繞群智驅(qū)動的泛在操作系統(tǒng)分享了在開源生態(tài)構(gòu)建與治理方面的相關(guān)研究進展。
01?
系統(tǒng)軟件與開源生態(tài)
如今,隨著個人設(shè)備和技術(shù)的普及,國內(nèi)外越來越多的優(yōu)質(zhì)開源軟件和項目選擇“開源”。開源的操作系統(tǒng)有:Linux、OpenHarmony、Android、openEuler等;開源的編譯器有:GCC、javac、PyPy、rustc、LLVM、OpenArkCompiler等;開源的大數(shù)據(jù)和數(shù)據(jù)庫管理系統(tǒng)有:Hadoop、Spark、MySQL、openGauss、TiDB等,開源的云計算有:OpenStack、Docker;開源的人工智能模型有:TensorFlow、PyTorch、MindSpore、PaddlePaddle等。
開源軟件和開源軟件開發(fā)的概念是不一樣的。什么是開源軟件呢?一般來說,滿足國際OSI公認(rèn)的10條準(zhǔn)則的軟件就可以稱之為開源軟件。那什么是開源軟件開發(fā)呢?開源軟件開發(fā)指的是基于開源模式的軟件開發(fā)方法(“集市”模式),如Linux的開發(fā)就采用了典型的開源軟件開發(fā)方法。此外,有些開源軟件(如Unix、早期的Minix等)的開發(fā)并未采用典型的開源軟件開發(fā)方法,而是采用了“大教堂”模式。
建立開源生態(tài)是系統(tǒng)軟件研發(fā)的有效途徑。系統(tǒng)軟件研發(fā)是一個復(fù)雜工作,通常需要涉及多人協(xié)作,如果不開源,在開發(fā)效率和代碼質(zhì)量上存在一定局限性。舉個“Delphi效應(yīng)”的例子:當(dāng)需要多人討論一個復(fù)雜問題時,通常是少數(shù)資深專家在熱烈交流,而多數(shù)非資深專家不敢發(fā)表意見,導(dǎo)致集體產(chǎn)生的結(jié)論只能代表少數(shù)人的觀點,缺乏合理性。因此,“Delphi方法”建議討論者背對背討論,匿名發(fā)表觀點,再進行匯聚和迭代,形成Delphi效應(yīng),輸出更加合理的結(jié)論。面向系統(tǒng)軟件研發(fā)建立開源生態(tài)是一個重要模式,通過開源的途徑,有利于匯聚集體智慧,進而提高開發(fā)效率和代碼質(zhì)量。Linux項目的健康茁壯“成長”也得益于開源的“東風(fēng)”。
02?
泛在操作系統(tǒng)開源生態(tài)
隨著信息技術(shù)進入人機物融合的泛在計算時代,出現(xiàn)了許多新的計算模式和應(yīng)用場景,在這些新場景下,人機物融合泛在計算要求向下管理海量異構(gòu)資源、向上支撐各類大規(guī)模應(yīng)用,發(fā)展泛在操作系統(tǒng)是必然趨勢,也是破解“昆蟲綱悖論”難題的一種途徑。
建立泛在操作系統(tǒng)的開源生態(tài)面臨哪些挑戰(zhàn)?
群智貢獻不確定:大規(guī)模開放群體與開源資源難以進行有效協(xié)作組織,如何實現(xiàn)高效群智激發(fā)匯聚?
生態(tài)演化不確定:建立跨域關(guān)聯(lián)形成全局視圖并進行動態(tài)調(diào)控缺乏有效技術(shù)手段,如何實現(xiàn)高效生態(tài)構(gòu)建與可持續(xù)健康治理?
生態(tài)安全不確定:泛在操作系統(tǒng)復(fù)雜供應(yīng)鏈對潛在安全威脅的傳染放大效應(yīng),如何建立生態(tài)級的安全保障體系?
如何應(yīng)對泛在操作系統(tǒng)開源生態(tài)不確定性?傳統(tǒng)的工程范式能夠應(yīng)對生產(chǎn)規(guī)?;C,強調(diào)生產(chǎn)控制、聚焦軟件產(chǎn)品、有組織且承諾確定性,缺乏多樣性。當(dāng)前的開源范式能夠應(yīng)對演化多樣性危機,鼓勵創(chuàng)作自由、關(guān)注軟件作品、無組織且不承諾確定性。國防科大的王懷民院士提出軟件開發(fā)的“群智范式”,通過融合工程范式與開源范式的優(yōu)勢,形成“宏觀演化,微觀求精”的核心理念,為應(yīng)對泛在操作系統(tǒng)開源生態(tài)的不確定性提供了新途徑。
基于群智范式的思路,從以下3個方面構(gòu)建良好的泛在操作系統(tǒng)開源生態(tài):
生態(tài)構(gòu)建:面向泛在操作系統(tǒng)開源生態(tài)構(gòu)建的群智激發(fā)與匯聚,優(yōu)化開源貢獻的“長出率”;
持續(xù)治理:泛在操作系統(tǒng)開源生態(tài)的可持續(xù)演化機理與調(diào)控,開源項目的“長成率”;
安全保障:泛在操作系統(tǒng)開源生態(tài)的全鏈?zhǔn)桨踩治雠c保障,開源制品的“長優(yōu)率”。
如何實現(xiàn)AI驅(qū)動/群智驅(qū)動呢?孫海龍教授所帶領(lǐng)的國家自然科學(xué)基金項目團隊有以下研究進展:
一、群智范式:基于群智熵的激發(fā)匯聚度量。從群智范式的視角認(rèn)識和梳理開源項目的生命周期,嘗試建立開源項目及其生態(tài)的度量指標(biāo),并建立與群智激發(fā)匯聚的關(guān)聯(lián)。進而,圍繞開源群體協(xié)作和系統(tǒng)迭代演化,構(gòu)建基于群智熵的開源度量評估體系,探索群智開源背后的本質(zhì)。以RubyOnRails為案例,分析了該項目在12年長周期發(fā)展變化中群智激發(fā)熵的變化情況,如下圖所示:
二、群智化構(gòu)建:開源新手的助長策略。目前,盡管開源社區(qū)提出了眾多機制降低新手加入門檻,但是目前還不清楚新手是否還需要專家的指導(dǎo),如何指導(dǎo),以及指導(dǎo)對新手有多大意義。因此,可以通過分析good first issue解決過程中專家的參與情況,了解專家參與程度、指導(dǎo)關(guān)系結(jié)構(gòu)、討論主題、指導(dǎo)重要性,提高指導(dǎo)效率。
三、持續(xù)性治理:開源中的公司行為研究。通過對OpenStack(一個有超過十年開發(fā)歷史、成百個公司參與、有上千個項目的開源云計算操作系統(tǒng))開展研究發(fā)現(xiàn),結(jié)果發(fā)現(xiàn)由公司主導(dǎo)開源項目的開發(fā)這一現(xiàn)象不管是從整體開發(fā)角度還是單個版本,都非常普遍。并且,超過70%的項目被不到20%的公司主導(dǎo),超過一半的主導(dǎo)公司會同時主導(dǎo)多個項目的開發(fā)。通過隨機篩選60個被主導(dǎo)的項目,定性分析主導(dǎo)公司的背景、OpenStack、特定項目的目標(biāo)和項目類型功能等,進而通過擬合生存分析模型,發(fā)現(xiàn)公司主導(dǎo)與項目的生存概率存在顯著負(fù)相關(guān)關(guān)系。被單一公司主導(dǎo)的項目更可能走向死亡 (死亡風(fēng)險會增加126%)。此外,公司是利益驅(qū)動的,相比受自身興趣愛好驅(qū)動的志愿者,公司的參與帶有更強的不確定性。經(jīng)過統(tǒng)計發(fā)現(xiàn),超過一半的公司在對openstack做貢獻之后選擇撤出。進一步發(fā)現(xiàn),隨著版本演化,離開的公司數(shù)逐漸增加,超過了新加入的公司數(shù):某個版本加入的公司,后續(xù)會有一半撤出;當(dāng)前版本還在做貢獻的公司,有12%會在下一個版本撤出。基于問卷調(diào)查結(jié)果顯示,公司撤出原因多樣,撤出行為的預(yù)測受多種因素影響,其中“目標(biāo)已實現(xiàn)”以及“目標(biāo)已失敗”是公司撤離開源項目的最主要原因。
四、全鏈?zhǔn)桨踩U希汗?yīng)鏈構(gòu)建方法/缺陷定位與修復(fù)方法/工具原型系統(tǒng)。由于項目數(shù)量多、依賴關(guān)系復(fù)雜,目前缺乏一種有效的供應(yīng)鏈建模方法。因此復(fù)雜軟件系統(tǒng)的供應(yīng)鏈仍然是“黑箱”(以深度學(xué)習(xí)開源框架為例)。通過構(gòu)建和分析供應(yīng)鏈,能夠了解其結(jié)構(gòu)、應(yīng)用領(lǐng)域和演化因素,為探索泛在OS等復(fù)雜軟件生態(tài)的未來發(fā)展提供支撐。通過對供應(yīng)鏈的結(jié)構(gòu)、演化因素以及領(lǐng)域分布等進行分析,形成逐層的全網(wǎng)深度學(xué)習(xí)供應(yīng)鏈構(gòu)建方法。此外,傳統(tǒng)軟件缺陷的檢測與修復(fù)技術(shù)存在著難診斷、耗時長、需求大、發(fā)展快的挑戰(zhàn)?;谶w移學(xué)習(xí)將挖掘到的深度語義知識遷移到目標(biāo)項目的定位與修復(fù)任務(wù)中,進而對缺陷修復(fù)模板進行調(diào)優(yōu),能夠提升定位和修復(fù)任務(wù)的性能。另一方面,通過構(gòu)建供應(yīng)鏈依賴分析系統(tǒng)、社區(qū)風(fēng)險分析工具以及開源生態(tài)健康度量化評估工具等,并結(jié)合開源軟件應(yīng)用市場反饋,構(gòu)建工具原型系統(tǒng),保障全鏈?zhǔn)桨踩U稀?/p>
目前,孫海龍教授所在團隊已經(jīng)在基于群智范式的泛在OS開源生態(tài)理論、關(guān)鍵技術(shù)及系統(tǒng)的研究上取得進展,發(fā)表A類論文6篇,獲得ICSE' 22 Distinguished Paper Award 1項,研發(fā)了開源軟件供應(yīng)鏈全息知識圖譜構(gòu)建技術(shù),面向OpenHarmony, openEuler和Ubuntu等操作系統(tǒng)實例進行了技術(shù)驗證,并進一步提升了GitLink對開源生態(tài)的服務(wù)能力。
希望群智范式、GitLink等開源理論、方法與系統(tǒng)助力OpenHarmony等操作系統(tǒng)的開源生態(tài)構(gòu)建與治理,為我國開源創(chuàng)新戰(zhàn)略的實施做出貢獻。
E N D
點擊下方閱讀原文獲取演講PPT。
關(guān)注我們,獲取更多精彩。
審核編輯 黃宇
-
操作系統(tǒng)
+關(guān)注
關(guān)注
37文章
6850瀏覽量
123428 -
開源
+關(guān)注
關(guān)注
3文章
3370瀏覽量
42570 -
OpenHarmony
+關(guān)注
關(guān)注
25文章
3728瀏覽量
16397
發(fā)布評論請先 登錄
相關(guān)推薦
評論