IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ベイジン バイドゥ ネットコム サイエンス アンド テクノロジー カンパニー リミテッドの特許一覧

特開2022-101597多足ロボットの制御方法、装置、電子機器及び記憶媒体
<>
  • 特開-多足ロボットの制御方法、装置、電子機器及び記憶媒体 図1
  • 特開-多足ロボットの制御方法、装置、電子機器及び記憶媒体 図2
  • 特開-多足ロボットの制御方法、装置、電子機器及び記憶媒体 図3
  • 特開-多足ロボットの制御方法、装置、電子機器及び記憶媒体 図4
  • 特開-多足ロボットの制御方法、装置、電子機器及び記憶媒体 図5
  • 特開-多足ロボットの制御方法、装置、電子機器及び記憶媒体 図6
  • 特開-多足ロボットの制御方法、装置、電子機器及び記憶媒体 図7
  • 特開-多足ロボットの制御方法、装置、電子機器及び記憶媒体 図8
  • 特開-多足ロボットの制御方法、装置、電子機器及び記憶媒体 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022101597
(43)【公開日】2022-07-06
(54)【発明の名称】多足ロボットの制御方法、装置、電子機器及び記憶媒体
(51)【国際特許分類】
   B25J 5/00 20060101AFI20220629BHJP
   G06N 20/00 20190101ALI20220629BHJP
   B25J 13/00 20060101ALI20220629BHJP
【FI】
B25J5/00 E
G06N20/00
B25J13/00 Z
【審査請求】有
【請求項の数】13
【出願形態】OL
【公開請求】
(21)【出願番号】P 2022064674
(22)【出願日】2022-04-08
(31)【優先権主張番号】202110736096.8
(32)【優先日】2021-06-30
(33)【優先権主張国・地域又は機関】CN
(71)【出願人】
【識別番号】514322098
【氏名又は名称】ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド
【氏名又は名称原語表記】Beijing Baidu Netcom Science Technology Co., Ltd.
【住所又は居所原語表記】2/F Baidu Campus, No.10, Shangdi 10th Street, Haidian District, Beijing 100085, China
(74)【代理人】
【識別番号】110000578
【氏名又は名称】名古屋国際特許業務法人
(72)【発明者】
【氏名】ジェン ホンシェン
(72)【発明者】
【氏名】ジョウ ボ
(72)【発明者】
【氏名】ワン ファン
(72)【発明者】
【氏名】チェン ヨンファン
(72)【発明者】
【氏名】ヘ ジンジョウ
【テーマコード(参考)】
3C707
【Fターム(参考)】
3C707KS20
3C707LW12
3C707WA14
3C707WA15
3C707WK05
(57)【要約】      (修正有)
【課題】人工知能技術及び深層学習の分野に関し、多足ロボットの制御方法、装置、電子機器及び記憶媒体を提供する。
【解決手段】多足ロボットの制御方法は、前記多足ロボットの現在の姿勢パラメータを取得するステップと、前記現在の姿勢パラメータのタイプ及び/又は数が第1の予め設定された条件を満たす場合、前記現在の姿勢パラメータをトレーニングによって生成された第1のモデルに入力して、第1の運動制御ポリシーを取得するステップと、前記第1の運動制御ポリシーに基づいて、前記多足ロボットを制御するステップと、を含む。本開示は、取得された多足ロボットの姿勢パラメータのタイプ及び/又は数に基づいて、対応するモデルを使用して制御ポリシーを生成して多足ロボットの運動を制御することで、多足ロボットの運動の安定性及び信頼性が保証される。
【選択図】図1
【特許請求の範囲】
【請求項1】
多足ロボットの制御方法であって、
前記多足ロボットの現在の姿勢パラメータを取得するステップと、
前記現在の姿勢パラメータのタイプ及び/又は数が第1の予め設定された条件を満たす場合、前記現在の姿勢パラメータをトレーニングによって生成された第1のモデルに入力して、第1の運動制御ポリシーを取得するステップと、
前記第1の運動制御ポリシーに基づいて、前記多足ロボットを制御するステップと、を含む、

ことを特徴とする多足ロボットの制御方法。
【請求項2】
前記多足ロボットの現在の姿勢パラメータを取得するステップの後に、
前記現在の姿勢パラメータのタイプ及び/又は数が第1の予め設定された条件を満たさない場合、前記現在の姿勢パラメータをトレーニングによって生成された第2のモデルに入力して、第2の運動制御ポリシーを取得するステップと、
前記第2の運動制御ポリシーに基づいて、前記多足ロボットを制御するステップと、をさらに含む、

ことを特徴とする請求項1に記載の方法。
【請求項3】
前記現在の姿勢パラメータをトレーニングによって生成された第1のモデルに入力するステップの前に、
前記多足ロボットのモデルパラメータ、実行環境パラメータ及びリズム運動制御信号を取得するステップと、
前記多足ロボットのモデルパラメータ、前記実行環境パラメータ及び前記リズム運動制御信号に基づいて、前記多足ロボットの基礎的歩容制御ポリシーを決定するステップと、
前記多足ロボットの基礎的歩容制御ポリシーに基づいて、ランダムに生成された環境で運動するように前記多足ロボットを制御して、前記多足ロボットの第1の姿勢パラメータセット及び運動状態パラメータセットを取得するステップと、
前記第1の姿勢パラメータセット、前記運動状態パラメータセット及び前記基礎的歩容制御ポリシーを第1の初期モデルに入力して、第1の運動制御ポリシーを取得するステップと、
前記第1の運動制御ポリシーに基づいて、前記ランダムに生成された環境で運動するように前記多足ロボットを制御して、前記第1の運動制御ポリシーでの前記多足ロボットの姿勢パラメータ及び運動状態パラメータを取得するステップと、
生成された第1のモデルに基づいて決定された第1の運動制御ポリシーでの前記多足ロボットの運動状態が第2の予め設定された条件を満たすまで、前記姿勢パラメータ及び運動状態パラメータに基づいて前記第1の初期モデルを調整するステップと、をさらに含む、

ことを特徴とする請求項2に記載の方法。
【請求項4】
前記生成された第1のモデルに基づいて決定された第1の運動制御ポリシーでの前記多足ロボットの運動状態が第2の予め設定された条件を満たすまで、前記姿勢パラメータ及び運動状態パラメータに基づいて前記第1の初期モデルを調整するステップの後に、
前記第1の姿勢パラメータセットから第2の姿勢パラメータセットを抽出するステップであって、前記第2の姿勢パラメータセットに含まれる姿勢パラメータの数が前記第1の姿勢パラメータセットに含まれる姿勢パラメータの数より少ないステップと、
前記第1の姿勢パラメータセット、第2の姿勢パラメータセット及び前記第1の運動制御ポリシーを第2の初期モデルに入力して、第2の運動制御ポリシーを取得するステップと、
生成された第2のモデルに基づいて決定された第2の運動制御ポリシーでの前記多足ロボットの運動状態が第3の予め設定された条件を満たすまで、前記第2の運動制御ポリシーと前記第1の運動制御ポリシーとの相違度に基づいて、前記第2の初期モデルを調整するステップと、をさらに含む、

ことを特徴とする請求項3に記載の方法。
【請求項5】
前記多足ロボットのモデルパラメータ、実行環境パラメータ及びリズム運動制御信号を取得するステップは、
前記多足ロボットのモデルパラメータ及び実行環境パラメータを取得するステップと、
前記多足ロボットのモデルパラメータに基づいて、中枢パターン発生器を使用して周期的な時間信号を生成するステップと、
前記周期的な時間信号に基づいて前記リズム運動制御信号を決定するステップと、を含む、

ことを特徴とする請求項3に記載の方法。
【請求項6】
多足ロボットの制御装置であって、
前記多足ロボットの現在の姿勢パラメータを取得するための第1の取得モジュールと、
前記現在の姿勢パラメータのタイプ及び/又は数が第1の予め設定された条件を満たす場合、前記現在の姿勢パラメータをトレーニングによって生成された第1のモデルに入力して、第1の運動制御ポリシーを取得するための第2の取得モジュールと、
前記第1の運動制御ポリシーに基づいて、前記多足ロボットを制御するための実行モジュールと、を含む、

ことを特徴とする多足ロボットの制御装置。
【請求項7】
前記第2の取得モジュールが、さらに、
前記現在の姿勢パラメータのタイプ及び/又は数が第1の予め設定された条件を満たさない場合、前記現在の姿勢パラメータをトレーニングによって生成された第2のモデルに入力して、第2の運動制御ポリシーを取得し、
前記実行モジュールが、さらに、
前記第2の運動制御ポリシーに基づいて、前記多足ロボットを制御する、

ことを特徴とする請求項6に記載の装置。
【請求項8】
前記装置は、第1のトレーニングモジュールをさらに含み、
前記第1のトレーニングモジュールが、
前記多足ロボットのモデルパラメータ、実行環境パラメータ及びリズム運動制御信号を取得するための第1の取得ユニットと、
前記多足ロボットのモデルパラメータ、前記実行環境パラメータ及び前記リズム運動制御信号に基づいて、前記多足ロボットの基礎的歩容制御ポリシーを決定するための第2の取得ユニットと、
前記多足ロボットの基礎的歩容制御ポリシーに基づいて、ランダムに生成された環境で運動するように前記多足ロボットを制御して、前記多足ロボットの第1の姿勢パラメータセット及び運動状態パラメータセットを取得するための第3の取得ユニットと、
前記第1の姿勢パラメータセット、前記運動状態パラメータセット及び前記基礎的歩容制御ポリシーを第1の初期モデルに入力して、第1の運動制御ポリシーを取得するための第4の取得ユニットと、
前記第1の運動制御ポリシーに基づいて、前記ランダムに生成された環境で運動するように前記多足ロボットを制御して、前記第1の運動制御ポリシーでの前記多足ロボットの姿勢パラメータ及び運動状態パラメータを取得するための第5の取得ユニットと、
生成された第1のモデルに基づいて決定された第1の運動制御ポリシーでの前記多足ロボットの運動状態が第2の予め設定された条件を満たすまで、前記姿勢パラメータ及び運動状態パラメータに基づいて前記第1の初期モデルを調整するための第6の取得ユニットと、を含む、
ことを特徴とする請求項7に記載の装置。
【請求項9】
前記装置は、第2のトレーニングモジュールをさらに含み、
前記第2のトレーニングモジュールが、
前記第1の姿勢パラメータセットから第2の姿勢パラメータセットを抽出するための第7の取得ユニットであって、前記第2の姿勢パラメータセットに含まれる姿勢パラメータの数が前記第1の姿勢パラメータセットに含まれる姿勢パラメータの数より少ない第7の取得ユニットと、
前記第1の姿勢パラメータセット、第2の姿勢パラメータセット及び前記第1の運動制御ポリシーを第2の初期モデルに入力して、第2の運動制御ポリシーを取得するための第8の取得ユニットと、
生成された第2のモデルに基づいて決定された第2の運動制御ポリシーでの前記多足ロボットの運動状態が第3の予め設定された条件を満たすまで、前記第2の運動制御ポリシーと前記第1の運動制御ポリシーとの相違度に基づいて、前記第2の初期モデルを調整するための第9の取得ユニットと、を含む、
ことを特徴とする請求項8に記載の装置。
【請求項10】
前記第1の取得ユニットが、
前記多足ロボットのモデルパラメータ及び実行環境パラメータを取得するための収集ユニットと、
前記多足ロボットのモデルパラメータに基づいて、中枢パターン発生器を使用して周期的な時間信号を生成するための生成ユニットと、
前記周期的な時間信号に基づいて前記リズム運動制御信号を決定するための決定ユニットと、を含む、
ことを特徴とする請求項8又は9に記載の装置。
【請求項11】
電子機器であって、
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサに通信可能に接続されるメモリと、を含み、
前記メモリには前記少なくとも1つのプロセッサによって実行可能な命令が記憶され、前記命令は、前記少なくとも1つのプロセッサが請求項1~5のいずれかに記載の方法を実行できるように、前記少なくとも1つのプロセッサによって実行される、
ことを特徴とする電子機器。
【請求項12】
コンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体であって、
前記コンピュータ命令は、コンピュータに請求項1~5のいずれかに記載の方法を実行させる、
ことを特徴とする非一時的なコンピュータ読み取り可能な記憶媒体。
【請求項13】
コンピュータプログラムであって、
前記コンピュータプログラムはプロセッサによって実行される場合、請求項1~5のいずれかに記載の方法が実現される、
ことを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、コンピュータ技術の分野に関し、特に、人工知能及び深層学習技術の分野に関する。
【背景技術】
【0002】
現在、人工知能技術の発展に伴い、ますます多くの業界が人工知能技術と効果的に組み合わせることで、画期的な進展を遂げている。機械学習は、人工知能及びパターン認識分野の共同研究の焦点であり、その理論及び方法は、すでに工学的応用及び科学分野の複雑な問題の解決に広く適用されている。
【0003】
多足ロボットは、ホイール式及びキャタピラー式などの移動ロボットに比べて環境適応性が優れているため、多足ロボットの運動性能を如何に向上させるかは、学術界及び産業界の研究のホットスポットとなっている。
【発明の概要】
【0004】
本開示は、多足ロボットの制御方法、装置、電子機器及び記憶媒体を提供する。
【課題を解決するための手段】
【0005】
本開示の第1の態様によれば、多足ロボットの制御方法を提供し、前記方法は、
前記多足ロボットの現在の姿勢パラメータを取得するステップと、
前記現在の姿勢パラメータのタイプ及び/又は数が第1の予め設定された条件を満たす場合、前記現在の姿勢パラメータをトレーニングによって生成された第1のモデルに入力し、第1の運動制御ポリシーを取得するステップと、

前記第1の運動制御ポリシーに基づいて、前記多足ロボットを制御するステップと、を含む。
【0006】
本開示の第2の態様によれば、多足ロボットの制御装置を提供し、前記装置は、
前記多足ロボットの現在の姿勢パラメータを取得するための第1の取得モジュールと、
前記現在の姿勢パラメータのタイプ及び/又は数が第1の予め設定された条件を満たす場合、前記現在の姿勢パラメータをトレーニングによって生成された第1のモデルに入力し、第1の運動制御ポリシーを取得するための第2の取得モジュールと、

前記第1の運動制御ポリシーに基づいて、前記多足ロボットを制御するための実行モジュールと、を含む。
【0007】
本開示の第3の態様によれば、電子機器を提供し、前記電子機器は、
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサに通信可能に接続されるメモリと、を含み、

前記メモリには前記少なくとも1つのプロセッサによって実行可能な命令が記憶され、前記命令は、前記少なくとも1つのプロセッサが第1の態様に記載の方法を実行できるように、前記少なくとも1つのプロセッサによって実行される。
【0008】
本開示の第4の態様によれば、コンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体を提供し、前記コンピュータ命令は、コンピュータに第1の態様に記載の方法を実行させる。
【0009】
本開示の第5の態様によれば、コンピュータプログラムを提供し、前記コンピュータプログラムはプロセッサによって実行される場合、第1の態様に記載の方法が実現される。
【発明の効果】
【0010】
本開示によって提供される多足ロボットの制御方法、装置、電子機器及び記憶媒体は、以下の有益な効果を有する。

先ず、多足ロボットの現在の姿勢パラメータを取得し、現在の姿勢パラメータのタイプ及び/又は数が第1の予め設定された条件を満たす場合、現在の姿勢パラメータをトレーニングによって生成された第1のモデルに入力し、現在のターゲット制御ポリシーを取得し、そしてターゲット制御ポリシーに基づいて、多足ロボットを制御することにより、予め設定された条件を満たす状態での多足ロボットの運動の安定性及び信頼性を向上させる。
【0011】
なお、本部分に記載された内容は、本開示の実施例の肝心又は重要な特徴を識別することを意図するものではなく、本開示の範囲を制限するためのものでもない。本開示の他の特徴は、以下の説明によって理解されやすくなる。
【図面の簡単な説明】
【0012】
図面は、本技術案をよりよく理解するために使用され、本開示を限定するものではない。
図1】本開示の一実施例によって提供される多足ロボットの制御方法の概略フローチャートである。
図2】本開示の他の実施例によって提供される多足ロボットの制御方法の概略フローチャートである。
図3】本開示の他の実施例によって提供される多足ロボットの制御方法の概略フローチャートである。
図4】本開示の他の実施例によって提供される多足ロボットの制御方法の概略フローチャートである。
図5】本開示の一実施例によって提供される多足ロボットの制御装置の概略構成図である。
図6】本開示の他の実施例によって提供される多足ロボットの制御装置の概略構成図である。
図7】本開示の他の実施例によって提供される多足ロボットの制御装置の概略構成図である。
図8】本開示の他の実施例によって提供される多足ロボットの制御装置の概略構成図である。
図9】本開示の実施例に係る多足ロボットの制御方法を実現するための電子機器のブロック図である。
【発明を実施するための形態】
【0013】

以下、図面と組み合わせて本開示の例示的な実施例を説明し、理解を容易にするためにその中には本開示の実施例の様々な詳細事項が含まれ、それらは単なる例示的なものと見なされるべきである。したがって、当業者は、本開示の範囲及び精神から逸脱することなく、ここで説明される実施例に対して様々な変更と修正を行うことができる。同様に、わかりやすくかつ簡潔にするために、以下の説明では、周知の機能及び構造の説明を省略する。
【0014】
多足ロボットは、バイオニックロボットの一種であり、多足ロボットの運動軌跡は、一連の離散的な足跡であり、運動時に離散的な点が地面に接触するだけでよく、ホイール式及びキャタピラー式などの移動ロボットに比べてよりよい環境適応性を持っている。多足ロボットの適用シーンの多様化と複雑化に伴い、多足ロボットの運動制御の信頼性を向上させることは重要な意義がある。
【0015】
以下に、図面を参照して本開示の多足ロボットの制御方法、装置、電子機器及び記憶媒体を説明する。
【0016】
図1は、本開示の一実施例によって提供される多足ロボットの制御方法の概略フローチャートであり、当該方法は、本開示によって提供される多足ロボットの制御装置によって実行されてもよいし、本開示によって提供される電子機器によって実行されてもよく、ここで、電子機器は、デスクトップパソコン、タブレットなどの端末機器を含んでもよいが、これらに限定されず、サーバであってもよい。以下に、本開示によって提供される多足ロボットの制御装置によって、本開示によって提供される多足ロボットの制御方法を実行することを例として本開示を説明する。
【0017】
図1に示すように、当該多足ロボットの制御方法は、以下のステップを含むことができる。
【0018】
ステップ101において、多足ロボットの現在の姿勢パラメータを取得する。
【0019】
本開示の実施例において、多足ロボットは、歩行機能を有する任意のタイプのロボット、例えば、4足ロボット、6足ロボット、8足ロボットなどであってもよく、本開示はこれを限定しない。
【0020】
ここで、多足ロボットの姿勢パラメータは、多足ロボットの異なる部位に設けられるセンサによって取得することができる。したがって、異なるタイプのロボット及び、ロボットの異なる部位に設けられるセンサのタイプ及び数に対して、取得されたロボットの姿勢パラメータが異なる。
【0021】
例えば、4足ロボットは、その全体構造がロボットの胴体及び4つの肢体を含むことができる。ここで、各肢体は、2つの股関節、1つの膝関節の計3つの自由度関節を含むことができる。これにより、4足ロボットの肢体は、8つの股関節、4つの膝関節の計12個の自由度関節を含むことになる。
【0022】
それに応じて、4足ロボットの異なる部位に設けられるセンサは、4足ロボットの胴体の重心位置に設けられる慣性センサ(すなわち、imuセンサ)及び速度センサ、4足ロボットの12個の関節に設けられる角度センサ及び角速度センサ、4足ロボットの4つの足部に設けられる変位センサ及び圧力センサを含むことができる。
【0023】
あるいは、6足ロボットは、その全体構造がロボットの胴体及び6つの肢体を含むことができる。ここで、各肢体は、2つの股関節、1つの膝関節の計3つの自由度関節を含むことができる。これにより、6足ロボットの肢体は、12個の股関節、6つの膝関節の計18個の自由度関節を含むことになる。
【0024】
それに応じて、6足ロボットの異なる部位に設けられるセンサは、6足ロボットの胴体の重心位置に設けられる慣性センサ(すなわち、imuセンサ)及び速度センサ、6足ロボットの18個の関節に設けられる角度センサ及び角速度センサ、6足ロボットの6つの足部に設けられる変位センサ及び圧力センサを含むことができる。
【0025】
これにより、多足ロボットの現在の姿勢パラメータは、現在の関節角度、関節角速度、胴体速度、足部の位置、足部の応力状況、慣性センサデータなどのパラメータを含むことができる。
【0026】
なお、上記例は例示的なものにすぎず、本開示の実施例における多足ロボットの姿勢パラメータを限定するものではない。
【0027】
ステップ102において、現在の姿勢パラメータのタイプ及び/又は数が第1の予め設定された条件を満たす場合、現在の姿勢パラメータをトレーニングによって生成された第1のモデルに入力し、第1の運動制御ポリシーを取得する。
【0028】
ステップ103において、現在の姿勢パラメータのタイプ及び/又は数が第1の予め設定された条件を満たさない場合、現在の姿勢パラメータをトレーニングによって生成された第2のモデルに入力し、第2の運動制御ポリシーを取得する。
【0029】
上記ステップ101の説明に基づいて、異なるタイプ又は同じタイプの多足ロボットは、設けられるセンサのタイプ及び数によって、取得された姿勢パラメータが異なることを理解することができる。
【0030】
例えば、4足ロボットは、取得された姿勢パラメータがそれぞれ12個の関節の角度と角速度、4つの足部の位置、4つの足部の応力状況、胴体の速度及び慣性センサデータなどを含む場合がある。あるいは、上記姿勢パラメータのうちの一部のパラメータ、例えば、12個の関節の角度と角速度、4つの足部の位置、4つの足部の応力状況及び慣性センサデータなどのみを含む場合もある。
【0031】
実シーンでの多足ロボットのセンサの構成が異なっていたり、多足ロボットにおけるセンサが故障したりするため、同じタイプの多足ロボットに対して、異なる時刻で取得された姿勢パラメータのタイプ及び/又は数が異なる場合がある。したがって、本開示では、取得された姿勢パラメータのタイプ及び/又は数に基づいて、対応する制御ポリシーを採用することができる。
【0032】
本開示の実施例において、取得された多足ロボットの姿勢パラメータのタイプ及び/又は数が第1の予め設定された条件を満たす場合、多足ロボットの現在の姿勢パラメータに基づいて、トレーニングによって生成された第1のモデルを使用して第1の運動制御ポリシーを取得することができる。取得された多足ロボットの姿勢パラメータのタイプ及び/又は数が第1の予め設定された条件を満たさない場合、多足ロボットの現在の姿勢パラメータに基づいて、トレーニングによって生成された第2のモデルを使用して第2の運動制御ポリシーを取得することができる。
【0033】
例えば、4足ロボットの場合、設けられる第1の予め設定された条件は、4足ロボットの現在の姿勢パラメータが12次元関節角度ベクトル、12次元関節角速度ベクトル、4次元足部位置ベクトル、4次元足部応力ベクトル、3次元胴体速度ベクトル及び6次元慣性センサ数ベクトルを含むことであってもよい。取得された4足ロボットの現在の姿勢が上記すべてのデータを含む場合、4足ロボットの現在の姿勢パラメータに基づいて、トレーニングによって生成された第1のモデルを使用して第1の運動制御ポリシーを取得することができる。
【0034】
あるいは、取得された4足ロボットの現在の姿勢パラメータが、12次元関節角度ベクトル、12次元関節角速度ベクトル、4次元足部位置ベクトル、4次元足部応力ベクトル、3次元胴体速度ベクトル及び6次元慣性センサ数ベクトルのうちの一部のベクトルを含む場合、4足ロボットの現在の姿勢パラメータに基づいて、トレーニングによって生成された第2のモデルを使用して第2の運動制御ポリシーを取得することができる。
【0035】
本開示の実施例において、トレーニングによって生成された第1のモデル及び第2のモデルは、任意のタイプのニューラルネットワークモデルであってもよく、第1のモデル及び第2のモデルによって出力された第1の運動制御ポリシー及び第2の運動制御ポリシーは、多足ロボットの所望の運動の足部軌跡であってもよく、または多足ロボットの所望の運動の関節角度であってもよい。
【0036】
なお、上記例は例示的なものにすぎず、本開示の実施例における第1の予め設定された条件、第1のモデル及び第2のモデルを限定するものではない。
【0037】
ステップ104において、第1の運動制御ポリシーに基づいて、多足ロボットを制御する。
【0038】
ステップ105において、第2の運動制御ポリシーに基づいて、多足ロボットを制御する。
【0039】
本開示の実施例において、第1の運動制御ポリシー及び第2の運動制御ポリシーが多足ロボットの所望の運動の足部軌跡である場合、逆運動学の解法によって前記足部軌跡を関節角度に変換し、関節角度を基礎になるモーションコントローラに入力し、基礎になるモーションコントローラによって所望の関節モーメントを出力することで、多足ロボットの関節運動を制御することができる。ターゲット制御ポリシーが多足ロボットの所望の運動の関節角度である場合、関節角度を基礎になるモーションコントローラに直接入力し、基礎になるモーションコントローラによって所望の関節モーメントを出力することで、多足ロボットの関節運動を制御することができる。
【0040】
なお、前述した姿勢パラメータのタイプ及び/又は数が第1の予め設定された条件を満たすか否かに応じて、ステップ104とステップ105を択一的に実行する。
【0041】
本開示の実施例に係る多足ロボットの制御方法は、多足ロボットの現在の姿勢パラメータを取得し、多足ロボットの現在の姿勢パラメータのタイプ及び/又は数に基づいて、適用されるモデルを選択して現在のターゲット制御ポリシーを取得することにより、多足ロボットの運動制御を実現する。本開示は、取得された多足ロボットの姿勢パラメータのタイプ及び/又は数に基づいて、対応するモデルを使用して制御ポリシーを生成して多足ロボットの運動を制御することで、多足ロボットの運動の安定性及び信頼性が保証される。
【0042】
図2は、本開示の他の実施例によって提供される多足ロボットの制御方法の概略フローチャートである。図2に示すように、図1に示す実施例に基づいて、トレーニングによって第1のモデルを生成するステップは、以下のステップ201~206を含むことができる。
【0043】
ステップ201において、多足ロボットのモデルパラメータ、実行環境パラメータ及びリズム運動制御信号を取得する。
【0044】
本開示の実施例において、多足ロボットは、歩行機能を有する任意のタイプのロボット、例えば、4足ロボット、6足ロボット、8足ロボットなどであってもよい。取得されたロボットのモデルパラメータは、ロボットのタイプごとに異なる。
【0045】
例えば、4足ロボットは、そのモデルパラメータがロボットの胴体及び4つの肢体のパラメータを含むことができる。ここで、各肢体は、2つの股関節、1つの膝関節の計3つの自由度関節を含むことができるので、4足ロボットの肢体は、8つの股関節、4つの膝関節の計12個の自由度関節を含むことになる。
【0046】
あるいは、6足ロボットは、そのモデルパラメータがロボットの胴体及び6つの肢体のパラメータを含むことができる。ここで、各肢体は、2つの股関節、1つの膝関節の計3つの自由度関節を含むことができるので、6足ロボットの肢体は、12個の股関節、6つの膝関節の計18個の自由度関節を含むことになる。
【0047】
本開示の実施例において、多足ロボットの運動環境は、平地、上り階段、下り階段、上り坂及び下り坂などの異なる地形を含むことができる。ここで、上り階段及び下り階段の環境パラメータは、階段の高さを5cm又は10cmなどの異なる階段の高さに設定することができる。同様に、上り坂及び下り坂の環境パラメータは、坂の勾配を30°又は60°などの異なる坂の勾配に設定することができる。
【0048】
リズム運動は、動物のリズミカルで規則的な運動であり、多足ロボットは、バイオニックロボットの一種として、正常な環境での歩容にリズム運動の特徴がある。多足ロボットのタイプによって、その運動の歩容が異なる。そして、同じタイプのロボットでも、運動時に様々な歩容があることもできる。したがって、本開示の実施例において、取得されたリズム運動制御信号は、多足ロボットのタイプごとに異なる。
【0049】
例えば、4足ロボットの場合、その運動時の歩容は、斜め対角の足部が同期して同じ運動を出力することであってもよく、2対の足部が半周期をあけて順次運動して1回の運動を完了し、2対の足部間の位相差は半周期である。また例えば、4足ロボットの4つの足部が順次運動を出力して1回の運動を完了し、4つの足部間の位相が順に4分の1周期ずつシフトされる。
【0050】
あるいは、6足ロボットの場合、その運動時の歩容は、三角歩容であり、すなわち、3対の足部を2組に分けて、一方の前後足と他方の中足を1組として1つの三角形の支柱構造を形成し、6足ロボットは、運動時に三角形の支柱構造で交互に前進する。
【0051】
したがって、多足ロボットのリズム運動制御信号は、多足ロボットのモデルパラメータ及び設定された運動歩容に基づいて決定することができ、多足ロボットは、リズム運動制御信号の作用で予め設定された歩容に従って運動する。
【0052】
なお、上記例は例示的なものにすぎず、本開示の実施例における多足ロボットのモデルパラメータ、実行環境パラメータ、リズム運動制御信号などを限定するものではない。
【0053】
ステップ202において、多足ロボットのモデルパラメータ、実行環境パラメータ及びリズム運動制御信号に基づいて、多足ロボットの基礎的歩容制御ポリシーを決定する。
【0054】
上記ステップ201の説明に基づいて、本開示の実施例において、実行環境パラメータは、平地、上り階段、下り階段、上り坂及び下り坂などの複数の地形パラメータを含むことができる。多足ロボットの動き方は、地形によって異なる。したがって、本開示の実施例において、多足ロボットの基礎的歩容制御ポリシーは、それぞれ、各地形における対応する基礎的歩容制御ポリシーを含む。
【0055】
多足ロボットの各地形における対応する基礎的歩容制御ポリシーを決定する場合、リズム運動制御信号を現在の歩容制御ポリシーとして、対応する多足ロボットモデルをそれぞれ平地、上り階段、下り階段、上り坂及び下り坂などの地形で運動するように制御し、そして各地形で現在の歩容制御ポリシーを最適化して調整し、最終的な基礎的歩容制御ポリシーを取得することができる。
【0056】
ここで、多足ロボットが平地で運動する基礎的歩容制御ポリシーを決定する場合、現在の歩容制御ポリシーに基づいて多足ロボットを平地で運動するように制御し、多足ロボットの運動パラメータを取得することができる。多足ロボットの運動パラメータに基づいて適応度報酬関数を設定し、適応度報酬関数に基づいて多足ロボットが運動するたびに取得された適応度報酬値を計算する。適応度報酬値が設定された閾値に達するまで、適応度報酬値に基づいて現在の歩容制御ポリシーを調整する。
【0057】

適応度報酬関数は、f=w*a+w*a+……+w*aとすることができ、ここで、a、a、……aはそれぞれ報酬因子を表し、w、w、……wはそれぞれ報酬重みを表し、mは、報酬因子の個数であり、各報酬因子の報酬重みは必要に応じて設定することができる。
【0058】
例えば、多足ロボットの運動パラメータは、歩行距離、歩容の安定性、足部の前進距離などを含むことができる。適応度報酬関数は、f=w*a+w*a+w*aとすることができ、ここで、a、a、aはそれぞれ多足ロボットの歩行距離、歩容の安定性、足部の前進距離を表し、w、w、wは、上記各運動状態パラメータに対応する賞罰重みであり、w、w、wの値をそれぞれ0.3、0.4、0.3とする。
【0059】
なお、上記例は例示的なものにすぎず、本開示の実施例における多足ロボットの運動パラメータ、報酬関数などを限定するものではない。
【0060】
本開示の実施例において、多足ロボットの階段上りと階段下りの基礎的歩容制御ポリシーを決定する場合、現在の歩容制御ポリシーに基づいて、階段を上り下りするように多足ロボットを制御し、多足ロボットの運動パラメータを取得することができる。多足ロボットの運動パラメータに基づいて適応度報酬関数を設定し、適応度報酬関数に基づいて多足ロボットが運動するたびに取得された適応度報酬値を計算する。適応度報酬値が設定された閾値に達するまで、適応度報酬値に基づいて現在の歩容制御ポリシーを調整する。
【0061】
多足ロボットの階段上りと階段下りの基礎的歩容制御ポリシーの取得に採用される適応度報酬関数は、多足ロボットの平地での運動を取得するための基礎的歩容制御ポリシーを参照して設定することができ、ここでは詳しく説明しない。
【0062】
なお、階段には一定の高さがあるため、多足ロボットの階段上りと階段下りの基礎的歩容制御ポリシーを取得するときに、異なる高さの階段を順次運動するように多足ロボットを制御することができる。階段の高さを徐々に増やし、多足ロボットの階段上りと階段下りの基礎的歩容制御ポリシーを逐次最適化することで、最終的に特定の高さの階段を上るという効果を達成する。
【0063】
例えば、先ず現在の歩容制御ポリシーに基づいて、高さが3cmの階段を上るように多足ロボットを制御し、上記の説明手順に従って現在の歩容制御ポリシーを調整してから、調整された現在の歩容制御ポリシーに基づいて、高さが5cmの階段を上るように多足ロボットを制御し、上記の説明手順に従って現在の歩容制御ポリシーを調整し続けて、多足ロボットが高さが10cmの階段を上ることができるまで、このように階段の高さを徐々に増やす。
【0064】
同様に、本開示の実施例において、多足ロボットの坂上りと坂下りの基礎的歩容制御ポリシーを決定する場合、現在の歩容制御ポリシーに基づいて、坂を上り下りするように多足ロボットを制御し、多足ロボットの運動パラメータを取得することができる。多足ロボットの運動パラメータに基づいて適応度報酬関数を設定し、適応度報酬関数に基づいて多足ロボットが運動するたびに取得された適応度報酬値を計算する。適応度報酬値が設定された閾値に達するまで、適応度報酬値に基づいて現在の歩容制御ポリシーを調整する。
【0065】
多足ロボットの坂上りと坂下りの基礎的歩容制御ポリシーの取得に採用される適応度報酬関数は、多足ロボットの平地での運動を取得するための基礎的歩容制御ポリシーを参照して設定することができ、ここでは詳しく説明しない。
【0066】
なお、坂が異なる勾配を有するため、多足ロボットの坂上りと坂下りの基礎的歩容制御ポリシーを取得するときに、異なる勾配の坂を順次運動するように多足ロボットを制御することができる。坂の勾配を徐々に増やし、多足ロボットの坂上りと坂下りの基礎的歩容制御ポリシーを逐次最適化することで、最終的に特定の勾配の坂を上るという効果を達成する。
【0067】
例えば、先ず現在の歩容制御ポリシーに基づいて、勾配が10°の坂を上るように多足ロボットを制御し、上記の説明手順に従って現在の歩容制御ポリシーを調整してから、調整された現在の歩容制御ポリシーに基づいて、勾配が30°の坂を上るように多足ロボットを制御し、上記の説明手順に従って現在の歩容制御ポリシーを調整し続けて、多足ロボットが勾配が60°の坂を上ることができるまで、このように坂の勾配を徐々に増やす。
【0068】
なお、上記例は例示的なものにすぎず、本開示の実施例における実行環境パラメータなどを限定するものではない。
【0069】
ステップ203において、多足ロボットの基礎的歩容制御ポリシーに基づいて、ランダムに生成された環境で運動するように多足ロボットを制御して、多足ロボットの第1の姿勢パラメータセット及び運動状態パラメータセットを取得する。
【0070】
本開示の実施例において、ランダムに生成された環境は、平地、上り階段、下り階段、上り坂及び下り坂などの異なる地形のうちの任意の1つ又は複数を含むことができる。
【0071】
例えば、ランダムに生成された環境は、先ず上り階段であり、次に平地になり、最後に下り坂になってもよい。あるいは、ランダムに生成された環境は、先ず下り階段であり、次に上り坂になり、平地になり、最後に上り階段になってもよい。
【0072】
多足ロボットモデルがランダムに生成された環境で運動し、取得された第1の姿勢パラメータセットは、多足ロボットの運動中の異なる時刻での異なるタイプの姿勢パラメータを含むことができる。
【0073】
例えば、4足ロボットは第1の姿勢パラメータがOt-n、Ot-n+1、……を含むことができ、ここで、tは、現在時刻を表し、Oは、i番目の時刻の姿勢パラメータを表し、i=t-n、t-n+1、……、tである。Oは、多足ロボットのi番目の時刻における12次元関節角度ベクトル、12次元関節角速度ベクトル、4次元足部位置ベクトル、4次元足部応力ベクトル、3次元胴体速度ベクトル及び6次元慣性センサ数ベクトルを含むことができる。
【0074】
多足ロボットモデルがランダムに生成された環境で運動し、各時刻における姿勢パラメータに基づいて多足ロボットの複数時刻での異なるタイプの運動状態パラメータを取得することができる。
【0075】
例えば、4足ロボットは運動状態パラメータセットがSt-n、St-n+1、……、Sを含むことができ、ここで、tは、現在時刻を表し、Sは、i番目の時刻の運動状態パラメータを表し、i=t-n、t-n+1、……、tである。Sは、多足ロボットのi番目の時刻における胴体変位、姿勢安定性、足部変位、ヨーとロール、エネルギーロスなどを含むことができる。
【0076】
ステップ204において、第1の姿勢パラメータセット、運動状態パラメータセット及び基礎的歩容制御ポリシーを第1の初期モデルに入力して、運動制御ポリシーを取得する。
【0077】
なお、基礎的歩容制御ポリシーによって出力された制御信号は、多足ロボットがある特定の地形下で運動するときの所望の足部軌跡又は関節角度などである。多足ロボットは、基礎的歩容制御ポリシーの作用下で、ランダムに生成された環境で運動し、実際の運動の足部軌跡又は関節角度は、基礎的歩容制御ポリシーが所望の足部軌跡又は関節角度と偏差があり、多足ロボットの運動ときに歩行が不安定になったり転倒したりする可能性がある。
【0078】
本開示の実施例において、第1の初期モデルは、任意のタイプのニューラルネットワークモデルであってもよい。ここで、取得された基礎的歩容制御ポリシー、姿勢パラメータ及び運動状態パラメータに基づいて、多足ロボットの運動を制御するための運動制御ポリシーを生成することができる。
【0079】
ステップ205において、運動制御ポリシーに基づいて、ランダムに生成された環境で運動するように多足ロボットを制御して、運動制御ポリシーでの多足ロボットの姿勢パラメータ及び運動状態パラメータを取得する。
【0080】
ステップ203の記載に基づいて、ランダムに生成された環境は、平地、上り階段、下り階段、上り坂及び下り坂などの異なる地形のうちの任意の1つまたは複数を含むことができる。例えば、ランダムに生成された環境は、先ず上り階段であり、次に平地になり、最後に下り坂になってもよい。あるいは、ランダムに生成された環境は、先ず下り階段であり、次に上り坂になり、平地になり、最後に上り階段になってもよい。
【0081】
多足ロボットは運動制御ポリシーの作用で、ランダムに生成された環境で運動する。取得された姿勢パラメータは、関節角度ベクトル、関節角速度ベクトル、足部位置ベクトル、足部応力ベクトル、胴体速度ベクトル及び慣性センサ数ベクトルを含むことができる。取得された運動状態パラメータは、胴体変位、姿勢安定性、足部変位、ヨーとロール、エネルギーロスなどを含むことができる。
【0082】
ステップ206において、生成された第1のモデルに基づいて決定された第1の運動制御ポリシーでの多足ロボットの運動状態が第2の予め設定された条件を満たすまで、姿勢パラメータ及び運動状態パラメータに基づいて第1の初期モデルを調整する。
【0083】
本開示の実施例において、トレーニングによって第1のモデルを生成し、第1のモデルによって出力された運動制御ポリシーを決定する場合、多足ロボットの運動状態パラメータに基づいて賞罰関数を設定し、賞罰関数に基づいて多足ロボットが現在の運動制御ポリシーの作用で動作を実行することで得られた報酬リターンを計算することができる。報酬リターンが設定された閾値に達するまで、すなわち、運動状態パラメータが第2の予め設定された条件を満たすまで、報酬リターンに基づいて現在の運動制御ポリシーを調整する。
【0084】
例えば、賞罰関数をR=P*f+p*f+……+p*fに設定することができ、ここで、f、f、……fは、それぞれ賞罰事項を表し、p、p、……pは、それぞれ賞罰重みを表し、xは賞罰事項の数であり、各賞罰事項の賞罰重みは必要に応じて設定することができる。
【0085】
例えば、多足ロボットの運動状態パラメータは、胴体変位、姿勢安定性、足部変位、ヨーとロール、エネルギーロスなどを含むことができる。賞罰関数をR=P*f+p*f+p*f+p*f+p*f+p*fに設定することができ、ここで、f、f、f、f、f、fは、それぞれ多足ロボットの胴体変位、姿勢安定性、足部変位、ヨーとロール、エネルギーロスを表し、p、p、p、p、p、pは、上記各運動状態パラメータに対応する賞罰重みであり、p、p、p、p、p、pの値は、それぞれ0.1、0.2、0.3、0.1、0.1、0.2とすることができる。
【0086】
なお、上記例は例示的なものにすぎず、本開示の実施例における多足ロボットの姿勢パラメータ、運動状態パラメータ、賞罰関数などを限定するものではない。
【0087】
本開示の実施例において、第1のモデルの最終的な運動制御ポリシーを決定する場合、初期運動制御ポリシーに基づいて多足ロボットの運動を制御し、多足ロボットの姿勢パラメータ及び運動状態パラメータを取得することができる。多足ロボットの運動状態パラメータに基づいて賞罰関数を設定し、賞罰関数に基づいて多足ロボットが運動するたびに取得された報酬リターンを計算する。報酬リターンが設定された閾値に達するまで、報酬リターンに基づいて現在の運動制御ポリシーを調整し、この時多足ロボットの運動が所望の効果を達成する。
【0088】
本開示の実施例において、シミュレーション環境に基づいて、シミュレーション環境で多足ロボットをシミュレートし、トレーニングによって第1のモデルを生成することができるが、実体的なロボットを構築して実シーンを構築し、トレーニングによって第1のモデルを生成することもできる。
【0089】
例えば、Pybulletシミュレーション環境、Gazeboシミュレーション環境などを使用して多足ロボットモデルや環境モデルを構築することができる。ここで、シミュレーション環境において関連パラメータを設定してロボットモデルを構築し、多足ロボットの胴体構造および肢体構造、多足ロボットの各部位に設けられるセンサの数やタイプなどを含むことができる。シミュレーション環境において関連パラメータを設定して環境モデルを構築し、異なる地形及び地形のパラメータなどを含むことができる。
【0090】
あるいは、機械部品及び電子部品を用いて実体的な多足ロボットを構築し、多足ロボットの各部位に必要なセンサを取り付けて、多足ロボットの状態情報を取得してもよい。同時に実シーンにおいて異なる地形を含む運動環境を構築して、多足ロボットが実際の運動を行うことができるようにする。
【0091】
本発明の実施例に係る多足ロボットの制御方法は、先ず多足ロボットが異なる地形で運動する基礎的歩容制御ポリシーを取得し、基礎的歩容制御ポリシーに基づいて、ランダムに生成された環境で運動するように多足ロボットを制御し、その後、多足ロボットの運動状態に基づいて運動制御ポリシーを最適化して調整することにより、最終的に出力された運動制御ポリシーが所期の運動効果を達成することができ、地形が複雑な環境での多足ロボットの運動の安定性及び信頼性を効果的に向上させる。
【0092】
図3は、本開示の他の実施例によって提供される多足ロボットの制御方法の概略フローチャートである。図3に示すように、図2に示す実施例に基づいて、トレーニングによって第2のモデルを生成するステップは、以下のステップ301~303を含むことができる。
【0093】
ステップ301において、第1の姿勢パラメータセットから第2の姿勢パラメータセットを抽出し、第2の姿勢パラメータセットに含まれる姿勢パラメータの数が第1の姿勢パラメータセットに含まれる姿勢パラメータの数より少ない。
【0094】
本開示の他の実施例における説明から分かるように、取得されたロボットの姿勢パラメータは、ロボットのタイプ、及びロボットの異なる部位に設けられるセンサのタイプと数によって異なる。
【0095】
例えば、4足ロボットは、第1の姿勢パラメータセットが12次元関節角度ベクトル、12次元関節角速度ベクトル、4次元足部位置ベクトル、4次元足部応力ベクトル、3次元胴体速度ベクトル、及び6次元慣性センサ数ベクトルを含むことができる。第1の姿勢パラメータセットから第2の姿勢パラメータセットを抽出し、第2の姿勢パラメータセットは、12次元関節角度ベクトル、12次元関節角速度ベクトル、4次元足部位置ベクトル、4次元足部応力ベクトル、及び6次元慣性センサ数ベクトルを含むことができる。
【0096】
ステップ302において、第1の姿勢パラメータセット、第2の姿勢パラメータセット及び第1の運動制御ポリシーを第2の初期モデルに入力して、第2の運動制御ポリシーを取得する。
【0097】
なお、第1の運動制御ポリシーは、多足ロボットの第1の姿勢パラメータセットが取得できることに基づいて得られる。現実のシーンでは、様々な条件により、多足ロボットの姿勢パラメータの一部しか得られない可能性があり、これにより、ある状況における多足ロボットに第1の運動制御ポリシーを適用することができなくなる。
【0098】
そのため、本発明の実施例において、第1の姿勢パラメータセットからパラメータの一部を抽出して第2の姿勢パラメータセットを形成し、第2の初期モデルは、第1の姿勢パラメータセットと第2の姿勢パラメータセットとに基づいて、第1の運動制御ポリシーを模倣、学習することにより、得られた第2の運動制御ポリシーが第1の運動制御ポリシーに類似するようにする。
【0099】
例えば、第1の姿勢パラメータセットOが(y、y、y、y、y、y)を含み、第2の姿勢パラメータセット
【数1】
が(y、y、y、y、y、y、y)を含むと定義し、ここで、y、y、y、y、y、yは、それぞれ12次元関節角度ベクトル、12次元関節角速度ベクトル、4次元足部位置ベクトル、4次元足部応力ベクトル、6次元慣性センサ数ベクトル、及び3次元胴体速度ベクトルを表す。第1のモデル
【数2】
によって出力された第1の運動制御ポリシーを
【数3】
とし、
【数4】
に基づいて、模倣学習法を用いて、第2のモデル
【数5】
によって出力された第2の運動制御ポリシーaを計算する。
【0100】
ステップ303において、生成された第2のモデルに基づいて決定された第2の運動制御ポリシーでの多足ロボットの運動状態が第3の予め設定された条件を満たすまで、第2の運動制御ポリシーと前記第1の運動制御ポリシーとの相違度に基づいて、第2の初期モデルを調整する。
【0101】
本開示の実施例において、トレーニングによって第2のモデルを生成する場合、第2の運動制御ポリシーを決定し、第2のモデルが模倣学習を行うときの最小化ターゲット損失関数を定義し、最小化ターゲット損失関数の関数値が設定された閾値に達するように第3の予め設定された条件を設定することができる。
【0102】
例えば、最小化ターゲット損失関数Lを
【数6】
と定義し、
【数7】
に基づいて、模倣学習法を用いて、第2のモデル
【数8】
によって出力された第2の運動制御ポリシーaを計算する。第2の初期モデルは、最小化ターゲット損失関数Lに基づいて調整され、最小化ターゲット損失関数の関数値が第3の予め設定された条件を満たすときに、第2のモデルによって出力された第2の運動制御ポリシーが得られる。
【0103】
本発明の実施例に係る多足ロボットの制御方法は、先ず第1の姿勢パラメータセットを取得できる多足ロボットに対して、トレーニングによって第1のモデルを生成し、さらに、第1の運動制御ポリシーを決定する。次に、第2の姿勢パラメータセットしか取得できない多足ロボットに対して、模倣学習方法を用いて、トレーニングによって第2のモデルを生成し、第2のモデルが第1の運動制御ポリシーに基づいて第2の運動制御ポリシーを生成できるようにする。これにより、本開示によって提出される制御方法は、配置状況の異なる多足ロボットに適用可能であり、本開示によって提出される多足ロボットの制御方法は、ロバスト性と汎化性に優れている。
【0104】
図4は、本開示の他の実施例によって提供される多足ロボットの制御方法の概略フローチャートである。図4に示すように、図2に示す実施例に基づいて、ステップ201において、多足ロボットのモデルパラメータ、実行環境パラメータ、及びリズム運動制御信号を取得するステップは、以下のステップ401~403を含むことができる。
【0105】
ステップ401において、多足ロボットのモデルパラメータ及び実行環境パラメータを取得する。
【0106】
なお、上記ステップ401における多足ロボットのモデルパラメータ及び実行環境パラメータの取得は、ステップ201における実現形態を参照することができるので、ここでは説明を省略する。
【0107】
ステップ402において、多足ロボットのモデルパラメータに基づいて、中枢パターン発生器を使用して周期的な時間信号を生成する。
【0108】
中枢パターン発生器(Central Pattern Generator、CPG)は、動物のリズム運動行動を制御する分散型ニューラルネットワークである。中枢パターン発生器は、リズム信号の入力がなく、フィードバック情報がなく、及び高位層制御命令が欠けている場合、安定した位相ロックの周期的な時間信号を発生することができる。
【0109】
例えば、多足ロボットのモデルパラメータに基づいて、CPGの初期入力要素とその動作パターンを定義することができる。
【0110】
例えば、CPGの2つの初期入力要素x、xを定義することができ、ここで、x、xの初期値は、x=sin(0)=0、x=cos(0)=1であり、すなわち、2つの要素は0.5位相異なる。CPGネットワークの動作パターンは、
【数9】
であり、ここで、回転行列は、
【数10】
であり、θは回転の角速度、すなわちCPGネットワークの周波数を表し、θΔtは時間Δt内に回転する角度を表す。初期入力要素は、CPGネットワークの積分計算によりx=[sin(θt),cos(θt)]が得られる。
【0111】
その後、放射基底関数(Radial Basis Function、RBF)を用いてCPGネットワークの出力xを高次元特徴ベクトルにマッピングすることができる。高次元特徴ベクトルの次元をHとし、CPGネットワークの周期をTとすると、H個の点
【数11】
を選択することができ、ここで、
【数12】
であり、周期的な時間信号
【数13】
が得られ、
【数14】
はH次元の特徴ベクトルであり、ここで、eは自然指数であり、αは調整可能パラメータである。
【0112】
ステップ403において、周期的な時間信号に基づいて、リズム運動制御信号を決定する。
【0113】
周期的な時間信号をリズム運動制御信号にマッピングする場合、多足ロボットの運動歩容に基づいてマッピング関数を設定することができる。
【0114】
例えば、4足ロボットの一種の歩容は、斜め対角の足部によって出力された動作が同じで、2対の足部間の位相差は半周期である。したがって、周期的な時間信号v(t)は、4足ロボットの1つの足部のリズム運動制御信号ut=ω*v(t)+bにマッピングすることができ、ここで、ωは、次元が(3、H)の行列であり、bは次元が3のベクトルであり、ω及びbはトレーニング可能なネットワークパラメータである。
【0115】
当該足部が4足ロボットの第1の足部、当該足部の斜め対角の足部が第3の足部、4足ロボットの他の斜め対角の足部がそれぞれ第2の足部と第4の足部とする場合、4足ロボットの第3の足部と第1の足部のリズム運動制御信号が同じであり、4足ロボットの第2の足部と第4の足部のリズム運動制御信号が同じであり、第2の足部及び第4の足部のリズム運動制御信号と第1の足部のリズム運動制御信号との位相差が半周期である。さらに、第1の足部のリズム運動制御信号に基づいて、4足ロボットの他の足部のリズム運動制御信号を取得することができる。
【0116】
本開示の実施例に係る多足ロボットの制御方法は、中枢パターン発生器によって多足ロボットのリズム運動制御信号を生成することにより、正確な多足ロボットモデルの構築や、人間による初期制御ポリシーの設計を回避し、多足ロボットの制御方法を取得する作業量を効果的に削減し、多足ロボットの制御方法を取得する複雑さを低減させる。
【0117】
本開示の実施例によれば、本開示は、多足ロボットの制御装置をさらに提供する。
【0118】
図5は、本開示の一実施例に係る多足ロボットの制御装置の概略構成図である。図5に示すように、当該多足ロボットの制御装置500は、第1の取得モジュール510、第2の取得モジュール520及び実行モジュール530を含む。
【0119】
ここで、第1の取得モジュール510は、多足ロボットの現在の姿勢パラメータを取得するように構成される。
【0120】
第2の取得モジュール520は、現在の姿勢パラメータのタイプ及び/又は数が第1の予め設定された条件を満たす場合、現在の姿勢パラメータをトレーニングによって生成された第1のモデルに入力して、第1の運動制御ポリシーを取得し、あるいは、
現在の姿勢パラメータのタイプ及び/又は数が第1の予め設定された条件を満たさない場合、現在の姿勢パラメータをトレーニングによって生成された第2のモデルに入力して、第2の運動制御ポリシーを取得するように構成される。
【0121】
実行モジュール530は、第1の運動制御ポリシーに基づいて、多足ロボットを制御し、あるいは、
第2の運動制御ポリシーに基づいて、前記多足ロボットを制御するように構成される。
【0122】
本開示の実施例の可能な一実現形態において、図6に示すように、図5に示す実施例に基づいて、第1のトレーニングモジュール540をさらに含み、第1のトレーニングモジュール540は、
多足ロボットのモデルパラメータ、実行環境パラメータ及びリズム運動制御信号を取得するための第1の取得ユニット541と、
多足ロボットのモデルパラメータ、実行環境パラメータ及びリズム運動制御信号に基づいて、多足ロボットの基礎的歩容制御ポリシーを決定するための第2の取得ユニット542と、
多足ロボットの基礎的歩容制御ポリシーに基づいて、ランダムに生成された環境で運動するように多足ロボットを制御して、多足ロボットの第1の姿勢パラメータセット及び運動状態パラメータセットを取得するための第3の取得ユニット543と、
第1の姿勢パラメータセット、運動状態パラメータセット及び基礎的歩容制御ポリシーを第1の初期モデルに入力して、第1の運動制御ポリシーを取得するための第4の取得ユニット544と、
第1の運動制御ポリシーに基づいて、ランダムに生成された環境で運動するように多足ロボットを制御して、第1の運動制御ポリシーでの多足ロボットの姿勢パラメータ及び運動状態パラメータを取得するための第5の取得ユニット545と、
生成された第1のモデルに基づいて決定された第1の運動制御ポリシーでの多足ロボットの運動状態が第2の予め設定された条件を満たすまで、姿勢パラメータ及び運動状態パラメータに基づいて第1の初期モデルを調整するための第6の取得ユニット546と、を含む。
【0123】
本開示の実施例の可能な一実現形態において、図7に示すように、図6に示す実施例に基づいて、第2のトレーニングモジュール550をさらに含み、第2のトレーニングモジュール550は、
第1の姿勢パラメータセットから第2の姿勢パラメータセットを抽出するための第7の取得ユニット551であって、第2の姿勢パラメータセットに含まれる姿勢パラメータの数が第1の姿勢パラメータセットに含まれる姿勢パラメータの数より少ない第7の取得ユニット551と、
第1の姿勢パラメータセット、第2の姿勢パラメータセット及び第1の運動制御ポリシーを第2の初期モデルに入力して、第2の運動制御ポリシーを取得するための第8の取得ユニット552と、
生成された第2のモデルに基づいて決定された第2の運動制御ポリシーでの多足ロボットの運動状態が第3の予め設定された条件を満たすまで、第2の運動制御ポリシーと第1の運動制御ポリシーとの相違度に基づいて、第2の初期モデルを調整するための第9の取得ユニット553と、を含む。
【0124】
本開示の実施例の可能な一実現形態において、図8に示すように、図6に示す実施例に基づいて、第1の取得ユニット541は、
多足ロボットのモデルパラメータ及び実行環境パラメータを取得するための収集ユニット5411と、
多足ロボットのモデルパラメータに基づいて、中枢パターン発生器を使用して周期的な時間信号を生成するための生成ユニット5412と、
周期的な時間信号に基づいてリズム運動制御信号を決定するための決定ユニット5413と、を含む。
【0125】
なお、上述した多足ロボットの制御方法の実施例の説明は、当該実施例の多足ロボットの制御装置にも適用可能であり、その実現原理は類似しているので、ここでは説明を省略する。
【0126】
本開示の実施例の多足ロボットの制御装置は、多足ロボットの現在の姿勢パラメータを取得し、多足ロボットの現在の姿勢パラメータのタイプ及び/又は数に基づいて、適用されるモデルを選択して現在のターゲット制御ポリシーを取得することにより、多足ロボットの運動制御を実現する。本開示は、取得された多足ロボットの姿勢パラメータのタイプ及び/又は数に基づいて、対応するモデルを使用して制御ポリシーを生成して多足ロボットの運動を制御することで、多足ロボットの運動の安定性及び信頼性が保証される。
【0127】
本開示の実施例によれば、本開示は、電子機器及び読み取り可能な記憶媒体をさらに提供する。
本開示の実施例によれば、本開示は、コンピュータプログラムをさらに提供し、前記コンピュータプログラムがプロセッサによって実行される場合、本開示によって提供される多足ロボットの制御方法が実現される。
【0128】
図9には、本開示の実施例を実現するための例示的な電子機器900の概略ブロック図が示されている。電子機器は、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、メインフレームコンピュータ、及び他の適切なコンピュータなどの様々な形態のデジタルコンピュータを表すことを目的とする。電子機器は、パーソナルデジタルプロセッサ、携帯電話、スマートフォン、ウェアラブルデバイス、他の同様のコンピューティングデバイスなどの様々な形態のモバイルデバイスを表すこともできる。本明細書で示されるコンポーネント、それらの接続と関係、及びそれらの機能は単なる例であり、本明細書の説明及び/又は要求される本出願の実現を制限するものではない。
【0129】
図9に示すように、機器900は、リードオンリーメモリ(ROM)902に記憶されているコンピュータプログラム、又は記憶ユニット908からランダムアクセスメモリ(RAM)903にロッドされたコンピュータプログラムに基づいて、様々な適切な動作及び処理を実行することができる計算ユニット901を含む。RAM903には、機器900の動作に必要な様々なプログラム及びデータも記憶されてもよい。計算ユニット901、ROM902及びRAM903は、バス904を介して互いに接続されている。入出力(I/O)インターフェース905もバス904に接続されている。
【0130】
機器900における複数のコンポーネントは、入出力(I/O)インターフェース905に接続され、キーボード、マウスなどの入力ユニット906と、様々なタイプのディスプレイ、スピーカなどの出力ユニット907と、磁気ディスク、光ディスクなどの記憶ユニット908と、ネットワークカード、モデム、無線通信トランシーバなどの通信ユニット909と、を含む。通信ユニット909は、機器900がインターネットなどのコンピュータネットワーク及び/又は様々な電気通信ネットワークを介して他のデバイスと情報/データを交換することを可能にする。
【0131】
計算ユニット901は、処理及び計算能力を有する様々な汎用及び/又は専用処理コンポーネントであってもよい。計算ユニット901のいくつかの例は、中央処理ユニット(CPU)、グラフィックス処理ユニット(GPU)、様々な専用人工知能(AI)計算チップ、機械学習モデルアルゴリズムを実行する様々な計算ユニット、デジタルシグナルプロセッサ(DSP)、及びいずれかの適宜なプロセッサ、コントローラ、マイクロコントローラなどを含むが、これらに限定されない。計算ユニット901は、上述したそれぞれの方法及び処理、例えば、多足ロボットの制御方法を実行する。例えば、いくつかの実施例で、多足ロボットの制御方法は、記憶ユニット908のような機械読み取り可能な媒体に具体的に含まれるコンピュータソフトウェアプログラムとして実装されてもよい。いくつかの実施例では、コンピュータプログラムの一部又は全部は、ROM902及び/又は通信ユニット909を介して機器900にロッド及び/又はインストールすることができる。コンピュータプログラムがRAM903にロッドされて計算ユニット901によって実行される場合、上述した多足ロボットの制御方法の1つ又は複数のステップを実行することができる。選択的に、他の実施例では、計算ユニット901は、多足ロボットの制御方法を実行するように、他の任意の適切な形態で(例えば、ファーとウェアにより)構成されてもよい。
【0132】
本明細書で上述したシステム及び技術の様々な実施形態は、デジタル電子回路システム、集積回路システム、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、特定用途向け標準製品(ASSP)、システムオンチップ(SOC)、コンプレックス・プログラマブル・ロジック・デバイス(CPLD)、コンピュータハードウェア、ファームウェア、ソフトウェア及び/又はそれらの組合せで実現されてもよい。これらの様々な実施形態は、少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行及び/又は解釈することができる1つ又は複数のコンピュータプログラムで実現されてもよく、当該プログラマブルプロセッサは、専用及び/又は汎用プログラマブルプロセッサであってもよく、記憶システム、少なくとも1つの入力装置、及び少なくとも1つの出力装置からデータ及び命令を受信し、当該記憶システム、当該少なくとも1つの入力装置、及び当該少なくとも1つの出力装置にデータ及び命令を伝送することができる。
【0133】
本開示の方法を実施するためのプログラムコードは、1つ又は複数のプログラミング言語の任意の組み合わせで書くことができる。これらのプログラムコードは、プロセッサ又はコントローラによって実行されると、フローチャート及び/又はブロック図に規定された機能/動作が実施されるように、汎用コンピュータ、専用コンピュータ、又は他のプログラマブルデータ処理装置のプロセッサ又はコントローラに提供されてもよい。プログラムコードは、完全に機械上で実行されるか、部分的に機械上で実行されるか、スタンドアロンパッケージとして、部分的に機械上で実行され、かつ部分的にリモート機械上で実行されるか、又は完全にリモート機械又はサーバ上で実行されてもよい。
【0134】
本開示の文脈では、機械読み取り可能な媒体は、命令実行システム、装置、又はデバイスによって使用されるために、又は命令実行システム、装置、又はデバイスと組み合わせて使用するためのプログラムを含むか、又は記憶することが可能な有形媒体であってもよい。機械読み取り可能な媒体は、機械読み取り可能な信号媒体又は機械読み取り可能な記憶媒体であってもよい。機械読み取り可能な媒体は、電子的、磁気的、光学的、電磁気的、赤外線的、又は半導体システム、装置又はデバイス、又はこれらの任意の適切な組み合わせを含むことができるが、これらに限定されない。機械読み取り可能な記憶媒体のより具体的な例は、1つ又は複数のワイヤによる電気的接続、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、消去可能プログラマブルリードオンリーメモリ(EPROM)又はフラッシュメモリ、光ファイバ、ポータブルコンパクトディスクリードオンリーメモリ(CD-ROM)、光学記憶装置、磁気記憶装置、又はこれらの任意の適切な組み合わせを含む。
【0135】
ユーザとのインタラクションを提供するために、ここで説明されているシステム及び技術をコンピュータ上で実施することができ、当該コンピュータは、ユーザに情報を表示するためのディスプレイ装置(例えば、CRT(陰極線管)又はLCD(液晶ディスプレイ)モニタ)と、キーボード及びポインティングデバイス(例えば、マウス又はトラックボール)とを有し、ユーザは、当該キーボード及び当該ポインティングデバイスによって入力をコンピュータに提供することができる。他のタイプの装置も、ユーザとのインタラクションを提供することができ、例えば、ユーザに提供されるフィードバックは、任意の形式のセンシングフィードバック(例えば、視覚フィードバック、聴覚フィードバック、又は触覚フィードバック)であってもよく、任意の形式(音響入力と、音声入力と、触覚入力とを含む)でユーザからの入力を受信することができる。
【0136】
ここで説明されるシステム及び技術は、バックエンドコンポーネントを含むコンピューティングシステム(例えば、データサーバとする)、又はミドルウェアコンポーネントを含むコンピューティングシステム(例えば、アプリケーションサーバ)、又はフロントエンドユニットを含むコンピューティングシステム(例えば、グラフィカルユーザインターフェース又はウェブブラウザを有するユーザコンピュータであり、ユーザは、当該グラフィカルユーザインターフェース又は当該ウェブブラウザによってここで説明されるシステム及び技術の実施形態とインタラクションする)、又はこのようなバックエンドコンポーネントと、ミドルウェアコンポーネントと、フロントエンドコンポーネントの任意の組み合わせを含むコンピューティングシステムで実施することができる。任意の形式又は媒体のデジタルデータ通信(例えば、通信ネットワーク)によってシステムのコンポーネントを相互に接続することができる。通信ネットワークの例は、ローカルエリアネットワーク(LAN)と、ワイドエリアネットワーク(WAN)と、インターネットと、ブロックチェーンネットワークとを含む。
【0137】
コンピュータシステムは、クライアントとサーバとを含むことができる。クライアントとサーバは、一般に、互いに離れており、通常に通信ネットワークを介してインタラクションする。対応するコンピュータ上で実行され、且つ互いにクライアント-サーバ関係を有するコンピュータプログラムによって、クライアントとサーバとの関係が生成される。サーバは、クラウドコンピューティングサーバ又はクラウドホストとも呼ばれるクラウドサーバであってもよく、従来の物理ホスト及びVPSサービス(「Virtual Private Server」、又は「VPS」と略称する)における、管理難度が大きく、ビジネスの拡張性が低いという欠点を解決するクラウドコンピューティングサービスシステムのホスト製品の1つである。
【0138】
なお、上記に示される様々な形式のフローを使用して、ステップを並べ替えたり、追加したり、削除したりすることができる。例えば、本開示に記載されている各ステップは、並列に実行されてもよいし、順次的に実行されてもよいし、異なる順序で実行されてもよいが、本開示の技術案によって期待される結果を実現することができれば、本明細書では限定しない。
【0139】
上記の具体的な実施形態は、本開示の保護範囲を制限するものではない。当業者は、設計要件と他の要因に応じて、様々な修正、組み合わせ、サブコンビネーション、及び代替を行うことができる。本開示の精神と原則内で行われる任意の修正、同等の置換、及び改善などは、いずれも本開示の保護範囲内に含まれるべきである。
図1
図2
図3
図4
図5
図6
図7
図8
図9