槭裁纯偝霰??如何?Stable-Worldmodel 做 Ball-in-Cup 動(dòng)態(tài)系統(tǒng)穩(wěn)定控制)
小球?yàn)槭裁纯偝霰绾斡?Stable-Worldmodel 做 Ball-in-Cup 動(dòng)態(tài)系統(tǒng)穩(wěn)定控制【免費(fèi)下載鏈接】stable-worldmodelA platform for reproducible world model research and evaluation項(xiàng)目地址: https://gitcode.com/GitHub_Trending/st/stable-worldmodel揮杯接球手抖一下小球就飛出去了——這就是動(dòng)態(tài)系統(tǒng)控制的經(jīng)典難題。Stable-Worldmodel 是一個(gè)可復(fù)現(xiàn)的世界模型研究與評(píng)估平臺(tái)它把 Ball-in-Cup 環(huán)境封裝進(jìn) dmcontrol 環(huán)境套件讓你能復(fù)現(xiàn)干擾實(shí)驗(yàn)、訓(xùn)練 LEWM 一類算法。 游戲規(guī)則Ball-in-Cup 的觀測、動(dòng)作與獎(jiǎng)勵(lì)把杯柄想象成走平衡木的桿小球吊在杯柄一端你每一刻都要把杯口恰好擺到小球下方早一步或晚一步球就脫出了。這個(gè)物理過程由 MuJoCo 引擎仿真控制步長 0.02 秒。從三個(gè)角度拆解環(huán)境觀測不是原始像素而是特征向量——杯子的位置、小球的位置以及兩者的速度。環(huán)境 ID 為swm/BallInCupDMControl-v0。動(dòng)作二維連續(xù)力空間是Box(-1, 1, shape(2,))分別對(duì)應(yīng) x 和 z 方向推杯子的力度取值范圍被歸一化到 [-1, 1]。獎(jiǎng)勵(lì)與成功判定目標(biāo)不是碰一下而是把球擺進(jìn)杯里并保持。每集 1000 步20 秒只要檢測到小球處于杯口區(qū)域內(nèi)physics.in_target()就算一次成功。實(shí)現(xiàn)的完整邏輯在 ball_in_cup.py 里默認(rèn)參數(shù)下它跑出來的軌跡是這樣的?? 把難度拉滿dmcontrol 環(huán)境如何用干擾模擬不確定性只會(huì)在默認(rèn)物理參數(shù)下背答案的算法換個(gè)質(zhì)量就失效。所以 Stable-Worldmodel 給每個(gè)環(huán)境配了一個(gè)variation space可變因素空間Ball-in-Cup 里包含 9 類因素。它模擬不確定性主要靠兩條路參數(shù)擾動(dòng)杯子和球的密度可以在 500~1500 kg/m3 之間浮動(dòng)球半徑從 0.01 米到 0.05 米不等重力甚至能在運(yùn)行時(shí)直接改——相當(dāng)于同一只杯子有時(shí)輕飄飄有時(shí)沉甸甸。視覺擾動(dòng)杯子顏色、球顏色、燈光強(qiáng)度、地板格子紋理都可以隨機(jī)化考察策略是否過度依賴外觀。每次 reset 時(shí)按配置采樣這些因素算法面對(duì)的就是永遠(yuǎn)不太一樣的世界。這正是做零樣本泛化和分布外評(píng)估要的東西。下面是隨機(jī)化各因素后的效果 算法怎么破LEWM 訓(xùn)練世界模型與 GPU 使用率Stable-Worldmodel 內(nèi)置了多條世界模型基線其中 LEWM 的思路是先看懂環(huán)境再談控制把連續(xù)觀測幀與動(dòng)作編碼成 embedding 序列用上下文預(yù)測未來時(shí)刻的 embedding兩者之差就是預(yù)測損失再疊加 SIGReg 正則項(xiàng)防止表示退化成一團(tuán)無效信息。訓(xùn)練入口是 scripts/train/lewm.py基于 Hydra 配置 PyTorch Lightning 組織數(shù)據(jù)加載、切分、優(yōu)化器調(diào)度都是腳本內(nèi)現(xiàn)成的。訓(xùn)練時(shí) GPU 使用率曲線長這樣這張圖說明兩件事整體利用率保持在較高水平前向/反向傳播把算力吃得很滿同時(shí)曲線有明顯起伏對(duì)應(yīng)數(shù)據(jù)加載、驗(yàn)證等階段性空閑——這是正常訓(xùn)練節(jié)奏不是卡死。如果你看到 GPU 長期貼著 0那大概率是數(shù)據(jù)管道出了問題。 三步跑通 Ball-in-Cup 示例克隆倉庫git clone https://gitcode.com/GitHub_Trending/st/stable-worldmodel然后cd stable-worldmodel按 pyproject.toml 中的 extras 安裝環(huán)境 訓(xùn)練依賴都要裝全pip install stable-worldmodel[all]確認(rèn)環(huán)境注冊(cè)成功swm envs列表里應(yīng)能看到swm/BallInCupDMControl-v0啟動(dòng) LEWM 訓(xùn)練python scripts/train/lewm.py配置默認(rèn)走scripts/train/config/launcher/local.yaml無需額外參數(shù)環(huán)境本身的細(xì)節(jié)、可變因素清單都寫在 docs/envs/dmc.mdWorld 接口和數(shù)據(jù)采集的快速入門在 docs/quick_start.md跑通之后可以順著讀?!久赓M(fèi)下載鏈接】stable-worldmodelA platform for reproducible world model research and evaluation項(xiàng)目地址: https://gitcode.com/GitHub_Trending/st/stable-worldmodel創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考