(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-11-17
(54)【発明の名称】回路図の自動解析のためのシステムおよび方法
(51)【国際特許分類】
G06T 7/00 20170101AFI20221110BHJP
G06N 3/08 20060101ALI20221110BHJP
G06N 20/00 20190101ALI20221110BHJP
【FI】
G06T7/00 350C
G06N3/08
G06N20/00
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2022515888
(86)(22)【出願日】2020-09-10
(85)【翻訳文提出日】2022-04-28
(86)【国際出願番号】 US2020050271
(87)【国際公開番号】W WO2021050787
(87)【国際公開日】2021-03-18
(32)【優先日】2019-09-11
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】517423327
【氏名又は名称】シー3.エーアイ, インコーポレイテッド
(74)【代理人】
【識別番号】100078282
【氏名又は名称】山本 秀策
(74)【代理人】
【識別番号】100113413
【氏名又は名称】森下 夏樹
(74)【代理人】
【識別番号】100181674
【氏名又は名称】飯田 貴敏
(74)【代理人】
【識別番号】100181641
【氏名又は名称】石川 大輔
(74)【代理人】
【識別番号】230113332
【氏名又は名称】山本 健策
(72)【発明者】
【氏名】ポーリエ, ルイス
(72)【発明者】
【氏名】ドウハード, ウィリー
(72)【発明者】
【氏名】マニ, ショウヴィク
(72)【発明者】
【氏名】コンスタンティニ, ダン
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096BA12
5L096HA09
5L096HA11
5L096JA03
5L096JA11
5L096KA04
(57)【要約】
本開示は、1つまたはそれを上回る回路図と、構成要素表とを備える、システムの工学設計文書からシステムのデジタル表現を発生させるためのシステム、方法、およびコンピュータプログラム製品を提供する。ある例示的方法は、(a)深層学習アルゴリズムを使用して、(i)1つまたはそれを上回る回路図内の複数の記号のそれぞれを構成要素として、および(ii)関連する記号の各群をアセンブリとして、分類するステップと、(b)構成要素とアセンブリとの間の接続を決定するステップと、(c)構成要素ならびにアセンブリのサブセットを構成要素表内のエントリと関連付けるステップと、(d)構成要素、アセンブリ、接続、および関連付けからシステムのデジタル表現を発生させるステップとを含むことができる。システムのデジタル表現は、少なくとも、システムのデジタルモデルと、機械可読の部品表とを含むことができる。
【特許請求の範囲】
【請求項1】
1つまたはそれを上回る回路図と、構成要素表とを備えるシステムの工学設計文書からシステムのデジタル表現を発生させるための方法であって、前記方法は、
(a)深層学習アルゴリズムを使用して、(i)前記1つまたはそれを上回る回路図内の複数の記号のそれぞれを構成要素として、および(ii)関連する記号の各群をアセンブリとして、分類するステップと、
(b)前記構成要素と前記アセンブリとの間の接続を決定するステップと、
(c)前記構成要素および前記アセンブリのサブセットを前記構成要素表内のエントリと関連付けるステップと、
(d)前記構成要素、前記アセンブリ、前記接続、および前記関連付けから前記システムのデジタル表現を発生させるステップであって、前記システムのデジタル表現は、少なくとも、前記システムのデジタルモデルと、機械可読の部品表とを含む、ステップと
を含む、方法。
【請求項2】
(a)に先立って、前記1つまたはそれを上回る回路図から白色空間またはノイズを除去することによって、前記1つまたはそれを上回る回路図を前処理するステップをさらに含む、請求項1に記載の方法。
【請求項3】
(a)に先立って、前記1つまたはそれを上回る回路図内で検出するための構成要素のライブラリを決定するステップをさらに含む、請求項1に記載の方法。
【請求項4】
(i)前記1つまたはそれを上回る回路図内の個別の記号が、前記構成要素のライブラリ内に存在しないことを決定するステップと、(ii)前記個別の記号およびその対応する構成要素を前記構成要素のライブラリに追加するステップとをさらに含む、請求項3に記載の方法。
【請求項5】
(a)は、2値分類器を使用して、前記1つまたはそれを上回る回路図内の前記複数の記号を検出するステップを含み、前記深層学習アルゴリズムは、前記2値分類器を備え、前記検出するステップは、スライディングウィンドウアプローチを含む、請求項1に記載の方法。
【請求項6】
(a)はさらに、マルチクラス深層ニューラルネットワークを使用して、前記検出された記号のそれぞれを構成要素として分類するステップを含み、前記深層学習アルゴリズムは、前記マルチクラス深層ニューラルネットワークを備える、請求項5に記載の方法。
【請求項7】
(a)はさらに、オートエンコーダを使用して、前記検出された記号のそれぞれを構成要素として分類するステップを含み、前記深層学習アルゴリズムは、前記オートエンコーダを備える、請求項5に記載の方法。
【請求項8】
前記マルチクラス深層ニューラルネットワークは、フィードフォワードニューラルネットワークと、畳み込みニューラルネットワークとから成る群から選択される、請求項6に記載の方法。
【請求項9】
前記マルチクラス深層ニューラルネットワークは、半教師あり学習プロセスを使用して訓練される、請求項6に記載の方法。
【請求項10】
(a)は、単一オブジェクト検出アルゴリズムを使用して、前記1つまたはそれを上回る回路図内の前記複数の記号を検出し、分類するステップを含む、請求項1に記載の方法。
【請求項11】
関連する記号の各群をアセンブリとして分類するステップは、群毎に、前記群を境界する前記1つまたはそれを上回る回路図内の破線を検出するステップを含む、請求項1に記載の方法。
【請求項12】
(b)は、前記構成要素および前記アセンブリを接続する実線を検出するステップを含む、請求項1に記載の方法。
【請求項13】
前記検出するステップは、図表探索アルゴリズムを使用するステップを含む、請求項12に記載の方法。
【請求項14】
(c)は、
前記1つまたはそれを上回る回路図内で、光学文字認識を使用して、前記構成要素およびアセンブリのサブセット内の前記構成要素および前記アセンブリと関連付けられる識別番号を検出し、識別するステップと、
前記検出された識別番号を前記構成要素表内の識別番号と整合させるステップと
を含む、請求項1に記載の方法。
【請求項15】
前記識別番号を検出するステップは、ハフ変換を使用するステップを含む、請求項14に記載の方法。
【請求項16】
前記デジタルモデルは、前記構成要素、前記接続、および前記システムの状態を定義する、コンピュータコードを備える、請求項1に記載の方法。
【請求項17】
前記デジタルモデルは、静的モデルである、請求項16に記載の方法。
【請求項18】
前記デジタルモデルは、時変モデルである、請求項16に記載の方法。
【請求項19】
1つまたはそれを上回る非一過性コンピュータ記憶媒体であって、前記1つまたはそれを上回る非一過性コンピュータ記憶媒体は、命令を記憶しており、前記命令は、1つまたはそれを上回るコンピュータによって実行されると、前記1つまたはそれを上回るコンピュータに、
(a)深層学習アルゴリズムを使用して、(i)1つまたはそれを上回る回路図内の複数の記号のそれぞれを構成要素として、および(ii)関連する記号の各群をアセンブリとして、分類するステップと、
(b)前記構成要素と前記アセンブリとの間の接続を決定するステップと、
(c)前記構成要素および前記アセンブリのサブセットを前記構成要素表内のエントリと関連付けるステップと、
(d)前記構成要素、前記アセンブリ、前記接続、および前記関連付けから前記システムのデジタル表現を発生させるステップであって、前記システムのデジタル表現は、少なくとも、前記システムのデジタルモデルと、機械可読の部品表とを含む、ステップと
を含む動作を実施させるように動作可能である、1つまたはそれを上回る非一過性コンピュータ記憶媒体。
【請求項20】
前記動作はさらに、(a)に先立って、前記1つまたはそれを上回る回路図から白色空間またはノイズを除去することによって、前記1つまたはそれを上回る回路図を前処理するステップを含む、請求項19に記載の非一過性コンピュータ記憶媒体。
【請求項21】
前記動作はさらに、(a)に先立って、前記1つまたはそれを上回る回路図内で検出するための構成要素のライブラリを決定するステップを含む、請求項19に記載の非一過性コンピュータ記憶媒体。
【請求項22】
前記動作はさらに、(i)前記1つまたはそれを上回る回路図内の個別の記号が、前記構成要素のライブラリ内に存在しないことを決定するステップと、(ii)前記個別の記号およびその対応する構成要素を前記構成要素のライブラリに追加するステップとを含む、請求項21に記載の非一過性コンピュータ記憶媒体。
【請求項23】
(a)は、2値分類器を使用して、前記1つまたはそれを上回る回路図内の前記複数の記号を検出するステップを含み、前記深層学習アルゴリズムは、前記2値分類器を備え、前記検出するステップは、スライディングウィンドウアプローチを含む、請求項19に記載の非一過性コンピュータ記憶媒体。
【請求項24】
(a)はさらに、マルチクラス深層ニューラルネットワークを使用して、前記検出された記号のそれぞれを構成要素として分類するステップを含み、前記深層学習アルゴリズムは、前記マルチクラス深層ニューラルネットワークを備える、請求項23に記載の非一過性コンピュータ記憶媒体。
【請求項25】
(a)はさらに、オートエンコーダを使用して、前記検出された記号のそれぞれを構成要素として分類するステップを含み、前記深層学習アルゴリズムは、前記オートエンコーダを備える、請求項23に記載の非一過性コンピュータ記憶媒体。
【請求項26】
前記マルチクラス深層ニューラルネットワークは、フィードフォワードニューラルネットワークと、畳み込みニューラルネットワークとから成る群から選択される、請求項24に記載の非一過性コンピュータ記憶媒体。
【請求項27】
前記マルチクラス深層ニューラルネットワークは、半教師あり学習プロセスを使用して訓練される、請求項24に記載の非一過性コンピュータ記憶媒体。
【請求項28】
(a)は、単一オブジェクト検出アルゴリズムを使用して、前記1つまたはそれを上回る回路図内の前記複数の記号を検出し、分類するステップを含む、請求項19に記載の非一過性コンピュータ記憶媒体。
【請求項29】
関連する記号の各群をアセンブリとして分類するステップは、群毎に、前記群を境界する前記1つまたはそれを上回る回路図内の破線を検出するステップを含む、請求項19に記載の非一過性コンピュータ記憶媒体。
【請求項30】
(b)は、前記構成要素および前記アセンブリを接続する実線を検出するステップを含む、請求項19に記載の非一過性コンピュータ記憶媒体。
【請求項31】
前記検出するステップは、図表探索アルゴリズムを使用するステップを含む、請求項30に記載の非一過性コンピュータ記憶媒体。
【請求項32】
(c)は、
前記1つまたはそれを上回る回路図内で、光学文字認識を使用して、前記構成要素およびアセンブリのサブセット内の前記構成要素および前記アセンブリと関連付けられる識別番号を検出し、識別するステップと、
前記検出された識別番号を前記構成要素表内の識別番号と整合させるステップと
を含む、請求項19に記載の非一過性コンピュータ記憶媒体。
【請求項33】
前記識別番号を検出するステップは、ハフ変換を使用するステップを含む、請求項32に記載の非一過性コンピュータ記憶媒体。
【請求項34】
前記デジタルモデルは、前記構成要素、前記接続、および前記システムの状態を定義するコンピュータコードを備える、請求項19に記載の非一過性コンピュータ記憶媒体。
【請求項35】
前記デジタルモデルは、静的モデルである、請求項34に記載の非一過性コンピュータ記憶媒体。
【請求項36】
前記デジタルモデルは、時変モデルである、請求項34に記載の非一過性コンピュータ記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願の相互参照)
本願は、参照することによってその全体として本明細書に組み込まれる、2019年9月11日に出願された、米国仮特許出願第62/899,011号の優先権を主張する。
【背景技術】
【0002】
回路図および配管図ならびに計装図等の工学設計文書は、技師がシステムの組成構成要素、それらの構成要素が接続される方法、および本システムが動作する方を理解することに役立ち得る。システムに関する工学設計文書の完全なセットは、略図、略図内の特定の構成要素についてのより詳細を提供する、構成要素表、およびシステム上で講じられるアクション(例えば、保守アクション、較正等)のリストを含み得る。そのような工学設計文書の一部または全ては、デジタル化されていない場合がある。
【発明の概要】
【課題を解決するための手段】
【0003】
本開示は、物理的システムの工学設計文書から物理的システムのデジタル表現を発生させるためのシステム、方法、およびコンピュータプログラム製品を提供する。工学設計文書は、物理的システムの非デジタル回路図と、対応する構成要素表とを含み得る。回路図は、多くの異なるページに及び得る。本明細書に説明されるシステムは、非デジタル回路図内の記号を検出することによって、物理的システムのデジタル表現を発生させることができる。本システムは、次いで、分類子を使用し、検出された記号のそれぞれを特定の構成要素として分類することができる。ある場合には、検出および分類は、単一のアルゴリズムまたはモデル、例えば、オブジェクト検出アルゴリズムによって、同時に実施されることができる。本システムは、加えて、例えば、回路図内の群を境界する破線を検出することによって、構成要素の関連する群をアセンブリとして分類することができる。その後、本システムは、例えば、回路図内の構成要素およびアセンブリを接続する実線を検出することによって、構成要素とアセンブリとの間の接続を決定することができる。ある場合には、本システムはまた、構成要素およびアセンブリのサブセットを構成要素表内のエントリと関連付けることもできる。構成要素表は、回路図が提供しない、ある構成要素についてのより詳細な情報を提供してもよい。最後に、本システムは、構成要素、アセンブリ、接続、および関連付けから物理的システムのデジタル表現を発生させることができる。物理的システムのデジタル表現は、物理的システムのデジタルモデルと、機械可読の部品表とを含んでもよい。デジタルモデルは、構成要素、接続、および物理的システムの状態を定義する、コンピュータコードであってもよい。デジタルモデルは、静的モデルまたは時変モデルであってもよい。
【0004】
上記に説明されるシステムは、工学設計文書の包括的なデジタルモデルへの迅速かつ正確な変換を促進することができる。具体的には、工学設計文書内のオブジェクトを識別し、分類するための深層学習の本システムの使用は、そのようなデジタルモデルを発生させるために要求される分野の知識(例えば、工学設計文書内で使用される特定の記号の幾何学形状の知識)の量を低減させ得る。代わりに、限定された量の標識訓練データが、非常に正確な深層学習モデルを発生させるために使用されることができる。深層学習の一般性はまた、本明細書に説明される方法が、異なるタイプの工学設計文書を伴う異なる産業を横断して使用されることも可能にする。
【0005】
一側面では、本開示は、システムの工学設計文書からシステムのデジタル表現を発生させるための方法を提供する。工学設計文書は、1つまたはそれを上回る回路図と、構成要素表とを備えてもよい。本方法は、(a)深層学習アルゴリズムを使用して、(i)1つまたはそれを上回る回路図内の複数の記号のそれぞれを構成要素として、および(ii)関連する記号の各群をアセンブリとして、分類するステップと、(b)構成要素とアセンブリとの間の接続を決定するステップと、(c)構成要素ならびにアセンブリのサブセットを構成要素表内のエントリと関連付けるステップと、(d)構成要素、アセンブリ、接続、および関連付けからシステムのデジタル表現を発生させるステップとを含むことができる。本システムのデジタル表現は、少なくとも、システムのデジタルモデルと、機械可読の部品表とを含んでもよい。
【0006】
いくつかの実装では、本方法はさらに、(a)に先立って、1つまたはそれを上回る回路図から白色空間もしくはノイズを除去することによって、1つまたはそれを上回る回路図を前処理するステップを含む。
【0007】
いくつかの実装では、本方法はさらに、(a)に先立って、1つまたはそれを上回る回路図内で検出するための構成要素のライブラリを決定するステップを含む。いくつかのそのような実装では、本方法はさらに、(i)1つまたはそれを上回る回路図内の個別の記号が、構成要素のライブラリ内に存在しないことを決定するステップと、(ii)個別の記号およびその対応する構成要素を構成要素のライブラリに追加するステップとを含む。
【0008】
いくつかの実装では、(a)は、2値分類器を使用して、1つまたはそれを上回る回路図内の複数の記号を検出するステップを含む。検出するステップは、スライディングウィンドウアプローチを含んでもよい。深層学習アルゴリズムは、2値分類器を備えてもよい。いくつかの実装では、(a)はさらに、マルチクラス深層ニューラルネットワークを使用して、検出された記号のそれぞれを構成要素として分類するステップを含む。深層学習アルゴリズムは、マルチクラス深層ニューラルネットワークを備えてもよい。マルチクラス深層ニューラルネットワークは、フィードフォワードニューラルネットワークと、畳み込みニューラルネットワークとから成る群から選択されてもよい。いくつかの実装では、単一のアルゴリズム(例えば、オブジェクト検出アルゴリズム)が、記号の検出および分類の両方を実施する。
【0009】
いくつかの実装では、関連する記号の各群をアセンブリとして分類するステップは、群毎に、群を境界する、1つまたはそれを上回る回路図内の破線を検出するステップを含む。
【0010】
いくつかの実装では、(b)は、構成要素およびアセンブリを接続する実線を検出するステップを含む。実線は、図表探索アルゴリズムを使用してトラバースおよびモデル化されることができる。
【0011】
いくつかの実装では、(c)は、1つまたはそれを上回る回路図内で、光学文字認識を使用して、構成要素およびアセンブリのサブセット内の構成要素ならびにアセンブリと関連付けられる、識別番号を検出し、識別するステップと、検出された識別番号を構成要素表内の識別番号と整合させるステップとを含む。識別番号を検出するステップは、ハフ変換を使用するステップを含んでもよい。
【0012】
いくつかの実装では、デジタルモデルは、構成要素、接続、およびシステムの状態を定義する、コンピュータコードを備えることができる。デジタルモデルは、静的モデルであることができる。デジタルモデルは、時変モデルであることができる。
【0013】
本開示の別の側面は、1つまたはそれを上回るコンピュータプロセッサによる実行に応じて、上記もしくは本明細書の別の場所の方法のうちのいずれかを実装する、機械実行可能コードを備える、非一過性コンピュータ可読媒体を提供する。
【0014】
本開示の別の側面は、1つまたはそれを上回るコンピュータプロセッサと、それに結合されるコンピュータメモリとを備える、システムを提供する。コンピュータメモリは、1つまたはそれを上回るコンピュータプロセッサによる実行に応じて、上記もしくは本明細書の別の場所の方法のうちのいずれかを実装する、機械実行可能コードを備える。
【0015】
本開示の付加的側面および利点が、本開示の例証的実施形態のみが示され、説明される、以下の詳細な説明から当業者に容易に明白な状態となるであろう。認識されるであろうように、本開示は、他の異なる実施形態が可能であり、そのいくつかの詳細は、全て本開示から逸脱することなく、種々の明白な点において修正が可能である。故に、図面および説明は、制限的ではなく、本質的に例証的と見なされるべきである。
【0016】
(参照による組み込み)
本明細書に言及される全ての公開文書、特許、および特許出願は、各個々の公開文書、特許、または特許出願が、具体的かつ個々に示された場合と同程度に、参照することによって本明細書に組み込まれる。参照することによって組み込まれる公開文書および特許または特許出願は、本明細書に含有される開示と矛盾する範囲で、本明細書が、任意のそのような矛盾する資料に優先する、ならびに/もしくはその上位にあると意図される。
【図面の簡単な説明】
【0017】
本発明の新規の特徴が、添付の請求項において具体的に記載される。本発明の特徴および利点のより深い理解が、本発明の原理が利用される例証的実施形態を記載する、以下の詳細な説明ならびに付随の図面(また、本明細書では「図(FigureおよびFIG.)」)を参照することによって取得されるであろう。
【0018】
【
図1】
図1は、物理的システムの工学設計文書から物理的システムのデジタル表現を発生させるためのシステムを図式的に図示する。
【0019】
【
図2】
図2は、検出された記号が、赤色のボックスによって識別される、物理的システムの回路図である。
【0020】
【
図3】
図3は、検出されたアセンブリが、赤色のボックスによって識別される、物理的システムの回路図である。
【0021】
【
図4】
図4は、アプリケーションのユーザインターフェース内に表示されるような、例示的デジタルモデルを示す。
【0022】
【
図5】
図5は、物理的システムの工学設計文書から物理的システムのデジタル表現を発生させるための例示的プロセスのフローチャートである。
【0023】
【
図6】
図6は、本明細書に提供される方法を実装するようにプログラムされる、または別様に構成される、コンピュータシステムを示す。
【発明を実施するための形態】
【0024】
詳細な説明
本発明の種々の実施形態が、本明細書に示され、説明されているが、そのような実施形態が、実施例としてのみ提供されることが、当業者に明白となるであろう。多数の変形例、変更、および代用が、本発明から逸脱することなく、当業者に想起され得る。本明細書に説明される本発明の実施形態に対する種々の代替が、採用され得ることを理解されたい。
【0025】
用語「少なくとも」、「~を上回る」、または「~を上回る、またはそれに等しい」が、一連の2つまたはそれを上回る数値の中の第1の数値に先行する度に、用語「少なくとも」、「~を上回る」、または「~を上回る、またはそれに等しい」は、その一連の数値の中の数値のそれぞれに適用される。例えば、「1、2、または3を上回る、またはそれに等しい」は、「1を上回る、またはそれに等しい」、「2を上回る、またはそれに等しい」、もしくは「3を上回る、またはそれに等しい」と同等である。
【0026】
用語「~以下」、「~未満」、または「~未満またはそれに等しい」が、一連の2つまたはそれを上回る数値の中の第1の数値に先行する度に、用語「~以下」、「~未満」、または「~未満またはそれに等しい」は、その一連の数値の中の数値のそれぞれに適用される。例えば、「3、2、または1未満またはそれに等しい」は、「3未満またはそれに等しい」、「2未満またはそれに等しい」、もしくは「1未満またはそれに等しい」と同等である。
【0027】
本開示は、物理的システムの工学設計文書から物理的システムのデジタル表現を発生させるためのシステム、方法、およびコンピュータプログラム製品を提供する。具体的には、本明細書に説明されるシステムは、非デジタル回路図内の記号を検出することによって、物理的システムのデジタル表現を発生させることができる。本システムは、次いで、分類子を使用し、検出された記号のそれぞれを特定の構成要素として分類することができる。本システムは、加えて、例えば、回路図内の群を境界する破線を検出することによって、構成要素の関連する群をアセンブリとして分類することができる。その後、本システムは、例えば、回路図内の構成要素およびアセンブリを接続する実線を検出することによって、構成要素とアセンブリとの間の接続を決定することができる。ある場合には、本システムはまた、構成要素およびアセンブリのサブセットを構成要素表内のエントリと関連付けることもできる。構成要素表は、回路図が提供しない、ある構成要素についてのより詳細な情報を提供してもよい。最後に、本システムは、構成要素、アセンブリ、接続、および関連付けから物理的システムのデジタル表現を発生させることができる。物理的システムのデジタル表現は、システムのデジタルモデルと、機械可読の部品表とを含んでもよい。
【0028】
図1は、物理的システムの工学設計文書から物理的システムのデジタル表現を発生させるためのシステム100を図式的に図示する。物理的システムは、例えば、処理パイプラインであってもよい。処理パイプラインは、いくつかの実施例を挙げると、石油およびガス処理パイプライン、化学または材料合成パイプライン(例えば、塗料、肥料、繊維製品、ゴム、鋼鉄、もしくはアルミニウムの合成のためのパイプライン)、薬物合成パイプライン、または食品生産パイプラインであってもよい。物理的システムは、代替として、機械システム、建物、インフラストラクチャ(例えば、道路、橋、電気グリッド、または公営水道システム)、車両、電子デバイス、回路、もしくは同等物であってもよい。一般に、物理的システムは、回路図または略図によって表され得る、任意のシステムであってもよい。
【0029】
工学設計文書は、物理的システムの非デジタル(例えば、紙)回路図と、対応する構成要素表と、物理的システム上で講じられるアクション(例えば、保守アクション、較正等)のリストとを含んでもよい。
【0030】
システム100は、前処理サブシステム110を有してもよい。一般に、前処理サブシステム110は、後続の処理ステップをより容易にするために回路図を簡潔にすることができる。例えば、前処理サブシステム110は、回路図の物理的コピーをデジタル画像(例えば、ポータブルネットワークグラフィックス(PNG)またはJPEG)に走査し、画像をサイズ変更する、もしくはその色を変更し、画像から縁、白色空間、および他のノイズを除去し、画像から非記号テキストを除去することができる。本開示では、回路図のデジタル画像は、単純に、回路図と称され得る。
【0031】
システム100はまた、分類サブシステム120を含んでもよい。分類サブシステム120は、前処理された回路図を受信し、回路図内の記号、アセンブリ(例えば、記号の関連する群)、および接続を検出し、分類することができる。
【0032】
分類サブシステム120は、検出モジュール122と、分類モジュール124とを有してもよい。検出モジュール122は、回路図内の記号およびアセンブリを検出するように構成されてもよい。すなわち、検出モジュール122は、記号と、アセンブリとを含有する回路図の部分と含有しない部分とを区別するように構成されてもよい。回路図内の記号を検出するために、検出モジュール122は、回路図の特定の部分が記号であるか、またはそうではないことを示す出力を発生させるように構成される、2値分類器を実装することができる。2値分類器は、深層ニューラルネットワーク、例えば、フィードフォーワードニューラルネットワークまたは畳み込みニューラルネットワーク(CNN)であってもよい、もしくはこれは、サポートベクタマシン(SVM)、オートエンコーダ、または任意の他の機械学習アルゴリズムもしくはアプローチであってもよい。一実施例では、2値分類器は、CNNである。CNNは、少なくとも約1個、2個、3個、4個、5個、6個、7個、8個、9個、10個、またはそれを上回る畳み込み層を有してもよい。ReLU活性化層および最大プーリング層が、畳み込み層間に散在されてもよい。CNNはまた、完全結合層を有してもよい。CNNの出力層は、ある確率を生産する、シグモイドまたはソフトマックス活性化を有してもよい。
【0033】
2値分類器は、教師あり、半教師あり、または教師なし学習プロセスを使用して訓練されてもよい。1つの実装では、2値分類器は、少量の標識訓練データ(例えば、回路図の一部が、記号を含有するものとして、またはそれを含有しないものとして標識される、回路図)および大量の非標識訓練データ(例えば、回路図の一部が、記号を含有するものとして、もしくはそれを含有しないものとして標識されない、回路図)に基づいて訓練されることができる。
図2は、検出された記号が、赤色のボックスによって識別される、物理的システムの回路図である。
【0034】
ある場合には、検出モジュール122は、2値分類器の代わりに、三元分類子を実装してもよい。三元分類子は、2値分類器に類似する構造と、機能とを有し得るが、(1)タグ(すなわち、一般的には、正方形内に内接される丸によって表される、センサのデジタル表現)を含有する、(2)局所的に搭載される器具(すなわち、一般的には、丸によって表される、圧力ゲージまたは温度読取機等の物理的器具)を含有する、もしくは(3)いかなる記号も含有しないものとして、回路図内の面積を分類してもよい。タグおよびLMIは、多くの場合、時系列センサデータベース内に対応するエントリを有するため、重要である。
【0035】
回路図内の記号を検出するために、検出モジュール122は、スライディングウィンドウアプローチを使用してもよい。すなわち、特定の回路図が、複数の重複するウィンドウに分割されてもよい。上記に説明される分類子は、ウィンドウ毎に出力を返してもよい。ウィンドウ毎の出力は、ウィンドウが、その境界内に記号の少なくとも一部を有しているか、または有していないかどうか、もしくはウィンドウが、タグ、LMIを含有するかどうか、またはいかなる記号も含有していないかどうかを示してもよい。スライディングウィンドウのサイズおよびストライドは、部分的に、記号の平均または中央サイズ、もしくは任意の他の統計メトリックまたは発見的手法に基づいてもよい。一実施例では、ウィンドウは、100ピクセル×100ピクセルであってもよい。スライディングウィンドウアプローチの場合では、2値分類器の出力は、特定の構成要素としての分類の前に、後処理ステップを受けてもよい。例えば、非最大抑制アルゴリズムが、出力に適用され、(例えば、ウィンドウの重複に起因して)同一の記号を有する複数のウィンドウのうちの1つまたはそれを上回るものをフィルタ除去してもよい。
【0036】
回路図内のアセンブリを検出するために、検出モジュール122は、記号の群を境界する破線を検出するように構成される、アルゴリズムを実装することができる。そのような破線は、記号がアセンブリの組成構成要素であることを示し得る。
図3は、検出されたアセンブリが、赤色のボックスによって識別される、物理的システムの回路図である。
【0037】
回路図内の接続を検出するために、検出モジュール122は、構成要素およびアセンブリを接続する実線を検出するように構成される、類似アルゴリズムを実装することができる。一実施例では、検出モジュール122は、図表探索アルゴリズムを使用し、構成要素、および構成要素間の接続を表す、実線をトラバースする。図表探索アルゴリズムは、回路図内の隣接する黒色ピクセルを検出し、それに追随することによって、構成要素および実線をトラバースすることができる。黒色ピクセルは、閾値ピクセル強度を充足する、ピクセルであってもよい。図表探索アルゴリズムは、ピクセルを図表のノードとして表すことができる。特定のピクセルは、構成要素の一部である場合とそうではない場合があり、本情報は、そのピクセルに対応するノード内に含有されることができる。記号は、記号を形成するピクセルに対応するノードの集合として、図表内に表される。図表のエッジは、ノードあたり最大8つのエッジを伴う近隣ピクセル間の連結部であってもよい。記号は、記号を形成するピクセルに対応するノードの集合として、図表内に表される。
【0038】
略図の本図表表現を用いると、記号間の接続が、深さ優先探索(DFS)を通して識別されることができる。具体的には、検出された記号毎に、DFSが、記号内のノードのうちの1つから初期化される。DFSは、その黒色ノードに沿って図表をトラバースし、その経路に沿って接続される記号に衝打(し、それを追跡)する。探索は、いったん全ての有効な経路が使い果たされると、終了する。
【0039】
分類モジュール124は、その一方で、検出された記号を構成要素として分類するように構成されてもよい。記号を構成要素として分類するために、分類モジュール124は、特定の記号が対応する、複数の構成要素のうちのものを示す出力を発生させるように構成される、マルチクラス深層ニューラルネットワークを実装することができる。複数の構成要素は、マルチクラス深層ニューラルネットワークを訓練するステップに先立って決定されることができる。構成要素は、構成要素ライブラリ内に記憶されることができる。分類の間に、マルチクラス深層ニューラルネットワークが、特定の記号を構成要素として分類することに失敗した場合、これは、記号が新しい記号であることを示し得る。新しい記号は、構成要素ライブラリに追加されることができる。
【0040】
マルチクラス深層ニューラルネットワークは、例えば、フィードフォワードニューラルネットワークまたはCNNであってもよい。マルチクラス深層ニューラルネットワークは、教師あり、半教師あり、または教師なし学習プロセスを使用して訓練されることができる。1つの実装では、マルチクラス深層ニューラルネットワークは、少量の標識訓練データ(例えば、記号が、対応する特定の構成要素として標識される、回路図)および大量の非標識訓練データ(例えば、記号が、特定の構成要素に対応するものとして標識されない、回路図)に基づいて訓練されることができる。
【0041】
一般に、本明細書に説明されるニューラルネットワークは、1つまたはそれを上回る入力から1つまたはそれを上回る出力を予測するために動作の複数の層を採用することができる。ニューラルネットワークは、入力層と出力層との間に据え付けられる、1つまたはそれを上回る隠れ層を含んでもよい。各層の出力は、別の層、例えば、次の隠れ層または出力層への入力としての役割を果たし得る。ニューラルネットワークの各層は、層への入力に関して実施されるべき1つまたはそれを上回る変換動作を規定することができる。そのような変換動作は、ニューロンと称され得る。特定のニューロンの出力は、バイアスを用いて調節され、活性化関数、例えば、正規化線形ユニット(ReLU)またはシグモイド関数によって乗算される、ニューロンへの入力の加重和であり得る。ニューラルネットワークを訓練するステップは、入力を、ニューラルネットワークの訓練されていないバージョンまたは部分的に訓練されたバージョンに提供し、予測される出力を発生させるステップと、予測される出力を予期される出力と比較するステップと、予測される出力と予期される出力との間の差異を考慮するようにアルゴリズムの加重およびバイアスを更新するステップとを伴ってもよい。具体的には、費用関数が、予測される出力と予期される出力との間の差異を計算するために使用されることができる。ネットワークの加重およびバイアスに関して費用関数の導関数を算出することによって、加重およびバイアスは、費用関数を最小限化するように複数のサイクルにわたって反復的に調節されることができる。訓練は、予測される出力が、小規模の計算された費用を取得すること等の収束条件を満たすと、完了し得る。
【0042】
CNNは、畳み込み層と呼ばれる、いくつかの層内のニューロンが、入力データセットの小さい部分のみからピクセルを受信する、ニューラルネットワークである。これらの小さい部分は、ニューロンの受容野と称され得る。そのような畳み込み層内の各ニューロンは、同一の加重を有し得る。このように、畳み込み層は、入力データセットの任意の部分において特徴を検出することができる。CNNはまた、フィードフォワードニューラルネットワーク内の従来的な層に類似する、畳み込み層および完全に接続された層内のニューロンクラスタの出力を組み合わせる、プーリング層を有してもよい。CNNは、特に、画像内のオブジェクト(例えば、製品)を検出し、分類することにおいて優れている場合がある。
【0043】
ある場合には、分類モジュール124は、記号を分類するためにオートエンコーダを実装することができる。オートエンコーダは、エンコーダと、デコーダとを備えてもよい。エンコーダは、入力記号の圧縮された表現を発生させるように構成されてもよく、デコーダは、圧縮された表現から入力記号を再構築するように構成されてもよい。デコーダは、公知の記号の実施例に基づいて(例えば、教師あり学習プロセスを通して)訓練されてもよい。分類モジュール124は、所与の入力記号に関するデコーダの出力を、(例えば、距離ベースのアルゴリズム(例えば、コサイン類似度)を使用して)構成要素ライブラリ内の種々の構成要素に関する既知のシグネチャと比較することができる。記号は、最も類似する、または最も近接しているシグネチャを伴う構成要素として分類されてもよい。
【0044】
ある場合には、単一オブジェクト検出アルゴリズムが、記号を検出し、分類することの両方を行うことができる。そのようなオブジェクト検出アルゴリズムは、上記に説明される形態のうちのいずれかをとり得る。
【0045】
分類システム120は、分類された構成要素およびアセンブリをサブシステム130に提供することができる。サブシステム130はまた、物理的システムの構成要素表を受信することもできる。サブシステム130は、構成要素およびアセンブリのうちのいくつかのものまたは全てを構成要素表内のエントリと関連付けるように構成されることができる。構成要素表は、回路図内に現れない構成要素、例えば、コンデンサのサイズおよび材料の組成についての付加的な情報を提供することができる。
【0046】
サブシステム130は、光学文字認識(OCR)モジュール132を有してもよい。OCRモジュール132は、分類された構成要素およびアセンブリと関連付けられるテキストを認識するように構成される、OCRアルゴリズムを実装してもよい。より具体的には、OCRアルゴリズムは、構成要素およびアセンブリと関連付けられる識別番号を検出し、識別するように構成されてもよい。ある場合には、識別番号は、分類される構成要素およびアセンブリに隣接する丸の中に、または別様にその近傍に位置することができる。そのような場合では、サブシステム130は、ハフ変換を使用して、丸を検出することができる。OCRアルゴリズムは、加えて、構成要素表内で、識別番号と、他のデータとを含む、テキストを認識することができる。ある場合には、テキストは、テキストが画像内に存在する境界ボックスを生産するためにニューラルネットワークを使用するパイプラインである、効率的かつ正確な場面テキスト検出器(EAST)を使用して検出されることができる。
【0047】
回路図内の識別番号は、構成要素表内の識別番号に対応することができる。OCRモジュール132は、回路図からの識別番号を整合モジュール134に提供することができ、これは、そのような識別番号を構成要素表内の識別番号と整合させ、それによって、対応する構成要素およびアセンブリを構成要素表内のエントリと関連付けることができる。
【0048】
システム100は、加えて、モデルビルダサブシステム140を含むことができる。モデルビルダサブシステム140は、分類サブシステム120から分類された構成要素、アセンブリ、および接続を、ならびにサブシステム130から関連付けを受信し、物理的システムのデジタル表現を発生させることができる。物理的システムのデジタル表現は、物理的システムのデジタルモデルと、機械可読の部品表とを含んでもよい。機械可読の部品表は、回路図または回路図のセット内の種々の構成要素、構成要素と関連付けられるテキスト、および各構成要素に接続される構成要素を識別する、資産階層表であってもよい。デジタルモデルは、物理的システム内の構成要素、構成要素間の接続、および物理的システムの状態を定義する、コンピュータコードであってもよい。構成要素はさらに、構成要素ライブラリ内に記憶され、デジタルモデルが生成されるときに読み出され得る、それらのパラメータ(例えば、寸法、機能、入力および出力、スループット、動作変数等)によって定義されてもよい。デジタルモデルは、時変モデルまたは静的モデルであることができる。
【0049】
図1のシステムおよびその構成要素は、1つまたはそれを上回るコンピューティングデバイス上に実装されることができる。コンピューティングデバイスは、サーバ、デスクトップまたはラップトップコンピュータ、電子タブレット、モバイルデバイス、もしくは同等物であることができる。コンピューティングデバイスは、1つまたはそれを上回る場所に位置することができる。コンピューティングデバイスは、汎用目的プロセッサ、グラフィック処理ユニット(GPU)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、または同等物を有することができる。コンピューティングデバイスは、加えて、メモリ、例えば、動的または静的ランダムアクセスメモリ、読取専用メモリ、フラッシュメモリ、ハードドライブ、もしくは同等物を有することができる。メモリは、実行に応じて、コンピューティングデバイスに前処理サブシステム110、分類サブシステム120、サブシステム130、またはモデルビルダサブシステム140の機能性を実装させる命令を記憶するように構成されることができる。コンピューティングデバイスは、加えて、ネットワーク通信デバイスを有することができる。ネットワーク通信デバイスは、コンピューティングデバイスが、ネットワークを経由して、相互および任意の数のユーザデバイスと通信することを可能にすることができる。ネットワークは、有線または無線ネットワークであることができる。例えば、ネットワークは、光ファイバネットワーク、Ethernet(登録商標)ネットワーク、衛星ネットワーク、セルラーネットワーク、Wi-Fi(登録商標)ネットワーク、Bluetooth(登録商標)ネットワーク、または同等物であることができる。他の実装では、コンピューティングデバイスは、インターネットを通してアクセス可能である、いくつかの分散型コンピューティングデバイスであることができる。そのようなコンピューティングデバイスは、クラウドコンピューティングデバイスと見なされ得る。
【0050】
図4は、アプリケーションのユーザインターフェース内に表示されるようなデジタルモデルのある実施例を示す。ユーザインターフェースは、ユーザがデジタルモデルを有効にすることを可能にすることができる。ユーザインターフェースは、認識された構成要素を青色で、認識されたアセンブリを赤色で示すことができる。ユーザインターフェースは、ユーザが構成要素およびアセンブリをタイプによって、またはステータス(例えば、「分類済」もしくは「未分類」)によってフィルタリングすることを可能にすることができる。ユーザインターフェースはまた、ユーザが手動で構成要素およびアセンブリを再分類する、または構成要素およびアセンブリの他のパラメータを編集することも可能にすることができる。
【0051】
図5は、物理的システムの工学設計文書から物理的システムのデジタル表現を発生させるための例示的プロセスのフローチャートである。工学設計文書は、物理的システムの非デジタル(例えば、紙)回路図および対応する構成要素表であってもよい。本プロセスは、1つまたはそれを上回る場所において適切にプログラムされる、1つまたはそれを上回るコンピュータのシステムによって実施されることができる。
【0052】
本システムは、非デジタル回路図を前処理するステップ(510)を含むことができる。非デジタル回路図を前処理するステップは、非デジタル回路図をデジタル画像に走査するステップと、デジタル画像から白色空間および他のノイズを除去するステップとを伴ってもよい。
【0053】
本システムは、機械学習アルゴリズムを使用して、(i)前処理された回路図内の複数の記号のそれぞれを構成要素として、および(ii)関連する記号の各群をアセンブリとして分類することができる(510)。機械学習アルゴリズムは、2値分類器ならびにマルチクラス深層ニューラルネットワークまたはオートエンコーダを備えてもよく、記号を構成要素として分類するステップは、2値分類器を使用して記号を検出するステップと、記号のそれぞれを、マルチクラス深層ニューラルネットワークもしくはオートエンコーダを使用して構成要素として分類するステップとを伴ってもよい。マルチクラス深層ニューラルネットワークは、フィードフォワードニューラルネットワークまたは畳み込みニューラルネットワークであってもよい。マルチクラス深層ニューラルネットワークは、半教師あり学習プロセスを使用して訓練されることができる。マルチクラス深層ニューラルネットワークのクラスは、訓練するステップに先立って決定されることができる。クラスは、典型的には、そのタイプの工学設計文書内に見出される構成要素であり得る。回路図のうちの1つの中の個別の記号が、構成要素ライブラリ内に存在しない場合、本システムは、対応する構成要素をライブラリに追加することができる。ある場合には、本システムは、記号を同時に検出し、構成要素として分類する、単一オブジェクト検出アルゴリズムを実装することができる。関連する記号の各群をアセンブリとして分類するステップは、群毎に、群を境界する、1つまたはそれを上回る回路図内の破線を検出するステップを含むことができる。
【0054】
本システムは、構成要素間の、アセンブリ間の、および構成要素とアセンブリとの間の接続を、これらの種々の組み合わせを接続する実線を検出し、トラバースすることによって決定することができる(530)。本システムは、前述で説明されるように、図表探索アルゴリズムを使用して、実線をトラバースすることができる。
【0055】
本システムは、(i)光学文字認識を使用して、回路図内で、構成要素およびアセンブリと関連付けられる識別番号を検出ならびに識別し、(ii)検出された識別番号を構成要素表内の識別番号と整合させることによって、構成要素およびアセンブリのサブセットを構成要素表内のエントリと関連付けることができる(540)。識別番号を検出し、識別するステップは、ハフ変換を使用し、その中にそれらの識別番号が位置する丸を識別するステップを伴うことができる。丸は、回路図内の対応する構成要素に隣接する、または別様にそれに近接することができる。
【0056】
分類された構成要素およびアセンブリ、接続、ならびに関連付けを使用して、本システムは、物理的システムのデジタル表現を発生させることができる(550)。デジタル表現は、物理的システムのデジタルモデルと、機械可読の部品表とを含むことができる。デジタルモデルは、構成要素、接続、および物理的システムの状態を定義する、コンピュータコードであることができる。デジタルモデルは、静的モデルまたは時変モデルであることができる。
(実施例)
【0057】
一実施例では、本明細書に説明されるようなシステムは、回路図の面積を、タグ、LMIを含有するもの、またはいかなる記号も含有しないものとして分類するために、三元CNN分類子を有する。CNNが、ReLU活性化層と最大プーリング層との間に散在される、3つの畳み込み層を有し、続いて、2つの完全に接続される緻密層が続く。第1の隠れ層が、ReLU活性化を伴う64個のユニットを有する。最終出力層が、入力画像が3つのクラスのそれぞれに属した確率を予測するために、ソフトマックス活性化を伴う3つのユニットを有する。CNNは、308個のタグクロップと、687個のLMIクロップとを含む、18枚の標識された配管図および計装図上で訓練された。訓練の実施例は、回転、偏移、剪断、拡大、および反転によって増強され、CNNをこれらの変換に対して不変にした。ドロップアウトが、緻密層に適用され、ある正則化を追加し、CNNの汎化性能を改良した。記号クロップが、訓練(60%)セットおよび検証(40%)セットに分裂され、検証セット上での交差エントロピ損失を最小限化するようにネットワークを訓練した。訓練および検証損失の両方が、100個のエポックの訓練によって収束した。訓練セットおよび検証セットは、次いで、組み合わせられ、100個のエポックにわたるデータセットの全体に関して最終モデルを訓練した。11枚の未観察の配管図および計装図では、タグが、0.95の分類確率閾値を使用して、100%の精度ならびに98%の再現率で分類された。LMIが、0.95の分類確率閾値を使用して、85%の精度および90%の再現率で分類された。
【0058】
コンピュータシステム
本開示は、本開示の方法を実装するようにプログラムされる、コンピュータシステムを提供する。
図6は、
図1のシステム100を実装するようにプログラムされる、または別様に構成される、コンピュータシステム601を示す。コンピュータシステム601は、加えて、本開示の
図5のプロセスの種々の側面を調整する。コンピュータシステム601は、ユーザの電子デバイスまたは電子デバイスに対して遠隔で位置するコンピュータシステムであることができる。電子デバイスは、モバイル電子デバイスであることができる。
【0059】
コンピュータシステム601は、シングルコアまたはマルチコアプロセッサ、もしくは並列処理のための複数のプロセッサであり得る、中央処理ユニット(CPU、また、本明細書では、「プロセッサ」および「コンピュータプロセッサ」)605を含む。コンピュータシステム601はまた、メモリまたはメモリ場所610(例えば、ランダムアクセスメモリ、読取専用メモリ、フラッシュメモリ)と、電子記憶ユニット615(例えば、ハードディスク)と、1つまたはそれを上回る他のシステムと通信するための通信インターフェース620(例えば、ネットワークアダプタ)と、キャッシュ、他のメモリ、データ記憶装置、ならびに/もしくは電子ディスプレイアダプタ等の周辺デバイス625とを含む。メモリ610、記憶ユニット615、インターフェース620、および周辺デバイス625は、マザーボード等の通信バス(実線)を通してCPU605と通信する。記憶ユニット615は、データを記憶するためのデータ記憶ユニット(またはデータリポジトリ)であり得るコンピュータシステム601は、通信インターフェース620の助けを借りてコンピュータネットワーク(「ネットワーク」)630に動作的に結合されることができる。ネットワーク630は、インターネット、イントラネットおよび/またはエクストラネット、もしくはインターネットと通信するイントラネットおよび/またはエクストラネットであり得る。ネットワーク630は、ある場合には、電気通信および/またはデータネットワークである。ネットワーク630は、クラウドコンピューティング等の分散コンピューティングを可能にし得る、1つまたはそれを上回るコンピュータサーバを含むことができる。ネットワーク630は、ある場合には、コンピュータシステム1101の助けを借りて、コンピュータシステム1101に結合されるデバイスが、クライアントまたはサーバとして挙動することを可能にし得る、ピアツーピアネットワークを実装することができる。
【0060】
CPU1105は、プログラムまたはソフトウェア内で具現化され得る、機械可読命令のシーケンスを実行することができる。命令は、メモリ610等のメモリ場所内に記憶されてもよい。命令は、CPU605にダイレクトされることができ、これは、続けて、本開示の方法を実装するようにCPU605をプログラムまたは別様に構成することができる。CPU605によって実施される動作の実施例は、フェッチ、デコード、実行、およびライトバックを含むことができる。
【0061】
CPU605は、集積回路等の回路の一部であり得る。システム601の1つまたはそれを上回る他のコンポーネントが、回路内に含まれることができる。ある場合には、回路は、特定用途向け集積回路(ASIC)である。
【0062】
記憶ユニット615は、ドライバ、ライブラリ、および保存されたプログラム等のファイルを記憶することができる。記憶ユニット615は、ユーザデータ、例えば、ユーザ選好およびユーザプログラムを記憶することができる。コンピュータシステム601は、ある場合には、イントラネットまたはインターネットを通してコンピュータシステム601と通信する遠隔サーバ上等に位置する、コンピュータシステム601の外部にある、1つまたはそれを上回る付加的データ記憶ユニットを含むことができる。
【0063】
コンピュータシステム601は、ネットワーク630を通して1つまたはそれを上回る遠隔コンピュータシステムと通信することができる。例えば、コンピュータシステム601は、ユーザの遠隔コンピュータシステムと通信することができる。遠隔コンピュータシステムの実施例は、パーソナルコンピュータ(例えば、ポータブルPC)、スレートまたはタブレットPC(例えば、Apple(登録商標) iPad(登録商標)、Samsung(登録商標) Galaxy Tab)、電話、スマートフォン(例えば、Apple(登録商標) iPhone(登録商標)、Android(登録商標)対応デバイス、Blackberry(登録商標))、もしくは携帯情報端末を含む。ユーザは、ネットワーク630を介してコンピュータシステム601にアクセスすることができる。
【0064】
本明細書に説明されるような方法は、例えば、メモリ610または電子記憶ユニット615上等、コンピュータシステム601の電子記憶場所上に記憶される、機械(例えば、コンピュータプロセッサ)実行可能コードを用いて実装されることができる。機械実行可能または機械可読コードが、ソフトウェアの形態において提供されることができる。使用の間、コードは、プロセッサ605によって実行されることができる。ある場合には、コードは、記憶ユニット615から読み出され、プロセッサ605による迅速なアクセスのためにメモリ610上に記憶されることができる。いくつかの状況では、電子記憶ユニット615は、除外されることができ、機械実行可能命令は、メモリ610上に記憶される。
【0065】
コードは、事前コンパイルされ、コードを実行するように適合されるプロセッサを有する機械との併用のために構成されることができる、またはランタイムの間にコンパイルされることができる。コードは、コードが事前コンパイルされた様式またはコンパイル直後の方式で実行されることを可能にするように選択され得る、プログラミング言語で供給されることができる。
【0066】
コンピュータシステム601等の本明細書に提供されるシステムおよび方法の側面は、プログラミングにおいて具現化されることができる。本技術の種々の側面は、典型的には、あるタイプの機械可読媒体上で搬送される、またはそれにおいて具現化される機械(もしくはプロセッサ)実行可能コードおよび/または関連付けられるデータの形態における「製品」もしくは「製造品」と考えられ得る。機械実行可能コードは、メモリ(例えば、読取専用メモリ、ランダムアクセスメモリ、フラッシュメモリ)またはハードディスク等の電子記憶ユニット上に記憶されることができる。「記憶」タイプ媒体は、ソフトウェアプログラミングのために任意の時点で非一過性記憶を提供し得る、コンピュータ、プロセッサ、または同等物の有形メモリ、もしくは種々の半導体メモリ、テープドライブ、ディスクドライブ、および同等物等のその関連付けられるモジュールのうちのいずれかまたは全てを含むことができる。ソフトウェアの全てまたは一部は、随時、インターネットもしくは種々の他の電気通信ネットワークを通して通信されてもよい。そのような通信は、例えば、1つのコンピュータまたはプロセッサから別のものへの、例えば、管理サーバもしくはホストコンピュータからアプリケーションサーバのコンピュータプラットフォームへのソフトウェアのローディングを可能にし得る。したがって、ソフトウェア要素を保有し得る別のタイプの媒体は、ローカルデバイス間の物理的インターフェースを横断して、有線および光学固定ネットワークを通して、ならびに種々のエアリンクを経由して使用されるもの等、光学、電気、および電磁波を含む。有線または無線リンク、光学リンク、もしくは同等物等のそのような波を搬送する物理的要素はまた、ソフトウェアを保有する媒体と見なされ得る。本明細書に使用されるように、非一過性有形「記憶」媒体に制限されない限り、コンピュータまたは機械「可読媒体」等の用語は、実行のためにプロセッサに命令を提供することに関与する、任意の媒体を指す。
【0067】
故に、コンピュータ実行可能コード等の機械可読媒体は、限定ではないが、有形記憶媒体、搬送波媒体、または物理的伝送媒体を含む、多くの形態をとってもよい。不揮発性記憶媒体は、例えば、図面に示されるデータベース等を実装するために使用され得るもの等、任意のコンピュータまたは同等物内の記憶デバイスのうちのいずれか等の光学もしくは磁気ディスクを含む。揮発性記憶媒体は、そのようなコンピュータプラットフォームのメインメモリ等の動的メモリを含む。有形伝送媒体は、同軸ケーブルと、コンピュータシステム内のバスを備えるワイヤを含む、銅ワイヤおよび光ファイバとを含む。搬送波伝送媒体は、電気または電磁信号、もしくは無線周波数(RF)および赤外線(IR)データ通信の間に発生されるもの等の音響または光波の形態をとり得る。コンピュータ可読媒体の一般的な形態は、したがって、例えば、フロッピー(登録商標)ディスク、フレキシブルディスク、ハードディスク、磁気テープ、任意の他の磁気媒体、CD-ROM、DVDまたはDVD-ROM、任意の他の光学媒体、パンチカード、紙テープ、孔のパターンを伴う任意の他の物理的記憶媒体、RAM、ROM、PROMおよびEPROM、FLASH-EPROM、任意の他のメモリチップもしくはカートリッジ、データまたは命令を転送する搬送波、そのような搬送波を転送するケーブルもしくはリンク、またはそれからコンピュータがプログラミングコードならびに/もしくはデータを読み取り得る任意の他の媒体を含む。コンピュータ可読媒体のこれらの形態のうちの多くは、1つまたはそれを上回る命令の1つまたはそれを上回るシーケンスを実行のためにプロセッサに搬送することに関与してもよい。
【0068】
コンピュータシステム601は、例えば、
図4のデジタルモデルを提供するためのユーザインターフェース(UI)640を備える電子ディスプレイ635を含む、またはそれと通信することができる。UIの実施例は、限定ではないが、グラフィカルユーザインターフェース(GUI)およびウェブベースのユーザインターフェースを含む。
【0069】
本開示の方法およびシステムは、1つまたはそれを上回るアルゴリズムを用いて実装されることができる。アルゴリズムが、中央処理ユニット605による実行に応じて、ソフトウェアを用いて実装されることができる。アルゴリズムは、例えば、本開示に説明されるニューラルネットワークのうちの1つであることができる。
【0070】
本発明の好ましい実施形態が、本明細書に示され、説明されているが、そのような実施形態が、実施例としてのみ提供されることが、当業者に明白となるであろう。本発明が、本明細書内に提供される具体的実施例によって限定されることを意図していない。本発明は、前述の本明細書を参照して説明されているが、本明細書における実施形態の説明および図は、限定的意味で解釈されることを意味していない。多数の変形例、変更、および代用が、ここで、本発明から逸脱することなく、当業者に想起されるであろう。さらに、本発明の全ての側面が、種々の条件および変数に依存する、本明細書に記載される具体的描写、構成、または相対的割合に限定されないことを理解されたい。本明細書に説明される本発明の実施形態に対する種々の代替物が、本発明を実践する際に採用され得ることを理解されたい。したがって、本発明がまた、任意のそのような代替、修正、変形例、または均等物を網羅することとすることが想定される。以下の請求項が、本発明の範囲を定義すること、およびこれらの請求項ならびにそれらの均等物の範囲内の方法および構造が、それによって網羅されることが意図される。
【国際調査報告】