由於運行仿真模型耗時耗力且成本高昂,我們現在使用 JMP 基於設計實驗來建立替代元模型,從而顯著提高從模擬中提取洞察的效率。與傳統輸出(例如 3D 視覺化效果或單次模型運行期間提供的詳細運行統計資料)相比,元模型能夠更深入地洞察系統行為。
我們的第一個元模型為一個長期存在的分析難題提供了清晰的解決方案:一條包裝線上有多個緩衝區,在有限的資金資源下,每個緩衝區應該有多大才能優化生產線性能?我們也提出了其他幾個元模型,包括比較採用合併-分流機制的生產線的幾種佈局方案,以及緩衝區位置對性能的非線性影響。
最後,我們展示了一個堆高機模擬案例研究,該模擬用於支援是否在兩個倉庫之間建造直達通道的投資決策。代理模型已成為我們模擬工作流程中至關重要的一部分,而JMP在使這種方法更易於理解、更有效率、對我們的團隊和利害關係人更具影響力方面發揮了關鍵作用。
大家好,我是 Shannon Browning。我是 Haskell 公司的系統分析技術主管。我們公司從 2023 年開始使用 JMP,但我們在離散事件模擬方面擁有豐富的經驗。離散事件模擬是製造系統和服務系統中的常用工具,它使我們能夠在虛擬環境中嘗試新的控制策略、新的佈局、不同的流程、邏輯等等,然後再實際應用於實際場景。
自從採用JMP以來,我們運用所謂的替代模型或元模型(模型的模型)取得了巨大成功,從而提供了額外的洞察。因此,我們圍繞著模擬模型本身進行實驗設計,系統地改變輸入以理解模型,從而能夠在更高層次上觀察系統行為。
與更偏向物理或破壞性實驗的實驗設計相比,我們在這裡遇到了一些不同的挑戰。計算機時間實際上是唯一的限制因素。我們並不擔心材料限製或許多可行性限制,這些限制可能會導致你在傳統實驗設計(DOE)中減少重複次數或場景設置,這確實帶來了很多機會,但也帶來了一些有趣的挑戰。許多離散事件模擬本質上往往是隨機的,這意味著我們在模型中產生的是隨機變數。
我們可以使用一種名為「通用隨機數」的技術,讓每個不同的設定運行多次,但每次都使用相同的隨機種子。這樣我們就能得到足夠相似的行為,從而可以將其視為隨機效應,例如在混合效應模型中。但我認為真正有幫助的是深入研究其中一些方法,並看看它們在不同的應用場景中的表現。
我們在研究過程中發現了三個非常引人注目的不同用例。其中一個是長期存在的難題:在高度自動化的高速包裝線上確定緩衝區的位置。我們將討論第二個用例,它更詳細地介紹了控制和輸送機的實體佈局。第三個用例,我們將研究工廠內的堆高機流量,並試圖了解對佈局變更進行重大投資是否會帶來回報或效果。
我先來深入解一下裝瓶線模擬。在這個圖中,請看左下角,我們更多是在流程圖層面上呈現系統。我們只是使用軟體工具,拖曳不同的處理器和提示並進行排列。每個處理器都會有隨機的停機時間,而在停機時間之間,它們會以固定的速率運作。可能會出現輕微的超速,這讓我們能夠看到緩衝區可以及時斷開這些處理器的連接。因此,一個處理器的停止並不會立即導致上游處理器停止運作。我們提供的緩衝區越多,安裝量就越大。但這也存在一些收益遞減的情況。這其中存在一些非線性響應。
右下角顯示了佇列動態隨時間的變化。當某個進程停止時,資料會迅速累積。然後,當進程恢復時,速度會有所不同,因此緩衝區會隨著時間的推移而減少。這裡我們需要考慮幾個變量,例如機器可靠性、超速、緩衝區大小等等。我們面臨的挑戰之一是,面對如此多的變量,我們該考慮哪些變數?這取決於我們在決策過程中所處的位置,這往往是我們想要達到的目標,或是決定了我們可以調整哪些變數。當我們到達這裡時,我們已經有很多機器可供選擇了。實際上,剩下的唯一一件事就是查看這些緩衝區。
傳統上,你會孤立地看待這些因素。你會說,好吧,我在這裡放一個緩衝液,然後每次只改變一個因素。但我們用JMP做到了,我們將每個緩衝液的時長設定為0到4分鐘。我們對每個組合都進行了10次重複實驗。所以每個組合都有9個水平,這使我們能夠很好地控制響應的曲率。因為我們身處電腦模擬的世界,這意味著有729種不同的組合。
模型運行速度很快,但每次重複實驗仍需10次。我們運行了該模型超過7000次,耗時半天甚至更久才完成所有場景的測試。產生資料後,我們就可以在JMP中查看。右上角顯示了預測刻畫器。從所有這些緩衝液的基線都為零開始,我們可以清楚地看到,從這個位置到緩衝液,響應效果最佳;在第三個位置,響應效果稍差;在第二個位置,響應效果則幾乎沒有。但我們也模擬了交互效應。我們可以在這個預測刻畫器中看到,例如,當我們選擇在第二個緩衝液上放置兩分半鐘,然後在第三個緩衝液上放置兩分鐘時,第一個緩衝液的曲線會變得更平坦,因為你不能說,我要同時充分利用這三個緩衝液的優勢。這其中有交互作用:如果我在第二個緩衝液上放置大量緩衝液,那麼第三個緩衝液的效果就會降低,依此類推。
這真是一個強而有力的洞見。我認為最初的專案計畫是為這三個緩衝區各投資約50萬美元,而我們至少可以明確地說,其中一個緩衝區是不需要的。因此,我們可以在那裡籌集至少50萬美元的資金。然後,對於第三個緩衝區,我們可以進行微調。這樣就不必對那個緩衝區進行全額投資。所以,這對專案來說是一個非常好的洞見。
回過頭來,我們接下來要探討的是系統實際運作的更多細節。在這個例子中,有一條現有的生產線,記得上一節我們研究了兩個單元操作之間的超速差異是如何導致緩衝區被佔用的。他們對系統的瓶頸進行了改進,使其運行速度提高了約 10%。這意味著超速差異要小得多。這導致了傳送系統本身的運作問題。
我們有兩條產品進線,還有一個用於重新進料的離線料斗,以及所有這些設備匯聚在一起的合流分流綜合體。我們現場的自動化工程師注意到,根據距離,縮小一些間隙有挑戰。隨著瓶頸速度的加快,這項挑戰也隨之顯現。我們利用模擬技術,研究如果將其向上游移動12英尺會怎麼樣?如果將其向上游移動24英尺會怎樣?
顯然,切割鋼材、重新佈置所有傳送帶並完成所有調試需要大量投資。從離散事件建模的角度來看,這對我們來說也更具挑戰性,因為我們必須以三種不同的方式重新建立佈局。我們擁有原始佈局,然後在此基礎上進行了兩次不同的迭代。我們修改了佈局,微調了控件,然後進行了測試。所以,正如我之前所說,我們可以進行一系列不同的迭代,而這次的迭代會更加詳細,但每次進行這些模型調整的成本都會略高一些。
在將資料輸入JMP之前,我們完全沒有想到上游有一個約束。我們知道下游設備與下一台機器之間沒有足夠的空間。但我們發現,當我們將其移動到上游12英尺,然後又移動到上游24英尺時,我們離上游設備太近了。所以我們將這個數據輸入JMP。我們使用擬合模型平台。我們對這個模型使用了二次擬合。我們發現,隨著我們越來越靠近上游,效能會開始下降。
這對我們來說有點意外,如果不代入這個公式,我們可能根本沒注意到。螢幕上沒有顯示,但我們能從這裡得到擬合方程,然後求導,找到最大值點。當然,挑戰在於這個點附近的不確定性是多少,這個點在12英尺到24英尺之間。
當然,一種方法是,在接近最佳點的18英尺處建立一個模型,然後根據該數據進行重新擬合。但我們在預測分析器中也可以看到二次擬合的一階和二階導數周圍的不確定性。這或許能幫助我們理解。我們知道最大值通常位於12到24英尺之間,但具體位置尚不清楚。還有其他變數會影響這一點。實際建構系統也存在一些實際問題。但這確實有助於我們更深入地了解情況。
我們最後要研究的是堆高機交通。這家工廠當時正在提高產量。他們還沒有到達那裡,所以我們無法憑經驗觀察接下來會發生什麼。不過,我們建立了一個包裝線的流程圖模型,並將其作為該模型的核心。然後,我們編寫了堆高機調度規則及其任務,以及堆高機向生產線供料和卸料所需的所有操作。
我們在這裡發現的一件事是需要將這些堆高機視為分類變數。當我們第一次擬合這個模型時,我們發現這裡有一個非線性關係。直到我們把它當作分類變量,我們才確定這一點。然後我們可以看到,如果沒有這個連接器,當你有五輛活躍的堆高機時,你實際上不會從這六輛堆高機中獲得任何更多的收益。然後我們還可以看到,在這個預測概況中,如果我說,添加這個連接器,也就是針對這種特殊情況的佈局創新,如果我們添加這個連接器,這裡真的有很大的潛在收益。這就是我們可以用作基礎來判斷這可能是值得投資的。這是對佈局改變的一項重大投資。
我們也能夠查看這些交互分析器。您可以清楚地看到,無論有沒有這個連接器,交互分析器都會對它造成限制。如果他們不投資消除瓶頸或緩解流量擁堵,那麼在營運上他們實際上什麼也做不了。
這是對我們已建立的模擬模型中 JMP 應用的一些快速概述。我想說的是,這些元模型幫助我們的模擬分析師看到了一葉障目之所及。使用這些離散事件模型時,您有時會迷失方向,因為其中涉及太多不同的因素,而且會產生大量數據,這些數據可能很難與我們正在嘗試解決的實際業務問題或專案聯繫起來。感謝您抽出時間,如有任何疑問,請隨時告訴我們。