機器人也能干咖啡師的活了!
比如讓它把奶泡和咖啡攪拌均勻,效果是這樣的:
然后上點難度,做杯拿鐵,再用攪拌棒做個圖案,也是輕松拿下:
這些是在已被 ICLR 2023 接收為 Spotlight 的一項研究基礎(chǔ)上做到的,他們推出了提出流體操控新基準 FluidLab 以及多材料可微物理引擎 FluidEngine。
研究團隊成員分別來自 CMU、達特茅斯學院、哥倫比亞大學、MIT、MIT-IBM Watson AI Lab、馬薩諸塞大學阿默斯特分校。
在 FluidLab 的加持下,未來機器人處理更多復雜場景下的流體工作也都不在話下。
FluidLab 到底都有哪些“隱藏技能”?一起來康康~
“流體力學”高階選手
FluidLab 是靠 FluidEngine 做引擎支撐,正如名稱所言,主打的模擬對象就是流體,不同材料,各種類型運動的細節(jié)它都能完全拿捏。
先來試試模擬做咖啡的各種場景,咖啡和奶泡的運動軌跡也是很真實了。
當然模擬打冰淇凌也是灑灑水的事情。
或者模擬不同狀態(tài)下水流的運動軌跡。
如果說這樣還看不出來 FluidLab 的實力,那直接上難度。
比如先來點對照模擬,讓平臺模擬一下不同材料下墜時與容器的碰撞情況,從左到右依次是:硬性材料、彈性材料以及塑料。
或者不同非粘性液體和粘性液體下墜時的軌跡。
再上點重磅難度,模擬下氣體與液體相遇時的狀態(tài)。
輕松搞定!
這時,可能會有朋友疑問:這么多狀態(tài)下的模擬,到底符不符合物理學或者流體力學呢?
這點大可放心,研究團隊直接公開了驗證視頻,在涉及一些特定的物理現(xiàn)象時,F(xiàn)luidEngine 都能準確模擬。
像卡門渦流和潰壩這種常見物理現(xiàn)象都能準確模擬。
浮力,液體的不可壓縮性與體積穩(wěn)定性在模擬中也是輕輕松松就能體現(xiàn)。
來點進階難度,用馬格努斯效應驗證一下:平移、平移 + 緩慢逆時針旋轉(zhuǎn)、平移 + 快速逆時針旋轉(zhuǎn)、平移 + 快速順時針旋轉(zhuǎn)也都很準確。
再加億點難度,試試動量守恒和瑞利-泰勒不穩(wěn)定性。
……
那如此逼近真實世界的模擬,研究團隊是怎么做到的呢?
不同狀態(tài)有不同的算法
首先在編程語言上,F(xiàn)luidEngine 選擇了 Python 和 Taichi,Taichi 是近來提出的用于 GPU 加速仿真的領(lǐng)域特定編程語言。
這樣一來,就可以為構(gòu)建模擬環(huán)境提供了一組用戶友好的 API,在更高的層次上,它也遵循標準 OpenAI Gym API,并且與標準的強化學習和優(yōu)化算法兼容。
而之所以能夠做到逼真的虛擬仿真效果,或許可以從 FluidEngine 創(chuàng)建環(huán)境的過程窺探一二。
它創(chuàng)建的環(huán)境由五個部分組成:
配備有用戶定義的末端效應器的機器人代理(可外接機器人)
從外部網(wǎng)格導入并表示為符號距離場(SDFs)的對象
使用形狀基元或外部網(wǎng)格創(chuàng)建的對象,用于表示粒子
用于在歐拉網(wǎng)格上模擬氣體現(xiàn)象的氣體場(包括速度場和其他平流量場,如煙密度和溫度)
一組用戶定義的幾何邊界,以支持稀疏計算
其中,在模擬過程中,對于不同狀態(tài)的材料會采用不同的計算方法。
對于固體和液體材料,模擬過程使用的是移動最小二乘材料點方法(MLS-MPM),這是一個混合拉格朗日-歐拉方法,使用粒子和網(wǎng)格模擬連續(xù)體材料。
對于煙或空氣這類氣體,模擬過程中使用的是平流-投影方案,在笛卡爾網(wǎng)格上將它們模擬為不可壓縮的流體。
這樣一來,便能針對具體情況模擬到逼真的效果了。
論文、項目地址以及代碼鏈接附在文末了,感興趣的朋友可以點擊查看。
項目主頁:https://fluidlab2023.github.io/
論文鏈接:https://arxiv.org/ abs / 2303.02346
代碼鏈接:https://github.com/ zhouxian / FluidLab
本文來自微信公眾號:量子位 (ID:QbitAI),作者:Pine
廣告聲明:文內(nèi)含有的對外跳轉(zhuǎn)鏈接(包括不限于超鏈接、二維碼、口令等形式),用于傳遞更多信息,節(jié)省甄選時間,結(jié)果僅供參考,IT之家所有文章均包含本聲明。