■ 章朝奔 張善從
1.中國科學(xué)院大學(xué)經(jīng)管學(xué)院 北京 100190
2.中國科學(xué)院空間應(yīng)用工程與技術(shù)中心 北京 100094
近年來,我國對航天項目研制需求迫切,型號研制呈井噴式發(fā)展,高密度發(fā)射將常態(tài)化。多型號研制與高密度發(fā)射對航天項目進度有很強的剛性要求,傳統(tǒng)的型號研制管理模式已不能滿足當(dāng)下快速發(fā)展的需要。[1]就目前多數(shù)承接航天工程項目單位的實際狀況而言,項目進度嚴(yán)重滯后,成本遠超預(yù)估的現(xiàn)象頻繁發(fā)生,產(chǎn)生此類問題的根源就在于缺乏有效的管理方法。項目管理人員在制定項目進度計劃時,因不能較好識別和處理好任務(wù)間耦合情況,使得任務(wù)在執(zhí)行過程中存在大量的反饋返工現(xiàn)象,嚴(yán)重影響研制效率。[2]因此研究新的管理方法來為降低航天項目總體耦合度成為迫切要解決的問題。
設(shè)計結(jié)構(gòu)矩陣(Design Structure Matrix,DSM)作為項目管理任務(wù)排序的數(shù)字建模方法,具有較強的表達任務(wù)關(guān)系,提供直觀分析的優(yōu)點,在國內(nèi)外部分項目管理領(lǐng)域里得到的應(yīng)用。Rosnani Ginting 等[3]指出設(shè)計結(jié)構(gòu)矩陣具有直觀表述項目任務(wù)關(guān)系,方便項目管理里人員進行優(yōu)化的特點。麻省理工大學(xué)的Eppinger Steven D,Browning Tyson R[4]對設(shè)計結(jié)構(gòu)矩陣的概念及應(yīng)用場景開展了論述,設(shè)計結(jié)構(gòu)矩陣能夠較好運用于產(chǎn)品開發(fā)進度優(yōu)化。Toufik Boudouh 等[5]通過文獻綜述,提出利用設(shè)計結(jié)構(gòu)矩陣對項目任務(wù)重新排序可以有效減少任務(wù)反饋的數(shù)量。李艷[6]通過研究設(shè)計結(jié)構(gòu)矩陣成功對產(chǎn)品開發(fā)的進度進行改善。楊青等[7]進一步證實了設(shè)計結(jié)構(gòu)矩陣在復(fù)雜研發(fā)項目建模與優(yōu)化研究的可行性。楊寶森等[8]基于設(shè)計結(jié)構(gòu)矩陣建立了關(guān)系模型,迭代模型,重疊模型,上下游約束,層次模型五種模型用以描述項目任務(wù)關(guān)系。辛君捷[9]利用設(shè)計結(jié)構(gòu)矩陣對航空武器裝備復(fù)雜研制過程的耦合度較高的任務(wù)進行識別,提出對應(yīng)的改進措施減少高耦合度任務(wù)對項目進度的影響。羅新星[10]首次在軟件開發(fā)項目上使用設(shè)計機構(gòu)矩陣優(yōu)化項目流程,進一步拓寬了設(shè)計結(jié)構(gòu)矩陣應(yīng)用場景。陳庭貴,琚春華[11]提出將反饋數(shù)量較大任務(wù)轉(zhuǎn)為流程上游任務(wù),實現(xiàn)任務(wù)信息傳遞由反饋轉(zhuǎn)為前饋,降低了流程反饋帶來的迭代返工次數(shù)的項目任務(wù)解耦方法。
從上述的研究可知,學(xué)者們對耦合度的計算與降低耦合度的研究相對較少。有關(guān)研究所提出的任務(wù)反饋數(shù)量最少的優(yōu)化方法實際效果與理論效果存在一定的差距。本文基于設(shè)計結(jié)構(gòu)矩陣,構(gòu)建項目耦合度函數(shù),提出一種利用遺傳算法尋找較少的任務(wù)反饋和任務(wù)耦合的排序來降低項目總體耦合度的方法,并與任務(wù)反饋數(shù)量最少的解耦方法做出比較。
Donald Steward在1981年引入設(shè)計結(jié)構(gòu)矩陣來分析信息流,它是一個n階方陣,用于顯示矩陣中的各個元素的交互關(guān)系,有利于對復(fù)雜項目進行可視化分析。[12]
制定項目流程首先需對項目進行分解,將項目拆分為一個個獨立的,可操作的任務(wù),該過程被稱作項目任務(wù)分解。[13]在項目任務(wù)層面,項目管理人員對項目內(nèi)任務(wù)的關(guān)系進行判斷,建立設(shè)計結(jié)構(gòu)矩陣,確定任務(wù)間的信息前饋反饋關(guān)系。
若將某項目分解為n 項子任務(wù)(t1,t2,···,tn),其子項目構(gòu)成n階設(shè)計結(jié)構(gòu)矩陣Aij方陣:
在設(shè)計結(jié)構(gòu)矩陣中,aij=1 定義任務(wù)間發(fā)生了信息傳遞。若i >j 表示矩陣下三角區(qū)任務(wù)i 對任務(wù)j 產(chǎn)生信息前饋;若i <j 表示矩陣上三角區(qū)任務(wù)i對任務(wù)j產(chǎn)生信息反饋。[14]項目中任務(wù)信息反饋往往造成局部的迭代返工現(xiàn)象,若i 與j 相差值較大,表明任務(wù)信息反饋傳遞距離較遠,需要迭代返工的任務(wù)數(shù)量較多。
通過設(shè)計結(jié)構(gòu)矩陣,可將項目任務(wù)間存在的串行、并行以及耦合3種任務(wù)關(guān)系轉(zhuǎn)化為矩陣形式。[15]相較項目流程圖,設(shè)計結(jié)構(gòu)矩陣能夠更加直觀表現(xiàn)任務(wù)繁多復(fù)雜、耦合度高的項目。項目任務(wù)關(guān)系與設(shè)計結(jié)構(gòu)矩陣賦值對應(yīng)關(guān)系見表1。
表1 任務(wù)關(guān)系轉(zhuǎn)化為設(shè)計結(jié)構(gòu)矩陣
將任務(wù)關(guān)系通過設(shè)計結(jié)構(gòu)矩陣表達后,對反饋數(shù)量較多的任務(wù)執(zhí)行順序進行調(diào)整,降低項目總體耦合度[16]調(diào)整項目所分解的任務(wù)的順序,如圖1(a)所示,任務(wù)F 不依賴其他任務(wù)的輸入,只有對任務(wù)C 與任務(wù)E 的反饋。將任務(wù)F的順序從末位調(diào)至首位,圖1(c)為調(diào)整任務(wù)F后的設(shè)計結(jié)構(gòu)矩陣,矩陣上三角的非零數(shù)減少,項目表現(xiàn)為任務(wù)F對任務(wù)C與任務(wù)E的反饋轉(zhuǎn)為前饋。
圖1 設(shè)計結(jié)構(gòu)矩陣任務(wù)調(diào)序
一般地,為了避免過多任務(wù)反饋所帶來的進度風(fēng)險,需經(jīng)過多次任務(wù)順序調(diào)換,使得設(shè)計結(jié)構(gòu)矩陣滿足式(1)中任務(wù)反饋總數(shù)Fb值最低的條件[17]。
Fb值反應(yīng)了項目任務(wù)反饋總數(shù),單以項目任務(wù)反饋總數(shù)進行流程尋優(yōu),可能獲得多個對應(yīng)的項目任務(wù)排序不同解,其所對應(yīng)的項目任務(wù)關(guān)系不同,部分排序存在任務(wù)反饋總數(shù)低但任務(wù)反饋回路跨度較大的排序,大反饋回路任務(wù)無法避免路徑上多項任務(wù)迭代返工的傳遞,降低了項目解耦優(yōu)化效果。
結(jié)合項目管理實際,在任務(wù)反饋總數(shù)較少但任務(wù)反饋跨度較大的情況下,項目依然存著較大數(shù)量的任務(wù)迭代返工情況,項目任務(wù)耦合程度不僅與任務(wù)總反饋數(shù)相關(guān),更與任務(wù)反饋的前序任務(wù)與任務(wù)反饋任務(wù)數(shù)量之比及任務(wù)反饋跨度相關(guān)[18],構(gòu)建式(2)任務(wù)耦合程度函數(shù)Fc:
當(dāng)項目任務(wù)量較大,n 項任務(wù)需要進行n!比對,無法通過簡單的任務(wù)調(diào)序與手動計算獲得最優(yōu)解為了使得設(shè)計結(jié)構(gòu)矩陣更具實用性,通過引入智能算法對設(shè)計結(jié)構(gòu)矩陣的排序最優(yōu)值進行求解,以獲得項目總體任務(wù)最低耦合度的最優(yōu)任務(wù)排序。
遺傳算法(Genetic Algorithm,GA)[19]是模擬達爾文生物進化論的自然選擇和遺傳學(xué)機理的生物進化過程的計算模型,是一種通過模擬自然進化過程搜索最優(yōu)解的方法。其主要特點是直接對結(jié)構(gòu)對象進行操作,不存在求導(dǎo)和函數(shù)連續(xù)性的限定;具有內(nèi)在的隱并行性和更好的全局尋優(yōu)能力;采用概率化的尋優(yōu)方法,不需要確定的規(guī)則就能自動獲取和指導(dǎo)優(yōu)化的搜索空間,自適應(yīng)地調(diào)整搜索方向。遺傳算法以一種群體中的所有個體為對象,并利用隨機化技術(shù)指導(dǎo)對一個被編碼的參數(shù)空間進行高效搜索。
遺傳算法基本實現(xiàn)流程如圖2所示:
圖2 遺傳算法基本流程
因此,利用遺傳算法可將排序?qū)?yōu)問題轉(zhuǎn)化為獲得滿足適應(yīng)度函數(shù)最大值的種群,其種群染色體對應(yīng)設(shè)計結(jié)構(gòu)矩陣任務(wù)排序即為項目任務(wù)最優(yōu)排序。
采用任務(wù)編碼方式,在一個具有n項任務(wù)的項目中,可通過任務(wù)關(guān)系建模,獲得n階設(shè)計結(jié)構(gòu)矩陣,將任務(wù)由1至n非重復(fù)構(gòu)成n位染色體,通過初始種群生成隨機順序染色體,經(jīng)過遺傳選擇交叉變異生成子群的方式來進行改變?nèi)蝿?wù)順序的項目總體任務(wù)耦合度計算,交叉變異規(guī)則如圖3所示。每一類子群所攜帶染色體對應(yīng)一種設(shè)計結(jié)構(gòu)矩陣任務(wù)排序,對子代種群進行交叉變異處理替換父群中低適應(yīng)度的個體,使得每代種群的適應(yīng)度不低于上一代種群,直至獲得最高適應(yīng)度的子群。[20]
圖3 染色體交叉、變異規(guī)則
子代染色體交叉與變異需滿足如下規(guī)則:父群適應(yīng)度函數(shù)值較大者,可以保持較為完整的染色體長度。染色體變異概率視種群染色體長度而定。
遺傳算法適應(yīng)度是種群對環(huán)境的適應(yīng)程度的表現(xiàn),適應(yīng)度函數(shù)值越大,表現(xiàn)為種群對環(huán)境適應(yīng)度越高,在設(shè)計結(jié)構(gòu)矩陣任務(wù)排序中,表現(xiàn)其排序任務(wù)間耦合度較低。
將設(shè)計結(jié)構(gòu)矩陣的行i與列j作為變量,通過遺傳算法進行尋優(yōu),求得最優(yōu)任務(wù)安排計劃。定義適應(yīng)度函數(shù)Fs:1
其適應(yīng)度函數(shù)表現(xiàn)形狀為,個體染色體序列所對應(yīng)的項目任務(wù)總體耦合度較大,其適應(yīng)度函數(shù)值較小,通過遺傳算法尋優(yōu)適應(yīng)度函數(shù)值最大者即為項目任務(wù)總體耦合最小者。
算子選擇策略為輪盤賭選擇策略,即子群將染色體傳入下代種群的概率為該子群的適應(yīng)度呈正比,適應(yīng)度大的個體將染色體傳入下代,以實現(xiàn)整個種群的適應(yīng)度保持優(yōu)化。
算子交叉規(guī)則為適應(yīng)度比值法,如式(4)R 值表示子群保留父群染色體比例為父群1 與父群2 的各自適應(yīng)度與二者適應(yīng)度總和之比,適應(yīng)度高的父群獲得染色體保留比例高,當(dāng)父群1 與父群2 保留的染色體上的數(shù)發(fā)生重復(fù)時,對保留染色體比例少的父群從前至后檢索未重復(fù)數(shù)字補足染色體。
算子變異規(guī)則為隨機點交換,若染色體長度為n時,隨機選擇i,j兩點且i <j <n。i,j為染色體第i位與第j位基因值,將二者位置對調(diào)后視作染色體變異,以概率Cm值對染色體進行變異作為子群,替換被淘汰的適應(yīng)度較低的個體。
算法終結(jié)策略為適應(yīng)度函數(shù)值達到最大保持多無變化或者子群代數(shù)已經(jīng)達到所設(shè)置的最大值位置。
本文以載人航天工程Z項目為實證研究案例。項目描述:該項目為試驗載荷提供滿足非牛頓引力實驗項目要求的超高微重力環(huán)境水平,加速度計為實驗傳輸重力參數(shù);工程電子學(xué)設(shè)計保證有效載荷供電與元器件運行環(huán)境,避免電磁干擾帶來的數(shù)據(jù)記錄影響;結(jié)構(gòu)熱工藝設(shè)計確保有效載荷在執(zhí)行空間任務(wù)時面對復(fù)雜的空間環(huán)境有著較好的適應(yīng)性;工裝設(shè)計保證產(chǎn)品運輸損壞,涉及較多產(chǎn)品接口匹配問題;地檢設(shè)備模擬各項零部件,測試系統(tǒng)接口統(tǒng)一性;結(jié)構(gòu)件為該裝置提供機械支撐;六性設(shè)計確保該裝置在空間環(huán)境下正常工作;核心部組件設(shè)計確保其功能實現(xiàn)。承研項目重要性高。
Z項目主要由8個任務(wù)構(gòu)成如圖4所示,項目具體的所含任務(wù)為加速度計設(shè)計、工程電子學(xué)設(shè)計、工裝設(shè)計、結(jié)構(gòu)熱工藝設(shè)計、地檢設(shè)備設(shè)計、結(jié)構(gòu)件設(shè)計、六性詳細設(shè)計、核心部組件設(shè)計。為了通過設(shè)計結(jié)構(gòu)矩陣表達任務(wù)間關(guān)系,將項目Z的8項任務(wù)由A至H編號。
圖4 載人航天工程項目Z任務(wù)分解
選擇該項目的原因如下:代表性。Z 項目嚴(yán)格按照載人航天工程項目頂層規(guī)范執(zhí)行,其項目管理模式,項目研制流程編制具有載人航天工程項目的代表性,該項目優(yōu)化所得的結(jié)論也適用于其他系統(tǒng)載人航天項目;典型性。Z項目包含六性設(shè)計、工裝設(shè)計、電子學(xué)設(shè)計以及地檢設(shè)計,與各承研單位項目有著較多近似任務(wù)。該項目包含良好的實驗環(huán)境,方便獲取更優(yōu)良的項目數(shù)據(jù),可作為載人航天工程項目管理方法應(yīng)用實踐的典型代表。
項目管理人員通過專家調(diào)查法結(jié)合德爾菲法,充分了解項目任務(wù)之間的前饋與反饋關(guān)系后,用摩爾值表達任務(wù)間的串行、并行及耦合關(guān)系,獲得載人航天工程項目Z初始任務(wù)設(shè)計結(jié)構(gòu)矩陣。載人航天工程項目Z設(shè)計結(jié)構(gòu)矩陣如圖5所示。
圖5 項目Z初始設(shè)計結(jié)構(gòu)矩陣
在項目Z中,任務(wù)G六性詳細設(shè)計,需要給工程電子學(xué)設(shè)計,工裝設(shè)計,結(jié)構(gòu)熱工藝設(shè)計、地檢設(shè)計進行提供詳細參數(shù)與接口標(biāo)準(zhǔn);同時工裝設(shè)計,結(jié)構(gòu)熱工藝設(shè)計需要來自工程電子學(xué)設(shè)計的信息輸入。整個項目流程中,矩陣上三角任務(wù)反饋總數(shù)為9,且存在著3 個超過總?cè)蝿?wù)數(shù)量半數(shù)的大反饋回路與3個多任務(wù)反饋回路。由此可見,項目Z 初始設(shè)計結(jié)構(gòu)所表示的項目流程耦合度較高。
在該項目中,8 個任務(wù)共存在40320 種任務(wù)排序可能。通過python 編程,導(dǎo)入圖5 項目Z 初始設(shè)計結(jié)構(gòu)矩陣,結(jié)合遺傳算法對設(shè)計結(jié)構(gòu)矩陣任務(wù)排序進行尋優(yōu),具體參數(shù)設(shè)計如下,群體規(guī)模T 為100,種群交叉概率0.7,種群變異概率0.3,終結(jié)條件為進化200代數(shù)。
適應(yīng)度是個體對環(huán)境的適應(yīng)程度的表現(xiàn),適應(yīng)度函數(shù)值越大,表現(xiàn)為個體對環(huán)境適應(yīng)度越高,在設(shè)計結(jié)構(gòu)矩陣任務(wù)排序中,其表現(xiàn)形式為排序任務(wù)間耦合度較低。將8項任務(wù)生成初始種群后,進行遺傳選擇,交叉與變異,交叉方式為式(4)值,比對適應(yīng)度函數(shù)式(3)大小,進化200代后種群后輸出優(yōu)化后設(shè)計結(jié)構(gòu)矩陣。
經(jīng)過遺傳算法尋優(yōu)后得圖6 任務(wù)排序的設(shè)計結(jié)構(gòu)矩陣。
圖6 優(yōu)化設(shè)計結(jié)構(gòu)矩陣
優(yōu)化后的設(shè)計結(jié)構(gòu)輸出任務(wù)順序為六性詳細設(shè)計、加速度計設(shè)計、結(jié)構(gòu)熱工藝設(shè)計、工程電子學(xué)設(shè)計、結(jié)構(gòu)件設(shè)計、核心部組件設(shè)計、工裝設(shè)計、地檢設(shè)備設(shè)計。設(shè)計結(jié)構(gòu)矩陣右上方的反饋任務(wù)數(shù)量減少,只存在AD 兩項耦合任務(wù),項目整體任務(wù)耦合度較低。
項目任務(wù)實際來看,六性詳細設(shè)計任務(wù)靠后往往會導(dǎo)致構(gòu)熱工藝設(shè)計、工程電子學(xué)設(shè)計及工裝設(shè)計、地檢設(shè)備返工,提前制定詳細六性設(shè)計可以有效避免四項任務(wù)的返工,減少任務(wù)間信息協(xié)調(diào)時間。加速度計設(shè)計需要接收來自結(jié)構(gòu)熱工藝設(shè)計及工程電子學(xué)設(shè)計的反饋,加速度計設(shè)計與結(jié)構(gòu)熱工藝設(shè)計及工程電子學(xué)設(shè)計任務(wù)間涉及接口匹配問題與電子學(xué)參數(shù)問題,在實際工作中可以將結(jié)構(gòu)熱工藝設(shè)計及工程電子學(xué)設(shè)計兩項任務(wù)并行執(zhí)行,并保證兩項任務(wù)能及時給加速度計設(shè)計的信息反饋,避免產(chǎn)生工程短線。
執(zhí)行遺傳算法獲得最終項目設(shè)計結(jié)構(gòu)矩陣,需要對項目任務(wù)優(yōu)化效果進行對比計算。為比較最少任務(wù)反饋數(shù)優(yōu)化與最低耦合度優(yōu)化效果,對該項目做最少任務(wù)反饋數(shù)優(yōu)化的設(shè)計結(jié)構(gòu)矩陣如圖7所示。
圖7 最少任務(wù)反饋數(shù)優(yōu)化
根據(jù)式1與式2,可以分別計算出最少任務(wù)反饋數(shù)排序與最低耦合度任務(wù)排序載人航天工程項目Z任務(wù)優(yōu)化前后的任務(wù)反饋總數(shù)與任務(wù)總體耦合度,表2 為項目設(shè)計結(jié)構(gòu)矩陣優(yōu)化前后對比數(shù)據(jù)。
表2 項目設(shè)計結(jié)構(gòu)矩陣優(yōu)化前后對比
載人航天工程項目Z的初始設(shè)計結(jié)構(gòu)矩陣通過遺傳算法尋優(yōu)后,其輸出結(jié)果的矩陣中任務(wù)反饋總數(shù)降低了7,任務(wù)反饋總數(shù)為優(yōu)化前的0.22。任務(wù)耦合度值比優(yōu)化前減少了92.2%,項目中大任務(wù)反饋回路消失,多任務(wù)反饋回路,多任務(wù)耦合優(yōu)化為任務(wù)間數(shù)量較多的大反饋回路變?yōu)閿?shù)量為1 和任務(wù)跨度為1 的小回路。相較最少任務(wù)反饋數(shù)排序,項目任務(wù)耦合度得到進一步降低,從而有效地避免了頻繁的任務(wù)反饋和任務(wù)耦合導(dǎo)致任務(wù)重復(fù)而造成項目進度滯后的問題。
本文針對航天工程項目復(fù)雜,內(nèi)部迭代繁多,任務(wù)耦合嚴(yán)重,現(xiàn)行項目管理方法難以直觀表達項目任務(wù)關(guān)系,對項目任務(wù)進行解耦優(yōu)化的問題,提出如下解決方法:
(1)利用設(shè)計結(jié)構(gòu)矩陣將任務(wù)流程通過矩陣表達,矩陣上三角區(qū)反映項目任務(wù)總體反饋情況,項目管理人員可通過設(shè)計結(jié)構(gòu)矩陣對反饋數(shù)量較多的任務(wù)進行識別。
(2)改進項目任務(wù)排序?qū)?yōu)目標(biāo)函數(shù),構(gòu)建基于反饋長度與反饋影響程度的項目任務(wù)耦合度評價函數(shù)對原有設(shè)計結(jié)構(gòu)矩陣排序存在的上三角的任務(wù)反饋數(shù)量多,項目任務(wù)耦合度較高的問題進行優(yōu)化。
(3)通過遺傳算法解決設(shè)計結(jié)構(gòu)矩陣任務(wù)流程排序?qū)?yōu)計算問題。構(gòu)建尋求項目總體任務(wù)耦合度最低的目標(biāo)函數(shù),結(jié)合載人航天工程項目Z 案例實證。結(jié)果表明,求解輸出后的設(shè)計結(jié)構(gòu)矩陣任務(wù)反饋的大回路反饋數(shù)明顯減少,項目任務(wù)總體耦合度得到了降低,避免了工程短線發(fā)生。