概要
逆運動学 (IK: Inverse Kinematics) は、エンドポイント(手の位置など)から、各関節の角度を求めることを言う。 逆に、各関節の角度からエンドポイントの位置を導く出すことは、順運動学 (FK: Forward Kinematics) という。
順運動学では、一意にエンドポイントが定まるが、逆運動学では一般に関節の角度は一意に定まらず、複数の解が存在する。
ヤコビアンを用いた近似解法
m 個のパラメータ(各関節の回転量) →x∈Rm から3次元空間上での各関節の位置を決定できるものとする。 i 番目の関節の位置は pi:Rm→R3 で与えられる。
ここで初期状態の関節位置が pi(→x0) で与えられ、最終的な関節の位置は pi(→x0+σ) で表されるものとする。
いくつかの関節において、目標となる位置を与える。目標となる関節の位置を →ti∈R3,i∈τ で表す。 τ は目標となる位置を持つ、全ての関節の添字をまとめた集合。
ここで σ を決めるため、 ‖ を最小にする事を考える。
\sigma が小さい場合は、 p_i(\vec{x_{0}} + \sigma) \approx p_i(\vec{x_{0}}) + J_{p}(\vec{x_{0}})\sigma と近似することが出来る。ここで、 J_{p}(\vec{x_{0}}) は \vec{x_{0}} における、3 \times m のヤコビアンを表している。