參考 題型範例 - 全國高級中等學校技藝競賽平台 工業類 題目:派屈網路的模擬 派屈網路(Petri net)被用來模擬操作程序,例如:交通流程、工業製程等。在此,把它簡化如圖 1。它的表示由小圓盤及轉移棒組成。小圓盤分為三類:輸入、內部及輸出等。「輸入小圓盤」只出現在轉移棒的輸入端,「輸出小圓盤」只出現在轉移棒的輸出端,而「內部小圓盤」則在轉移棒的輸入端及輸出端均有,如圖 1。轉移棒有「1-1轉移棒」及「2-1轉移棒」,如圖 1 的 t1及 t2。轉移棒在被執行時,小圓盤被放入權杖或被移除權杖;而轉移棒是否執行?端視其輸入端的所有小圓盤是否都被放入權杖?若是,則該轉移棒將被執行,執行時,其輸入端的所有小圓盤的權杖全都被移除,且其輸出端的小圓盤被放入權杖,如圖 2。注意:若輸出端小圓盤的權杖尚未移除,則該轉移棒將不執行。每一個小圓盤只能放入一個權杖,被移除後就空了,只能再等其上之轉移棒滿足條件執行時再放入。之後,依序檢查各個轉移棒是否符合執行條件而予以執行。而且每次只在 1 個「輸入小圓盤」放入權杖,接著執行該派屈網路,可一直重複執行。權杖在圖示時以小黑點表示,如圖 2;在程式執行時,小圓盤有權杖時可用 1 表示,無則以 0 表示之。而我們也可以隨時查看各個小圓盤擺放權杖的情況。為了簡化複雜度,在此限制每個轉移棒的輸入端(上方)連接一個(例如:圖 1 的t1)或二個小圓盤(例如:圖 1 的 t2),轉移棒的輸出端(下方)只能連接一個小圓盤;小圓盤的上方連接一個轉移棒,小圓盤的下方連接一個或二個轉移棒(例如:圖 1 的 f)。此外,網路不可以形成迴圈。 執行結果 ![]() 執行結果 ![]() 執行結果 ![]() |