用語集 · ロボティクスと制御
単調3次スプライン
別名:Monotone cubic spline、PCHIP、Fritsch–Carlson interpolation、cubic Hermite spline、spline、スプライン、3次エルミートスプライン、単調補間
点の集まりを通る滑らかな曲線で、点を行き過ぎることがありません。点が上がるところでは上がり、平らなところでは平らなままです。
スプラインとは、多項式の断片を滑らかにつないだ曲線です。3次スプラインは、隣り合う2点の間ごとに3次多項式を使います。 から までの各区間で、、 とすると、3次エルミートの断片は、両端の値 とそこでの傾き で決まります。
行き過ぎの問題
標準的な滑らかな3次スプラインは、曲線ができるだけ滑らかになるように傾きを選びます。そのため急な変化の近くではオーバーシュートします。データを通り越してから戻ってくるのです。動きの場合、これは目に見え、害にもなりえます。床の高さで止まるはずの足が床の下に沈んだり、関節が一瞬だけ限界を超えたりします。
単調にする解決策
Fritsch と Carlson(1980)は、データが単調なところでは曲線も単調になるように傾き を選びます。点が上がるだけなら曲線も上がるだけで、隣り合う2点が等しければ、曲線はその間で平らなままです。傾きは隣どうしの割線の傾き から取り、山と谷ではゼロにします。これはよくPCHIP(piecewise cubic Hermite interpolating polynomial、区分的3次エルミート補間多項式)と呼ばれます。
代償は滑らかさが少し落ちることで、2階微分が点のところで跳ぶことがあります。キーフレームで作った動きなら、これは良い取引です。
このプロジェクトでは
回復動作のキーフレームは単調3次スプラインでつないでいるので、地面についたままでいるべき足や、下ろしたままでいるべきかかとが、キーの間でずれていきません。