(57)【特許請求の範囲】
【請求項１】
コンピュータ実装方法であって、
製造される構造の構成要素間の関係を定義する値を含むモデルにアクセスすることであって、前記モデルは、少なくとも１つの構築値を含み、前記少なくとも１つの構築値は、最初、前記構造が製造され始める前には定義されず、製造されている時の前記構造の条件の観察に基づいて選択され、前記構造の前記観察された条件は、前記構造が実際に製造された時の、２つの構成要素の相対位置を含む、前記モデルにアクセスすることと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の観察された条件を判定することと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の前記観察された条件に基づいて前記構築値を選択することと、
前記選択された構築値を使用して、前記モデルに従って前記構造の前記製造を完了させることと
を含む、方法。
【請求項２】
コンピュータ実装方法であって、
製造される構造の構成要素間の関係を定義する値を含むモデルにアクセスすることであって、前記モデルは、少なくとも１つの構築値を含み、前記少なくとも１つの構築値は、最初、前記構造が製造され始める前には定義されず、製造されている時の前記構造の条件の観察に基づいて選択され、前記構造の前記観察された条件は、前記構造が実際に製造された時の、１つの構成要素の異なる構成要素に対する相対的な方位を含む、前記モデルにアクセスすることと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の観察された条件を判定することと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の前記観察された条件に基づいて前記構築値を選択することと、
前記選択された構築値を使用して、前記モデルに従って前記構造の前記製造を完了させることと
を含む、方法。
【請求項３】
コンピュータ実装方法であって、
製造される構造の構成要素間の関係を定義する値を含むモデルにアクセスすることであって、前記モデルは、少なくとも１つの構築値を含み、前記少なくとも１つの構築値は、最初、前記構造が製造され始める前には定義されず、製造されている時の前記構造の条件の観察に基づいて選択され、前記構造の前記観察された条件は、前記構造が実際に製造された時の、１つの構成要素の異なる構成要素に対する相対的なサイズを含む、前記モデルにアクセスすることと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の観察された条件を判定することと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の前記観察された条件に基づいて前記構築値を選択することと、
前記選択された構築値を使用して、前記モデルに従って前記構造の前記製造を完了させることと
を含む、方法。
【請求項４】
コンピュータ実装方法であって、
製造される構造の構成要素間の関係を定義する値を含むモデルにアクセスすることであって、前記モデルは、少なくとも１つの構築値を含み、前記少なくとも１つの構築値は、最初、前記構造が製造され始める前には定義されず、製造されている時の前記構造の条件の観察に基づいて選択され、前記構造の前記観察された条件は、前記構造が実際に製造された時の、１つの構成要素の材料特性を含む、前記モデルにアクセスすることと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の観察された条件を判定することと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の前記観察された条件に基づいて前記構築値を選択することと、
前記選択された構築値を使用して、前記モデルに従って前記構造の前記製造を完了させることと
を含む、方法。
【請求項５】
コンピュータ実装方法であって、
製造される構造の構成要素間の関係を定義する値を含むモデルにアクセスすることであって、前記モデルは、少なくとも１つの構築値を含み、前記少なくとも１つの構築値は、最初、前記構造が製造され始める前には定義されず、製造されている時の前記構造の条件の観察に基づいて選択される、前記モデルにアクセスすることと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の観察された条件を判定することと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の前記観察された条件に基づいて前記構築値を選択することと、
前記選択された構築値を使用して、前記モデルに従って前記構造の前記製造を完了させることと
を含み、
前記コンピュータ実装方法は、設計者から、グラフィカル・ユーザ・インターフェースを介して、異なる観察された条件について異なる構築値を相関させるデータを受信することをさらに含む、方法。
【請求項６】
コンピュータ実装方法であって、
製造される構造の構成要素間の関係を定義する値を含むモデルにアクセスすることであって、前記モデルは、少なくとも１つの構築値を含み、前記少なくとも１つの構築値は、最初、前記構造が製造され始める前には定義されず、製造されている時の前記構造の条件の観察に基づいて選択される、前記モデルにアクセスすることと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の観察された条件を判定することと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の前記観察された条件に基づいて前記構築値を選択することであって、前記構築値を選択することは、前記構造が実際に製造された時の、前記構造の前記観察された条件に基づいて、前記構造の２つの構成要素間の位置関係を選択することを含む、前記構築値を選択すること、
前記選択された構築値を使用して、前記モデルに従って前記構造の前記製造を完了させることと
を含む、方法。
【請求項７】
命令を記憶する非一時的コンピュータ可読ストレージ・デバイスであって、前記命令は、１つまたは複数のプロセッサによって実行されると、
製造される構造の構成要素間の関係を定義する値を含むモデルにアクセスすることであって、前記モデルは、少なくとも１つの構築値を含み、前記少なくとも１つの構築値は、最初、前記構造が製造され始める前には定義されず、製造されている時の前記構造の条件の観察に基づいて選択され、前記構造の前記観察された条件は、前記構造が実際に製造された時の、２つの構成要素の相対位置を含む、アクセスすることと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の観察された条件を判定することと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の前記観察された条件に基づいて前記構築値を選択することと、
前記選択された構築値を使用して、前記モデルに従って前記構造の前記製造を完了させることと
を含む動作の実施を引き起こす、デバイス。
【請求項８】
命令を記憶する非一時的コンピュータ可読ストレージ・デバイスであって、前記命令は、１つまたは複数のプロセッサによって実行されると、
製造される構造の構成要素間の関係を定義する値を含むモデルにアクセスすることであって、前記モデルは、少なくとも１つの構築値を含み、前記少なくとも１つの構築値は、最初、前記構造が製造され始める前には定義されず、製造されている時の前記構造の条件の観察に基づいて選択され、前記構造の前記観察された条件は、前記構造が実際に製造された時の、１つの構成要素の異なる構成要素に対する相対的な方位を含む、アクセスすることと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の観察された条件を判定することと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の前記観察された条件に基づいて前記構築値を選択することと、
前記選択された構築値を使用して、前記モデルに従って前記構造の前記製造を完了させることと
を含む動作の実施を引き起こす、デバイス。
【請求項９】
命令を記憶する非一時的コンピュータ可読ストレージ・デバイスであって、前記命令は、１つまたは複数のプロセッサによって実行されると、
製造される構造の構成要素間の関係を定義する値を含むモデルにアクセスすることであって、前記モデルは、少なくとも１つの構築値を含み、前記少なくとも１つの構築値は、最初、前記構造が製造され始める前には定義されず、製造されている時の前記構造の条件の観察に基づいて選択され、前記構造の前記観察された条件は、前記構造が実際に製造された時の、１つの構成要素の異なる構成要素に対する相対的なサイズを含む、アクセスすることと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の観察された条件を判定することと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の前記観察された条件に基づいて前記構築値を選択することと、
前記選択された構築値を使用して、前記モデルに従って前記構造の前記製造を完了させることと
を含む動作の実施を引き起こす、デバイス。
【請求項１０】
命令を記憶する非一時的コンピュータ可読ストレージ・デバイスであって、前記命令は、１つまたは複数のプロセッサによって実行されると、
製造される構造の構成要素間の関係を定義する値を含むモデルにアクセスすることであって、前記モデルは、少なくとも１つの構築値を含み、前記少なくとも１つの構築値は、最初、前記構造が製造され始める前には定義されず、製造されている時の前記構造の条件の観察に基づいて選択され、前記構造の前記観察された条件は、前記構造が実際に製造された時の、１つの構成要素の材料特性を含む、アクセスすることと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の観察された条件を判定することと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の前記観察された条件に基づいて前記構築値を選択することと、
前記選択された構築値を使用して、前記モデルに従って前記構造の前記製造を完了させることと
を含む動作の実施を引き起こす、デバイス。
【請求項１１】
命令を記憶する非一時的コンピュータ可読ストレージ・デバイスであって、前記命令は、１つまたは複数のプロセッサによって実行されると、
製造される構造の構成要素間の関係を定義する値を含むモデルにアクセスすることであって、前記モデルは、少なくとも１つの構築値を含み、前記少なくとも１つの構築値は、最初、前記構造が製造され始める前には定義されず、製造されている時の前記構造の条件の観察に基づいて選択される、アクセスすることと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の観察された条件を判定することと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の前記観察された条件に基づいて前記構築値を選択することと、
前記選択された構築値を使用して、前記モデルに従って前記構造の前記製造を完了させることと
を含む動作の実施を引き起こし、
前記動作は、設計者から、グラフィカル・ユーザ・インターフェースを介して、異なる観察された条件について異なる構築値を相関させるデータを受信することをさらに含む、デバイス。
【請求項１２】
命令を記憶する非一時的コンピュータ可読ストレージ・デバイスであって、前記命令は、１つまたは複数のプロセッサによって実行されると、
製造される構造の構成要素間の関係を定義する値を含むモデルにアクセスすることであって、前記モデルは、少なくとも１つの構築値を含み、前記少なくとも１つの構築値は、最初、前記構造が製造され始める前には定義されず、製造されている時の前記構造の条件の観察に基づいて選択される、アクセスすることと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の観察された条件を判定することと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の前記観察された条件に基づいて前記構築値を選択することであって、前記構築値を選択することは、前記構造が実際に製造された時の、前記構造の前記観察された条件に基づいて、前記構造の２つの構成要素間の位置関係を選択することを含む、前記構築値を選択することと、
前記選択された構築値を使用して、前記モデルに従って前記構造の前記製造を完了させることと
を含む動作の実施を引き起こす、デバイス。
【請求項１３】
１つまたは複数のコンピュータと、
命令を記憶する１つまたは複数のストレージ・ユニットと
を含むコンピューティング・システムであって、前記命令は、前記１つまたは複数のコンピュータによって実行されると、
製造される構造の構成要素間の関係を定義する値を含むモデルにアクセスすることであって、前記モデルは、少なくとも１つの構築値を含み、前記少なくとも１つの構築値は、最初、前記構造が製造され始める前には定義されず、製造されている時の前記構造の条件の観察に基づいて選択され、前記構造の前記観察された条件は、前記構造が実際に製造された時の、２つの構成要素の相対位置を含む、前記モデルにアクセスすることと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の観察された条件を判定することと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の前記観察された条件に基づいて前記構築値を選択することと、
前記選択された構築値を使用して、前記モデルに従って前記構造の前記製造を完了させることと
を含む動作を前記コンピューティング・システムに実施させる、システム。
【請求項１４】
１つまたは複数のコンピュータと、
命令を記憶する１つまたは複数のストレージ・ユニットと
を含むコンピューティング・システムであって、前記命令は、前記１つまたは複数のコンピュータによって実行されると、
製造される構造の構成要素間の関係を定義する値を含むモデルにアクセスすることであって、前記モデルは、少なくとも１つの構築値を含み、前記少なくとも１つの構築値は、最初、前記構造が製造され始める前には定義されず、製造されている時の前記構造の条件の観察に基づいて選択され、前記構造の前記観察された条件は、前記構造が実際に製造された時の、１つの構成要素の異なる構成要素に対する相対的な方位を含む、前記モデルにアクセスすることと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の観察された条件を判定することと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の前記観察された条件に基づいて前記構築値を選択することと、
前記選択された構築値を使用して、前記モデルに従って前記構造の前記製造を完了させることと
を含む動作を前記コンピューティング・システムに実施させる、システム。
【請求項１５】
１つまたは複数のコンピュータと、
命令を記憶する１つまたは複数のストレージ・ユニットと
を含むコンピューティング・システムであって、前記命令は、前記１つまたは複数のコンピュータによって実行されると、
製造される構造の構成要素間の関係を定義する値を含むモデルにアクセスすることであって、前記モデルは、少なくとも１つの構築値を含み、前記少なくとも１つの構築値は、最初、前記構造が製造され始める前には定義されず、製造されている時の前記構造の条件の観察に基づいて選択され、前記構造の前記観察された条件は、前記構造が実際に製造された時の、１つの構成要素の異なる構成要素に対する相対的なサイズを含む、前記モデルにアクセスすることと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の観察された条件を判定することと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の前記観察された条件に基づいて前記構築値を選択することと、
前記選択された構築値を使用して、前記モデルに従って前記構造の前記製造を完了させることと
を含む動作を前記コンピューティング・システムに実施させる、コンピューティング・システム。
【請求項１６】
１つまたは複数のコンピュータと、
命令を記憶する１つまたは複数のストレージ・ユニットと
を含むコンピューティング・システムであって、前記命令は、前記１つまたは複数のコンピュータによって実行されると、
製造される構造の構成要素間の関係を定義する値を含むモデルにアクセスすることであって、前記モデルは、少なくとも１つの構築値を含み、前記少なくとも１つの構築値は、最初、前記構造が製造され始める前には定義されず、製造されている時の前記構造の条件の観察に基づいて選択され、前記構造の前記観察された条件は、前記構造が実際に製造された時の、１つの構成要素の材料特性を含む、前記モデルにアクセスすることと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の観察された条件を判定することと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の前記観察された条件に基づいて前記構築値を選択することと、
前記選択された構築値を使用して、前記モデルに従って前記構造の前記製造を完了させることと
を含む動作を前記コンピューティング・システムに実施させる、システム。
【請求項１７】
１つまたは複数のコンピュータと、
命令を記憶する１つまたは複数のストレージ・ユニットと
を含むコンピューティング・システムであって、前記命令は、前記１つまたは複数のコンピュータによって実行されると、
製造される構造の構成要素間の関係を定義する値を含むモデルにアクセスすることであって、前記モデルは、少なくとも１つの構築値を含み、前記少なくとも１つの構築値は、最初、前記構造が製造され始める前には定義されず、製造されている時の前記構造の条件の観察に基づいて選択される、前記モデルにアクセスすることと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の観察された条件を判定することと、
前記構造が製造され始めた後、前記構造の前記製造が完了する前に、前記構造の前記観察された条件に基づいて前記構築値を選択することと、
前記選択された構築値を使用して、前記モデルに従って前記構造の前記製造を完了させることと
を含む動作を前記コンピューティング・システムに実施させ、
前記動作は、設計者から、グラフィカル・ユーザ・インターフェースを介して、異なる観察された条件について異なる構築値を相関させるデータを受信することをさらに含む、システム。
【発明の詳細な説明】
【背景技術】
【０００１】
［0001］  ロボット・システムは、とりわけ、マテリアル・ハンドリング、溶接、組立、調剤、および製造を含む応用に使用され得る。時間と共に、これらのロボット・システムが動作する形は、より知的、より効率的、かつより直観的になりつつある。ロボット・システムが、現代生活の多数の態様でますます普及するようになるにつれて、正確な構造設計および生産を提供するシステムの必要が明らかになる。したがって、そのようなシステムの需要は、モデル化技法、感知技法、ならびに構造設計および生産技法の革新の分野の開拓を助けてきた。
【発明の概要】
【０００２】
［0002］  既存のモデル化環境は、構造のパラメータの間の関係を暗黙のうちに定義する能力を提供する。しかし、そのような暗黙のうちに定義される関係は、構造の生産中（すなわち、「構築時」中）に必ずしも維持されない。その結果、構造は、他の可能性の中でも、最終的に構造的問題および／または機能的問題を有することになる可能性がある。
【０００３】
［0003］  本明細書で開示されるのは、構造のパラメータの間の明示的な関係（１つまたは複数）が構築時中に維持されるように、これらの関係（１つまたは複数）を確立しまたは別の形で定義する様々な実施態様である。具体的には、構造の少なくとも第１および第２の特徴を与えられて、コンピューティング・システムが、第２の特徴の第２のパラメータの構築後に観察された値に関する第１の特徴の第１のパラメータの構築値を定義する構築前関係を指定するデータを受信することができる。コンピューティング・システムが、構築時中に構築後に観察された値を判定した後に、コンピューティング・システムは、受信された構築前関係に従って構築値を判定することができる。構築値が判定された後に、建造専門家（たとえば、人間および／またはロボット・システム）が、第１のパラメータが判定された構築値を有するように第１の特徴を生産することができる。
【０００４】
［0004］  その結果、構築前モデル化フェーズ中に関係を明示的に定義することと、構築時にパラメータの事前に定義された値よりもその関係を優先することとによって、特徴の間の重要な構造的関係および／または機能的関係は、これらが特徴のモデル化されたパラメータからの派生物である時であっても、構築時に維持され得る。
【０００５】
［0005］  たとえば、設計者が、お互いとのある種の位置関係（空間関係と呼ぶこともできる）を有する２つの特徴を望む時に、設計者は、２つの特徴がこの関係を有するように、たとえばモデル内の２つの特徴の位置を定義することによって、通常は暗黙のうちにこの位置関係を指定した。しかし、製造中に、特徴の一方（または両方）の実際の位置がモデルから逸脱する場合には、所望の位置関係が失われる可能性がある。注記として、これは、構造が、他の可能性の中でも構造的問題および／または機能的問題を有することを引き起こす可能性がある。
【０００６】
［0006］  そのような所望の位置関係をよりよく維持するのを助けるために、開示される実施態様は、設計者が、モデル化フェーズ中に特徴の間のそのような位置関係（たとえば、距離）を明示的に定義することを可能にすることができる。たとえば、設計者は、仕事場での第１の特徴の位置の明示的な座標を指定することができるが、第１の特徴との位置関係に関して第２の特徴を定義することができる（たとえば、第１の特徴と平行で、ある距離だけ第１の特徴から分離される）。したがって、特徴が仕事場で製造される時に、センサが、第１の特徴の実際の位置を観察するのに使用され得、第２の特徴の構築パラメータが、判定されまたは更新され得、その結果、第１の特徴の実際の位置に誤差（たとえば、しきい誤差を超えない誤差）がある時であっても、モデル内で定義された関係が、実際の構築でよりよく維持されるようになる。他の例も可能である。
【０００７】
［0007］  一態様では、方法が提供される。この方法は、コンピューティング・システムによって、構造を表すモデルの構築前関係を指定する入力データを受信することであって、モデルは、構造の第１の特徴の第１の構築パラメータおよび構造の第２の特徴の第２の構築パラメータを指定し、構築前関係は、第２の構築パラメータの構築後に観察された値に関して第１の構築パラメータの構築値を定義する、受信することを含むことができる。この方法は、モデルによって表された構造の生産中に、コンピューティング・システムによって、第２の構築パラメータの構築後に観察された値を判定することをも含むことができる。この方法は、第２の構築パラメータの判定された構築後に観察された値に基づいて、コンピューティング・システムによって、受信された構築前関係に従って第１の構築パラメータの構築値を判定することをさらに含むことができる。この方法は、第１の構築パラメータの構築値を判定した後に、コンピューティング・システムによって、ロボット・システムに、ロボット・システムによる第１の特徴の生産に関連する命令を送信することであって、命令は、第１の特徴がそれに従って生産されなければならない第１の構築パラメータの判定された構築値を指定する、送信することをさらに含むことができる。
【０００８】
［0008］  別の態様では、コンピューティング・システムが提供される。このコンピューティング・システムは、１つまたは複数のプロセッサと、非一時的コンピュータ可読媒体と、非一時的コンピュータ可読媒体上に記憶され、機能を実行するために１つまたは複数のプロセッサによって実行可能なプログラム命令とを含む。具体的には、プログラム命令は、構造を表すモデルの構築前関係を指定する入力データを受信するために実行可能とすることができ、モデルは、構造の第１の特徴の第１の構築パラメータおよび構造の第２の特徴の第２の構築パラメータを指定し、構築前関係は、第２の構築パラメータの構築後に観察された値に関して第１の構築パラメータの構築値を定義する。また、プログラム命令は、モデルによって表された構造の生産中に、第２の構築パラメータの構築後に観察された値を判定するために実行可能とすることができる。さらに、プログラム命令は、第２の構築パラメータの判定された構築後に観察された値に基づいて、受信された構築前関係に従って第１の構築パラメータの構築値を判定するために実行可能とすることができる。さらに、プログラム命令は、第１の構築パラメータの構築値を判定した後に、ロボット・システムに、ロボット・システムによる第１の特徴の生産に関連する命令を送信するために実行可能とすることができ、命令は、第１の特徴がそれに従って生産されなければならない第１の構築パラメータの判定された構築値を指定する。
【０００９】
［0009］  さらに別の態様では、別の方法が提供される。この方法は、コンピューティング・システムによって、生産される構造のコンピュータ生成されたモデルの構築前関係を指定するために、１つまたは複数のインターフェース特徴を含むグラフィカル・インターフェースを表示することを含むことができる。この方法は、グラフィカル・インターフェースを介して、第２の構築パラメータの構築後に観察された値に関して第１の構築パラメータの構築値を定義する構築前関係を指定する入力データを受信することであって、第１の構築パラメータは、構造の第１の特徴の構築パラメータであり、第２の構築パラメータは、構造の第２の特徴の構築パラメータであり、構築後に観察された値は、構造の生産中に判定され、構築値は、指定された構築前関係に従って判定された構築後に観察された値に基づいて判定される、受信することをも含むことができる。この方法は、構築値が判定された後に、グラフィカル・インターフェース上に、第１の構築パラメータの判定された構築値のグラフィカル表現を表示することをさらに含むことができる。
【００１０】
［0010］  さらに別の態様では、別のシステムが提供される。このシステムは、構造を表すモデルの構築前関係を指定する入力データを受信する手段であって、モデルは、構造の第１の特徴の第１の構築パラメータおよび構造の第２の特徴の第２の構築パラメータを指定し、構築前関係は、第２の構築パラメータの構築後に観察された値に関して第１の構築パラメータの構築値を定義する、受信する手段を含むことができる。このシステムは、モデルによって表された構造の生産中に、第２の構築パラメータの構築後に観察された値を判定する手段をも含むことができる。このシステムは、第２の構築パラメータの判定された構築後に観察された値に基づいて、受信された構築前関係に従って第１の構築パラメータの構築値を判定する手段をさらに含むことができる。このシステムは、第１の構築パラメータの構築値を判定した後に、ロボット・システムに、ロボット・システムによる第１の特徴の生産に関連する命令を送信する手段であって、命令は、第１の特徴がそれに従って生産されなければならない第１の構築パラメータの判定された構築値を指定する、送信する手段をさらに含むことができる。
【００１１】
［0011］  上記ならびに他の態様、利点、および代替案は、適当な場合に添付図面を参照して以下の詳細な説明を読むことによって、当業者に明白になる。さらに、この要約セクションおよび本文書の他所で提供される説明が、限定ではなく例として、特許請求される主題を例示することを意図されたものであることを理解されたい。
【図面の簡単な説明】
【００１２】
【図１】［0012］例の実施態様による、コンピューティング・システムの構成要素を示す単純化されたブロック図である。
【図２】［0013］例の実施態様による、ロボット・システムの構成要素を示す単純化されたブロック図である。
【図３】［0014］例の実施態様による、ロボット・アームを示す図である。
【図４】［0015］例の実施態様による、構造設計および生産環境の特徴を示す単純化されたブロック図である。
【図５】［0016］例の実施態様による、構造設計および生産環境を示す図である。
【図６】［0017］例の実施態様による、構築前関係を確立し、維持する例の流れ図を示す図である。
【図７Ａ−７Ｅ】［0018］例の実施態様による、構築前位置関係を定義し、維持するシナリオを示す図である。
【図８】［0019］例の実施態様による、グラフィカル・インターフェースを介して構築前関係を確立する例の流れ図を示す図である。
【発明を実施するための形態】
【００１３】
［0020］  例示的な方法およびシステムを本明細書で説明する。単語「例示的」が、本明細書では「例、実例、または例示として働く」を意味するのに使用されることを理解されたい。本明細書で「例示的（ｅｘｅｍｐｌａｒｙまたはｉｌｌｕｓｔｒａｔｉｖｅ）として説明される実施態様または特徴は、必ずしも、他の実施態様または特徴より好ましいまたは有利と解釈されるべきではない。図面では、文脈がそうではないと指示しない限り、同様の記号は、通常は同様の構成要素を識別する。本明細書で説明される例の実施態様は、限定的であることを意図されたものではない。本明細書で全般的に説明され、図面に示された本開示の諸態様が、様々な異なる構成で配置され、置換され、組み合わされ、分離され、設計され得、そのすべてが本明細書で企図されていることが、たやすく理解されるであろう。
【００１４】
Ｉ．概要
［0021］  例の実施態様は、物理構造（１つまたは複数）の設計および生産を援助する方法およびシステムに関する。実際には、構造のモデルが、コンピューティング・システムのグラフィカル・インターフェースを使用して作成され得、その後、建造専門家（たとえば、人間および／またはロボット・システム）が、そのモデルに従って構造を生産するように働くことができる。さらに、構造の様々な特徴の様々なパラメータが、ある種の計画された値／構築前の値を有するように、モデル内で全般的にそれぞれ定義される。しかし、残念ながら、パラメータの実際の値／構築後の観察された値は、時々、最終的にそのパラメータの計画された値とは異なるものになる可能性があり、これは、モデル化環境内で暗黙のうちに定義されたパラメータの間の重要な関係（１つまたは複数）が、最終的に構築される構造内で実現されないことをもたらす可能性がある。これは、他の可能性の中でも構造的問題および／または機能的問題につながる可能性がある。
【００１５】
［0022］  たとえば、モデルは、それぞれグローバル座標系に対する相対的な、構造の第１および第２の特徴の位置をそれぞれ定義することができる。しかし、第２の特徴の実際の位置が、最終的に、第２の構造の計画された位置とは異なるものになる場合がある。構造の設計が、ある範囲まで（たとえば、しきい誤差以内）、第２の特徴の実際の位置が第２の特徴の計画された位置とは異なることを許容する場合があるが、設計が、それでも、第１の特徴と第２の特徴との間のある種の位置関係を要求する場合がある（たとえば、第１の特徴が、第２の特徴から３メートル離れた距離に位置決めされる必要がある場合がある）。多くの事例では、その位置関係は、第２の特徴の実際の位置が第２の特徴の計画された位置とは異なる場合に、満足されない可能性がある。
【００１６】
［0023］  そのような問題に対処するのを助けるために、本開示は、ある種の関係がパラメータのそれぞれの値の間で実質的に維持され、そのような関係が、これらのパラメータのうちの１つが最終的に示す実際の値にかかわりなく実質的に維持される確率を高めるのを助けることができる方法およびシステムを提供する。さらに、本開示は、位置関係の文脈で適用可能であるが、関係は、位置関係に限定されない。したがって、本開示は、構造の任意の特徴（１つまたは複数）の任意のパラメータ（１つまたは複数）の間の関係の文脈に適用され得る。たとえば、本開示は、他のオプションの中で、第１の特徴（たとえば、航空機の胴体）の密度と第２の特徴（たとえば、航空機の翼）の曲率との間の関係の文脈に適用され得る。
【００１７】
［0024］  本開示によれば、コンピューティング・システムは、生産される構造を表すモデルの構築前関係を指定する入力データを受信することができる。実際には、コンピューティング・システムは、モデル化専門家がそれを介して構造のモデルを生成するグラフィカル・インターフェースを介してそのような入力データを受信することができ、かつ／または他の形で入力データを受信することができる。それでも、その構築前関係は、少なくとも構造の第１の特徴の第１のパラメータと構造の第２の特徴の第２のパラメータとの間の関係を定義することができ、これらのパラメータが生産される前に、おそらくは構造自体のこれらの特徴の生産が始まる前にさえ、それを行う。さらに、いくつかの事例で、問題の第１および第２の特徴は、構造の同一の特徴とすることができ、したがって、構築前関係は、同一の特徴の２つ以上のパラメータの間の関係とすることができる。他の事例も可能である。
【００１８】
［0025］  より具体的には、構築前関係は、第２のパラメータの構築後に観察された値に対する相対的なまたは他の形でこれに関する第１のパラメータの構築値を定義することができる。具体的には、構築前関係に基づいて、第１のパラメータの構築値は、当初に、まだ完全には生産されていない第２のパラメータの「判定されるべき」値に対して相対的に定義され得る。したがって、第１のパラメータが、オプションで事前定義の構築値を有することができるが、構築値は、第２のパラメータの値が観察されまたは他の形で判定された後に限って絶対的に判定され得、第２のパラメータの値の観察または他の形での判定は、第２の特徴が、第２のパラメータを示すために少なくとも部分的に生産された後に限って発生することができる。
【００１９】
［0026］  したがって、第２の特徴が実際に生産された後および／または第２の特徴の生産中に、コンピューティング・システムは、第２のパラメータの構築後に観察された値を判定することができる。たとえば、構造の建造に参加するロボット・システムは、構造のセンサ・データ表現を受信するのにそのセンサを使用することができる。そのセンサ・データに基づいて、コンピューティング・システムは、第２のパラメータの構築後に観察された値を判定することができる。他の例も可能である。
【００２０】
［0027］  上の議論と一致して、コンピューティング・システムが、第２のパラメータの構築後に観察された値を判定した後に、コンピューティング・システムは、受信された構築前関係に従って第１のパラメータの構築値を判定するための基礎として、その判定された構築後に観察された値を使用することができる。したがって、コンピューティング・システムは、その後、モデルが判定された構築値を指定し、判定された構築値のグラフィカル表現がグラフィカル・インターフェースを介して表示され得るように、モデルを更新することができる。それに加えてまたはその代わりに、コンピューティング・システムは、第１の特徴の生産に関連する命令をロボット・システムに送信することができ、提供される命令は、第１の特徴がそれに従って生産されなければならない判定された構築値を指定し、これによって、構築前関係が維持されることを保証する。
【００２１】
［0028］  本開示の例の実施態様では、構築前関係は、第１の特徴がそこで生産されなければならない、第２の特徴から離れた距離（たとえば、３メートル）を事前に定義することができる。この形で、第２の特徴が生産され、第２の特徴の位置が構造のグローバル座標系内で判定された後に、第１の特徴の位置は、第２の特徴の判定された位置から事前定義の距離になるようにグローバル座標系内で定義され得る。したがって、コンピューティング・システムは、定義された位置で第１の特徴を生産するようにロボット・システムに命令することができ、これによって、事前定義の位置関係が維持されることを保証する。
【００２２】
ＩＩ．構造の設計および生産のための例のシステム
Ａ．コンピューティング・システム
［0029］  ここで図面を参照すると、図１は、コンピューティング・システム１００の構成要素を示すブロック図である。全体的に、コンピューティング・システム１００は、他の可能性の中でも、デスクトップ・コンピュータ、ラップトップ、タブレット、ウェアラブル・コンピューティング・デバイス、携帯電話機、チップ・セット、サーバ・システム、デジタル信号プロセッサ、プログラマブル・ロジック・コントローラ、および／またはサンプル値システムの形をとることができる。
【００２３】
［0030］  図示されているように、コンピューティング・システム１００は、１つまたは複数のプロセッサ１０２、データ・ストレージ１０４、プログラム命令１０６、通信インターフェース１０８、ディスプレイ１１０、およびインプット・メソッド・エディタ（ＩＭＥ）１１２を含むことができる。コンピューティング・システム１００が、例示のみのために示され、コンピューティング・システム１００が、本開示の範囲から逸脱せずに、追加の構成要素を含み、かつ／または１つもしくは複数の構成要素を除去され得ることに留意されたい。さらに、コンピューティング・システム１００の様々な構成要素が、任意の形で配置され、接続され得ることに留意されたい。
【００２４】
［0031］  プロセッサ（１つまたは複数）１０２は、汎用プロセッサまたは特殊目的プロセッサ（たとえば、デジタル信号プロセッサ、特定用途向け集積回路など）とすることができる。プロセッサ（１つまたは複数）１０２は、データ・ストレージ１０４内に記憶され、とりわけ、本明細書で説明される様々な機能を実行するために実行可能なコンピュータ可読プログラム命令１０６を実行するように構成され得る。
【００２５】
［0032］  データ・ストレージ１０４は、プロセッサ（１つまたは複数）１０２によって読み取られまたはアクセスされ得る１つまたは複数のコンピュータ可読記憶媒体を含みまたはその形をとることができる。１つまたは複数のコンピュータ可読記憶媒体は、全体的にまたは部分的にプロセッサ（１つまたは複数）１０２と一体化され得る、光、磁気、有機、または他のメモリまたはディスク・ストレージなど、揮発性記憶構成要素および／または不揮発性記憶構成要素を含むことができる。いくつかの実施態様では、データ・ストレージ１０４は、単一の物理デバイス（たとえば、１つの光、磁気、有機、または他のメモリまたはディスク・ストレージ・ユニット）を使用して実施され得るが、他の実施態様では、データ・ストレージ１０４は、２つ以上の物理デバイスを使用して実施され得る。さらに、コンピュータ可読プログラム命令１０６に加えて、データ・ストレージ１０４は、他の可能性の中でも、診断データなどの追加データを含むことができる。
【００２６】
［0033］  通信インターフェース１０８は、コンピューティング・システム１００が、アナログ変調またはデジタル変調を使用して、他のデバイス、サーバ、アクセス・ネットワーク、および／またはトランスポート・ネットワークと通信することを可能にすることができる。したがって、通信インターフェース１０８は、ｐｌａｉｎ  ｏｌｄ  ｔｅｌｅｐｈｏｎｅ  ｓｅｒｖｉｃｅ（ＰＯＴＳ）通信および／またはインターネット・プロトコル（ＩＰ）通信もしくは他のパケット化された通信など、回線交換通信および／またはパケット交換通信を容易にすることができる。たとえば、通信インターフェース１０８は、無線アクセス・ネットワークまたはアクセス・ポイントとの無線通信のために配置されたチップ・セットおよびアンテナを含むことができる。また、通信インターフェース１０８は、イーサネット、Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ（ＵＳＢ）、またはＨｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ（ＨＤＭＩ）ポートなど、有線インターフェースの形をとりまたはこれを含むことができる。通信インターフェース１０８は、Ｗｉｆｉ、ＢＬＵＥＴＯＯＴＨ（登録商標）、全地球測位システム（ＧＰＳ）、または広域無線インターフェース（たとえば、ＷｉＭＡＸまたは３ＧＰＰ  Ｌｏｎｇ−Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ（ＬＴＥ））の形をとりまたはこれを含むことができる。しかし、他の形の物理層インターフェースおよび他のタイプの標準的なまたはプロプライエタリな通信プロトコルが、通信インターフェース１００８上で使用され得る。さらに、通信インターフェース１０８は、複数の物理通信インターフェース（たとえば、Ｗｉｆｉインターフェース、ＢＬＵＥＴＯＯＴＨ（登録商標）インターフェース、および広域無線インターフェース）を含むことができる。
【００２７】
［0034］  ディスプレイ１１０は、任意の形（たとえば、ＬＥＤ、ＬＣＤ、ＯＬＥＤなど）をとることができる。さらに、ディスプレイ１１０は、タッチスクリーン・ディスプレイ（たとえば、タブレット上のタッチスクリーン・ディスプレイ）とすることができる。ディスプレイ１１０は、それを介してユーザが本明細書で開示されるシステムと対話できるアプリケーションを提供できるグラフィカル・ユーザ・インターフェース（ＧＵＩ）を示すことができる。
【００２８】
［0035］  さらに、コンピューティング・システム１００は、ＩＭＥ  １１２を介してユーザ入力を受信することができる（たとえば、コンピューティング・システム１００のユーザから）。具体的には、ＩＭＥ  １１２は、他の可能な対話の中でも、スクロール、テキストの提供、および／またはアプリケーションの様々な特徴の選択などのＧＵＩとの対話を可能にすることができる。ＩＭＥ  １１２は、様々な形をとることができる。一例では、ＩＭＥ  １１２は、ＧＵＩの制御に使用されるコンピューティング・マウスなどのポインティング・デバイスとすることができる。しかし、ディスプレイ１１０がタッチスクリーン・ディスプレイである場合には、ＧＵＩの制御を可能にするユーザ・タッチ入力が受信され得る（たとえば、指またはスタイラスを使用するなど）。別の例では、ＩＭＥ  １１２は、ＧＵＩを介して表示される数、文字、および／または記号の選択を提供するキーボードなどのテキストＩＭＥとすることができる。たとえば、ディスプレイ１１０がタッチスクリーン・ディスプレイである配置では、ディスプレイ１１０の諸部分がＩＭＥ  １１２を示すことができる。したがって、ディスプレイ１１０のうちでＩＭＥ  １１２を含む部分でのタッチ入力は、ディスプレイ１１０を介してＧＵＩ上に示される特定の数、文字、および／または記号の選択などのユーザ入力をもたらすことができる。さらに別の例では、ＩＭＥ  １１２は、コンピューティング・システム１００のマイクロフォン（図示せず）を介してユーザからなど、オーディオ入力を受信する、使用され得る音声ＩＭＥとすることができ、このオーディオ入力は、その後、様々な音声認識技法のうちの１つを使用して、ディスプレイ１１０を介して示され得る１つまたは複数の文字に解釈可能である。他の例も可能である可能性がある。
【００２９】
Ｂ．ロボット・システム
［0036］  次に、図２は、ロボット・システム２００の例の構成要素を示す。ロボット・システム２００は、他の例の中で、ロボット・アーム、モバイル・プラットフォーム、動態化されたロボット・アーム、ヒューマノイド・ロボット、四足ロボット、または任意のタイプの自動化された製造機械類とすることができる。さらに、ロボット・システム２００は、とりわけ、ロボット・デバイス、ロボット・マニピュレータ、またはロボットと呼ばれる場合もある。
【００３０】
［0037］  ロボット・システム２００は、プロセッサ２０２、データ・ストレージ２０４、プログラム命令２０６、通信インターフェース２０８、センサ（１つまたは複数）２１０、動力源（１つまたは複数）２１２、アクチュエータ（１つまたは複数）２１４、および可動構成要素（１つまたは複数）２１６を含んで図示されている。ロボット・システム２００が、本発明の範囲から逸脱せずに、追加構成要素を含み、かつ／または１つまたは複数の構成要素を除去され得るので、ロボット・システム２００が、例示のみのために示されていることに留意されたい。さらに、ロボット・システム２００の様々な構成要素が、任意の形で接続され得ることに留意されたい。
【００３１】
［0038］  さらに、プロセッサ１０２、データ・ストレージ１０４、プログラム命令１０６、および通信インターフェース１０８の上の説明は、別のシステム内または配置内で使用されるそれぞれの構成要素に関する下のすべての議論に適用され得る。たとえば、注記したように、図２は、別の配置に組み込まれているものとしてプロセッサ、データ・ストレージ、プログラム命令、および通信インターフェースを示す。したがって、問題のこれらの構成要素は、図１に関連して上で議論したそれぞれの構成要素と同一のまたは同様の特性（および／または形態）をとることができる。しかし、問題の構成要素は、本開示の範囲から逸脱せずに他の特性（および／または形態）をとることもできる。
【００３２】
［0039］  実際には、ロボット・システム２００は、他の可能性の中でも力センサ、近接センサ、動きセンサ、負荷センサ、位置センサ、タッチ・センサ、奥行きセンサ、超音波距離センサ、および赤外線センサなどのセンサ（１つまたは複数）２１０を含むことができる。センサ（１つまたは複数）２１０は、環境とのロボット・システム２００の適当な相互作用を可能にするためにプロセッサ２０２にセンサ・データを供給することができる。さらに、ロボット・システム２００は、ロボット・システム２００の様々な構成要素に動力を供給するように構成された動力源（１つまたは複数）２１２を含むこともできる。たとえばガソリン・エンジンまたはバッテリなど、任意のタイプの動力源が使用され得る。
【００３３】
［0040］  さらに、注記したように、ロボット・システム２００は、１つまたは複数のアクチュエータ２１４をも含むことができる。アクチュエータは、機械的な動きを導入するのに使用され得る機構である。具体的には、アクチュエータは、貯えられたエネルギを１つまたは複数の構成要素の運動に変換するように構成され得る。様々な機構が、アクチュエータに動力を供給するのに使用され得る。たとえば、アクチュエータは、他の可能性の中でも、化学薬品、圧縮空気、または電気によって動力を供給され得る。いくつかの事例で、アクチュエータは、回転する形態の動きを伴うシステム内で使用され得るロータリ・アクチュエータとすることができる（たとえば、ロボット・システム２００内の関節）。他の事例では、アクチュエータは、直線の動きを伴うシステム内で使用され得るリニア・アクチュエータとすることができる。どちらの場合でも、アクチュエータ（１つまたは複数）２１４は、ロボット・システム２００の様々な可動構成要素（１つまたは複数）２１６の運動を引き起こすことができる。可動構成要素（１つまたは複数）２１６は、とりわけ、ロボット・アーム、脚、および／または手などの付属物を含むことができる。可動構成要素（１つまたは複数）２１６は、とりわけ、可動ベース、車輪、および／またはエンド・エフェクタをも含むことができる。
【００３４】
［0041］  ロボット・システム２００は、様々な形態をとることができる。例示のために、例のロボット・アーム３００を示す図３を参照されたい。図示されているように、ロボット・アーム３００は、基部３０２を含み、基部３０２は、静止基部または可動基部とすることができる。可動基部の場合に、基部３０２は、可動構成要素（１つまたは複数）２１６のうちの１つと考えられ得、ロボット・アーム３００全体の可動性を可能にする、アクチュエータ（１つまたは複数）２１４のうちの１つまたは複数によって動力を与えられる車輪（図示せず）を含むことができる。
【００３５】
［0042］  さらに、ロボット・アーム３００は、アクチュエータ（１つまたは複数）２１４のうちの１つまたは複数にそれぞれ結合された関節３０４Ａ〜３０４Ｆを含む。関節３０４Ａ〜３０４Ｆ内のアクチュエータは、付属物３０６Ａ〜３０６Ｆおよび／またはエンド・エフェクタ３０８などの様々な可動構成要素（１つまたは複数）２１６の運動を引き起こすように動作することができる。たとえば、関節３０４Ｆ内のアクチュエータは、付属物３０６Ｆおよびエンド・エフェクタ３０８の運動を引き起こすことができる（すなわち、エンド・エフェクタ３０８が付属物３０６Ｆに結合されているので）。さらに、エンド・エフェクタ３０８は、様々な形態をとることができ、様々な部品を含むことができる。一例では、エンド・エフェクタ３０８は、指グリッパまたは吸着グリッパなどのグリッパの形態をとることができる。別の例では、エンド・エフェクタは、力センサ、位置センサ、および／または近接センサなどのセンサを含むことができる。さらに別の例では、エンド・エフェクタ３０８は、製造ツールなどのツールの形態をとることができる。他の例も可能である可能性がある。
【００３６】
［0043］  この配置を仮定すると、ロボット・アーム３００または任意の他の機械類などのロボット・システム２００は、構造（１つまたは複数）の生産を援助しまたは他の形で実行することができる。具体的には、注記したように、ロボット・システム２００は、１つまたは複数の製造ツールを有することができ、ロボット・システム２００は、他のオプションの中でも、付加製造および／または除去製造を介してなど、構造を製造するのに製造ツールのうちの１つまたは複数を使用することができる。これらの製造ツールは、とりわけ、カッター、スリッタ、ドリル、鋸、刃、および／またはポリッシャを含むことができる。さらに、ロボット・システム２００は、ロボット・システム２００がそれに従って構造を製造しまたは他の形で生産できる生産命令を受信することができる（たとえば、コンピューティング・システム１００から）。これらの命令は、他の可能な命令の中でも、使用すべきツール、追加すべき構造の特徴、除去すべき構造の特徴、調整すべき構造の特徴、および／または製造の順序を指定することができる。他の配置も可能である。
【００３７】
Ｃ．構造の設計および生産の環境
［0044］  次に、図４は、１つまたは複数のセンサ４０２を有し、生産される構造４０４およびおそらくはロボット・システム２００がその中で見出され得る環境４００を示す。コンピューティング・システム１００が、環境４００の外部に図示されているが、コンピューティング・システム１００は、それに加えてまたはその代わりに、環境４００内とすることができる。
【００３８】
［0045］  一般に、環境４００は、人、物体、および／または機械がその中に配置され得る少なくとも１つの物理空間を画定することができる。したがって、環境４００は、２次元（２Ｄ）または３次元（３Ｄ）の形態をとることができ、様々な目的に使用され得る。たとえば、環境４００は、構造の製造および／または製作が実行される製作施設とすることができる。他の例では、環境４００は、様々な他の例の中でも、分配施設、オフィス空間、ショッピング・センタ、および／または生活空間とすることができる。
【００３９】
［0046］  いくつかの配置で、環境４００は、構造の設計と生産との両方が行われる単一の物理空間とすることができる。したがって、そのような配置では、単一の空間は、構造設計の設計環境と構造の生産のための生産環境（仕事場と呼ぶこともできる）との両方を含むことができる。実際に、構造設計は、所望の構造のモデルをもたらすために行われるすべてのアクションと定義され得、このモデルは、構造がどのように構成されるのか、および／または構造が生産された後にその構造がどのように機能するのかを示すことができる。一般に、構造設計は、ロボット・システム２００が所望の構造の生産を開始する前に行われ得る。しかし、構造設計は、所望の構造の設計中に行われる可能性もある。さらに、構造生産は、所望の構造を物理的に作成するために行われるすべてのアクションと定義され得る。一般に、そのような構造生産は、とりわけ、最初の切断、最初のエッチング、または最初の材料追加など、最初の永久的な物理的変更が行われる時に始まることができる。
【００４０】
［0047］  他の配置では、環境４００は、おそらく一方は構造設計の設計環境として使用され得、他方は構造の生産のための仕事場として使用され得る、少なくとも２つの物理空間とすることができる。そのような配置では、各物理空間は、上で言及した構成要素および／またはエンティティの任意の組み合わせをそれぞれ含むことができる。様々な他の配置も可能である。
【００４１】
［0048］  環境４００内のセンサ４０２は、とりわけ、力センサ、近接センサ、動きセンサ（たとえば、慣性計測装置（ＩＭＵ））、ジャイロスコープ、および／または加速度計）、負荷センサ、位置センサ、熱画像センサ、顔認識センサ、奥行きセンサ（たとえば、ＲＧＢ−Ｄ、レーザー、構造化照明、および／または飛行時間カメラ）、点群センサ、超音波距離センサ、赤外線センサ、全地球測位システム（ＧＰＳ）受信器、ソナー、光センサ、バイオセンサ、Ｒａｄｉｏ  Ｆｒｅｑｕｅｎｃｙ  ｉｄｅｎｔｉｆｉｃａｔｉｏｎ（ＲＦＩＤ）システム、Ｎｅａｒ  Ｆｉｅｌｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ（ＮＦＣ）チップ、無線センサ、コンパス、煙センサ、光センサ、ラジオ・センサ、マイクロフォン、スピーカ、レーダー、タッチ・センサ（たとえば、容量センサ）、カメラ（たとえば、カラー・カメラ、グレイスケール・カメラ、および／または赤外線カメラ）、および／または距離センサ（たとえば、超音波および／または赤外線）を含むことができるが、これに限定はされない。さらに、センサ４０２は、他のオプションの中でも、環境４００内または環境４００の付近に位置決めされ得る。
【００４２】
［0049］  さらに、これらのセンサ４０２のうちの１つまたは複数は、既存のデバイスおよび／またはシステム内に組み込まれ得る。一例では、これらのデバイスおよび／またはシステムは、とりわけ、携帯電話機、ラップトップ、および／またはタブレットなど、環境４００内に配置されたユーザ（１つまたは複数）を所有するデバイスおよび／またはシステムとすることができる。別の例では、これらのセンサ４０２のうちの１つまたは複数は、ロボット・システム２００のセンサ２１０のうちの１つまたは複数とすることができる。他の例も可能である。
【００４３】
［0050］  図３にさらに示されているように、コンピューティング・システム１００は、少なくとも１つの通信リンク４０６を介して、環境４００内で見出される様々なエンティティと通信しているものとすることができる。この通信リンク４０６は、有線または無線の通信リンクとすることができる。より具体的には、有線リンクは、たとえば、並列バスまたはＵｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ（ＵＳＢ）などの直列バスを含むことができる。一方、無線リンクは、たとえば、他の可能性の中でも、Ｂｌｕｅｔｏｏｔｈ、ＮＦＣ、ＩＥＥＥ  ８０２．１１（ＩＥＥＥ  ８０２．１１はＩＥＥＥ  ８０２．１１−２００７、ＩＥＥＥ  ８０２．１１ｎ−２００９、または任意の他のＩＥＥＥ  ８０２．１１リビジョンを指すことができる）、セルラ（ＧＳＭ、ＧＰＲＳ、ＣＤＭＡ、ＵＭＴＳ、ＥＶ−ＤＯ、ＷｉＭＡＸ、ＨＳＰＤＡ、またはＬＴＥ）、またはＺｉｇｂｅｅを含むことができる。さらに、セルラ通信プロトコルを使用する「３Ｇ」または「４Ｇ」のデータ接続性（たとえば、ＣＤＭＡ、ＧＳＭ、ＷｉＭＡＸならびに８０２．１１を使用する「ＷｉＦｉ」接続性用）など、複数の有線および／または無線のプロトコルが使用され得る。他の例では、配置は、様々なシステムがそれを介してクラウド・サーバと通信できるアクセス・ポイントを含むことができる。アクセス・ポイントは、無線アクセス・ポイント（ＷＡＰ）または無線ルータの形態など、様々な形態をとることができる。さらに、接続が、ＣＤＭＡプロトコルまたはＧＳＭプロトコルなど、セルラ・エアインターフェース・プロトコルを使用して行われる場合には、アクセス・ポイントは、セルラ・ネットワークを介してインターネット接続性を提供する、セルラ・ネットワーク内の基地局とすることができる。他の例も可能である。
【００４４】
［0051］  したがって、コンピューティング・システム１００は、センサ４０２と通信しているものとすることができ、したがって、センサ４０２のうちの１つまたは複数からセンサ・データを受信する（たとえば、継続的にまたは周期的に）ことができる。実際には、このセンサ・データは、１つまたは複数のデータ・パケットの形態をとることができ、環境４００の環境情報表現を提供することができる。さらに、コンピューティング・システム１００は、ロボット・システム２００と通信しているものとすることができる。この形で、コンピューティング・システム１００は、所望の構造４０４の生産に関する命令（１つまたは複数）をロボット・システム２００に送信することができる。たとえば、命令は、構造４０４を表すモデル・データに従って所望の構造４０４を生産するようにロボット・システム２００に指示することができる。さらに、コンピューティング・システム１００は、他のオプションの中でも、センサ・データおよび／または生産進行を指定する通信など、ロボット・システム１００からの通信を受信することができる。他の例も可能である。
【００４５】
［0052］  実際には、生産される構造４０４は、それぞれが少なくとも１つの材料からそれぞれ作られる１つまたは複数の物理的な片を含むことができる。具体的には、これらの片（１つまたは複数）は、１つまたは複数のツールによって、切断され、一緒に加えられ、かつ／または所望の構造に成形される事によるなど、所望の構造４０４を生産するために取り組まれ得る。たとえば、生産される構造４０４は、他の可能性の中でも、一緒に加えられ、かつ／またはそれぞれ成形され得る、金属の片および木の片を含むことができる。実際には、上で議論したロボット・システム２００は、たとえば上で説明したツールのうちの１つまたは複数を使用することによるなど、所望の構造の生産を実行するように構成され得る。
【００４６】
［0053］  さらに、所望の構造４０４の形状（およびおそらくは生産プロセスの他の態様）は、モデル・データ（および／または他の形態のデータ）に基づいて判定され得る。たとえば、上の議論と一致して、コンピューティング・システム１００は、たとえばグラフィカル・ユーザ・インターフェース（ＧＵＩ）を介するなど、ユーザから入力を受信するように構成され得る。この入力は、とりわけ、所望の構造４０４の各片のそれぞれの目標形状、所望の構造４０４の各片のそれぞれの目標サイズ、所望の構造４０４の各片のそれぞれの目標位置、所望の構造４０４の各片のそれぞれの目標方位を表すものとすることができる。この形で、コンピューティング・システム１００は、所望の構造４０４がそれに基づいて生産されるモデル・データを最終的に受信でき、所望の構造４０４の生産の前および／または生産中にそのようなモデル・データを受信することができる。さらに、コンピューティング・システム１００は、ＧＵＩを介するなど、構造のモデルを表示できる場合がある。
【００４７】
［0054］  これを考慮すると、モデルは、構造の様々な特徴を表すことができる。一般に、各そのような特徴は、構造の特徴的な属性または態様とすることができる。たとえば、構造の特徴は、他の可能性の中でも、テーブルの表面、テーブルの脚、および／またはテーブルの表面に形成されたカップ・ホルダとすることができる。
【００４８】
［0055］  さらに、構造の各特徴は、１つまたは複数のパラメータによってそれぞれ定義され得る。具体的には、パラメータは、構造の特徴および／または構造の動作の条件を定義するのを助ける任意の数値因子または他の測定可能な因子とすることができる。さらに、各パラメータは、それぞれの特徴が生産されなければならない形を明示的に定義するそれぞれの値を有することができる。たとえば、テーブルの脚は、長さのパラメータによって定義され得、その長さは、テーブルの脚の長さおよび／または脚が有しなければならない長さを明示的に定義する値（たとえば、５メートル（５ｍ））を有することができる。したがって、構造のモデルは、１つまたは複数の特徴の１つまたは複数のパラメータならびに各そのようなパラメータのそれぞれの値を指定することができ、その結果、構造は、これらの仕様に従って生産されるようになる。
【００４９】
［0056］  実際には、様々なパラメータが、構造のモデル内で実現可能に指定され、かつ／または構造が生産されまたは生産されようとしている時に構造によって他の形で示され得る。いくつかのパラメータが例として本明細書で議論されるが、本開示の範囲から逸脱せずに、他のパラメータも可能であることを理解されたい。たとえば、他のパラメータは、とりわけ、現在既知のおよび／または将来に開発されるコンピュータ援用設計（ＣＡＤ）ソフトウェア内で指定され得るパラメータのいずれをも含むことができる（たとえば、同心度）。
【００５０】
［0057］  １つの事例で、パラメータは、構造の特徴の位置とすることができる。一例では、位置は、座標系に対する相対的な座標値によって定義され得る。別の例では、位置は、とりわけ、物理空間内の点および／または構造上の点までの距離を示す距離値によって定義され得る。さらに別の例では、位置は、物理空間内の大きさ（たとえば、距離）と方向（たとえば、特徴が面しなければならない方向）との両方を示す空間ベクトルによって定義され得る。
【００５１】
［0058］  別の事例で、パラメータは、構造の特徴の方位とすることができる。一例では、方位は、別の特徴に対する相対的な特徴の角度を示す角度値によって定義され得る。たとえば、方位は、別の特徴に対する平行または垂直の指示によって定義され得る。
【００５２】
［0059］  さらに別の事例で、パラメータは、構造の特徴の材料特性とすることができる。たとえば、材料特性は、とりわけ、材料密度、曲率、材料強度、サイズ、形状、導電率、温度、および／または色の値または他の指示によって定義され得る。
【００５３】
［0060］  さらに別の事例で、パラメータは、構造の特徴との相互作用の属性とすることができる。たとえば、相互作用の属性は、特徴に印加された、かつ／または印加されなければならない力を示す力値によって定義され得る。別の例では、相互作用の属性は、特徴に印加された、かつ／または印加されなければならない圧力を示す圧力値によって定義され得る。さらに別の例では、相互作用の属性は、特徴を移動する手法（たとえば、構造の生産中にノブを反時計回りに対して時計回りに回転する）の指示によって定義され得る。さらに別の例では、相互作用の属性は、特徴が回転できる最高速度によるなど、特徴が示さなければならない運動特性の指示によって定義され得る。他の事例および例も可能である。
【００５４】
［0061］  次に、図５は、構造設計環境ならびに構造生産環境の両方として使用され得る例の環境５００を示す。図示されているように、環境５００は、ロボット・アーム３００、例のセンサ５０２、生産される構造５０４、および例のコンピューティング・システム５１０を含む。さらに、図５は、構造５０４が、少なくとも部分的に生産され、したがって、構造５０４の生産が進行中であることを示す。さらに、図５は、ユーザ５１２も環境５００内に配置されることを示す。
【００５５】
［0062］  例のシナリオでは、構造５０４は、ユーザ５１２によっておよび／または他の形でなど、コンピューティング・システム５１０を介して設計され得、その結果、ロボット・アーム３００が、その設計に基づいて構造５０４を生産できるようになる。たとえば、ユーザ４１２は、脚、表面、および／またはその上に形成されたカップ・ホルダ（１つまたは複数）など、複数の特徴を有するテーブルを設計することができる。したがって、ロボット・アーム３００は、設計されたテーブルを表すモデル・データに従って構造５０４を生産することができる。他の例および例示も可能である。
【００５６】
ＩＩＩ．構築前関係を定義し、維持する例示的な方法
［0063］  次に、図６は、例の実施態様による方法６００を示す流れ図である。方法６００などの例示的な方法は、たとえば図１のコンピューティング・システム１００、図２のロボット・システム２００、および／または図４の環境４００を含む配置内で（または、より具体的には、プロセッサと、本明細書で説明する機能をシステムに実行させるために実行可能な命令を有する非一時的コンピュータ可読媒体とによるなど、１つまたは複数の構成要素またはそのサブシステムによって）全体的にまたは部分的に実行され得る。しかし、方法６００などの例の方法が、本開示の範囲から逸脱せずに、他のエンティティまたはエンティティの組み合わせによって、ならびに他の配置において実行され得ることを理解されたい。
【００５７】
［0064］  方法６００ならびに本明細書で開示される他のプロセスおよび方法は、たとえばブロック６０２〜６０８のうちの１つまたは複数によって示される、１つまたは複数の動作、機能、またはアクションを含むことができる。ブロックが、順次順序で示されているが、これらのブロックは、並列におよび／または本明細書で説明するものとは異なる順序で実行されることも可能である。また、様々なブロックは、所望の実施態様に基づいて、より少数のブロックに組み合わされ、追加のブロックに分割され、かつ／または除去され得る。
【００５８】
［0065］  さらに、方法６００ならびに本明細書で開示される他のプロセスおよび方法に関して、流れ図は、本実施態様の１つの可能な実施態様の機能性および動作を示す。これに関して、各ブロックは、プロセス内で特定の論理機能またはステップを実施するためにプロセッサによって実行可能な１つまたは複数の命令を含むプログラム・コードのモジュール、セグメント、または部分を表すことができる。プログラム・コードは、たとえばディスクまたはハード・ドライブを含むストレージ・デバイスなど、任意のタイプのコンピュータ可読媒体上に記憶され得る。コンピュータ可読媒体は、たとえばレジスタ・メモリ、プロセッサ・キャッシュ、ランダム・アクセス・メモリ（ＲＡＭ）のように短い時間期間の間にデータを記憶するコンピュータ可読媒体など、非一時的コンピュータ可読媒体を含むことができる。コンピュータ可読媒体は、たとえば読取専用メモリ（ＲＯＭ）、光ディスク、磁気ディスク、コンパクト・ディスク読取専用メモリ（ＣＤ−ＲＯＭ）のような二次ストレージまたは永続長期ストレージなど、非一時的媒体を含むこともできる。コンピュータ可読媒体は、任意の他の揮発性または不揮発性のストレージ・システムとすることもできる。コンピュータ可読媒体は、たとえばコンピュータ可読記憶媒体または有形のストレージ・デバイスと考えられ得る。さらに、方法６００ならびに本明細書で開示される他のプロセスおよび方法に関して、図６の各ブロックは、プロセス内の特定の論理機能を実行するように配線された回路網を表すことができる。
【００５９】
［0066］  ブロック６０２で、方法６００は、コンピューティング・システムによって、構造を表すモデルの構築前関係を指定する入力データを受信することであって、モデルは、構造の第１の特徴の第１の構築パラメータおよび構造の第２の特徴の第２の構築パラメータを指定し、構築前関係は、第２の構築パラメータ（本明細書では「第２のパラメータ」とも称する）の構築後に観察された値に関して第１の構築パラメータ（本明細書では「第１のパラメータ」とも称する）の構築値を定義する、受信することを含む。一般に、構築前関係は、他の可能性の中でも、構築前制約と呼ばれることも可能である。
【００６０】
［0067］  上で議論したように、既存のモデル化環境は、構造のパラメータの間の関係を暗黙のうちに定義する能力を提供する。しかし、そのような暗黙のうちに定義される関係は、構築時中に必ずしも維持されない。この問題を克服するのを助けるために、本明細書で開示されるのは、構造のパラメータの間の関係（１つまたは複数）が構築時中に維持されるように、構造が完全に生産される前にこれらの関係（１つまたは複数）を明示的に定義する様々な実施態様である。したがって、コンピューティング・システムは、他のオプションの中でも、ＩＭＥ（たとえば、ＩＭＥ  １１２）を介するなど、コンピューティング・システムが任意の実現可能な形で受信できる、構築前関係を示す入力データを受信することができる。
【００６１】
［0068］  これに関して、コンピューティング・システムは、これらのパラメータの個々の値（１つまたは複数）よりも構築時中の受信された構築前関係を優先することができる。それを行う際に、コンピューティング・システムは、これらのパラメータのうちの特定の１つが、最終的に構造のモデル内で指定された値以外の対応する値を有することになる場合であっても、関係が実質的に維持される確率を高められる可能性がある。
【００６２】
［0069］  具体的には、構築前関係は、第２のパラメータの構築後に観察された値に関するまたは他の形でこれに対する相対的な第１のパラメータの構築値を定義することができる。本開示によれば、構築後に観察された値は、まだ判定されていない値とすることができるが、下でさらに説明するように、構造の生産中に判定される。ところが、構築値は、構築後に観察された値に関してまたは他の形でこれに対して相対的に定義された値であり、したがって、下でさらに説明するように、構築後に観察された値が判定された後に明示的に定義される。この形で、第２のパラメータの構築後に観察された値が、最終的に、第２のパラメータが有しなければならないとモデルが指定した「計画された」値とは異なるようになる場合に、第１のパラメータの構築値は、それでも、構築前関係に従って最終的に定義され、その結果、この関係は、構造が生産された後に構造によって示されるようになる。
【００６３】
［0070］  さらに、構築前関係は、特徴および／またはパラメータの任意の実現可能な組み合わせに関して定義される関係とすることができる。１つの事例では、問題の第１および第２の特徴を、同一の特徴とすることができる。この事例では、構築前関係は、同一の特徴の異なるパラメータの間の関係とすることができる。たとえば、構築前関係は、テーブルの脚の位置とそのテーブルの脚の方位との間の関係とすることができる。しかし、別の事例では、問題の第１および第２の特徴を、同一の構造の異なる特徴とすることができる。この事例では、構築前関係は、異なる特徴の同一のパラメータの間の関係とすることができる。たとえば、構築前関係は、テーブルの第１の脚の位置とテーブルの第２の脚の位置との間の関係とすることができる。代替案では、構築前関係は、異なる特徴の異なるパラメータの間の関係とすることができる。たとえば、構築前関係は、テーブルの第１の脚の方位とテーブルの第２の脚のサイズとの間の関係とすることができる。他の事例／例も可能である。
【００６４】
［0071］  上で説明されたように配置されたシステムでは、第１および第２のパラメータは、それぞれ、とりわけ、本明細書で説明されるパラメータのうちの任意の１つとすることができる。たとえば、第１のパラメータは、とりわけ、第１の特徴の位置、第１の特徴の方位、第１の特徴の材料特性、および／または第１の特徴との相互作用の属性とすることができる。同様に、第２のパラメータは、第２の特徴の位置、第２の特徴の方位、第２の特徴の材料特性、および／または第２の特徴との相互作用の属性とすることができる。
【００６５】
［0072］  これを考慮すると、様々なタイプの構築前関係（１つまたは複数）が可能であり、したがって、コンピューティング・システムは、これらの関係（１つまたは複数）のうちの任意の１つを示す入力データを受信することができる。たとえば、構築前関係は、特徴の密度の構築後に観察された値に関してその特徴に適用される圧力の構築値を定義することができる。この形で、密度の構築後に観察された値が判定された後に、コンピューティング・システムは、その後、圧力の構築値を判定することができ、その結果、その構築値を有する圧力が、構造の生産中にその特徴に印加されるようになる。他の例も可能である。
【００６６】
［0073］  様々なタイプの構築前関係（１つまたは複数）が可能であるが、単純さのために、本開示は、本明細書ではしばしば位置関係の文脈で説明される。具体的には、第１のパラメータが第１の特徴の第１の位置であり、第２のパラメータが第２の特徴の第２の位置であると仮定すると、構築前関係は、第２の位置の構築後に観察された値に関する第１の位置の構築値を定義する位置関係とすることができる。この形で、第２の位置の構築後に観察された値が判定された後に、コンピューティング・システムは、その後、第１の位置の構築値を判定することができ、その結果、第１の特徴は、その構築値を有する位置で生産され得、これによって、位置関係を維持できるようになる。
【００６７】
［0074］  一般に、位置関係は、様々な形で定義され得る。一例では、位置関係は、第１の特徴と第２の特徴との間の相対距離値を定義することができ、その結果、これらの特徴の任意の個々の１つが最終的に示す（たとえば、下でさらに説明するように、しきい誤差以内で）位置にかかわりなく、特定の定義された距離が、これらの特徴の間で実質的に維持されるようになる。別の例では、位置関係は、１つまたは複数の座標値関係を含むことができる。たとえば、第１の座標値関係は、第２の位置の構築後に観察された値が「Ａ」の座標値である場合に、第１の位置の構築値が「Ｂ」の座標値でなければならないと定義することができる。第２の座標値関係は、第２の位置の構築後に観察された値が「Ｃ」の座標値である場合に、第１の位置の構築値が「Ｄ」の座標値でなければならないと定義することができ、以下同様である。この形で、第１の位置の座標値は、第２の位置の実際の座標値に依存して変化することができる。他の例も可能である。
【００６８】
［0075］  次に、図７Ａは、コンピューティング・システム５１０がそれを介して構築前関係を受信できるＧＵＩを示す。より具体的には、ＧＵＩの状態７００Ａでは、ＧＵＩは、生産されつつあるかこれから生産される構造５０４のモデルを表示する。上の議論と一致して、その構造５０４は、脚、表面、ならびに表面上に形成されたカップ・ホルダ７０２および７０４など、複数の特徴を有するテーブルとすることができる。さらに、コンピューティング・システム５１０は、インターフェース特徴７０８を介して、構造５０４のパラメータの値を指定し、かつ／または位置関係などの構築前関係（１つまたは複数）を指定する入力データを受信することができる。
【００６９】
［0076］  具体的には、モデルは、カップ・ホルダ７０４の位置「Ｘ」のモデル化値を指定し、このモデル化値は、テーブル上の基準点７０６に対して相対的に指定される。図示されているように、位置Ｘのモデル化値には、基準点７０６から２ｍの値がセットされている。さらに、モデルは、カップ・ホルダ７０２の位置「Ｚ」の構築値を指定し、この構築値は、テーブル上の基準点７０６に対して相対的に指定される。しかし、この事例では、位置Ｚの構築値は、まだ判定されていない位置Ｘの構築後に観察された値に関して定義される。具体的には、構築前位置関係は、位置関係がそれに関して確立される特徴の選択を介して、ならびに、これらの特徴のそれぞれの位置の間で維持されなければならない距離の入力を介して、インターフェース特徴７０８を介して定義され得る。したがって、インターフェース特徴７０８は、位置関係が、１ｍの距離「Ｙ」がカップ・ホルダ７０２とカップ・ホルダ７０４との間で維持されるように定義されており、したがって、位置Ｚの構築値が、距離Ｙを位置Ｘの構築後に観察された値に加算することを含む式の計算を介して判定されることを示す。他の実例も可能である。
【００７０】
［0077］  ブロック６０４では、方法６００は、モデルによって表された構造の生産中に、コンピューティング・システムによって、第２の構築パラメータの構築後に観察された値を判定することを含む。
【００７１】
［0078］  上の議論と一致して、コンピューティング・システムが、構築前関係を指定する入力データを受信した後に、コンピューティング・システムは、第２のパラメータの構築後に観察された値を判定することができ、その結果、コンピューティング・システムは、第１のパラメータの構築値を最終的に判定できるようになる。実際には、コンピューティング・システムは、第２の特徴の第２のパラメータが生産されたとの判定（現在既知の技法および／または将来開発される技法を使用して構造生産の進行を監視することによって行うことができる）時に、構築後に観察される値を判定することができる。たとえば、コンピューティング・システムは、テーブルの脚がある長さに切断されたとの判定を行うことができ、その判定を行う際に、これに応答してその長さの値を判定することができる。代替案では、コンピューティング・システムは、他の時に構築後に観察された値を判定することができる。
【００７２】
［0079］  それにもかかわらず、コンピューティング・システムは、様々な形で構築後に観察された値を判定することができる。たとえば、コンピューティング・システムは、ロボット・システムのセンサ（１つまたは複数）（たとえば、センサ（１つまたは複数）２１０）からおよび／または生産される構造の環境内の他のセンサ（１つまたは複数）（たとえば、センサ（１つまたは複数）４０２）からなど、１つまたは複数のセンサからセンサ・データを受信することができる。この例では、コンピューティング・システムは、その後、受信されたセンサ・データに基づいて、構築後に観察された値を判定することができる。たとえば、コンピューティング・システムは、位置センサから位置データを受信することができ、その後、第２の特徴の位置の値を判定するための基礎として、その位置データを使用することができる。別の例では、ロボット・システムは、センサ・データ（たとえば、ロボット・システムのセンサ（１つまたは複数）および／または他のセンサ（１つまたは複数）からの）に基づいて、構築後に観察された値を判定するステップを実行することができる。コンピューティング・システムは、その後、ロボット・システムから、判定された構築後に観察された値を受信することができ、この受信は、自動的におよび／または要求時に行われ得る。他の例も可能である。
【００７３】
［0080］  次に、図７Ｂは、コンピューティング・システムが本開示に従って判定できる構築後に観察された値を示す。具体的には、図７Ｂは、テーブルの形態をとる構造５０４が、少なくとも部分的に生産済みであることを示す。図示されているように、カップ・ホルダ７０４は、テーブルの表面上で基準点７０６から２．５ｍの値を有する位置Ｘに形成されている。したがって、コンピューティング・システムは、位置Ｘの構築後に観察された値が２．５ｍであると判定することができ、この値は、基準点７０６から２ｍの値をセットされた位置Ｘのモデル化値とは異なる。他の実例も可能である。
【００７４】
［0081］  ブロック６０６では、方法６００は、第２の構築パラメータの判定された構築後に観察された値に基づいて、コンピューティング・システムによって、受信された構築前関係に従って第１の構築パラメータの構築値を判定することを含む。
【００７５】
［0082］  上の議論と一致して、コンピューティング・システムが構築後に観察された値を判定した後に、コンピューティング・システムは、第２のパラメータの、その判定された構築後に観察された値を、構築前関係に従って第１のパラメータの構築値を判定するための基礎として使用することができる。一般に、コンピューティング・システムが構築値を判定する形は、構築前関係が確立される形に依存するものとすることができる。
【００７６】
［0083］  １つの事例で、構築前関係は、１つまたは複数の構築後に観察された値をそれぞれ１つまたは複数の構築値に写像する写像データとすることができる。この事例では、コンピューティング・システムが構築後に観察された値を判定した後に、コンピューティング・システムは、写像データを参照し、構築値を判定するのに、判定された構築後に観察された値を使用することができる。具体的には、写像データを参照する時に、コンピューティング・システムは、判定された構築後に観察された値が写像される構築値を判定することができ、したがって、第１のパラメータに関して使用されなければならない値として、その判定された構築値をセットすることができる。
【００７７】
［0084］  たとえば、座標値関係（１つまたは複数）の上で説明した例をもう一度参照すると、これらの座標値関係（１つまたは複数）は、写像データを介して定義され得る。たとえば、写像データは、構築後に観察された座標値Ａをモデル化座標値Ｂに写像することができ、構築後に観察された座標値Ｃをモデル化座標値Ｄに写像することができる。この形で、上で注記したように、第２の位置の構築後に観察された値が、「Ａ」の座標値であると判定される場合に、第１の位置の構築値は、写像データに基づいて、「Ｂ」の座標値になると判定される。第２の位置の構築後に観察された値が、「Ｃ」の座標値であると判定される場合に、第１の位置の構築値は、写像データに基づいて、「Ｄ」の座標値になると判定される。他の例も可能である。
【００７８】
［0085］  別の事例では、構築前関係は、未知の値を有する変数として第１および第２のパラメータを含み、これによって、構築後に観察された値に関して構築値を有効に定義する式とすることができる。この事例では、コンピューティング・システムが、構築後に観察された値を判定する時に、コンピューティング・システムは、第２のパラメータに対応する式内の変数の値を判定する。判定された値を考慮して、コンピューティング・システムは、その後、第１のパラメータに対応する変数の値を計算することができ、その計算された値は、第１のパラメータの判定された構築値である。
【００７９】
［0086］  たとえば、次に、図７Ｃは、構築前関係に従う構築値の判定を示す。具体的には、ＧＵＩの状態７００Ｃでは、インターフェース特徴７０８は、位置Ｘが、基準点７０６から２．５ｍの構築後に観察された値を有することを示し、これは、図７Ｂで導入された判定と一致する。さらに、インターフェース特徴７０８は、受信された位置関係を表す式が、位置Ｚの構築値を計算するために解かれたことを示す。より具体的には、インターフェース特徴７０８は、定義された距離Ｙ（たとえば、１ｍ）が、位置Ｘの構築後に観察された値（たとえば、基準点７０６から２．５ｍ）に加算されて、位置Ｚの判定された構築値（たとえば、基準点７０６から３．５ｍ）をもたらしたことを示す。この形で、コンピューティング・システム５１０は、定義された位置関係が実質的に維持される確率を高めるのを助けるために、モデルを有効に更新することができる。他の事例、例、および実例も可能である。
【００８０】
［0087］  ブロック６０８では、方法６００は、第１の構築パラメータの構築値を判定した後に、コンピューティング・システムによって、ロボット・システムに、ロボット・システムによる第１の特徴の生産に関連する命令を送信することであって、命令は、第１の特徴がそれに従って生産されなければならない第１の構築パラメータの判定された構築値を指定する、送信することを含む。
【００８１】
［0088］  上の議論と一致して、開示されるのは、構造のパラメータの間の関係が構築時中に維持されるように、構造が完全に生産される前に、この関係を明示的に定義する実施態様である。したがって、構築値が判定された後に、コンピューティング・システムは、その後、受信された構築前関係が実質的に維持されるように、構造の生産を容易にすることができる。それを行うために、コンピューティング・システムは、問題の第１の特徴の生産に関連する命令をロボット・システムに送信することができ、その命令は、判定された構築値を指定することができる。
【００８２】
［0089］  １つの事例で、コンピューティング・システムは、第１のパラメータの構築値の判定に基づいてまたは他の形でこれに応答して、ロボット・システムに命令を送信することができる。しかし、別の事例では、コンピューティング・システムは、とりわけ、判定された構築値および／または第１のパラメータの判定された構築値を指定するように更新されたモデルに関する情報を受信する要求に応答して、ロボット・システムに命令を送信することができる。
【００８３】
［0090］  どちらの事例でも、命令は、判定された構築値を指定することができ、その結果、ロボット・システムは、判定された構築値を指定するように、構造のローカルに記憶されたモデルを更新できるようになる。この形で、ロボット・システムは、更新されたローカルに記憶されたモデルに従って構造を最終的に生産することができる。それに加えてまたはその代わりに、コンピューティング・システムは、判定された構築値を指定するようにモデルを更新することができ、したがって、命令は、構築値を指定する更新されたモデルの少なくとも一部を含むことができる。この形で、ロボット・システムは、更新されたモデルの受信された部分に従って構造を最終的に生産することができる。さらに、命令は、第１の特徴が第１のパラメータの判定された構築値を示すように、オプションで、少なくとも第１の特徴を実際に生産するようにロボット・システムに指示することができる。他の事例も可能である。
【００８４】
［0091］  コンピューティング・システムが、第１のパラメータの判定された構築値を指定するようにモデルを更新できると仮定すると、コンピューティング・システムは、それに加えてまたはその代わりに、他の値を指定するようにモデルを更新することができる。たとえば、コンピューティング・システムは、第２のパラメータのモデル化値を判定された構築後に観察された値に置換することによるなど、判定された構築後に観察された値を指定するようにモデルを更新することができる。別の例では、コンピューティング・システムは、第１の特徴が、第１のパラメータの判定された構築値を示すように生産された後に、第１のパラメータの構築後に観察された値を判定することができ、第２のパラメータの構築後に観察された値を判定するのに使用される技法と同一のまたは異なる技法を使用してそれを行うことができる。第１のパラメータの構築後に観察された値は、第１のパラメータの判定された構築値と実質的に同一または同様でなければならないが、コンピューティング・システムは、第１のパラメータの判定された構築後に観察された値を指定するためにモデルを更新することができる。他の例も可能である。
【００８５】
［0092］  次に、図７Ｄは、受信された構築前位置関係が構造５０４の生産中にどのようにして維持されるのかを示す。具体的には、図７Ｄは、構造５０４の生産がさらに進行したことを示す。図示されているように、カップ・ホルダ７０２が、テーブルの表面上で基準点７０６から３．５ｍの値を有する位置Ｚに形成されており、これは、７Ｃの議論と一致して判定された位置Ｚの構築値と同等の値である。したがって、図示されているように、カップ・ホルダ７０２は、カップ・ホルダ７０４が形成された位置Ｘから定義された距離Ｙ（たとえば、１ｍ）にある位置Ｚに形成されている。この形で、受信された構築前位置関係は、カップ・ホルダ７０４の実際の位置Ｘがカップ・ホルダ７０４の最初に計画された位置Ｘとは異なるにもかかわらず、維持される。
【００８６】
［0093］  さらに、次に、図７Ｅは、モデルがある値を指定するように更新済みである、ＧＵＩの状態７００Ｅを示す。図示されているように、ＧＵＩの状態７００Ｅでは、インターフェース特徴７０８は、カップ・ホルダ７０２の位置Ｚの判定された構築後に観察された値を示した。この位置Ｚの判定された構築後に観察された値は、位置Ｚの判定された構築値と同等と示され、これによって、構造５０４が、構築前位置関係を維持した形で生産されたことを示す。他の実例も可能である。
【００８７】
［0094］  さらなる態様では、本明細書で開示されるのは、コンピューティング・システムがそれを介して構築前関係を定義する入力データを受信し、コンピューティング・システムがその上で判定された構築値のグラフィカル表現を表示できる、グラフィカル・インターフェースである。これに関して、次に、図８は、例の実施態様による、グラフィカル・インターフェースを使用して構築前関係を定義する例の方法８００を示す流れ図である。方法６００の文脈で説明した本開示のすべての態様が、方法８００の文脈でもあてはまることに留意されたい。
【００８８】
［0095］  ブロック８０２で、方法８００は、コンピューティング・システムによって、生産される構造のコンピュータ生成されたモデルの構築前関係を指定するために、１つまたは複数のインターフェース特徴を含むグラフィカル・インターフェースを表示することを含む。
【００８９】
［0096］  たとえば、表示されるグラフィカル・インターフェースは、図７Ａ、図７Ｃ、および図７Ｅに示されたＧＵＩの形態をとるように配置され得る。代替案は、表示されるグラフィカル・インターフェースは、本開示の範囲から逸脱することなく、任意の他の実現可能な形態をとるように配置され得る。
【００９０】
［0097］  ブロック８０４で、方法８００は、グラフィカル・インターフェースを介して、第２の構築パラメータの構築後に観察された値に関して第１の構築パラメータの構築値を定義する構築前関係を指定する入力データを受信することであって、第１の構築パラメータは、構造の第１の特徴の構築パラメータであり、第２の構築パラメータは、構造の第２の特徴の構築パラメータであり、構築後に観察された値は、構造の生産中に判定され、構築値は、指定された構築前関係に従って判定された構築後に観察された値に基づいて判定される、受信することを含む。
【００９１】
［0098］  たとえば、コンピューティング・システムは、ＩＭＥ（たとえば、ＩＭＥ  １１２）を介して、上の議論と一致し、したがって構築前関係を指定する入力データの提供のためのグラフィカル・インターフェースとの対話を可能にする入力データを受信することができる。注記したように、ＩＭＥは、グラフィカル・インターフェースの制御に使用されるコンピューティング・マウスなどのポインティング・デバイスとすることができる。コンピューティング・システムのディスプレイ・デバイスが、タッチスクリーン・ディスプレイである場合には、グラフィカル・インターフェースの制御を可能にするタッチ入力が、受信され得る。
【００９２】
［0099］  ブロック８０６で、方法８００は、構築値が判定された後に、グラフィカル・インターフェース上に、第１の構築パラメータの判定された構築値のグラフィカル表現を表示することを含む。
【００９３】
［0100］  たとえば、コンピューティング・システムがモデルを更新した後に、コンピューティング・システムは、グラフィカル・インターフェース上に更新されたモデルを表示することができる。代替案では、コンピューティング・システムは、必ずしも更新されたモデルの全体を表示することなく、グラフィカル・インターフェース上に、第１のパラメータの判定された構築値の指示を表示することができる。他の例も可能である。
【００９４】
ＩＶ．追加の特徴
Ａ．２つ以上の構築後に観察された値を指定する構築前関係
［0101］  例の実施態様では、本開示の様々な態様が、コンピューティング・システムが２つ以上の構築後に観察された値に関して構築値を定義する構築前関係を指定する入力データを受信するシナリオに拡張され得る。構築前関係は、３つ以上の構築後に観察された値に関して構築値を定義することができるが、単純さのために、この実施態様は、本明細書では２つの構築後に観察された値に関して構築値を定義する構築前関係の文脈で説明される。したがって、第１の特徴の第１のパラメータの構築値が定義されようとしていると仮定すると、構築前関係は、（ｉ）第２の特徴の第２のパラメータの構築後に観察された値および（ｉｉ）第３の特徴の第３のパラメータの構築後に観察された値に関してその構築値を定義することができる。
【００９５】
［0102］  ここで再び、構築前関係は、特徴および／またはパラメータの任意の実現可能な組み合わせに関して定義される関係とすることができる。具体的には、問題の第１、第２、および第３の特徴は、すべて、構造の同一の特徴とすることができ、あるいは、構造の異なる特徴とすることができる。いくつかの配置で、これらの特徴のうちの２つは、構造の同一の特徴とすることができ、特徴の他の１つは、その「同一の」特徴とは異なる特徴とすることができる。さらに、問題の第１、第２、および第３のパラメータは、同一のパラメータまたは異なるパラメータとすることができる。いくつかの配置で、これらのパラメータのうちの２つは、同一のパラメータとすることができ、パラメータの他の１つは、その「同一の」パラメータとは異なるパラメータとすることができる。他の事例も可能である。
【００９６】
［0103］  コンピューティング・システムが構築前関係を受信した後に、コンピューティング・システムは、構造の生産中に、第２のパラメータの構築後に観察された値ならびに第３のパラメータの構築後に観察された値を判定することができる。コンピューティング・システムは、これらの構築後に観察された値を実質的に同時にまたは異なる時に判定することができる。さらに、コンピューティング・システムは、とりわけ、本明細書で説明される技法のいずれかを使用して、各そのような構築後に観察された値を判定することができる。
【００９７】
［0104］  コンピューティング・システムが、第２および第３のパラメータの構築後に観察された値を判定した後に、コンピューティング・システムは、構築前関係に従って第１のパラメータの構築値を判定するための基礎として、これらの判定された構築後に観察された値を使用することができる。上の議論と一致して、コンピューティング・システムが構築値を判定する形は、構築前関係が確立される形に依存するものとすることができる。
【００９８】
［0105］  １つの事例で、構築前関係は、構築後に観察された値の１つまたは複数のセットをそれぞれ１つまたは複数の構築値に写像する写像データとすることができる。この事例で、コンピューティング・システムが、第２および第３のパラメータの構築後に観察された値のセットを判定した後に、コンピューティング・システムは、写像データを参照し、構築値を判定するのに、構築後に観察された値の判定されたセットを使用することができる。具体的には、写像データを参照する時に、コンピューティング・システムは、構築後に観察された値の判定されたセットが写像される構築値を判定することができ、したがって、第１のパラメータに関して使用されなければならない値として、その判定された構築値をセットすることができる。
【００９９】
［0106］  別の事例では、構築前関係は、未知の値を有する変数として第１、第２、および第３のパラメータを含み、これによって、構築後に観察された値に関して構築値を有効に定義する式とすることができる。この事例では、コンピューティング・システムが構築後に観察された値を判定する時に、コンピューティング・システムは、第２のパラメータに対応する式内の変数の値ならびに第３のパラメータに対応する式内の変数の値を判定する。判定された値を前提として、コンピューティング・システムは、第１のパラメータに対応する変数の値を計算することができ、その計算された値は、第１のパラメータの判定された構築値である。他の事例も可能である。
【０１００】
［0107］  コンピューティング・システムが、第１のパラメータのその構築値を判定した後に、コンピューティング・システムは、判定された構築値を指定する命令をロボット・システムに送信することができる。この形で、コンピューティング・システムは、受信された構築前関係が維持されるように、構造の生産を容易にすることができる。さらに、上の議論と一致して、コンピューティング・システムは、とりわけ、第１のパラメータの判定された構築値、第２のパラメータの判定された構築後に観察された値、第３のパラメータの判定された構築後に観察された値、第１のパラメータの構築後に観察された値を指定するために、任意の時点にモデルを更新することができる。
【０１０１】
［0108］  この実施態様の一例では、コンピューティング・システムは、（ｉ）テーブルの第２のカップ・ホルダの位置の構築後に観察された値および（ｉｉ）テーブルの表面のサイズの構築後に観察された値に関してテーブルの第１のカップ・ホルダの位置の構築値を定義する構築前関係を受信することができる。この例では、コンピューティング・システムがこれらの構築後に観察された値の両方を判定した後に、コンピューティング・システムは、その後、構築前関係に従ってテーブルの第１のカップ・ホルダの位置の構築値を決定するための基礎として、これらの判定された構築後に観察された値を使用することができる。この形で、テーブルは、第１のカップ・ホルダがテーブルの第２のカップ・ホルダの位置およびテーブルの表面のサイズに対する明示的な関係を維持する位置にあるように、生産され得る。他の例も可能である。
【０１０２】
Ｂ．構築前関係のシーケンス
［0109］  例の実施態様では、本開示の様々な態様は、コンピューティング・システムがお互いに依存する２つ以上の構築前関係を指定する入力データを受信するシナリオに拡張され得る。コンピューティング・システムは、互いに依存する３つ以上のそのような構築前関係を受信することができるが、単純さのために、この実施態様は、本明細書ではお互いに依存する２つの構築前関係の文脈で説明される。さらに、単純さのために、この実施態様は、本明細書では単一の構築後に観察された値に関して構築値を定義する各そのような構築前関係の文脈で説明される。しかし、この実施態様が、２つ以上の構築後に観察される値に関して構築値を定義する構築前関係の一方または両方の文脈にもあてはまることができることを理解されたい。
【０１０３】
［0110］  したがって、第１の構築前関係は、第２の特徴の第２のパラメータの構築後に観察された値に関して第１の特徴の第１のパラメータの構築値を定義することができ、第２の構築前関係は、第１のパラメータの構築後に観察された値に関して第３の特徴の第３のパラメータの構築値を定義することができる。ここで再び、第１、第２、および第３の特徴は、すべて、構造の同一の特徴とすることができ、あるいは、構造の異なる特徴とすることができる。いくつかの配置で、これらの特徴のうちの２つは、構造の同一の特徴とすることができ、特徴の他の１つは、その「同一の」特徴とは異なる特徴とすることができる。さらに、第１、第２、および第３のパラメータは、同一のパラメータとすることができ、あるいは、異なるパラメータとすることができる。いくつかの配置で、これらのパラメータのうちの２つは、同一のパラメータとすることができ、パラメータの他の１つは、その「同一の」パラメータとは異なるパラメータとすることができる。他の事例も可能である。
【０１０４】
［0111］  どちらの事例でも、第１および第２の構築前関係は、第１のパラメータを介してお互いに依存する。具体的には、コンピューティング・システムは、第１の構築前関係に従って第１のパラメータの構築値を判定するために、第２のパラメータの構築後に観察された値をまず判定することができる。第１のパラメータの構築値が判定された後に、コンピューティング・システムは、第１のパラメータの判定された構築値を指定する命令をロボット・システムに送ることができ、その結果、第１の特徴の第１のパラメータが、その構築値に従って生産されるようになる。第１の特徴の第１のパラメータが生産された後に、コンピューティング・システムは、第１のパラメータの構築後に観察された値を判定することができる。コンピューティング・システムが第１のパラメータの構築後に観察された値を判定した後に、コンピューティング・システムは、第２の構築前関係に従って第３のパラメータの構築値を最終的に判定することができ、第３のパラメータの判定された構築値を指定するさらなる命令をロボット・システムに送信することができ、その結果、第３の特徴の第３のパラメータが、その構築値に従って生産されるようになる。この形で、コンピューティング・システムは、複数の明示的に定義された関係が構造内で実質的に維持される確率を高めることができる。
【０１０５】
［0112］  この実施態様の一例では、コンピューティング・システムは、テーブルの第２のカップ・ホルダの位置の構築後に観察された値に関してテーブルの第１のカップ・ホルダの位置の構築値を定義する第１の構築前関係を受信することができ、テーブルの第１のカップ・ホルダの位置の構築後に観察された値に関してテーブルの第３のカップ・ホルダの位置の構築値を定義する第２の構築前関係を受信することができる。
【０１０６】
［0113］  この例では、コンピューティング・システムは、テーブルの第２のカップ・ホルダの位置の構築後に観察された値を判定することができ、判定された構築後に観察された値に基づいて、コンピューティング・システムは、その後、第１の構築前関係に従ってテーブルの第１のカップ・ホルダの位置の構築値を判定することができる。テーブルの第１のカップ・ホルダが、判定された構築値に従う位置で生産された後に、コンピューティング・システムは、テーブルの第１のカップ・ホルダの位置の構築後に観察された値を判定することができ、この値は、理想的にはその判定された構築値と同一または実質的に同様でなければならない。テーブルの第１のカップ・ホルダの位置の判定された構築後に観察された値に基づいて、コンピューティング・システムは、その後、第２の構築前関係に従ってテーブルの第３のカップ・ホルダの位置の構築値を判定することができ、その結果、テーブルの第３のカップ・ホルダは、その判定された構築値に従う位置で生産されるようになる。この形で、コンピューティング・システムは、複数の明示的に定義された位置関係が生産されるテーブル内で実質的に維持される確率を高めることができる。他の例も可能である。
【０１０７】
Ｃ．明示的な構築前関係への暗黙の関係の変換
［0114］  例の実施態様では、構造のモデルが、暗黙の関係を既に含む場合があり、コンピューティング・システムは、この暗黙の関係が明示的な構築前関係としてモデル内で定義されなければならないことを示す入力データを（たとえば、グラフィカル・インターフェースを介して）受信することができる。具体的には、モデルが、第１のパラメータの第１のモデル化値および第２のパラメータの第２のモデル化値を既に指定している場合があり、これらの第１および第２のモデル化値が、お互いとの暗黙の関係を有する場合がある。その暗黙の関係を明示的な構築前関係に変換することによって、コンピューティング・システムは、これらのパラメータのうちの特定の１つが、最終的に、モデル内で指定される対応するモデル化値とは異なる対応する構築後値を有することになる場合であっても、構築前関係を実質的に維持する確率を高めるために、本明細書で説明される動作を実行することができる。
【０１０８】
［0115］  さらに、コンピューティング・システムは、明示的な構築前関係への暗黙の関係の変換を示す入力データを様々な形で受信することができる。１つの事例では、入力データは、第１および第２のパラメータの選択を示すことができ、これらのパラメータの間の暗黙の関係を、実質的に維持されなければならない明示的な構築前関係に変換する要求を含むことができる。別の事例では、コンピュータ・システムは、他の可能性の中でも、モデル内の暗黙の関係を判定し、モデル内にあると判定されたすべての暗黙の関係のフル・リストおよび／または検索判断基準に基づいてフィルタリングされた部分的リストなど、暗黙の関係（１つまたは複数）のリストを表示するように構成され得る。この事例では、入力データは、これらの表示される暗黙の関係（１つまたは複数）のうちの少なくとも１つの選択ならびに選択された暗黙の関係（１つまたは複数）を明示的な構築前関係（１つまたは複数）にそれぞれ変換する要求を含むことができる。他の事例も可能である。
【０１０９】
［0116］  たとえば、モデルは、第１の特徴の位置の第１のモデル化された座標値ならびに第２の特徴の位置の第２のモデル化された座標値を指定することができる。これらのモデル化された座標値を考慮すると、第１および第２の特徴は、たとえば第１の座標と第２の座標との間の暗黙のうちに定義された距離など、モデル内で暗黙のうちに定義される、ある種の位値関係を有する可能性がある。明示的な位置関係へのこの暗黙の位値関係の変換を介して、コンピューティング・システムは、これらの第１の特徴と第２の特徴との間で維持されなければならない距離になるように問題のその距離を定義する構築前関係を指定する入力データを有効に受信することができる。この形で、これらの位置のうちの特定の１つが、最終的に、モデル内で指定されたモデル化された座標値以外の対応する構築後値を有することになる場合であっても、コンピューティング・システムは、第１の特徴と第２の特徴との間の距離が実質的に維持される確率を高めることができる。他の例も可能である。
【０１１０】
Ｄ．誤差の考慮
［0117］  例の実施態様では、コンピューティング・システムは、パラメータ（１つまたは複数）の個々の値（１つまたは複数）より構築前関係を優先すべきか否かの基礎として、パラメータ（１つまたは複数）の値（１つまたは複数）に関連する１つまたは複数の誤差を考慮することができる。これを容易にするために、コンピューティング・システムは、他のオプションの中でも、入力データとして受信されまたは手動エンジニアリング入力を介して確立することができる、特定のパラメータに関連するしきい誤差（公差と呼ぶこともできる）を指定するデータをその上に記憶されまたは他の形でこれへの参照を有することができる。この配置を用いると、コンピューティング・システムは、特定のパラメータに関連する誤差を判定することができ、その後、判定された誤差がしきい誤差を超えるか否かの判定を行うことができる。その判定に基づいて、コンピューティング・システムは、その後、明示的に定義された構築前関係の維持の開示されるプロセスを実行すべきか否かを判定することができる。
【０１１１】
［0118］  １つの例のシナリオでは、誤差の考慮は、受信された構築前関係内で定義されたパラメータに関するものとすることができる。具体的には、第２のパラメータの構築後に観察された値に関して第１のパラメータの構築値を定義する構築前関係を考慮して、コンピューティング・システムは、第１のパラメータに関連する誤差に基づいて、その構築前関係を維持すべきか否かを判定することができる。
【０１１２】
［0119］  より具体的には、コンピューティング・システムは、上の議論と一致して、第２のパラメータの構築後に観察された値に基づいて第１のパラメータの構築値を判定することができる。第１のパラメータの判定された構築値に基づいて、コンピューティング・システムは、第１のパラメータに関連する誤差を判定することができる。具体的には、モデルは、第１のパラメータの事前定義の値／モデル化値を指定することができ、この事前定義の値／モデル化値は、第１のパラメータの構築値が判定される前に第１のパラメータに与えられる予備的な値とすることができる。しかし、構築前関係を考慮すると、第２のパラメータの構築後に観察された値が最終的に第２のパラメータのモデル化値とは異なるものになる場合に、第１のパラメータの判定された構築値は、最終的に、第１のパラメータのモデル化値とは異なるものになる可能性がある。したがって、問題の誤差は、第１のパラメータのモデル化値に対する第１のパラメータの判定された構築値の比較に基づいて判定され得る。
［0120］  
【０１１３】
一般に、比較に基づく誤差の判定は、様々な形態をとることができる。１つの事例では、誤差の判定は、判定された構築値とモデル化値との間の差（たとえば、絶対差）を判定することを含むことができる。別の事例では、モデルは、許可される１つまたは複数のモデル化値（たとえば、値のセットまたは値の範囲）を指定し、これらのモデル化値以外の値が許可されないようにすることができる。したがって、コンピューティング・システムは、判定された構築値が許可されない値と同等である場合には誤差があると判定することができ、判定された構築値が許可されるモデル化値と同等である場合には誤差がないと判定することができる。他の事例も可能である。
【０１１４】
［0121］  これを考慮すると、コンピューティング・システムは、判定された誤差がしきい誤差を超える（たとえば、しきい誤差以上である）か否かを判定することができ、それを様々な形で行うことができる。１つの事例では、誤差が、上の議論と一致して、許可される値（１つまたは複数）との比較に基づいて判定される場合に、この事例での誤差の判定は、自動的に、しきい誤差を超えることの判定になるはずである。しかし、別の事例では、誤差が、判定された構築値とモデル化値との間の差に基づいて判定される場合に、コンピューティング・システムは、差がしきい差を超えるか否かを判定することができる。他の事例も可能である。
【０１１５】
［0122］  したがって、コンピューティング・システムが、判定された誤差がしきい誤差を超えないと判定する場合に、コンピューティング・システムは、これに応答して、第１の特徴が第１のパラメータの判定された構築値に従って生産されるべきであると判定することができ、その後、本開示で説明されるようにそれを行うことができる。しかし、その代わりに、コンピューティング・システムが、誤差がしきい誤差を超えると判定する場合に、コンピューティング・システムは、第１の特徴が、第１のパラメータに関連する誤差がしきい誤差を超えないようにする、第１のパラメータの別の値に従って生産されるべきであると判定することができる。実際には、この別の値は、様々な形態をとることができる。
【０１１６】
［0123］  １つの事例では、この別の値は、第１のパラメータのモデル化値／事前定義の値とすることができる。
【０１１７】
［0124］  しかし、別の事例では、この別の値は、第１のパラメータに関連する誤差がしきい誤差を超えないようにしながら、第１のパラメータと第２のパラメータとの間の関係が構築前関係にできる限り近くなることを可能にするとコンピューティング・システムが判定する値とすることができる。
【０１１８】
［0125］  たとえば、第１の特徴の第１の位置と第２の特徴の第２の位置との間で１ｍの距離を維持しようとする目標位置関係を与えられて、コンピューティング・システムは、その距離の維持が、第１の位置に関連する誤差にしきい誤差を超えさせると判定することができる。この例では、コンピューティング・システムは、これらの特徴の間で０．９ｍの距離を維持することが、目標位置関係に実質的に近く、第１の位置に関連する誤差にしきい誤差を超えさせないと判定することができる。したがって、コンピューティング・システムは、第１の特徴が、特徴の間で０．９ｍの距離を維持する位置で生産されるべきであると判定することができる。
【０１１９】
［0126］  このシナリオの一特定の例では、図７Ａ〜図７Ｅで提供された例をもう一度参照すると、コンピューティング・システムは、位置Ｘの構築後に観察された値が２．５ｍになると判定し、これは、基準点７０６から２ｍの値をセットされた位置Ｘのモデル化値とは異なる。その結果、コンピューティング・モードは、位置Ｚの構築値が基準点７０６から３．５ｍになると判定した。位置Ｚのモデル化値が、基準点７０６から３ｍになると指定されたと仮定すると、コンピューティング・システムは、位置Ｚに関連する誤差が、０．５ｍ（すなわち、３．５ｍ引く３ｍ）の差になると判定することができる。
【０１２０】
［0127］  この例では、しきい誤差が０．６ｍのしきい差になるようにセットされる状況を考慮して、コンピューティング・システムは、位置Ｚに関連する判定された誤差がしきい誤差を超えないと判定することができ、したがって、コンピューティング・システムは、それに応答して、図７Ａ〜図７Ｅで説明した構築前関係の維持に進行することができる。その一方で、しきい誤差が０．３ｍのしきい差になるようにセットされる状況では、コンピューティング・システムは、位置Ｚに関連する判定された誤差がしきい誤差を超えると判定することができ、したがって、コンピューティング・システムは、それに応答して、構築前関係を維持せず、その代わりに、カップ・ホルダ７０２を、しきい誤差を超えないことを可能にする値を有する位置Ｚに位置決めさせることができる。他の例も可能である。
【０１２１】
［0128］  別の例のシナリオでは、誤差の考慮は、受信された構築前関係が維持されるか否かに基づく値を有するパラメータに関するものとすることができる。具体的には、第２のパラメータの構築後に観察された値に関して第１のパラメータの構築値を定義する第１の構築前関係を与えられて、コンピューティング・システムは、第３のパラメータに関連する誤差に基づいて第１の構築前関係を維持すべきか否かを判定することができる。実際には、第３のパラメータは、第１のパラメータの判定された構築値に何らかの形で依存するかこれに基づく値を有する場合がある。たとえば、第２の構築前関係が、第１のパラメータの構築後に観察された値に関して第３のパラメータの構築値を定義し、これによって、第２の構築前関係を第１の構築前関係に依存するものにする（すなわち、関係のシーケンス）場合がある。
【０１２２】
［0129］  より具体的には、コンピューティング・システムは、上の議論と一致して、第２のパラメータの構築後に観察された値に基づいて第１のパラメータの構築値を判定することができる。第１のパラメータの判定された構築値に基づいて、コンピューティング・システムは、第３のパラメータに関連する誤差を判定することができる。それを行うために、コンピューティング・システムは第１のパラメータの判定された構築値を考慮して第３のパラメータの構築値を判定しまたは予測することができる。たとえば、コンピューティング・システムは、第１のパラメータの構築後に観察された値が第１のパラメータの判定された構築値と同等になると仮定することができ、第１のパラメータの構築後に観察された値を実際に判定することができ、その後、第２の構築前関係に従って第３のパラメータの構築値を判定するための基礎として第１のパラメータの構築後に観察された値を使用することができる。それにもかかわらず、コンピューティング・システムが、第３のパラメータの構築値を判定しまたは予測した後に、コンピューティング・システムは、第３のパラメータのモデル化値に対する第３のパラメータの判定された構築値の比較に基づいて誤差を判定することができる。
【０１２３】
［0130］  具体的には、モデルは、第３のパラメータのモデル化値を指定することができ、このモデル化値は、第３のパラメータの構築値が判定される前に第３のパラメータに与えられる予備的な値とすることができる。しかし、問題の第１の構築前関係を与えられ、第３のパラメータが第１のパラメータの判定された構築値に何らかの形で依存する値を有する可能性があることを考慮すると、第２のパラメータの構築後に観察された値が最終的に第２のパラメータのモデル化値とは異なるようになる場合に、第３のパラメータの判定された構築値は、最終的に、第３のパラメータのモデル化値とは異なるようになる可能性がある。したがって、問題の誤差は、第３のパラメータのモデル化値に対する第３のパラメータの判定された構築値の比較に基づいて判定され得る。
【０１２４】
［0131］  この例のシナリオでは、モデル化値に対する構築値の比較に基づく誤差の判定は、たとえば上で説明したものなど、様々な形態をとることができる。さらに、コンピューティング・システムは、その後、とりわけ、上で説明した技法のいずれかを使用して、判定された誤差がしきい誤差を超えるか否かを判定することができる。
【０１２５】
［0132］  したがって、コンピューティング・システムが、第３のパラメータに関連する判定された誤差がしきい誤差を超えないと判定する場合に、コンピューティング・システムは、それに応答して、第１の特徴が第１のパラメータの判定された構築値に従って生産されなければならないと判定することができ、その後、本開示で説明されるようにそれを行うことができる。しかし、コンピューティング・システムが、第３のパラメータに関連する誤差がしきい誤差を超えると判定する場合に、コンピューティング・システムは、それに応答して、第１の特徴が、第３のパラメータに関連する誤差がしきい誤差を超えないようにする第１のパラメータの別の値に従って生産されなければならないと判定することができる。実際には、この別の値は、様々な形態をとることができる。
【０１２６】
［0133］  １つの事例では、この別の値は、第１のパラメータの事前定義の値／モデル化値とすることができる。
【０１２７】
［0134］  しかし、別の事例では、この別の値は、第３のパラメータに関連する誤差がしきい誤差を超えないようにしながら、第１のパラメータと第２のパラメータとの関係が構築前の関係にできる限り近くなることを可能にするとコンピューティング・システムが判定する値とすることができる。
【０１２８】
［0135］  たとえば、第１の特徴の第１の位置と第２の特徴の第２の位置との間で１ｍの距離を維持しようとする目標位置関係を与えられて、コンピューティング・システムは、その距離の維持が、第３の特徴の第３の位置に関連する誤差にしきい誤差を超えさせると判定することができる。この例では、コンピューティング・システムは、これらの第１の特徴と第２の特徴との間で０．８ｍの距離を維持することが、目標位置関係に実質的に近く、第３の位置に関連する誤差にしきい誤差を超えさせないと判定することができる。したがって、コンピューティング・システムは、第１の特徴が、第１の特徴と第２の特徴との間で０．８ｍの距離を維持する位置で生産されるべきであると判定することができる。他の実例も可能である。
【０１２９】
［0136］  この手法を用いると、コンピューティング・システムは、第１のパラメータの値に何らかの形で依存する（たとえば、関係のシーケンスに基づいて）対応する他の値（１つまたは複数）を有する他のパラメータ（１つまたは複数）に関連する１つまたは複数の誤差を判定するために、第１のパラメータの判定された構築値を評価することができる。この形で、コンピューティング・システムは、他のパラメータ（１つまたは複数）の他の値（１つまたは複数）のそれぞれがそれぞれに定義された公差以内になることを可能にする値になるように第１のパラメータの値をセットし、これによって、構造の後続の生産の柔軟性を提供することができる。
【０１３０】
［0137］  実際には、コンピューティング・システムは、これを様々な形のうちの１つで容易にすることができる。たとえば、コンピューティング・システムは、構築前関係（１つまたは複数）および関連する公差を式および／または不等式のセットで表すことができる。これを考慮すると、コンピューティング・システムは、セットに対する最適解を判定するために、セットに対する１つまたは複数の解を判定し、かつ／または最適化（たとえば、勾配降下最適化アルゴリズム）を実行することができる。どちらの事例でも、解（１つまたは複数）は、第１のおよび／または他のパラメータ（１つまたは複数）に関して、それぞれ定義された公差（１つまたは複数）内のそれぞれ判定された値（１つまたは複数）を提供する。これらの判定された値（１つまたは複数）を考慮して、コンピューティング・システムは、他のオプションの中でも、判定された値（１つまたは複数）を指定するようにモデルを更新することができ、かつ／または後続構造生産ステップを判定するための基礎として判定された値（１つまたは複数）を使用することができる。他の例も可能である。
【０１３１】
［0138］  さらなる態様では、コンピューティング・システムは、パラメータ（１つまたは複数）の個々の値（１つまたは複数）より構築前関係（１つまたは複数）を優先すべきか否かを判定するための基礎として２つ以上のパラメータに関連する誤差を評価することができる。具体的には、コンピューティング・システムは、これらの２つ以上のパラメータの値（たとえば、構築値および／または構築後値）を事前定義の値と比較することによって誤差を判定することができ、この比較は、とりわけ、これらの値の合計または平均値を事前定義の値と比較することを含むことができる。それに加えてまたはその代わりに、コンピューティング・システムは、これらの値をお互いと比較すること（たとえば、お互いからの値の偏差）によって、誤差を判定することができる。どちらの事例でも、上の議論と一致して、コンピューティング・システムが誤差を判定した後に、コンピューティング・システムは、誤差がしきい誤差を超えるか否かを、したがって、問題のパラメータの判定された構築値に従ってある種の特徴（１つまたは複数）を生産すべきか否かを判定することができる。
【０１３２】
［0139］  たとえば、コンピューティング・システムは、テーブルのすべての脚の長さの合計に関連する誤差を判定することができる。たとえば、コンピューティング・システムは、それぞれテーブルの第１および第２の脚の構築後値とそれぞれテーブルの第３および第４の脚の構築値とを判定することができる。コンピューティング・システムは、これらの値を使用して、テーブルのすべての脚の長さの合計を判定することができる。その後、コンピューティング・システムは、テーブルのすべての脚の長さの合計の事前定義の値（たとえば、１２ｍ）と判定された合計（たとえば、１２．２ｍ）を比較することによって誤差を判定することができ、この合計の事前定義の値は、テーブルのすべての脚のモデル化された合計を表す予備的な値とすることができる。たとえば、コンピューティング・システムは、判定された合計と事前定義の値との間の差（たとえば、０．２ｍ）を判定することができる。
【０１３３】
［0140］  この例では、コンピューティング・システムが誤差を判定した後に、コンピューティング・システムは、判定された誤差がしきい誤差を超えるか否かを判定することができる。コンピューティング・システムが、判定された誤差がしきい誤差を超えない（たとえば、０．５ｍのしきい差）と判定する場合に、コンピューティング・システムは、それぞれに判定された構築値にしたがって第３および第４の脚を生産するようにロボット・システムに命令することによるなど、構築前関係の維持に進むことができる。しかし、コンピューティング・システムが、判定された誤差がしきい誤差を超える（たとえば、０．１ｍのしきい差）と判定する場合には、コンピューティング・システムは、それに応答して、ある種の構築前関係（１つまたは複数）を維持しなくてもよく、その代わりに、しきい誤差を超えないことを可能にするそれぞれの値に従って第３および／または第４の脚を生産するようにロボット・システムに命令することができる。他の例も可能である。
【０１３４】
Ｖ.結論
［0141］  図面に示された特定の配置を、限定的とみなしてはならない。他の実施態様が、所与の図に示された各要素のより多数またはより少数を含むことができることを理解されたい。さらに、図示の要素の一部を、組み合わせまたは省略することができる。さらに、例示的な実施態様は、図面に示されていない要素を含むことができる。
【０１３５】
［0142］  さらに、様々な態様および実施態様が本明細書で開示されたが、他の態様および実施態様が、当業者に明白になろう。本明細書で開示された様々な態様および実施態様は、例示のためのものであって、限定的であることは意図されておらず、真の範囲および趣旨は、以下の特許請求の範囲によって示される。本明細書で提示される主題の趣旨または範囲から逸脱せずに、他の実施態様を利用することができ、他の変更を行うことができる。本明細書で全般的に説明され、図面に示された本開示の諸態様が、様々な異なる構成で配置され、置換され、組み合わされ、分離され、設計され得、そのすべてが本明細書で企図されていることが、たやすく理解されよう。
【図１】
0006844023.tif 000002
【図２】
0006844023.tif 000003
【図３】
0006844023.tif 000004
【図４】
0006844023.tif 000005
【図５】
0006844023.tif 000006
【図６】
0006844023.tif 000007
【図７Ａ】
0006844023.tif 000008
【図７Ｂ】
0006844023.tif 000009
【図７Ｃ】
0006844023.tif 000010
【図７Ｄ】
0006844023.tif 000011
【図７Ｅ】
0006844023.tif 000012
【図８】
0006844023.tif 000013