奇異值分解在機器人學中的應用

pomolnc發表於2024-08-15

本文內容主要翻譯自Maciejewski, A.A. and Klein, C.A. (1989) ‘The Singular Value Decomposition: Computation and Applications to Robotics’, _The International Journal of Robotics Research_一文中的部分章節

奇異值分解(Singular Value Decomposition, SVD)在機器人學中被廣泛用於分析機器人機械手的運動學和動力學特性。然而,由於計算成本較高,它並未被用於實時應用。(由於早期計算機效能的問題,SVD 的計算對於當時的計算機硬體而言還是比較大的負擔,所以原文獻中有大量篇幅來解釋如何透過區域性攝動的關係來快速求解計算 SVD。當然現在這個問題已經不是現在的讀者所面臨的問題,所以本文不再考慮這部分內容。)本研究展示了一種奇異值分解的公式化方法,該方法利用機器人矩陣計算的特性,以獲得一個在計算上可行的演算法。文中討論了包括冗餘機械手控制和靈活性最佳化在內的幾個應用。還詳細介紹了使用奇異值分解來處理一般奇異性問題的詳細說明。

引言

近年來,奇異值分解(SVD)已成為分析機器人機械手運動學和動力學特性的流行工具(Yoshikawa 1985a[1]; Yoshikawa 1985b [2])。它在冗餘機械手方面尤其發揮了重要作用,無論是在分析額外自由度的重要性(Klein 和 Huang 1983)[3],還是在指定可以使用這些冗餘自由度進行最佳化的輔助標準方面。在許多情況下,這些輔助標準是靈巧性的定性概念的一些定量度量。大多數提出的靈巧性度量是雅可比矩陣奇異值的某種函式。其中最常見的可能是由 Yoshikawa(1984)[4]提出的可操作性度量,它定義為矩陣 \(JJ^T\) 的行列式平方根,這僅僅是雅可比矩陣 \(J\) 的奇異值的乘積。其他提出的度量包括上述矩陣的跡(Baillieul 1987)[5]、雅可比矩陣的最小奇異值(Klein 和 Blaho 1987)[6]、相容性指數(Chiu 1987)[7]以及各向同性(Salisbury 和 Craig 1982)[8]

儘管上述所有度量都具有物理意義並有其使用的合理性,但關鍵點在於它們都與奇異值分解(SVD)緊密相關。然而,儘管事實如此,完整的分解通常僅限於機械手配置的分析,並不被認為是線上控制實施的考慮物件。這可以透過可操作性度量的普及來證明,因為它的主要理由是計算數值簡單,並且它的零點與雅可比矩陣的奇異性相一致。這意味著人們確實希望獲得有關奇異性的資訊;然而,這將需要計算 SVD,而 SVD 因計算成本高而聞名。不幸的是,行列式沒有提供關於奇異性絕對接近程度的資訊,因為最小奇異值是這一數量的唯一可靠度量。此外,矩陣乘積 \(JJ^T\) 的計算將條件數平方,這降低了結果的準確性。

這項工作關注的是證明,只要有正確的公式化,奇異值分解(SVD)在實時控制中是計算上可行的。傳統上,任意矩陣的SVD計算是一個迭代過程,因此無法事先知道確切的計算次數。然而,機器人系統的控制不是基於任意矩陣方程的求解,而是非常頻繁地涉及基於雅可比矩陣的方程的求解。系統的當前雅可比矩陣可以被視為一個先前已知矩陣的攝動,對於該攝動,可以建立奇異值和奇異向量的攝動界限。本文將展示如何在當前SVD計算中利用對先前狀態的瞭解,以減輕整體計算負擔。本文將強調上述要點,它展示了一種計算方案,能夠計算雅可比矩陣的SVD,用於機械手的實時控制。然後討論了這樣一個演算法對幾個應用的影響,包括利用冗餘度和最佳化機械手的靈活性。透過計算機模擬PUMA機器人,使用速率和加速度控制,詳細檢查了使用SVD處理機械手奇異性的優勢。

應用(原文獻第四章節)

實時計算雅可比矩陣的奇異值分解(SVD)有多種可能的不同應用。如上所述,幾種提出的靈巧性度量與雅可比矩陣的奇異值和奇異向量密切相關。因此,可以比較當前機械手配置的運動學和靜態力能力與指定任務的要求。機械手本身可以透過確定更合適的配置來解決機械手的物理能力與指定任務之間的不一致性。這導致更加自主的行為,可以用於自動化運動規劃和工作單元設計,以及在非結構化環境中操作機器人機械手。

實時計算 SVD 還能夠增強機器人系統中冗餘度的利用。在解決運動速率控制公式(Whitney 1969)[9]方面,

\[J\dot{\theta}=\dot{\mathbf{x}} \tag{1}\label{1} \]

在系統內使用冗餘自由度最常見的技術之一是使用 Liegeois(1977年)[10]提出的投影運算元公式

\[\dot{\theta}=J^{+}\dot{x}+(I-J^{+}J)z \tag{2}\label{eq2} \]

其中,\(J^{+}\) 是雅可比矩陣 \(J\) 的偽逆,而 \(z\) 是六維空間中的任意向量。這種公式已被用來在特定的末端執行器軌跡的約束下最佳化次要目標,這些約束包括關節角度可用性、扭矩最小化(Hollerbach 和 Suh,1987年)[11],以及障礙物避讓(Maciejewski 和 Klein,1985年[12];Nakamura、Hanafusa 和 Yoshikawa,1987年[13])。有了完整的 SVD,投影操作變得簡單,因為奇異向量 \(v_i\) 對於 \(r>i\geq n\) 指定了零空間的一組正交基。因此,使用齊次解來替代次要目標的相對優勢變得容易評估。

這項工作的其餘部分將考慮將實時 SVD 演算法應用於奇異配置的基本問題。除了笛卡爾定位機器人外,所有鉸接式機械手都可以展示出限制有效獨立自由度數的奇異配置(Baker 和 Wampler 1987)[14]。大量的努力(Asada 和 Cro Granito 1985年[15];Aboaf 和 Paul 1987年[16];Dubey 和 Luh 1987年[17];Mayorga 和 Wong 1987年[18];Sampei 和 Furuta 1987年[19])已經被投入到避免或處理奇異性操作中,因為奇異性可能導致高關節速度和虛假運動。

阻尼最小二乘

奇異性的影響通常針對方程 \(\eqref{1}\) 中給出的解決運動速率控制公式來呈現。透過雅可比矩陣 \(J\) 的秩的數學變化來識別奇異性,這在物理上表示機械手無法實現任意的末端執行器速度。對於這些情況,逆矩陣未定義,即使是像方程 \(\eqref{eq2}\) 這樣的偽逆解也是不令人滿意的,因為在奇異點存在不期望的不連續性,可能導致振盪和不可接受的高關節速度。這些困難不是解決運動速率公式所獨有的,而是笛卡爾空間和關節空間之間轉換固有的一部分。

一種解決奇異配置中不連續性問題並保持良好條件公式的方法,該公式產生的關節速度在物理上是有意義的,是使用 Nakamura 和 Hanafusa(1986年)[20]以及 Wampler(1986年)[21]獨立提出的阻尼最小二乘公式。方程 \(\eqref{1}\) 的阻尼最小二乘解是最小化和 \(\|\dot{\mathbf{x}}-J\dot{\boldsymbol{\theta}}\|+\lambda\|\dot{\boldsymbol{\theta}}\|\) 的解,這樣末端執行器的跟蹤誤差就透過使用阻尼因子 \(\lambda\) 來權衡關節速度的範數。這種解通常透過求解形式如下的方程得到:

\[(J^TJ+\lambda^2I)\dot{\theta}=J^T\dot{\mathbf{x}} \tag{3} \label{eq3} \]

這種解確保在所有具有相等或更小范數的解中是殘差最小的解。不幸的是,對於給定的阻尼因子,無法預先確定解的範數。
這個要解決的問題實際是最小化殘差 \(\|\dot{\mathbf{x}}-J\dot{\boldsymbol{\theta}}\|\),這定義了在末端執行器跟蹤精度約束 \(\|\dot{\theta}\|\leqslant\dot{\theta}_{max}\) 下,其中 \(\dot{\theta}_{max}\) 是機械手關節速度的物理限制。因此,可以透過使用阻尼最小二乘解和適當的阻尼因子值 \(\lambda\) 來獲得所需的解。直觀地說,如果使得殘差等於零的 \(\|\dot{\theta}\|\) 值小於 \(\dot{\theta}_{max}\) ,則 \(\lambda=0\);否則, \(\lambda\) 將取值,使得\(\|\dot{\theta}\|=\dot{\theta}_{max}\)。從物理意義上講,如果能夠物理實現恰好跟蹤所需末端執行器軌跡的關節速度,則應使用它;否則,最優解要求關節速度範數達到其極限。
為了明確表示方程 \(\eqref{1}\) 的阻尼最小二乘解對阻尼因子的依賴,將用 \(\dot{\theta}(\lambda)\) 表示,其解由下式給出:

\[\dot{\theta}^{(\lambda)}=\sum_{i=1}^{r}\frac{\sigma_{i}}{\sigma_{i}^{2}+\lambda^{2}} \mathbf{v_{i}u_{i}^{T}\dot{x}} \tag{4}\label{eq4} \]

其中,

\[J= \sum_{i=1}^{n} \sigma_{i} \mathbf{u_{i} v_i^T} \tag{5}\label{eq5} \]

是雅各比矩陣的 SVD 分解形式。因此,它的解可以表示為

\[\|\dot{\theta}^{(\lambda)}\|^2=\sum_{i=1}^r\left[\frac{\dot{x}_i\sigma_i}{\sigma_i^2+\lambda^2}\right]^2 \tag{6}\label{eq6} \]

其中,

\[\dot{x}_{i}=\mathbf{u}_{i}^{\mathbf{T}}\dot{\mathbf{x}} \tag{7}\label{eq7} \]

方程 \(\eqref{eq6}\) 是關於 \(\lambda\) 的非線性方程,必須解決它才能在 \(\|\dot{\theta}^{(\lambda)}\|=\dot{\theta}_{max}\) 時找到最優解。解決此問題的有效技術是使用牛頓法,這需要求方程 \(\eqref{eq6}\) 關於阻尼因子的導數,如 Lawson 和 Hanson (1974) [22]中所討論的。

上述技術已在 PUMA 機器人的模擬中實現。如前所述,這些軌跡被選擇穿過奇異配置,以展示阻尼最小二乘解的性質。
使用阻尼最小二乘解的跟蹤速度誤差以及關節角速度

在速度控制上使用阻尼最小二乘解所得到的速度誤差範數關節角度與關節加速度

模擬的結果,包括末端執行器速度跟蹤誤差和關節角速度範數,分別在圖中為三條軌跡繪製出來。所有三條軌跡的最大關節速度範數 \(\dot{\theta}_{max}\) 被設定為每計算間隔0.009弧度。除了雅可比矩陣接近奇異且期望的末端執行器速度在丟失自由度方向上有分量的點之外,軌跡上所有點的末端執行器跟蹤誤差均為零。在這些點,可以觀察到關節速度的特徵性跳躍,但被有效限制在最大允許值。這有效防止了使用其他逆運動學方法透過奇異姿態時典型的違反常理的運動。因此,即使在接近奇異姿態的情況下,這些解在物理上也是有意義的,實際上,它們導致了最小的末端執行器跟蹤誤差。如果指定的末端執行器速度沒有與最小奇異值關聯的奇異向量方向上的分量(注意圖中的凹口),這個誤差實際上可以是零。實際上,這就是擁有完整的 SVD 的優勢,而僅有奇異性資訊的話就不具備這樣的優勢。應當注意的是,由於運動經過了奇異姿態,機械手可能切換逆運動學解的分支(例如,從肘部向上切換到肘部向下的姿態)。

截斷 SVD 解的連續形式

使用阻尼最小二乘法提供了在關節運動的物理約束下跟蹤給定末端執行器軌跡的最優解。雖然這個解是最優的,但由於計算適當阻尼因子 \(\lambda\) 的迭代性質,可能不適合實際應用。可以證明,阻尼最小二乘解的特性與使用截斷 SVD 解得到的特性非常相似。由 \(\eqref{1}\) 所描述的線性系統方程的截斷 SVD 的解用 \(\dot{\theta}^{(k)}\) 表示的話,定義為

\[\dot{\theta}^{(k)}=\sum_{i=1}^k\frac{\dot{x}_i}{\sigma_i}\mathbf{v_i} \tag{8}\label{eq8} \]

其中,\(k\) 是一個小於或等於秩 \(r\) 的整數。截斷 SVD 透過移除所有對應於小奇異值的解分量,同時保留所有與較大奇異值相關的分量,從而減少了解的範數。引數 \(k\) 用來衡量小和大,使得 \(\sigma_i\) 對於 \(i \leq k\) 是大的,而 \(\sigma_i\) 對於 \(i > k\) 被認為是小的。可以證明 \(\dot{\theta}^{(k)}\) 是由剩下的 \(v_i\) 張成的 \(k\) 維子空間(\(i\leq k\) )中的最小殘差解 (Marquardt 1970)[23]。對於 \(\sigma_k\gg\sigma_{k+1}\),並且阻尼因子 \(\lambda\) 位於兩個明顯分隔的奇異值 \(\sigma_k\)\(\sigma_{k+1}\) 之間的情況,這兩種型別的解的結果將大致接近。透過將截斷 SVD 修改為連續函式而不是 \(k\) 的階躍函式,可以獲得幾乎與阻尼最小二乘解相同的解。這種連續形式的解用 \(\dot{\theta}^{(c)}\) 表示,其定義為

\[\dot{\theta}^{(c)}=\sum_{i=1}^k\frac{\dot{x}_i}{\sigma_i}\mathbf{v_i}+\frac{(c-k)\dot{x}_{k+1}}{\sigma_{k+1}}\mathbf{v_{k+1}} \tag{9}\label{eq9} \]

在這裡, \(c\) 是一個小於或等於秩的實數,而 \(k\) 是小於等於 \(c\) 的最大整數。
因為奇異向量都是單位正交向量,所以這種解的範數可以直接寫成

\[\|\dot{\theta}^{(c)}\|^2=\sum_{i=1}^k\left(\frac{\dot{x}_i}{\sigma_i}\right)^2+\left(\frac{(c-k)\dot{x}_{k+1}}{\sigma_{k+1}}\right)^2 \tag{10}\label{eq10} \]

使用這種形式的解的優勢在於,當 SVD 可用時,它非常容易計算。從方程 \(\eqref{eq8}\) 得到的截斷奇異值解的範數 \(\|\dot{\theta}^{(i)}\|\) ,隨著 \(i\) 的遞增被計算,直到 \(i\) 等於秩或者範數大於 \(\dot{\theta}_{max}\) 。後一種情況恰好是我們的目標,因為它代表了達到關節速度的物理限制。在這種情況下,現在知道了 \(k\) ,即 \(i-1\) ,並且可以很容易地從 \(\eqref{eq10}\) 得到所需的量 \((c - k)\) ,使得 \(\|\dot{\theta}^{(c)}\|\) 等於0。然後使用這個值來獲得由 \(\eqref{eq9}\) 定義的連續截斷奇異值解。這種演算法的實現被用來模擬控制 PUMA 機器人。在所有三種情況下,得到的關節軌跡與使用阻尼最小二乘解得到的結果相差不到1%。Maciejewski (1987)中給出了關於連續截斷 SVD 解和阻尼最小二乘解這兩者之間差異的詳細誤差分析。

加速度分解控制

上述部分討論瞭如何在奇異性存在的情況下透過移除與小奇異值相關的分量來處理關節角速度的硬約束。然而,在許多實際案例中,關節加速度將是限制因素。相同的技術同樣適用,因為加速度分解控制(Luh, Walker, 和 Paul 1980)[24]仍然需要基於某種雅可比逆的解。透過對 \(\eqref{eq1}\) 方程進行微分,我們可以直接發現

\[J\ddot{\theta}+\dot{J}\dot{\theta}=\tilde{\mathbf{x}} \tag{11}\label{eq11} \]

因此,對於機械手的給定狀態,可以計算出實現所需末端執行器加速度所需的關節加速度。但是在奇異性存在的情況下,這些關節加速度可能變得無限大,所以這裡我們又要強調一個可用的解必須滿足由 \(\|\ddot{\theta}\|\leq \ddot{\boldsymbol{\theta}}_{max}\) 所定義物理可行的加速度約束的前提下最小化加速度誤差 \(\|\tilde{\mathbf{x}}-(J\ddot{\boldsymbol{\theta}}+\dot{\boldsymbol{J}}\dot{\boldsymbol{\theta}})\|\)。作為一個例子,考慮使用速度控制來跟蹤圖中給出的軌跡 B。該圖還給出了為保持期望速度所需的關節加速度的圖示。關節加速度範數採用典型的計算方式,在奇異點處有一個非常大的尖峰,兩側有兩個較小的峰值。需要注意的是,如果僅僅考慮對關節速度的範數進行微分,這種現象並不顯著,但在考慮透過奇異點的影響後就變得顯著了。特別是,第一個加速度峰值是由於關節加速以匹配由於與小奇異值相關聯的方向上的分量所需的大速度。然後加速度變為零,因為速度的硬約束限制了這個奇異分量的影響。然而,當機械手透過奇異性時,沿著小奇異值的分量改變符號,以至於那些需要匹配它的關節必須減速到零,然後以相反的方向加速,因此在加速度曲線上產生了大尖峰。在這一點上,速度曲線上沒有尖峰,因為速度約束仍然有效,但現在它是在限制另一個方向的速度。加速度的最後一個峰值是離開奇異區域的結果,因此關節減速,因為在奇異區域之外不需要大的速度。
為了在關節加速度的硬約束存在的情況下獲得最優解,連續截斷 SVD 技術被應用於方程 \(\eqref{eq11}\) 的解。下圖展示了由此產生的關節速度和加速度以及末端執行器的跟蹤誤差。正如預期的那樣,末端執行器的加速度跟蹤誤差在奇異點附近除外,均為零,因為在奇異點附近遇到了加速度的硬約束。這種對加速度的恆定限制導致關節速度曲線呈現三角形狀,它們在加速和減速之間交替變化。施加這樣的加速度約束有效地擴大了感受到奇異性影響的區域。這導致在兩個奇異姿態周圍的軌跡的較大部分中,末端執行器速度跟蹤誤差非零。這個跟蹤誤差,然而,是考慮到機械手加速度的物理限制下可實現的最小誤差。
使用阻尼最小二乘法的加速度分解控制追蹤軌跡B的末端速度加速度誤差與關節速度加速度誤差

結論

可用的計算雅可比矩陣 SVD 的高效演算法,帶來了許多潛在的應用,包括實時評估靈巧性和利用冗餘自由度。這項工作展示了 SVD 在處理奇異性這一基本問題上的應用。當 SVD 可用時,阻尼最小二乘公式的最優解可以被輕鬆且高效地獲得。此外,已經展示瞭如何使用截斷 SVD 解的連續形式來代替阻尼最小二乘解。在速度或加速度級別使用這種公式允許在不違反物理約束或產生違反常理的運動的情況下透過奇異姿態進行操作。

More Reading

Reference


  1. Yoshikawa, Tsuneo. 1985. “Manipulability of Robotic Mechanisms.” The International Journal of Robotics Research 4 (2): 3–9. https://doi.org/10.1177/027836498500400201. ↩︎

  2. Yoshikawa, T. 1985. “Dynamic Manipulability of Robot Manipulators.” In Proceedings. 1985 IEEE International Conference on Robotics and Automation, 2:1033–38. St. Louis, MO, USA: Institute of Electrical and Electronics Engineers. https://doi.org/10.1109/ROBOT.1985.1087277. ↩︎

  3. Klein, Charles A., and Ching-Hsiang Huang. 1983. “Review of Pseudoinverse Control for Use with Kinematically Redundant Manipulators.” IEEE Transactions on Systems, Man, and Cybernetics SMC-13 (2): 245–50. https://doi.org/10.1109/TSMC.1983.6313123. ↩︎

  4. Yoshikawa, Tsuneo. 1983. “Analysis and Control of Robot Manipulators with Redundancy.” ↩︎

  5. Baillieul, J. 1987. “A Constraint Oriented Approach to Inverse Problems for Kinematically Redundant Manipulators.” In Proceedings. 1987 IEEE International Conference on Robotics and Automation, 4:1827–33. Raleigh, NC, USA: Institute of Electrical and Electronics Engineers. https://doi.org/10.1109/ROBOT.1987.1087809. ↩︎

  6. Klein, Charles A., and Bruce E. Blaho. 1987. “Dexterity Measures for the Design and Control of Kinematically Redundant Manipulators.” The International Journal of Robotics Research 6 (2): 72–83. https://doi.org/10.1177/027836498700600206. ↩︎

  7. Chiu, S. 1987. “Control of Redundant Manipulators for Task Compatibility.” In Proceedings. 1987 IEEE International Conference on Robotics and Automation, 4:1718–24. Raleigh, NC, USA: Institute of Electrical and Electronics Engineers. https://doi.org/10.1109/ROBOT.1987.1087795. ↩︎

  8. Salisbury, J. Kenneth, and John J. Craig. 1982. “Articulated Hands: Force Control and Kinematic Issues.” The International Journal of Robotics Research 1 (1): 4–17. https://doi.org/10.1177/027836498200100102. ↩︎

  9. Whitney, Daniel. 1969. “Resolved Motion Rate Control of Manipulators and Human Prostheses.” IEEE Transactions on Man Machine Systems 10 (2): 47–53. https://doi.org/10.1109/TMMS.1969.299896. ↩︎

  10. A. Liégeois. 1977. “Automatic Supervisory Control of the Configuration and Behavior of Multibody Mechanisms.” IEEE Transactions on Systems, Man, and Cybernetics 7 (12): 868–71. https://doi.org/10.1109/TSMC.1977.4309644. ↩︎

  11. Hollerbach, J. and Ki Suh. 1987. “Redundancy Resolution of Manipulators through Torque Optimization.” IEEE Journal on Robotics and Automation 3 (4): 308–16. https://doi.org/10.1109/JRA.1987.1087111. ↩︎

  12. Maciejewski, Anthony A., and Charles A. Klein. 1985. “Obstacle Avoidance for Kinematically Redundant Manipulators in Dynamically Varying Environments.” The International Journal of Robotics Research 4 (3): 109–17. https://doi.org/10.1177/027836498500400308. ↩︎

  13. Nakamura, Yoshihiko, Hideo Hanafusa, and Tsuneo Yoshikawa. 1987. “Task-Priority Based Redundancy Control of Robot Manipulators.” The International Journal of Robotics Research 6 (2): 3–15. https://doi.org/10.1177/027836498700600201. ↩︎

  14. Baker, D., and C. Wampler. 1987. “Some Facts Concerning the Inverse Kinematics of Redundant Manipulators.” In Proceedings. 1987 IEEE International Conference on Robotics and Automation, 4:604–9. Raleigh, NC, USA: Institute of Electrical and Electronics Engineers. https://doi.org/10.1109/ROBOT.1987.1087954. ↩︎

  15. Asada, H., and J. Granito. 1985. “Kinematic and Static Characterization of Wrist Joints and Their Optimal Design.” In Proceedings. 1985 IEEE International Conference on Robotics and Automation, 2:244–50. St. Louis, MO, USA: Institute of Electrical and Electronics Engineers. https://doi.org/10.1109/ROBOT.1985.1087324. ↩︎

  16. Aboaf, E., and R. Paul. 1987. “Living with the Singularity of Robot Wrists.” In Proceedings. 1987 IEEE International Conference on Robotics and Automation, 4:1713–17. Raleigh, NC, USA: Institute of Electrical and Electronics Engineers. https://doi.org/10.1109/ROBOT.1987.1087792. ↩︎

  17. Dubey, R., and J. Luh. 1987. “Redundant Robot Control for Higher Flexibility.” In Proceedings. 1987 IEEE International Conference on Robotics and Automation, 4:1066–72. Raleigh, NC, USA: Institute of Electrical and Electronics Engineers. https://doi.org/10.1109/ROBOT.1987.1087918. ↩︎

  18. Mayorga, R., and A. Wong. 1987. “A Singularities Avoidance Method for the Trajectory Planning of Redundant and Nonredundant Robot Manipulators.” In Proceedings. 1987 IEEE International Conference on Robotics and Automation, 4:1707–12. Raleigh, NC, USA: Institute of Electrical and Electronics Engineers. https://doi.org/10.1109/ROBOT.1987.1087803. ↩︎

  19. Sampei, M., and K. Furuta. 1988. “Robot Control in the Neighborhood of Singular Points.” IEEE Journal on Robotics and Automation 4 (3): 303–9. https://doi.org/10.1109/56.791. ↩︎

  20. Nakamura, Yoshihiko, and Hideo Hanafusa. 1986. “Inverse Kinematic Solutions With Singularity Robustness for Robot Manipulator Control.” Journal of Dynamic Systems, Measurement, and Control 108 (3): 163–71. https://doi.org/10.1115/1.3143764. ↩︎

  21. Wampler, Charles. 1986. “Manipulator Inverse Kinematic Solutions Based on Vector Formulations and Damped Least-Squares Methods.” IEEE Transactions on Systems, Man, and Cybernetics 16 (1): 93–101. https://doi.org/10.1109/TSMC.1986.289285. ↩︎

  22. Lawson, Charles L., and Richard J. Hanson. 1995. Solving Least Squares Problems. Society for Industrial and Applied Mathematics. https://doi.org/10.1137/1.9781611971217. ↩︎

  23. Marquardt, Donald W. 1970. “Generalized Inverses, Ridge Regression, Biased Linear Estimation, and Nonlinear Estimation.” Technometrics 12 (3): 591–612. https://doi.org/10.1080/00401706.1970.10488699. ↩︎

  24. Luh, J., M. Walker, and R. Paul. 1980. “Resolved-Acceleration Control of Mechanical Manipulators.” IEEE Transactions on Automatic Control 25 (3): 468–74. https://doi.org/10.1109/TAC.1980.1102367. ↩︎

相關文章