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

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

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

特許7417815製造及び構造的パフォーマンスを促進する全体的な厚さの制御によるコンピュータ支援のジェネレーティブデザイン
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-11
(45)【発行日】2024-01-19
(54)【発明の名称】製造及び構造的パフォーマンスを促進する全体的な厚さの制御によるコンピュータ支援のジェネレーティブデザイン
(51)【国際特許分類】
   G06F 30/20 20200101AFI20240112BHJP
   G06F 30/10 20200101ALI20240112BHJP
   G06F 111/04 20200101ALN20240112BHJP
【FI】
G06F30/20
G06F30/10 100
G06F111:04
【請求項の数】 20
(21)【出願番号】P 2022568651
(86)(22)【出願日】2021-04-16
(65)【公表番号】
(43)【公表日】2023-06-19
(86)【国際出願番号】 US2021027644
(87)【国際公開番号】W WO2021231027
(87)【国際公開日】2021-11-18
【審査請求日】2023-08-24
(31)【優先権主張番号】16/871,718
(32)【優先日】2020-05-11
(33)【優先権主張国・地域又は機関】US
【早期審査対象出願】
(73)【特許権者】
【識別番号】500280087
【氏名又は名称】オートデスク,インコーポレイテッド
(74)【代理人】
【識別番号】100092783
【弁理士】
【氏名又は名称】小林 浩
(74)【代理人】
【識別番号】100120134
【弁理士】
【氏名又は名称】大森 規雄
(74)【代理人】
【識別番号】100076185
【弁理士】
【氏名又は名称】小橋 正明
(72)【発明者】
【氏名】ブルラ, ラビ クメール
(72)【発明者】
【氏名】イオム, ジェイサン
(72)【発明者】
【氏名】ロドリゲス, ジーザス
【審査官】堀井 啓明
(56)【参考文献】
【文献】米国特許出願公開第2018/0229446(US,A1)
【文献】特開2003-172137(JP,A)
【文献】特開2011-28335(JP,A)
【文献】特開2011-186980(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 30/00-30/398
G06F 111/04
(57)【特許請求の範囲】
【請求項1】
方法であって、
コンピュータ支援設計プログラムによって、対応する物理的構造が製造されるモデル化されたオブジェクトの設計スペース、前記モデル化されたオブジェクトの1つ以上の設計基準、及び前記物理的構造の1つ以上の使用中の荷重ケースを取得することであって、前記1つ以上の設計基準が厚さの制約を含む、前記取得すること、
前記3次元形状のジオメトリと前記3次元形状のトポロジの両方を、前記1つ以上の設計基準及び前記1つ以上の使用中の荷重ケースによる前記設計スペースにおいて変更することを含む、前記コンピュータ支援設計プログラムによって前記モデル化されたオブジェクトのジェネレーティブデザイン3次元形状を反復的に変更することであって、前記反復的に変更することが、前記3次元形状の表面領域に対する前記3次元形状の体積の全体的な関係を使用して、前記3次元形状の現在の厚さを測定することにより、前記厚さの制約を使用することを含む、前記変更すること、及び
前記コンピュータ支援設計プログラムにより、1つ以上のコンピュータ制御製造システムを使用して前記物理的構造を製造する際に使用するために、前記モデル化されたオブジェクトの前記ジェネレーティブデザイン3次元形状を設けること、
を含んでおり、前記全体的な関係が、二乗された前記3次元形状の前記体積と三乗された前記3次元形状の前記表面積との単位のない比率を含んでいる前記方法。
【請求項2】
記取得することが、
前記設計スペースとして最初の3次元モデルを取得すること、
前記厚さの制約の最低限の厚さの値を取得すること、
前記最初の3次元モデルの最初の表面積を見出すこと、
前記最初の3次元モデルの形状及び前記最低限の厚さの値によって定められる厚さを有する中空の3次元オブジェクトの材料の最初の体積を計算すること、及び
前記最初の体積と前記最初の表面積の前記単位のない比率を使用して、前記厚さの制約の目標とする最低限の値を設定すること、を含む、請求項1に記載の方法。
【請求項3】
前記最初の体積を計算することは、前記最初の3次元モデルの前記最初の表面積に、前記最低限の厚さの値を掛けることを含む、請求項2に記載の方法。
【請求項4】
前記全体的な関係が、球に関して正規化された前記単位のない比率を含む、請求項2に記載の方法。
【請求項5】
前記全体的な関係が、正規化された単位のない比率の六乗根を含む、請求項4に記載の方法。
【請求項6】
前記反復的に変更することは、
前記3次元形状の現在のバージョン及び前記1つ以上の使用中の荷重ケースに従って前記モデル化されたオブジェクトの数値シミュレーションを実行して、前記モデル化されたオブジェクトの物理的応答の現在の数値評価を生成すること、
全体としての前記3次元形状の表面積に対する体積の前記全体的な関係を使用して、前記3次元形状の前記現在のバージョンの前記現在の厚さを測定すること、
前記物理的応答の前記現在の数値評価に基づいて、及び前記現在の厚さと前記厚さの制約の現在目標とする最低限の値との差に基づいて、前記3次元形状の前記現在のバージョンを更新し、前記モデル化されたオブジェクトの前記3次元形状の更新されたバージョンを生成すること、及び
事前に定められた数の形状変更の反復が実行されるまで、または前記設計スペースで前記モデル化されたオブジェクトの前記ジェネレーティブデザイン3次元形状が、前記1つ以上の設計基準及び前記1つ以上の使用中の荷重ケースの安定した解に収束するまで、少なくとも前記実行すること、前記測定すること、及び前記更新することを繰り返す、請求項2に記載の方法。
【請求項7】
前記更新することが、
前記現在の数値評価と、前記現在の厚さと前記厚さの制約の前記現在目標とする最低限の値との差に従って、前記3次元形状の等位集合表現で陰関数曲面の形状変化速度を計算すること、及び
前記形状変化速度を使用して前記等位集合表現を変更し、前記モデル化されたオブジェクトの前記3次元形状の更新バージョンを生成すること、を含み、
前記繰り返すことは、第1の部分に続く少なくとも第2の部分を含み、前記反復することの前記第2の部分は、前記最低限の厚さの値を使用して局所的な厚さの制約を適用することを含み、前記局所的な厚さの制約は、前記反復することの前記第1の部分の間に適用されなかった、請求項6に記載の方法。
【請求項8】
システムであって、
コンピュータ支援設計プログラムの命令が格納されている非一時的な記憶媒体、及び
前記コンピュータ支援設計プログラムの前記命令を実行するように構成された1つ以上のデータ処理装置を含み、命令が、
対応する物理的構造が製造される前記モデル化されたオブジェクトの設計スペース、モデル化されたオブジェクトの1つ以上の設計基準、及び前記物理的構造の1つ以上の使用中の荷重ケースを取得することであって、前記1つ以上の設計基準が厚さの制約を含む、前記取得すること、
前記3次元形状のジオメトリと前記3次元形状のトポロジの両方を、前記1つ以上の設計基準及び前記1つ以上の使用中の荷重ケースによる前記設計スペースにおいて変更することを含む、前記モデル化されたオブジェクトのジェネレーティブデザイン3次元形状を反復的に変更することであって、前記反復的な変更が、前記3次元形状の表面積に対する前記3次元形状の体積の全体的な関係を使用して、前記3次元形状の現在の厚さを測定することにより、前記厚さの制約を使用することを含む、前記変更すること、及び
1つ以上のコンピュータ制御製造システムを使用して前記物理的構造を製造する際に使用するために、前記モデル化されたオブジェクトの前記ジェネレーティブデザイン3次元形状を設けることであり、
前記全体的な関係が、二乗された前記3次元形状の前記体積と三乗された前記3次元形状の前記表面積との単位のない比率を含んでいる前記システム。
【請求項9】
記1つ以上のデータ処理装置が、前記コンピュータ支援設計プログラムの前記命令を実行するように構成することによって前記設計スペースを取得するための前記コンピュータ支援設計プログラムの前記命令を実行するよう構成され、前記命令が、
前記設計スペースとして最初の3次元モデルを取得すること、
前記厚さの制約の最低限の厚さの値を取得すること、
前記最初の3次元モデルの最初の表面積を見出すこと、
前記最初の3次元モデルの形状及び前記最低限の厚さの値によって定められる厚さを有する中空の3次元オブジェクトの材料の最初の体積を計算すること、及び
前記最初の体積と前記最初の表面積の前記単位のない比率を使用して、前記厚さの制約の目標とする最低限の値を設定することである、請求項8に記載のシステム。
【請求項10】
前記1つ以上のデータ処理装置は、前記コンピュータ支援設計プログラムの前記命令を実行して前記最初の3次元モデルの前記最初の表面積を前記最低限の厚さの値に掛けるように前記コンピュータ支援設計プログラムの前記命令を実行するように構成することによって、前記最初の体積を計算するように構成されている、請求項9に記載のシステム。
【請求項11】
前記全体的な関係が、球に関して正規化された前記単位のない比率を含む、請求項9に記載のシステム。
【請求項12】
前記1つ以上のデータ処理装置は、前記コンピュータ支援設計プログラムの前記命令を実行するように構成されることによって、前記モデル化されたオブジェクトの前記ジェネレーティブデザイン3次元形状を反復的に変更するための前記コンピュータ支援設計プログラムの前記命令を実行するように構成され、前記命令が
前記3次元形状の現在のバージョン及び前記1つ以上の使用中の荷重ケースに従って前記モデル化されたオブジェクトの数値シミュレーションを実行して、前記モデル化されたオブジェクトの物理的応答の現在の数値評価を生成すること、
全体としての前記3次元形状の表面積に対する体積の前記全体的な関係を使用して、前記3次元形状の前記現在のバージョンの前記現在の厚さを測定すること、
前記物理的応答の前記現在の数値評価に基づいて、及び前記現在の厚さと前記厚さの制約の現在目標とする最低限の値との差に基づいて、前記3次元形状の前記現在のバージョンを更新し、前記モデル化されたオブジェクトの前記3次元形状の更新されたバージョンを生成すること、及び
事前に定められた数の形状の変更の反復が実行されるまで、または前記設計スペースで前記モデル化されたオブジェクトの前記ジェネレーティブデザイン3次元形状が、前記1つ以上の設計基準及び前記1つ以上の使用中の荷重ケースの安定した解に収束するまで、前記反復的変更を繰り返すことである、請求項9に記載のシステム。
【請求項13】
前記1つ以上のデータ処理装置は、前記コンピュータ支援設計プログラムの前記命令を実行するよう構成されることによって、前記3次元形状の前記現在のバージョンを更新するための前記コンピュータ支援設計プログラムの前記命令を実行するように構成され、前記命令が、
前記現在の数値評価と、前記現在の厚さと前記厚さの制約の前記現在目標とする最低限の値との差に従って、前記3次元形状の等位集合表現で陰関数曲面の形状変化速度を計算すること、及び
前記形状変化速度を使用して前記等位集合表現を変更し、前記モデル化されたオブジェクトの前記3次元形状の更新バージョンを生成することであり、
前記反復的な変更は、第1の部分とそれに続く第2の部分を含み、前記1つ以上のデータ処理装置は、前記コンピュータ支援設計プログラムの前記命令を実行して、前記反復的な変更の前記第2の部分の間に前記最低限の厚さの値を用いて局所的な厚さの制約を適用するよう構成され、前記局所的な厚さの制約は、前記反復的な変更の前記第1の部分の間に適用されなかった、請求項12に記載のシステム。
【請求項14】
加法的製造機または減算的製造機を含む、前記1つ以上のコンピュータ制御製造システムを含み、前記1つ以上のデータ処理装置が、前記モデル化されたオブジェクトの前記ジェネレーティブデザイン3次元形状から、前記加法的製造機または前記減算的製造機の工具経路の仕様を生成し、前記工具経路の仕様を使用して前記加法製造機で前記モデル化されたオブジェクトに対応する前記物理的構造を製造する前記コンピュータ支援設計プログラムの前記命令を実行するように構成されている、請求項8に記載のシステム。
【請求項15】
1つ以上のデータ処理装置に、
対応する物理的構造が製造されるモデル化されたオブジェクトの設計スペース、前記モデル化されたオブジェクトの1つ以上の設計基準、及び前記物理的構造の1つ以上の使用中の荷重ケースを取得することであって、前記1つ以上の設計基準が厚さの制約を含む、前記取得すること、
前記3次元形状のジオメトリと前記3次元形状のトポロジの両方を、前記1つ以上の設計基準及び前記1つ以上の使用中の荷重ケースによる前記設計スペースにおいて変更することを含む、前記モデル化されたオブジェクトのジェネレーティブデザイン3次元形状を反復的に変更することであって、前記反復的に変更することが、前記3次元形状の表面領域に対する前記3次元形状の体積の全体的な関係を使用して、前記3次元形状の現在の厚さを測定することにより、前記厚さの制約を使用することを含む、前記変更すること、及び
1つ以上のコンピュータ制御製造システムを使用して前記物理的構造を製造する際に使用するために、前記モデル化されたオブジェクトの前記ジェネレーティブデザイン3次元形状を設けること、を含む動作を実行させるように動作可能なコンピュータ支援設計プログラムを符号化する非一時的なコンピュータ可読媒体であって、前記全体的な関係が、二乗された前記3次元形状の前記体積と三乗された前記3次元形状の前記表面積との単位のない比率を含んでいる非一時的なコンピュータ可読媒体
【請求項16】
記取得することが、
前記設計スペースとして最初の3次元モデルを取得すること、
前記厚さの制約の最低限の厚さの値を取得すること、
前記最初の3次元モデルの最初の表面積を見出すこと、
前記最初の3次元モデルの形状及び前記最低限の厚さの値によって定められる厚さを有する中空の3次元オブジェクトの材料の最初の体積を計算すること、及び
前記最初の体積と前記最初の表面積の前記単位のない比率を使用して、前記厚さの制約の目標とする最低限の値を設定することを含む、請求項15に記載の非一時的なコンピュータ可読媒体。
【請求項17】
前記最初の体積を計算することは、前記最初の3次元モデルの前記最初の表面積に、前記最低限の厚さの値を掛けることを含む、請求項16に記載の非一時的なコンピュータ可読媒体。
【請求項18】
前記全体的な関係が、球に関して正規化された前記単位のない比率を含む、請求項17に記載の非一時的なコンピュータ可読媒体。
【請求項19】
前記反復的に変更することは、
前記3次元形状の現在のバージョン及び前記1つ以上の使用中の荷重ケースに従って前記モデル化されたオブジェクトの数値シミュレーションを実行して、前記モデル化されたオブジェクトの物理的応答の現在の数値評価を生成すること、
全体としての前記3次元形状の表面積に対する体積の前記全体的な関係を使用して、前記3次元形状の前記現在のバージョンの前記現在の厚さを測定すること、
前記物理的応答の前記現在の数値評価に基づいて、及び前記現在の厚さと前記厚さの制約の現在目標とする最低限の値との差に基づいて、前記3次元形状の前記現在のバージョンを更新し、前記モデル化されたオブジェクトの前記3次元形状の更新されたバージョンを生成すること、及び
事前に定められた数の形状変更の反復が実行されるまで、または前記設計スペースで前記モデル化されたオブジェクトの前記ジェネレーティブデザイン3次元形状が、前記1つ以上の設計基準及び前記1つ以上の使用中の荷重ケースの安定した解に収束するまで、少なくとも前記実行すること、前記測定すること、及び前記更新することを繰り返すこと、を含む、請求項16に記載の非一時的なコンピュータ可読媒体。
【請求項20】
前記更新することは、
前記現在の数値評価と、前記現在の厚さと前記厚さの制約の前記現在目標とする最低限の値との差に従って、前記3次元形状の等位集合表現で陰関数曲面の形状変化速度を計算すること、及び
前記形状変化速度を使用して前記等位集合表現を変更し、前記モデル化されたオブジェクトの前記3次元形状の更新バージョンを生成すること、を含み、
前記繰り返すことは、第1の部分に続く少なくとも第2の部分を含み、前記繰り返すことの前記第2の部分は、前記最低限の厚さの値を使用して局所的な厚さの制約を適用することを含み、前記局所的な厚さの制約は、前記反復することの前記第1の部分の間に適用されなかった、請求項19に記載の非一時的なコンピュータ可読媒体
【発明の詳細な説明】
【技術分野】
【0001】
本明細書は、加法的製造、減算的製造、及び/または他の製造システム及び技術を使用して製造することができる、物理的構造のコンピュータ支援設計に関する。
【背景技術】
【0002】
コンピュータ支援設計(CAD)ソフトウェアが開発され、オブジェクトの3次元(3D)表現を生成するために使用され、コンピュータ支援製造(CAM)ソフトウェアが開発され、これらのオブジェクトの物理的構造の製造を評価、計画及び制御するために使用され、例えばコンピュータ数値制御(CNC)製造技術を使用している。通常、CADソフトウェアは、境界表現(B-Rep)形式を使用して、モデル化されるオブジェクトのジオメトリの3D表現を保存する。B-Repモデルは、モデル化された3Dオブジェクトのソリッド部分と非ソリッド部分の間の境界を指定する接続された表面要素の集合である。B-Repモデル(B-Repと呼ばれることが多い)では、メッシュモデルの離散的で近似的な表面とは対照的に、ジオメトリは滑らかで正確な数学的表面を使用してコンピュータに保存され、それはCADプログラムで作動させるのが困難である。
【0003】
CADプログラムは、減算的製造システム及び技術と組み合わせて使用されてきた。減算的製造とは、ストック材料の一部を切り取って、ストック材料(通常は3Dオブジェクトよりも大きい「ブランク」または「ワークピース」)から3Dオブジェクトを作成するいずれかの製造プロセスを指す。このような製造プロセスでは、通常、荒削り操作、オプションの半仕上げ操作、及び仕上げ操作から始まる一連の操作で、複数のCNC機械切削工具を使用することを伴う。CNC機械加工に加えて、他の減算的製造技術は、放電機械加工、化学機械加工、ウォータージェット機械加工などを含む。対照的に、ソリッドフリーフォーム製造または3D印刷とも呼ばれる加法的製造は、3Dオブジェクト一連の層または断面で原材料(通常は粉末、液体、懸濁液、または溶融固体)から構築される製造プロセスを指す。加法的製造の例は、溶融フィラメント製造(FFF)及び選択的レーザー焼結(SLS)を含む。原材料から3Dオブジェクトを構築するための他の製造技術は、鋳造と鍛造(高温と低温の両方)を含む。
【0004】
さらに、CADソフトウェアは、製造されるパーツのより大きなシステム内のパーツまたは1つまたは複数のパーツの3Dジオメトリの自動生成(ジェネレーティブデザイン)を実行するように設計されている。この3Dジオメトリの自動生成は、多くの場合、CADソフトウェアのユーザによって指定された設計スペースに制限され、3Dジオメトリの生成は通常、CADソフトウェアのユーザまたは第三者によって定義できる設計の目的と制約によって管理され、CADソフトウェアにインポートされる。設計目標(設計パーツの廃棄物や重量を最小限に抑えるなど)を利用して、ジオメトリ生成プロセスをより良い設計に向けて推進できる。設計上の制約には、個々のパーツの構造的整合性制約(つまり、パーツの使用中に予想される構造的荷重の下でパーツが破損しないという要件)と、より大きなシステムによって課せられる物理的制約(つまり、パーツが使用中にシステム内の別の部分に干渉しないという要件)の両方を含めることができる。さらに、設計の制約の例には、最大質量、荷重下での最大たわみ、最大応力などが含まれる。
【0005】
ジェネレーティブデザインプロセスへの入力は、ジェネレーティブデザインプロセスの境界条件を指定する一組の入力されるソリッド(B-Rep入力)を含むことができるが、多くの最新のジェネレーティブデザインソルバーは、それらの入力されるソリッドの厳密な表面境界表現に直接動作しない。代わりに、B-Repがサンプリングされ、等位集合や四面体または六面体メッシュなどの体積表現に置き換えられ、これらは、ソルバーによって計算される物理シミュレーションや材料の合成に非常に便利で効率的である。入力されるソリッドの集合は、「保存ボディ」を含めることができ、これは、設計に常に存在する必要があり、境界条件(例えば、機械的荷重や制約)を適用する必要があるシステムまたは場所の他の部分へのインターフェイスを表す。新しいジオメトリを生成すべきでない領域を表す「障害物ボディ」を定義する入力されるソリッドなど、ジオメトリを生成すべきである、または生成すべきでない他の領域も同様の方法で提供できる。
【発明の概要】
【発明が解決しようとする課題】
【0006】
本明細書は、ジェネレーティブデザインプロセスを使用した物理構造のコンピュータ支援設計に関する技術を説明し、物理構造の三次元(3D)モデルは、ジェネレーティブデザイン三次元形状の最小厚さを制限する設計基準、例えば包括的厚さ制約に従って、作成される。設計基準または包括的厚さ制約は、パーツ/モデルの全体的な厚さを測定することにより、形状及び/またはトポロジー最適化中に、厚さ制御を実行することができる。この全体的な厚さの測定を使用して、所与の入力モデルの厚さ制限が、入力モデルの特性に基づいて、及び最小の厚さの数量を示すユーザ入力に基づいて、計算され得る。厚さ制限は、トポロジー最適化の制約として適用され、進化形状の厚さを包括的に制御し得る。
【課題を解決するための手段】
【0007】
概して、本明細書で説明される主題の1つ以上の態様は、1つ以上の方法で(及びデータ処理装置に動作を実行させるように動作可能な、例えばコンピュータ支援設計プログラムなどのコンピュータプログラムを具体的に符号化する1つ以上の非一時的コンピュータ可読媒体でも)具現化され得、方法は、対応する物理的構造が製造されるモデル化オブジェクトの設計空間と、モデル化オブジェクトの1つ以上の設計基準と、物理構造の1つ以上の使用時荷重条件と、を取得することであって(例えばコンピュータ支援設計プログラムにより)、1つ以上の設計基準は厚さ制約を含む、取得することと、1つ以上の設計基準及び1つ以上の使用時荷重条件に従って、設計空間において、三次元形状の幾何学形態及び三次元形状のトポロジーの両方を修正することを含む、モデル化オブジェクトのジェネレーティブデザイン三次元形状を反復的に修正することであって(例えばコンピュータ支援設計プログラムにより)、反復的に修正することは、三次元形状の表面積に対する三次元形状の体積の全体的関係を使用して、三次元形状の現在の厚さを測定することにより、厚さ制約を使用することを含む、反復的に修正することと、1つ以上のコンピュータ制御製造システムを使用して物理的構造を製造する際に使用するモデル化オブジェクトのジェネレーティブデザイン三次元形状を提供することと(例えばコンピュータ支援設計プログラムにより)、を含む。
【0008】
全体的関係には、二乗された三次元形状の体積と、三乗された三次元形状の表面積との無単位比率が含まれ得、及び/または取得することは、設計空間として初期三次元モデルを取得することと、厚さ制約の最小厚さ値を取得することと、初期三次元モデルの初期表面積を求めることと、初期三次元モデルの形状と、最小厚さ値により定義される厚さとを有する中空三次元オブジェクト内の初期材料体積を計算することと、初期体積と初期表面積との無単位比率を使用して、厚さ制約の目標最小値を設定することと、を含み得る。初期体積の計算は、初期三次元モデルの初期表面積に、最小厚さ値を掛けることを含み得る。さらに、全体的関係には、球に関して正規化された無単位比率が含まれ得る。
【0009】
反復的に修正することは、モデル化オブジェクトの物理的応答の現在の数値評価を生成するように、三次元形状の現行バージョン及び1つ以上の使用時荷重条件に従って、モデル化オブジェクトの数値シミュレーションを実行することと、全体としての三次元形状の表面積に対する体積の全体的関係を使用して、三次元形状の現行バージョンの現在の厚さを測定することと、モデル化オブジェクトの更新バージョンの三次元形状を生成するように、物理的応答の現在の数値評価に基づいて、及び現在の厚さと厚さ制約の現在の目標最小値との差に基づいて、三次元形状の現行バージョンを更新することと、所定回数の形状修正反復が実行されるまで、または設計空間内のモデル化オブジェクトのジェネレーティブデザイン三次元形状が1つ以上の設計基準及び1つ以上の使用時荷重条件の安定解に収束するまで、少なくとも実行すること、測定すること、及び更新することを繰り返すことと、を含み得る。
【0010】
さらに、更新することは、現在の数値評価、及び現在の厚さと厚さ制約の現在の目標最小値との差に従って、三次元形状のレベルセット表現で、陰関数曲面の形状変化速度を計算することと、モデル化オブジェクトの三次元形状の更新バージョンを生成するように、形状変化速度を使用してレベルセット表現を修正することと、を含み得、繰り返すことは、第1の部分に続く少なくとも第2の部分を含み得、繰り返すことの第2の部分は、最小厚さ値を使用して局所的厚さ制約を適用することを含み、局所的厚さ制約は、繰り返すことの第1の部分中には適用されていない。
【0011】
本明細書で説明される主題の1つ以上の態様は、1つ以上のシステムでも具現化され得、システムは、コンピュータ支援設計プログラムの命令を格納した非一時的記憶媒体と、1つ以上のデータ処理装置とを含み、データ処理装置は、コンピュータ支援設計プログラムの命令を実行して、本明細書で説明される1つ以上の方法(または1つ以上の非一時的コンピュータ可読媒体に具体的に符号化されたコンピュータプログラムに従ってデータ処理装置により実行される動作)のうちのいずれかを実行するように構成される。1つ以上のシステムはさらに、1つ以上の付加製造マシン、除去製造マシン及び/または他の製造マシンを含み得る。
【0012】
本明細書に説明される主題の特定の実施形態は、下記の利点のうちの1つ以上を実現するように実施することができる。ジェネレーティブデザインプロセスにおける形状進化中の包括的厚さ制御により、複雑な3Dモデルの厚さ制御が可能となるが、これは、ジェネレーティブデザインプロセスの間、形状及び/またはトポロジー最適化ループの反復ごとに、包括的厚さ測定が効率的に計算され得るためである(例えば計算はモデルの体積及び表面積の計算のみを伴う)。さらに、局所的厚さ測定(すなわち3Dモデル全体ではなく、3Dモデル内の複数の箇所で評価される厚さ測定)は、評価箇所の周りの進化形状の幾何学形態に応じて、不正確または完全な失敗ですらあり得るため、包括的厚さ測定のほうが、局所的厚さ測定よりも堅調である。よって、ジェネレーティブデザイン中に全体的厚さ制御を適用することは、効率的な形状及び/またはトポロジー最適化を可能にし、また、構造性能の低下または製造上で問題を生じ得る過度に薄い領域が最適化形状内に生成されることを防ぐ。
【0013】
本明細書で説明される主題の1つ以上の実施形態の詳細は、添付図面及び下記の説明で明記される。本発明の他の特徴、態様、及び利点は、説明、図面、及び特許請求の範囲から明らかになるであろう。
【図面の簡単な説明】
【0014】
図1A】全体的厚さ制御を使用して物理的構造を設計及び製造するのに使用可能なシステムの実施例を示す。
図1B】包括的厚さ制約を使用して物理的構造を設計及び製造するプロセスの実施例を示す。
図2A】ジェネレーティブデザインの厚さ制約目標を設定するプロセスの実施例を示す。
図2B】異なる3D形状及び厚さの変化に関する一般化形状比率のプロットの実施例を示す。
図2C】異なる3D形状及び厚さの変化に関する一般化形状比率のプロットの実施例を示す。
図2D】異なる3D形状及び厚さの変化に関する一般化形状比率のプロットの実施例を示す。
図2E】異なる3D形状及び厚さの変化に関する一般化形状比率のプロットの実施例を示す。
図2F】ジェネレーティブデザインに使用される初期3Dモデルの形状を有する中空3Dオブジェクトの初期体積を特定することの実施例(2次元)を示す。
図3A】包括的厚さ制約を使用するジェネレーティブデザインプロセスの実施例を示す。
図3B】トポロジー最適化中の3Dモデルの一般化形状比率のプロットの実施例を示す。
図3C】トポロジー最適化プロセスへの入力の実施例を示す。
図3D図3Cからの入力の実施例を使用して行われたトポロジー最適化プロセスからの出力の実施例を示す。
図3E図3Cからの入力の実施例を使用して行われたトポロジー最適化プロセスからの出力の実施例を示す。
図4】説明されるシステム及び技法を実施するのに使用可能なデータ処理システムの概略図である。
【発明を実施するための形態】
【0015】
様々な図面における同様の参照番号及び名称は、同様の要素を示す。
【0016】
図1Aは、全体的厚さ制御を使用して物理的構造を設計及び製造するのに使用可能なシステム100の実施例を示す。コンピュータ110は、プロセッサ112と、メモリ114とを含み、コンピュータ110は、プライベートネットワーク、パブリックネットワーク、仮想プライベートネットワークなどであり得るネットワーク140に接続され得る。プロセッサ112は、1つ以上のハードウェアプロセッサであり得、これらはそれぞれ、複数のプロセッサコアを含み得る。メモリ114は、ランダムアクセスメモリ(RAM)及びフラッシュRAMなどの揮発性メモリ及び不揮発性メモリの両方を含み得る。コンピュータ110は、メモリ114を含み得る様々なタイプのコンピュータ記憶媒体及びデバイスを含み得、これはプロセッサ112で実行されるプログラムの命令を格納し、プログラムにはコンピュータ支援設計(CAD)プログラム(複数可)116が含まれ、これは、三次元(3D)モデリング機能を実施し、数値シミュレーションを使用して(例えば1つ以上のレベルセットベーストポロジー最適化方法または1つ以上のペナルティ付き固体等方性材料(SIMP)トポロジー最適化方法を使用して)トポロジー最適化を行う1つ以上のジェネレーティブデザインプロセスを含む。
【0017】
CADプログラム(複数可)116により実行される数値シミュレーションは、1つ以上の物理的特性をシミュレートし得、1つ以上のタイプのシミュレーションを使用して、モデル化オブジェクトの物理的応答(例えば構造的応答)の数値評価を生成し得る。例えば、有限要素解析(FEA)が使用され得、これには、線形静的FEA、有限差分法(複数可)、及び材料点法(複数可)が含まれる。さらに、CADプログラム(複数可)116により実行される物理的特性のシミュレーションには、計算流体力学(CFD)シミュレーション、音響/ノイズ制御シミュレーション、熱伝導シミュレーション、コンピュータ射出成形シミュレーション、電束もしくは電磁束シミュレーション、及び/または材料凝固シミュレーション(成形プロセスの相変化に役立つ)が含まれ得る。さらに、CADプログラム(複数可)116は、製造中及び/または製造制御機能中のクランピングに対応するために、穴及び/または固定具生成技法を実施する可能性があり得る。
【0018】
本明細書で使用されるCADは、CADプログラムが製造設備とインターフェースできるか否か及び/または製造設備を制御できるか否かに関係なく、設計要件を満たす物理的構造を設計するために使用される任意の適切なプログラムを指す。よって、CADプログラム(複数可)116には、コンピュータ支援工学(CAE)プログラム(複数可)、コンピュータ支援製造(CAM)プログラム(複数可)などが含まれ得る。CADプログラム(複数可)116は、コンピュータ110においてローカルで、または1つ以上のリモートコンピュータシステム150(例えばネットワーク140を介してコンピュータ110によりアクセス可能な1つ以上のサードパーティプロバイダの1つ以上のサーバシステム)のコンピュータにおいてリモートで、またはローカル及びリモートの両方で、実行され得る。よって、コンピュータ110にてローカルで動作する1つ以上のプログラム116は、オフロード対象の処理動作を、1つ以上のコンピュータ150の1つ以上のプログラム116に実行させることにより、処理動作(例えばジェネレーティブデザイン動作及び/または数値シミュレーション動作)を「クラウドに」オフロードすることができるという点で、CADプログラム116は、2つ以上の別個のコンピュータプロセッサで協調して動作する2つ以上のプログラムであり得る。
【0019】
CADプログラム(複数可)116は、コンピュータ110の1つ以上の入力デバイス118(例えばキーボード及びマウス)を使用して操作することができるユーザインターフェース(UI)122を、コンピュータ110のディスプレイデバイス120上に提示する。図1Aでは別個のデバイスが示されるが、ディスプレイデバイス120及び/または入力デバイス118は、互いと統合されてもよく、及び/またはコンピュータ110と、例えばタブレットコンピュータに統合されてもよい(例えばタッチスクリーンは入力/出力デバイス118、120であり得る)ことに、留意されたい。さらに、コンピュータ110は、仮想現実(VR)システム及び/または拡張現実(AR)システムを含み得る、またはその一部であり得る。例えば、入力/出力デバイス118、120は、VR/AR入力グローブ118a及び/またはVR/ARヘッドセット120aを含み得る。いずれの場合でも、ユーザ160は、CADプログラム(複数可)116とインタラクトして、3Dモデル(複数可)を作成及び修正し、3Dモデルは、3Dモデル文書(複数可)130に格納され得る。
【0020】
初期3Dモデル132は、ジェネレーティブデザインプロセスへの入力となり得る。示される実施例では、初期3Dモデル132は、保持ボディ133の集合から生成され、保持ボディ133は、ユーザ160がUI122とインタラクトすることにより作成され、ロードもしくは受信され、または別のプロセスから出力として提供され得る。この実施例では、設計空間131は、保持ボディ133の間の3D空間を特定することにより取得されるが、他の手法でも可能である。例えば、保持ボディ133などの入力モデルの境界体積または凸多面体を特定することにより、設計空間を取得することができ、またはユーザ160は、UI122とインタラクトすることにより、設計空間を直接指定することができる。いずれの場合も、設計空間は、形状及び/またはトポロジー最適化中にパーツ/オブジェクトが中に設計される空間体積である。概して、ユーザ160は、ジェネレーティブデザインプロセスの形状/トポロジー最適化課題を定義して、開始3Dモデルから所望の3Dモデルを生成することができ、または特定の開始3Dモデルなしに、入力が設計空間となり得る。ジェネレーティブデザインプロセス自体が、設計空間内に開始幾何学形態を生成することができることに、留意されたい。例えば、最初及びその後の両方で、ジェネレーティブデザインプロセスへの入力として1つ以上のシードモデルが使用され、ジェネレーティブデザインのトポロジーを修正するように、形状進化中に穴が導入され得る。
【0021】
さらに、示されるように、開始モデル132は、入力保持幾何学形態を含み得、これは非結合モデル化固体であり得、設計空間131内の入力固体133を結合する新たな3D幾何学形態を生成するために、ジェネレーティブデザインプロセスが使用される。ユーザ160は、UI122を使用して、ジェネレーティブデザインプロセスが対処する機械的課題を定義し、開始3Dモデル132から新たな3Dモデルを生成し得る。よって、初期モデル132の作成を可能にすることに加えて、UI122は、1つ以上の設計基準に沿ってジェネレーティブデザインプロセスを制御する形状/トポロジー最適化の領域及び荷重条件を、ユーザ160が指定することを可能にし得る。
【0022】
いくつかの実施態様では、ユーザ160(または他の人もしくはプログラム)は、製造するオブジェクトの設計空間、オブジェクトの数値シミュレーション(例えばFEA、CFD、音響/ノイズ制御、熱伝導、コンピュータ射出成形シミュレーション、電束もしくは電磁束、材料凝固など)のための数値シミュレーション設定(例えば荷重(複数可)及び材料(複数可))、オブジェクトの少なくとも1つの設計目標(例えば材料使用量を最小限に抑える)、及びオブジェクトの少なくとも1つの設計制約(例えば体積制約)を、指定することができる。いくつかの実施態様では、数値シミュレーション及びジェネレーティブデザインプロセスで使用する入力には、新たな3D幾何学形態が生成される現在の3Dモデルの1つ以上の領域、設計している物理的構造が受ける1つ以上の異なる方向の1つ以上の荷重を定義する荷重条件(複数可)、1つ以上の材料(例えば設計空間の基準材料モデルとして特定される1つ以上の等方性固体材料)、ジェネレーティブデザインプロセスへの入力として使用する1つ以上のシードモデルタイプ、使用する1つ以上のジェネレーティブデザインプロセス、及び/または設計空間の1つ以上の領域で使用する1つ以上の格子トポロジーが、含まれ得る。ジェネレーティブデザインプロセス及び数値シミュレーションプロセスへの入力には、非設計空間、様々なタイプの構成要素(例えばロッド、ベアリング、シェル)、1つ以上目標製造プロセス及び関連パラメータ、回避すべき障害幾何学形態、最終設計に含まれるべき保持幾何学形態、及び設計解像度、合成タイプなどの様々な態様に関連するパラメータが、含まれ得る。
【0023】
さらに、CADプログラム(複数可)116は、UI122にユーザインターフェース要素を提供し、これにより、ユーザ160は、上記の様々なタイプの入力を指定できるようになり、これらの入力の全て(または様々な部分集合)は、本明細書で説明されるジェネレーティブデザインプロセス及び数値シミュレーションプロセスで使用され得る。さらに、ユーザ160は、CADプログラム(複数可)116のUI122により、従来の3Dモデリング機能を使用してパーツを設計し(3D設計モデルの精密な幾何学的記述を構築し)、次いで、初期3Dモデルの1つ以上の部分内に指定された設計空間で、ジェネレーティブデザインプロセス及びシミュレーションプロセスを使用することが、可能となり得る。よって、理解されるように、本明細書で説明されるシステム及び技術を使用して、多くの可能なタイプの物理的構造を設計することができ、UI122を使用して、製造するパーツの完全な機械的課題定義を作成することができ、ジェネレーティブデザインプロセス及び数値シミュレーションプロセスにより、時間のかかる物理試験なしでパフォーマンスを向上させることにより、新製品開発を加速させることができる。
【0024】
さらに、本明細書で説明されるように、CADプログラム(複数可)116は、少なくとも1つのジェネレーティブデザインプロセスを実施し、これにより、CADプログラム(複数可)116は、設計目標(複数可)及び制約(複数可)、すなわち設計基準に基づいて、自動的に3Dモデル(複数可)の1つ以上の部分(または3Dモデルの全体)を生成することが可能となり、幾何学的設計は、シミュレーションフィードバックに基づいて、反復的に最適化される。本明細書で使用される「最適化」(または「最適な」)は、全ての事例で全ての可能な設計のうちの最良な設計が達成されることを意味するのではなく、むしろ、利用可能な処理リソースを所与として、割り当てられた時間(例えば事前に定義された形状修正反復回数により指定される時間)内に生成できる可能な設計の有限集合から、最良(または最良に近い)設計が選択されることを意味することに、留意されたい。設計基準は、ユーザ160または別の当事者により定義され、CADプログラム(複数可)116にインポートされ得る。設計基準は、個々のパーツの構造保全制約(例えばパーツの使用中に、パーツは予想される構造的荷重を受けて故障してはならないという要件)と、より大きなシステムにより課せられる物理的制約(例えば使用中にシステム内の他のパーツ(複数可)と干渉しないように、パーツは指定の体積内に収まるという要件)と、を含み得る。さらに、設計基準は、最小厚さ要件を含み、下記に詳しく説明されるように、CADプログラム(複数可)116は、ジェネレーティブデザインプロセス中に全体的厚さ制御を適用することにより、この最小厚さ要件を施行する。
【0025】
3Dモデルの少なくとも一部の形状及びトポロジを最適化することができる様々なジェネレーティブデザインプロセスを使用することができる。CADプログラム(複数可)116による3Dモデル(複数可)のジオメトリ設計の反復的な最適化は、トポロジ最適化を含むことができ、これは、材料の最適な分布が、設計上の制約(例えば、制約としての体積の構造的コンプライアンス)に対して目標機能対象を最低限にすることによって、判定される。トポロジ最適化には、密度ベースのアプローチと境界ベースのアプローチの2つの主要なカテゴリがある。密度ベースのアプローチでは、SIMP法などで、パーツの体積を離散化し、各個別のセルに密度を割り当てる。次に、指定された境界条件をサポートしながら、密度が中実や中空に向かって駆動される。境界ベースのアプローチでは、代わりに、中実のパーツの外部インターフェイスの形状を追跡し、等位集合法などの制約が満たされるように境界を移動する。
【0026】
本明細書に記載されるように、プロセス中に全体的な厚さの制御を適用することによって最低限の厚さの要件を施行することにより、最適化プロセス中に効率的な形状の収束を可能にすると同時に、ジェネレーティブデザインパーツの最低限の厚さを確保することによって、コンピュータ110の機能を改善することができ、それはパーツの製造、パーツの構造的パフォーマンス、またはその両方を促進することができる。トポロジ最適化を使用した構造設計に関連する一般的な問題は、最適化された形状の一部の領域が非常に薄くなり、構造パフォーマンスの低下や製造上の問題が発生する可能性があることである。応力の制約または最適化された形状の座屈の構造検証により、薄い部材の領域の問題が明らかになり得るが、最低限の厚さの要件を使用すると、そのような薄い部材の領域の作成を完全に回避できる。さらに、薄い部材はまた、本質的にあまり剛性がなく、製造プロセス中、例えば3D印刷中に自己荷重を受けない可能性があるため、製造、例えば3D印刷において困難を引き起こす。
【0027】
これらの問題は、ジェネレーティブデザイン中の厚さの制御のため現在説明されているシステム及び技術、例えば、ジェネレーティブデザインプロセス中にパーツ/モデルの全体的な厚さを測定及び効率的に使用できるトポロジ最適化を使用して解決することができる。ジェネレーティブデザインプロセスの少なくとも一部では、モデル全体に単一の厚さの測定を使用できるため、形状変更の各反復の間、3Dモデルの複数の領域のそれぞれで厚さを局所的に測定する必要はなく、厚さを測定するためのグローバルなアプローチが提供され、これにより、形状及びトポロジ最適化のプロセスが大幅に遅くなる可能性がある。厚さの測定値は、1回の測定で3Dモデル全体の厚さをキャプチャできるという意味で「単一」であり、この場合、その3Dモデルには、それぞれの領域で実際の厚さが大きく異なる多くの領域が含まれることに留意されたい。ただし、ジェネレーティブデザインプロセスでは、製造するパーツの複数の3Dモデル設計オプションを生成するために、複数の最低限の厚さの基準または制約を直列または並列に適用できる。
【0028】
いずれの場合でも、ユーザ160がジェネレーティブデザイン3Dモデルに満足すると、3Dモデルは3Dモデルドキュメント130として格納され、及び/またはモデルの別の表現(例えば、加法的製造用STLファイル)を生成するために使用され得る。これは、ユーザ160による要求に応じて、または3Dモデルを加法的製造(AM)機170、またはコンピュータ110に直接接続するか、または示すようにネットワーク140を介して接続させることができる、他の製造機に送るなどの別のアクションに対するユーザの要求に照らして行うことができる。これは、局所的コンピュータ110で実行される後処理、または3Dモデルを製造するための電子ドキュメントにエクスポートするためのクラウドサービスを含むことができる。電子ドキュメント(簡潔にするために単にドキュメントと呼ぶ)はファイルにすることができるが、必ずしもファイルに対応しているわけではないことに留意されたい。ドキュメントは、他のドキュメントを保持するファイルの一部、問題のドキュメント専用の単一のファイル、または複数の調整されたファイルに保存できる。さらに、ユーザ160は、後で使用するために3Dモデルを保存または送信することができる。例えば、CADプログラム(複数可)116は、生成された3Dモデルを含むドキュメント130を格納することができる。
【0029】
CADプログラム(複数可)116は、ドキュメント135(適切なフォーマットの工具経路の仕様を有する)をAM機(複数可)170に提供して、最適化されたトポロジ及び形状を含む完全な構造138を生成することができる。AM機(複数可)170は、粒状技術(例えば、粉末床溶融(PBF)、選択的レーザー焼結(SLS)及び直接金属レーザー焼結(DMLS))、押出技術(例えば、溶融フィラメント製造(FFF)、これには金属堆積AMを含めることができる)などの1つまたは複数の加法的製造技術を使用することができる。
【0030】
いくつかの実施態様では、減算的製造(SM)機(複数可)174(例えば、多軸、マルチツールミリングマシンなどのコンピュータ数値制御(CNC)ミリングマシン)もまた、製造プロセスにおいて使用され得る。このようなSM機(複数可)174は、AM機(複数可)170が動作する初期ワークピースを準備するために使用することができる。いくつかの実施態様では、部分的に完全な構造138が、AM機(複数可)170によって、及び/または鋳造方法(例えば、セラミックシェルを使用する投資鋳造(IC)または砂コアを使用する砂型鋳造(SC))を使用して生成され、この部分的に完全な構造138は、次いで完成した構造を形成するために、CNC機174によって1つまたは複数の部分が除去される(例えば、仕上げされる)。いくつかの実施態様では、CADプログラム(複数可)116は、様々な切削工具などを使用してパーツを製造する際に使用するために、対応するドキュメント135(適切なフォーマットの工具経路の仕様、例えば、CNC数値制御(NC)プログラムを有する)をSM機(複数可)174に提供することができる。さらに、いくつかの実施態様では、完全な構造138は、完全にSM機械174を使用して製造される。
【0031】
様々な実施態様において、システム100のCADプログラム(複数可)116は、本明細書に記載されるように、1つまたは複数のジェネレーティブデザインプロセスを実施することができる。ジェネレーティブデザインプロセスは、最適な幾何学的形状、トポロジ、またはその両方を求める。例えば、ジェネレーティブデザインプロセスは、制約の対象となるパフォーマンス関連の目的関数を最小化することにより、代替の設計の中で最適な幾何学的形状を探求する。
【0032】
【数1】
【0033】
【数2】
【0034】
式中、sはドメインの幾何学的形状に関連する設計変数のベクトルであり、uはsに依存する状態変数(変位など)のベクトルである。追加の制約(平衡など)は、集合gで示される。簡単にするために、ここでは等式制約を想定している。(1)を最小化するために使用される数理計画法は、勾配ベースまたは非勾配ベースにすることができる。勾配ベースの方法(非勾配ベースの方法とは対照的)は、通常、設計の感度に関連するより多くの情報を使用し、次に例を示す。
【0035】
【数3】
【0036】
これは、設計変数に関するパフォーマンス関連の目的関数の導関数である。格子ベースの方法では、sは格子の厚さを表す。等位集合ベースのトポロジ最適化手法では、sはソリッド領域の境界を表す。非勾配ベースの方法では、厚さの制約の勾配のプロキシとしてひずみエネルギーの勾配を使用するなど、明確に定義された勾配を持たない制約に疑似勾配を使用できる。一般に、トポロジ最適化は、所与の制約条件に基づいて材料を追加/削除することによって、目的が最小化される反復的な最適化プロセスである。目的は通常、コンプライアンスまたはコンプライアンスの形式(ひずみエネルギーに類似)である。制約は通常、材料の追加/削除を制限し、材料を追加または削除できるモデル内の領域も制限する。
【0037】
図1Bは、グローバルな厚さの制約を使用して物理的構造を設計及び製造するプロセスの例を示している。モデル化されたオブジェクトの設計スペース、1つまたは複数の設計基準、及び1つまたは複数の使用中の荷重ケースが、ジェネレーティブ3Dモデルの作成に使用するために、例えばCADプログラム(複数可)116によって取得される180。モデル化されたオブジェクトの設計スペースは、パーツが設計される体積である。設計スペースには、オブジェクトの3次元トポロジの1つまたは複数の外形の初期仕様を含む境界の体積を含めることができる。上記のように、設計スペースは、記載されたジェネレーティブデザインプロセスの最適化ドメインのサブスペースとして機能する、CADプログラム(複数可)116に設計またはロードされた3Dモデル(複数可)、及び/またはより大きな3Dモデルまたは個別の3Dモデル(複数可)における他のコンポーネント(複数可)との接続ポイント(複数可)として使用するために保存されるサブスペース(複数可)を指定するためUI122を使用して選択されたB-Repなど、ジェネレーティブデザインジオメトリ生成のための境界の条件を指定する、入力されるソリッドの集合を含むことができる。
【0038】
したがって、設計者またはエンジニアは、荷重、境界条件、材料、初期開始形状、製造上の制約、及び他のパラメータに関する一連の要件を提供することができ、ソフトウェア、例えば、CADプログラム(複数可)116は、要件を満たす様々な形状を生成する。さらに、この一連の要件には最低限の厚さの要件を含めることができるため、本明細書で説明するように、1つまたは複数の設計基準には、最低限の厚さの設計基準または最低限の厚さの制約を含めることができる。追加の設計基準には、オブジェクトの様々な設計目標(複数可)と設計制約(複数可)を含めることができる。設計目標には、廃棄物の最小化、パーツの重量の最小化、パーツのコンプライアンス、応力、またはその他の固有の特性の最小化が含まれ得るが、これらに限定されず、これらは、形状合成プロセスをより良い設計に向けて推進するために使用される。必須ではないが、設計目標は設計のシミュレーション(線形静力学、流体力学、電磁気など)に基づいているのが一般的である。設計上の制約には、いずれかの生成された設計で満たす必要のある様々な幾何学的及び物理的特性または動作を含めることができ(個々のパーツまたはアセンブリ全体の要件も許容される)、例としては、最大質量、荷重下での最大のたわみ、最大応力などがある。
【0039】
さらに、取得180された1つまたは複数の使用中の荷重ケースは、数値シミュレーションのためのセットアップ、例えば、ジェネレーティブデザインパーツの最適化された3Dトポロジで使用されるFEAモデル内の要素の密度を含むことができる。一般に、数値シミュレーションのセットアップには、シミュレートする1つ以上の物理的特性、実行する1つ以上のタイプのシミュレーション、及び潜在的代理モデリングやその他の近似方法を含めることができる。一部の実施態様では、数値シミュレーションのタイプは、プログラムのすべての使用に対して、またはジェネレーティブデザインプロセスが開始されたプログラムの特定のコンテキストに対して事前定義されている。さらに、数値シミュレーションのセットアップには、実行される数値シミュレーションのタイプに関連する荷重条件及び/または他の物理的環境情報の少なくとも1つのセットが含まれる。
【0040】
ジェネレーティブデザインスペース及び設計基準が指定された状態で、1つまたは複数の3Dモデル(複数可)は、例えば、CADプログラム(複数可)116によって、1つまたは複数の設計基準及び1つまたは複数の使用中の荷重ケースに従った設計スペースにおける3D形状を反復的に変更する1つまたは複数のジェネレーティブデザインプロセスを使用しながらも、3D形状の表面積に対する3D形状の体積の全体的な関係によって測定される厚さの制約を使用して、生成される185。一部の実施態様では、3Dモデルの形状のみが変更される、つまり、トポロジを変更せずに3Dモデルのジオメトリが変更される。しかし、典型的な構造工学のジェネレーティブデザインでは、トポロジ最適化が主に使用される手法である。したがって、一部の実施態様では、3D形状のジオメトリと3D形状のトポロジの両方が反復的に変更され、それは例えば裂けることなく連続的な変形の影響を受けない表面の空間プロパティを変更するために穴を追加することによる。したがって、形状要素がどのように境界付けられ、接続されるかは、反復的なジェネレーティブデザインプロセス185の間に変更することもできる。
【0041】
例えば、CADプログラム(複数可)116によって実行される1つまたは複数のジェネレーティブデザインプロセス185は、トポロジ最適化の境界ベースのジェネレーティブデザインプロセス(例えば、等位集合法を使用)、密度ベースのジェネレーティブデザインプロセス(例えば、SIMP法を使用)、またはその両方を含むことができる。一部の実施態様では、1つ以上のジェネレーティブデザインプロセスで等位集合法(複数可)を使用でき、ここで、sは、式(1)、(2)、及び(3)からデカルト背景グリッドで計算された符号付きの距離の値である1つ以上の等位集合を使用する、暗黙的に表されるソリッド領域の境界を表す。等位集合ベースのトポロジ最適化法では、構造の外形は1次元の高レベル等位集合関数で表され、形状と構成の変化は等位集合関数の値の変化に置き換えられて、最適な構造を得るようにする。等位集合関数とは、構造を形成し、材料が占める材料領域(材料相)、ボイドが形成される場合ボイド領域(ボイド相)に対応する初期構造が設定されている設計領域の各々の部分、またはこれらの2つのドメイン間の境界を示す関数のことであり、それにおいて、材料ドメイン領域を表す値とボイドドメインを表す値との間の所定の値は、材料ドメインとボイドドメインとの間の境界を表す。
【0042】
したがって、トポロジ最適化185は、荷重、境界条件、製造上の制約などとともに最初に提供された形状を取り、現在の形状に対して実行される構造シミュレーションからのフィードバックに基づいて形状を反復的に更新することができる。一部の実施態様では、次の制約の1つ以上が使用される。体積分率の制約は、モデルから削除できる材料の量に制限を設定し、体積分率に達すると、オプティマイザは、目的を最小化できるようにモデル内の材料を再配置する。応力の制約は、モデルが受けることができる応力の量を制限し、オプティマイザは、この制約を満たすために、モデル内の材料を追加/削除/再配置する。変位の制約は、モデルが受けることができる変形の最大量を制限し、製造の制約は、3Dモデルからのパーツ/オブジェクトの製造に使用される製造方法に固有である。いくつかの例には、加算(3P印刷)、フライス盤、ダイカストが含まれる。
【0043】
しかし、使用される他の制約に関係なく、ジェネレーティブデザインプロセス185の間に厚さの制約を使用することもできる。さらに、上記のように、トポロジ最適化の境界ベースのジェネレーティブデザインプロセス(例えば、等位集合法)及び/または密度ベースのジェネレーティブデザインプロセス(例えば、SIMP法)で目的関数を最小化する勾配ベース及び/または非勾配ベースの方法が使用できる。例えば、ひずみエネルギーの勾配または体積変化の勾配を疑似勾配として使用して、最低限の厚さの制約を形状及びトポロジ最適化プロセスに接続できる。あるいは、最低限の厚さの制約の勾配を計算して、形状及びトポロジ最適化プロセスで使用することもできる。
【0044】
一般に、厚さの制約は、モデル内の部材/セクションの厚さを制限する。モデルのセクションは、指定された厚さを下回ることはできない。ただし、反復変更プロセス中に3Dモデルの個々の部材/セクションの厚さを測定する(局所的な厚さ測定)と、処理リソースが大量に消費される可能性があり、3Dモデルが進化する方法によっては、局所的な厚さの測定が一部の場合に失敗し得、ジェネレーティブデザインプロセスが解に収束するのを妨げ得る。したがって、本明細書に記載されているように、厚さの一般化またはグローバル測定を使用して、モデルまたはその部材/セクションの厚さを定量化することができ、ジェネレーティブデザインプロセス185が、3Dモデルが参照モデルと比較すると薄いのであれば効率的かつロバストに(定量的に)決定できるようにする。
【0045】
ジェネレーティブデザインプロセス185が終了すると、ジェネレーティブデザインプロセスの結果は、例えば、ディスプレイデバイス120上のUI122において、設計を受け入れるか拒否するためのオプション190とともに、ユーザに提示され得る。したがって、ジェネレーティブデザインプロセスでは、ユーザが生成された一連の設計/形状オプションから選択して、ユーザの特定の要件を満たすことができる。設計が拒否された場合、図1Bのプロセスは、例えば、CADプログラム(複数可)116によって、新しいジェネレーティブ3Dモデルを生成する際に使用するための新しい設計変数(複数可)を取得する180ために戻ることができる。例えば、新しい設計変数は、形状最適化中に3次元形状のトポロジを変更するための異なるボイドの追加及び/または除去技術を選択すること180、及び/または異なる最低限の厚さの量を選択すること180を含むことができる。
【0046】
設計が拒絶されないと190、図1Bのプロセスは、1つまたは複数のコンピュータ制御製造システム、例えば、AM機(複数可)170(例えば、3D印刷)、SM機(複数可)174(例えば、CNCミリング)、及び/または他の製造機械またはプロセス(例えば、ダイキャスティング)を使用して、オブジェクトに対応する物理的構造を製造する際に使用するための3Dモデルを、例えば、CADプログラム(複数可)116によって設けること195ができる。設けること195は、1つまたは複数のコンピュータ制御製造システムを使用して、オブジェクトに対応する物理的構造を製造する際に使用するために、3Dモデルを永久記憶装置に送信または保存することを含み得る。いくつかの実施態様では、設けること195は、3Dモデルを使用するコンピュータ制御製造システム(複数可)のための工具経路の仕様(複数可)を例えば、CADプログラム(複数可)116によって生成すること195A、及び例えば、CADプログラム(複数可)116によって、加法的製造機用に生成された工具経路仕様(複数可)を使用するコンピュータ制御の製造システム(複数可)でオブジェクトに対応する物理的構造の少なくとも一部を製造すること195Bを含む。195で設けられる3Dモデルは、ジェネレーティブデザイン合成方法またはジェネレーティブデザイン出力の後処理バージョンによって生成185された3Dモデルであり得ることに留意されたい。例えば、一部の実施態様では、ジェネレーティブデザイン合成方法によって生成された3Dメッシュモデルを、設けられる195の前に防水B-Rep 3Dモデルに変換できる。
【0047】
いくつかの実施態様では、モデル及びその部材/セクションの厚さを定量化するために使用される厚さの一般化またはグローバルな尺度は、2乗された3D形状の体積と3乗された3D形状の表面積との単位のない比率である。これは、体積の2乗を表面積の3乗で割った値、または表面積の3乗を体積の2乗で割った値にすることができる。体積は長さの3乗であり、面積は長さの2乗であるため、体積の2乗と面積の3乗の比率をとると、単位なしまたは無次元の量が生成される。このように組み合わされた体積と表面積は、3Dモデル全体の厚さのかなり良い特性を与えることに留意されたい。ただし、全体の厚さの測定値が3Dモデルの寸法に依存しないという点で無次元である場合は、他のバリエーションも可能であり、厚さの測定値は寸法に依存しない、つまり、長さや質量の寸法はない。
【0048】
さらに、単位のない比率は、球に関して正規化することができる。与えられた表面積に対して、最大の体積を与えるジオメトリは球であるという幾何学的特性がある。したがって、比率の上限を1に設定するには、球に関する測定の正規化を実行できる。例えば、体積の2乗を面積の3乗で割った比率に、36πの定数を掛けることができる。一部の実施態様では、3Dモデルの厚さを測定するために使用される全体的な関係は、正規化された単位のない比率の6乗根である。例えば、一部の実施態様では、次式を使用して、ジオメトリックモデルの形状特性を取得する。
【0049】
【数4】
【0050】
式(4)で、ρは一般化された形状の比率、Vはジオメトリの体積、Aはジオメトリの表面積である。この一般化された形状の比率は、所与のジオメトリの体積と表面積を使用して厚さをグローバルに測定する無次元の量である。球のジオメトリの場合はρ=1.0、その他いずれかの場合はρ<1.0であることに留意されたい。これは、球が所与の体積に対して最小の表面積であるという特性と、表面積が分母にくることから球やその他いずれかのジオメトリでρの最大値が達成されるので、この値が1.0未満になるという特性に基づいている。これは、3Dモデルの厚さの定量化を容易にする重要な特性である。
【0051】
それにもかかわらず、6乗根は、値を1次元空間に戻し(長さスケールに戻し)、また、比率の値を0から1の範囲内に広げるという利点を有するが、この6乗根は任意選択であることに留意されたい。バリエーションは、累乗項なし、体積の2乗での3乗された面積の除算、及び円柱や立方体などの球以外のものに関して正規化させる潜在可能性が含まれる。ただし、実際には、比率の最大値が1より大きくなることはなく、比率の上限は、厚さを測定する3Dモデルのジオメトリによって変化しないため、球に関して正規化すると便利である。
【0052】
図2Aは、ジェネレーティブデザインのための厚さの制約目標を設定するプロセスの例を示している。初期の3Dモデルは、例えば、CADプログラム(複数可)116によって、ジェネレーティブデザインオブジェクトの設計スペースとして(例えば、3D形状の等位集合表現を使用して)取得される200。例えば、ユーザは、例えばUI122を介して開始モデルを指定できるか、または、最初の3Dモデルは、1つまたは複数の入力保存ボディの凸包を生成することによって取得できる。一般に、取得方法に関係なく、最低限の厚さの制約の目標値を設定するには、初期の3Dモデルが必要であり、その理由は、表面積に対する体積の全体的な関係を表す単位なしの比率の望ましい下限が、最適化される3Dモデルに固有の無次元の量になるためである。
【0053】
したがって、3Dモデルがグローバル化された厚さの測定に従って薄いものになる、すなわち、表面積が体積よりも速く増加するので、グローバル化された厚さの測定は減少しても減少率及び可能な値の範囲は、3Dモデルの全体的な形状によって異なるという点に留意されたい。これをさらに説明するために、図2Bは、円柱の半径を一定に保ちながら円柱の高さを増加させることによって変更された円柱の式(4)の一般化された形状の比率のプロット202の例を示している。円柱の高さが高くなると、円柱は細い棒/梁になる傾向がある(円柱の様々なバージョンがプロットの領域の中に収まるようにスケーリングされていることに留意されたい)。プロット202では、円柱が細くなるにつれて、一般化された形状の比率が減少することがわかる。図2Cは、円柱の高さを一定に保ちながら円柱の半径を増加させることによって変更された円柱の式(4)の一般化された形状の比率のプロット204の例を示す(再度また、円柱の異なるバージョンは、プロットの領域の中に収まるようにスケーリングされている)。円柱の半径が大きくなると、円柱は薄い板状になる傾向があり、したがって、円柱が全体的に細くなるにつれて、一般化された形状の比率は減少する。
【0054】
図2Dは、ブロックの正方形の底辺の長さを一定に保ちながらブロックの高さを増加させることによって変更されるブロックの式(4)の一般化された形状の比率のプロット206の例を示す(ブロックの様々なバージョンがプロットの領域の中に収まるようにスケーリングされていることに留意されたい)。高さが高くなると、ブロックは細い棒/梁になる傾向があり、したがって、ブロックが全体的に薄くなるにつれて、一般化された形状の比率は減少する。図2Eは、ブロックの高さを一定に保ちながらブロックの正方形の底辺の長さを増加させることによって変更されたブロックの式(4)の一般化された形状の比率のプロット208の例を示す(再度また、様々なバージョンのブロックは、プロットの領域の中に収まるようにスケーリングされている)。側面が大きくなると、ブロックは薄い板になる傾向があり、したがって、ブロックが全体的に薄くなるにつれて、一般化された形状の比率は減少する。プロット202、204、206、208の例は、3Dモデルが厚い場合、一般化された形状の比率が、3Dモデルが薄い場合よりも大きいという点で、一般化された形状の比率の振る舞いを示している。
【0055】
一般化された形状の比率は無次元の量であるため、同じファミリーに属する2つの異なるモデル(例えば、円柱またはブロック)の「厚さ」の比較を可能にする。ただし、立方体の場合は薄いものが、円柱の場合は薄くない場合があることに留意されたい。また、この無次元の比率の量の値と変化率は、同じオブジェクトファミリに対してなされる形状変化の性質によって変化する可能性がある。例えば、図2Bと2Cを比較すると、高さが80(固定の半径)の円柱の場合、比率の値は約0.62であるが、半径が80(固定の高さ)の円柱の場合、比率の値は約0.3である。最後に、球の場合、一般化された形状の比率は常に1.0であるため、この測定の値によれば、寸法の異なる2つの異なる球の「厚さ」が同じであることに注目されたい。
【0056】
さらに、この着想は、異なるファミリーからのモデル/オブジェクトの「厚さ」を比較するために拡張することができる。例えば、最低限の厚さの計算を自動化するために使用できる。場合によっては、入力として与えられる厚さの値をユーザが知ることが難しい場合がある。厚さの値の判定を自動化するために、サンプルモデル(例えば、プレートや円柱、または設計者/エンジニアが実用的な知識を持っているモデル)を使用でき、そのようなモデルの一般化された厚さの比率は、その体積と表面から計算でき、次にメインアルゴリズムへの入力として提供され得る。この場合、モデルは参照モデル(サンプルモデル)と同様の厚さのジェネレーティブデザインによって作成されるが、作成されたモデルは異なるファミリーである可能性がある。厚さの値を自動化する他のアプローチは、設計スペースのボクセル寸法と幾何学的寸法に基づくことができ、ユーザからの入力を必要としない。
【0057】
図2B~2Eが示すように、単位のない比率(表面積に対する体積の全体的な関係を表す)の下限は、開始する3Dの形状に依存する。したがって、最低限の厚さの制約に使用される目標最小値は、(1)モデルに依存すべきで、また初期モデル特性を考慮に入れるべきであり、(2)例えば、長さのスケールの観点から、ユーザ指定の厚さの測定値を組み込むことができる。問題のモデル特性は、トポロジ最適化後のモデルではなく、トポロジ最適化が実行されるドメインを定義する開始モデルであることに留意されたい。また、ユーザの入力は、特定のジェネレーティブデザイン3Dモデルに対してグローバル化された厚さの測定値を調整するのに役立つ可能性があることにも留意されたい。
【0058】
図2Aに戻ると、ジェネレーティブデザインオブジェクトの3Dモデルの厚さの制約について最低限の厚さの値が取得される210。例えば、標準単位(例えば、ミリメートル)での値は、例えば、UI122を介して受信する210ことができ、または値は、受信したパーセンテージから、ユーザから、または自動化されたプロセスから計算する210ことができる。例えば、ユーザは最低限の厚さを入力モデルのパーセンテージとして指定できる。つまり、ユーザは、ジェネレーティブデザイン処理の設計スペースとして使用される初期3Dモデルの実際の寸法を知る必要はない。一部の実施態様では、両方の入力オプションを使用できるため、ユーザ(またはプロセス)は、形状及び/またはトポロジ最適化プロセスの最低限の厚さの絶対測定値または相対測定値を与えることができる。
【0059】
初期3Dモデルの初期表面積が見出される220。これは、既知の技術を使用して行うことができる。例えば、モデルの表面積は、モデルの面の面積を計算し、これらの面積を合計することで計算できる。面が四辺形や三角形などの分析面に対応している場合は、分析式を使用して面積を計算できる。それ以外の場合は、面を三角形にテッセレーションでき、すべての三角形の面積を合計して面積を計算できる。このような関数とアルゴリズムは、CADソフトウェアまたは他のソースからすぐに利用できる。
【0060】
さらに、初期3Dモデルの形状及び最低限の厚さの値によって定義される厚さを有する中空3Dオブジェクトの材料の初期体積が計算される230。これは、初期3Dモデルの初期表面積と厚さの制約の最低限の厚さの値を掛けること230を含み得る。次に、厚さの制約の目標最小値は、初期体積と初期表面積の単位のない比率、例えば、上記の式(4)で得られた正規化された比率の6乗根などの球に対して正規化された単位のない比率を使用して設定される240。詳細な例を以下に示すが、厚さの制約の目標最小値を設定するときに初期の3D形状(トポロジ最適化中に質量が除去される)が考慮されることを条件として、トポロジ最適化中に最低限の厚さの制約を適用するための目標最小値を設定するために、他のアプローチを使用できることが理解される。
【0061】
図2Fは、ジェネレーティブデザインに使用される初期3Dモデル250の形状を有する中空3Dオブジェクト260の初期の体積を判定する例を示す。この例は、理解を容易にするために、初期(入力)3Dモデル250を表す2Dの正方形として示されている。入力3Dモデル250は、入力モデル250のソリッド材料を含む境界面252を有する。モデル250のこの面252の面積Slimitは、ジェネレーティブデザインプロセスにおける形状進化の開始時に計算することができる。
【0062】
さらに、中空3Dオブジェクト260(初期モデル250の仮説上可能な最も薄いバージョン)は、ユーザ(または入力プロセス)によって提供される最低限の厚さ値だけ表面252を拡張することによって、入力モデル250から生成されるか、ユーザ(または入力プロセス)によって提供された情報(パーセンテージの値など)から導出される。示されている例では、表面252は、3Dオブジェクト260の外面262を生成するためにだけ外側に延長され、表面252は、3Dオブジェクト260の内面264を生成するためにだけ内側に延長される。3Dオブジェクトは、内面264が材料266を含まないという点で中空であること、3Dオブジェクト260のすべての材料は、最低限の厚さによって互いに分離されている表面262、264の間に含まれていることに留意されたい。
【0063】
もちろん、オブジェクト260の実際の3Dモデルを構築する必要がないので、中空の3Dのオブジェクト260は、仮想モデルであればよい。さらに、この仮想の3Dモデル260の体積は、Vlimit = s*tであり、式中、は、表面262の表面積、表面264の表面積、または単に表面252の表面積、すなわち、Slimitである。したがって、元の3Dモデルのシェルは、最低限の厚さの値の制限に基づいて作成でき、このシェルモデルの単位のない比率が厚さの制約のターゲットとして使用される。例えば、式(4)の一般化された形状の比率の場合、厚さの制約の目標とする最低限の厚さの値は、次の式を使用して設定できる。
【0064】
【数5】
【0065】
このような最低限の厚さの値は、モデルの一般化された形状の比率の下限を設定し、この下限は、初期の形状と指定された最低限の厚さの値を考慮に入れ、この下限を使用してグローバルな意味での3Dモデルの厚さの制御を課すことができる、つまりこれをトポロジ最適化プロセスの制約として使用できる。
【0066】
ここでの「グローバルな意味」という句は、厚さがモデル内で点ごとに制御されていないが、厚さの全体的な(平均)値が制御されていることを意味する。数学的には、この制約は式(6)に示すように表される。
【0067】
【数6】
【0068】
式(6)で、は現在の形状進化の状態でのモデルの一般化された形状の比率であり、はそれを下回るとモデルの進化が禁止される限界値である。上で説明したように、は、トポロジ的に最適化されているモデルに固有の無次元の量にすることができる。したがって、初期形状特性が異なる2つの異なるモデルでは、異なる値のが必要になる場合がある。さらに、2つの異なるモデルでは、厚さの制御の要件が異なる場合があり、これは、手元のモデルの部材/セクションの望ましい最低限の厚さを示すユーザ(またはプロセス)の入力に基づいて適切な値を判定することによって説明される。したがって、一部の実施態様では、ユーザは入力最低限の厚さの値を調整して、それに応じて値を変更できる。これにより、ジェネレーティブデザインプロセスとは異なる出力3Dモデルが生成されるため、ユーザは以前のジェネレーティブデザインの3Dモデルの結果(複数可)という点から見た最低限の厚さの入力の値を調整することにより、モデルの特性を考慮した単位なしの比率のモデル依存限界値の作成を支援できる。
【0069】
図3Aは、グローバルな厚さの制約を使用するジェネレーティブデザインプロセスの例を示している。図3Aのプロセスは、モデル化されたオブジェクトの3D形状がジェネレーティブデザインプロセス185の間に反復的に変更されるトポロジ最適化ループの例である。トポロジ最適化ループは、3Dの形状の現在のバージョン及びモデル化されたオブジェクトの物理的応答(構造的応答など)の現在の数値評価を生成するための1つ以上の使用中の荷重ケースに従って、モデル化されたオブジェクトの数値シミュレーションを実行する300ことを含む。上記のように、様々なタイプの数値シミュレーションを実行する300ことができる。
【0070】
一部の実施態様では、ジェネレーティブデザインソフトウェアは、形状及びトポロジ最適化に様々な物理ベースのソルバーを活用することにより、ジェネレーティブデザインの一般的なプラットフォームを提供できる。さらに、一部の実施態様では、トポロジ最適化は等位集合アプローチに基づいている。したがって、3D形状の現在のバージョンは、3D形状の陰関数曲面の等位集合表現にすることができる。
【0071】
3D形状の現在のバージョンの現在の厚さは、3D形状全体の表面積に対する体積の全体的な関係を使用して測定される310。例えば、式(4)の一般化された形状の比率は、モデル化されたオブジェクトのジェネレーティブデザイン中の厚さの制御に使用できる。図3Bは、トポロジ最適化中の3Dモデルについての式(4)の一般化された形状の比率のプロット312の例を示している。図3Bに示すように、最適化が進むにつれて3Dモデルは薄くなり、モデルが薄くなるにつれて一般化された形状の比率は減少する。トポロジ最適化中に3Dモデルの形状が進化すると、材料が3Dモデルから削除され、3Dモデルが「薄く」なり、これが一般化された形状の比率の値に反映される。
【0072】
厚さのグローバルな測定値を使用して厚さの制御をもたらすために、厚さのグローバルな測定値の下限、例えば式(4)の一般化された形状の比率の下限が設定され(例えば上記のように)、最適化ループは、この下限に向かって、形状の進化を、それを侵害することなく推進する。トポロジ最適化中にこの制限を使用すると、3Dモデルの全体的な「厚さ」がこの制限を超えて維持されるような方法で材料が削除されないことが確実になる。
【0073】
図3Aに戻ると、3次元形状の現在のバージョン(現在の3Dモデル)は、物理的応答の現在の数値評価に基づいて、及び現在の厚さと厚さの制約の現在目標とする最低限の値との間の差に基づいて更新され320、モデル化されたオブジェクトの3次元形状の更新されたバージョンを生成する。物理的応答の現在の数値評価に基づく更新320は、現在のモデルの物理的応答に従って形状を進化させ、1つまたは複数の設計基準に関してモデルのパフォーマンスを改善する。さらに、現在のグローバルな厚さの測定値とグローバルな厚さの測定値の現在目標とする最低限の値との差に基づく更新320により、全体の厚さの測定値を設定された最小値より上に保ちながら、より薄い構造を使用する方向に形状が進化する。
【0074】
さらに、トポロジ最適化中の形状の更新320は、密度ベースのアプローチまたは境界ベースのアプローチを使用して実行できることに留意されたい。一部の実施態様では、トポロジ最適化中にモデル化されたオブジェクトを表すためにSIMP法が使用される。このアプローチでは、設計領域は「要素」と呼ばれる小さな部分に分割(区分化)される。要素は、形状を表現するためのビルディングブロックを形成する。例は、表現できるジオメトリに基づいて分類される。一部の要素の例としては、四面体、六面体、五面体、ピラミッドなどがある。
【0075】
要素のコレクションは、グリッドまたはメッシュと呼ばれる。このメッシュは、有限要素解析(FEA)で使用されるメッシュと非常によく似ている。トポロジ最適化の設計変数は、各要素の材料の密度に対応している。密度は、要素のどれだけが材料によって占められているかを表す。数学的には、
【0076】
【数7】
【0077】
として定義できる。例えば、密度が1.0の場合、要素全体が材料で占められ、密度が0.5の場合、要素の半分が材料で占められ、密度が0.0の場合、要素に材料はない。
【0078】
トポロジ最適化アルゴリズムが進むにつれて、更新320中に、一部の要素は1.0に近い密度を取得し、他の要素は0.0に近い密度を取得する。1.0に近い密度を有するすべての要素のコレクションは、結果の形状(最適化された形状)を形成する。実際には、密度が特定の閾値(0.5など)より大きいすべての要素の等値の面を使用して、結果のジオメトリが作成される。
【0079】
グローバルな厚さの制約を課すために、体積と表面積の計算が次のように実行できる。体積は、各要素の材料の体積(密度×要素の体積)を計算してから、すべての要素の材料の体積を合計することで計算できる。表面積は、等値の面を計算してから等値の面の表面積を計算することで、計数できる。例えば、等値の面を三角形にテッセレーションすることができ、表面積は、各表面の三角形の面積を計算し、それをすべての表面の三角形にわたって合計することによって計数できる。
【0080】
一般に、最適化アルゴリズムは、いくつかのステップを繰り返すことによって最適解を計算する。各反復で、次の量、つまり(1)目的と制約の値、及び(2)目的と制約の勾配が計算される。また、上記のように、目的関数を最小化する勾配ベース及び/または非勾配ベースの方法を使用することができ、例えば、疑似またはプロキシの勾配をグローバルな厚さの制約に使用することができ、その場合、グローバルな厚さの制約は、正式な厚さの制約ではなく、むしろジェネレーティブデザイン3次元形状の最低限の厚さを制限する設計基準であり得る。いずれの場合も、計算された量が、最適解に到達するためにアルゴリズムが移動する検索方向を決める。
【0081】
グローバルな最低限の厚さの制約の場合、トポロジ最適化プロセスで使用するために、何らかの形式の勾配情報が必要である。グローバルな最低限の厚さの制約は、体積と表面積の関数であるため、要素の密度に関する体積の勾配と要素の密度に関する表面積の勾配は、トポロジ最適化への密度ベースのアプローチで計算できる。各要素の体積は要素の密度に直接関係するが、表面積は要素の密度に直接関係しないため、表面積の勾配を計算するために間接的なアプローチを使用できる。ただし、一部の実施態様では、目的と同じ勾配方向(例えば、ひずみエネルギー)を、厚さの制約勾配のプロキシ(または代理)として使用できる。この場合、目的の勾配方向は、厚さの制御制約/基準の勾配方向として使用される。
【0082】
いくつかの実施態様では、トポロジ最適化中にモデル化されたオブジェクトを表すために等位集合法が使用される。したがって、更新320は、現在の数値評価と、現在の厚さと厚さの制約の現在目標とする最低限の値との差に従って、3次元形状の等位集合表現で陰関数曲面の形状変化速度を計算すること、及び形状変化速度を使用して等位集合表現を変更し、モデル化されたオブジェクトの3次元形状の更新バージョンを生成することを含むことができる。等位集合ベースのアプローチでは、1つまたは複数の等位集合を使用してジオメトリを表す。ジオメトリの境界は、等位集合表現によって定義される。最適化プロセスは、局所的な法線方向に沿ってジオメトリの境界を移動することによって進行する。境界の変化量は、(1)目的と制約の値、及び(2)目的と制約の勾配によって判定される。
【0083】
上記のSIMPアプローチと同様に、トポロジ最適化中グローバルな最低限の厚さの制約を適用するために、目的(複数可)及び制約の値及び勾配を各反復で計算することができる。体積は、等位集合表現が占める体積を計算することによって計算され、表面積は、等位集合表現の表面積を計算することによって計算される。等位集合アプローチで使用される勾配は、形状の小さな変化に応じて量がどのように変化するかを表すため、「形状導関数」と呼ばれる。グローバルな最低限の厚さの制約の形状導関数を計算するために、体積の形状導関数と表面積の形状導関数を計算できる。ただし、以前のように、目的関数を最小化する勾配ベース及び/または非勾配ベースの方法を使用できる。例えば、疑似勾配またはプロキシ勾配(形状導関数)をグローバルな厚さの制約に使用できる。したがって、一部の実施態様では、目的と同じ勾配方向(例えば、ひずみエネルギー)を、厚さの制約勾配のプロキシ(または代理)として使用できる。この場合、目的の勾配方向が厚さの制御制約基準の勾配方向として使用されるため、グローバルな厚さの制約は正式な厚さの制約になり得るよりもむしろ、ジェネレーティブデザイン3次元形状の最低限の厚さを制限する設計基準になり得る。プロキシ(または代理)の勾配の詳細については、2020年6月26日出願の、米国特許出願第63/044,666号、題名 “GENERATIVE DESIGN SHAPE OPTIMIZATION WITH CONTROLLED CONVERGENCE FOR COMPUTER AIDED DESIGN AND MANUFACTURING”、を参照されたい。
【0084】
いずれの場合でも、トポロジ最適化プロセス中に密度ベースの方法または境界ベースの方法のどちらが使用されるかに関係なく、各反復中の収束についてチェック330を行うことができる。ジェネレーティブデザインは、すべての設計の制約が満たされ、以前の1回以上の反復以来、以前から大幅に改善された設計目標がない場合(例えば、5%、4%、3%、2%、または1%以下の改善)、安定した解に収束している。したがって、いくつかの実施態様では、少なくとも数値シミュレーションの実行300、グローバルな厚さの測定310、及び3Dモデルの更新320が、設計スペースでのモデル化されたオブジェクトのジェネレーティブデザイン3D形状が、1つ以上の設計基準と1つ以上の使用中の荷重ケースに対する安定した解に収束するまで繰り返される、つまり、プロセスは収束するまで繰り返される。さらに、いくつかの実施態様では、チェック340が、所定の数の形状変化反復が実行されたことを示すと、反復プロセスは終了する。所定の形状変化の反復数は、すべての設計の制約が満たされることが本質的に保証されるように、十分に高く設定できることに留意されたい。
【0085】
図3Cは、トポロジ最適化プロセスへの入力の例を示している。図3Cの例は、図3Bに示される形状進化に対応する、図1Aに示される同じ開始モデル132である。開始モデル132は、保存ジオメトリソリッド133及びその間に形成された設計スペース131を含む。この例では、開始モデル132は、曲げ荷重の下に置かれた梁を表しており、梁は一方の端(左端)に固定され、もう一方の端(右端)に荷重がかけられている。
【0086】
ソリッド133は、トポロジ最適化中に保存される、すなわち、それらから材料が除去されることはなく、設計スペース131は、形状進化のための初期形状であり、材料は、形状が進化するとこの領域131から追加または除去される。この例では、目的はコンプライアンスの最小化であり、制約は、設計領域131(保存領域133を除く)の体積分率が元の設計領域の5%に達する必要があることである。コンプライアンスは、モデルの柔軟性の尺度であり、コンプライアンスが最小であるとき、モデルは所与の体積に対して可能な最低の柔軟性を備えている。
【0087】
図3Dは、図3Cからの入力の例を使用して実行されたトポロジ最適化プロセスからの出力3Dモデル380の例を示している。3Dモデル380は、本明細書で説明されているように、最低限の厚さの制約を使用しないトポロジ最適化の結果である。示されるように、3Dモデル380は、薄い領域382を含む。対照的に、図3Eは、図3Cからの入力の例を使用して実行されたトポロジ最適化プロセスからの出力3Dモデル390の別の例を示している。この例では、3Dモデル390は、この仕様で説明されているように、最低限の厚さの制約を使用するトポロジ最適化の結果である。示されているように、3Dモデル390(形状進化からの最終的な解)には、領域382と比較して厚い領域392がある。3Dモデル内の支柱のこの厚さは、グローバルな厚さの制約の結果であることに留意されたい。モデル全体にのみ課せられ、モデルの3D形状が進化するときに3Dモデルの様々な部分の内部で局所的に適用される厚さの制約は課されない。
【0088】
図3Eの例は、長さが約100mmの梁に対してグローバルな厚さ制限を0.982mmに設定したときに生成される3D形状である。グローバルな厚さ制限が1.47mmに設定された同じ入力3Dモデル132を使用すると、図1Aの完全な構造138に示すように、生成される3D形状ははるかに太い支柱を有する。このことが示すように、グローバルな厚さ制限を変更すると、厚さの測定値が本質的にグローバルであっても、つまり、3Dモデル全体の厚さの測定値が1つ存在するのであっても、形状の進化中にトポロジ最適化によって生成された最終的な解において局所的な厚さの変化が発生する。これにより、効率的な形状及び/またはトポロジ最適化が可能になり、また、最適化された形状で過度に薄い領域が生成されるのを防ぐ。このような薄い領域は、構造パフォーマンスの低下(例えば、3Dモデルの薄い部材が座屈やその他のパーツの故障の可能性を高める場合がある)または製造上の困難(例えば、こうした薄い部材は本質的にあまり硬くなく、3D印刷中に自己荷重がかからない場合があるので、3D印刷で困難を引き起こす可能性がある)を生じ得る。したがって、本明細書で説明されているグローバルな厚さの制御システムと手法は、ジェネレーティブデザインプロセスを使用して作成された複雑な3Dモデルで簡単に使用でき、ジェネレーティブデザインの結果の構造的完全性と製造可能性を保証できる。
【0089】
記載された全体的な厚さの制御は、計算コストを大幅に増加させることなく、異なる製造プロセスに対して構造的に強い3D形状の生成を可能にし、これは、ジェネレーティブデザインプロセスにクラウドサービスが使用される場合など、金銭的コストも削減できる。しかしながら、厚さの局所的な測定ではなくグローバルな厚さの測定が使用されるので、ジェネレーティブデザインプロセスは、支柱392のいずれもがユーザの望む最低限の厚さよりも薄い厚さを有していないということを保証できない。実際には、これは通常は問題にならない。ジェネレーティブデザインプロセスは細い支柱392を有していない解に移行する傾向があり、細い支柱392はまた数値シミュレーション中の構造解析によって好まれず、したがって、トポロジ最適化に、局所的な厚さの制約を使用する必要なしにグローバルな厚さの制約を満たす解に移動する傾向があるためである。いずれにせよ、支柱が最終的に細くなりすぎた場合、ユーザは最低限の厚さの値を大きくして、ジェネレーティブデザインプロセスを再度実行できる。それでも、一部の実施態様では、局所的な厚さの測定を使用する厚さの制約を使用して、最終設計の部材/領域/支柱が必要な最低限の厚さよりも薄くならないようにすることもできる。
【0090】
図3Aに戻ると、いくつかの実施態様では、形状最適化ループは2つ以上の部分を含み、1つ以上の異なる制約及び/または制約目標が最適化ループの異なる部分で使用される。したがって、チェック350を実行して、形状の反復変更の遅い部分(例えば、2つの部分のうちの第2の部分)が始まったかどうかを判定することができる。その場合、グローバルな厚さの測定のために以前使用された最低限の厚さの値を使用して、局所的な厚さの制約を適用360できる。グローバルな厚さの測定を使用する厚さの制約は、反復的な変更のこの第2の部分で引き続き使用してもしなくてもよいが、局所的な厚さの測定を使用する厚さの制約は、反復的変更の第1の部分で使用しているべきでない、なぜならこれにより計算が複雑になり、複雑なモデルのジェネレーティブデザインプロセスが失敗する可能性があるからである、ということに留意されたい。
【0091】
したがって、グローバルな厚さの制約をトポロジ最適化の第1の部分で使用して、この第1の部分の間に形状を急速に進化させることができ、トポロジ最適化の第2の部分で、例えばジェネレーティブデザインプロセスが、3Dモデルの最終的な解に近づいたら(例えば、5%、4%、3%、2%、または1%以内)、局所的な厚さの制約を使用することができる。トポロジ最適化における局所的な厚さの制御の手法には、内側軸及びローリングボールアプローチ、または3Dモデル内のサブ領域で局所的に厚さを測定する他のアプローチが含まれる。さらに、場合によっては、トポロジ最適化の第1の部分が、モデルの3D形状を最終的に提案される解に進化させ、トポロジ最適化の第2の部分が、最低限の厚さがジェネレーティブデザイン3Dモデルのすべての領域で達成されたことを確認する最後の1回以上の反復になる。
【0092】
したがって、グローバルな最低限の厚さの制約を使用するジェネレーティブデザインプロセスが最終設計の作成に向けて大半の作業を行った後、計算効率が高くロバストなグローバルな最低限の厚さの制約を局所的な最低限の厚さの制約で増強することができる。次いで、局所的な最低限の厚さの制約により、3Dモデルの厚さが、3Dモデル内の任意の場所で指定された最低限の厚さより厚くなるのを確実にすることができるが、この局所的な厚さのチェックは最後に向けてのみ実行されるため、グローバルな厚さの制約の計算と堅牢性の利点のほとんどが達成されたままである。ジェネレーティブデザインプロセスは、最適化ループの各反復中に3Dモデル全体で局所的な厚さの測定値を計算する必要がないため、プロセス全体に局所的な厚さの制約が適用された場合よりも、依然として大幅に速い。
【0093】
最後に、反復ループの2つの別個の部分のみが図3Aに表されているが、反復ループの3つ以上の部分を実装することができ、最適化ループの異なる部分で異なる制約及び/または制約目標が使用されることが理解されよう。これは、局所的な最低限の厚さの制約を使用する場合と使用しない場合がある。例えば、グローバルに測定された最低限の厚さの制約の現在の目標値は、開始モデルの初期の厚さの測定値よりも小さい値から、例えば式(5)を使用して計算された最終的な値までの範囲の、一連の目標値から選択でき、反復ループは、例えば式(5)を使用して計算された最終的なグローバルに測定された目標の最低限の厚さの目標値がトポロジ最適化の最後に使用されるまで、反復ループのそれぞれの部分の連鎖から、いっそう小さい目標値を選択的に使用できる。したがって、2020年6月26日出願の、米国特許出願第63/044,666号、題名 “GENERATIVE DESIGN SHAPE OPTIMIZATION WITH CONTROLLED CONVERGENCE FOR COMPUTER AIDED DESIGN AND MANUFACTURING”、に記載されているように、制御された収束を伴うジェネレーティブデザインの形状最適化を採用することができる。
【0094】
図4は、クライアントまたはサーバとしてプログラムすることができるデータ処理装置400を含むデータ処理システムの概略図である。データ処理装置400は、ネットワーク480を介して1つまたは複数のコンピュータ490に接続されている。図4には1台のコンピュータのみがデータ処理装置400として示されているが、複数のコンピュータを使用することができる。データ処理装置400は、アプリケーション層とオペレーティングシステムとの間で分散することができる様々なソフトウェアモジュールを含む。これらは、上記のシステム及び技術を実装する1つまたは複数の3Dモデリングプログラム404のツール及びサービスを含む、実行可能及び/または解釈可能なソフトウェアプログラムまたはライブラリを含むことができる。したがって、3Dモデリングプログラム(複数可)404は、CADプログラム(複数可)404(CADプログラム(複数可)116など)であり得、1つまたは複数のジェネレーティブデザインプロセス(例えば、ジェネレーティブデザインに対する等位集合ベースの方法(複数可)を使用して)を、形状及び/またはトポロジ最適化と、形状の進化中に全体的な厚さの制御を採用する物理シミュレーション操作(有限要素解析(FEA)またはその他)とのために、実装することができる。さらに、プログラム(複数可)404は、潜在的に製造制御操作(例えば、設計されたオブジェクトの製造をもたらすための工具経路仕様の生成及び/または適用)を実装することができる。使用されるソフトウェアモジュールの数は、実装ごとに異なる。さらに、ソフトウェアモジュールは、1つまたは複数のコンピュータネットワークまたは他の適切な通信ネットワークによって接続された1つまたは複数のデータ処理装置上に分散させることができる。
【0095】
データ処理装置400はまた、1つ以上のプロセッサ412、1つ以上の追加のデバイス414、コンピュータ可読媒体416、通信インターフェイス418、及び1つ以上のユーザインターフェースデバイス420を含むハードウェアまたはファームウェアデバイスを含む。各プロセッサ412は、データ処理装置400の中で実行するための命令を処理することができる。いくつかの実施態様では、プロセッサ412は、シングルスレッドまたはマルチスレッドのプロセッサである。各プロセッサ412は、コンピュータ可読媒体416または追加のデバイス414の1つなどの記憶デバイスに格納された命令を処理することができる。データ処理装置400は、その通信インターフェイス418を使用して、1つまたは複数のコンピュータ490と、例えばネットワーク480を介して通信する。ユーザインターフェースデバイス420の例には、ディスプレイ、カメラ、スピーカ、マイク、触覚フィードバックデバイス、キーボード、マウス、ならびにVR及び/またはAR機器が含まれる。データ処理装置400は、例えば、コンピュータ可読媒体416または1つ以上の追加のデバイス414、例えば、ハードディスクデバイス、光ディスクデバイス、テープデバイス、及びソリッドステートメモリデバイスの1つまたは複数に、上記のプログラム(複数可)に関連する動作を実施する命令を格納することができる。
【0096】
本明細書に記載されている主題及び機能的動作の実施形態は、本明細書に開示されている構造及びそれらの構造的同等物を含む、デジタル電子回路、またはコンピュータソフトウェア、ファームウェア、またはハードウェア、またはそれらの1つ以上の併用で実装され得る。本明細書に記載される主題の実施形態は、データ処理装置による実行のために、またはデータ処理装置の動作を制御するために、非一時的なコンピュータ可読媒体に符号化されたコンピュータプログラム命令の1つまたは複数のモジュールを使用して実装することができる。コンピュータ可読媒体は、コンピュータシステムのハードドライブ、小売チャネルを通じて販売される光ディスク、または組み込みシステムなどの製造される製品である可能性がある。コンピュータ可読媒体は、別個に取得され、例えば、有線または無線ネットワークを介したコンピュータプログラム命令の1つまたは複数のモジュールの配信後に、コンピュータプログラム命令の1つまたは複数のモジュールで符号化され得る。コンピュータ可読媒体は、機械可読記憶装置、機械可読記憶基板、メモリ装置、またはそれらの1つまたは複数の組み合わせであり得る。
【0097】
「データ処理装置」という用語は、例えば、プログラム可能なプロセッサ、コンピュータ、または複数のプロセッサまたはコンピュータを含む、データを処理するためのすべての装置、デバイス、及び機械を包含する。装置は、ハードウェアに加えて、問題のコンピュータプログラムの実行環境を作成するコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、ランタイム環境、またはそれらの1つ以上の組み合わせを構成するコードを含み得る。さらに、この装置は、ウェブサービス、分散コンピューティング、グリッドコンピューティングインフラストラクチャなど、様々な異なるコンピューティングモデルインフラストラクチャを採用できる。
【0098】
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとしても知られる)は、コンパイル型言語もしくはインタプリタ型言語、宣言的または手続き的言語を含んだ任意の形式のプログラミング言語で作成されてよく、それは、スタンドアロンプログラムまたはモジュール、構成要素、サブルーチン、もしくはコンピューティング環境での使用に適した他のユニットとして含んだ任意の形式で展開されてよい。コンピュータプログラムは、必ずしもファイルシステムのファイルに対応しているわけではない。プログラムは、他のプログラムまたはデータを保持するファイルの一部(例えば、マークアップ言語ドキュメントに保存された1つ以上のスクリプト)、問題のプログラム専用の単一のファイル、または複数の調整されたファイル(例えば、1つ以上のモジュール、サブプログラム、またはコードの一部を格納するファイル)において格納され得る。コンピュータプログラムは、1台のコンピュータ、または1つのサイトに配置されているか、複数のサイトに分散され、通信ネットワークによって相互接続されている複数のコンピュータで実行されるように展開できる。
【0099】
本明細書に記載のプロセス及び論理フローは、1つまたは複数のコンピュータプログラムを実行する1つまたは複数のプログラム可能なプロセッサによって実行され、入力データを操作して出力を生成することによって機能を実行することができる。プロセス及び論理フローは、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)などの特殊用途の論理回路によって実行することもでき、また装置もそれらとして実装することができる。
【0100】
コンピュータプログラムの実行に適したプロセッサは、例として、汎用及び専用の両方のマイクロプロセッサ、及び任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサを含む。一般に、プロセッサは読み取り専用メモリまたはランダムアクセスメモリ、あるいはその両方から命令とデータを受け取る。コンピュータの重要な要素は、命令を行うためのプロセッサと、命令とデータを格納するための1つ以上のメモリデバイスである。一般に、コンピュータはまた、例えば、磁気、光磁気ディスク、または、光ディスクなど、データを格納するための1つまたは複数の大容量記憶装置を含むか、または、それらからデータを転送するように動作可能に結合される。ただし、コンピュータにそのようなデバイスが必要なわけではない。さらに、コンピュータは、別のデバイス、例えば、携帯電話、携帯情報端末(PDA)、モバイルオーディオまたはビデオプレーヤー、ゲームコンソール、全地球測位システム(GPS)受信機、または携帯型記憶装置(例えば、ユニバーサルシリアルバス(USB)フラッシュドライブ)などに組み込むことができる。コンピュータプログラムの命令及びデータを格納するのに適したデバイスには、半導体メモリデバイス、例えばEPROM(消去可能プログラマブル読み取り専用メモリ)、EEPROM(電気的消去可能プログラマブル読み取り専用メモリ)、及びフラッシュメモリデバイス;磁気ディスク、例えば、内蔵ハードディスクまたはリムーバブルディスク;光磁気ディスク;及びCD-ROM及びDVD-ROMディスクなどを含む、すべての形式の不揮発性メモリ、メディア、及びメモリデバイスが含まれる。プロセッサとメモリは、特別な目的の論理回路によって補完または組み込むことができる。
【0101】
ユーザとの対話を実現するために、本明細書に記載される主題の実施形態は、ディスプレイデバイス、例えば、ユーザに情報を表示するための、LDC(液晶ディスプレイ)ディスプレイデバイス、OLED(有機発光ダイオード)ディスプレイデバイス、または別のモニター、ならびにユーザがコンピュータに入力をすることができるキーボード及びポインティング装置、例えばマウスまたはトラックボールを有するコンピュータに実装され得る。他の種類のデバイスを使用して、ユーザとの対話を実現することもできる。例えば、ユーザに提供されるフィードバックは、視覚的フィードバック、聴覚的フィードバック、または触覚的フィードバックなどの任意の適切な形態の感覚的フィードバックであり得、また、ユーザからの入力は、音響、会話、または触覚の入力を含む、任意の適切な形式で受け取ることができる。
【0102】
コンピューティングシステムは、クライアント及びサーバを含むことができる。クライアントとサーバは通常、互いに離れており、通常は通信ネットワークを介して対話する。クライアントとサーバの関係は、それぞれのコンピュータで実行され、クライアントとサーバの関係を相互に備えるコンピュータプログラムによって発生する。本明細書に記載されている主題の実施形態は、例えばデータサーバーとしてのバックエンドコンポーネントを含むか、またはアプリケーションサーバーなどのミドルウェアコンポーネントを含むか、またはフロントエンドコンポーネント、例えば、ユーザが本明細書で説明されている主題の実装と対話できるグラフィカルユーザインターフェイスまたはブラウザユーザインターフェイスを備えたクライアントコンピュータ、または1つ以上のそのようなバックエンド、ミドルウェア、またはフロントエンドの任意の組み合わせであるコンピューティングシステムに実装することができる。システムのコンポーネントは、デジタルデータ通信の任意の適切な形式または媒体、例えば通信ネットワークによって相互接続することができる。通信ネットワークの例には、局所的エリアネットワーク(「LAN」)とワイドエリアネットワーク(「WAN」)、ネットワーク間(インターネットなど)、ピアツーピアネットワーク(アドホックツーピアネットワークなど)が含まれる。
【0103】
本明細書は多くの実施態様の詳細を含むが、これらは、特許請求されている、または特許請求され得るものの範囲に対する制限として解釈されるべきではなく、むしろ開示された主題の特定の実施形態に固有の特徴の説明として解釈されるべきである。別個の実施形態の文脈で本明細書に記載されている特定の特徴はまた、単一の実施形態で組み合わせて実装することができる。逆に、単一の実施形態の文脈で説明される様々な特徴はまた、複数の実施形態で別々に、または任意の適切なサブコンビネーションで実装することができる。さらに、特徴は、特定の組み合わせで作用するものとして上記に記載され得るが、最初はそのように特許請求されていても、特許請求された組み合わせからの1つまたは複数の特徴は、場合によっては組み合わせから除外され得、特許請求された組み合わせは、サブコンビネーションまたはサブコンビネーションの変形に向けられ得る。
【0104】
同様に、工程は特定の順序で図面に描かれているが、これは、望ましい結果を達成するために、そのような工程が示された特定の順序または連続した順序で実行されること、または図示されたすべての工程が実行されることを要求することとして理解されるべきではない。特定の状況では、マルチタスクと並列処理が有利な場合がある。さらに、上記の実施形態における様々なシステムコンポーネントの分離は、すべての実施形態においてそのような分離を必要とするものとして理解されるべきではなく、記載されたプログラムコンポーネント及びシステムは、一般に、単一のソフトウェア製品に一緒に統合されるか、または複数のソフトウェア製品にパッケージ化することができると理解されるべきである。
【0105】
このように、本発明の特定の実施形態が説明されてきた。他の実施形態は、以下の特許請求の範囲内にある。さらに、請求項に記載されているアクションは、異なる順序で実行することができ、それでも望ましい結果を達成することができる。
図1A
図1B
図2A
図2B
図2C
図2D
図2E
図2F
図3A
図3B
図3C
図3D
図3E
図4