"指定時刻に目標値に到達する指定関数により定義される軌道を生成するシステムであって、前記指定時刻を可変に設定するように構成されている第1軌道生成要素と、前記指定関数の3階時間微分関数の絶対値の高低を表わす評価関数の、始端時刻から、前記第1軌道生成要素により設定されている最新の前記指定時刻としての終端時刻までの指定期間にわたる積分値が最小になるという第1の条件下で、当該指定期間における前記指定関数を生成するように構成されている第2軌道生成要素とを備えていることを特徴とする軌道生成システム。請求項1記載の軌道生成システムにおいて、前記第2軌道生成要素が、前記第1の条件に加えて、前記指定関数の2階時間微分関数の値が許容範囲内に制限されるという第2の条件下で、前記指定関数を生成するように構成されていることを特徴とする軌道生成システム。請求項2記載の軌道生成システムにおいて、前記第1軌道生成要素が、前記第1の条件および前記第2の条件下で、前記指定時刻における前記指定関数の目標値の変更可能範囲を設定するように構成され、前記第2軌道生成要素が、前記指定時刻における前記指定関数の目標値を、前記第1軌道生成要素により設定された前記変更可能範囲に収めるように前記指定関数を生成するように構成されていることを特徴とする軌道生成システム。請求項3記載の軌道生成システムにおいて、前記第1軌道生成要素が、前記終端時刻における前記変更可能範囲を設定した上で、前記変更可能範囲と、前記目標値の指定範囲とが少なくとも部分的に重複するという第3の条件を満たすように前記終端時刻を設定するように構成されていることを特徴とする軌道生成システム。しかし、前記フィルタによれば、指定時刻が変更された場合、関数の時間微分値の軌道が不連続となる可能性がある。たとえば、ロボットが歩行している途中で足平の接地指定時刻が変更された場合、鉛直方向成分について当該足平の速度および加速度のうち少なくとも一方の軌道が不連続となる可能性がある。そこで、本発明は、指定関数により定義される軌道を生成する際、当該指定関数を目標値に一致させる指定時刻の変更を許容しながらも、当該指定関数の時間微分関数のなめらかさを確保しうるシステムを提供することを解決課題とする。本発明の軌道生成システムは、指定時刻に目標値に到達する指定関数により定義される軌道を生成するシステムであって、前記指定時刻を可変に設定するように構成されている第1軌道生成要素と、前記指定関数の3階時間微分関数の絶対値の高低を表わす評価関数の、始端時刻から、前記第1軌道生成要素により設定されている最新の前記指定時刻としての終端時刻までの指定期間にわたる積分値が最小になるという第1の条件下で、当該指定期間における前記指定関数を生成するように構成されている第2軌道生成要素とを備えていることを特徴とする。本発明の軌道生成システムによれば、評価関数の指定期間にわたる積分値が最小になるという第1の条件が満たされるように指定関数が生成される。評価関数は、指定関数の3階時間微分関数の絶対値の高低を表わすため、その積分値が最小であるということは、指定期間における指定関数の2階時間微分関数、1階時間微分関数および当該指定関数のなめらかさが確保されることを意味する。したがって、指定時刻の変更を許容しながら、指定関数の1階および2階時間微分関数のそれぞれにより定義される軌道のなめらかさが確保されるように、当該指定関数により定義されるなめらかさがある軌道が生成されうる。前記第2軌道生成要素が、前記第1の条件に加えて、前記指定関数の2階時間微分関数の値が許容範囲内に制限されるという第2の条件下で、前記指定関数を生成するように構成されていることが好ましい。当該構成の軌道生成システムによれば、生成軌道にしたがって動作が制御される制御対象に対してその性能を超えた動作を指令するような指定関数の軌道が生成される事態が回避される。前記第1軌道生成要素が、前記第1の条件および前記第2の条件下で、前記指定時刻における前記指定関数の目標値の変更可能範囲を設定するように構成され、前記第2軌道生成要素が、前記指定時刻における前記指定関数の目標値を、前記第1軌道生成要素により設定された前記変更可能範囲に収めるように前記指定関数を生成するように構成されていることが好ましい。当該構成の軌道生成システムによれば、指定時刻の変更に加えて目標値の適応的な変更を許容しながら、指定関数の1階および2階時間微分関数のそれぞれにより定義される軌道のなめらかさが確保されるように当該指定関数により定義される軌道が生成されうる。前記第1軌道生成要素が、前記終端時刻における前記変更可能範囲を設定した上で、前記変更可能範囲と、前記目標値の指定範囲とが少なくとも部分的に重複するという第3の条件を満たすように前記終端時刻を設定するように構成されていることが好ましい。当該構成の軌道生成システムによれば、指定時刻において指定関数を指定範囲に含まれる目標値に一致させるように、終端時刻指定時刻の変更を許容しながらも、指定関数の時間微分関数により定義される軌道のなめらかさが確保されるように当該指定関数により定義される軌道が生成されうる。軌道生成システムの構成図1に示されている本発明の一実施形態としての軌道生成システムはコンピュータにより構成されている。軌道生成システムは、第1軌道生成要素1と、第2軌道生成要素2とを備えている。軌道生成システムの当該構成要素のすべてが、物理的に共通のハードウェア資源により構成されていてもよいし、物理的に別個のハードウェア資源により構成されていてもよい。たとえば、第2軌道生成要素2が生成軌道にしたがって動作が制御される制御対象を構成するコンピュータにより構成される一方、第1軌道生成要素1がこの制御対象とは別個のコンピュータにより構成されてもよい。記載簡易のため、指定関数pのn階時間微分関数をn階指定関数pと記載する。たとえば、指定関数pが、前記特許文献2に記載されている脚式移動ロボットの各足平の位置を表わす場合、1階指定関数pは足平速度を表わし、2階指定関数pは足平加速度を表わし、3階指定関数pは足平躍度を表わす。また、指定関数pが、当該脚式移動ロボットの膝関節等の関節の角度を表わす場合、1階指定関数pは関節角速度を表わし、2階指定関数pは関節角加速度を表わし、3階指定関数pは関節角躍度を表わす。第1軌道生成要素1は、指定時刻終端時刻を可変に設定するように構成されている。第1軌道生成要素1は、次に説明する第1の条件および第2の条件下で、指定時刻t2における指定関数pの目標値の変更可能範囲[pminc,pmaxc]を設定するように構成されている。第2軌道生成要素2は、3階指定関数pの絶対値の高低を表わす評価関数の、始端時刻t1から終端時刻t2までの指定期間1[t1,t2]にわたる積分値が最小になるという第1の条件下で、少なくとも当該指定期間における指定関数pを生成するように構成されている。第2軌道生成要素2は、第1の条件に加えて、2階指定関数pの値が許容範囲[pminc,pmaxc]内に制限されるという第2の条件下で、指定関数pを生成するように構成されている。第2軌道生成要素2は、指定時刻における指定関数pの目標値pTが、第1軌道生成要素1により設定された変更可能範囲[pminc,pmaxc]に収まるように指定関数pを生成するように構成されている。本発明の構成要素がその担当演算処理を実行するように構成されているとは、軌道生成システムを構成するCPUが、記憶装置から軌道生成プログラムソフトウェアを読み出し、読み出した軌道生成プログラムにしたがって当該担当演算処理を実行するようにプログラムされていることを意味する。軌道生成システムにより生成された指定関数pにより定義される軌道にしたがって、ロボットまたは車両など、さまざまな機器が制御対象としてその動作が制御されうる。軌道生成システムの機能まず、指定関数pの目標終端値pTが認識される図2/STEP002。終端値pTはたとえば、センサにより測定される制御対象の状態に応じて流動的に設定されうる。これに応じて、終端時刻t2における指定関数pの上限値pmaxcおよび下限値pmincのそれぞれが当該終端値pTに初期化される図2/STEP004。終端時刻t2は、第1軌道生成要素1により可変に設定されうる。たとえば、制御対象としての脚式移動ロボットが、その姿勢安定等の観点から足平を着地させるタイミングを早くしたり、遅くしたりする要請に応じて、当該着地タイミングとしての終端時刻t2が変更されうる。続いて、2階指定関数pの極大値が上限値pmaxに一致するという条件下で、2階指定関数pが極値をとる4つの極値時刻τ1~τ4が計算される図2/STEP100。具体的には、極値時刻τにおいて2階指定関数pの極大値がリミッタの上限値pmaxに一致するという条件下で、2階指定関数pが極値を示す時刻t=τが方程式1にしたがって求められる。d3fdt30。ここで、fは、指定期間[t1,t2]にわたる評価関数を最小化するような関数軌道を表わしている。評価関数は、3階指定関数pの絶対値の高低を表わす関数であり、たとえば、3階指定関数pまたはそのノルムの二乗により定義される。この関数軌道fが用いられることにより、評価関数の指定期間にわたる積分値が最小になるという第1の条件が満たされるように指定関数pの軌道が生成される。関数軌道fは、指定期間[t1,t2]の時間間隔T=t2-t1、指定関数pの始端値p=p0、1階指定関数の始端値p=p0および2階指定関数の始端値p=p0、ならびに指定関数pの終端値p=pT、1階指定関数の終端値p=pTおよび2階指定関数の終端値p=pTに基づき、式2により定義されている。pfm5t5m4t4m3t3p0t2p0tp0m51260pTT0pTT22T5m430014pTT02pTT22T4m32008pTT0pTT22T3。さらに、前記条件下で指定関数pの終端値pTが消去されるように方程式1が変形されることにより極値時刻τの4次方程式4が導出される。M4τ4M3τ3M2τ2M1τM00M4120pT6T0pTM324TTp08T20pTM212T20pT3T30pT2pmaxM16T4maxp0M0T5maxp0。そして、当該4次方程式4が解かれることにより、4つの極値時刻τ=τ1~τ4が算出される。当該4つの極値時刻τ1~τ4のそれぞれを示す指数kが1に設定される図2/STEP102。また、指数kが4以下であるか否かが判定される図2/STEP104。指数kが4以下であると判定された場合図2/STEP104..YES、時刻τkが指定期間[t1,t2]に含まれているか否かが判定される図2/STEP106。この判定は、指定期間[t1,t2]から外れている時刻に極値を有するような、不適当な2階指定関数軌道pが生成されることを回避するために実行される。時刻τkが指定期間[t1,t2]に含まれていると判定された場合図2/STEP106..YES、時刻τkにおいて2階指定関数pが極大値になるという仮定下で、指定関数pの終端値候補pcが計算される図2/STEP108。指定関数の終端値候補pcが終端値pTになるという条件下で、2階指定関数pの最小値pmincが計算される図2/STEP110。その上で、2階指定関数pの最小値pmincが下限値pmin以上であるか否かが判定される図2/STEP112。この判定は、2階指定関数pの極小値がリミッタ下限値pminを下回るような2階指定関数軌道pが生成されることを回避するために実行される。すなわち、当該判定は、2階指定関数pの値がリミッタ範囲許容範囲内に制限されるという第2の条件の充足性の判定に相当する。2階指定関数pの最小値pmincがリミッタの下限値pmin以上であると判定された場合図2/STEP112..YES、5階指定関数軌道pが正値であるか否かがさらに判定される図2/STEP114。5階指定関数軌道pが正値であると判定された場合図2/STEP114..YES、指定関数pの極大値候補pmaxcが終端値候補pc以上であるか否かが判定される図2/STEP116。指定関数pの極大値候補pmaxcが終端値候補pc以上であると判定された場合図2/STEP116..YES、極大値候補pmaxcが終端値候補pcに設定される図2/STEP118。一方、5階指定関数軌道pが正値ではないと判定された場合図2/STEP114..NO、指定関数pの極小値候補pmincが終端値候補pc以下であるか否かが判定される図2/STEP120。指定関数pの極小値候補pmincが終端値候補pc以下であると判定された場合図2/STEP120..YES、極小値候補pmincが指定関数pの終端値候補pcに設定される図2/STEP122。その後、指数kの値が1だけ増やされた上で図2/STEP124、STEP120以降の処理が繰り返される図2/STEP104~122参照。また、次の場合にも、指数kの値が1だけ増やされ図2/STEP122、その上で指数kの値の対比以降の一連の処理が繰り返される図2/STEP104~120参照。すなわち、時刻τkが指定期間[t1,t2]に含まれていないと判定された場合図2/STEP106..NO、2階指定関数pの最小値候補pmincが下限値pmin未満であると判定された場合図2/STEP112..NO、指定関数pの極大値候補pmaxcが終端値候補pc未満であると判定された場合図2/STEP116..NOまたは指定関数pの極小値候補pmincが終端値候補pcを超えていると判定された場合である図2/STEP120..NO。指数kが4を超えていると判定された場合図2/STEP104..NO、2階指定関数pの極小値が下限値pminに一致するという条件下で、2階指定関数pが極値をとる4つの極値時刻τ1~τ4が計算される図2/STEP200。極値時刻τにおいて、2階指定関数pの極小値がリミッタの下限値pminと一致するという条件下で、2階指定関数pが極値を示す時刻τが方程式1にしたがって求められる。さらに、前記条件下で指定関数pの終端値pTが消去されるように方程式1が変形されることにより極値時刻τの4次方程式4が導出される。そして、当該4次方程式4が解かれることにより、2階指定関数pの極小値がリミッタの下限値pminを下回らないという条件が満たされるように4つの極値時刻τ1~τ4が算出される。当該4つの極値時刻τ1~τ4のそれぞれを示す指数kが1に初期化される図2/STEP202。また、指数kが4以下であるか否かが判定される図2/STEP204。指数kが4以下であると判定された場合図2/STEP204..YES、極値時刻τkが指定期間[t1,t2]に含まれているか否かが判定される図2/STEP206。この判定は、指定期間[t1,t2]から外れている時刻に極値を有するような、不適当な2階指定関数軌道が生成されることを回避するために実行される。極値時刻τkが指定期間[t1,t2]に含まれていると判定された場合図2/STEP206..YES、この極値時刻τkにおいて2階指定関数pが極小値になるという仮定下で、指定関数pの終端値候補pcが計算される図2/STEP208。指定関数pの終端値候補pcが終端値pTに一致するという条件下で2階指定関数の最大値pmaxcが計算される図2/STEP210。その上で、2階指定関数pの最大値pmaxcがリミッタの上限値pmax以下であるか否かが判定される図2/STEP212。この判定は、極大値がリミッタの上限値pmaxを超えるような2階指定関数軌道pが生成されることを回避するために実行される。すなわち、当該判定は、2階指定関数pの値がリミッタ範囲許容範囲内に制限されるという第2の条件の充足性の判定に相当する。2階指定関数pの最大値pmaxcが上限値pmax以下であると判定された場合図2/STEP212..YES、5階指定関数軌道pが正値であるか否かがさらに判定される図2/STEP214。5階指定関数軌道pが正値であると判定された場合図2/STEP214..YES、指定関数pの極大値候補pmaxcが終端値候補pc以上であるか否かが判定される図2/STEP216。指定関数pの極大値候補pmaxcが終端値候補pc以上であると判定された場合図2/STEP216..YES、終端値候補pcが極大値候補pmaxcに設定される図2/STEP218。一方、5階指定関数軌道pが正値ではないと判定された場合図2/STEP214..NO、指定関数pの極小値候補pmincが終端値候補pc以下であるか否かが判定される図2/STEP220。極小値候補pmincが終端値候補pc以下であると判定された場合図2/STEP220..YES、終端値候補pcが極小値候補pmincに設定される図2/STEP222。その後、指数kの値が1だけ増やされ図2/STEP224、その上で指数kの対比以降の一連の処理が繰り返される図2/STEP204~222参照。また、次の場合にも、指数kの値が1だけ増やされ図2/STEP224、その上で指数kの対比以降の一連の処理が繰り返される図2/STEP204~222参照。すなわち、極値時刻τkが指定期間[t1,t2]に含まれていないと判定された場合図2/STEP206..NO、2階指定関数pの最大値候補pmaxcが上限値pmaxを超えていると判定された場合図2/STEP212..NO、指定関数pの極大値候補pmaxcが終端値候補pc未満であると判定された場合図2/STEP216..NOまたは指定関数pの極小値候補pmincが終端値候補pcを超えていると判定された場合である図2/STEP220..NO。指数kが4を超えていると判定された場合図2/STEP204..NO、第2の条件を満たす終端値pTの最大値がpmaxcに決定され、最小値はpmincに決定される図2/STEP300。図3~図6のそれぞれの上段、中段および下段のそれぞれには実線により当初の指定関数軌道p、1階指定関数軌道pおよび2階指定関数軌道pのそれぞれが示されている。始端値p0、1階指定関数始端値p0および2階指定関数始端値p0ならびに1階指定関数終端値pTおよび2階指定関数終端値pTのそれぞれが0であるという束縛条件下で各軌道が設定されている。図3~図6のそれぞれにおいて、時刻t=0,0.25T,0.50Tおよび0.75Tのそれぞれを始端時刻t=t1とした場合に、第1および第2の条件を満たすように変更された一対の指定関数軌道p、一対の1階指定関数軌道pおよび一対の2階指定関数軌道pのそれぞれが破線で示されている。図3~図6のそれぞれの上段から明らかなように、第2の条件下で変更された一対の指定関数軌道の終端時刻t=t2における間隔終端値可変範囲=pmaxc-pmincが、終端時刻t=t2までの残り時間が短くなるほど狭くなっている。図7には、当初の指定関数軌道pが破線で示され、指定期間Tが変更されない状況で、第2の条件が満たされるように変更された指定関数軌道pが一対の一点鎖線により示されている。また、指定期間Tの長さが1.5倍に変更された状況で、第2の条件が満たされるように変更された指定関数軌道pが一対の実線により示されている。図7から明らかなように、時間間隔Tの広狭に応じて、第2の条件を満たす終端値可変範囲の広狭が変化する。そして、第2軌道生成要素2により、指定関数pの終端値pが目標終端値pTに一致するように、あるいは、第1軌道生成要素1により設定された変更可能範囲[pminc,pmaxc]に収まるように指定関数pが生成される。本発明の軌道生成システムの作用効果本発明の軌道生成システムによれば、評価関数の指定期間にわたる積分値が最小になるという第1の条件が満たされるように指定関数pが生成される図2/STEP100,STEP200、式2参照。評価関数は、前記のように3階指定関数pの絶対値の高低を表わすため、その積分値が最小であるということは、指定期間[t1,t2]における2階指定関数p、1階指定関数pおよび当該指定関数pのなめらかさが確保されることを意味する。また、第1の条件に加えて、2階指定関数pの値がリミッタ範囲[pminc,pmaxc]内に制限されるという第2の条件が満たされるように指定関数pが生成される図2/STEP112,STEP212参照。したがって、指定時刻t2の変更を許容しながら、1階指定関数軌道pおよび2階指定関数軌道pのなめらかさが確保されるように、当該指定関数pにより定義されるなめらかさがある軌道pが生成されうる図3~図6参照。また、生成軌道pにしたがって動作が制御される制御対象に対してその性能を超えた動作を指令するような指定関数pの軌道が生成される事態が回避される。本発明の他の実施形態第1軌道生成要素1が、始端時刻t1および終端時刻t2のうち少なくとも一方が異なる場合における変更可能範囲[pminc,pmaxc]を設定した上で、当該変更可能範囲と、制御対象の行動計画等に応じて定まる目標値pTの指定範囲とが少なくとも部分的に重複するという第3の条件を満たすように始端時刻t1および終端時刻t2のうち少なくとも一方を設定するように構成されていてもよい。当該構成の軌道生成システムによれば、指定時刻t2において指定関数pを指定範囲に含まれる目標値pTに一致させるように、始端時刻t1および終端時刻指定時刻t2のうち少なくとも一方の変更を許容しながらも、1階指定関数軌道pおよび2階指定関数軌道pのなめらかさが確保されるように当該指定関数軌道pが生成されうる。"