人型ロボットを制御するためのコンピュータ実行型の方法であって、前記方法は、バランス制御装置が、前記人型ロボットの目標運動を受信するステップと、前記バランス制御装置が、前記目標運動に基づいて、ロボットの目標線形運動量変化率および目標角運動量変化率を決定するステップと、前記バランス制御装置が、バランスを維持するために課される拘束に基づいて、前記目標線形運動量変化率および前記目標角運動量変化率とは異なる許容線形運動量変化率および許容角運動量変化率を決定するステップと、前記バランス制御装置が、前記許容線形運動量変化率および前記許容角運動量変化率を実現するための複数の関節トルクを示す制御出力情報を生成するステップと、前記バランス制御装置が、複数の関節トルクに従って前記ロボットを動かす複数の関節アクチュエータに前記制御出力情報を出力するステップと、を備えることを特徴とする方法。前記許容線形運動量変化率および前記許容角運動量変化率を決定するステップは、前記許容線形運動量変化率および前記許容角運動量変化率を実現するための目標GRFGRFGroundReactionForceは地面反力および目標CoPCoPCenterofPressureは圧力中心を決定するステップと、前記目標GRFおよび前記目標CoPを物理的に実現可能な値に拘束することによって許容GRFおよび許容CoPを決定するステップと、前記許容GRFおよび前記許容CoPから前記許容線形運動量変化率および前記許容角運動量変化率を決定するステップと、を備えることを特徴とする請求項1に記載の方法。前記許容GRFおよび前記許容CoPを決定するステップは、前記ロボットがその胴体を回転させるように、前記目標線形運動量変化率を保存するとともに、前記目標角運動量変化率を修正するステップ、を備えることを特徴とする請求項3に記載の方法。前記許容GRFおよび前記許容CoPを決定するステップは、前記目標CoPの位置を、前記目標CoPの位置に最も近い前記ロボットの支持基盤の下方の点に線形移動させるステップ、を備えることを特徴とする請求項4に記載の方法。前記許容GRFおよび前記許容CoPを決定するステップは、前記ロボットが歩行するように、前記目標角運動量変化率を保存するとともに、前記目標線形運動量変化率を修正するステップ、を備えることを特徴とする請求項3に記載の方法。前記許容GRFおよび前記許容CoPを決定するステップは、前記目標CoPの位置を、前記目標CoPの位置に最も近い前記ロボットの支持基盤の下方の点に線形移動させるステップと、前記目標角運動量変化率を保存するように前記GRFの角度を回転するステップと、を備えることを特徴とする請求項6に記載の方法。前記許容線形運動量変化率および前記許容角運動量変化率は、前記ロボットがバランスを維持するように決定されることを特徴とする請求項1に記載の方法。前記目標運動は、静止位置を維持すること、を備えることを特徴とする請求項1に記載の方法。前記ロボットは、非水平または非定常の表面上でバランスを維持することを特徴とする請求項1に記載の方法。人型ロボットを制御するためのコンピュータのプログラム命令を記憶するコンピュータ読み取り可能な記憶媒体であって、プロセッサが実行するときに前記プログラム命令は、前記人型ロボットの目標運動を受信するステップと、前記目標運動に基づいて、ロボットの目標線形運動量変化率および目標角運動量変化率を決定するステップと、バランスを維持するために課される拘束に基づいて、前記目標線形運動量変化率および前記目標角運動量変化率とは異なる許容線形運動量変化率および許容角運動量変化率を決定するステップと、前記許容線形運動量変化率および前記許容角運動量変化率を実現するための複数の関節トルクを示す制御出力情報を生成するステップと、複数の関節トルクに従って前記ロボットを動かす複数の関節アクチュエータに前記制御出力情報を出力するステップと、を前記プロセッサに実行させることを特徴とする記憶媒体。前記許容線形運動量変化率および前記許容角運動量変化率を決定するステップは、前記許容線形運動量変化率および前記許容角運動量変化率を実現するための目標GRFGRFは地面反力および目標CoPCoPは圧力中心を決定するステップと、前記目標GRFおよび前記目標CoPを物理的に実現可能な値に拘束することによって許容GRFおよび許容CoPを決定するステップと、前記許容GRFおよび前記許容CoPから前記許容線形運動量変化率および前記許容角運動量変化率を決定するステップと、を備えることを特徴とする請求項11に記載の記憶媒体。前記許容GRFおよび前記許容CoPを決定するステップは、前記ロボットがその胴体を回転させるように、前記目標線形運動量変化率を保存するとともに、前記目標角運動量変化率を修正するステップ、を備えることを特徴とする請求項13に記載の記憶媒体。前記許容GRFおよび前記許容CoPを決定するステップは、前記目標CoPの位置を、前記目標CoPの位置に最も近い前記ロボットの支持基盤の下方の点に線形移動させるステップ、を備えることを特徴とする請求項14に記載の記憶媒体。前記許容GRFおよび前記許容CoPを決定するステップは、前記ロボットが歩行するように、前記目標角運動量変化率を保存するとともに、前記目標線形運動量変化率を修正するステップ、を備えることを特徴とする請求項13に記載の記憶媒体。前記許容GRFおよび前記許容CoPを決定するステップは、前記目標CoPの位置を、前記目標CoPの位置に最も近い前記ロボットの支持基盤の下方の点に線形移動させるステップと、前記目標角運動量変化率を保存するように前記GRFの角度を回転するステップと、を備えることを特徴とする請求項16に記載の記憶媒体。人型ロボットを制御するためのバランス制御装置であって、少なくとも一つのプロセッサと、前記プロセッサが実行するときに、前記プロセッサに以下のステップを含むステップを実行させるコンピュータのプログラム命令を記憶するメモリと、を備えることを特徴とするバランス制御装置。前記人型ロボットの目標運動を受信するステップと、前記目標運動に基づいて、ロボットの目標線形運動量変化率および目標角運動量変化率を決定するステップと、バランスを維持するために課される拘束に基づいて、前記目標線形運動量変化率および前記目標角運動量変化率とは異なる許容線形運動量変化率および許容角運動量変化率を決定するステップと、前記許容線形運動量変化率および前記許容角運動量変化率を実現するための複数の関節トルクを示す制御出力情報を生成するステップと、複数の関節トルクに従って前記ロボットを動かす複数の関節アクチュエータに前記制御出力情報を出力するステップ。前記許容線形運動量変化率および前記許容角運動量変化率を決定するステップは、前記許容線形運動量変化率および前記許容角運動量変化率を実現するための目標GRFGRFは地面反力および目標CoPCoPは圧力中心を決定するステップと、前記目標GRFおよび前記目標CoPを物理的に実現可能な値に拘束することによって許容GRFおよび許容CoPを決定するステップと、前記許容GRFおよび前記許容CoPから前記許容線形運動量変化率および前記許容角運動量変化率を決定するステップと、を備えることを特徴とする請求項18に記載のバランス制御装置。前記許容GRFおよび前記許容CoPを決定するステップは、前記ロボットがその胴体を回転させるように、前記目標線形運動量変化率を保存するとともに、前記目標角運動量変化率を修正するステップ、を備えることを特徴とする請求項20に記載のバランス制御装置。前記許容GRFおよび前記許容CoPを決定するステップは、前記目標CoPの位置を、前記目標CoPの位置に最も近い前記ロボットの支持基盤の下方の点に線形移動させるステップ、を備えることを特徴とする請求項21に記載のバランス制御装置。前記許容GRFおよび前記許容CoPを決定するステップは、前記ロボットが歩行するように、前記目標角運動量変化率を保存するとともに、前記目標線形運動量変化率を修正するステップ、を備えることを特徴とする請求項20に記載のバランス制御装置。前記許容GRFおよび前記許容CoPを決定するステップは、前記目標CoPの位置を、前記目標CoPの位置に最も近い前記ロボットの支持基盤の下方の点に線形移動させるステップと、前記目標角運動量変化率を保存するように前記GRFの角度を回転するステップと、を備えることを特徴とする請求項23に記載のバランス制御装置。しかしながら、ロボットの回転力学は、バランスをとることにおいて重大な役割を果たす。線形CoM運動にのみ重点的に取り組む制御方策は、予想外にも、不必要かつ潜在的に有害なロボットの回転運動を招く可能性がある。従来のバランス制御装置のいくつかは、例えば、胴体の向きを運動学的に制御すること、または、特定の関節空間制御装置を追加することによって、こうした問題を幾分、試行錯誤的に回避する。しかしながら、歩行中は角運動量を厳密に規制している人間とは異なり、前記した技術は、ロボットの回転力学を直接的に制御することはない。結果として、前記した従来技術は、バランス制御に関して、確実性のある人間の動きを実現することができない。さらに、前記した従来技術は、非水平および/または非定常の地面上でバランスを維持するための人型ロボットの試行に関して、十分なバランス制御を提供することができない。もし、バランスを維持している間に目標線形運動量変化率および目標角運動量変化率を同時に実現することができないのであれば、バランス制御装置は、さまざまな実施形態において、目標角運動量変化率を妥協しつつ目標線形運動量変化率を確保するようにしたり、その逆のことを行ったりする。代わりにバランス制御装置は、線形運動量変化率および角運動量変化率の両方を妥協してもよい。例えば、一実施形態において、バランス制御装置はまず、目標地面反力目標GRFおよび目標圧力中心目標CoPを決定し、目標線形運動量変化率および目標角運動量変化率を実現する。その後、目標GRFおよび目標CoPを物理的に実現可能な値に拘束することによって、許容GRFおよび許容CoPを決定する。例えば、第1の実施形態において、目標CoP位置がロボットの支持基盤の外側にあるならば、バランス制御装置は、目標GRFを保存している間は、目標CoP位置を、目標CoP位置に最も近いロボットの支持基盤の下方の点に線形移動させる。このような線形移動は、目標線形運動量変化率を保存し、かつ、目標角運動量変化率を修正する。ロボットの物理的動きは、胴体の回転によって特徴付けられる。第2の実施形態において、ロボット制御装置は同様にして、目標CoP位置を、目標CoP位置に最も近いロボットの支持基盤の下方の点に線形移動させるが、それだけでなく、目標角運動量変化率を保存するようにGRF角度を回転させる。このような線形移動および回転は、目標線形運動量変化率を修正し、ロボットの歩行によって特徴付けられる。バランス制御に対して運動量基準型の手法を用いる本願のバランス制御装置はロボットを制御して、外部撹乱にさらされたり、非水平地面および/または非定常地面に進入したりする場合にバランスを維持することができる。さらに、結果的なロボットの運動は、人間のバランス機構を模範としているため、ロボットの運動に関しては、ロボットをより人間らしく見せることができる。本明細書に記載された特徴および効果は包括的ではない。具体的には、図面および明細書を考慮すれば、一当業者にとっては多くの他の特徴および効果があることは明らかである。さらに、明細書に用いられる言語は、主に読み易さおよび教育上の目的から選択されたのであり、発明特定事項を詳しく説明するために、または制限するために選択されたわけではない、ということに留意されたい。ここで、本実施形態は、複数の図面を参照して説明されており、複数の図面に跨って同様の参照番号が記される場合、それらは同一の又は機能的に類似した構成要素を意味する。同様に、複数の図面に跨って、それぞれの参照番号の最も左の数字は、当該参照番号が最初に使用された図面の番号に対応している。本明細書において、一実施形態又はある実施形態と言う場合は、本発明の少なくとも1つの実施形態に、その実施形態に関連して記述される1つの特徴又は構造が含まれていることを意味する。本明細書のあちこちにある実施形態ではという語が出現しても、必ずしも同一の実施形態を指しているわけではない。後記する詳細説明のいくつかの部分は、アルゴリズム用語や、コンピュータメモリ内のデータビット作業を示す象徴的な表現による。これらのアルゴリズム的な説明や表現は、情報処理分野の当業者が、自らの業績の要旨を、同分野の他の当業者に最も効率的に伝えるために用いる手段である。アルゴリズムとは、ここでは、そして一般的にも、ある所望の結果に至る複数のステップ命令の首尾一貫したシーケンスのことを言う。ステップとは、物理量に対する物理的操作を要求するステップのことである。通常、必ずしも必要条件ではないが、それらの物理量は、記憶され、送信され、合成され、比較されかつ操作され得る、電子的、磁気的又は光学的信号の形を取る。これらの信号のことを、ビット、値、要素、シンボル、文字、語又は番号等と呼ぶことが主として用語の共通化の理由から便宜である。さらに、物理的操作、物理量の変換、または物理量の表現を要求するステップの配列のうちいくつかのものは、一般性を失うことなく、モジュール又はコードデバイスと呼ぶことが便宜である。しかしながら、このような用語の全ては適当な物理量と関連付けられており、これらの物理量に付された単なる便宜的なラベルに過ぎない。特段の説明がない限り、さもなければ後記の説明から明らかであるが、明細書本文全体を通じて、処理、計算、算出、決定又は表示等の用語を用いた説明は、コンピュータシステムのメモリ、レジスタ又は他の情報ストレージ装置、伝送装置または表示装置の内部で、電子的な物理量としてのデータを操作かつ変形するコンピュータシステムや同様の電子的コンピューティングデバイス例えば、専用計算機の動作や処理のことを言う。本実施形態のいくつかの側面は、アルゴリズムの形になったプロセスステップや命令を含む。本実施形態のプロセスステップや命令は、ソフトウエア、ファームウエア又はハードウェア内で具体化でき、ソフトウエア内で具体化される場合は、ダウンロードして記憶できたり、そして、多様なオペレーティングシステムが用いる別のプラットフォームから操作できたりすることに留意されたい。本実施形態はまた、コンピュータシステム上で実行可能なコンピュータプログラム製品内に導入できる。本実施形態は、操作を実行する装置にも関する。この装置は、所与の目的を達成する専用装置などであってもよいし、コンピュータ内に記憶されたコンピュータプログラムによって選択的に動作したり、または再構成されたりする汎用コンピュータであってもよい。このようなコンピュータプログラムは、コンピュータが読取り可能な媒体に記憶され得る。その媒体とは、コンピュータシステムバスに接続可能な、フロッピーディスク登録商標、光ディスク、CD-ROM、電磁光学的ディスク、ROM、RAM、EPROM、EEPROM、電磁的又は光学的カード、ASIC又は電子的命令を記憶し得るあらゆる媒体を含むが、これらに限定されない。メモリまたはストレージは、一時的であってもよいし、非一時的であってもよい。メモリは、情報、データ、プログラムを記憶できる前記した装置および/または他の装置のうち任意の装置を含むことができる。さらに、本明細書で言うコンピュータは、単体のプロセッサを含んでもよいし、コンピュータ能力を増加させるために複数のプロセッサを用いたアーキテクチャであってもよい。ここでいうアルゴリズムやディスプレイは、もともと任意の特定のコンピュータにも他の装置にも関係している訳ではない。ここで教示される内容に従って、プログラムとともに多様な一般目的システムが使用され得る。又は、さらに特化した装置を作成して、方法ステップを実行することも便宜であることがわかっている。これらのさまざまなシステムに必要となる構造は、後記する明細書本文から明らかになる。さらには、本実施形態は、任意の特定のプログラム言語を参照して記載されるものではない。本明細書に記載されている本実施形態の教示を実施するために、多様なプログラム言語が使用され得る。後記において特定の言語に言及した場合、それは本発明の実施可能性及びベストモードを開示するためである。さらに、本明細書で使用される言語は、主として意味の取りやすさ及び教示目的から選択されているのであって、発明特定事項を明確にするためや限定するために選択されているのではない。従って、本実施形態の開示は、特許請求の範囲にて記述されている本実施形態の範囲を例示するものであるが限定するものではない。システム構成図1は、ロボットを制御するバランス制御装置100の実施形態を説明するブロック図である。一実施形態において、ロボットは、人間と同様の関節構造例:足の各々の自由度は6であり、総重量は40~60kgを有する人型二足歩行ロボットである。バランス制御装置100は、ロボットの目標運動102を表現する情報を受信する。目標運動102は、ロボットに関するバランス条件または物理的拘束とは無関係とすることができる。目標運動102は、例えばロボットに対する一般的な命令例:左へ10フィート歩いてください、階段を歩いて下りてください、そのまま立っていてくださいなどから得ることができる。前記した運動に関する命令は、人間が制御機構を介して入力できるし、またはロボットの運動の決定を制御する人工知能システムが自動的に生成できる。一実施形態において、目標運動102は、両足の目標運動例:位置および速度と、ロボットの質量中心周りの角運動量と、質量中心位置と、質量中心速度と、関節加速度とを用いて定められる。場合によっては、目標運動102は、例えば、目標角運動量および目標質量中心速度を0にしてロボットを静止したままにすることを示唆できる。目標運動102に基づいて、バランス制御部100は、運動量基準型バランス制御アルゴリズムを使って、ロボットを動かす複数の関節アクチュエータ150を制御する制御出力情報104を生成する。一実施形態において、制御出力情報104は、前記したアクチュエータがロボットの関節の各々に加える複数のトルクを示す複数の関節トルクのベクトルを有する。目標運動102によって、ロボットがバランスを失うことがなければ、制御出力情報104は関節アクチュエータ150を制御して目標運動102を実行する。一方、バランス制御装置100は、目標運動102によって、ロボットがバランスを失い転倒することになると判定すれば、バランス制御装置100は、依然としてロボットの物理的制限の範囲内に留まっており、依然としてロボットがバランスを維持できている間は、結果的な運動許容運動が目標運動に最適に近づくような制御出力情報104を生成する。一実施形態において、バランス制御装置100は、ロボットを制御して、ロボットが外部撹乱例:押しを受けたり、非水平および/または非定常の表面上に立っていたり、歩行していたりしているときでさえも、ロボットのバランスを維持できる。バランス制御装置100は、周期的に例:ミリ秒ごとに目標運動102を処理し、制御出力情報104を生成することで、ロボットの目標運動が変化したり、または前記したロボットの変化に複数の外力が作用していたりするときでさえも、ロボットが自身のバランスを継続的に維持できる。さらに、バランス制御装置100は、人型運動モデルに基づいているので、結果的なロボットの運動は人間のようである。つまり、ロボットは、人間と同様の方法でバランスを維持するように動く。一実施形態において、バランス制御装置100は、プロセッサ120と、メモリ110とを備える。プロセッサ120は、データ信号を処理しており、複数命令セットコンピュータアーキテクチャCISC、縮小命令セットコンピュータアーキテクチャRISC、複数の命令セットの組み合わせを実行するアーキテクチャ、などのさまざまなコンピューティングアーキテクチャを備えることができる。図1には、単一のプロセッサ120が示されているが、複数のプロセッサを含んでもよい。プロセッサ120は、算術論理演算ユニット、マイクロプロセッサ、汎用コンピュータ、またはその他の情報電化製品を構成し、メモリ110または複数の外部入力情報からの電子データ信号を送信、受信、および処理する。メモリ110は、コンピュータ実行可能な命令およびコンピュータ読み取り可能なデータを記憶するコンピュータ読み取り可能記憶媒体を備える。前記した命令は、本明細書に記載されている技術のうち任意のものまたはすべてを実行するためのコードを備える。メモリ110はさらに、バランス制御装置100に入力されるデータ例:目標運動102、バランス制御装置100が出力するデータ例:制御出力情報104、および本明細書に記載されているバランス制御装置100の処理ステップを実行するために用いられる任意の中間データを、一時的にまたは常に非一時的に記憶することができる。メモリ104は、ダイナミックランダムアクセスメモリDRAM装置、スタティックランダムアクセスメモリSRAM装置、フラッシュRAM不揮発性記憶装置、これらの組み合わせ、または当業者が既知の他の記憶装置であってよい。運転中は、プロセッサ120は、コンピュータ実行可能な命令および/またはデータをメモリ110から読み込み、本明細書に記載されている処理ステップを実行する。一実施形態において、メモリ110は、バランス制御モジュール112を搭載する。バランス制御モジュール112は、プロセッサ106が実行すると、バランス制御装置100に目標運動102を受信させ、処理させ、制御出力情報104を関節アクチュエータ150に出力させるコンピュータ実行可能なプログラム命令を記憶している。バランス制御装置100は、運動量基準型のバランス制御を用いている前記した目標運動102を処理し、依然として物理的能力の範囲内で動作してバランスを維持しているロボットに、目標運動にできる限り近づけた運動をさせるロボットの運動の制御方法を決定する。バランス制御装置100は、本発明の範囲を逸脱することなく図1に示した構成要素と比較してより多いまたはより少ない構成要素を備えることができる。例えば、コンピュータシステム100は、他のメモリ、例えば、1次キャッシュ、2次キャッシュ、または1または複数の特定用途向け集積回路ASICを含んでよい。他の実施形態においては、バランス制御装置100の全体をハードウェアとして実装することができる。前記した基本的な数学的関係を用いることで、バランス制御装置100は、空間運動量の線形成分および角度成分の両方を制御することによりロボット200のバランスを維持する。具体的には、一実施形態において、バランス制御装置100の挙動は、目標運動量変化率を用いて定められる。ロボットの足と地面との接触に関するいくつかの拘束のために、目標運動量変化率が常に物理的に実現可能となるとは限らないことに留意されたい。第1に、CoPは、CoPがロボットの支持基盤の外側に位置することができない、という制約を受けている。単脚支持であるつまり、片足を上げていて支持が単一となるように両足が位置している場合、支持基盤は、地面と接触しているロボットの足の接触領域と同一であるのに対し、水平地面上での両脚支持の場合、支持基盤は、ロボットの両足の支持領域の凸包に相当する。第2に、GRFは、本来は一方に向かう方向でなければならず、かつ、ロボット200を地面の方へ引き付けてはならない。第3に、GRFは、ロボットの足が滑らないように、ロボットの足と地面との接地面に対する摩擦に関する制限を満たさなければならない。したがって、バランス制御装置100は、上記した物理的な拘束を満たしている間は、目標値にできるだけ近づけた運動量変化率の許容値、または物理的に実現可能な値を決定する。その後、ロボットの全身にある関節を制御して許容運動量変化率を生成する。両脚支持期におけるこのような冗長性を解決する方法の一つは、まずGRFおよびCoPを決定してから、GRFおよびCoPを足の各々に分配するというものであろう。しかしながら、このようなやり方は、重大な欠点を抱える。まず、両足が非水平面上および非連続面上に位置している場合、CoPを定めることができない。GRFの実現可能性を調べるために、経験的な推測に基づいた仮想水平面を定めたり、またはより一般的には、複数の接触点から作り出した3次元凸包を計算したりすればよい。このようなやり方では、足と地面との間の摩擦が両足でそれぞれ異なっている場合に対処することが困難である。このような問題を回避するため、一実施形態において、代替方法として、目標運動量変化率から直接的に足GRFの各々および足CoPの各々を計算する。地面と、足の各々との間に面接触があると仮定すると、足GRFとは、それぞれの足について、1つの足に作用する地面反力であり、足CoPとは、前記した足GRFの作用線が、前記した1つの足が形成する足支持面と交差する位置である。前記した足GRFおよび足CoPは、より慣用的である正味GRFおよび正味CoPとは対照的である。正味GRFおよび正味CoPは、両脚支持期において両足をまとめて取り扱ったときに適用される値である。足の各々にかかる力の複数のセンサを備えている現代の人型ロボットに関して、足GRFおよび足CoPを用いることは、便宜的な選択ということだけでなく、バランス制御にとっての当然の選択ということでもある。足GRFおよび足CoPはセンサデータとして直接取得されるが、正味GRFおよび正味CoPは後続ステップではじめて計算される。両脚支持期における足GRFおよび足CoPの非一意性によって、問題解決の他の最適性基準を考慮できる。具体的には、目標運動量変化率を生成するときに、さらに両方の足首トルクを最小化できる。詳細は後記するが、このことは、2つの単純な条件付き線形最小二乗問題を解くことによって実現できる。足首トルクを最小化することは重要である。というのは、足首トルクは概して、足が転倒してはいけないという点において、他のトルクと比べて多くの拘束を受けているからである。バランス制御装置100は、バランス維持のためにロボットの角運動量および線形運動量の両方を制御する。制御ポリシは、バランス制御装置100の異なる変形を可能にする目標運動量を用いて定められる。例えば、バランス制御装置100の異なる実施形態は、状況に応じて異なる比率からなる線形運動量および角運動量を満たすことができる。目標足GRFおよび目標足CoPは直接計算できる値であり、バランス制御装置100が正味GRFおよび正味CoPを計算することを必要としない。したがって、バランス制御の枠組みは、何ら特別な取り扱いをせずとも、足各々が位置する非水平地面に適用することができる。両脚支持に関しては、バランス制御装置100は、両足の足首トルクを最小化する両足の足GRFおよび両足の足CoPを計算する。単脚または両脚支持されているロボットがさまざまな方向に押された場合にバランスを維持できるようにする制御信号104を、バランス制御装置100が生成することは有益である。さらに、ロボットは、異なる勾配を有し、異なる速度で動く別々の移動支持体上に両足がある場合にバランスを維持できる。さらに、バランス制御部100は、歩行運動用に用いることができる。一実施形態において、ロボットはまた、足の各々の中に力検出部を備える。力検出部の各々は、GRFを測定する。前記したGRFは、直線力の3成分と、トルクの3成分を含む。代替的に、制御装置100は、観測された力学によってGRFを間接的に計算できる。一実施形態において、制御装置は、図4aに示すような第1の解決方法を実行し、角運動量よりも線形運動量を保存することを優先する。なぜならば、第1の解決方法は、姿勢バランスの能力を向上させるつまり、ロボットは歩くことなくバランスを維持できるからである。他の実施形態において、制御装置は、環境条件およびロボットの状態に依存して2つの対策のうちの一つを動的に選択する。しかしながら、さらに他の実施形態において、2つの方策の間の折衷案をとることもできる。これにより、線形運動量および角運動量の両方を妥協しつつも、各々に対する妥協の程度をより小さくするように実行できる。式23は、非負最小二乗アルゴリズムを用いて解を求めることができる。非負最小二乗アルゴリズムは、パラメータ調整を必要としない利点がある。D.関節加速度および関節トルクの決定両足の許容足GRF、許容足CoPおよび許容運動量変化率を決定した後、バランス制御装置100は、前記した許容運動量変化率および足の接触による拘束を生成する複数の関節加速度を決定するステップ310。その後、制御装置は、逆動力学を用いて前記した関節加速度および外力を生成するのに必要な複数の関節トルクを決定するステップ312。全体的に、式33は、3つの仕事対象:運動量変化率と、上体の運動の型styleと、接触拘束とを有する逆運動学的問題とみなすことができる。式7を強力な拘束として扱うことによって、式7は、他の拘束よりも優先される。式33は、式33を線形方程式の条件付き最小二乗問題に置き換えることによって解かれる。このようにして、バランス制御装置100は、人型ロボットを制御して、非水平、非連続、および非定常の地面上でバランスを維持する。ロボットの線形運動量および角運動量の両方を制御することによって、ロボットが比較的大きな撹乱の下でバランスを維持するとともに、人間のようにバランスをとるように振る舞うことでそのような撹乱に応答することを、バランス制御装置100は可能にする。従来のロボットの正味CoPおよび正味GRFを用いることなく、支持足の各々におけるCoPおよびGRPを決定することによって、バランス制御装置100は、足各々において地面の形状および地面の摩擦が異なる場合に対処できる。バランス制御装置の応用上記した制御枠組みを用いると、バランス制御装置100は、ロボットを制御して非常にさまざまな条件下でバランスを維持でき、人間のように振る舞ってそのようなバランス修正を実現できる。図7~図10は、さまざまな撹乱を受けたり、および/または非水平または非定常である複数の支持体上に直立していたりする場合におけるロボットの運動を説明する。これらの例の各々において、ロボットの目標運動102は安定的である、つまり、ロボットは、普段は静止しており、必要なときのみ動いてバランスをとることが理想的である。図11は、目標運動102が定位置で足踏みすること、であるときのロボットの運動を説明する。第1の状況において、ロボットは、静止支持体上に立っている間さまざまな方向から生じうる押しを受けている。前記した押しの方向、大きさ、および位置はすべて、バランス制御装置100にとって未知である。バランス制御装置100にとって既知である唯一の知覚情報は、ロボットのリンクの位置および速度である。押しの大きさが小さい場合、式10および式11から計算される目標GRFおよび目標CoPは、両方とも許容され、したがって、ロボットは、線形運動量および角運動量の目標値を実現できる。撹乱がより大きい場合、目標値は許容値と異なるため、歩行をせずともバランスを維持するために、バランス制御装置100は、上体を回転させて角運動量を修正することによってCoM位置を保存しようとする。結果的なロボットの運動は、押した方向に胴体を回転してバランスを維持する人間の運動と同様である。図7は、ロボットが前方にCoMに係る外部押し例:0.1秒間に120Nの力をロボットにかける押しを受けた場合のロボットの反応を描いた一連のスナップショットを示す。この図に示すように、ロボットは一時的に胴体を前方に回転させ、力を吸収し、その後静止位置に戻る。図8は、単脚支持期のロボットが側方に押し出された場合のバランス制御の挙動を示す。この場合、ロボットは、冠状面内で胴体を回転することによってバランスを維持する。両脚支持期の場合と比較すると、単脚支持期における許容CoP位置の範囲はずっと小さいが、脚を揺らすことでより大きな角運動量を作り出すことができる。ロボットが押した方向に一時的に回転して転倒を回避している様子が再度見られるが、その後静止位置に戻る。第2の状況において、バランス制御装置100は、ロボットが非水平および/または非定常の複数の支持体上でバランスを維持することを可能にする。図9に示す第1の例において、ロボットの両足は、傾斜角度例:X度および-Y度の異なる2つの表面上に支持されており、連続的かつ他の撹乱とは区別される複数の撹乱を受ける。ここで、ロボットは、胴体をかなり大きく周期的に回転させ、バランスを維持する。このような特別な例において、ロボットの胴体は、のけ反り運動よりもかがみ運動のほうが運動範囲を大きくとることができ、したがって、ロボットは後方よりも前方のほうへ大きく屈曲する。他の代替する実施形態代替の実施形態において、バランス制御装置100は、可動式踏み台上のロボットが長期間の押しを受けるときであってもバランスを維持することを可能にするように修正される。この実施形態において、バランス制御装置100は、角運動量を調整するのではなく、慣性力を推定し、ロボットの胴体を回転する代わりに前記した可動式踏み台の加速する方向へ身体を動かすことによってバランスを維持する。上記したバランス制御装置100は、目標GRFと、目標CoPと、許容GRFと、許容CoPとを決定する場合に、力およびトルクのセンサのデータを必要としないという利点がある。したがって、バランス制御装置100は、力およびトルクセンサを備えないロボットにおいて有用である。人型ロボットが足に力およびトルクセンサを備える代替の実施形態において、バランス制御装置100は、フィードバックデータとして知覚情報を用いて、実GRFと目標GRFとの間の差、および実CoPと目標CoPとの間の差を低減させるのに役立つ。また、さらに、知覚データは、外部撹乱の方向および大きさを推定するために用いることができる。したがって、上記のさまざまな実施形態で説明したような運動量基準型のバランス制御方法を用いると、ロボットが外部撹乱を受けたり、非水平地面および/または非定常地面上にいたりする場合に、バランス制御装置100は、ロボットを制御してバランスを維持することができる。さらに、結果的なロボットの運動は、人間のバランス機構を手本としており、そのため、ロボットの運動が人間の運動のように見える。本発明の開示内容を読む場合、当業者であれば、本明細書で説明した特徴を備える運動量基準型バランス制御装置について、さらに別の代替的な設計を理解できるであろう。したがって、本発明の具体的な実施形態および応用が説明され、記述されていてもその一方で、本発明が本明細書に開示されている、まさにその創作物および構成要素には限定されないこと、そして添付の特許請求に範囲に定められた発明の精神および範囲から逸脱することなく当業者にとって明らかであるさまざまな修正、変更、バリエーションが、本明細書に開示されている本発明の方法および装置の設定、演算および詳細においてなされること、が理解されるであろう。