建構超級電腦平行化AI演算法 實現節點自主化控制的「交響樂」製造
元智大學工業工程與管理系副教授鍾雲恭表示,講到超級電腦演算法的平行化設計,就必須考量幾個重點:解決間題的邏輯、演算的程序、程序與資料的分割與分段、辨識物件的獨立性、各獨立物件的抽象化宣告、平行演算法的永續維護方式、不斷改進的創造力、平行程式的除錯能力、持之以恆的決心,以及與協同合作夥伴的溝通;當然,最後是還要繼續不斷地評估與改進。
鍾雲恭強調指出,在大家談到工業4.0時,都會說到供應鏈,鮮少提及需求鏈(demand chain),但我們都知道沒有市場需求資料,怎麼決定供應鏈?工業4.0的產生原因之一,就是要因應市場「大量客製」的不同需求變化並及時滿足之。再說,IoE(Internet of Everything)究竟是偏供應端還是需求端呢?為了自IoE的資料混雜性中,鑑別出清澈的需求,至少有兩項工具不可少:分配式需求規劃(Distributed Requirement Planning;DRP),與協同式規劃預測與補貨(Collaborative Planning Forecasting and Replenishment;CPFR)預測機制,再藉由超級電腦平行運算,便能協同需求鏈上的各個據點,一起進行市場預測與補貨計劃。當然,執行經驗所產生的資料十分重要,因為它們正是為建構智慧化市場需求分析與智慧化製造排程的AI演算法,所必須要有的原始測試依據之一。鍾雲恭又進一步地表示,任何AI演算法最終只能求得可行解,而很難找到正確最佳解,除非限制因素能被精準的控制,但這也會增加演算程序的驗證與編碼平行化的困難度。
再就智慧工廠的SMART這個字來說,S可表示資安的Securable;M(Measurable),是指資料可評量的,資料多寡不是問題,資料有意義才是重點;A(Adaptable),可調適的,各節點的機制可自主調節適應自己的當下狀況;R(Retraceable),可循跡的,各節點產生的資料可被記錄、被整合與目視化分析;及T(Teachable),可教導學習的,各節點機制的動作可被教導、訓練、學習與自主改進。這其中尤以資安最重要,工廠數位化資訊如果不安全就不能被稱之為有智慧。「品質要自源頭管控(Quality at Sources)」,因此工業4.0的資安問題,也必須自源頭開始思考與設計。OSI七層網路架構的各型各類轉接點,以及各種系統與應用的軟體,都應該在DevOps的過程中,即刻就把保護設備裝置與軟體的安全機制考慮進去,才能達到線上即時就消滅資安犯罪的行為。
鍾雲恭並舉出一工廠智慧加工應用案例的AI演算概念,以及它在TensorFlow上的順序編碼與平行編碼的邏輯差異,與如何再將之配置在智慧工廠中的節點運作上。裝箱化(containerization)是日後各雲系與霧間之間與之內的重要互聯工具之一,它的架構十分適合於前面所述之「分配式人工智慧」的超級電腦平行化演算的設計,因為每個箱子或貨櫃要處理的事項都是獨立的。若分配超級電腦中的一個GPU或TPU去執行一個箱子或貨櫃的各個需求,每條緒線(thread)再分工平行執行各個指令或作業,在雲端平行化計算的結構上有天生的優點(Cloud Native) 。
鍾雲恭最後結論指出,30年前,自有超級電腦的平行化計算以來,就充滿許多挑戰,程式設計邏輯上的分段與復合就是其一;此外,也包括了常說的通訊協定(protocol)、硬體特定API問題,有各式各樣不同的平行架構,如GPU、TPU、AMD、多核心、叢集、私有雲及公有雲等;又有不同編碼語法的問題,特別是在執行速度快慢情況與邏輯鎖死(Race condition and deadlocks)、平行除錯與分析(Parallel debugging and profiling)及計算過程配置狀態(Distributed state),都會有所不同,而使得超級電腦程式的可攜性(portability)大減。但未來智慧工廠還將會是自主的與同步的,就像協同一致的「交響樂演奏」一樣,鍾雲恭總結指出。