智慧生產排程系統研習會-會後心得


智慧生產排程系統研習會-會後心得
前言:
智慧生產排程系統研習會舉辦於12/1()假國立成功大學製造資訊與系統研究所405教室進行。內容囊括了排程的學理、實際應用的案例分析與程式實作。在學理的部分,由國立台灣大學工業工程學研究所的黃奎隆教授負責解說,內容主要依循排程的Bible Scheduling: Theory Algorithm and Systems[1]一書,後面則有談到實務面對一些案例所用的啟發式演算法,而下午則主要由來自亞洲大學經營管理學系的鄭家年教授以講題「生產排程AI演算法」來談人工智慧(Artificial IntelligenceAI)中的基因演算法(Genetic Algorithm),在兩個主講題之後,則有來製造資訊所的生產力最佳化實驗室的兩位研究助理帶來的分享。本文將以個人參與研習的收穫來進行分享,至於研習會的內容,未來有機會再稍做整理分享網誌。
圖一 智慧生產排程系統研習會議程

正文:
這是畢業後第一次以業界人士的身份回去學校參加研習會的活動(下一次可能就是參加李家岩老師辦的大GM),雖然說以我的職務自動化系統開發工程師來說,是根本不會碰到排程這一個領域,但現在不論是否他是否了解以下這些名詞的意涵,但很多人嘴巴還是說著製造業、科技業要邁向「工業4.0」、「大數據分析」、「要導入AI。而延續過去研究領域所學過得一點AI知識,本次就是想在活動中,透過講者的分享,更詳細的了解在工業工程發展已久的領域「排程」中,「AI能夠做出什麼不同以往的貢獻」。


AI能夠做出什麼不同以往的貢獻
簡單來對照基因演算法在排程上的應用,可以看到尋求最佳解的思維上的差異,基因演算法選擇以母體的多個解不斷演進,透過交配與突變,使母體在演變過程中保留好的基因,同時也透過突變來維持多樣性,以避免收斂於區域最佳解,而最終從母體不斷演換的過程中,找到近似最佳解”.
鄭家年教授對於上面這一段的比喻我覺得非常傳神。他用抓嫌疑犯的方式來進行比喻。他覺得過去的數學規劃就像是偵探,依循一個演算法,沿著特定的步驟、路線找到「全域最佳解」,但當問題的可能解變多,很難在有限的時間內找出最佳解,就像柯南中的嫌犯已經連續犯下很多罪刑,才被抓到;然而,在計算速度已經與日俱進,可以平行運算、GPU能夠有效處理平行運算的現在,用基因演算法如同派出大量警力進行蒐證,可以在有限的時間內,找出可能的嫌疑犯人選。
這樣的說法就可以看出在製造業、科技業的排程問題中,需要的不是最佳解,而是有一個彈性可以選擇近似最佳解,追求 求解速度快近似最佳解不會跟最佳解差異太大 ,便是可接受的結果。(即便是最佳解,投入製造現場,也可能因為變異而導致與預期結果有所落差,因此有彈性的容忍值也是可以理解的)
AI實務應用的講解
而在下午的第二個講題「智慧生產排程實務」,或許對於許多在業界負責排程的先進來說,應該是非常有趣的章節。可以從鄭教授的講解中,看到許多有趣的實務應用案例,若從產業別有半導體製造醫療的復健環節IC設計驗證機能布製造中的紡織業染整,而這些產業面臨的挑戰也各有所不同,這邊正是過去製造管理的問題分析可以給我們的Insight,例如:半導體製造業有品質跟良率的問題這一部份可能是製程間的精度問題的疊加,兩者誤差所造成結果變成良率損失;醫療復健則是有點類似過去曾接觸的醫療急診室等候問題類似,如何安排進行復健的病人來診間的時間點,以降低復健病人的等待時間,機能布製造則是染整大量的不良(對色不良,除了染缸的染劑汙染、機台差異造成的色差等)造成導致迴流與急單,因而延誤交期、排程大亂。而這些問題都可以透過一些既有的AI手法進行像是機台分群、排程或預測。足以見是AI手法可以應用的範圍之廣與他的顯著成效。

程式撰寫案例分享
這次有兩位研究助理上進行分享,透過Package的調用,可以看到Python用解決排程問題已經相當簡易。雖然仍有程式語法的架構(例如:for-loop),較傳統解數學規劃的LINGO軟體困難,但跟真正寫C++來解這些問題已經簡單許多。
而讓我要讚嘆的是李家岩老師許多課程只要有程式的實作,他的課程助教、研究生,都能大方地分享到github(POLab github傳送門https://github.com/po-lab),除了程式,還有附上詳盡的解說,對於沒寫過程式或是說對於欲解決問題不甚熟悉的人,都能夠在這個網站得當一目瞭然的說明。而且這些人過去都不一定是資工系畢業的學生,能夠將所學習到的理論用程式實作出來並分享,真的是非常厲害;而資工系同屆的同學,也是非常偉大skydome20撰寫的R筆記(http://rpubs.com/skydome20/Table)應該閱覽數是本站的好幾倍哈哈(默默望向過去的實驗室的研究,即便曾聽過抱怨模擬軟體授權費、維護費,然後還是持續使用套裝的模擬軟體)

總結
排程實務案例的問題複雜度與日俱增,即便自動化導入已經讓製造的加工時間、搬運時間變異減低,讓部分產業的加工時間已經可以相當準確,然而在高科技業製程仍然複雜,工站數、途程多仍是需要啟發式演算法的協助,才能在一定的時間內求得近似最佳解。而在人員存在的比率仍相當高的傳統產業,更會因為人員的變異造成許多需要即時調整的部分,更需要AI的計算速度來協助應對變動快速的現場,或是整理出簡易的規則協助實務上的安排。

留言