ETH官方钱包

前往
大廳
主題

關於武器操作

夏洛爾 | 2022-12-28 19:39:33 | 巴幣 2 | 人氣 123

關於如何引導紅蓮人偶使用武器目前沒有實際成果

先前紅蓮的體術動作,其原理是引導動作後,再獎勵命中目標
例如獎勵對某個方向旋轉,再獎勵命中目標的衝力

但是成果差強人意的地方在於紅蓮主要是實現動作,才順便擊中敵人
因此只要切換進入該攻擊模型,就會開始攻擊動作,就算目標完全再攻擊範圍外

這裡要歸咎於Gait特性,目前看起來只要ML情況複雜到一定程度,就難以擺脫Gait問題
ML會以某個動作或循環,作為該模型的基礎

因此如果切換成攻擊模型時,實際需求為"移動->攻擊",則模型就很難發展出理想的效果

而模仿體系(https://nv-tlabs.github.io/ASE/) 雖然更容易練出視覺不錯的動作,但前提是要有用來當模仿基礎的動畫,這也因此會造就兩個問題
其一是必須要有用來模仿的動畫,而且該動畫還必須要是"可以模仿"的對象
因此若是特殊角色,例如魔物就可能不存在足夠豐富的動畫,客製動畫會導致紅蓮人偶本末倒置的問題
同時若動畫其實不符合物理性質就可能無法模仿,例如一些現成的打鬥動作其實都有超加速或額外滯空

其二是不容易超出預想
例如nvidia的角色有很棒的揮劍動作,但也非常的經典
因為對模仿體系的角色來說,優先度其一是重現動作,其二才是完成任務

所以如果該角色根據肌力和身體構造,其實有更有效率和力道的揮劍動作,再模仿體系很可能會被埋沒

因此可以的話還是希望先不要混用模仿體系的技術
-- 訓練模仿動畫模型(需觀察模仿對象) -> 對原模型進行Imitation訓練

但這裡會出現的問題是,模仿體系能有不錯的動作,是因為強行誘導人物追隨動作軌跡
否則在自然探索下,ML不見得,甚至不容易做出蹲低跳高的選擇,例如向後伸展手臂蓄力後揮出斬擊,而是容易在立即能得分的選項加強探索

目前其實實驗了一個簡易的狗頭人哨兵攻擊實驗
實驗內容僅有 "在15秒內,能給予目標多少來自武器的衝擊力"

而狗頭人哨兵的結果是 "舉著武器走動頂向目標"
其結果也只是衝撞的變形,而不是揮舞武器

棘手之處正是切換為攻擊模型後,對狗頭人來說,第一要務仍然是不要跌倒,不要跌倒就有機會得分
所以很容易先進入一個是用來平衡或移動的Gait,而後續也不會發展出攻擊動作

要解決問題,目前靈感有
1.一擊決勝
只在超短距離進入攻擊,只計算擊中瞬間或一小段時間的力道
讓ML會想要強化一擊的攻擊力,而不是持續累積微小的攻擊力

風險是ML可能會傾向玉石俱焚的動作,例如揮完武器自己也倒地,因為原始訓練在命中瞬間就結束

2.對決--擊倒
用Competition讓狗頭人競爭

雙方互相攻向對方,搶先擊倒敵人的獲勝
雖然想法很有趣,但感覺防禦傾向會勝過攻擊,例如在設法自己不跌倒的前提下,一直頂別人試圖讓人跌倒
例如這個研究者的影片可以觀察到
模型其實是在防禦動作下順便攻擊(保持平衡和護著頭的動作),而不是真正的攻擊動作(出拳/直拳)

雖然研究者加入的特效和運鏡定格讓感覺變得很棒,但仔細觀察可以明顯看出其實打擊力道非常弱,可以說幾乎都是擦到而已,但這裡認為就是Gait問題會導致的現象 (優先不死,才攻擊)

3.對決--HP
用Competition讓狗頭人競爭

雙方互相攻向對方,搶先耗盡敵人HP的獲勝
比較有機會讓ML更優先追逐高殺傷動作

4.統帥模型
有一個模型,負責決定甚麼時候切換摸型
攻擊模型的複雜處就是不該讓不同情況的ML,因同一訓練進入相同Gait而綜合表現難以發展
因此也許不同情況,就要直接變成不同模型

由於人類寫切換條件一樣會面臨無限問題而不切實際,讓ML自行判斷何時切換也許是個方向

但是如果沒有切換後的模型,ML亂切模型也沒有評分意義
但目前問題又正是如何產生合適的切換後模型


目前看起來3比較有趣
因為我實際上還沒有使用Competition (Self Play)的經驗
考慮研究計畫比起追逐可見成果,更優先是建立能加速研發循環的資料

武器操作將以靈感3為下一個研究方向

創作回應

更多創作