工業自動化無處不在。如工廠中執行精確自動化任務的機械臂。大型倉庫中沿著預定的軌道行駛取送包裹的機器人。地下礦井中可以在沒有人工操作的情況下沿著預程式設計軌道行駛的,大型輪式裝載機等等。
然而,許多行業仍然依賴人工操作員和勞動力。這些行業通常處於高度非結構化和變化的環境中,同時這些環境也是人工工作最危險的環境,如建築、樹木收割和採礦等。
自動化和非自動化任務:與地下礦井中複雜的環境相比,工廠中的環境更加簡單有組織
精確的重要性
Algoryx在重型機械的全系統物理模擬方面有十多年的經驗。其核心產品AGX Dynamics是一個用於多體和多區域動力學數值模擬的SDK。
為了幫助行業解決現實世界的問題,Algoryx已經跨越了理想化的模型,他們開發了既遵循物理基本原理又允許對複雜的現實世界進行建模。例如,模型考慮了接縫、彈塑性梁、接縫極限、可斷裂接縫、分段線性模型等方面的間隙。
這些都是我們在現實中遇到的常見現象,如果沒有建模到正確的水平,模擬將無法解決任何現實世界中的問題。AGX Dynamics中的可變時間步進器使實時或更快地模擬這些非理想化模型的不連續(或非光滑)物理事件(如撞擊)成為可能。這是透過處理每個時間步長中的幾何和全域性問題而實現的,所以最終可以在無限長的模擬時間內產生穩定的物理模擬效果。結合Algoryx的快速直接求解器,可以以機器精度求解大型稀疏系統,這使得模擬而無需任何特殊處理大質量比的“剛性”系統成為可能,。
機器的動力取決於許多機器部件,包括髮動機型別、變速箱、差速器、液壓系統、輪胎、履帶以及電纜或電線等可發生形變的物體,並且機器必須能夠與環境互動。就如同船必須漂浮在水中,輪式裝載機必須裝慢土進行行駛。所有這些元件都使用相同的框架進行建模,從而實現統一、緊密耦合的模擬。這種模型和數值結合的方法是基於最新的科學文獻得出的。
AGX Dynamics的專業培訓模擬器和工程工具憑藉其效能和準確性獲得眾多行業合作伙伴的信任。在訓練模擬器中,操作員學習能夠如何以安全有效的方式控制機器。由於模型的超高逼真度,操作員的技能(通常以眼肌協調性來衡量)可以得到快速提升。
另一方面,工程工具需要對機器與環境相互作用時的動力學進行深入分析——例如,測量關節中的真實力或電動傳動系統的能耗。模擬可以引導早期設計決策,並能夠實現在現實世界中也會觀察到相同的行為,這對客戶來說具有巨大的價值。現在,得益於AGX Dynamics與Unity的整合,可以使用功能強大的Unity Editor來設定機器和環境模型,並使用AGX Dynamics對其進行模擬。
成功地將模擬轉移到現實世界
自動化這些車輛的工作比自動化一個機器人在工廠裡重複相同的取放動作要困難得多。不斷變化的環境使問題變得更加複雜,任務的動態性也是如此。與經驗不足的操作員相比,高技能的操作員可以利用車輛的動力和與他們互動的物體大大提升工作效率。
事實證明,如何將其與車輛控制聯絡起來或做出自動決策真的很難解決。操作員通常根據直覺做出決定,這些直覺基於許多不同的感官輸入,如視覺、聲音和車輛的反作用力等。這種直覺是在數千小時的訓練中建立起來的,在這些訓練中,操作員經歷了不同但相似的情況,首先是在訓練模擬器中,然後是在真實的機器上。訓練模擬器需要實現精確的物理模擬,以便駕駛員在駕駛真實機器時展現出訓練中鍛煉出的技術。
基於物理的訓練模擬器
近年來,強化學習在製作高階環境方面表現出了潛力。透過使用強化學習,自動化工程師不需要單獨解決自動化問題的每個部分,然後再連線各個部分。
強化學習可以定義要解決的任務,以及哪些操作和觀察可用於解決問題,然後讓代理探索環境並“弄清楚”如何解決這些問題。這在理論上聽起來很容易,但在現實中,解決一項任務所需的探索和訓練量令人望而生畏,在真正的機器上完成這項任務既危險又昂貴。
在模擬中進行這項任務不會損壞機器,模擬比實時執行更快,並且可以並行執行幾個模擬,而不會產生大量額外的成本。然而,就像操作員一樣,準確的物理知識對於將所學經驗從模擬有效地轉移到真實機器是必要的。但如果模型是錯誤的,代理學習的解決方案可能在現實世界中就不起作用。
使用Unity引擎和Unity ML-Agents,很容易用一個或多個代理對環境建模。使用者可以用UnitySystemGraph模擬代理觀察其周圍環境的不同視覺感測器。
在開始階段,代理不會知道要執行的一系列動作來解決任務,但是透過給代理一個依賴於先前狀態動作轉換的獎勵,ML-agent中的強化學習演算法能夠找到一個收益最大化的策略,最終允許代理解決任務。結合這一點和來自AGX Dynamics for Unity的快速而準確的物理學,僅使用模擬就有可能對重型機械進行建模和訓練,從而實現智慧且自主地解決非常複雜的問題。
自動伐木:原木抓取控制
烏姆埃大學的詹妮弗·安德森與Algoryx合作,研究如何使用強化學習自動化林業起重機機械手的原木抓取運動。經驗豐富的操作員可以控制林業機械上的欠驅動起重機,在不平坦的地面上行駛時成功抓住多根原木,並避免與樹木碰撞。這需要幾個促動器的反直覺協調,並最終會導致操作者在精神和身體上的雙重疲憊。
透過在使用Unity和ML-Agents建立並使用AGX Dynamics for Unity模擬的環境中使用強化學習,訓練一個代理來單獨控制森林轉發器上的起重機的六個關節,以執行單個原木抓取。最佳控制策略97%的時間成功抓取日誌,策略和週期時間與經驗豐富的人工操作員相當。例如,代理能夠在抓取時使欠驅動抓取爪進行擺動,這種技術可以提高週期時間,但很難學習。
該研究還表明,與沒有能量最佳化目標訓練的代理相比,在獎勵函式中用能量最佳化目標訓練的代理顯著降低了能量消耗。
地下礦山自主連續裝載軌跡
在另一個案例中,Algoryx與世界領先的隧道和採礦裝置製造商Epiroc合作,完成其大型地下礦用輪式裝載機ST-18的自動裝載專案。這種車輛能夠在剷鬥中裝載18噸爆破岩石,並在世界各地的許多地下礦井中不間斷執行。當其在地下巷道向前行進時,巷道的末端會被爆破,這導致一大堆碎片岩石(渣土),必須在下一次爆破前清除。
在模擬中,代理已經被訓練使用深度影象來計劃裝載位置,並且控制車輛在許多後續裝載迴圈中有效地填充剷鬥。計劃、填充剷鬥、避免碰撞和車輪打滑都是透過讓代理控制油門、轉向和剷鬥的提升/傾斜來實現的。透過在獎勵函式中包含能耗懲罰,最終該方案獲得了平均75%的最大填充容量的最佳結果。
AGX Dynamics for Unity使工程師能夠安全地設計、開發和測試複雜的自主機器。上面的例子是Algoryx使用Unity平臺進行機器學習的許多應用中的兩個案例。Unity的技術還可以解決其他型別的難以自動化的任務,透過預先模擬讓世界變得更好。