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

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

▶ オートデスク,インコーポレイテッドの特許一覧

特許7218407ソフトロボットマニピュレータのためのジェネレーティブデザイン技術
<>
  • 特許-ソフトロボットマニピュレータのためのジェネレーティブデザイン技術 図1
  • 特許-ソフトロボットマニピュレータのためのジェネレーティブデザイン技術 図2
  • 特許-ソフトロボットマニピュレータのためのジェネレーティブデザイン技術 図3
  • 特許-ソフトロボットマニピュレータのためのジェネレーティブデザイン技術 図4
  • 特許-ソフトロボットマニピュレータのためのジェネレーティブデザイン技術 図5
  • 特許-ソフトロボットマニピュレータのためのジェネレーティブデザイン技術 図6
  • 特許-ソフトロボットマニピュレータのためのジェネレーティブデザイン技術 図7
  • 特許-ソフトロボットマニピュレータのためのジェネレーティブデザイン技術 図8
  • 特許-ソフトロボットマニピュレータのためのジェネレーティブデザイン技術 図9
  • 特許-ソフトロボットマニピュレータのためのジェネレーティブデザイン技術 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-01-27
(45)【発行日】2023-02-06
(54)【発明の名称】ソフトロボットマニピュレータのためのジェネレーティブデザイン技術
(51)【国際特許分類】
   B25J 17/00 20060101AFI20230130BHJP
【FI】
B25J17/00 L
【請求項の数】 12
(21)【出願番号】P 2021156405
(22)【出願日】2021-09-27
(65)【公開番号】P2022061011
(43)【公開日】2022-04-15
【審査請求日】2021-09-27
(31)【優先権主張番号】63/087,840
(32)【優先日】2020-10-05
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】17/344,710
(32)【優先日】2021-06-10
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】500280087
【氏名又は名称】オートデスク,インコーポレイテッド
(74)【代理人】
【識別番号】100078282
【弁理士】
【氏名又は名称】山本 秀策
(74)【代理人】
【識別番号】100113413
【弁理士】
【氏名又は名称】森下 夏樹
(72)【発明者】
【氏名】ヒョンミン チョン
(72)【発明者】
【氏名】メヘラン エブラヒミ
【審査官】杉山 悟史
(56)【参考文献】
【文献】国際公開第2020/115479(WO,A1)
【文献】国際公開第2020/018468(WO,A1)
【文献】特開2020-049648(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 1/00 ~ 21/02
(57)【特許請求の範囲】
【請求項1】
連続体ロボットのための設計を生成するためのコンピュータ実装方法であって、
前記連続体ロボットのための第1の複数の候補設計を生成することであって、前記第1の複数の候補設計に含まれる各候補設計が、設計パラメータのセットの値の第1のセットに基づいている、ことと、
前記第1の複数の候補設計に含まれる各候補設計の第1の性能値を決定することと、
少なくとも部分的に前記第1の性能値に基づいて、前記第1の複数の候補設計から候補設計のサブセットを選択することと、
前記候補設計のサブセットに基づいて、前記連続体ロボットのための第2の複数の候補設計を生成することであって、前記第2の複数の候補設計に含まれる各候補設計が、前記設計パラメータのセットの値の第2のセットに基づいている、こと
を含む法。
【請求項2】
前記設計パラメータのセットが、候補設計に含まれる連続体関節の数、前記候補設計に含まれる各連続体関節の最小曲げ半径、前記候補設計に含まれる各連続体関節と関連する剛性部分の長さ、または前記候補設計に含まれる各連続体関節の真直ぐにした長さのうちの少なくとも1つを含む、請求項1に記載のコンピュータ実装方法。
【請求項3】
前記第1の性能値が、前記連続体ロボットと関連する客観的基準、前記連続体ロボットと関連する性能基準、前記第1の複数の候補設計に含まれる前記候補設計により到達可能である作業空間の領域、または前記第1の複数の候補設計に含まれる前記候補設計によって実行できる前記作業空間内の軌道のうちの少なくとも1つに基づいている、請求項1に記載のコンピュータ実装方法。
【請求項4】
前記連続体ロボットと関連する前記客観的基準が、前記連続体ロボットに含まれる連続体関節の総アーム長、トルク係数、総重量、または数のうちの少なくとも1つを含む、請求項3に記載のコンピュータ実装方法。
【請求項5】
前記連続体ロボットと関連する前記性能基準が、到着可能性係数または軌道係数のうちの少なくとも1つを含む、請求項3に記載のコンピュータ実装方法。
【請求項6】
前記第1の性能値を決定することが、フォワードキネマティクスによって前記作業空間の前記領域の第1の部分の到着可能性、及びインバースキネマティクスによって前記作業空間の前記領域の第2の部分の到着可能性を決定することを含むハイブリッド手法を実行することを含む、請求項5に記載のコンピュータ実装方法。
【請求項7】
前記第1の複数の候補設計を生成することが、前記少なくとも1つの設計パラメータの制約に適合する前記値の第1のセットの値を計算することを含む、請求項6に記載のコンピュータ実装方法。
【請求項8】
前記少なくとも1つの設計パラメータの制約が、前記連続体ロボットに含まれる連続体関節の最大数、前記連続体ロボットに含まれる連続体関節の最小数、前記連続体ロボットに含まれる連続体関節の必要な数、前記連続体ロボットの最大総アーム長、前記連続体ロボットと作業空間との間の相対位置、または前記作業空間の形状のうちの少なくとも1つを含む、請求項6に記載のコンピュータ実装方法。
【請求項9】
前記第1の複数の候補設計を生成することが、前記第1の複数の候補設計に含まれる候補設計ごとに、グローバル最適化プロセスに基づいて前記値の第1のセットを計算することを含む、請求項1に記載のコンピュータ実装方法。
【請求項10】
前記グローバル最適化プロセスが、前記連続体ロボットと関連する複数の客観的基準に基づく目的関数を含む、請求項9に記載のコンピュータ実装方法。
【請求項11】
プロセッサによる実行時に、前記プロセッサに、
連続体ロボットのための第1の複数の候補設計を生成するステップであって、前記第1の複数の候補設計に含まれる各候補設計が、設計パラメータのセットの値の第1のセットに基づいている、ステップと、
前記第1の複数の候補設計に含まれる各候補設計の第1の性能値を決定するステップと、
少なくとも部分的に前記第1の性能値に基づいて、前記第1の複数の候補設計から候補設計のサブセットを選択するステップと、
前記候補設計のサブセットに基づいて、前記連続体ロボットのための第2の複数の候補設計を生成するステップであって、前記第2の複数の候補設計に含まれる各候補設計が、前記設計パラメータのセットの値の第2のセットに基づいている、ステップと
を実行させる命令を記憶する非一時的なコンピュータ可読媒体。
【請求項12】
システムであって、
命令を記憶するメモリと、
前記メモリに通信可能に結合され、前記命令を実行するときに、
連続体ロボットのための第1の複数の候補設計を生成するステップであって、前記第1の複数の候補設計に含まれる各候補設計が、設計パラメータのセットの値の第1のセットに基づいている、ステップと、
前記第1の複数の候補設計に含まれる各候補設計の第1の性能値を決定するステップと、
少なくとも部分的に前記第1の性能値に基づいて、前記第1の複数の候補設計から候補設計のサブセットを選択するステップと、
前記候補設計のサブセットに基づいて、前記連続体ロボットのため第2の複数の候補設計を生成するステップであって、前記第2の複数の候補設計に含まれる各候補設計が、前記設計パラメータのセットの値の第2のセットに基づいている、ステップと
を実行するように構成されたプロセッサと
を備えるステム。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本願は、2020年10月5日に出願され、シリアル番号第63/087,840号を有する「GENERATIVE DESIGN OF SOFT ROBOTIC ARMS」と題する米国仮特許出願の優先権を主張する。本関連出願の主題は、参照により本明細書に組み込まれる。
【背景技術】
【0002】
様々な実施形態の分野
様々な実施形態は、一般に、コンピュータサイエンス及びロボティクスに関し、より詳細には、ソフトロボットマニピュレータのためのジェネレーティブデザイン技術に関する。
【0003】
関連技術の説明
ロボットは、多くの場合、高速反復を必要とするタスク、人間にとっては危険な場合があるタスク、及び/または高精度を必要とするタスクに用いられる。例えば、ロボットは、人間にとって危険である生産用途及び環境で頻繁に実装される。一般的に、ロボットは、自動化または半自動化され、プログラム可能であり、複雑な平面的な移動または3次元の移動を可能とする機械である。多くの従来のロボットは、剛性コンポーネント(例えば、アクチュエータ、マニピュレータ、及びエンドエフェクタ)で実装されるが、器用さ、可撓性、及び適応性を改善するために、連続体ロボット(「ソフトロボット」とも呼ばれる)が開発されてきた。
【0004】
連続体ロボットは、通常、有限長に沿って連続して曲がることができる1つ以上の関節を含む。これらの連続的に可撓性のある関節の設計及び機能は、象の鼻及びタコの足などの曲がりくねった動物の付属器官によってインスピレーションを得ている。連続的に可撓性のある関節によって与えられる追加の可撓性により、連続体ロボットは、雑然とした環境での作業に理想的になり、従来のより剛性のロボットに比較して、連続体ロボットは、その周囲と相互作用する際により適応できるようになる。例えば、動作中、連続体ロボットは、近傍の物体の周りに到達する、またはそれ以外の場合、衝突を回避するためにその構成を修正することができる。
【0005】
連続体ロボットの1つの欠点は、特定の動作状況のために適切なロボット設計を開発することがきわめて困難であり、多数の設計パラメータ、性能要件、及び任意の所与の動作状況と関連する制約により完成するのに数週間かかる場合があるという点である。例えば、連続体ロボットの各関節について、連続体ロボットのエンドエフェクタは、ターゲットにした軌道を実行する、及び/またはターゲットにした作業空間の特定の領域に到達することを可能にする、長さ及び必要な最小曲げ半径を決定しなければならない。さらに、器用さ(例えば、連続体ロボットが複数の向きを有するターゲットに到達することができるかどうか)、操作性(例えば、ロボット構成の機能として複数の点に到達する能力)、及び/または連続体ロボットを操作するために必要となる動力/トルクなど、連続体ロボットの1つ以上の性能要件を考慮する場合がある。さらに、連続体ロボット設計は、通常、設計、つまり全体的な設計プロセスの複数の反復を伴う手順を終了するために、(連続体ロボットの関節の長さ、重量、及び/または数などの)1つ以上の客観的基準に関して最適化される。
【0006】
連続体ロボットのもう1つの欠点は、従来の設計プロセス、広範囲なプロセスでさえ、多くの場合、所与の動作状況に最適な設計解決策を作り出すことができないという点である。例えば、従来の設計プロセスによって生成された最終的なロボット設計は、最大許容ロボットアーム長または重量を超えないなど、特定の最小の性能目的を満たし得るが、典型的なロボット設計は、比較的に少数の設計プロセス反復によって生成されるため、通常、妥当なレベルの粒度で包括的な設計空間を探査することはできない。結果として、従来の設計手法を使用して連続体ロボットを設計するとき、多くのより優れた性能の設計解決策を検討し得ない。
【0007】
上記が示すように、この技術で必要とされているのは、連続体ロボットのための設計を生成するためのより効果的な技術である。
【発明の概要】
【課題を解決するための手段】
【0008】
連続体ロボットのための設計を生成するためのコンピュータ実装方法は、連続体ロボットのための第1の複数の候補設計を生成することであって、第1の複数の候補設計に含まれる各候補設計は、設計パラメータのセットの値の第1のセットに基づく、生成することと、第1の複数の候補設計に含まれる各候補設計の第1の性能値を決定することと、少なくとも部分的に第1の性能値に基づいて、第1の複数の候補設計から候補設計のサブセットを選択することと、候補設計のサブセットに基づいて、連続体ロボットの第2の複数の候補設計を生成することであって、第2の複数の候補設計に含まれる各候補設計は、設計パラメータのセットの値の第2のセットに基づく、生成することとを含む。
【0009】
従来の技術に比較して、開示されている技術の少なくとも1つの技術的な優位点は、開示された技術を用いると、ロボティクス専門家が広範囲な運動解析を実行することなく、連続体ロボットのための1つ以上の設計を自動的に生成できる点である。別の優位点は、開示された技術を使用して生成される最終的な設計が、所与の動作状況と関連する異なる設計パラメータの広範囲の値に基づく点である。したがって、開示された技術によって、従来の設計プロセスに比較して、全体的な設計空間をより包括的に探査することが可能になる。結果的に、開示された技術は、従来の設計プロセスに比較して、連続体ロボットにとってより優れた性能の設計解決策を生成する可能性を大幅に高める。これらの技術的な優位点は、従来の技術の手法に優る1つ以上の技術的な進展をもたらす。
【0010】
上記に列挙した、様々な実施形態の特徴を詳細に理解することができるように、上記に簡略に要約した本発明の概念のより具体的な説明は、そのいくつかを添付図面に示す様々な実施形態を参照することによって得られ得る。しかしながら、添付図面が本発明の概念の典型的な実施形態しか示しておらず、したがっていかなる方法によっても範囲を限定すると見なされるべきではなく、他に等しく効果的な実施形態があることに留意されたい。
例えば、本願は以下の項目を提供する。
(項目1)
連続体ロボットのための設計を生成するためのコンピュータ実装方法であって、
上記連続体ロボットのための第1の複数の候補設計を生成することであって、上記第1の複数の候補設計に含まれる各候補設計が、設計パラメータのセットの値の第1のセットに基づく、上記生成することと、
上記第1の複数の候補設計に含まれる各候補設計の第1の性能値を決定することと、
少なくとも部分的に上記第1の性能値に基づいて、上記第1の複数の候補設計から候補設計のサブセットを選択することと、
上記候補設計のサブセットに基づいて、上記連続体ロボットのための第2の複数の候補設計を生成することであって、上記第2の複数の候補設計に含まれる各候補設計が、上記設計パラメータのセットの値の第2のセットに基づく、上記生成することと
を含む、上記方法。
(項目2)
上記設計パラメータのセットが、候補設計に含まれる連続体関節の数、上記候補設計に含まれる各連続体関節の最小曲げ半径、上記候補設計に含まれる各連続体関節と関連する剛性部分の長さ、または上記候補設計に含まれる各連続体関節の真直ぐにした長さのうちの少なくとも1つを含む、上記項目に記載のコンピュータ実装方法。
(項目3)
上記第1の性能値が、上記連続体ロボットと関連する客観的基準、上記連続体ロボットと関連する性能基準、上記第1の複数の候補設計に含まれる上記候補設計により到達可能である作業空間の領域、または上記第1の複数の候補設計に含まれる上記候補設計によって実行できる上記作業空間内の軌道のうちの少なくとも1つに基づく、上記項目のいずれか一項に記載のコンピュータ実装方法。
(項目4)
上記連続体ロボットと関連する上記客観的基準が、上記連続体ロボットに含まれる連続体関節の総アーム長、トルク係数、総重量、または数のうちの少なくとも1つを含む、上記項目のいずれか一項に記載のコンピュータ実装方法。
(項目5)
上記連続体ロボットと関連する上記性能基準が、到着可能性係数または軌道係数のうちの少なくとも1つを含む、上記項目のいずれか一項に記載のコンピュータ実装方法。
(項目6)
上記第1の性能値を決定することが、フォワードキネマティクスによって上記作業空間の上記領域の第1の部分の到着可能性、及びインバースキネマティクスによって上記作業空間の上記領域の第2の部分の到着可能性を決定することを含むハイブリッド手法を実行することを含む、上記項目のいずれか一項に記載のコンピュータ実装方法。
(項目7)
上記第1の複数の候補設計を生成することが、上記少なくとも1つの設計パラメータの制約に適合する上記値の第1のセットの値を計算することを含む、上記項目のいずれか一項に記載のコンピュータ実装方法。
(項目8)
上記少なくとも1つの設計パラメータの制約が、上記連続体ロボットに含まれる連続体関節の最大数、上記連続体ロボットに含まれる連続体関節の最小数、上記連続体ロボットに含まれる連続体関節の必要な数、上記連続体ロボットの最大総アーム長、上記連続体ロボットと作業空間との間の相対位置、または上記作業空間の形状のうちの少なくとも1つを含む、上記項目のいずれか一項に記載のコンピュータ実装方法。
(項目9)
上記第1の複数の候補設計を生成することが、上記第1の複数の候補設計に含まれる候補設計ごとに、グローバル最適化プロセスに基づいて上記値の第1のセットを計算することを含む、上記項目のいずれか一項に記載のコンピュータ実装方法。
(項目10)
上記グローバル最適化プロセスが、上記連続体ロボットと関連する複数の客観的基準に基づく目的関数を含む、上記項目のいずれか一項に記載のコンピュータ実装方法。
(項目11)
プロセッサによる実行時に、上記プロセッサに、
連続体ロボットのための第1の複数の候補設計を生成するステップであって、上記第1の複数の候補設計に含まれる各候補設計が、設計パラメータのセットの値の第1のセットに基づく、上記生成するステップと、
上記第1の複数の候補設計に含まれる各候補設計の第1の性能値を決定するステップと、
少なくとも部分的に上記第1の性能値に基づいて、上記第1の複数の候補設計から候補設計のサブセットを選択するステップと、
上記候補設計のサブセットに基づいて、上記連続体ロボットのための第2の複数の候補設計を生成するステップであって、上記第2の複数の候補設計に含まれる各候補設計が、上記設計パラメータのセットの値の第2のセットに基づく、上記生成するステップと
を実行させる命令を記憶する非一時的なコンピュータ可読媒体。
(項目12)
上記第1の複数の候補設計に含まれる各候補設計の上記第1の性能値を決定することが、少なくとも1つの連続体関節を含むロボットのキネマティクスモデルに関して各候補設計を評価するための1つ以上の操作を実行することを含む、上記項目に記載の非一時的なコンピュータ可読媒体。
(項目13)
上記設計パラメータのセットの上記値の第1のセットが、上記設計パラメータのセットに含まれる少なくとも1つの設計パラメータの複数の値を含み、上記設計パラメータのセットの上記値の第2のセットが、上記設計パラメータのセットに含まれる少なくとも1つの設計パラメータの複数の値を含む、上記項目のいずれか一項に記載の非一時的なコンピュータ可読媒体。
(項目14)
上記設計パラメータのセットが、候補設計に含まれる連続体関節の数、上記候補設計に含まれる各連続体関節の最小曲げ半径、上記候補設計に含まれる各連続体関節と関連する剛性部分の長さ、または上記候補設計に含まれる各連続体関節の真直ぐにした長さのうちの少なくとも1つを含む、上記項目のいずれか一項に記載の非一時的なコンピュータ可読媒体。
(項目15)
上記第1の性能値が、上記連続体ロボットと関連する客観的基準、上記連続体ロボットと関連する性能基準、上記第1の複数の候補設計に含まれる上記候補設計により到達可能である作業空間の領域、または上記第1の複数の候補設計に含まれる上記候補設計によって実行できる上記作業空間内の軌道のうちの少なくとも1つに基づく、上記項目のいずれか一項に記載の非一時的なコンピュータ可読媒体。
(項目16)
上記連続体ロボットと関連する上記客観的基準が、上記連続体ロボットに含まれる連続体関節の総アーム長、トルク係数、総重量、または数のうちの少なくとも1つを含む、上記項目のいずれか一項に記載の非一時的なコンピュータ可読媒体。
(項目17)
上記連続体ロボットと関連する上記性能基準が、到着可能性係数または軌道係数のうちの少なくとも1つを含む、上記項目のいずれか一項に記載の非一時的なコンピュータ可読媒体。
(項目18)
上記第1の複数の候補設計に含まれる各候補設計が、少なくとも1つの設計パラメータの制約にさらに基づく、上記項目のいずれか一項に記載の非一時的なコンピュータ可読媒体。
(項目19)
上記第1の複数の候補設計を生成することが、上記少なくとも1つの設計パラメータの制約に適合する上記値の第1のセットの値を計算することを含む、上記項目のいずれか一項に記載の非一時的なコンピュータ可読媒体。
(項目20)
システムであって、
命令を記憶するメモリと、
上記メモリに通信可能に結合され、上記命令を実行するときに、
連続体ロボットのための第1の複数の候補設計を生成するステップであって、上記第1の複数の候補設計に含まれる各候補設計が、設計パラメータのセットの値の第1のセットに基づく、上記生成するステップと、
上記第1の複数の候補設計に含まれる各候補設計の第1の性能値を決定するステップと、
少なくとも部分的に上記第1の性能値に基づいて、上記第1の複数の候補設計から候補設計のサブセットを選択するステップと、
上記候補設計のサブセットに基づいて、上記連続体ロボットのため第2の複数の候補設計を生成するステップであって、上記第2の複数の候補設計に含まれる各候補設計が、上記設計パラメータのセットの値の第2のセットに基づく、上記生成するステップと
を実行するように構成されたプロセッサと
を備える、上記システム。
(摘要)
連続体ロボットのための設計を生成するためのコンピュータ実装方法は、連続体ロボットのための第1の複数の候補設計を生成することであって、第1の複数の候補設計に含まれる各候補設計が、設計パラメータのセットの値の第1のセットに基づく、生成することと、第1の複数の候補設計に含まれる各候補設計の第1の性能値を決定することと、少なくとも部分的に第1の性能値に基づいて、第1の複数の候補設計から候補設計のサブセットを選択することと、候補設計のサブセットに基づいて、連続体ロボットのための第2の複数の候補設計を生成することであって、第2の複数の候補設計に含まれる各候補設計が、設計パラメータのセットの値の第2のセットに基づく、生成することとを含む。
【図面の簡単な説明】
【0011】
図1】様々な実施形態の1つ以上の態様を実装するように構成されたジェネレーティブデザインシステムを示す。
図2】多様な実施形態に係る、連続体ロボットの概念図である。
図3】様々な実施形態に係る、図2の連続体ロボットのより詳細な図である。
図4】様々な実施形態に係る、図2の連続体ロボットの別のより詳細な図である。
図5】様々な実施形態に係る、図2の連続体ロボットのさらに別のより詳細な図である。
図6】様々な実施形態に係る、連続体ロボット及び関連する作業空間の平面図である。
図7】様々な実施形態に係る、図6の作業空間に関する連続体ロボットの到達可能性係数を概略で示す。
図8】様々な実施形態に係る、連続体ロボット及びそれと関連するエンドエフェクタ軌道を概略で示す。
図9】様々な実施形態に係る、連続体ロボットの1つ以上の設計を生成するための方法ステップのフローチャートを説明する。
図10】様々な実施形態の1つ以上の態様を実装するように構成されたコンピューティングデバイスのブロック図である。
【発明を実施するための形態】
【0012】
明確にするために、図の間で共通である同一の要素を明示するために、該当する場合は、同一の参照番号が使用されている。一実施形態の特徴は、さらに列挙することなく、他の実施形態に組み込み得ることが企図される。
【0013】
以下の説明では、様々な実施形態のより完全な理解を与えるために多数の具体的な詳細を説明する。しかしながら、これらの具体的な詳細の1つ以上がなくても、本発明の概念を実施し得ることは、当業者には明らかである。
【0014】
連続体ロボット設計の設計入力
図1は、様々な実施形態の1つ以上の態様を実装するように構成されたジェネレーティブデザインシステム100を示す。ジェネレーティブデザインシステム100は、設計入力101の特定のセットに1つ以上の連続体ロボット出力設計105を生成するように構成される。いくつかの実施形態では、設計入力101は1つ以上のユーザー入力を介してジェネレーティブデザインシステム100に提供される。特定の設計問題について、設計入力101は、連続体ロボットのための候補設計の各反復を改善するための複数の設計パラメータ及び1つ(または通常は複数の)客観的基準を含む。さらに、いくつかの実施形態では、設計入力101は、潜在的な各連続体ロボット設計の性能を決定するための1つ以上の設計制約及び/または1つ以上の性能基準を含む。候補設計を生成することと関連する特定の例示的な設計パラメータは、図2図5と併せて以下に説明され、候補設計を生成することと関連する特定の例示的な設計制約は、図6と併せて以下に説明され、候補設計を生成することと関連する特定の客観的基準は、図5と併せて以下に説明され、候補設計を評価することと関連する特定の性能基準は、図7図8と併せて以下に説明される。
【0015】
設計入力101に含まれる各設計パラメータは、異なる潜在的な設計を生成するために変えることができる。連続体ロボット設計の場合、設計入力101に含まれる設計パラメータは、連続体ロボット設計の異なるインスタンスを生成するために変えることができる連続体ロボットの特定の特徴を示す。例えば、いくつかの実施形態では、そのような設計パラメータは、連続体ロボット設計に含まれる連続体関節の総数、連続体ロボット設計に含まれる各連続体関節の利用可能最小曲げ半径、候補設計に含まれる各連続体関節の真直ぐにした長さなどを含む場合がある。
【0016】
図2は、様々な実施形態に係る連続体ロボット200の概念図であり、図3は、様々な実施形態に係る連続体ロボット200のより詳細な図である。連続体ロボット200は、1つ以上の反復するタスク、危険なタスク、及び/または高精度タスクを実行するように構成されたロボット、機械、またはデバイスのための設計である場合がある。そのようなタスクは、製造、危険な環境、探査、検査及び/またはそのようなものと関連する場合があり、1人以上の人間によって実行されるタスク及び/またはアクションに加えてまたはタスク及び/またはアクションの代わりに実行される場合がある。いくつかの実施形態では、連続体ロボット200は、事前にプログラムされた動き及び/または操作などの特定のユーザー入力を用いて動作するように構成されたロボット、機械、またはデバイスである。代わりにまたは加えて、いくつかの実施形態では、そのようなロボット、機械、またはデバイスは、例えばセンサ(図示せず)から受け取るセンサ入力に応えて、自律的に動作するように構成される。
【0017】
連続体ロボット200は、1つ以上の連続体関節を含み、連続体関節の各々は操作中に形状を変化させるように構成された「ソフトな」つまり可撓性のある関節である。したがって、各連続体関節は、一般に剛性のままではなく、動作中常に同じ形状を有さない。代わりに、連続体ロボット200に含まれる各連続体関節は、連続体関節の剛性基部に対して、連続体関節の剛性上部のターゲットとされる動き及び向きを発生させるために特定のターゲット方向で特定のターゲット曲げ半径に変形するように構成される。
【0018】
図2及び図3に示す実施形態では、連続体ロボット200は、図示するように連続して結合された3つの連続体関節210、220、及び230、ならびにエンドエフェクタ240を含む。連続体関節210は、基部211、背骨212、及び上部213を含み、連続体関節220は、基部221、背骨222、及び上部223を含み、連続体関節230は、基部231、背骨232、及び上部233を含む。さらに、図2及び図3に示す実施形態では、連続体関節210、220、及び230は、各々、剛性部分及び選択的に変形可能な部分を含む。具体的には、基部211、基部221、基部231、上部213、上部223、及び上部233は真直ぐかつ剛性の部分であり、背骨212、背骨222、及び背骨232は、可撓性があり、選択的に変形可能な部分である。
【0019】
いくつかの実施形態では、背骨212は、ターゲット曲げ半径212Rまで曲がり、それによって基部211に対する上部213の位置及び向きを修正するように構成される。いくつかの実施形態では、背骨212は、ターゲット曲げ半径212Rが、最小曲げ半径から無限の最大曲げ半径まで変化できるように構成され、つまり背骨212は真直ぐなセグメントとして構成される。一般に、連続体ロボット200の特定の構成での最小曲げ半径の値は、背骨212の様々なコンポーネントの材料特性、及び/または背骨212の様々なコンポーネントの形態及び物理的寸法などの背骨212の機械的設計の詳細に基づいている。同様に、いくつかの実施形態では、背骨222は、ターゲット曲げ半径222Rまで曲がり、それによって基部221に対する上部223の位置及び向きを修正するように構成され、背骨232は、ターゲット曲げ半径232Rまで曲がり、それによって基部231に対する上部233の位置及び向きを修正するように構成される。背骨212、背骨222、及び/または背骨232を選択的に曲げることによって、エンドエフェクタ240を、連続体ロボット200に基づいて3次元空間内のターゲット位置に配置し、3次元空間内でのターゲット向きで配向することができる。結果として、連続体ロボットは、連続体ロボットに近接する3次元空間に位置する作業空間(図示せず)のいくつかまたはすべての部分にアクセスすることができる。
【0020】
いくつかの実施形態では、背骨212、背骨222、及び/または背骨232を選択的に曲げることは、例えばコア要素に沿って配列された空気圧セルの空気圧作動によって可能になる。したがって、図2及び図3に示す実施形態では、背骨212の選択的な曲げは、背骨212のコア要素216に沿って配列された空気圧セル215の空気圧作動によって可能になり、背骨222の選択的な曲げは、背骨222のコア要素226に沿って配列された空気圧セル225の空気圧作動によって可能になり、背骨232の選択的な曲げは、背骨232のコア要素236に沿って配列された空気圧セル235の空気圧作動によって可能になる。そのような実施形態では、コア要素に沿って特定のセルを選択的に膨張及び収縮させることによって、コア要素は、特定のターゲット曲げ半径で曲がる。他の実施形態では、背骨212、背骨222、及び背骨232の類似した曲げを可能にするために、背骨212、背骨222、及び背骨232に含まれる任意の他の技術的に実現可能なアクチュエータを用いることができる。
【0021】
図2及び図3に示す実施形態では、ターゲット曲げ半径212R、ターゲット曲げ半径222R、及びターゲット曲げ半径232Rは、各々同じ平面内に存在すると示されている。実際には、背骨212、背骨222、及び/または背骨232の選択的な曲げは、2次元に制限されておらず、3次元空間でも発生し得る。
【0022】
いくつかの実施形態では、連続体ロボット200と関連する設計パラメータは、候補設計に含まれる連続体関節の数、及び候補設計に含まれる各連続体関節の剛性部分(複数可)の長さ201の1つ以上を含む。図2及び図3に示す実施形態では、連続体ロボット200に含まれる連続体関節の数は3であるが、他の候補設計はより多くのまたはより少ない連続体関節を有する場合がある。さらに、図2及び図3に示す実施形態では、基部211、基部221、基部231、上部213、上部223、及び上部233の長さ201は、同じ値である。他の実施形態では、長さ201は、その中に含まれる各剛性部分の特定の連続体ロボット200で変化する場合がある。さらにまたは代わりに、いくつかの実施形態では、連続体ロボット200と関連する設計パラメータは、候補設計に含まれる各連続体関節の真直ぐにした長さを含む。連続体関節の真直ぐにした長さの実施例は、図4に示される。図4は、様々な実施形態に係る連続体ロボットの別のより詳細な図である。
【0023】
上記のように、特定の設計問題の場合、図1の設計入力101は、1つ以上の設計制約を含む場合がある。一般的に、そのような設計制約は、特定の設計問題のためにジェネレーティブデザインシステム100によって生成される候補ロボット設計の1つ以上の態様に対して課される。例えば、いくつかの実施形態では、設計入力101に含まれる1つ以上の設計制約は、候補ロボット設計の特定の特徴の寸法制限である。そのような寸法制限の実施例は、図5に示される。
【0024】
図5は、様々な実施形態に係る連続体ロボット200の別の図である。図5に示す実施形態では、示される寸法制限は、候補連続体ロボット設計の最大総アーム長501、候補連続体ロボット設計に含まれるいくつかのまたはすべての連続体関節の最小曲げ半径502、候補連続体ロボット設計に含まれる各連続体関節のいくつかのまたはすべての剛性部分の最大長503、及び候補連続体ロボット設計に含まれる各連続体関節の真直ぐにした最大長504を含む。上述の寸法制限に加えて、設計入力101に含まれる場合がある他の設計制約は、候補連続体ロボット設計に含まれる連続体関節の最大数、候補連続体ロボット設計に含まれる連続体関節の最小数、候補連続体ロボット設計に含まれる連続体関節の必要な数、候補連続体ロボット設計の最大許容重量及び/またはそのようなものである。
【0025】
いくつかの実施形態では、設計入力101に含まれる1つ以上の設計制約は、候補連続体ロボット設計により到達可能である作業空間と関連付けられている。そのような設計制約の実施例は、図6に示されている。図6は、様々な実施形態に係る、連続体ロボット200及び関連する作業空間601に基づく連続体ロボット600の平面図である。図6に示される実施形態では、連続体ロボット600は、設計入力101に含まれる情報に従って、基本場所602にある作業空間601に近接して配置される。作業空間601は、連続体ロボット600によってアクセスされ、複数の場所603(ボクセルとも呼ぶ)に離散化された3次元領域を表す。図6では、作業空間601は、明確にするために2次元領域として示されるが、実際には、作業空間601は、通常、場所603の3次元ボリュームである。
【0026】
作業空間601のいくつかまたはすべてにアクセスする連続体ロボット600の能力は、一般に、連続体ロボット600の各連続体関節のサイズ、数、及び最小曲げ半径を含む、連続体ロボット600の構成の関数である。また、作業空間601のいくつかまたはすべてにアクセスする連続体ロボット600の能力は、作業空間601の形状、ならびに作業空間601及び基本場所602の相対的な位置決めの関数でもある。したがって、いくつかの実施形態では、作業空間601と関連する設計制約が、作業空間601の形状、ならびに作業空間601及び基本場所602の相対的な位置決めを含む。
【0027】
上記のように、特定の設計問題の場合、図1の設計入力101は、ジェネレーティブデザインシステム100によって生成される候補設計の各反復を改善するための1つ以上の客観的基準を含み得る。いくつかの実施形態では、ジェネレーティブ設計システム100は、候補設計の新しい反復を選択するときにグローバル最適化プロセスにおいてそのような客観的基準を使用する。つまり、グローバル最適化プロセスの反対関数は、客観的基準に基づいている。したがって、そのような実施形態では、候補設計の新しい反復の設計パラメータ値は、目的関数、及びジェネレーティブデザインシステム100によって生成される候補設計の1つ以上の以前の反復の設計パラメータ値に基づいて生成される。
【0028】
いくつかの実施形態では、設計入力101に含まれる1つ以上の客観的基準は、候補設計の最大総アーム長、候補設計のトルク係数、候補設計の重量、及び候補設計に含まれる連続体関節の数の1つ以上を含む。そのような実施形態では、上記の客観的基準のいくつかまたはすべてを削減すると、一般に、特定の動作状況のための指定された設計目標が満たされるだけではなく、より高品質の設計、つまりより小さく、受けるトルクがより低く、より軽量、及び/またはより少ない連続体関節を有する候補設計が生じる。結果的に、そのような客観的基準に基づいて目的関数の最小化を実行すると、候補設計の以前の反復よりもより高品質である候補設計の新しい反復の設計パラメータ値の選択が可能になる。
【0029】
候補連続体ロボット設計の最大総アーム長501の実施例は、図5の最大総アーム長501によって示されている。いくつかの実施形態では、候補設計のトルク係数は、エンドエフェクタ(または候補設計のなんらかの他のコンポーネント)が、候補設計の最大リーチを提供する構成、作業空間の最も遠い場所にアクセスできるようにする構成などの指定された構成にあるときのトルクの評価基準である。そのような実施形態では、トルク係数は、候補設計の各連続体関節の基部でのトルク、候補設計の特定の連続体関節の基部でのトルク、または候補設計の関節の基部でのトルクの総和であってよい。
【0030】
上記のように、特定の設計問題の場合、図1の設計入力101は、候補連続体ロボット設計の性能を決定するための1つ以上の性能基準を含み得る。一般的に、そのような性能基準は、ジェネレーティブデザインシステム100によって生成される異なる候補設計の相対的な性能の比較を可能にする。例えば、いくつかの実施形態では、設計入力101に含まれる性能基準の実施例は、ジェネレーティブデザインシステム100によって生成される候補設計の到着可能性係数、及びジェネレーティブデザインシステム100によって生成された候補設計の軌道係数である。到達可能性係数の実施形態は、図7に併せて以下に説明され、軌道係数の実施形態は、図8に併せて以下に説明される。
【0031】
図7は、様々な実施形態に係る、作業空間701に対する特定の連続体ロボット700の到達可能性係数を概略で示す。図7では、連続体ロボット700及び作業空間701は、平面図で示されている。連続体ロボット700は、図2の連続体ロボット200などの特定の連続体ロボット設計に基づいており、設計入力101に含まれる情報に従って、基本場所702での作業空間701に近接して配置される。作業空間701は、連続体ロボット700によってアクセスされる3次元領域を表す。
【0032】
いくつかの実施形態では、連続体ロボット700の到着可能性係数は、連続体ロボット700が、作業空間701のどれほど多くに到達可能であるのか、またはそれ以外の場合、アクセス可能であるのかに基づいている。そのような実施形態では、到達可能性係数は、連続体ロボット700が、作業空間701のどれほど多くに、例えばエンドエフェクタを用いて到達できるのかを示すパーセンテージ値である場合がある。したがって、連続体ロボット700が作業空間701内のすべての場所に到達できないとき、連続体ロボット700は、1.0未満である到達可能性係数を有する。図7に示す実施形態では、連続体ロボット700が到達できない作業空間701内の場所は、クロスハッチングで示される。
【0033】
図8は、様々な実施形態に係る、連続体ロボット800、及び連続体ロボット200と関連するエンドエフェクタ軌道801を概略で示す。図8では、連続体ロボット800及びエンドエフェクタ軌道801は、3次元空間802内に示されている。連続体ロボット800は、連続体ロボット200に基づいている。エンドエフェクタ軌道801は、エンドエフェクタまたは連続体ロボット800の他の部分が従う溶接線、塗装経路、または任意の他の軌道など、連続体ロボット800の特定の動作状況と関連する指定された軌道である場合がある。いくつかの実施形態では、速度プロファイル及び/または加速度プロファイルは、エンドエフェクタ軌道801と関連付けられている。
【0034】
いくつかの実施形態では、連続体ロボット800の軌道係数は、連続体ロボット800が、エンドエフェクタ軌道801及び/または任意の関連する速度プロファイル/加速度プロファイルにどれほど厳密に従うことができるかに基づいている。他の実施形態では、連続体ロボット800の軌道係数は、連続体ロボット800がエンドエフェクタ軌跡801に従うことができるかどうかを示すバイナリ係数である。
【0035】
例示的な実施態様
図1に戻ると、ジェネレーティブデザインシステム100は、候補設計ジェネレータ110、評価エンジン120、及び順位付け選択モジュール130を含む。図1に示す実施形態では、候補設計ジェネレータ110、評価エンジン120、及び順位付け選択モジュール130は、ジェネレーティブデザインシステム100の別々のコンポーネントとして説明されている。他の実施形態では、候補設計ジェネレータ110、評価エンジン120、及び/または順位付け選択モジュール130の機能は、単一のソフトウェアアプリケーションに結合することができるか、またはそれ以外の場合構成することができる。様々な実施形態によれば、ジェネレーティブデザインシステム100は、以前の反復の候補設計とは異なる連続体ロボットの候補設計102の反復を生成し、これらは、各々、改善された到達可能性係数、軌道係数、及び/または他の性能係数を有する可能性が高い。
【0036】
候補設計ジェネレータ110は、ジェネレーティブデザインシステム100によって実行される連続体ロボットの設計及び評価の反復ごとに、連続体ロボットの1つ以上の候補設計102を生成するように構成される。一般に、候補設計ジェネレータ110は、設計入力101に基づいて候補設計102を生成する。具体的には、候補設計102ごとに、候補設計ジェネレータ110は、設計入力101に含まれる設計パラメータの値の異なるセットを決定する。
【0037】
いくつかの実施形態では、候補設計ジェネレータ110は、以前の反復の候補設計の設計パラメータの値に基づいて、1つの反復に候補設計102を生成する。そのような実施形態では、候補設計ジェネレータ110は、値の第2のセット、つまり順位付け選択モジュール130によって選択された候補設計の選択されたサブセット104の候補設計の設計パラメータの値に基づいて、候補設計102の設計パラメータの値の第1のセットを生成する。いくつかの実施形態では、値の第1のセットに含まれる値は、設計入力101に含まれる客観的基準に基づく目的関数を最小限に抑えることによって選択される。
【0038】
いくつかの実施形態では、値の第1のセットに含まれる値は、値の第2のセットに基づいて生成される確率分布から選択される。例えば、特定の設計パラメータ(例えば、特定の連続体関節の長さ)の場合、確率分布は、候補設計の選択されたサブセット104内のその特定の設計パラメータの値から生成される。そのような実施形態では、確率分布は、その特定の設計パラメータの平均値、及びその特定の設計パラメータの値の標準偏差を含み得る。したがって、候補設計ジェネレータ110は、確率分布の平均値に値が近い候補設計102の新しい反復内の特定の設計パラメータの値を選択する。他の実施形態では、候補設計ジェネレータ110は、値の第1のセットに含まれる値の任意の他の適切な確率モデルを使用して、値の第1のセットに含まれる値を、値の第2のセットに基づかせる。
【0039】
評価エンジン120は、候補設計ジェネレータ110によって生成される候補設計102ごとに1つ以上の性能値103を生成するように構成される。一般に、評価エンジン120は、到着可能性係数、軌道係数、及び/または任意の他の適切な性能基準など、設計入力101に含まれる1つ以上の性能基準に基づいて、性能値103を生成する。
【0040】
いくつかの実施形態では、評価エンジン120は、候補設計102のキネマティクスを解析するように構成されたキネマティクスソルバ121を含む。そのような実施形態では、特定の候補設計102の設計パラメータの値に基づいて、キネマティクスソルバ121は、作業空間内のどの場所に特定の候補設計102が到着可能であるのかを決定する。いくつかの実施形態では、キネマティクスソルバ121は、特定の候補設計102のインバースキネマティクスのプロセスまたは計算によってそのような場所を決定する。インバースキネマティクスソルバはこの技術で周知であり、キネマティクスソルバ121は、任意の適切なキネマティクスソルバアルゴリズムを用いることができる。
【0041】
代わりに、いくつかの実施形態では、キネマティクスソルバ121は、統計的なフォワードキネマティクス手法によって、特定の候補設計102により到達可能である場所を決定する。そのような実施形態では、特定の候補設計102の多数の構成のランダムサンプルが選択され、各ランダムサンプルが到達する場所は、簡略なフォワードキネマティクス計算によって決定される。例えば、特定の候補設計102に含まれる連続体関節ごとに、異なる偏向角度の範囲が選択される。連続体関節の異なる考えられる選択された偏向角度の考えられる各順列は、次にランダムサンプルの1つとして用いられる。1つのランダムサンプルの単一のフォワードキネマティクス計算には、1つの特定の場所のための単一のインバースキネマティクス計算よりもはるかに少ない計算リソースが必要とされることに留意されたい。結果として、所与の作業空間内の非常に多数の(例えば、百万以上)のそのようなランダムにサンプリングされた「到着可能な」場所は、所与の作業空間内の場所ごとにインバースキネマティクス計算を実行するよりもより迅速に計算することができる。
【0042】
代わりに、いくつかの実施形態では、キネマティクスソルバ121は、ハイブリッド手法によって特定の候補設計102が到達可能である場所を決定する。ハイブリッド手法では、上述の統計的な手法及びインバースキネマティクス手法の組み合わせが用いられる。したがって、そのような実施形態では、ハイブリッド手法は、連続体ロボットの到着可能性を決定するための従来の方法の新規の組み合わせである。そのような実施形態では、特定の候補設計102のランダムにサンプリングした構成が到達する場所は、フォワードキネマティクス計算によって決定される。さらに、そのようなランダムサンプリングを介して到達可能であると確認された作業空間内の場所の部分が閾値、例えば95%を超えるとき、到達可能であることがまだ確認されていない残りの場所は、インバースキネマティクスプロセスによって解析される。したがって、候補設計102が作業空間内の大部分またはすべての場所に到達する可能性が高いと思われるとき、少数の残りの場所の到達可能性は、インバースキネマティクスプロセスによって直接的に決定される。
【0043】
いくつかの実施形態では、キネマティクスソルバ121は、設計入力101に含まれる特定のエンドエフェクタ軌道を実装できるかどうかを判断する。例えば、いくつかの実施形態では、キネマティクスソルバ121は、候補設計102が特異性なくエンドエフェクタ軌道を実行できるかどうかを判断する。さらにまたは代わりに、いくつかの実施形態では、キネマティクスソルバ121は、候補設計102は、エンドエフェクタ軌道801に従うことができるのかどうか、及び/またはエンドエフェクタ軌道801と関連する速度プロファイルまたは加速度プロファイルを実装できるのかどうかを判断する。
【0044】
順位付け選択モジュール130は、1つ以上の性能値103に基づいて最も優れた性能の候補設計102を決定するように構成される。順位付け選択モジュール130は、候補設計の選択されたサブセット104を生成するようにさらに構成され、候補設計の選択されたサブセット104は、ジェネレーティブデザインシステム100によって生成される候補設計の現在の反復の最も優れた性能の候補設計102を含む。例えば、いくつかの実施形態では、候補設計102の最も優れた性能の半分または3分の1が、候補設計の選択されたサブセット104に含まれる。いくつかの実施形態では、順位付け選択モジュール130は、単一の性能値103に基づいて最も優れた性能の候補設計102を選択する。他の実施形態では、順位付け選択モジュール130は、例えば、複数の性能値103の加重和によって、複数の性能値103の組み合わせに基づいて、最も優れた性能の候補設計102を選択する。
【0045】
連続体ロボットのジェネレーティブデザイン
図9は、様々な実施形態に係る、連続体ロボットのための1つ以上の設計を生成するための方法ステップのフローチャートを説明する。方法ステップは、図1図8のシステムと併せて説明されるが、当業者は、任意の順序で方法ステップを実行するように構成された任意のシステムが、実施形態の範囲内であることを理解する。
【0046】
図示するように、コンピュータ実装方法900は、ジェネレーティブデザインシステム100が、連続体ロボットの設計入力101の特定のセットを受け取るステップ901で始まる。上記のように、設計入力101は、複数の設計パラメータ、1つ以上の客観的基準、1つ以上の設計制約、及び/または1つ以上の性能基準を含み得る。
【0047】
ステップ902で、ジェネレーティブデザインシステム100は、例えば候補設計ジェネレータ110によって連続体ロボットのための候補設計102のセットを生成する。ステップ902~905の初期反復では、候補設計ジェネレータ110は、例えば、設計入力101に含まれる各設計パラメータのランダム値を使用して、設計入力101に基づいた候補設計102のセットを生成する。ステップ902~905の後続の反復では、候補設計ジェネレータ110は、候補設計の選択されたサブセット104の候補設計の設計パラメータの値に基づいて候補設計102のセットを生成し得る。さらにまたは代わりに、ステップ902~905の後続の反復では、候補設計ジェネレータ110は、設計入力101に含まれる客観的基準に基づく目的関数を最小限に抑えることによって決定された値に基づいて、候補設計102のセットを生成し得る。
【0048】
ステップ903で、ジェネレーティブデザインシステム100は、例えば評価エンジン120によって各候補設計102の性能を評価する。いくつかの実施形態では、評価エンジンは、各候補設計102の1つ以上の性能値103を決定する。いくつかの実施形態では、到着可能性と関連する性能値103を決定するために、本明細書に説明するハイブリッド手法が、特定の候補設計102が到着可能である場所を決定するために、キネマティクスソルバ121によって用いられる。
【0049】
ステップ904で、ジェネレーティブデザインシステム100は、終了基準が満たされたかどうかを判断する。はいの場合、コンピュータ実装方法900はステップ910に進み、終了する。いいえの場合、コンピュータ実装方法900はステップ905に進む。いくつかの実施形態では、終了基準は、1つ以上の候補設計102の性能値103の閾値、または性能値103の以前の値に比較したそのような性能値103の変化の閾値である場合がある。いくつかの実施形態では、終了基準は、特定の連続体ロボットについて実行されたステップ902~905の反復の数である場合がある。いくつかの実施形態では、終了基準は、ステップ902~905の反復が特定の連続体ロボットに対して実行された閾値時間間隔である場合がある。
【0050】
ステップ905で、ジェネレーティブデザインシステム100は、例えば順序付け選択モジュール130によって候補設計のサブセット104を選択する。いくつかの実施形態では、順序付け選択モジュール130は、各候補設計102の性能値103に基づいて候補設計の選択されたサブセット104を決定する。コンピュータ実装方法900は、次に、ジェネレーティブデザインシステム100が、例えば候補設計ジェネレータ110によって連続体ロボットのための候補設計102の新しいセットを生成するステップ902に戻る。一般に、候補設計ジェネレータ110は、選択されたサブセット104に基づいて候補設計の新しいセットを生成する。
【0051】
ステップ910で、ジェネレーティブデザインシステム100は、コンピュータ実装方法900を終了する。いくつかの実施形態では、ジェネレーティブデザインシステム100は、連続ロボット出力設計105を表示する、記憶する、またはそれ以外の場合、ステップ910でユーザーに提供する。
【0052】
例示的なコンピューティングデバイス
図10は、様々な実施形態の1つ以上の態様を実装するように構成されたコンピューティングデバイス1000のブロック図である。したがって、コンピューティングデバイス1000は、コントローラ150の実装と関連するコンピューティングデバイス、及び/または連続体ロボット100と関連する任意の他のコンピューティングデバイスである場合がある。コンピューティングデバイス1000は、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、または入力を受け取り、データを処理し、制御信号を生成し、画像を表示するように構成された任意の他のタイプのコンピューティングデバイスであってよい。コンピューティングデバイス1000は、ジェネレーティブデザインシステム100、候補設計ジェネレータ110、評価エンジン120、順序付け選択モジュール130、コンピュータ実装方法900、及び/またはメモリ1010に常駐することができる他の適切なソフトウェアアプリケーションを実行するように構成される。本明細書に説明するコンピューティングデバイスが例示的であること、及び任意の他の技術的に実現可能な構成が本開示の範囲内にあることに留意されたい。
【0053】
図示するように、コンピューティングデバイス1000は、限定されるものではないが、処理ユニット1050、入/出力(I/O)デバイス1080に結合された入/出力(I/O)デバイスインタフェース1060、メモリ1010、ストレージ1030、及びネットワークインタフェース1070を接続する相互接続(バス)1040を含む。処理ユニット1050は、中央演算処理装置(CPU)、グラフィックスプロセッシングユニット(GPU)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、任意の他のタイプの処理ユニット、またはGPUと連動して動作するように構成されたCPUなどの異なる処理ユニットの組み合わせとして実装された任意の適切なプロセッサであってよい。一般的に、処理ユニット1050は、ジェネレーティブデザインシステム100、候補設計ジェネレータ110、評価エンジン120、順序付け選択モジュール130、及び/またはコンピュータ実装方法900を含む、データを処理することができる、及び/またはソフトウェアアプリケーションを実行することができる任意の技術的に実現可能なハードウェアユニットであってよい。さらに、本開示との関連で、コンピューティングデバイス1000内に示されるコンピューティング要素は、物理コンピューティングデバイス(例えば、データセンタ内のシステム)に相当する場合もあれば、コンピューティングクラウド内で実行する仮想コンピューティングインスタンスである場合もある。
【0054】
I/Oデバイス1080は、キーボード、マウス、タッチセンシティブスクリーンなどの入力を提供できるデバイス、及び表示装置1081などの出力を提供できるデバイスを含み得る。さらに、I/Oデバイス1080は、タッチスクリーン、ユニバーサルシリアルバス(USB)ポートなど、入力の受け取りと出力の提供の両方が可能なデバイスも含み得る。I/Oデバイス1080は、コンピューティングデバイス1000のエンドユーザーから様々なタイプの入力を受け取り、1つ以上のグラフィックユーザーインタフェース(GUI)などのコンピューティングデバイス1000のエンドユーザーに様々なタイプの出力、表示されたデジタル画像、及び/またはデジタルビデオを提供するように構成され得る。いくつかの実施形態では、I/Oデバイス1080の1つ以上は、コンピューティングデバイス1000をネットワーク1005に結合するように構成される。
【0055】
メモリ1010は、ランダムアクセスメモリ(RAM)モジュール、フラッシュメモリユニット、または任意の他のタイプのメモリユニット、またはそれらの組み合わせを含み得る。処理ユニット1050、I/Oデバイスインタフェース1060、及びネットワークインタフェース1070は、メモリ1010からデータを読み取り、メモリ1010にデータを書き込むように構成される。メモリ1010は、ジェネレーティブデザインシステム100、候補設計ジェネレータ110、評価エンジン120、順序付け選択モジュール130、及び/またはコンピュータ実装方法900を含む、プロセッサ1050が実行できる様々なソフトウェアプログラム、及びこのソフトウェアプログラムと関連するアプリケーションデータを含む。
【0056】
要約すると、本明細書に説明する様々な実施形態は、連続体ロボットのための1つ以上の設計を生成するための技術を提供する。実施形態では、候補設計が生成され、キネマティクスソルバを使用して、各候補設計の性能が評価される。候補設計の後続のセットは、次に、最も性能が優れた候補設計の設計パラメータの値に基づいて生成される。
【0057】
従来の技術と比較して、開示された技術の少なくとも1つの技術的な優位点は、開示された技術を用いると、ロボティクス専門家が広範囲な運動解析を実行することなく、連続体ロボットのための1つ以上の設計を自動的に生成できる点である。別の優位点は、開示された技術を使用して生成された最終的な設計が、所与の動作状況と関連する異なる設計パラメータの広範囲な値に基づく点である。したがって、開示された技術によって、従来の設計プロセスと比較して、全体的な設計空間をより包括的に探査することが可能になる。結果的に、開示された技術は、従来の設計プロセスと比較して、連続体ロボットのためのより性能が優れた設計解決策を生成する可能性を大幅に高める。これらの技術的な優位点は、従来の技術の手法に優る1つ以上の技術的な進展をもたらす。
【0058】
1.いくつかの実施形態では、連続体ロボットのための設計を生成するためのコンピュータ実装方法は、前記連続体ロボットのための第1の複数の候補設計を生成することであって、前記第1の複数の候補設計に含まれる各候補設計が、設計パラメータのセットの値の第1のセットに基づく、前記生成することと、前記第1の複数の候補設計に含まれる各候補設計の第1の性能値を決定することと、少なくとも部分的に前記第1の性能値に基づいて、前記第1の複数の候補設計から候補設計のサブセットを選択することと、前記候補設計のサブセットに基づいて、前記連続体ロボットのための第2の複数の候補設計を生成することであって、前記第2の複数の候補設計に含まれる各候補設計が、前記設計パラメータのセットの値の第2のセットに基づく、前記生成することとを含む。
【0059】
2.前記設計パラメータのセットが、候補設計に含まれる連続体関節の数、前記候補設計に含まれる各連続体関節の最小曲げ半径、前記候補設計に含まれる各連続体関節と関連する剛性部分の長さ、または前記候補設計に含まれる各連続体関節の真直ぐにした長さのうちの少なくとも1つを含む、条項1に記載のコンピュータ実装方法。
【0060】
3.前記第1の性能値が、前記連続体ロボットと関連する客観的基準、前記連続体ロボットと関連する性能基準、前記第1の複数の候補設計に含まれる前記候補設計により到達可能である作業空間の領域、または前記第1の複数の候補設計に含まれる前記候補設計によって実行できる前記作業空間内の軌道のうちの少なくとも1つに基づく、条項1または条項2に記載のコンピュータ実装方法。
【0061】
4.前記連続体ロボットと関連する前記客観的基準が、前記連続体ロボットに含まれる連続体関節の総アーム長、トルク係数、総重量、または数のうちの少なくとも1つを含む、条項1~条項3のいずれかに記載のコンピュータ実装方法。
【0062】
5.前記連続体ロボットと関連する前記性能基準が、到着可能性係数または軌道係数のうちの少なくとも1つを含む、条項1~4のいずれかに記載のコンピュータ実装方法。
【0063】
6.前記第1の性能値を決定することが、フォワードキネマティクスによって前記作業空間の前記領域の第1の部分の到着可能性、及びインバースキネマティクスによって前記作業空間の前記領域の第2の部分の到着可能性を決定することを含むハイブリッド手法を実行することを含む、条項1~条項5のいずれかに記載のコンピュータ実装方法。
【0064】
7.前記第1の複数の候補設計を生成することが、前記少なくとも1つの設計パラメータの制約に適合する前記値の第1のセットの値を計算することを含む、条項1~条項6のいずれかに記載のコンピュータ実装方法。
【0065】
8.前記少なくとも1つの設計パラメータの制約が、前記連続体ロボットに含まれる連続体関節の最大数、前記連続体ロボットに含まれる連続体関節の最小数、前記連続体ロボットに含まれる連続体関節の必要な数、前記連続体ロボットの最大総アーム長、前記連続体ロボットと作業空間との間の相対位置、または前記作業空間の形状のうちの少なくとも1つを含む、条項1~条項7のいずれかに記載のコンピュータ実装方法。
【0066】
9.前記第1の複数の候補設計を生成することが、前記第1の複数の候補設計に含まれる候補設計ごとに、グローバル最適化プロセスに基づいて前記値の第1のセットを計算することを含む、条項1~条項8のいずれかに記載のコンピュータ実装方法。
【0067】
10.前記グローバル最適化プロセスが、前記連続体ロボットと関連する複数の客観的基準に基づく目的関数を含む、条項1~条項9のいずれかに記載のコンピュータ実装方法。
【0068】
11.プロセッサによる実行時に、前記プロセッサに、連続体ロボットのための第1の複数の候補設計を生成するステップであって、前記第1の複数の候補設計に含まれる各候補設計が、設計パラメータのセットの値の第1のセットに基づく、前記生成するステップと、前記第1の複数の候補設計に含まれる各候補設計の第1の性能値を決定するステップと、少なくとも部分的に前記第1の性能値に基づいて、前記第1の複数の候補設計から候補設計のサブセットを選択するステップと、前記候補設計のサブセットに基づいて、前記連続体ロボットのための第2の複数の候補設計を生成するステップであって、前記第2の複数の候補設計に含まれる各候補設計が、前記設計パラメータのセットの値の第2のセットに基づく、前記生成するステップとを実行させる命令を記憶する非一時的なコンピュータ可読媒体。
【0069】
12.前記第1の複数の候補設計に含まれる各候補設計の前記第1の性能値を決定することが、少なくとも1つの連続体関節を含むロボットのキネマティクスモデルに関して各候補設計を評価するための1つ以上の操作を実行することを含む、条項11に記載の非一時的なコンピュータ可読媒体。
【0070】
13.前記設計パラメータのセットの前記値の第1のセットが、前記設計パラメータのセットに含まれる少なくとも1つの設計パラメータの複数の値を含み、前記設計パラメータのセットの前記値の第2のセットが、前記設計パラメータのセットに含まれる少なくとも1つの設計パラメータの複数の値を含む、条項11または条項12に記載の非一時的なコンピュータ可読媒体。
【0071】
14.前記設計パラメータのセットが、候補設計に含まれる連続体関節の数、前記候補設計に含まれる各連続体関節の最小曲げ半径、前記候補設計に含まれる各連続体関節と関連する剛性部分の長さ、または前記候補設計に含まれる各連続体関節の真直ぐにした長さのうちの少なくとも1つを含む、条項11~条項13のいずれかに記載の非一時的なコンピュータ可読媒体。
【0072】
15.前記第1の性能値が、前記連続体ロボットと関連する客観的基準、前記連続体ロボットと関連する性能基準、前記第1の複数の候補設計に含まれる前記候補設計により到達可能である作業空間の領域、または前記第1の複数の候補設計に含まれる前記候補設計によって実行できる前記作業空間内の軌道のうちの少なくとも1つに基づく、条項11~条項14のいずれかに記載の非一時的なコンピュータ可読媒体。
【0073】
16.前記連続体ロボットと関連する前記客観的基準が、前記連続体ロボットに含まれる連続体関節の総アーム長、トルク係数、総重量、または数のうちの少なくとも1つを含む、条項11~条項15のいずれかに記載の非一時的なコンピュータ可読媒体。
【0074】
17.前記連続体ロボットと関連する前記性能基準が、到着可能性係数または軌道係数のうちの少なくとも1つを含む、条項11~条項16のいずれかに記載の非一時的なコンピュータ可読媒体。
【0075】
18.前記第1の複数の候補設計に含まれる各候補設計が、少なくとも1つの設計パラメータの制約にさらに基づく、条項11~条項17のいずれかに記載の非一時的なコンピュータ可読媒体。
【0076】
19.前記第1の候補設計を生成することが、前記少なくとも1つの設計パラメータの制約に適合する前記値の第1のセットの値を計算することを含む、条項11~条項18のいずれかに記載の非一時的なコンピュータ可読媒体。
【0077】
20.命令を記憶するメモリと、前記メモリに通信で結合され、前記命令を実行するときに、連続体ロボットのための第1の複数の候補設計を生成するステップであって、前記第1の複数の候補設計に含まれる各候補設計が、設計パラメータのセットの値の第1のセットに基づく、前記生成するステップと、前記第1の複数の候補設計に含まれる各候補設計の第1の性能値を決定するステップと、少なくとも部分的に前記第1の性能値に基づいて、前記第1の複数の候補設計から候補設計のサブセットを選択するステップと、前記候補設計のサブセットに基づいて、前記連続体ロボットのための第2の複数の候補設計を生成するステップであって、前記第2の複数の候補設計に含まれる各候補設計が、前記設計パラメータのセットの値の第2のセットに基づく、前記生成するステップとを実行するように構成されたプロセッサとを備える、前記システム。
【0078】
特許請求の範囲のいずれかに列挙される請求項要素のいずれか及び/または本願に説明する任意の要素のありとあらゆる組み合わせは、いずれかの形で本発明の企図された範囲及び保護の範囲内に入る。
【0079】
様々な実施形態の説明は、例証の目的で提示されているが、包括的に、または開示される実施形態に限定されることが意図されていない。多くの修正及び変形例は、説明される実施形態の範囲及び主旨から逸脱することなく当業者には明白である。
【0080】
本実施形態の態様は、システム、方法、またはコンピュータプログラム製品として具体化され得る。したがって、本開示の態様は、完全にハードウェア実施形態、完全にソフトウェア実施形態(ファームウェア、常駐ソフトウェア、マイクロコードなどを含む)、またはすべて一般に「モジュール」、「システム」、もしくは「コンピュータ」と呼ばれる場合があるソフトウェア態様及びハードウェア態様を組み合わせた実施形態の形態をとり得る。さらに、本開示に説明する任意のハードウェア技術及び/またはソフトウェア技術、プロセス、機能、コンポーネント、エンジン、モジュール、またはシステムは、回路または回路のセットとして実装され得る。さらに、本開示の態様は、コンピュータ可読プログラムコードをその上に具現化した1つ以上のコンピュータ可読媒体(複数可)内で具現化されるコンピュータプログラム製品の形態をとってもよい。
【0081】
1つ以上のコンピュータ可読媒体(複数可)の任意の組み合わせを利用し得る。コンピュータ可読媒体は、コンピュータ可読信号媒体またはコンピュータ可読記憶媒体であってよい。コンピュータ可読記憶媒体は、例えば、電子、磁気、光学、電磁気、赤外線、または半導体のシステム、装置、もしくはデバイス、または上記の任意の適切な組み合わせであってよいが、これらに限定されるものではない。コンピュータ可読記憶媒体のより具体的な実施例(包括的ではないリスト)は、以下、つまり1つ以上のワイヤを有する電気的接続、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能PROM(EPROMまたはフラッシュメモリ)、光ファイバ、ポータブルコンパクトディスク読み取り専用メモリ(CD-ROM)、光学記憶デバイス、磁気記憶デバイス、または上記の任意の適切な組み合わせを含むであろう。本書の文脈において、コンピュータ可読記憶媒体は、命令実行システム、装置、もしくはデバイスによる使用のために、または命令実行システム、装置、もしくはデバイスと接続してプログラムを含むまたは記憶することができる任意の有形媒体であってよい。
【0082】
本開示の態様は、本開示の実施形態に係る方法、装置(システム)、及びコンピュータプログラム製品のフローチャート図及び/またはブロック図を参照して上述されている。フローチャート図及び/またはブロック図の各ブロック、及びフローチャート図及び/またはブロック図のブロックの組み合わせは、コンピュータプログラム命令によって実施できることが理解される。これらのコンピュータプログラム命令は、汎用コンピュータ、専用コンピュータ、または他のプログラム可能なデータ処理装置のプロセッサに提供され得る。命令は、コンピュータまたは他のプログラム可能データ処理装置のプロセッサによって実行されるとき、フローチャート及び/またはブロック図の1つまたは複数のブロックに指定された機能/行為の実施態様を可能にする。そのようなプロセッサは、限定ではなく、汎用プロセッサ、専用プロセッサ、アプリケーション特有プロセッサ、またはフィールドプログラマブルゲートアレイであってよい。
【0083】
図のフローチャート及びブロック図は、本開示の様々な実施形態に係るシステム、方法、装置、及びコンピュータプログラム製品の考えられる実施態様のアーキテクチャ、機能、及び動作を示す。この点で、フローチャートまたはブロック図の各ブロックは、規定された論理関数(複数可)を実装するための1つ以上の実行可能命令を含むモジュール、セグメント、またはコードの一部を表し得る。また、いくつかの代替実施態様では、ブロックで留意される機能は、図で留意される順序とは違う順序で起こり得ることを留意されたい。例えば、連続して示す2つのブロックは、実際に、実質的に同時に実行される場合もあれば、ブロックは、含まれる機能に応じて逆の順序で実行される場合もある。また、ブロック図及び/またはフローチャート図の各ブロック、及びブロック図及び/またはフローチャート図のブロックの組み合わせは、規定の機能もしくは行為、または特殊目的ハードウェア及びコンピュータ命令の組み合わせを実行する特殊目的ハードウェアベースのシステムによって実装できることに留意されたい。
【0084】
上記は本開示の実施形態を対象としているが、本開示の他の実施形態及びさらなる実施形態は、その基本的な範囲から逸脱することなく考案され得、その範囲は以下の特許請求の範囲によって決定される。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10