TWI824300B - 建立複雜運動控制器的方法 - Google Patents
建立複雜運動控制器的方法 Download PDFInfo
- Publication number
- TWI824300B TWI824300B TW110134844A TW110134844A TWI824300B TW I824300 B TWI824300 B TW I824300B TW 110134844 A TW110134844 A TW 110134844A TW 110134844 A TW110134844 A TW 110134844A TW I824300 B TWI824300 B TW I824300B
- Authority
- TW
- Taiwan
- Prior art keywords
- controller
- transition
- motion
- target
- source
- Prior art date
Links
- 230000033001 locomotion Effects 0.000 title claims abstract description 190
- 238000000034 method Methods 0.000 title claims abstract description 40
- 230000007704 transition Effects 0.000 claims abstract description 131
- 238000012549 training Methods 0.000 claims description 20
- 230000004083 survival effect Effects 0.000 claims description 15
- 238000000342 Monte Carlo simulation Methods 0.000 claims description 3
- 230000002787 reinforcement Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 230000009471 action Effects 0.000 description 5
- 230000009191 jumping Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000001427 coherent effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 210000001503 joint Anatomy 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000018199 S phase Effects 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 210000002310 elbow joint Anatomy 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000005021 gait Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Landscapes
- Feedback Control In General (AREA)
- Control Of Electric Motors In General (AREA)
- Advance Control (AREA)
- Lock And Its Accessories (AREA)
- Burglar Alarm Systems (AREA)
Abstract
一種建立複雜運動控制器的方法,包括以處理器執行下列步驟:取得一源控制器及一目標控制器,該源控制器用於產生一源運動,該目標控制器用於產生一目標運動,決定該源控制器及該目標控制器之間的一過渡張量,該過渡張量具有多個索引,該些索引中的一者對應於該源運動的多個相位,計算該過渡張量的多個結果,並依據該些索引記錄該些結果,依據該些結果計算多個過渡品質,以及在該些過渡品質中尋找一最佳過渡品質以建立一複雜運動控制器,該複雜運動控制器用以產生對應於該些相位中的一者的一複雜運動。
Description
本發明關於角色的運動控制器,特別是一種在運動資料集以外建立符合物理現象的過渡的架構。
具有多樣化運動能力的角色運動控制器常用於在動畫、電玩遊戲和電影的數位特效中。
傳統上,為了從運動擷取(motion capture)資料合成新的動畫,通常會創建一種內插(interpolation)結構,例如運動圖(motion graph),其中節點代表由運動擷取資料明確定義的動作(action),連接兩個節點的邊定義動作之間的過渡(transition)。為了合成新的動畫,可以從這個運動圖中查找適當的動作。由於它是一種查找機制,因此運動圖需要收集盡量多的互動才能發揮作用,所述互動是指角色與其周圍環境之間可能的各種互動。然而,這樣的運動圖變得極為龐大且複雜。即使如此複雜,運動圖仍然無法在未見過的場景中合成運動。此外,在運動圖中搜索的複雜度限制了控制時的精細度。
即使在運動圖中加入神經網路,如自回歸(auto-regressive)模型、受限玻爾茲曼機(restricted Boltzmann machine)、時間卷積(temporal convolution)
或循環變異自編碼器(recurrent variational auto-encoder)模型,這些方式仍舊難以產生長運動的序列,並且容易將運動平均化,導致角色的運動看起來緊張、僵硬或具有嚴重的足部滑動,另外,適用於二足動物的方法也無法適用於四足動物。
運動學(kinematic)控制器藉由減少在動作之間產生過渡的需求以解決運動圖的標籤問題,同時允許使用者任意控制角色以產生所需的運動。此外,也可以使用基於物理的控制器有效地模擬複雜現象,物理模擬及環境約束能夠使角色對外部干擾作出符合物理現象的反應,而無需事先收集這種反應的資料。現有的基於物理的控制器以運動學控制器為基礎,並藉由生成對抗網路(Generative adversarial networks,GAN)保持運動的自然性,允許運動控制器產生符合物理現象且流暢自然的運動。
為了增加運動控制器的能力以產生豐富的運動,可以藉由添加新的運動資料來進行訓練。然而,每次添加一筆新資料時,控制器都需要重新產生一個龐大的運動控制器的模型。另一種方式是添加新的基於物理的控制器作為模組,並且重新訓練用於調製所有模組的門控網路(gating network)的多層感知器(Multilayer Perceptron,MLP)。然而,即使只增加一個新的模組,訓練所有模組的MLP的複雜度仍然以指數成長,並且還要避免加入新模組後的訓練影響詞彙表中的現有運動。
有鑑於此,本發明提出一種建立複雜運動控制器的方法,其中包括過渡運動張量(Transition Motion Tensor,後文簡稱為過渡張量),這是一
種資料導向的架構(data-driven framework),可在運動資料集以外建立符合新的過渡。過渡張量保留了單個運動控制器的穩健性(robustness),並在最合適的階段切換到目標控制器。
依據本發明一實施例的一種建立複雜運動控制器的方法,包括以處理器執行下列步驟:取得一源控制器及一目標控制器,該源控制器用於產生一源運動,該目標控制器用於產生一目標運動;決定該源控制器及該目標控制器之間的一過渡張量,該過渡張量具有多個索引,該些索引中的一者對應於該源運動的多個相位;計算該過渡張量的多個結果,並依據該些索引記錄該些結果;依據該些結果計算多個過渡品質;以及在該些過渡品質中尋找一最佳過渡品質以建立一複雜運動控制器,該複雜運動控制器用以產生對應於該些相位中的一者的一複雜運動。
本發明提出一種建立複雜運動控制器的方法,可在不修改現有運動的情況下有效而穩健地(robustly)建立新運動。給定幾個不同的基於物理的運動控制器,本發明提出的過渡張量可作為在運動控制器之間切換的依據。藉由查詢過渡張量以獲得最佳過渡的方式可以建立一個統一(unified)的複雜運動控制器,該控制器能夠產生包含各種行為的新過渡,例如在角色進行更高的跳躍之前減速或立即跳躍以獲得更好的響應。本發明適用於表現四足動物和兩足動物的運動,對過渡品質進行定量和定性評估,並在遵循用戶控制指令的同時具備處理複雜運動規劃的能力。
綜上所述,本發明具有以下貢獻或效果:
1.提出一種資料導向的方法,可在運動資料集以外建立符合物理現象且新穎的過渡;
2.提出一個可擴展的架構,將基於各種架構或訓練過程的現有控制器統合到一個連貫的(coherent)、統一的控制器中,並減少擴展時的訓練成本;以及3.提出一種方案,其利用控制器解決複雜運動規劃問題,同時滿足使用者控制指令及物理環境約束。
以上之關於本揭露內容之說明及以下之實施方式之說明係用以示範與解釋本發明之精神與原理,並且提供本發明之專利申請範圍更進一步之解釋。
S1~S5:步驟
圖1是本發明一實施例的建立複雜運動控制器的方法的流程圖;圖2是訓練模板控制器的過程中加入外部干擾的示意圖;圖3是從源運動過渡到目標運動的過程中,過渡張量變化程度的示意圖;圖4是過渡品質及其組成成分的熱圖及應用示意圖;圖5是增加新的模板控制器的示意圖;以及圖6是本發明一實施例的建立複雜運動控制器的方法的綜合示意圖。
以下在實施方式中詳細敘述本發明之詳細特徵以及特點,其內容足以使任何熟習相關技藝者了解本發明之技術內容並據以實施,且根據本說明書所揭露之內容、申請專利範圍及圖式,任何熟習相關技藝者可輕易地理解本發明相關之構想及特點。以下之實施例係進一步詳細說明本
發明之觀點,但非以任何觀點限制本發明之範疇。
本發明建立的複雜運動控制器可用於控制電影、遊戲中的虛擬角色,或控制真實世界中的機器人。
圖1是本發明一實施例的建立複雜運動控制器的方法的流程圖,所述方法是以處理器執行圖1所示的步驟S1~S5。步驟S1是「取得源控制器及目標控制器」,步驟S2是「決定源控制器及目標控制器之間的過渡張量」,步驟S3是「計算過渡張量的多個結果,並依據索引記錄這些結果」,步驟S4是「依據記錄的這些結果計算多個過渡品質」,步驟S5是「在這些過渡品質中尋找最佳過渡品質以建立複雜運動控制器」,以下分別介紹各步驟的實施細節。
步驟S1是「取得源控制器及目標控制器」,源控制器依據角色的當前狀態及控制目標產生源運動,目標控制器依據角色的當前狀態及控制目標產生目標運動。舉例來說:源運動是走路,目標運動是跑步,而複雜運動則是從走路過渡到跑步。控制目標的輸入包含至少一物理參數控制量,例如跑步的秒速,從高處掉下的重力加速度。
源控制器及目標控制器都是一種模板控制器(template controller),以下詳述模板控制器的細節:
為了使角色能夠在模擬的物理環境中執行複雜運動,常見的做法是訓練基於物理的控制器以適應多種類型的運動。但是使用單一控制器輸出多種複雜運動需要大量的訓練成本,而且在訓練過程中,可能會因為各種運動的類型差異太大而增加訓練的困難度。為了避免上述問題,本發明將每一個運動都分配給一個基於物理的控制器,稱之模板控制器。這種策略可將訓練複雜度限制在單一個控制器內,從而使訓練過程更易於處理和獨立作業。
在訓練模板控制器之前,需使用運動學(kinematic)控制器收集多個參考運動片段。在每個參考運動片段中,控制角色重複執行各自的運動,但每次重複時對速度、方向和高度的輸入參數略有不同。為了可以在動態環境中產生真實的運動,本發明使用深度強化學習(deep reinforcement learning,DRL)的技術訓練模板控制器,模板控制器π(a t |s t ,c t )輸出運動a t A,其中t為給定的時階(time step),s t S為給定角色的當前狀態,c t 為控制目標(control objective),A和S分別代表運動域和狀態域。當前狀態s t 儲存角色的位置、旋轉量、速度及角速度。控制目標,其中σ為目標移動速度(例如以公尺/秒為單位),θ為目標方向(例如以弳度為單位),為目標質心(center of mass,COM)的高度(例如以公尺為單位)。
本發明透過對指定的參考運動片段執行「模仿學習」(imitation learning)來初始化模板控制器。在此過程中,模板控制器的目標是匹配運動學角色和模擬角色的關節位置,本發明使用運動學角色的兩個連續幀作為低階控制器的目標。一旦收斂,本發明進一步微調模板控制器以遵循高級運動控制指令(包括如:速度、方向和目標質心的高度等參數)。由於控制目標的值來自參考運動片段,因此不需要在所有時間設定所有值。例如,在快走(trot)或慢跑(canter)等運動時目標質心的高度可以保持不變,但是在跳躍運動中目標質心的高度則需要隨時間調整。
為了保證每個模板控制器的穩健性,本發明在訓練過程中引入了外部干擾,例如從隨機方向朝角色投擲各種大小的物體,如圖2所示。採用上述方式將得到一組可控制的且穩健的模板控制器Ψ={π1...π6},各自屬於詞彙集V={快走,慢跑,跳躍,慢步,站立,坐下}中的一個控制詞彙。
針對模板控制器的訓練,本發明使用近端策略優化(proximal policy optimization)、廣義優勢估計器GAE(λ)(generalized advantage estimator)、多步返回TD(λ)(multi-step returns)等技術。為了提高取樣效率並防止模板控制器陷入於對整體而言較差的局部最優解,本發明採用“Xue Bin Peng,Pieter Abbeel,Sergey Levine,and Michiel van de Panne.2018.DeepMimic:Example-Guided Deep Reinforcement Learning of Physics-Based Character Skills.ACM Transactions on Graphics(TOG)37,4(2018),143.”此文獻中提到的提前終止(early termination)和參考狀態初始化(reference state initialization)等技術。
本發明將每個模板控制器作為一個分層策略(hierarchical policy)來實現,每個模板控制器都具有以基元(primitive)表示的低階控制器,控制目標直接被指派至低階控制器。一個模板控制器通常需要四個基元,跳躍運動則是例外,它需要八個基元來解決額外的運動複雜度。
模板控制器只允許角色執行特定運動。因此,單一模板控制器並無法解決需要整合多個運動的複雜運動的任務。例如,控制角色跳過一個大坑洞並快速奔跑到目的地,則角色需要先跑得足夠快,然後跳躍,並在落地後朝著目的地奔跑。然而,知道角色何時在奔跑和跳躍之間過渡(轉換)並不是一項簡單的任務,因為角色的狀態直接影響過渡結果。簡單的過渡可能會產生看起來奇怪或甚至失敗的複雜運動。因此,本發明在步驟S2提出了一個資料導向的過渡張量(transition tensor),藉由仔細檢查過渡的關鍵時間點來引導角色成功地從一個運動過渡到另一個運動。
步驟S2是「決定源控制器及目標控制器之間的過渡張量」,過渡張量(後文簡稱張量)具有多個索引,這些索引中的一者對應於源運動的多個相
位。舉例來說,源運動為抬起左手,其包含了肘關節旋轉0度、1度、2度、3度…直到可旋轉的角度上限等多個相位。
在從源控制器切換到目標控制器的過程中,角色與源控制器處於特定的狀態(相位),而且目標控制器可能從未見過這種狀態,當目標狀態器試圖從這種新狀態恢復時就產生了一個新的過渡運動。此新的過渡運動既不存在於源控制器中也不存在於目標控制器中。也就是說,在兩個控制器的配對之間切換產生了過渡運動,如圖3所示。
然而,任意地地切換控制器會產生不穩定的過渡,因為運動的難度各不相同。雖然可以藉由分配兼容於源運動及目標運動的控制目標來改進切換過程,例如插入運動速度以在不同的運動步態之間進行過渡。然而,這種策略對於需要更精細和準確的落下時機的運動無效,而此種情況適合用角色的階段標籤來描述。例如,在慢跑和跳躍之間是否能成功過渡取決於角色的腳是否接觸地面。因此,當角色在空中時,從跳躍回到慢跑的複雜運動可能會提高目標控制器的複雜性,導致穩定時間更長,施力過大,偏離控制目標,甚至導致角色墜落。
為了描述源運動和目標運動之間成功過渡的可能性,本發明定義一個具有四個維度的張量T來記錄過渡的結果,如下方式一所示。
張量T的四個索引包括:代表源控制器的m V,代表目標控制器的n V,其中V為詞彙集,代表源控制器的相位的[0,1),代表目標控制器的相位的ω [0,1)。每個組合(η,△t,e,α)取決於,即:η≡η w。
張量中的每個元素Tw都是一個4維向量,代表在w處的過渡結果。第一個結果η記錄了過渡之後的存活指標(alive state),若角色的頭部、軀幹和背部不接觸地面而成功過渡,則η=1,若角色跌倒,則η=0。第二個結果△t代表從切換過程開始到目標控制器穩定時結束的過渡時間(duration)。第三個結果e代表過渡的耗能成本(effort),例如過渡時間中所有關節扭矩的總和,如下方式二所示。
其中,J為角色的關節數量,j為關節標籤,位於第j關節的比例積分控制器(Proportional Derivative controller,PD controller)的扭矩在給定時間t被表示為。為了評估角色遵循控制目標的程度,本發明分別定義速度、方向和高度獎勵如下方式三、式四及式五所示。
其中,∥.∥為L2範數(norm),v c為角色的質心速度,u=(cos(θ),-sin(θ))為投影到二維運動平面的目標方向,h,為角色在過渡前後的質心高度。本發明將控制獎勵定義為式三、式四及式五的平均,如下方式六所示。
最後,張量T的第四個結果α為角色的控制精確度,其計算方式為目標控制器的兩個穩定狀態,之間的控制獎勵的總和。本發明在過渡後(post-transition)量測控制精確度,因為本發明假設在過渡時間沒有控制精確度的資料,控制精確度定義如下方式七所示。
在步驟S3計算每一過渡張量的四個結果之前,本發明使用穩健性測試評估模板控制器。例如:每0.1秒從隨機方向投擲大小和密度不同的物體,若角色存活至少10秒,則此模板控制器通過了穩健性測試。
圖3是從源運動過渡到目標運動的過程中,過渡張量變化程度的示意圖。此示意圖的記錄開始於角色執行源運動(慢跑)。在切換到目標控制器之前,先等待源控制器穩定下來。在切換時,輸入角色的當前狀態和取材自目標運動片段的高級控制目標,並在所有相位中均勻取樣。接下來,記錄控制器的反應,並記錄角色的腳部落下的軌跡,質心位置,關節扭矩(torque),和控制精確度(如式七)。在控制器切換過程的5秒後終止記錄,因為大多數控制器此時已經穩定或出現故障。
步驟S3是「計算過渡張量的多個結果,並依據索引記錄這些結果」。處理器採用蒙地卡羅(Monte Carlo)法計算多個結果,每一結果包括存活指標η、過渡時間△t、耗能成本e及控制精確度α。
為了找出過渡的所有可能性,藉由在支援物理模擬的環境中使用蒙地卡羅(Monte Carlo)法,本發明計算大量的(如數百萬個)過渡張量的樣本來填充張量。每個成對過渡在源運動及目標階段的多個相位中均勻取樣。
步驟S4是「依據記錄的結果計算多個過渡品質」,其中每一過渡品質包括穩定度(stability)及結果(outcome)值,結果值係處理器依據存活指標、過渡時間、耗能成本及控制精確度計算得到。
如式一所示,對於在源控制器及目標控制器之間的過渡,一個用於描述此過渡的可能性的4維張量可用於統合(unify)兩個模板控制器,讓角色能夠執行詞彙集V中的運動的組合。並且在步驟S5建立複雜運動控制器時利用統合後的模板控制器來引導角色。為了實現此目標,本發明在步驟S4中將過渡張量的四個維度合併為一個結果值,如下式八所示:
其中,Γw為基於索引w的結果值。
另一方面,本發明希望確保相鄰樣本中的結果值和存活機率具有一致性。因此,本發明定義局部鄰域(local neighborhood)Γw(δ),其為Γ鄰近於w的二維子張量,w {m,±δ,n,ω±δ},其中±δ代表源運動m中關聯於相位的多個鄰近的參考相位,ω±δ代表目標運動n中關聯於相位ω的多個鄰近的參考相位。
然後,本發明計算過渡結果ζw(δ)的一致性,作為在Γw(δ)中所有樣本的變異數(variance)。
類似地,本發明計算一個過渡的存活機率ηw(δ),作為Tw(δ)中存活指標η=1的樣本的比例。
其中β=0.015。整合穩定度和結果值,在w處的過渡品質如下方式十所示。
式十:Q w=ψw(δ)×Γw
步驟S5是「在這些過渡品質中尋找最佳過渡品質以建立複雜運動控制器」,複雜運動控制器用於產生對應於源運動的多個相位中的一者的複雜運動。
為了產生從源運動到目標運動之間的過渡,需要在眾多的張量之中尋找最佳過渡。給定目標運動標籤n以及相位為的源運動m的資訊,處理器可以藉由查看子張量來找到最佳轉換,其中是用於搜索空間的可調整的參數,並定位具有最佳過渡品質的目標相位,如圖4所示。依據最佳過渡品質,可以在兩個控制器之間執行可靠的過渡。對所有運動組成的每個配對的過渡重複相同的策略,可將模板控制器統合為單一的複雜運動控制器,其用於產生複雜的運動。
圖4是過渡品質及其組成成分(結果值、穩定度)的熱圖及應用示意圖。以源運動的相位作為縱軸,目標運動的相位作為橫軸,處理器可繪製結果值、穩定度以及依據結果值及穩定度計算得到的過渡品質的熱圖(heat map)。本發明從過渡品質的熱圖的多個像素中找出像素值在門檻值以上的過渡品質所對應的過渡張量,按這種方式可篩選出效果較好(例如存活指標為1、耗能成本較低、過渡時間較短、控制精確度較高)的一或多個過渡。
圖5是增加新的模板控制器(新的運動)的示意圖。使用過渡張量,可以簡單地增加新的運動而不會增加訓練成本,只需要使用模板控制器描述新增的運動並透過過渡張量統合到原有的模板控制器。圖5的範例是:依據本發明
提出的方法,先前已建立由運動1、運動2及運動3之間的兩者所組成的配對的六個過渡張量(運動1到運動2、運動1到運動3、運動2到運動3、運動2到運動1、運動3到運動1、運動3到運動2,注意配對順序不同組成的過渡張量也不同),本發明在增加運動4時僅需花費建立新運動4與運動1、2、3之間的過渡張量的成本。此過程不需要額外的訓練過程,並且新增更多運動不會改變先前配置好的運動和過渡。因此,本發明可以容易地沿著張量的源運動標籤m的維度、以及目標運動標籤n的維度擴展運動詞彙集V,如圖5所示。
整體而言,請參考圖6,其為本發明一實施例的建立複雜運動控制器的方法的綜合示意圖。圖6左方展示了收集多個過渡張量,每個過渡張量的內容包括存活指標、過渡時間、耗能成本及控制精確度。每個過渡張量對應於一個源控制器及目標控制器的配對,若控制器的數量為N,則過渡張量的收集數量上限為N×(N-1)。圖6中間展示了建立完成的多個過渡張量。圖6右方為一個產生統合控制器(unified controller)的範例:假設先前的統合控制器並不曉得從源運動2的某個相位過渡到目標運動3應該如何進行,如過渡可行性矩陣第二列第三行所標示的「?」所示,則處理器可透過在多個過渡張量中找到對應於源運動2和目標運動3的過渡張量,然後在這個過渡張量的所有可能性中找出過渡品質最好的一或數個目標運動的相位,從而實現從源運動2到目標運動3的過渡。
本發明提出一種建立複雜運動控制器的方法,可在不修改現有運動的情況下有效而穩健地(robustly)建立新運動。給定幾個不同的基於物理的運動控制器,本發明提出的過渡張量可作為在運動控制器之間切換的依據。藉由查詢過渡張量以獲得最佳過渡的方式可以建立一個統合的複雜運動控制器,該控制器能夠產生包含各種行為的新過渡,例如在角色進行更高的跳躍之前減
速或立即跳躍以獲得更好的響應。本發明適用於表現四足動物和兩足動物的運動,對過渡品質進行定量和定性評估,並在遵循用戶控制指令的同時具備處理複雜運動規劃的能力。
綜上所述,本發明具有以下貢獻或效果:
1.提出一種資料導向的方法,可在運動資料集以外建立符合物理現象且新穎的過渡;2.提出一個可擴展的架構,將基於各種架構或訓練過程的現有控制器統合到一個連貫的(coherent)、統一的控制器中,並減少擴展時的訓練成本;以及3.提出一種方案,其利用控制器解決複雜運動規劃問題,同時滿足使用者控制指令及物理環境約束。
雖然本發明以前述之實施例揭露如上,然其並非用以限定本發明。在不脫離本發明之精神和範圍內,所為之更動與潤飾,均屬本發明之專利保護範圍。關於本發明所界定之保護範圍請參考所附之申請專利範圍。
S1~S5:步驟
Claims (8)
- 一種建立複雜運動控制器的方法,包括以處理器執行下列步驟:取得一源控制器及一目標控制器,該源控制器用於產生一角色的一源運動,該目標控制器用於產生該角色的一目標運動,其中該角色包括多個關節;決定該源控制器及該目標控制器之間的一過渡張量,該過渡張量具有多個索引,該些索引中的一者代表該源運動的多個相位;計算該過渡張量的多個結果,並依據該些索引記錄該些結果;依據該些結果計算多個過渡品質;以及在該些過渡品質中尋找一最佳過渡品質以建立一複雜運動控制器,該複雜運動控制器用以產生對應於該些相位中的一者的一複雜運動,其中每一該些結果包括該角色是否成功過渡的一存活指標、該角色從該源運動切換至至該目標運動的一過渡時間、關聯於該角色在該過渡時間中該些關節扭矩總和的一耗能成本及關聯於該目標控制器的二穩定狀態之間的控制獎勵的一控制精確度;每一該些過渡品質包括一結果值,該結果值係該處理器基於多個鄰近相位及該些相位中的該者,依據該存活指標、該過渡時間、該耗能成本及該控制精確度計算得到。
- 如請求項1所述建立複雜運動控制器的方法,其中每一該些過渡品質包括一穩定度,該穩定度係該處理器基於多個鄰近相位及該些相位中的該者,依據該存活指標的一存活機率、該結果值的一局部鄰域、關聯於該局部 鄰域的一過渡結果計算得到,其中該局部鄰域包括多個參考相位,該些參考相位對應於該結果值對應的該過渡張量對應的該源運動的該些相位中的一者。
- 如請求項1所述建立複雜運動控制器的方法,其中依據該些結果計算多個過渡品質包括:計算每一該些結果的該結果值及一穩定度;以及依據該結果值及該穩定度計算該些過渡品值中的一者;其中該結果值係該處理器基於多個鄰近相位及該些相位中的該者,依據該存活指標、該過渡時間、該耗能成本及該控制精確度計算得到;以及該穩定度係該處理器基於多個鄰近相位及該些相位中的該者,依據該存活指標的一存活機率、該結果值的一局部鄰域、關聯於該局部鄰域的一過渡結果計算得到,其中該局部鄰域包括多個參考相位,該些參考相位對應於該結果值對應的該過渡張量對應的該源運動的該些相位中的一者。
- 如請求項1所述建立複雜運動控制器的方法,其中該處理器採用蒙地卡羅法計算該些結果。
- 如請求項1所述建立複雜運動控制器的方法,其中該源控制器或該目標控制器依據一當前狀態及一控制目標產生該源運動及該目標運動。
- 如請求項5所述建立複雜運動控制器的方法,其中該控制目標的輸入包含至少一物理參數控制量。
- 如請求項5所述建立複雜運動控制器的方法,其中該源控制器及該目標控制器屬於一模板控制器,該模板控制器具有對應於至少一基元的至少一低階控制器,該控制目標直接被指派至該至少一低階控制器。
- 如請求項5所述建立複雜運動控制器的方法,其中該源控制器及該目標控制器屬於一模板控制器,在訓練該模板控制器之前包括:使用運動學控制器收集多個參考運動片段;以及在每一該些參考運動片段的重複控制中改變輸入參數;以及在訓練該模板控制器時包括:加入外部干擾,其中該外部干擾包括以隨機方向朝該角色投擲物體;以及使用深度強化學習訓練該模板控制器,其中該控制目標包括移動速度、目標方向以及目標質心高度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW110134844A TWI824300B (zh) | 2021-09-17 | 2021-09-17 | 建立複雜運動控制器的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW110134844A TWI824300B (zh) | 2021-09-17 | 2021-09-17 | 建立複雜運動控制器的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202313158A TW202313158A (zh) | 2023-04-01 |
TWI824300B true TWI824300B (zh) | 2023-12-01 |
Family
ID=86943273
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW110134844A TWI824300B (zh) | 2021-09-17 | 2021-09-17 | 建立複雜運動控制器的方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI824300B (zh) |
-
2021
- 2021-09-17 TW TW110134844A patent/TWI824300B/zh active
Also Published As
Publication number | Publication date |
---|---|
TW202313158A (zh) | 2023-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Sermanet et al. | Time-contrastive networks: Self-supervised learning from video | |
Lee et al. | Precomputing avatar behavior from human motion data | |
WO2021143289A1 (zh) | 动画处理方法、装置、计算机存储介质及电子设备 | |
US11810235B2 (en) | Method for establishing complex motion controller | |
TWI824300B (zh) | 建立複雜運動控制器的方法 | |
Vogt et al. | Learning two-person interaction models for responsive synthetic humanoids | |
CN115797517B (zh) | 虚拟模型的数据处理方法、装置、设备和介质 | |
Yu et al. | Dynamic bipedal turning through sim-to-real reinforcement learning | |
Babadi et al. | Learning Task-Agnostic Action Spaces for Movement Optimization | |
Gavenski et al. | Imitation Learning: A Survey of Learning Methods, Environments and Metrics | |
TWI808787B (zh) | 自動分類過渡動作的方法 | |
US11934490B2 (en) | Method of automatically classifying transition motion | |
Huang | Planning for dynamic motions using a search tree. | |
Wu et al. | Video driven adaptive grasp planning of virtual hand using deep reinforcement learning | |
TWI752629B (zh) | 訓練虛擬動物基於控制參數運動的方法 | |
Berseth | Scalable deep reinforcement learning for physics-based motion control | |
US20240135618A1 (en) | Generating artificial agents for realistic motion simulation using broadcast videos | |
Babadi | Advances in Optimizing Physically Simulated Movements | |
Hu et al. | Privileged Sensing Scaffolds Reinforcement Learning | |
TWI842578B (zh) | 動畫處理方法 | |
Peng | Developing locomotion skills with deep reinforcement learning | |
Sprenger et al. | Variational Interpolating Neural Networks for Locomotion Synthesis | |
Li | Human motion prediction. | |
Peng | Acquiring Motor Skills Through Motion Imitation and Reinforcement Learning | |
Wang et al. | PACER+: On-Demand Pedestrian Animation Controller in Driving Scenarios |