"コンピュータに、複数の可動部を有するロボット又はアニメーションキャラクタの動作を制御させるプログラムであって、前記ロボット又はアニメーションキャラクタの動作が、動かす動作可動部で時系列に定義された動作パターンを、記憶部に格納されており可動部間の動きの影響に応じて可動部同士をリンクで結んだグラフに基づいて更新する更新手順と、前記更新手順により更新された動作パターンに基づいて前記複数の可動部を制御する制御手順をコンピュータに実行させ、前記更新手順は、前記グラフに基づいて前記動作可動部に加え、前記動作可動部に影響されて動作する従属可動部の動作を自動的に生成することを特徴とする、プログラム。前記グラフの各リンクには、可動部間の影響の度合いが重みとして付加されていることを特徴とする、請求項1記載のプログラム。可動部間の影響の度合いを前記グラフ構造上の熱拡散計算により求める計算手順を更に前記コンピュータに実行させることを特徴とする、請求項1又は2記載のプログラム。複数の可動部を有するロボットであって、可動部間の動きの影響に応じて可動部同士をリンクで結んだグラフを格納する記憶部と、動かす動作可動部で時系列に定義された動作パターンを、前記記憶部に格納された前記グラフに基づいて更新する計算部と、前記計算部により更新された動作パターンに基づいて前記複数の可動部を制御する指令部を備え、前記計算部は、前記グラフに基づいて前記動作可動部に加え、前記動作可動部に影響されて動作する従属可動部の動作を自動的に生成することを特徴とする、ロボット。複数の可動部を有するロボット又はアニメーションキャラクタの動作が、動かす動作可動部で時系列に定義された動作パターンを、記憶部に格納されており可動部間の動きの影響に応じて可動部同士をリンクで結んだグラフに基づいて更新する更新手順と、前記更新手順により更新された動作パターンに基づいて前記複数の可動部を制御する制御手順をコンピュータで実行し、前記更新手順は、前記グラフに基づいて前記動作可動部に加え、前記動作可動部に影響されて動作する従属可動部の動作を自動的に生成することを特徴とする、動作制御方法。従来の動作制御方法では、ロボット又はアニメーションキャラクタの関節を動かす場合、モーション又は、動作パターンで定義された関節のみが動き他の関節は静止した状態にあるため、ロボット又はアニメーションキャラクタに円滑な動作、例えば人間からみて違和感のない自然な動作を行わせることは難しいという問題があった。そこで、本発明は、比較的簡単な制御でロボット又はアニメーションキャラクタに円滑な動作、例えば人間からみて違和感のない自然な動作を行わせることが可能な動作制御方法、ロボット及びプログラムを提供することを目的とする。本発明の一観点によれば、複数の可動部を有するロボット又はアニメーションキャラクタの動作が、動かす動作可動部で時系列に定義された動作パターンを、記憶部に格納されており可動部間の動きの影響に応じて可動部同士をリンクで結んだグラフに基づいて更新する更新手順と、前記更新手順により更新された動作パターンに基づいて前記複数の可動部を制御する制御手順をコンピュータで実行し、前記更新手順は、前記グラフに基づいて前記動作可動部に加え、前記動作可動部に影響されて動作する従属可動部の動作を自動的に生成することを特徴とする動作制御方法が提供される。本発明の一観点によれば、複数の可動部を有するロボットであって、可動部間の動きの影響に応じて可動部同士をリンクで結んだグラフを格納する記憶部と、動かす動作可動部で時系列に定義された動作パターンを、前記記憶部に格納された前記グラフに基づいて更新する計算部と、前記計算部により更新された動作パターンに基づいて前記複数の可動部を制御する指令部を備え、前記計算部は、前記グラフに基づいて前記動作可動部に加え、前記動作可動部に影響されて動作する従属可動部の動作を自動的に生成することを特徴とするロボットが提供される。本発明の一観点によれば、コンピュータに、複数の可動部を有するロボット又はアニメーションキャラクタの動作を制御させるプログラムであって、前記ロボット又はアニメーションキャラクタの動作が、動かす動作可動部で時系列に定義された動作パターンを、記憶部に格納されており可動部間の動きの影響に応じて可動部同士をリンクで結んだグラフに基づいて更新する更新手順と、前記更新手順により更新された動作パターンに基づいて前記複数の可動部を制御する制御手順をコンピュータに実行させ、前記更新手順は、前記グラフに基づいて前記動作可動部に加え、前記動作可動部に影響されて動作する従属可動部の動作を自動的に生成することを特徴とするプログラムが提供される。開示の動作制御方法、ロボット及びプログラムによれば、比較的簡単な制御でロボット又はアニメーションキャラクタに円滑な動作、例えば人間からみて違和感のない自然な動作を行わせることが可能となる。開示の動作制御方法、ロボット及びプログラムでは、ロボット又はアニメーションキャラクタのモーション又は、動作パターンで定義された動作関節に加え、動作関節に影響されて微小な動作を行う他の従属関節の動きを自動的に生成することで、比較的簡単な制御でロボット又はアニメーションキャラクタに円滑な動作、例えば人間からみて違和感のない自然な動作を行わせる。例えば、直接動かされていない従属関節を、直接動かされている動作関節の動きに応じて従属的に動かすことで、精密な体のモデルを作成して物理的なシミュレーションを行うのではなく、例えば設計者が自らの勘や経験に基づいて定義した関節グラフ構造を利用することで、ロボット又はアニメーションキャラクタに円滑な動作を行わせる。これにより、複数の関節を有するロボット又はアニメーションキャラクタであれば、基本的にはどのような構造のロボット又はアニメーションキャラクタであっても、比較的容易、且つ、比較的短時間に適切な動作制御が行える。又、関節間の影響の度合いを関節グラフ構造上の熱拡散計算により求めることで、関節間の連鎖的及び相互的な影響を考慮した動作制御が可能となる。この結果、設計者が関節グラフ構造を作成する際の直感を自然に反映させたロボット又はアニメーションキャラクタの動きを生成することができる。ロボット又はアニメーションキャラクタの円滑な動作を実現することで、例えば人間との親和性を向上して生き物らしい自然な動作を演出することもできる。以下に、開示の動作制御方法、ロボット及びプログラムの各実施例を図面と共に説明する。第1実施例図1は、本発明の第1実施例におけるインタラクティブデバイスの一例を示すブロック図である。この例では、インタラクティブデバイスはコミュニケーションロボットにより形成されている。図1に示すコミュニケーションロボット以下、単にロボットと言う1は、処理部11、記憶部12、及び可動部群13を有する。処理部11は、CPUCentralProcessingUnit等のプロセッサで形成されている。記憶部12は、半導体記憶装置、光記憶装置、光磁気記憶装置、磁気記憶装置等で形成されており、複数の記憶装置、或いは、複数種類の記憶装置で形成されていても良い。半導体記憶装置には、RAMRandomAccessMemory、ROMReadOnlyMemory、メモリカード等が含まれる。光、光磁気、及び磁気記憶装置には、ディスク装置等が含まれる。記憶部12は、可搬型の記憶装置を含んでも良い。可動部群13は、ロボット1に設けられている複数の関節図示せずに相当する複数の可動部を有する。各可動部は、関節と、関節を駆動するモータ等の駆動部を有する。尚、以下の説明における関節とは、ロボット1のうち、例えば人間の体の関節に相当する部分に限定されず、可動部分を総称して指すものとする。処理部11は、モーション読み込み部111、熱分布計算部112、動き計算部113、及びモータ指令部114を有する。記憶部12は、モーションデータベースDB:DataBase121、関節グラフ122、モータコマンドテーブル123、熱分布124、及び処理部11に動作制御処理を実行させるプログラム図示せずを格納している。処理部11は、記憶部12に格納されているプログラムを実行することで、モーション読み込み部111、熱分布計算部112、動き計算部113、及びモータ指令部114の夫々の機能を含むロボット1の各種機能を実現する。つまり、記憶部12に格納されているプログラムには、処理部11に動作制御処理を含むロボット1の処理を実行させる各手順が含まれる。プログラムを格納したコンピュータ読み取り可能な記憶媒体は、この例では記憶部12を形成する少なくとも1つの記憶装置で形成可能である。モータコマンドテーブルこの例では、ロボット1は、時間軸上で可動部群13内の関節を駆動する各モータの回転角度を時系列で指定するモーションデータ又は、動作パターンデータに基づいて動作することにより、様々な動作又は表現を行う。モーションデータは、ロボット1の動作実行時にモーション読み込み部111により各モータへの具体的な指示に逐次変換され、例えば図2に示すようなモータコマンドテーブル123に保持され管理される。図2は、モータコマンドテーブル123の一例を説明する図である。図2に示す例では、口、首tilt、首rollに対してモータの回転量の指令値が格納されている。首pan、首tilt、首rollは、互いに直交する3軸を中心としたロボット1の首の回転角度パン、チルト、ロールを示す。尚、関節は、図2に示す右耳、左耳、右まぶた、左まぶた、口、首、首、首、右肩、左肩、右腕、左腕、右股、左股、右膝、及び左膝に限定されないことは、言うまでもない。図2中、横軸で示す時刻の単位は、ロボット1の動作周期例えば、0を含まない1000ミリ秒以下の値であり、四辺形で示された各フィールド内の符号付きの数値が、対応するモータの回転量の指令値°を表す。ロボット1が動作中は、モーション読み込み部111によりモーションDB121から順次モーションデータが読み出され、記憶部12内のモータコマンドテーブル123にコマンドが割り当てられる。例えば、複数のモーションデータが並行してモータコマンドテーブル123に割り当てられる。モータコマンドテーブル123の内容は、時間の経過と共に図2中矢印で示すように左側にずれて即ち、スライドして、時刻T0~T1にスライドしてきたコマンドが対応するモータにモータ指定部114を介して送信される。このとき、時刻T0~T1のフィールド内に数値が設定されている関節は、モーションデータにより動作が指定されている動作関節である。一方、フィールド内が空白の関節は、モーションデータにより動作が指定されていない関節であり、従来であれば停止している。この例では、従来であれば停止しているこれらの関節を従属関節と定義して、動作関節に従属させた微小な動きを生成する。従属関節と定義された関節に対しては、例えばモータコマンドテーブル123の時刻T0~T1のフィールドに新たにコマンドを割り付ける。関節グラフ先ず、ロボット1の複数の関節のうち、設計者により関連があると判断された関節同士をリンクで結んだ関節グラフ122を記憶部12に保持しておく。ここで、関連とは、例えば以下のような理由R1,R2により、ある関節の動きが他の関節に伝わることを言う。R1:他の関節が筋肉や皮膚の動きに引っ張られる。R2:体の重心と姿勢が変化することにより、各関節が受ける力の方向が変わる。従って、関節グラフ122は、ロボット1の骨格的なリンク構造を定義したものではなく、設計者が上記の如き関節間の動きの影響を自由に想像、考慮して作成されたものである。つまり、関節グラフ122は、設計者が理由R1,R2等の関節間の動きの影響を考慮した上で任意に決定した条件に基づいて作成され、関節間の動きの影響に応じて関節同士をリンクで結んだものである。関節グラフのリンク上の重み関節グラフ122のリンクには、関節間の影響の度合いが関節間の重みとして付加又は、設定される。例えば、ロボット1が口を大きく開けた時、ロボット1が犬型の場合は耳も口の動きに連動して動くと予想できるが、その移動量は僅かであると仮定して口と耳とのリンク上の重みを小さく設定する。一方、肩の関節が大きく動いた時は、腕の関節も大きく動くと仮定し、肩と腕を結んでいるリンクの重みを比較的大きめに設定する。尚、この重みの付けの方法も、ロボット1の動きの個性として設計者が自由に設定可能である。図3は、関節グラフ122とリンクに付加された重みの一例を説明する図である。関節グラフ122とそのリンクに付加された重みは、設計者により任意に定義可能である。図3中、○印は関節を示し、○印内には右耳、口等といった関節の名称又は、部位が示されている。リンクは○印と○印を接続する直線で表されており、直線の近傍に示されている数値はリンクに付加された重みを表す。図6に示す関節グラフ122では、例えば右肩が首と直結しているが、首と、首経由でも首に繋がっている。又、首及び首は夫々首に直結しているが、左肩経由でも首に夫々異なる重み付きのリンクで繋がっている。ある関節が他の関節から受ける影響を考慮する上で、このような関節の相互接続による影響も考慮しても良い。実際の生き物も、関節同士は連鎖的に影響し合うものと考えるのが自然であるが、熱分布計算から求められる図6に示す関節グラフ122の影響量は、このような関節間の複数経路、及び各経路即ち、リンクに付加された異なる重み即ち、図2で示した重みを全て含んで計算した結果である。従って、関節グラフ122の影響量は、直結している関節間との重みのみにより定まる値ではない。又、図6において、○印で表される関節を繋ぐ直線のうち、太線は同じ関節から延びる複数のリンクのうち影響量とリンク上の重みの積が最大のリンクを示す。各従属関節の回転方向は、この太線で示すリンクで接続された先の関節と、そのリンクに設定された動作パターンから決まる。実際には、図7の如き処理、即ち、式2を用いた動作量の計算が動作関節の数分だけ行われた後に加算される。尚、上記の例では、首だけが動作関節である。モータ指令部114からモータへの指令は、図8に示す更新後のコマンドテーブル123の時刻T0~T1にあるフィールド分が送信される。このようにして、ロボット1の動作の1サイクル当たりの処理が行われる。尚、1サイクル経過後は、コマンドテーブル123の内容が1つ左にスライドし、同様の処理が繰り返され、図8に示すコマンドテーブル123は1サイクル後に図10に示すように更新される。図10は、1サイクル経過後の、更新されたコマンドテーブル123の一例を説明する図である。図10中、図8と同一部分には同一符号を付し、その説明は省略する。この結果、図9のフローチャートに従って各従属関節の動作量を、夫々の動作関節からの影響量を足し合わせて決定すると、図10に示すコマンドテーブル123は図12に示すように更新される。図12は、更新されたコマンドテーブル123の一例を説明する図である。図12中、図10と同一部分には同一符号を付し、その説明は省略する。図15は、処理部11全体の処理を説明するフローチャートである。図15において、ステップS21では、モーション読み込み部111が記憶部12内のモーションDB121からモーションを読み込む。ステップS22では、モーション読み込み部111が読み込んだモーションを各モータへの具体的な指示に逐次変換して記憶部12内のモータコマンドテーブル123に割り当てて保持する。ステップS23では、動き計算部113が記憶部12内に既に格納されている熱分布124に基づいて従属関節の動きを計算し、計算結果に基づいてモータコマンドテーブル123を例えば図8に示すように更新する。ステップS24では、モータ指令部114が更新されたモータコマンドテーブル123に基づいて可動部群13内の該当するモータを制御、即ち、作動させる。上記の如く、この例において定義する関節グラフ構造即ち、関節間のリンクの仕方、重みの付け方、回転パターンの決め方は、ロボット1の動きの個性として、ロボット1が夫々固有の物を持ち、又、動作モードに応じて任意にその構造を変更可能である。このため、設計者が直感的、且つ、容易に関節グラフ構造を作成し、編集可能とする編集ツールを用いても良い。図16は、編集ツールの画面の一例を示す図であり、図17は、編集ツールの処理の一例を説明するフローチャートである。編集ツールは、プロセッサ、記憶部、キーボード等の入力部、及び表示部を備えた汎用のコンピュータシステム図示せずに搭載される。図16に示す編集ツールの画面30は、コンピュータシステムの表示部に表示され、設計者又は、操作者がコンピュータシステムの入力部から情報及び指示を入力することで関節グラフ構造の作成及び編集を可能とするGUIGraphicalUserInterfaceを提供する。図16に示す例では、入力部から操作可能である、画面30内にシミュレーションの開始を指示するためのシミュレーションボタン31、関節間のリンクを書くペンツール32、及び関節間の回転パターン即ち、回転量、回転方向の定義を決定する決定部33が編集ツールの画面30に含まれる。又、編集ツールの画面30には、作成中又は編集中の関節グラフを表示する関節グラフ表示部34も含まれる。図17に示す処理は、コンピュータシステムのプロセッサが記憶部に格納された編集ツールのプログラムを実行することにより実現される。図17において、シミュレーションボタン31が操作されると、ステップS31では関節グラフ構造の作成手順が実行され、ステップS32では作成中の関節グラフ上でのシミュレーション手順が実行される。ステップS33では、関節グラフ構造の作成終了判定手順が実行され、ステップS33の判定結果がNOであると処理はステップS31へ戻り、判定結果がYESであると処理はステップS34へ進む。ステップS34では、関節グラフ構造設定書き出し手順が実行され、作成された関節グラフが表示部の画面30内の関節グラフ表示部34に表示されると共に、記憶部に設定され格納される。ステップS31の関節グラフ構造の作成手順は、入力部によりペンツール32を操作することでロボット1の関節間のリンクの定義を行う定義手順311、入力部により決定部33を操作することでリンク上の回転パターンの定義を決定して記憶部に設定する回転パターン設定手順312、及び入力部のテンキー等の操作によりリンク上の重みを入力して記憶部に設定する重み設定手順313を含む。ステップS32のシミュレーション手順は、入力部からの操作により動作関節とするノードを関節グラフ表示部34に表示された関節グラフから選択する選択手順321、及び従属関節が動作関節から受ける影響をリアルタイムに計算して関節グラフ表示部34に表示された関節グラフ上に表示する表示手順322を含む。本実施例によれば、比較的簡単な制御でロボットに円滑な動作、例えば人間からみて違和感のない自然な動作を行わせることが可能となる。又、編集ツールを用いることで、設計者は比較的簡単、且つ、容易に関節グラフの作成及び編集を行うことができる。第2実施例開示の動作制御方法、ロボット及びプログラムは、多関節で構成されるロボットを含むインタラクティブデバイスに限らず、多関節で構成されるCGアニメーションキャラクタの動き制御にも適用可能である。アニメーション作成ツールによりCGアニメーションキャラクタを作成する場合、ロボットの場合と同様にアニメーションキャラクタの関節を動かすことで、画面上でアニメーションキャラクタに各種動作を行わせることができる。しかし、アニメーション作成ツールにより動かしたい動作関節のみを動かしたのでは、動作関節に影響されて微小な動作を行う他の従属関節の動きが生成されない。そこで、本発明の第2実施例では、上記第1実施例におけるロボットの場合と同様に、アニメーションキャラクタのモーション又は、動作パターンで定義された動作関節に加え、動作関節に影響されて微小な動作を行う他の従属関節の動きを自動的に生成する。これにより、比較的簡単な制御でアニメーションキャラクタに円滑な動作、例えば人間からみて違和感のない自然な動作を行わせることが可能となる。図18は、CGアニメーションキャラクタの一例を示す図である。図18において、300は多関節を有する人間型のCGアニメーションキャラクタを示し、400は多関節を有する犬型のCGアニメーションキャラクタを示す。開示の動作制御方法をCGアニメーションキャラクタ300又は400の動き制御に適用することで、円滑な動きのCGアニメーションキャラクタ300又は400を自動生成することが可能となる。以上の実施例を含む実施形態に関し、更に以下の付記を開示する。付記1複数の可動部を有するロボット又はアニメーションキャラクタの動作が、動かす動作可動部で時系列に定義された動作パターンを、記憶部に格納されており可動部間の動きの影響に応じて可動部同士をリンクで結んだグラフに基づいて更新する更新手順と、前記更新手順により更新された動作パターンに基づいて前記複数の可動部を制御する制御手順をコンピュータで実行し、前記更新手順は、前記グラフに基づいて前記動作可動部に加え、前記動作可動部に影響されて動作する従属可動部の動作を自動的に生成することを特徴とする、動作制御方法。付記2前記グラフの各リンクには、可動部間の影響の度合いが重みとして付加されていることを特徴とする、付記1記載の動作制御方法。付記3前記動作パターンは、各動作可動部の回転量及び回転方向を指定することを特徴とする、付記1又は2記載の動作制御方法。付記4可動部間の影響の度合いを前記グラフ構造上の熱拡散計算により求める計算手順を更に前記コンピュータで実行することを特徴とする、付記1乃至3のいずれか1項記載の動作制御方法。付記7複数の可動部を有するロボットであって、可動部間の動きの影響に応じて可動部同士をリンクで結んだグラフを格納する記憶部と、動かす動作可動部で時系列に定義された動作パターンを、前記記憶部に格納された前記グラフに基づいて更新する計算部と、前記計算部により更新された動作パターンに基づいて前記複数の可動部を制御する指令部を備え、前記計算部は、前記グラフに基づいて前記動作可動部に加え、前記動作可動部に影響されて動作する従属可動部の動作を自動的に生成することを特徴とする、ロボット。付記8前記グラフの各リンクには、可動部間の影響の度合いが重みとして付加されていることを特徴とする、付記7記載のロボット。付記9前記動作パターンは、各動作可動部の回転量及び回転方向を指定することを特徴とする、付記7又は8記載のロボット。付記10前記計算部は、可動部間の影響の度合いを前記グラフ構造上の熱拡散計算により求めることを特徴とする、付記7乃至9のいずれか1項記載のロボット。付記13コンピュータに、複数の可動部を有するロボット又はアニメーションキャラクタの動作を制御させるプログラムであって、前記ロボット又はアニメーションキャラクタの動作が、動かす動作可動部で時系列に定義された動作パターンを、記憶部に格納されており可動部間の動きの影響に応じて可動部同士をリンクで結んだグラフに基づいて更新する更新手順と、前記更新手順により更新された動作パターンに基づいて前記複数の可動部を制御する制御手順をコンピュータに実行させ、前記更新手順は、前記グラフに基づいて前記動作可動部に加え、前記動作可動部に影響されて動作する従属可動部の動作を自動的に生成することを特徴とする、プログラム。付記14前記グラフの各リンクには、可動部間の影響の度合いが重みとして付加されていることを特徴とする、付記13記載のプログラム。付記15前記動作パターンは、各動作可動部の回転量及び回転方向を指定することを特徴とする、付記13又は14記載のプログラム。付記16可動部間の影響の度合いを前記グラフ構造上の熱拡散計算により求める計算手順を更に前記コンピュータに実行させることを特徴とする、付記13乃至15のいずれか1項記載のプログラム。"