網路是由節點與節線組合而成,節點具有屬性,節線則除了屬性外還具有方向性 (可為單向或雙向),用來描述節點與節點之間的關係(圖1)。
網路是規劃問題的特例,也就是說網路可以轉換為規劃式來描述,使用網路來描述事情時有幾個優點。
- 第一個,比較容易圖像化,就算你沒學過作業研究,應該也看得出來在表達些什麼。
- 第二個,求解速度快很多,可以使用「標籤設定法」等方法來求解「最短路徑問題」,這些網路的求解法,大多會比用規劃式求解快很多。
工程網圖為網路的變形,如果搞不懂網圖跟網路之間的關係就容易造成觀念的混亂,所以下面來說明網圖跟網路之間的關係。
工程上常用的網圖有兩種,一種是PDM(先行式網圖),一種是ADM(箭線式網圖),ADM節點的資訊僅有「最早時間」與「最晚時間」兩個變數,作業時間則在節線的資訊內,可以想像成是2個網路的疊合,以「最早時間」與「最晚時間」拆成2個獨立的網路。
PDM的節點有4個變數,「最早開始時間」、「最早結束時間」、「最晚開始時間」、「最晚結束時間」,又因為「開始時間」與「結束時間」中間差了一個工期的時間,而工期是已知的,所以「開始時間」與「結束時間」之間的關係也是已知的不用求解,所以變數可以簡化成2個,所以也可以將PDM想像成2個網路的疊合,一樣是以「最早時間」與「最晚時間」拆成獨立的網路。
工程網圖的求解方法有兩種,目的都是要把變數求解出來成為一組解,而這一組解可以使總工期最短。
- 第一種是我們比較熟悉的方法,從第一個作業開始往後推到最後一個作業,可以把「最早時間」都推出來,當決定了總工期之後,再從最後一個工項往回推,可以把「最晚時間」都推出來,當變數都求解出來後,就可以依據「自由浮時」將要徑(CP)找出來,
「自由浮時」指的是延後幾天會影響到後面的作業。
- 第二種求解方法,照上面說的將網圖拆成2個網路,用標籤設定法等方法,把作業時間“加負號”,開始求解最短路徑問題,因為這個方法需要用到作業研究求解的技術,所以就不再贅述,有興趣的人可以自行讀一些作業研究的書籍。
工程排進度常用的「project」,在描述一個專案的網圖時,則是把PDM網圖像上面說明的一樣拆成兩個網路,所以「project」反而是用網路的概念當基底
一般顯示的是「最早時間」的網路,如果你是專案負責人,你應該會希望各個工項都是在「最早時間」就開始施工,以降低逾期的風險。
如果有人問你工程網圖表示的是「最早時間」還是「最晚時間」的時候回答不出來,那就再複習一下前面的說明吧。
雖然每次網圖都排的好好的,但是有太多不可控的因素會造成網圖一直在調整。
其實每一次網圖的調整就是把作業工期拉長,重新再排一次而已。
如果工期拉長的作業在要徑上面,那重排後總工期就會發生改變。如果不想要讓總工期發生改變,就只能把後面要徑作業時間縮短,就是代表需要趕工了。
關於工期的設定,「project」裡面可以直接填一個數字,也可以用計劃評核術(PERT)的概念,將工期以“機率分布”的方式來表示,當想用機率的方式表示時需要填入幾個參數,分別是:「最樂觀時間」、「平常時間」、「最悲觀時間」來產生一個「模糊」的工期。
當然最簡單的做法就是不要將工期用機率表示,直接填一個「最悲觀時間」就好
當工項都與工期都設定好的之後,先求解看看總工期會不會超出契約工期,如果沒超過的時候,可以在作業工期裡面自己加一些「浮時」進去,讓總工期盡量接近契約工期,應該很多人都是這樣操作的吧!
當你把浮時加進去之後需要紀錄一下你加在哪個作業,還有加了多少,之後如果因為一些因素調整網圖,導致總工期超過契約工期,就可以直接把浮時直接砍掉。在加入浮時的時候也要將同一個時間點的項目加入浮時,避免要徑發生改變,工程執行中判斷失準。
當你把網圖求出來之後,開始要來製作預定進度表(S-Cruve),以用來控管工程專執行中是否有進度落後的情形,有關工程網圖及S-Cruve之間的關係後續會再寫一篇文章詳細說明。
如果以上內容對你有幫助,請按下愛心、追蹤作者、如果你有任何問題,或是有相關經驗,都歡迎你在下方的留言區發表意見