JP2022054460A - 深層学習生成モデル - Google Patents

深層学習生成モデル Download PDF

Info

Publication number
JP2022054460A
JP2022054460A JP2021156903A JP2021156903A JP2022054460A JP 2022054460 A JP2022054460 A JP 2022054460A JP 2021156903 A JP2021156903 A JP 2021156903A JP 2021156903 A JP2021156903 A JP 2021156903A JP 2022054460 A JP2022054460 A JP 2022054460A
Authority
JP
Japan
Prior art keywords
machine part
assembly
descriptor
deep learning
modeled
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2021156903A
Other languages
English (en)
Inventor
メズガニ マリエム
Mezghanni Mariem
オヴシャニコフ マクス
Ovsjanikov Maks
ブールケナフェド マリカ
Boulkenafed Malika
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ecole Polytechnique de Montreal
Centre National de la Recherche Scientifique CNRS
Dassault Systemes SE
Original Assignee
Ecole Polytechnique de Montreal
Centre National de la Recherche Scientifique CNRS
Dassault Systemes SE
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ecole Polytechnique de Montreal, Centre National de la Recherche Scientifique CNRS, Dassault Systemes SE filed Critical Ecole Polytechnique de Montreal
Publication of JP2022054460A publication Critical patent/JP2022054460A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/17Mechanical parametric or variational design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/27Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/06Multi-objective optimisation, e.g. Pareto optimisation using simulated annealing [SA], ant colony algorithms or genetic algorithms [GA]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Biophysics (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Geometry (AREA)
  • Computer Hardware Design (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Processing Or Creating Images (AREA)

Abstract

【課題】本開示は、特に、それぞれが機械部品または機械部品のアセンブリを表す3Dモデル化オブジェクトを出力するように構成された深層学習生成モデルをトレーニングするためのコンピュータ実装方法に関する。【解決手段】この方法は、3Dモデル化オブジェクトのデータセットを提供すること、および、データセットに基づいて深層学習生成モデルをトレーニングすることを含む。トレーニングは、損失の最小化を含む。損失は、出力3Dモデル化オブジェクトごとに、それぞれの3Dモデル化オブジェクトの1つまたは複数の機能スコアにペナルティを課す項を含む。各機能スコアは、機械部品または機械部品のアセンブリによって、1つまたは複数の機能記述子の中のそれぞれの機能記述子の非尊重の程度を測定する。これは、機械部品または機械部品のアセンブリをそれぞれが表す3Dモデル化オブジェクトを出力することに関して改善された解決策を構成する。【選択図】図1

Description

本開示は、コンピュータプログラムおよびシステムの分野に関し、より具体的には、それぞれが機械部品または機械部品のアセンブリを表す3Dモデル化オブジェクトを出力する深層学習生成モデルに関連する方法、デバイス、およびプログラムに関する。
オブジェクトの設計、エンジニアリング、製造のために、多くのシステムとプログラムが市場で提供されている。CADは、コンピュータ支援設計の頭字語であり、たとえば、オブジェクトを設計するためのソフトウェアソリューションに関連する。CAEは、コンピュータ支援エンジニアリングの頭字語であり、たとえば、将来の製品の物理的動作をシミュレートするためのソフトウェアソリューションに関連する。CAMは、コンピュータ支援製造の頭字語であり、たとえば、製造プロセスと操作を定義するためのソフトウェアソリューションに関連する。このようなコンピュータ支援設計システムでは、グラフィカルユーザインターフェースが技術の効率に関して重要な役割を果たす。これらの技術は、製品ライフサイクル管理(PLM)システム内に組み込まれ得る。PLMは、企業が製品データを共有し、共通のプロセスを適用し、企業の知識を活用して、拡張エンタープライズの概念にわたって、構想からそれらの寿命の終わりまでの製品の開発を支援するビジネス戦略を指す。ダッソーシステムズによって(CATIA、ENOVIA、DELMIAの商標の下で)提供されるPLMソリューションは、製品エンジニアリングの知識を整理するエンジニアリングハブ、製造エンジニアリングの知識を管理する製造ハブ、およびエンタープライズ統合とエンジニアリングおよび製造ハブの両方への接続とを可能にするエンタープライズハブを提供する。このシステムは全体として、製品、プロセス、リソースをリンクするオープンオブジェクトモデルを提供し、ダイナミックな知識ベースの製品作成と意思決定支援を可能にして、最適化された製品定義、製造準備、生産、およびサービスを推進する。
このコンテキストおよび他のコンテキストでは、3Dモデル化オブジェクトの深層学習および特に深層学習生成モデルが広く重要になっている。
次の文献はこの分野に関連し、以下で参照される。
[1]Oliver Van Kaick, Hao Zhang, Ghassan Hamarneh, and Daniel Cohen-Or. A survey on shape correspondence. CGF, 2011.
[2]Johan WH Tangelder and Remco C Veltkamp. A survey of content based 3d shape retrieval methods. Multimedia tools and applications, 39(3): 441-471, 2008.
[3]Wayne E Carlson. An algorithm and data structure for 3d object synthesis using surface patch intersections. In SIGGRAPH, 1982.
[4]J. Wu, C. Zhang, T. Xue, W. T. Freeman, J. B. Tenenbaum. Learning a Probabilistic Latent Space of Object Shapes via 3D Generative-Adversarial Modeling, 2016.
[5]Siddhartha Chaudhuri, Daniel Ritchie, Jiajun Wu, Kai Xu, Hao Zhang. Learning Generative Models of 3D Structures. EUROGRAPHICS 2020.
[6]R. B. Gabrielsson, V. Ganapathi-Subramanian, P. Skraba, and L. J. Guibas. Topology-Layer for Machine Learning, 2019.
[7]Erwin Coumans and Yunfei Bai. Pybullet. A python module for physics simulation for games, robotics and machine learning. http://pybullet.org, 2016-2019.
[8]Rundi Wu, Yixin Zhuang, Kai Xu Hao Zhang, Baoquan Chen. PQ-NET: A Generative Part Seq2Seq Network for 3D Shapes. CVPR 2020.
[9]Qi, C. R., Su, H., Mo, K., & Guibas, L. J. PointNet: Deep learning on point sets for 3D classification and segmentation. CVPR, 2017.
文献[1,2,3]は、3Dオブジェクトの既存の遺産(patrimony)(たとえば、データセット)から部品を借用して結合することにより、新しい形状を取得して合成する方法に関連する。生成方法は、3Dモデル化オブジェクトを合成する(つまり、既存の遺産を組み合わせて取得するだけではなく新しいコンテンツを考え出す)可能性を示し、それによって概念的に新しいオブジェクトを提案する。従来の生成方法は、3Dモデル化オブジェクトの幾何学的または構造的特徴のいずれかにのみ焦点を当てて、3Dコンテンツの生成モデルを学習して適用する[4,5]。文献[4]は、ノイズサンプル(たとえば、均一またはガウス分布)を、データ生成分布のそれに近い分布の出力としてボクセルグリッドにマッピングする生成デコーダであるモデルを紹介している。文献[5]は、データの構造、たとえば3Dモデル化オブジェクトの形状の部品間の配置と関係を認識している3D生成モデルを学習することを調査している。
しかしながら、それぞれが機械部品または機械部品のアセンブリを表す3Dモデル化オブジェクトの出力に関しては、改善された解決策が依然として必要である。
したがって、それぞれが機械部品または機械部品のアセンブリを表す3Dモデル化オブジェクトを出力する深層学習生成モデルをトレーニングするためのコンピュータ実装方法を提供する。トレーニング方法は、3Dモデル化オブジェクトのデータセットを提供することを含む。各3Dモデル化オブジェクトは、機械部品または機械部品のアセンブリを表す。トレーニング方法は、データセットに基づいて深層学習生成モデルをトレーニングすることをさらに含む。深層学習生成モデルのトレーニングは、損失の最小化を含む。損失は、出力された3Dモデル化オブジェクトごとに、それぞれの3Dモデル化オブジェクトの1つ以上の機能スコアにペナルティを課す項を含む。各機能スコアは、機械部品または機械部品のアセンブリによって、1つまたは複数の機能記述子の中のそれぞれの機能記述子の非尊重の程度を測定する。
このトレーニング方法は、以下のステップのうちの1つまたは複数を含み得る。
損失は、出力3Dモデル化オブジェクトごとに、データセットに対するそれぞれの3Dモデル化オブジェクトの形状の不一致にペナルティを課す他の項をさらに含む。
他の項は、
それぞれの3Dモデル化オブジェクトとデータセットの対応するグラウンドトゥルース3Dモデル化オブジェクトとの間の再構成損失、
データセットに関連する敵対的損失、または、
それぞれの3Dモデル化オブジェクトとデータセットの対応するモデル化オブジェクトとの間の形状の非類似性を測定するマッピング距離
を含む。
深層学習生成モデルは、3D生成ニューラルネットワークを含む。
3D生成ニューラルネットワークは、変分オートエンコーダまたは敵対的生成ネットワークを含む。
深層学習生成モデルは、
3D生成ニューラルネットワークであって、変分オートエンコーダを含み、他の項が再構成損失および変分損失を含む、3D生成ニューラルネットワーク、
3D生成ニューラルネットワークであって、敵対的生成ネットワークを含み、他の項が敵対的損失を含む、3D生成ニューラルネットワーク、または、
マッピングモデルとそれに続く3D生成ニューラルネットワークであって、3Dニューラルネットワークは事前トレーニングされ、他の項がマッピング距離を含み、3D生成ニューラルネットワークはオプションで変分オートエンコーダまたは敵対的生成ネットワークを含む、マッピングモデルとそれに続く3D生成ニューラルネットワーク
のうちの1つで構成される。
トレーニングは、それぞれの3Dモデル化オブジェクトごとに、3Dモデル化オブジェクトの機能スコアを計算することを含み、計算は、3Dモデル化オブジェクトに、
決定論的関数、
シミュレーションベースのエンジン、または、
深層学習関数
のうちの1つまたは複数を適用することによって実施される。
計算は深層学習関数によって実施され、深層学習関数は、他のデータセットに基づいてトレーニングされ、他のデータセットは、それぞれの機能スコアにそれぞれが関連付けられた3Dオブジェクトを含み、それぞれの機能スコアは、
決定論的関数、
シミュレーションベースのエンジン、または、
深層学習関数
のうちの1つまたは複数を使用することによって計算される。
1つまたは複数の機能記述子は、接続性記述子を含む。
1つまたは複数の機能記述子は、
1つまたは複数の幾何学的記述子、および/または、
1つまたは複数のアフォーダンス
を含む。
1つまたは複数の幾何学的記述子は、
物理的安定性記述子であって、機械部品または機械部品のアセンブリについて、重力のみの適用下での機械部品または機械部品のアセンブリの安定性を表す物理的安定性記述子、および/または、
耐久性記述子であって、機械部品または機械部品のアセンブリについて、重力および外部の機械的力の適用に耐える機械部品または機械部品のアセンブリの能力を表す耐久性記述子
を含む。
1つまたは複数のアフォーダンスは、
サポートアフォーダンス記述子であって、機械部品または機械部品のアセンブリについて、外部の機械的力の適用のみに耐える機械部品または機械部品のアセンブリの能力を表すサポートアフォーダンス記述子、および/または、
抗力係数記述子であって、機械部品または機械部品のアセンブリについて、機械部品または機械部品のアセンブリに対する流体環境の影響を表す抗力係数記述子、
包含アフォーダンス記述子であって、機械部品または機械部品のアセンブリについて、機械部品の内部容積に他のオブジェクトを収容する、機械部品または機械部品のアセンブリの能力を表す包含アフォーダンス記述子、
保持アフォーダンス記述子であって、機械部品または機械部品のアセンブリについて、機械的接続を介して他のオブジェクトを支持する、機械部品または機械部品のアセンブリの能力を表す保持アフォーダンス記述子、および/または、
吊り下げアフォーダンス記述子であって、機械部品または機械部品のアセンブリについて、機械的接続を介して支持される機械部品または機械部品のアセンブリの能力を表す吊り下げアフォーダンス記述子、
を含む。
データセットの各3Dモデル化オブジェクトは、
一点の家具、
電動車両、
非電動車両、または、
道具
を表す。
さらに、それぞれが機械部品または機械部品のアセンブリを表す3Dモデル化オブジェクトを出力し、トレーニング方法に従ってトレーニングされた(すなわち、トレーニングされている)深層学習生成モデルの使用方法が提供される。使用方法は、深層学習生成モデルを提供すること、および深層学習生成モデルを適用して、それぞれの機械部品または機械部品のアセンブリをそれぞれが表す1つまたは複数の3Dモデル化オブジェクトを出力することを含む。
さらに、トレーニング方法、次いで使用方法を含む機械学習プロセスが提供される。
さらに、トレーニング方法、使用方法、および/または機械学習プロセスを実施するための命令を含むコンピュータプログラムが提供される。
プログラムおよび/またはトレーニングされた深層学習生成モデルをその上に記録したデータ記憶媒体を含むデバイスがさらに提供される。デバイスは、非一時的なコンピュータ可読媒体を形成し得る。あるいは、デバイスは、データ記憶媒体に結合されたプロセッサを含む。したがって、デバイスはシステムを形成し得る。システムは、プロセッサに結合されたグラフィカルユーザインターフェースをさらに含み得る。
次に、本開示の実施形態を、非限定的な例として、添付の図面を参照して説明する。
図1は、トレーニング方法のフローチャートを示す図である。 図2は、システムのグラフィカルユーザインターフェースの例を示す図である。 図3は、システムの例を示す図である。 図4は、トレーニング方法、使用方法、および/または機械学習プロセスを示す図である。 図5は、トレーニング方法、使用方法、および/または機械学習プロセスを示す図である。 図6は、トレーニング方法、使用方法、および/または機械学習プロセスを示す図である。 図7は、トレーニング方法、使用方法、および/または機械学習プロセスを示す図である。 図8は、トレーニング方法、使用方法、および/または機械学習プロセスを示す図である。 図9は、トレーニング方法、使用方法、および/または機械学習プロセスを示す図である。 図10は、トレーニング方法、使用方法、および/または機械学習プロセスを示す図である。 図11は、トレーニング方法、使用方法、および/または機械学習プロセスを示す図である。 図12は、トレーニング方法、使用方法、および/または機械学習プロセスを示す図である。 図13は、トレーニング方法、使用方法、および/または機械学習プロセスを示す図である。 図13は、トレーニング方法、使用方法、および/または機械学習プロセスを示す図である。 図13は、トレーニング方法、使用方法、および/または機械学習プロセスを示す図である。 図13は、トレーニング方法、使用方法、および/または機械学習プロセスを示す図である。
図1を参照すると、深層学習生成モデルをトレーニングするためのコンピュータ実装方法が提供される。深層学習生成モデルは、3Dモデル化オブジェクトを出力するように構成されている。各3Dモデル化オブジェクトは、機械部品または機械部品のアセンブリを表す。トレーニング方法は、3Dモデル化オブジェクトのデータセットを提供することS10を含む。各3Dモデル化オブジェクトは、機械部品または機械部品のアセンブリを表す。トレーニング方法は、データセットに基づいて深層学習生成モデルをトレーニングすることS20をさらに含む。トレーニングS20は、損失の最小化を含む。損失は、出力された3Dモデル化オブジェクトごとに、それぞれの3Dモデル化オブジェクトの1つまたは複数の機能スコアにペナルティを課す項を含む。各機能スコアは、機械部品または機械部品のアセンブリによって、1つまたは複数の機能記述子の中のそれぞれの機能記述子の非尊重の程度を測定する。
トレーニング方法は、それぞれが機械部品または機械部品のアセンブリを表す3Dモデル化オブジェクトを出力することに関して改善された解決策を構成する。
特に、トレーニング方法により、3Dモデル化オブジェクトを出力するように構成された生成モデルを取得することができる。生成モデルを使用すると、1つまたは複数の3Dモデル化オブジェクトを自動的に生成すること(つまり、出力すること、または合成すること)ができるため、3Dモデリングの分野でエルゴノミクスを改善する。さらに、トレーニング方法は、S10で提供されたデータセットに基づいてトレーニングS20を介して生成モデルを取得し、生成モデルは深層学習生成モデルである。したがって、トレーニング方法は、機械学習の分野によって提供される改善を活用する。特に、深層学習生成モデルは、データセットに存在する多様な3Dモデル化オブジェクトのデータ分布を複製し、学習に基づいて3Dモデル化オブジェクトを出力することを学習し得る。
さらに、深層学習生成モデルは、意図されたコンテキスト内で、表現された機械部品または機械部品のアセンブリの使用または目的特性に関して、特に正確な3Dモデル化オブジェクトを出力する。これは、特定の損失の最小化を含むトレーニングS20のおかげである。損失は具体的に、出力された3Dモデル化オブジェクトごとに、それぞれの3Dモデル化オブジェクトの1つまたは複数の機能スコアにペナルティを課す項を含む。この特定の項が損失に含まれると、深層学習生成モデルは、1つまたは複数の機能スコアによって測定される機能的妥当性を満たす3Dオブジェクトを出力するように教えられる。実際、各機能スコアは、機械部品または機械部品のアセンブリによって、1つまたは複数の機能記述子の中のそれぞれの機能記述子の非尊重の程度を測定する。例では、そのような機能記述子は、形状、構造、または表された機械部品または機械部品のアセンブリと他のオブジェクトまたは意図されたコンテキスト内の機械力との任意のタイプの相互作用に関連する任意のキューを含み得る。したがって、学習S20は、例えば、意図されたコンテキストにおける形状または構造の安定性、物理的実現可能性、および相互作用の質に関して、意図されたコンテキストにおけるデータセットの3Dモデル化オブジェクトの機能的妥当性を評価し得る。したがって、深層学習生成モデルは、機能的に有効な、特に正確な3Dモデル化オブジェクトを出力する。
さらに、トレーニングS20は、データセットの3Dモデル化オブジェクトの機能的特徴を調査し得る。例では、上記3Dオブジェクトの幾何学的および構造的特徴に加えて、トレーニングS20は、上記3Dオブジェクトの幾何学的、構造的、トポロジー的および物理的特徴間の相互依存性を調査し得る。さらに、トレーニングS20は、データセットのそれぞれの3Dモデル化オブジェクトの機能を改良または修正する3Dモデル化オブジェクトを出力するために使用され得、それにより、データセットに関する出力3Dモデル化オブジェクトの精度を改善する。
本明細書の任意の方法は、コンピュータで実施される。これは、トレーニング方法のすべてのステップ(S10およびS20を含む)および使用方法のすべてのステップが、少なくとも1台のコンピュータまたは任意のシステムによって実行されることを意味する。したがって、方法のステップは、場合により完全に自動で、または半自動で、コンピュータによって実行される。例では、方法の少なくともいくつかのステップのトリガーは、ユーザとコンピュータの相互作用を介して実施され得る。必要とされるユーザとコンピュータの相互作用のレベルは、予測される自動化のレベルに依存し、ユーザの希望を実装する必要性とバランスをとり得る。例では、このレベルはユーザ定義および/または事前定義され得る。
本明細書における方法のコンピュータ実装の典型的な例は、この目的に適合されたシステムを用いて方法を実施することである。システムは、メモリおよびグラフィカルユーザインターフェース(GUI)に結合されたプロセッサを含み得、メモリは、方法を実施するための命令を含むコンピュータプログラムをその上に記録している。メモリはデータベースを格納してもよい。メモリは、そのようなストレージに適合した任意のハードウェアであり、場合によりいくつかの物理的に異なる部分(たとえば、プログラム用に1つ、および場合によりデータベース用に1つ)を含む。
モデル化オブジェクトは、たとえばデータベースなどに保存されているデータによって定義された任意のオブジェクトである。ひいては、「モデル化オブジェクト」という表現は、データ自体を示す。システムのタイプに応じて、モデル化オブジェクトはさまざまな種類のデータによって定義され得る。システムは、実際、CADシステム、CAMシステム、PDMシステム、および/またはPLMシステムの任意の組み合わせであり得る。これらの異なるシステムでは、モデル化オブジェクトは対応するデータによって定義される。したがって、CADオブジェクト、PLMオブジェクト、PDMオブジェクト、CAEオブジェクト、CAMオブジェクト、CADデータ、PLMデータ、PDMデータ、CAMデータ、CAEデータについて論じ得る。ただし、モデル化オブジェクトはこれらのシステムの任意の組み合わせに対応するデータによって定義され得るため、これらのシステムは他のシステムの排他的なものではない。したがって、システムはCADシステムとPLMシステムの両方であり得る。
CADシステムとは、CATIAなどのモデル化オブジェクトのグラフィック表現に基づいてモデル化オブジェクトを設計するために少なくとも適合された任意のシステムを意味する。この場合、モデル化オブジェクトを定義するデータは、モデル化オブジェクトの表現を可能にするデータを含む。CADシステムは、たとえば、エッジまたはラインを使用して、場合によっては面または表面を使用して、CADのモデル化オブジェクトの表現を提供し得る。モデル化オブジェクトの仕様は、単一のCADファイルまたは複数のCADファイルに格納し得る。CADシステムでモデル化オブジェクトを表すファイルの典型的なサイズは、部品ごとに1メガバイトの範囲である。モデル化オブジェクトは典型的に、数千の部品のアセンブリであり得る。
CADのコンテキストでは、モデル化オブジェクトは典型的に、3Dモデル化オブジェクトであり得る。「3Dモデル化オブジェクト」とは、その3D表現を可能にするデータによってモデル化された任意のオブジェクトを意味する。3D表現により、あらゆる角度から部品を見ることができる。たとえば、3Dモデル化オブジェクトは、3Dで表現されている場合、その軸のいずれかの周り、または表現が表示されている画面の任意の軸の周りで操作および回転され得る。
深層学習生成モデルによって出力される任意の3Dモデル化オブジェクトを含む、本明細書の任意の3Dモデル化オブジェクトは、(例えば、機械的)部品または部品のアセンブリ(すなわち、部品のアセンブリは、トレーニング方法の観点から部品自体と見られ得るので、部品のアセンブリ、または、トレーニング方法は、アセンブリの各部品に個別に適用され得る)、またはより一般的には、任意の剛体アセンブリ(例えば、モバイルメカニズム)などの実世界で製造される製品の形状を表し得る。したがって、上記3Dモデル化オブジェクトのいずれも、電動または非電動地上車両(例えば、自動車および軽トラック機器、レーシングカー、オートバイ、トラックおよびモーター機器、トラックおよびバス、列車を含む)の一部、航空機の一部(例えば、航空機機器、航空宇宙機器、推進機器、防衛製品、航空機器、宇宙機器を含む)、海軍車両の一部(例えば、海軍機器、商用船、オフショア機器、ヨットおよび作業船、船舶機器を含む)、一般的な機械部品(例えば、工業製造機械、大型移動機械または機器、設置機器、産業機器製品、金属加工製品、タイヤ製造製品を含む)、電気機械または電子部品(例えば、家電製品、セキュリティおよび/または制御および/または計装製品、コンピューティングおよび通信機器、半導体、医療機器および機器を含む)、消費財(例えば、家具、家庭および園芸用品、レジャー用品、ファッション製品、耐久消費財小売業者の製品、非耐久消費財小売業者の製品を含む)、パッケージ(例えば、食品および飲料およびタバコ、美容およびパーソナルケア、家庭用品の包装を含む)などの任意の機械部品であり得る工業製品を表し得る。深層学習生成モデルによって出力された任意の3Dモデル化オブジェクトを含む、上記3Dモデル化オブジェクトはいずれも、その後、仮想設計の一部として、例えば、CADソフトウェアソリューションまたはCADシステムと統合され得る。CADソフトウェアソリューションにより、航空宇宙、建築、建設、消費財、ハイテクデバイス、産業機器、輸送、海洋、および/またはオフショアの石油/ガス生産または輸送を含む、さまざまな無制限の産業分野での製品のその後の設計が可能になる。
PLMシステムとは、物理的に製造された製品(または製造される製品)を表すモデル化オブジェクトの管理に適合した任意のシステムをさらに意味する。したがって、PLMシステムでは、モデル化オブジェクトは、物理的オブジェクトの製造に適したデータによって定義される。これらは典型的に、次元値および/または公差値であり得る。オブジェクトの正しい製造には、実際、そのような値を有する方がよい。
CAMソリューションとは、製品の製造データを管理するために適合された、ハードウェアのソフトウェアであるソリューションをさらに意味する。製造データは一般的に、製造する製品、製造プロセス、および必要なリソースに関連するデータを含む。CAMソリューションは、製品の製造プロセス全体を計画および最適化するために使用される。たとえば、CAMユーザに、実現可能性、製造プロセスの期間、または製造プロセスの特定のステップで使用され得る特定のロボットなどのリソースの数に関する情報を提供でき、したがって、管理または必要な投資に関する決定を可能にする。CAMは、CADプロセスと潜在的なCAEプロセスの後の後続プロセスである。このようなCAMソリューションは、ダッソーシステムズによってDELMIA(登録商標)の商標の下で提供される。
図2は、システムのGUIの例を示し、システムは、深層学習生成モデルによって出力された任意の3Dモデル化オブジェクトを表示および/または設計(例えば、編集)するために使用され得、仮想設計の一部として統合されている。
GUI2100は、標準メニューバー2110、2120、ならびに下部およびサイドツールバー2140、2150を有する、典型的なCADに類似のインターフェースであり得る。そのようなメニューおよびツールバーは、ユーザが選択可能なアイコンのセットを含み、各アイコンは、当技術分野で知られているように、1つまたは複数の操作または機能に関連付けられている。これらのアイコンのいくつかは、GUI2100に表示される3Dモデル化オブジェクト2000の編集および/または作業に適合したソフトウェアツールに関連付けられている。ソフトウェアツールは、ワークベンチにグループ化され得る。各ワークベンチは、ソフトウェアツールのサブセットを含む。特に、ワークベンチのうちの1つは編集ワークベンチであり、モデル化製品 2000の幾何学的特徴の編集に適している。操作中に、設計者はたとえば、オブジェクト2000の一部を事前選択し得、次いで、適切なアイコンを選択することによって、操作(たとえば、次元、色などの変更)を開始するか、または、幾何学的制限を編集する。たとえば、典型的なCAD操作は、画面上に表示される3Dモデル化オブジェクトのパンチングまたはフォールディングのモデリングである。GUIはたとえば、表示された製品2000に関するデータ250 0を表示し得る。図の例では、「機能ツリー」として表示されたデータ2500とその3D表現2000は、ブレーキキャリパーおよびディスクを含むブレーキアセンブリに関連する。GUIは、例えば、オブジェクトの3D配向を容易にするため、編集された製品の操作のシミュレーションをトリガーするため、または表示された製品2000の様々な属性をレンダリングするための様々なタイプのグラフィックツール2130、2070、2080をさらに示し得る。カーソル2060は、ユーザがグラフィックツールと対話することを可能にするために、触覚デバイスによって制御され得る。
図3は、システムの例を示し、システムは、クライアントコンピュータシステム、たとえば 、ユーザのワークステーションである。
この例のクライアントコンピュータは、内部通信BUS1000に接続された中央処理装置(CPU)1010と、同じくBUSに接続されたランダムアクセスメモリ(RAM)1070とを備える。クライアントコンピュータはさらに、BUSに接続されたビデオランダムアクセスメモリ1100に関連付けられるグラフィカルプロセシングユニット(GPU)1110が設けられている。ビデオRAM1100は、当技術分野ではフレームバッファとしても知られている。大容量記憶デバイスコントローラ1020は、ハードドライブ1030などの大容量メモリデバイスへのアクセスを管理する。コンピュータプログラム命令およびデータを具現化するのに適した大容量メモリデバイスは、例として、EPROM、EEPROM、およびフラッシュメモリデバイスなどの半導体メモリデバイス、内部ハードディスクおよびリムーバブルディスクなどの磁気ディスク、光磁気ディスク、並びにCD-ROMディスク1040を含む、すべての形式の不揮発性メモリを含む。前述のいずれも、特別に設計されたASIC(特定用途向け集積回路)によって補完され、または組み込まれ得る。ネットワークアダプタ1050は、ネットワーク1060へのアクセスを管理する。クライアントコンピュータはまた、カーソル制御デバイス、キーボードなどの触覚デバイス1090を含み得る。カーソル制御デバイスは、ユーザがディスプレイ1080上の任意の所望の位置にカーソルを選択的に配置することを可能にするために、クライアントコンピュータで使用される。さらに、カーソル制御デバイスにより、ユーザはさまざまなコマンドを選択し、制御信号を入力することができる。カーソル制御デバイスは、システムに制御信号を入力するためのいくつかの信号生成デバイスを含む。典型的には、カーソル制御デバイスはマウスであり得、マウスのボタンは信号を生成するために使用される。代替的または追加的に、クライアントコンピュータシステムは、感知パッド、および/または感知スクリーンを備え得る。
コンピュータプログラムは、コンピュータによって実行可能な命令を含み得、命令は、上記のシステムにこの方法のいずれかを実施させるための手段を含む。プログラムは、システムのメモリを含む任意のデータ記憶媒体上に記録可能であり得る。プログラムは、例えば、デジタル電子回路、またはコンピュータハードウェア、ファームウェア、ソフトウェア、またはそれらの組み合わせで実装され得る。プログラムは、装置、例えば、プログラム可能なプロセッサによる実行のために機械可読記憶デバイスに具現化された製品として実装され得る。方法のステップは、入力データを操作し、出力を生成することによって、方法の機能を実施する命令のプログラムを実行するプログラム可能なプロセッサによって実施され得る。したがって、プロセッサは、データ記憶システム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスからデータおよび命令を受信し、それらにデータおよび命令を送信するようにプログラム可能であり、結合され得る。アプリケーションプログラムは、ハイレベル手続き型またはオブジェクト指向プログラミング言語で、もしくは必要に応じてアセンブリまたは機械語で実装され得る。いずれの場合も、言語は、コンパイルされ、またはインタプリタされた言語であり得る。プログラムは、フルインストールプログラムまたは更新プログラムであり得る。システム上へのプログラムの適用は、いかなる場合も、本明細書の任意の方法を実施するための命令をもたらす。
トレーニング方法に従ってトレーニングされた深層学習生成モデルは、3Dモデル化オブジェクトを設計するためのプロセスの一部であり得る。「3Dモデル化オブジェクトを設計すること」は、3Dモデル化オブジェクトを作成するプロセスの少なくとも一部であるアクションまたは一連のアクションを指す。たとえば、プロセスは、深層学習生成モデルを適用して1つまたは複数の3Dモデル化オブジェクトを出力し、オプションで、それぞれの出力された3Dモデル化オブジェクトに1つまたは複数の設計変更を実施することを含み得る。プロセスは、それぞれの出力された3Dモデル化オブジェクトのグラフィック表現を表示することを含み得、オプションの1つまたは複数の設計変更は、例えば、ユーザグラフィック対話によって、CADソフトウェアを用いてCAD操作を適用することを含み得る。
設計することは、3Dモデル化オブジェクトを最初から作成するためのトレーニング方法に従ってトレーニングされた深層学習生成モデルを使用することを含み得、したがって、設計プロセスのエルゴノミクスを改善する。実際、ユーザは3Dモデル化オブジェクトを最初から作成するために面倒なツールを使用する必要はなく、設計プロセスの他のタスクに集中し得る。あるいは、設計することは、トレーニング方法に従ってトレーニングされた深層学習生成モデルに(以前に作成された)3Dモデル化オブジェクトを提供することを含み得る。深層学習生成モデルは、入力されたモデル化オブジェクトを出力3Dモデル化オブジェクトにマッピングし得、その後の設計は、深層学習生成モデルの上記出力3Dモデル化オブジェクトに対して実施される。出力3Dモデル化オブジェクトは、機能の点で、入力された3Dモデル化オブジェクトよりも正確である。言い換えると、深層学習生成モデルを使用して、入力された3Dモデル化オブジェクトを修正または改善/最適化し、機能的に言えば、改善された設計プロセスを生み出し得る。入力された3Dモデル化オブジェクトは、幾何学的に現実的であり得るが、機能的に無効であるか、または最適化されていない。その場合の使用方法はこれを改善し得る。
設計プロセスは、設計プロセスを実施した後、モデル化オブジェクトに対応する物理的製品を製造することを含み得る製造プロセスに含まれ得る。いずれにせよ、この方法によって設計されたモデル化オブジェクトは、製造オブジェクトを表し得る。したがって、モデル化オブジェクトは、モデル化ソリッド(すなわち、ソリッドを表すモデル化オブジェクト)であり得る。製造オブジェクトは、部品などの製品、または部品のアセンブリであり得る。深層学習生成モデルは、モデル化オブジェクトを作成する設計プロセスを改善するので、深層学習生成モデルは製品の製造も改善し、したがって、製造プロセスの生産性を向上させる。
「深層学習モデル」とは、一連の計算を表す任意のデータ構造を意味し、上記データ構造の少なくとも一部は、3Dモデル化オブジェクトのデータセットに基づいてトレーニングすることができる。トレーニングは、機械学習の分野、特に深層学習の分野で知られている一連の手法によって実施することができる。トレーニングされた深層学習モデル、つまり3Dモデル化オブジェクトのデータセットに基づいてトレーニングされた深層学習モデルは、「生成的」であり、つまり1つまたは複数の3Dオブジェクトを生成し、出力するように構成される。例では、深層学習生成モデルは、変分オートエンコーダまたは敵対的生成ネットワーク、および/または他の任意のニューラルネットワーク(例えば、畳み込みニューラルネットワーク、リカレントニューラルネットワーク、識別モデル)を含み得る。このような例では、深層学習生成モデルは、幾何学的形状に関して少なくともある程度の精度で、合成された3Dオブジェクトのファミリーを生成し得る。
損失の最小化は、任意の方法、たとえば、勾配降下法、または分野内で知られている他の任意の最小化で実施され得る。損失は、出力された3Dモデル化オブジェクトごとに、それぞれの3Dモデル化オブジェクトの1つまたは複数の機能スコアにペナルティを課す項を含む。
「機能スコア」とは、各オブジェクトに起因し、1つまたは複数の機能記述子の中のそれぞれの機能記述子の非尊重の程度を機械部品または機械部品のアセンブリによって測定する任意の指標(たとえば、数値、ベクトル)を意味する。慣例により、機能スコアが低いほど、それぞれの機能記述子に対するより良い一致(または尊重)を意味し得る。
「機能記述子」とは、3Dモデル化オブジェクトの任意の機能属性、つまり、表現された実世界のオブジェクト(機械部品または機械部品のアセンブリ)の物理的機能を特徴付ける(つまり表す)機能を意味する。物理的機能とは、機能的であるという(実世界のオブジェクトによる)品質、つまり、使用の物理的コンテキスト、すなわち、その使用または目的内で実施する、または実施できるようにする、表現された実世界のオブジェクトの能力を意味する。物理的機能は、表現された実世界のオブジェクトが所有し、物理的相互作用によって影響され得る物理的特性であり得る。そのような物理的特性は、例えば、表現された実世界のオブジェクトの電気伝導率、熱伝導率、流体環境での抗力、密度、剛性、弾性変形、引っ張り強さ、弾力性を含み得る。物理的相互作用は、他の機械的オブジェクトまたは複数のオブジェクトとの相互作用、または表現された実世界のオブジェクトの物理的特性に影響を与える環境刺激の存在であり得る。環境刺激は、意図された環境の少なくとも一部から来る(表されたオブジェクトへの)任意の物理的入力、例えば、環境または流体の流れを含む環境からの熱源であり得る。物理的機能は機械的機能であり得る。機械的機能は、表現された実世界のオブジェクトが所有し、機械的相互作用の下で影響を受け得る、空間構造および機械的安定性の特性であり得る。表現されたオブジェクトの空間構造および機械的安定性の特性は、表現された実世界オブジェクトのコンポーネントの接続性、使用時の表現された実世界オブジェクトの安定性、耐久性、または機械的相互作用の影響を受けるときの表現された実世界オブジェクトの任意のアフォーダンスを含み得る。上記機械的相互作用は、表現されたオブジェクトと他の機械的オブジェクトおよび/または外部の機械的刺激との任意の機械的相互作用を含み得る。表現されたオブジェクトと他の機械的オブジェクトとの機械的相互作用の例は、衝突(例えば、他のオブジェクトとのあらゆるタイプの衝撃および/または他のオブジェクトとのあらゆるタイプの摩擦を含む)、囲まれた容積内の他のオブジェクトの競合、他のオブジェクトの支持、他のオブジェクトの保持、または機械的な接続を介して吊り下げられていることを含み得る。表現されたオブジェクトの上記機械的相互作用は、表現されたオブジェクト上の運動の機械的制約、例えば、静的または動的な運動の制約を含み得る。上記機械的相互作用は、外部の機械的刺激に対する表現されたオブジェクトの任意の機械的応答をさらに含み得る。外部の機械的刺激は、表現されたオブジェクトへの機械的力の適用、例えば、静止状態から運動状態へと変化する力、応力または振動力の適用からなり得る。機能記述子は、複数の物理的または機械的機能を含み得、これらは1次元記述子または多次元ベクトルとして組み合わせ得る。
したがって、機能スコアは、1つまたは複数の機能記述子のうちのそれぞれの機能記述子によって表現されるように、表現される実世界のオブジェクトがその使用または目的に関連する物理的機能を有する程度を定量化する。したがって、損失は、表現された実世界のオブジェクトの使用または目的の特性に関して十分に一致していない出力3Dモデル化オブジェクトにペナルティを課す。したがって、損失により、学習は、1つまたは複数の機能記述子によって特徴付けられる、表現された実世界オブジェクトの1つまたは複数の物理的および/または機械的機能間の相互依存性を調査することが可能になり、たとえば、学習は、配置、構造、および意図されたコンテキスト内のオブジェクトの物理的および/または機械的相互作用間の相互依存性を調査する。その結果、トレーニング方法に従ってトレーニングされた生成モデルは、対応する表現された機械部品または機械部品のアセンブリの特に正確な表現である3Dモデル化オブジェクトを出力し、その機械的機能の観点から、たとえば、幾何学的に安定し、物理的に実現可能であり、使用の意図されたコンテキストと共に改善された相互作用の質を有する。
損失は、出力された3Dモデル化オブジェクトごとに、データセットに関するそれぞれの3Dモデル化オブジェクトの形状の不一致にペナルティを課す他の項をさらに含み得る。「データセットに関するそれぞれの3Dモデル化オブジェクトの形状の不一致」とは、それぞれの3Dモデル化オブジェクトの形状とデータセットの少なくともいくつかの要素の形状との間の不一致または不整合を意味する。不一致または不整合は、それぞれの3Dモデル化オブジェクトの形状とデータセットの少なくともいくつかの要素の形状との間の差異または距離(正確または近似)で構成され得る。したがって、学習は、機能(機能スコアにペナルティを課すことによってキャプチャされたもの)と3Dモデル化オブジェクトの形状との間の相互依存性を調査し、よって、形状が、表現された機械部品または機械部品のアセンブリの機能に最もよく適合された、正確で現実的な3Dモデル化オブジェクトを出力する。
他の項は、再構築損失、敵対的損失、またはマッピング距離を含み得る。したがって、学習は、再構成損失、敵対的損失、またはマッピング距離のいずれかにより、形状の一貫性を改善することに焦点を当て得る。それぞれの3Dモデル化オブジェクトとデータセットの対応するグラウンドトゥルース3Dモデル化オブジェクトとの間の再構成損失を含む他の項は、それぞれの3Dモデル化オブジェクトとデータセットの対応するグラウンドトゥルース3Dモデル化オブジェクトとの間の幾何学的非類似性にペナルティを課す項で構成され得る。したがって、提供された方法に従ってトレーニングされた生成モデルは、意図された機能を尊重する改善された3D形状再構成のために使用され得る。データセットに関連する敵対的損失は、データセットの分布と生成された3D出力モデル化オブジェクトの分布との間の相違を最小化する項を含むか、またはそれで構成される。したがって、相違の最小化は、データセットの分布に関して、生成された3D出力オブジェクトの形状の一貫性を改善する。マッピング距離は、それぞれの3Dモデル化オブジェクトとデータセットの対応するモデル化オブジェクトとの間の形状の非類似性を測定する。したがって、生成モデルは、3Dモデル化オブジェクトを出力し、3Dモデル化オブジェクトは、データセットの対応するモデル化オブジェクトに関して(少なくともその機能と形状の一貫性に関して)より正確であり得る。
深層学習生成モデルは、3D生成ネットワークを含み得る。「3D生成ニューラルネットワーク」とは、ニューラルネットワークを形成する深層学習生成モデルを意味し、ニューラルネットワークは、機械学習ベースの最適化に従ってトレーニング可能であり、ニューラルネットワークのすべての学習可能な要素(たとえば、ニューラルネットワークのすべての重み)は一緒にトレーニングされる(たとえば、単一の機械学習ベースの最適化中に)。したがって、深層学習生成モデルは、出力3Dモデル化オブジェクトの精度の側面を改善するための、そのような3D生成ニューラルネットワークを活用し得る。
3D生成ニューラルネットワークは、変分オートエンコーダまたは敵対的生成ネットワーク(例えば、古典的な敵対的生成ネットワーク、または潜在的な敵対的生成ネットワークとそれに続く3Dコンバータ)を含み得る。このような3D生成ニューラルネットワークは、出力3Dモデルの精度を向上させる。
変分オートエンコーダは、エンコーダとデコーダの2つの部分で構成される。エンコーダは入力を受け取り、分布確率を出力する。デコーダは、エンコーダによって出力された分布からサンプルが与えられた入力を再構築する。例えば、分布はガウス分布に設定され得、その結果、エンコーダは、例えば、分布確率の平均および分散を表す同じサイズの2つのベクトルを出力し、デコーダは、分布に基づいて入力を再構築する。変分オートエンコーダは、変分損失と再構成損失を介してエンコーダおよびデコーダを共同でトレーニングすることによってトレーニングされる。
敵対的生成ネットワーク(以下、GANとも呼ぶ)は、ジェネレータおよびディスクリミネータの2つのネットワークで構成される。ジェネレータは、ガウス分布からサンプリングされた低次元の潜在変数を入力として受け取る。ジェネレータの出力は、トレーニングデータセット内のデータ(例えば、クラシックGAN)、または潜在空間内のデータ(例えば、潜在GAN)と同じタイプのサンプルであり得る。ジェネレータは、「本物」または「偽物」の2つのクラス間のその入力に対してバイナリ分類を実施するようにトレーニングされたディスクリミネータを使用してトレーニングされ得る。その入力は、トレーニングデータセットからのものである場合は「本物」として分類され、ジェネレータからのものである場合は「偽物」として分類される必要がある。トレーニング段階では、ディスクリミネータがその二項分類タスクを実施するようにトレーニングされている間、ジェネレータは、ディスクリミネータによって「本物」として分類されるサンプルを生成することによってディスクリミネータを「だます」ようにトレーニングされる。両方のネットワークを共同でトレーニングするために、GANは敵対的損失を通じてトレーニングされ得る。
あるいは、3D生成ニューラルネットワークは、変分オートエンコーダおよび敵対的生成ネットワークに基づいて構築することができるハイブリッド生成ネットワークを含む、3D生成ニューラルネットワークからのものを含み得る。
深層学習生成モデルは、3D生成ニューラルネットワークで構成され得る。したがって、学習方法は、機械学習ベースの最適化中に3D生成ニューラルネットワークのすべての要素をトレーニングする。
このような場合、3D生成ニューラルネットワークは変分オートエンコーダを含み得、他の項は再構成損失および変分損失を含み得る。したがって、トレーニング方法に従ってトレーニングされた深層学習生成モデルは、機能スコアを最小化しながら、変分オートエンコーダのエンコーダおよびデコーダを一緒にトレーニングする。よって、深層学習生成モデルは、変分オートエンコーダの利点を活用しながら、機能的に有効な3Dモデル化オブジェクトを出力する 。そのような利点は、例えば、潜在空間から2つの潜在ベクトル表現をサンプリングおよび補間する(または潜在空間に対して他のタイプの算術を実行する)こと、およびトレーニング方法に従ってトレーニングされたデコーダにより、上記補間に基づいて機能的な3Dモデル化オブジェクトを出力することを含む。
変分オートエンコーダの代わりに、3D生成ニューラルネットワークは敵対的生成ネットワークを含み得、他の項は敵対的損失を含み得る。敵対的損失は、例えば、ディスクリミネータ損失、ミニマックス損失、非飽和損失など、あらゆる種類のものであり得る。したがって、深層学習生成モデルは、敵対的生成ネットワークの利点を活用しながら、機能的に有効な3Dモデル化オブジェクトを出力する。
この方法に従ってトレーニングされた深層学習生成モデルは、3Dモデル化オブジェクトを合成(つまり、3Dモデル化オブジェクトを最初から作成)するための方法内で使用され得、これは、その後、設計プロセスの一部として、特にCADプロセス内で統合され得、これにより、CADシステムのユーザに正確で現実的な3Dモデル化オブジェクトが提供される一方で、設計プロセスのエルゴノミクスを向上させる。合成は、トレーニングされた3D生成ニューラルネットワーク の潜在空間から潜在表現を取得すること、および取得された潜在表現から3Dモデル化オブジェクトを生成することを含み 得る。3Dモデル化オブジェクトを生成するための潜在表現は、例えば、算術演算を実施した結果として、または潜在空間からの少なくとも2つのサンプリングされた潜在表現間の補間の結果として、潜在空間からの任意の種類のサンプリングから取得され得る。さらなる例では、潜在表現は、入力された3Dモデル化オブジェクトを深層学習生成モデルに提供する結果として取得され得る。したがって、深層学習生成モデルは、入力された3Dモデル化オブジェクトよりも改善された機能を有する3Dモデル化オブジェクトを出力し得る。
3D生成ニューラルネットワークで構成される深層学習生成モデルの代わりに、深層学習生成モデルは、マッピングモデルとそれに続く3D生成ニューラルネットワークで構成し得る。このような場合、3D生成ニューラルネットワークは、事前トレーニングされ得、他の項はマッピング距離を含み得る。このような代替案では、3D生成ニューラルネットワークは、オプションで、変分オートエンコーダまたは敵対的生成ネットワークを含み得る。マッピングモデルは、それぞれの出力3Dモデル化オブジェクトとデータセットの対応するモデル化オブジェクトとの間の形状の非類似性にペナルティを課すマッピング距離によってトレーニングされ得る。データセットの対応するモデル化されたオブジェクトは、サンプリングされているか、または提供された3Dモデル化オブジェクトに対応している(よって、データセットに追加されている)可能性がある。したがって、提供された3Dモデル化オブジェクトは、他の生成モデルから、または以前の設計プロセスの結果として、出力されている可能性がある。したがって、トレーニング方法は、機能性と3Dモデル化オブジェクトの形状との間の相互依存性を調査して、改善された機能を有する3Dモデル化オブジェクトを出力し得る。したがって、深層学習生成モデルは、3D生成ニューラルネットワークの潜在空間からの3Dモデル化オブジェクトの合成など、3D生成ネットワークの生成上の利点を活用しながら、改善された機能性と形状の一貫性を有する、特に正確な出力3Dモデル化オブジェクトを提供することに重点を置き、または、提供された3Dモデル化オブジェクトよりも改善された機能を有する3Dモデル化オブジェクトを出力する場合があり、これは、たとえば、以前の設計プロセスの一部であるか、または他の生成モデルによって出力されているために、すでに改善を活用している可能性がある。
この方法に従ってトレーニングされた深層学習生成モデルは、例えば、3D生成モデルの潜在空間からの潜在ベクトル表現に基づいて、データセットの対応する3Dモデル化オブジェクトに基づいて3Dモデル化オブジェクトを出力し得る。潜在ベクトル表現は、例えば、深層学習生成モデルの潜在空間から潜在ベクトルをサンプリングし、そのような潜在ベクトルに基づいて3Dモデル化オブジェクトを出力することによって計算され得る。あるいは、潜在表現は、深層学習生成モデルに提供され、潜在空間に投影される(たとえば、潜在ベクトルとして表現される)3Dモデル化オブジェクトに対応し得る。マッピング距離は、それぞれの出力3Dモデル化オブジェクトとデータセットの対応するモデル化オブジェクトとの間の形状の非類似性にペナルティを課すことにより、データセットの対応する3Dモデル化オブジェクトに基づいて深層学習生成モデルが3Dモデル化オブジェクトを出力する方法を指定する。例では、マッピング距離は、データセットの対応するモデル化オブジェクトの潜在ベクトル表現と、マッピングモデルをデータセットの対応する3Dモデル化オブジェクトの潜在ベクトル表現に適用した潜在ベクトル表現結果との間の距離にペナルティを課すことによって、そのような形状の非類似性にペナルティを課す。マッピングモデルは、任意のニューラルネットワーク、たとえば2つの完全に接続された層であり得、したがって機械学習手法に従って学習可能である。したがって、例では、最小値(マッピング距離のペナルティのおかげで見つかった)は、データセットの対応する3Dモデル化オブジェクトの潜在ベクトル表現に最も近い潜在ベクトルに対応する。したがって、深層学習生成モデルは、最良の形状の一貫性を有する3Dモデル化オブジェクトを出力し、つまり、マッピング距離のペナルティのおかげで見つかった潜在ベクトルに対応する3Dモデル化オブジェクトである。したがって、深層学習生成モデルは、データセットの対応する3Dモデル化オブジェクト(提供された3Dオブジェクトからサンプリングまたは取得された可能性がある)に関して、改善された機能と形状の一貫性を有する3Dモデル化オブジェクトを出力し、データセットの対応する3Dモデル化オブジェクトに関するより正確な出力3Dモデルオブジェクトになり、最適化された機能(機能損失のおかげ)と改善された形状の一貫性(マッピング距離のおかげ)を有する。
トレーニングは、それぞれの3Dモデル化オブジェクトごとに、3Dモデル化オブジェクトの機能スコアを計算することを含み得、計算は、決定論的関数、シミュレーションベースのエンジン、または深層学習関数のうちの1つまたは複数を3Dモデル化オブジェクトに適用することによって実施される。したがって、機能スコアは、3Dモデル化オブジェクトのデータセットに機能アノテーションを入力し得る。
「決定論的関数」とは、明示的な決定論的理論モデルを提供する任意の関数(少なくとも一連の計算を含む)を意味し、つまり、所与の開始条件から同じ出力を生成する。これは、特に確率的または確率論的要素からなる方法を除外する。決定論的関数は、3Dオブジェクト(たとえば、明示的な決定論的理論モデルへの入力として提供される)を評価し、少なくとも、機能記述子に対応する機能スコアを出力する。
「シミュレーションエンジン」とは、一連の計算を表す任意のデータ構造を意味し、シミュレーションエンジンによってサポートされているように(たとえば、物理エンジンのおかげで)、さまざまな相互作用の下で3Dオブジェクトの相互作用を少なくとも部分的に評価する。シミュレーションベースのエンジンは、3Dオブジェクトを入力として受け取り、シミュレーション出力に関連する量を機能スコアとして出力する。したがって、シミュレーションベースのエンジンは、関連するコンテキスト内で3Dオブジェクトを評価し、つまり、重力の作用下での機械部品または機械部品のアセンブリの予想される応答など、さまざまな予想される相互作用を受けたときの3Dオブジェクトの動作を追跡する。
「深層学習関数」とは、一連の計算を表す任意のデータ構造を意味し、少なくとも部分的にデータセットに基づく機能スコアの学習を含み、少なくとも部分的に決定論的関数またはシミュレーションベースのエンジンの中の1つまたは複数に基づき得る。したがって、3Dオブジェクトは、3Dモデル化オブジェクトのアノテーションとして使用され得る機能スコアを予測する深層学習関数に供給される。
計算が深層学習関数によって実施される場合、深層学習関数は他のデータセットに基づいてトレーニングされている可能性がある。他のデータセットは、それぞれの機能スコアにそれぞれが関連付けられた3Dオブジェクトを含み得る。それぞれの機能スコアは、決定論的関数、シミュレーションベースのエンジン、または深層学習関数の中の1つまたは複数を使用することによって計算されている可能性がある。したがって、この方法は、機能要件への非常に不均一なコンプライアンスを特徴とする、既存のコンピュータプログラムを使用する、生成された3Dオブジェクトの遺産を活用する。
したがって、トレーニング方法は、少なくとも決定論的関数、シミュレーションエンジンおよび/または深層学習関数、またはそのような計算ツールの組み合わせを利用して機能スコアを計算し得。例では、トレーニングは、計算された機能スコアをアノテーションとして使用することにより、データセットの各3Dモデル化オブジェクトの機能的妥当性を有する3Dモデル化オブジェクトのデータセットを増強し得る。
図4を参照すると、ここでは、3Dモデル化オブジェクトの特定のカテゴリに対応する機能スコアを計算するために使用される計算ツールの例が提供される。S10で提供されるデータセットは、これらの特定のカテゴリの1つまたは複数の任意の組み合わせの3Dモデルオブジェクトを含み得、S20での1つまたは複数の機能スコアは、特定のカテゴリごとに、表に示される1つまたは複数(たとえば、すべて)の機能記述子を含み得、オプションで表に示されるように計算される。
次の文献は、以下で参照される。
[10]Hongtao Wu & al. Is That a Chair? Imagining Affordances Using Simulations of an Articulated Human Body. ICRA 2020.
[11]Dule Shu & al. 3D Design Using Generative Adversarial Networks and Physics-Based Validation. 2019.
[12]Mihai Andries & al. Automatic Generation of Object Shapes With Desired Affordances Using Voxel grid Representation. 2019.
[13]Vladimir G. Kim & al. Shape2Pose: Human-Centric Shape Analysis. SIGGRAPH 2014.
これらの例では、椅子のカテゴリの場合、計算ツールは、接続性損失を計算するための深層学習関数と、物理的安定性および座位アフォーダンス記述子を計算するためのシミュレーションエンジンとで構成される。ここで提供される1つまたは複数の機能記述子は単なる例である。この例では、接続性損失は、トポロジカル事前分布(topological priors)、たとえば、文献[6]のように深層学習関数に組み込まれた損失を介して計算されるため、「トポロジカル損失」と呼ばれる。さらに、シミュレーションエンジンは、オブジェクトに重力を適用することにより、物理的安定性記述子に対応する機能スコアを計算するために使用される。さらに、文献[10]のようなシミュレーションエンジンは、座位アフォーダンス記述子に対応する機能スコアを計算するために使用される。これらの例では、飛行機のカテゴリについて、接続性記述子に対応する機能スコアは、上述したトポロジカル事前分布を使用して取得され得る。さらに、抗力係数記述子に対応するスコアは、文献[11]のように計算流体力学シミュレーションを実施するシミュレーションエンジンを介して計算され得る。これらの例では、プッシュカート車両のカテゴリについて、特に、文献[12]のようなシミュレーションエンジンを使用して、包含アフォーダンス(contain affordance)に対応する機能スコアをさらに計算し得る。これらの例では、車両のさらなるカテゴリは、自転車オブジェクトを含み、特に、人間のサポートおよび/またはペダルアフォーダンスに対応する機能スコアを計算し得る。この例では、文献[13]で使用されているもののような機能エネルギーをシミュレーションエンジンに組み込んで、自転車の座席への力の適用をシミュレートすることによってそのような記述子を計算するために使用され得るアフォーダンスモデルを提供し得、人間のモデルによって加えられる力に対応し、ペダリング効果の下での自転車の力学のシミュレーションも同様である。
ここで、1つまたは複数の機能記述子について説明する。
1つまたは複数の機能記述子は、接続性記述子を含み得る。「接続性記述子」とは、3Dモデル化オブジェクトの接続された要素の数を表す任意の変数(1次元または多次元)を意味する。したがって、トレーニング方法は、3Dモデルの分離された要素にペナルティを課すことに焦点を当て得る。その結果、トレーニング方法に従ってトレーニングされた深層学習生成モデルは、単一の接続された構成要素で構成される3Dモデル化オブジェクトを作成する。したがって、結果として生じるオブジェクトが、分離された構成要素なしの単一の3Dモデル化オブジェクトであるため、結果として生じる3Dオブジェクトはより正確であり、特に機械部品または機械部品のアセンブリの設計に必要な機能である。
1つまたは複数の機能記述子は、1つまたは複数の幾何学的記述子および/または1つまたは複数のアフォーダンスを含み得る。「幾何学的記述子」とは、3Dオブジェクトの空間構造を表す任意の変数(1次元または多次元)を意味する。「アフォーダンス」とは、意図されたコンテキスト内でのオブジェクトの相互作用を表す任意の変数(1次元または多次元)を意味する(つまり、特定のコンテキスト内での3Dオブジェクトの使用に関する手がかりを提供する任意のタイプの関係)。したがって、トレーニング方法は、幾何学的収差のペナルティに焦点を当て得る。その結果、トレーニング方法に従ってトレーニングされた深層学習生成モデルは、幾何学的に安定した3Dモデル化オブジェクトを提供し、つまり、その意図されたコンテキスト内での3Dモデル化オブジェクトの相互作用に関して、より正確な空間構造および/またはより優れた機能を備えている。
1つまたは複数の幾何学的記述子は、物理的安定性記述子および/または耐久性記述子のうちの1つまたは複数を含み得る。物理的安定性記述子は、機械部品または機械部品のアセンブリについて、機械部品または機械部品のアセンブリの安定性、例えば、重力のみが適用された下で空間位置での平衡状態を機械部品または機械部品のアセンブリが維持する能力を表し得る。したがって、学習方法は、重力の適用下での初期位置からの位置機械部品の偏差にペナルティを課すことに焦点を当て得る。したがって、トレーニング方法に従ってトレーニングされた深層学習生成モデルは、機械部品または機械部品のアセンブリを表す3Dオブジェクトのコンテキストで予想されるように、重力の作用下で機械的安定性を維持する3Dモデルオブジェクトを出力する。
例では、3Dオブジェクトの物理的安定性記述子は、決定論的関数、シミュレーションエンジン、または深層学習関数を介して計算され得る。そのような例では、記述子は、機械部品または機械部品のアセンブリの重心での位置に対応し得、重力の適用下での3Dオブジェクトの応答は、少なくともそれらの位置での時間間隔にわたって記録される。したがって、安定性記述子の非尊重の程度を測定する機能スコアは、時間間隔にわたる重心の初期と最終の空間位置の差になる。物理的安定性記述子は、次のような機能損失を定義するためにさらに使用され得る。
Figure 2022054460000002
ここで、
Figure 2022054460000003
は、時間i0から時間ifまでの範囲の重心位置pを表す。時間間隔の定義は、例えば、離散間隔、連続間隔、または時間間隔の離散化にわたって定義され得る。そのような損失は、時間間隔にわたる重力の作用下での重心の動きにペナルティを課す。
耐久性記述子は、機械部品または機械部品のアセンブリについて、重力および外部の機械的力の適用に耐える機械部品または機械部品のアセンブリの能力を表す。外部の機械的力は、ランダムな位置に加えられる力に対応し得、ランダムな位置のそれぞれで質量と重力を掛け合わせることによって位置を混乱させ得る。外部の機械的力は、例えば、2つのオブジェクト間の任意のタイプの摩擦を含む、他の機械的オブジェクトとの直接接触を特徴とする力にさらに対応し得る。したがって、トレーニング方法は、摂動による3Dモデル化オブジェクトの空間位置の偏差にペナルティを課すことに焦点を当て得る。その結果、トレーニング方法に従ってトレーニングされた深層学習生成モデルは、重力と外部機械力の適用を受ける機械部品または機械部品のアセンブリのより正確な表現を提供する3Dモデル化オブジェクトを出力し、たとえば、応力や振動力、または同様の外部の機械的摂動を表し得る。
例では、3Dオブジェクトの応答は、決定論的関数、シミュレーションエンジン、または深層学習関数を介して計算され得る。このような例では、耐久性記述子は、機械部品または機械部品のアセンブリの重心位置であり得、さらに、3Dモデル化の耐久性を評価するために、オブジェクトの重心の初期および最終の空間位置が記録される。したがって、耐久性記述子は、重心の空間位置からの偏差にペナルティを課す機能損失項を定義するために使用される。耐久性記述子は、次のように機能損失項を定義するために使用され得る。
Figure 2022054460000004
ここで、αはアニーリング係数であり、重心位置は
Figure 2022054460000005
、kはユーザ定義の重みである。したがって、損失は、摂動下で静止状態を維持できないオブジェクトにペナルティを課す。摂動下で静止状態を維持するオブジェクトは、機械部品または機械部品のアセンブリのコンテキストで望ましい特性である。
1つまたは複数のアフォーダンスは、サポートアフォーダンス記述子、抗力係数記述子、包含アフォーダンス記述子、保持アフォーダンス記述子、吊り下げアフォーダンス記述子のうちの1つまたは複数を含み得る。サポートアフォーダンス記述子は、機械部品または機械部品のアセンブリについて、外部の機械的力のみの適用に耐える機械部品または機械部品のアセンブリの能力を表す。そのような記述子は、機械部品または機械部品のアセンブリの位置(たとえば、上部位置)であり得、それは、例えば、シミュレーションエンジンまたは明示的な理論モデルによって記録することができ、それは、機械部品または機械部品のアセンブリの上部に1つまたは複数の力が加えられる。抗力係数記述子は、機械部品または機械部品のアセンブリについて、機械部品または機械部品のアセンブリに対する流体環境の影響を表し得る。記述子は、抗力係数、つまり、流体力学の分野で一般的に知られているように、流体環境における3Dモデル化オブジェクトの抗力または抵抗を表すために使用される無次元量(dimensionless quantity)であり得る。そのような記述子は、例えば、計算流体力学シミュレーションを実施するシミュレーションエンジンを介して計算され得る。包含アフォーダンス記述子は、機械部品または機械部品のアセンブリについて、機械部品の内部容積内に他のオブジェクトを収容している間の機械部品または機械部品のアセンブリの応答を表し得る。そのような記述子は、例えば、シミュレーションエンジンを介して計算され得る。保持アフォーダンス記述子は、機械部品または機械部品のアセンブリについて、機械的接続を介して他のオブジェクトを支持する機械部品または機械部品のアセンブリの能力を表し得る。このような記述子は、機械的接続が配置される位置で定義され得る。吊り下げアフォーダンス記述子は、機械部品または機械部品のアセンブリについて、機械的接続を介して支持されるための機械部品または機械部品のアセンブリの能力を表し得る。
データセットの各3Dモデル化オブジェクトは、家具、電動車両、非電動車両、またはツールを表し得る。したがって、この方法に従ってトレーニングされた深層学習生成モデルは、データセットのオブジェクトの指定されたクラスのより正確な表現を提供する。学習は、例えば、接続性記述子、1つまたは複数の幾何学的記述子、あるいは1つまたは複数のアフォーダンスのうちの1つまたは複数の組み合わせにペナルティを課すことによって、機能スコアの組み合わせにペナルティを課す任意の損失を使用し得る。家具のクラスは、機能記述子として、少なくとも接続性記述子、物理的安定性記述子、および座位アフォーダンスまたはオブジェクトサポートアフォーダンスのいずれかを有し得る。電動車両のクラスは、機能記述子として、少なくとも接続性記述子および抗力係数記述子を有し得る。ツールのクラスは、機能記述子として、少なくとも接続性記述子、耐久性記述子、および保持アフォーダンスまたはオブジェクトサポートアフォーダンスのいずれかを有し得る。
トレーニング方法は、出力された3Dモデル化オブジェクトの意図されたコンテキストに従って、各記述子の1つまたは複数の機能スコアを組み合わせることができる。図4を参照して、椅子、テーブル、飛行機、ベッド、プッシュカート、および自転車のオブジェクトカテゴリについての機能スコアの計算例を提供する。したがって、例によって示されるように、トレーニング方法は、3Dモデル化オブジェクトの幾何学的、構造的、トポロジー的、物理的、および機能的特徴の相互依存性を考慮し、出力3Dモデル化オブジェクトが正確になるようにし、したがって、生成されたコンテンツはその目的を達成し、物理的に製造され、現実の世界に持ち込むことができる。
ここで、図5から7を参照して例を説明する。
図5は、トレーニング方法に従ってトレーニングされた深層学習生成モデルによる、椅子の特定のカテゴリにおける複数の3Dモデル化オブジェクトの合成の例を示す。
図6は、深層学習生成モデルが変分オートエンコーダで構成され、トレーニング方法に従ってトレーニングされた、テーブルのカテゴリの3Dモデル化オブジェクトの合成を示す。図6の左端と右端に示されるように、2つの潜在ベクトル表現がサンプリングされて出力される。中央の3Dモデル化オブジェクトは、2つのサンプリングされた潜在ベクトル表現の補間に対応する。この例は、この方法に従ってトレーニングされた深層学習生成モデルが、最先端の生成ネットワーク(この例では変分オートエンコーダの形式)を使用して自動的に合成される既存の3Dオブジェクトを活用し、機能的に有効な3Dモデル化オブジェクトを出力する方法を示す。
図7は、特にCAD環境において、設計プロセス内の深層学習生成モデルの組み込みの例を示す。トレーニングされた深層学習生成モデルは、入力モデル化オブジェクトを出力3Dモデル化オブジェクトにマッピングし(評価および更新)、その後の設計(編集)が上記出力3Dモデル化オブジェクトに対して実施され得る。
ここで、図8から16を参照して、例を説明する。
これらの例では、データセットの各3Dモデル化オブジェクトは、一点の家具、特に椅子を表す。つまり、トレーニング方法と使用方法が、「椅子」のカテゴリに適用される。3Dデータ表現は、構造化された点群オブジェクトで構成される。つまり、各3Dモデル化オブジェクトは点群である。
次の例は、家具オブジェクトのクラスである椅子の特定のカテゴリでの機能記述子とスコアの計算、接続性、安定性、耐久性、および座位アフォーダンス記述子を計算することにさらに関連する。機能記述子は、カテゴリを表す構造化された点群オブジェクトを生成するために使用される。
接続性記述子:椅子のカテゴリ内で、接続性はオブジェクトのフローティングセグメントがないことを促進する。図8を参照すると、(a)は、接続性記述子に違反するオブジェクトを示す。カテゴリを考慮すると、接続されたオブジェクトを持つことは、1つの接続された構成要素を持つことに対応する。
これらの例では、点群の接続性を評価するために、文献[6]の方法が、0dの永続的なホモロジーを使用して3Dモデル化オブジェクトの接続された構成要素および分離された構成要素を計算するために使用される。文献[6]の方法によれば、トポロジー的特徴(接続された構成要素)がいつ現れるか(誕生時間bi)、またはいつ消えるか(死亡時間di)を示す「持続性図」が計算され得る。
これらの例では、接続性損失は次のように定義される。
Figure 2022054460000006
この損失関数は、i=1で始まるライフタイムにわたって合計される。したがって、損失は分離された構成要素にペナルティを課す。
安定性記述子:3Dオブジェクトはシミュレーションエンジン[8]に入力され、椅子カテゴリのオブジェクトの安定性をシミュレートする。シミュレーションエンジンは、3Dオブジェクトが共通の方向で平面に配置された後、重力を受けたときに静止したままであるかどうかを評価することにより、3Dオブジェクトの安定性を評価する。したがって、シミュレーションは、2.510-4秒のシミュレーションステップで、i0=0からi2s=2.5秒の範囲のiについて重力を受けたときのその重心位置piを記録する。対応する機能損失は次のとおりである。
Figure 2022054460000007
図8を参照すると、(b)は、安定性記述子に違反するオブジェクトを示す。図9は、椅子のカテゴリのシミュレーションの初期および最終フレームを示すシミュレーションの例を示す。上側は初期フレームを示し、下側は最終フレームを示し、初期時間は0で、最終時間は2.5秒である。図9の中央の上部および下部フレームは、不安定なオブジェクト(高fstability)を示し、側面の上部並びに上部および下部フレームは安定したオブジェクト(小fstability)を示す。
耐久性記述子:小さな摂動を受けたときに椅子が安定した状態を維持することを保証する。図8を参照すると、(c)は、耐久性記述子に違反する椅子のカテゴリのオブジェクトを示す。この例では、摂動力はオブジェクトをx-y(水平)平面で回転させる傾向がある。力はランダムな位置で適用され、1からMの範囲のkに対して、オブジェクトの質量のk*0.01倍の重力ノルムの10の異なるノルムを有する。オブジェクトの動作は、摂動ごとにシミュレートされ、上記段落で説明したように、オブジェクトの重心の初期および最終位置が記録され、それぞれ
Figure 2022054460000008
および
Figure 2022054460000009
である。この例では、機能の損失は次のとおりである。
Figure 2022054460000010
ここで、αは、椅子のカテゴリのオブジェクトが、より小さな摂動の下で静止状態を維持することができないと、よりペナルティが課せられることを保証する、0と1との間のアニーリング係数である。現在の例では、α=0.9およびM=10である。
次の例は、機能記述子をさらに組み合わせる方法を示す。記述子fstabilityおよびfdurabilityは、ここでは次のように組み合わされる。
Figure 2022054460000011
図10は、2つの椅子の異なるkの値について記録された軌跡を示す。それは、図10の下部の軌跡から解釈され得、左側の椅子のオブジェクトは、右側のオブジェクトよりも低いfs+dを有する(つまり、よりよい機能を有する)。左下側の軌跡は、左上側の対応するオブジェクトが重力の影響を受けたときにk=0について静止状態を維持し(青い水平曲線)、k≧1について重力およびさまざまな小さな摂動に対する応答として初期位置を回復することを示す。対照的に、右側の椅子は、図10の右下側の軌跡から明らかなように、その初期位置を回復することができない。
さらなる例では、3つのスコアのすべては、さらに次のように組み合わせ得る。
Figure 2022054460000012
次の例は、損失が、3つの機能スコアfphysical、およびさらに、それぞれの座位アフォーダンス記述子の非尊重の程度を測定する機能スコアfaffordanceの組み合わせを含むトレーニング方法の機能スコアの計算を説明する。参照は図11に対してなされ、機能スコアの計算を説明する。この例では、上部の初期フレーム上の2つのオブジェクトは両方ともスコア
Figure 2022054460000013
を有し、よって、重力下で静止状態を維持する。しかしながら、図11の右側の椅子は、シート部分がないため明らかに機能しておらず、左側の椅子と比較してより高い機能スコアを示すはずである。したがって、[8]にあるようなシミュレーションエンジンを使用して、座位アフォーダンス記述子の機能スコアを計算し、つまり、シミュレーションエンジンを使用して、オブジェクトが座位アフォーダンス要件をどのように満たしているかを評価する。シミュレーションエンジンでは、図11に示すように人間のエージェントが提供され、オブジェクトに対して自由にドロップすることができる。シミュレーションエンジンは、人間のエージェントの相互作用のコンテキストの下で椅子のカテゴリの応答を評価する。人間のエージェントは、18個の関節を持ち、9個のリンクで構成される関節式人体である。この例では、腕と足は、座っている構成を定義する上で重要ではないため、トリミングされている。各関節の適切な制限、摩擦、および減衰は、典型的な人間にとって生理学的に不可能な構成を回避するように設定されている。エージェントの骨盤は、オブジェクトの現在の軸に位置合わせされた境界ボックスの15cm上の水平面上に配置される。各ドロップは、座位トライアルである。エージェントの結果の構成Cresが記録され、これは、重心位置(3次元)、方向(3次元)、および関節角度(18次元)を含む24次元ベクトルに対応する。図11の初期フレームによって示されるように、目標位置に対応するキーCkey座位構成が提供される。この例では、損失に含まれる座位アフォーダンススコアfaffordanceは次のとおりである。
Figure 2022054460000014
次の例は、トレーニング方法に従ってトレーニングされた深層学習生成モデルの実装を示す。
実装された深層学習モデルは、入力として3Dオブジェクトを受け取り、機能スコアfphysicalおよびfaffordanceを出力する。モデルを構築するために、文献[9,10]によって開示されているもののような3D生成ニューラルネットワークを使用することによって、N=5.104の椅子のデータベースが生成される。具体的には、オブジェクトカテゴリを考慮すると、先行技術からの事前トレーニングされた3D生成ニューラルネットワークを使用して、これらの各文献によって指示されるように、このカテゴリの新しいコンテンツをサンプリングする。典型的に、対象オブジェクトカテゴリのデータ分布を学習するようにトレーニングされた[8]などのGANベースの3D生成ニューラルネットワークの場合、サンプリングされた多くのベクトルは、モデルジェネレータを使用して出力として、学習された分布からボクセルグリッドにマッピングされる。これらの各出力は、新しいインスタンスを構成する。各椅子オブジェクトOiについて、機能スコアfiは上述したように計算される。これにより、新しいラベル付きデータセット
Figure 2022054460000015
が作成される。機能予測子は、この推定されたベクトルfi’とグラウンドトゥルース機能スコアfiとの間の距離を縮めるようにトレーニングされる。距離は、ユークリッド距離などの損失関数を指定する。
この例では、機能スコアは次のように定義される。
Figure 2022054460000016
すべてのスコアは、0と1との間で正規化される。図12は、生成されたオブジェクトOiを、対応するfiの降順で示す。
深層学習生成モデルをトレーニングするために、オブジェクト
Figure 2022054460000017
が点群にマッピングされ、文献[9]にあるようにPointNetアーキテクチャを使用する。この例では、機能予測子についてのトレーニング損失は、次のとおりである。
Figure 2022054460000018
次の例は、深層学習生成モデルの使用方法を説明する。以下では、対応する出力3Dモデル化オブジェクトの機能スコアを出力するトレーニング方法に従ってトレーニングされた深層学習生成モデルの一部を「機能予測子」と称する。この例では、深層学習生成モデルは、3D生成ニューラルネットワークとそれに続く機能予測子で構成される。この例では、3D生成ニューラルネットワークは、PQ-Netデコーダ[8]に対応する。
PQ-Netデコーダは、オブジェクトの学習された潜在空間から潜在ベクトルを受け取り、それを3Dオブジェクトに一度に1つずつマッピングして、シーケンシャルアセンブリを作成する。デコーダは、文献[8]で説明されているように、GAN戦略を使用してジェネレータをトレーニングすることによって形状生成を実施する。GANジェネレータは、標準ガウス分布N(0,1)からサンプリングされたランダムベクトルを、オブジェクトのオブジェクト潜在空間内の潜在ベクトルにマッピングし、シーケンシャルデコーダはそこから新しいオブジェクトを生成する。
第1の使用方法。
第1の使用方法は、深層学習生成モデルの実装例であり、深層学習生成モデルは3D生成ニューラルネットワークで構成され、3D生成ニューラルネットワークは敵対的生成ネットワークであり、他の項は敵対的損失を含む。この例では、3D生成ニューラルネットワークは、出力コンテンツが低い機能スコアを有することを保証しながら、潜在ベクトルを3Dオブジェクトにマッピングするようにトレーニングされている。図13は、第1の使用方法の概要を示す。図13では、機能予測子は事前トレーニングされており、深層学習生成モデルは3D生成ネットワークで構成され、トレーニング方法に従ってトレーニングされ得る。深層学習生成モデルアーキテクチャは、3D生成ニューラルネットワーク(PQ-Netデコーダ)とそれに続く機能予測子で構成される。トレーニングプロセス中に、3D生成ニューラルネットワークの重みが学習され、機能予測子の重みは上記のように事前に学習され、凍結される。
各トレーニングの反復において、潜在ベクトルZinが潜在空間からサンプリングされ、ジェネレータに供給され、後者はZinを3Dオブジェクト(Oi)にマッピングする。3Dオブジェクト(Oi)は、その機能スコアfiを予測する機能予測子に供給される。ネットワークは、それらの機能スコアfiを最小化しながら、幾何学的にもっともらしい3Dオブジェクト(Oi)を生成するようにトレーニングされる。したがって、モデルには機能的な推論が備わっている。潜在表現は、3Dオブジェクトの幾何学的(ここでは構造を含む)および機能的次元を共に含む。トレーニング損失は、機能スコアLf=fiと敵対的損失にペナルティを課す項を含む。
Figure 2022054460000019
この方法に従ってトレーニングされた深層学習生成モデルは、図6にあるように、新しいオブジェクトを合成する。
第2の使用方法。
第2の使用方法は、深層学習生成モデルがマッピングモデルとそれに続く3D生成ニューラルネットワークで構成され、3D生成ニューラルネットワークが事前トレーニングされ、他の項はマッピング距離を含み、3D生成ニューラルネットワークがオプションで変分オートエンコーダである実装を示す。深層学習生成モデルの概要が、図14で説明される。図14では、3D生成ニューラルネットワークは事前トレーニングされており、機能予測子は深層学習生成モデルに含まれ、同様に事前トレーニングされている。図4に示されるマッピングモデルは単独で、この方法に従ってトレーニングされ、残りのボックスは、事前トレーニングされ凍結されたネットワークに対応する。この使用方法は、以下で説明するように、出力された3Dオブジェクトの機能を最適化する。この例では、深層学習生成モデルは、事前学習された3D生成ニューラルネットワーク(PQ-Netデコーダ)、上記の事前学習された機能予測子、およびトレーニング方法に従ってトレーニングされる2つの完全に接続された層を有するニューラルネットワークで構成されるマッピングモデルで構成される。この使用方法では、深層学習生成モデルは、それぞれの3Dオブジェクトの潜在ベクトル潜在ベクトル表現Zinを使用して最適化する。この使用方法は、機能スコアを最小化するZinに最も近い潜在ベクトルZoutを計算することにより、3Dオブジェクトの機能を最適化する。したがって、提供された3Dオブジェクトは、改善された機能を有する潜在ベクトル表現Zoutに対応する3Dオブジェクト(つまり、低い機能スコアを有するオブジェクト)にマッピングされる。ZinからZoutへのマッピングは、マッピングモデルを使用して達成され、この実装では、2つの完全に接続された層を有するニューラルネットワークで構成される。モデルの概要を、図14で説明する。
したがって、マッピング距離は、マッピングモデルをトレーニングするために使用される。これは、マッピング距離を含む損失を最小化することを含み、機能スコアにペナルティを課す。
Figure 2022054460000020
残りのモデルの重み(生成モデルおよび機能予測子)は凍結される。
ネットワークは、生成モデルによって生成された最適なZoutおよび対応する3Dオブジェクトを返す。図15は、最適化の例を示し、各コーナーにおいてオブジェクトのペアを示す。各ペアは、左側に最適化前のサンプリングされたオブジェクトを示し、右側に最適化された出力オブジェクトを示す。たとえば、右下コーナーのオブジェクト4は、3本の脚および欠陥がある第4の脚を持つ椅子で構成されるサンプルを示す。最適化後、出力図は、欠陥がない第4の脚を示し、したがって、改善された機能を有する。数値最適化の結果は、図16によって与えられ、最適化後の出力3Dモデル化オブジェクトの機能の改善を示す。

Claims (15)

  1. それぞれが機械部品または機械部品のアセンブリを表す3Dモデル化オブジェクトを出力する深層学習生成モデルをトレーニングするためのコンピュータ実装方法であって、
    3Dモデル化オブジェクトのデータセットを提供することであって、各3Dモデル化オブジェクトは、機械部品または機械部品のアセンブリを表すことと、
    前記データセットに基づいて前記深層学習生成モデルをトレーニングすることであって、前記トレーニングは損失(LTrain,Lmap)の最小化を含み、前記損失(LTrain,Lmap)は、それぞれの出力3Dモデル化オブジェクト(Oi)について、前記それぞれの3Dモデル化オブジェクト(Oi)の1つまたは複数の機能スコア(fi)にペナルティを課し、各機能スコア(fi)は、前記機械部品または前記機械部品のアセンブリによって、1つまたは複数の機能記述子の中のそれぞれの機能記述子の非尊重の程度を測定することと
    を含む方法。
  2. 前記損失(LTrain,Lmap)は、前記出力3Dモデル化オブジェクト(Oi)ごとに、前記データセットに関する前記それぞれの3Dモデル化オブジェクト(Oi)の形状の不一致(||Zout-Zin||2,LVAE,LGAN)にペナルティを課す他の項をさらに含む、請求項1に記載の方法。
  3. 前記他の項は、
    前記それぞれの3Dモデル化オブジェクト(Oi)と前記データセットの対応するグラウンドトゥルース3Dモデル化オブジェクトとの間の再構築損失(LVAE)、
    前記データセットに関連する敵対的損失(LGAN)、または、
    前記それぞれの3Dモデル化オブジェクト(Oi)と前記データセットの対応するモデル化オブジェクトとの間の形状の非類似性を測定するマッピング距離(||Zout-Zin||2
    を含む、請求項2に記載の方法。
  4. 前記深層学習生成モデルは、3D生成ニューラルネットワークを含む、請求項3に記載の方法。
  5. 前記3D生成ニューラルネットワークは、変分オートエンコーダまたは敵対的生成ネットワークを含む、請求項4に記載の方法。
  6. 前記深層学習生成モデルは、
    前記3D生成ニューラルネットワークであって、変分オートエンコーダを含み、前記他の項が再構築損失および変分損失を含む、前記3D生成ニューラルネットワーク、
    前記3D生成ニューラルネットワークであって、敵対的生成ネットワークを含み、前記他の項が敵対的損失(LGAN)を含む、前記3D生成ニューラルネットワーク、または、
    マッピングモデルとそれに続く前記3D生成ニューラルネットワークであって、前記3D生成ニューラルネットワークは事前トレーニングされ、前記他の項がマッピング距離(||Zout-Zin||2)を含み、前記3D生成ニューラルネットワークはオプションで変分オートエンコーダまたは敵対的生成ネットワークを含む、マッピングモデルとそれに続く前記3D生成ニューラルネットワーク
    のうちの1つで構成される、請求項4に記載の方法。
  7. 前記トレーニングは、それぞれの3Dモデル化オブジェクト(Oi)ごとに、前記3Dモデル化オブジェクト(Oi)の機能スコア(fi)を計算することを含み、前記計算は、前記3Dモデル化オブジェクト(Oi)に、
    決定論的関数(φdet(・))、
    シミュレーションベースのエンジン、または、
    深層学習関数(φDL(・))
    のうちの1つまたは複数を適用することによって実施される、請求項1から6のいずれか一項に記載の方法。
  8. 前記計算は、前記深層学習関数(φDL(・))によって実施され、前記深層学習関数(φDL(・))は、他のデータセットに基づいてトレーニングされており、前記他のデータセットは、それぞれの機能スコアにそれぞれが関連付けられた3Dオブジェクトを含み、前記それぞれの機能スコアは、
    決定論的関数(φdet(・))、
    シミュレーションベースのエンジン、または、
    深層学習関数(φDL(・))
    のうちの1つまたは複数を使用することによって計算されている、請求項7に記載の方法。
  9. 前記1つまたは複数の機能記述子は接続性記述子を含む、請求項1から8のいずれか1項に記載の方法。
  10. 前記1つまたは複数の機能記述子は、
    1つまたは複数の幾何学的記述子、および/または、
    1つまたは複数のアフォーダンス
    を含む、請求項1から9のいずれか1項に記載の方法。
  11. 前記1つまたは複数の幾何学的記述子は、
    物理的安定性記述子であって、機械部品または機械部品のアセンブリについて、重力のみの適用下での前記機械部品または前記機械部品のアセンブリの安定性を表す物理的安定性記述子、および/または、
    耐久性記述子であって、機械部品または機械部品のアセンブリについて、重力および外部の機械的力の適用に耐える前記機械部品または前記機械部品のアセンブリの能力を表す耐久性記述子
    を含み、および/または、
    前記1つまたは複数のアフォーダンスは、
    サポートアフォーダンス記述子であって、機械部品または機械部品のアセンブリについて、外部の機械的力のみの適用に耐える前記機械部品または前記機械部品のアセンブリの能力を表すサポートアフォーダンス記述子、および/または、
    抗力係数記述子であって、機械部品または機械部品のアセンブリについて、前記機械部品または前記機械部品のアセンブリに対する流体環境の影響を表す抗力係数記述子、
    包含アフォーダンス記述子であって、機械部品または機械部品のアセンブリについて、前記機械部品または前記機械部品のアセンブリの内部容積に他のオブジェクトを収容する、前記機械部品または前記機械部品のアセンブリの能力を表す包含アフォーダンス記述子、
    保持アフォーダンス記述子であって、機械部品または機械部品のアセンブリについて、機械的接続を介して他のオブジェクトを支持する、前記機械部品または前記機械部品のアセンブリの能力を表す保持アフォーダンス記述子、および/または、
    吊り下げアフォーダンス記述子であって、機械部品または機械部品のアセンブリについて、機械的接続を介して支持される前記機械部品または前記機械部品のアセンブリの能力を表す吊り下げアフォーダンス記述子
    を含む、請求項10に記載の方法。
  12. 前記データセットの各3Dモデル化オブジェクトは、
    一点の家具、
    電動車両、
    非電動車両、または、
    ツール
    を表す、請求項11に記載の方法。
  13. 請求項1~12のいずれか一項に記載の方法に従って学習された深層学習生成モデル、および/または請求項1~12のいずれか一項に記載の方法を実施するための命令を含むコンピュータプログラムを含むデータ構造。
  14. 請求項13に記載のデータ構造を記録したデータ記憶媒体を含むデバイス。
  15. 前記デバイスは、前記データ記憶媒体に結合されたプロセッサをさらに含む、請求項14に記載のデバイス。
JP2021156903A 2020-09-25 2021-09-27 深層学習生成モデル Pending JP2022054460A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP20306099.1 2020-09-25
EP20306099.1A EP3975065A1 (en) 2020-09-25 2020-09-25 Deep-learning generative model

Publications (1)

Publication Number Publication Date
JP2022054460A true JP2022054460A (ja) 2022-04-06

Family

ID=73790033

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021156903A Pending JP2022054460A (ja) 2020-09-25 2021-09-27 深層学習生成モデル

Country Status (4)

Country Link
US (1) US20220101105A1 (ja)
EP (1) EP3975065A1 (ja)
JP (1) JP2022054460A (ja)
CN (1) CN114611223A (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11731652B2 (en) * 2020-12-15 2023-08-22 Woven Planet North America, Inc. Systems and methods for reactive agent simulation
JP2023040452A (ja) * 2021-09-10 2023-03-23 株式会社東芝 データ処理装置、データ処理方法及びデータ処理プログラム
US11715300B1 (en) * 2022-01-28 2023-08-01 Robert Bosch Gmbh Systems and methods for providing product assembly step recognition using augmented reality
CN114474078B (zh) * 2022-04-12 2022-06-17 季华实验室 机械臂的摩擦力补偿方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
US20220101105A1 (en) 2022-03-31
CN114611223A (zh) 2022-06-10
EP3975065A1 (en) 2022-03-30

Similar Documents

Publication Publication Date Title
US11256832B2 (en) Replica selection
JP7431028B2 (ja) ユーザインタラクションを介した3dモデルオブジェクトのデサイニング
JP2022054460A (ja) 深層学習生成モデル
US11995526B2 (en) Modelling operations on functional structures
CN111382470A (zh) 用于3d建模对象推断的机器学习
CN108073682B (zh) 基于参数视图函数查询数据库
JP7343963B2 (ja) 画像を入力とする関数を学習するためのデータセット
CN107092741B (zh) 使用面轨迹的b-rep设计
JP2020115337A (ja) ニューラルネットワークのセット
JP7431029B2 (ja) 大規模環境用のマルチインスタンス型シミュレーション
US11604902B2 (en) Modeling using a weak type definition
JP2022036024A (ja) パラメータ化された3dモデルを出力するニューラルネットワーク
JP2022036023A (ja) 3dモデルを出力する変分オートエンコーダ
JP2022098497A (ja) 反応-拡散方程式によるトポロジ最適化
JP2021131854A (ja) 変形の基礎学習
JP2023056515A (ja) モデル化オブジェクトの設計
Yang et al. Data-driven intelligent computational design for products: method, techniques, and applications
Zhang et al. Immersive product configurator for conceptual design
US12073526B2 (en) Flexible modeling using a weak type definition

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240910