(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-01-10
(45)【発行日】2023-01-18
(54)【発明の名称】組立てラインのための組立てエラー修正
(51)【国際特許分類】
G06T 7/00 20170101AFI20230111BHJP
【FI】
G06T7/00 610
G06T7/00 350B
(21)【出願番号】P 2021549836
(86)(22)【出願日】2020-04-20
(86)【国際出願番号】 US2020029022
(87)【国際公開番号】W WO2020176908
(87)【国際公開日】2020-09-03
【審査請求日】2021-08-25
(32)【優先日】2019-04-19
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2019-11-07
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2019-09-30
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2019-11-06
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】511289471
【氏名又は名称】ナノトロニクス イメージング インコーポレイテッド
【氏名又は名称原語表記】NANOTRONICS IMAGING,INC.
【住所又は居所原語表記】2251 FRONT STREET,SUITE 110,P.O.BOX 306,CUYAHOGA FALLS,OHIO 44223,U.S.A.
(74)【代理人】
【識別番号】110002321
【氏名又は名称】弁理士法人永井国際特許事務所
(72)【発明者】
【氏名】プットマン,マシュー シー
(72)【発明者】
【氏名】ピンスキー,バディム
(72)【発明者】
【氏名】キム,ウンソル
(72)【発明者】
【氏名】サンドストローム,アンドリュー
【審査官】真木 健彦
(56)【参考文献】
【文献】特開2015-099022(JP,A)
【文献】特開2004-104576(JP,A)
【文献】特開2018-022210(JP,A)
【文献】特許第6224873(JP,B1)
【文献】特開2008-009868(JP,A)
【文献】特開2005-250990(JP,A)
【文献】特開2017-091091(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00
G06T 1/00
G05B 19/418
G05B 23/00
B25J 19/00
(57)【特許請求の範囲】
【請求項1】
組立てラインにおけるワークフローを最適化するための方法であって、
目標対象
を組立てるプロセス
におけるステップにおいて、
前記ステップの間に目標対象を組み立てる組立て者のモーションによるエラーに対応する、前記目標対象の組立てのエラーを、
コンピュータシステムにより検出するステップと、
前記エラーの検出に応答して、コンピュータシステムにより、前記組立
てるプロセスの前記ステップにおける
公称対象に対する前記目標対象
を解析し、比較を得るステップと、
前記比較に基づいて、
コンピュータシステムにより、前記目標対象と前記公称対象の間
の偏差を最小化する必要がある否か決定するステップと、、
決定に基づいて、コンピュータシステムにより、前記目標対象と前記公称対象の間の偏差を最小化するために必要な一連のステップを生成するステップと、
一連の前記ステップに基づいて
、コンピュータシステムにより、前記目標対象のための組立て指示を調整し、それにより調整された組立て指示を得るステップと
、
を含む方法。
【請求項2】
前記組立
てるプロセス
におけるステップにおいて、前記公称対象に対して前記目標対象
が評価される、請求項1に記載の方法。
【請求項3】
前記公称対象の最終構成に対して
前記目標対象が評価される、請求項1および2のいずれか
1項に記載の方法。
【請求項4】
前記一連の
前記ステップが、前記偏差を最小化するように構成された機械学習モデルを使用して決定される、請求項1から3のいずれか
1項に記載の方法。
【請求項5】
前記機械学習モデルがゲート付き回帰型ユニット(GRU)モデルである、請求項4に記載の方法。
【請求項6】
前記機械学習モデルがLong Short-Term Memory(LSTM)モデルに基づく、請求項4に記載の方法。
【請求項7】
前記機械学習モデルが前記目標対象のための前記組立
てるプロセスを表す追跡情報を使用して訓練され、前記追跡情報が一組の作業者から収集される、請求項4に記載の方法。
【請求項8】
前記組立
てるプロセスに対応するモーションデータを
コンピュータシステムによりキャプチャするステップをさらに含み、前記モーションデータが前記目標対象を組み立てている間の手の動きのデジタル記録を含む、請求項1から7のいずれか
1項に記載の方法。
【請求項9】
前記モーションデータから前記目標対象の
組立てを表す一組の画像を
コンピュータシステムにより抽出するステップと、
前記一組の画像を
コンピュータシステムにより評価し、それにより前記目標対象を組み立てるための前記作業者による一連の
前記ステップの実行を識別するステップと
、
をさらに含む、請求項8に記載の方法。
【請求項10】
前記目標対象の組立てにおける前記エラーが1つまたは複数の機械学習モデルを使用して検出される、請求項1から9のいずれか
1項に記載の方法。
【請求項11】
前記調整された組立て指示が、前記目標対象の前記偏差を最小化するための指示を作業者に提供するように構成される、請求項1から10のいずれか
1項に記載の方法。
【請求項12】
前記偏差が、前記目標対象の前記組立てプロセスを完了するための前記一連のステップと、前記公称対象の組立てプロセスを完了するための別の一連のステップとの間の類似性に基づいて決定される、請求項1から11のいずれか
1項に記載の方法。
【請求項13】
前記偏差が、報酬公式化を介したMarkov Decision Process(MDP)を使用して最小化される、請求項1から12のいずれか
1項に記載の方法。
【請求項14】
前記調整された組立て指示が、作業者に前記調整された組立て指示を提供するために1つまたは複数の自然言語処理(NLP)アルゴリズムを使用して変換される、請求項1から13のいずれか
1項に記載の方法。
【請求項15】
確率的勾配降下法を使用して、前記目標対象の前記組立てプロセスを完了するための前記一連のステップが引き出される、請求項1から14のいずれか
1項に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本出願は、2019年9月30に出願した、「DYNAMIC TRAINING FOR ASSEMBLY LINES,」という名称の米国特許出願第16/587,366号の一部継続出願であり、この米国特許出願第16/587,366号は、2019年2月28日に出願した、「DYNAMIC TRAINING FOR ASSEMBLY LINES,」という名称の米国出願第16/289,422号、現在は米国特許第10,481,579号の継続出願である。さらに、本出願は、2019年4月19日に出願した、「A COMPUTATION MODEL FOR DECISION-MAKING AND ASSEMBLY OPTIMIZATION IN MANUFACTURING,」という名称の米国仮出願第62/836,192号、2019年11月6日に出願した、「A COMPUTATION MODEL FOR DECISION-MAKING AND ASSEMBLY OPTIMIZATION IN MANUFACTURING,」という名称の米国仮出願第62/931,448号、および2019年11月7日に出願した、「DEEP LEARNING QUALITY PREDICTOR FOR MANUAL ASSEMBLY VIDEO ANALYSIS,」という名称の米国仮出願第62/932,063号の利益を主張するものである。上記出願および特許の内容全体は、参照により本明細書に組み込まれている。
【0002】
主題技術は、組立てラインワークフローに対する改善を提供し、詳細には、機械学習モデルを使用してなされるフィードバックおよびフィードフォワードエラー伝搬予測に基づいて組立てライン作業者指示を適応的に更新するためのシステムおよび方法を包含している。以下でさらに詳細に考察されるように、技術のいくつかの態様は、製造偏差または組立て偏差に関してなされる推測に基づいて、1つまたは複数の作業者ステーションで提供される手引きビデオを自動的に適合させるためのシステムおよび方法を包含している。
【背景技術】
【0003】
従来の組立てラインワークフローでは、製造エラーを検出するためには、また、下流側プロセスにおける修正を介してエラーを除去することができる方法を決定するためには、人間(作業者)監視および専門的技術が必要である。組立てと製造、ならびに、組立てラインと生産ラインは、本明細書において交換可能に使用されていることに留意されたい。組立てエラーの検出を人間に依存しているため、エラーが見落とされ(あるいは報告されず)、また、そのまま組立てプロセスにおける下流側に伝搬される高い可能性が存在している。さらに、多くの組立て作業者は、狭い範囲の一組のタスクを実施するように訓練されているにすぎず、したがって組立てワークフローにおける上流側で生じたエラーを最も良好に訂正するための作業者自身のワークフローの修正方法を認識していないことがあり得る。
【0004】
従来の製造ワークフローでは、手動検査プロセスの一部における人間のエラーの修復は、しばしば、その人間ノード上で修正行為を取ることによって処理されている。その人間にかかわる継続する問題が存在している場合、その人は、しばしば、すべての人間がそうであるように、多くの同じ限界に対して傷つき易い他の人に代えられる。ある行為を、エラーを犯すことなく、何年にもわたって絶えず繰り返すことは困難であり、また、修正行為を取ることは、ほとんどの組立て作業者の権利外である。これらの権利が与えられたとしても、そこには矛盾が存在し、また、その単一のプロセスノードのアプリケーションにおいて、その人間が有している経験によってのみ告げられることになる。さらに、何らかの間違いから、さらには何らかの積極的な修正行為から学習するための機構は存在していない。
【発明の概要】
【発明が解決しようとする課題】
【0005】
さらに、組立てラインの電子監視には限界があり、また、上流側のステップで生じたエラーを補償するための、組立てラインにおける下流側のステップに対する臨機応変な調整を提供するための頑丈な機構を含んでいない。さらに、作業者モーションの変化および/または組立てパターンの変化が、結果として得られる製造製品に如何に影響を及ぼすかを評価し、かつ、製造製品の性能および/または特性を改善するための修正行為を提供するための新しい機構が必要である。
【課題を解決するための手段】
【0006】
いくつかの態様では、開示される技術は、組立てラインにおけるワークフローを最適化するための方法に関し、方法は、目標対象の組立てのあるステップにおいて、目標対象の組立てのエラーを検出するステップと、組立てプロセスのそのステップにおける目標対象と公称対象とを評価し、それにより比較を得るステップと、その比較に基づいて、目標対象と公称対象の間の偏差を最小化するために必要な一連のステップを決定するステップとを含む。いくつかの態様では、方法は、上記一連のステップに基づいて目標対象のための組立て指示を調整するためのステップをさらに含むことができる。
【0007】
別の態様では、開示される技術は、組立てラインにおけるワークフローを最適化するためのシステムを包含し、システムは、複数の画像キャプチャデバイスであって、画像キャプチャデバイスの各々は、目標対象の組立てプロセスの間、作業者の動きをキャプチャするために異なる位置に配置される、複数の画像キャプチャデバイスと、作業者に提供された手引きおよび指示を自動的に修正するように構成された組立て指示モジュールであって、上記複数の撮像デバイスに結合される、組立て指示モジュールとを含む。組立て指示モジュールは、複数の画像キャプチャデバイスからモーションデータを受け取るステップであって、モーションデータは、作業者による、目標対象を組み立てるための一組のステップの実行に対応する、ステップと、上記一組のステップのうちのあるステップにおけるモーションデータに基づいて、目標対象の組立てにおけるエラーを決定するステップとを含む操作を実施するように構成することができる。いくつかの実施態様では、組立て指示モジュールは、上記一組のステップのうちの上記ステップにおける目標対象と公称対象とを評価し、それにより比較を得るための操作を実施し、その比較に基づいて、目標対象と公称対象の間の偏差を最小化するために必要な一連のステップを決定し、かつ、上記一連のステップに基づいて、作業者に提供される組立て指示を調整するようにさらに構成することができる。修正された組立て指示の形態は、それらに限定されないが、モーションデータの生成された、あるいは編集されたビデオ、識別された偏差の自然言語処理(NLP)からのテキストベースの指示、または作業者への他のフィードバック機構を含むことができる。
【0008】
さらに別の態様では、開示される技術は、その上に記憶された命令を含む非一時的コンピュータ可読媒体に関しており、命令は、1つまたは複数のプロセッサによって実行されると、目標対象の組立てプロセスのあるステップにおいて、目標対象の組立てにおけるエラーを検出するステップ、組立てプロセスの上記ステップにおける目標対象と公称対象とを評価し、それにより比較を得るステップ、およびその比較に基づいて、目標対象と公称対象の間の偏差を最小化するために必要な一連のステップを決定するステップを実施することを含む命令をプロセッサが実行することになるように構成される。いくつかの実施態様では、命令は、上記一連のステップに基づいて、目標対象のための組立て指示を調整するための操作をプロセッサが実施することになるようにさらに構成することができる。
【0009】
主題技術の特定の特徴は、添付の特許請求の範囲に示されている。しかしながらさらなる理解を提供するために含まれている添付の図面は、開示される態様を図解したものであり、説明と相俟って主題技術の原理を説明する働きをしている。
【図面の簡単な説明】
【0010】
【
図1】開示される技術のいくつかの態様による、例示的生産ライン展開のフローチャートを概念的に示す図である。
【0011】
【
図2】開示される技術のいくつかの態様による、所与の作業者ステーションで組立てエラー修正を実施するためのプロセスの例を示す図である。
【0012】
【
図3】主題技術のいくつかの態様を実現するために使用することができる電子システムの例を示す図である。
【発明を実施するための形態】
【0013】
以下に示されている詳細な説明には、主題技術の様々な構成についての説明であることが意図されており、主題技術を実践することができる構成のみを表すことは意図されていない。添付の図面は本明細書に組み込まれており、詳細な説明の一部を構成している。詳細な説明は、主題技術についてのより完全な理解を提供するために特定の詳細を含む。しかしながら主題技術は、本明細書において示されている特定の詳細に限定されないこと、また、これらの詳細がなくても実践することができることは明確で、かつ、明らかであろう。いくつかの実例では、主題技術の概念を曖昧にすることを回避するために、構造および構成要素はブロック図の形態で示されている。
【0014】
開示される技術の態様は、生産ラインの組立ておよび結果として得られる製造製品を追跡し、訓練し、かつ、漸進的に改善するための方法を提供することにより、従来の組立てラインプロセスフローの上記限界に対処する。改善は、動的視覚フィードバックまたは他のフィードバック、および指示を個々の組立て作業者に提供することによって実現され、また、いくつかの実施態様では、作業者フィードバックはエラーに基づいており、エラーは、それらに限定されないが、組立てエラー、役に立たないプロセスおよび/またはモーション、生産ラインにおける1つまたは複数のポイントで検出された粗悪な製品を含むことができる。
【0015】
開示される技術を実現することにより、例えば準実時間エラー検出に基づいて、個々のステーション(またはすべてのステーション)で提供される参照/指示情報を速やかに改定および変更することにより、手動実施態様方法のエラー修正の速度に対して、その速度を著しく改善することができる。本明細書において説明されているいくつかの実施形態は、ビデオの形態の参照/指示情報の使用を考察しているが、他のフォーマットも企図されている。例えば組立て/製造指示は、聴覚、視覚、テキストおよび/または触覚キューとして、あるいは他の形態の参照として組立て作業者に提供することができる。一例として、聴覚指示情報は、口頭の指示または他の聴覚インジケータを含むことができる。視覚組立て指示情報は、拡張現実感(A/R)または仮想現実感(V/R)システムの使用などのビデオまたは動画化フォーマットを含むことができる。いくつかの態様では、視覚組立て指示は、組立てラインの所与のステーションにおける、作業者によるワークピース(またはツール)の取扱い方法に関する例を提供する動画として提供することができる。さらに、いくつかの態様では、組立て/製造指示は、例えば、ロボット組立て作業者または機械組立て作業者が受け取り、かつ、実現することができる機械命令を含むことができる。本明細書において使用されている作業者という用語は、製造製品を組み立てるモーションを使用する人間、ロボットまたは機械を意味することができる。さらに、作業者という用語は、人間の作業者がロボットまたは機械器具と共に作業し、あるいは人間作業者がロボットまたは機械器具によって支援される実例の場合のように、人間支援製造実施態様を包含している。
【0016】
組立て/製造指示が参照/指示ビデオとして提供される実例では、このようなビデオは、時によっては標準作業プロトコル(SOP)と呼ばれることがある。開示される技術のシステムは、最小限のハードウェア要求事項、例えば個々の作業者のためのビデオカメラおよびディスプレイの使用などのため、効果的に展開することができ、一方、機械学習訓練、更新およびエラー伝搬は、例えば計算クラスターまたはクラウド環境におけるような集中型計算資源で実施することができる。
【0017】
いくつかの態様では、ビデオ指示情報は、拡張現実感表示の一部として、一人(1つ)または複数の作業者に提供することができる。すなわち指示、または標準組立て/製造方法からの偏差は、拡張現実感を使用して作業者に伝えることができ、表示は、強化されたビデオ、動画化された図形、および/または記録されたシナリオを表すビデオデータの混合として提供される。一例として、拡張現実感表示は、組み立てられているワークピース、および/または組立て/製造プロセスで使用されているツールの実時間フィードに対する動画化または図形オーバーレイとして提供される指示または手引きを提供することができる。
【0018】
いくつかの実施態様では、開示される技術のシステムは、生産ラインの様々な作業者ステーションに配置された1つまたは複数のビデオキャプチャデバイスまたはモーションキャプチャデバイスを含む。キャプチャデバイスは、その特定のステーションにおける作業者のモーション/部品、デバイス、材料または他のツール(「コンポーネント」)との相互作用を記録するように構成される。いくつかの態様では、作業者モーションはビデオ記録を使用してキャプチャできるが、他のモーションキャプチャフォーマット、例えば作業者モーションおよび/またはツールまたは製造製品との作業者の相互作用を表す3-Dポイントクラウドの使用も企図されている。さらに、特定のステーションに対する一人または複数人の熟練者のモーション、およびそのステーションにおけるコンポーネントとのその熟練者の相互作用を記録することにより、ステーション毎の参照ビデオを作り出すことも可能である。このビデオは、その熟練者の行為の単一の例から、または複数の例から作り出すことができる。熟練者毎のモーション経路を引き出すことができ、また、何人かの熟練者またはいくつかの例が使用される実施形態では、引き出されたモーション経路のセット(例えば平均)に対する計算を実施して、特定のステーションのための参照ビデオを作り出すことができる。参照ビデオは、その特定のステーションで実施されるべきモーション経路のデジタルまたは動画化表現の形態であってもよい。熟練者とは、特殊技術を有する誰か、または手引きが提供されている特定の組立てステップに関して知識がある誰かを意味することができることに留意されたい。
【0019】
いくつかの実施形態では、生産ラインの様々な作業者ステーションに配置されたビデオキャプチャデバイスまたはモーションキャプチャデバイスは、組立てエラーを計算するために使用することができる、それぞれのステーションにおけるワークピース/コンポーネント/ツールの属性(例えば品質、引張り強さ、欠陥の数)もキャプチャできる。
【0020】
作業者のそれぞれのステーションにおけるその相互作用をキャプチャすることにより、理想/熟練作業者相互作用/ワークフローを表すベースライン(グラウンドトルース)モデルとのキャプチャされた相互作用を比較することによって作業者エラーを検出することができる。すなわち理想化された相互作用モデルからの作業者偏差を使用して、例えば異なるステーションに提供された作業者指示/手引きを改定することにより、組立てチェーンにおける様々な場所で修復することができる組立てエラーを計算することができる。さらに、個々のステーションにおけるコンポーネントの品質をキャプチャし、かつ、そのステーションのためのベースラインコンポーネントに対して比較することも可能である。またベースラインコンポーネントからのコンポーネントの偏差を使用して、特定のステーションにおけるコンポーネントに品質等級を割り当て、あるいは様々なステーションに提供された作業者指示/手引きを改定することによって修復することができる作業者/組立てエラーを計算することも可能である。
【0021】
組立て修正は、所望の実施態様に応じて様々な方法で実施することができる。いくつかの態様では、作業者変化/エラーを使用して、例えば部品を品質等級(例えばA、B、C、等々)に分類し、引き続いてこれらの部品を適切な生産ラインへ導くことによって分類を実施することができる。別の態様では、検出された組立てエラーを使用して所与のステーションにおけるプロセスを改定し、それにより品質を改善し、かつ、変化を小さくすることができる。すなわち検出された組立てエラーを使用して、指示または手引きを同じステーションに自動的に提供することができ、それにより例えばそのステーションでもたらされたエラーを訂正することができる(例えばイン-ステーションリワーク)。NLPを使用して、作業者に対する指示または手引きを処理することができる。例えばNLPを使用して、口頭指示をテキスト形態に変換することができ、あるいはテキスト指示を口頭形態に変換することができる。
【0022】
例えば組立てエラー検出を使用して、エラーが生じることが分かっている所与のステーションに提供された作業者指示またはビデオに対する更新/変更を駆動することができる。一例として、エラー/偏差が第1のステーションで作業している第1の作業者によるものであることが識別されると、例えば第1のステーションの表示デバイスを介してその第1の作業者に提供された組立て指示を改定し、それにより第1のステーションを離れる製造物品に関連するエラー分散を小さくすることができる。
【0023】
別の態様では、検出された組立てエラーを使用して、後続するステーション組立てを改定することができ、それによりステーション分散を克服することができる。すなわちエラー検出を使用して、上流側の作業者に起因するエラーに基づいて、新しい/更新された組立て手引きの下流側伝搬を自動的にトリガすることができる。例えば第1の作業者によって実行されたモーションに対するエラー分散を使用して、第1のステーションから下流側の第2のステーションと関連する第2の作業者に提供される組立て指示を調整することができる。
【0024】
さらに別の態様では、すべてのステーションにわたって検出されたエラー分散を前方へ伝搬させることができ、それにより残りの下流側組立てチェーン全体の進行にわたって、全体または部分的なリワークを実施することができることを保証することができる。すなわち一人(1つ)または複数の下流側作業者に提供された組立て指示を調整することにより、1つまたは複数のステーションにわたって生成されるエラーを修復し/低減することができる。一例では、第2のステーションの第2の作業者によって、また、第3のステーションの第3の作業者によって引き続いて実行される作業を介して、すなわち第2および第3のステーションに提供される組立て指示を調整することにより、第1のステーションの第1の作業者に起因する製造物品のエラー分散を修復することができる。
【0025】
別の例では、複数のステーションにわたって累積されたエラー分散を1つまたは複数の後続するステーションによって小さくすることができる。例えば第3のステーションおよび第4のステーション(例えばそれぞれ第3の作業者および第4の作業者)に提供される組立て指示を調整することにより、第1のステーションおよび第2のステーションにわたって累積された製造物品のエラー分散を引き続いて修復することができる。
【0026】
組立てフローにおける個々の作業者/作業者ステーションをネットワークノードとして取り扱うことにより、機械学習モデルを使用して、個々のノード(ステーション)における組立て分散の低減を介してエラーを最小化することによって組立てプロセスを最適化することができる。個別のノード(作業者)分散を最小化し、また、実時間更新を実施して、前方エラー伝搬を軽減することにより、開示される技術のシステムは、最終製品に対する製造分散を著しく低減することができる。さらに、組立てワークフローにおける特定のセグメントからのエラー寄与を正確に定量化し、かつ、追跡することにより、製品品質または偏差量によって製品に等級を付け、かつ、分類することができる。したがって例えば製品品質に応じて、特定の品質分類の製品を異なる製造プロセスへ導き、あるいは異なる顧客へ導くことができる。
【0027】
機械学習/人工知能(AI)モデルを使用してエラー検出を実施することができ、および/またはステーション組立て変化を最適化するために必要な修正を実施することができる。一例として、機械学習モデルは、それらに限定されないが、最終製品定格、最終製品変化統計量、所望の最終製品特性(例えば組立て時間、使用された材料の量、物理特性、欠陥の数、等々)、ステーション特化コンポーネント定格、ステーション特化コンポーネント変化、所望のステーションコンポーネント特性を含む訓練データの複数のソースを使用して訓練することができる。さらに、展開された機械学習モデルは、エラー検出およびエラー定量化計算を実施するために使用される理想化モデルの中に正規の知識が表現され得るよう、熟練者または「マスター設計者」から提供される入力に基づいて訓練し、あるいは初期化することができる。
【0028】
当業者には理解されるように、機械学習に基づく分類技法は、開示される技術から偏差することなく、所望の実施態様に応じて変更することができる。例えば機械学習分類スキームは、隠れマルコフモデル、回帰型ニューラルネットワーク、畳み込みニューラルネットワーク(CNN)、強化学習、深層学習、ベイズ記号モデル、敵対的生成ネットワーク(GAN)、サポートベクターマシン、画像登録法、適用可能規則ベースシステム、および/または任意の他の適切な人工知能アルゴリズムのうちの1つまたは複数を、単独で、あるいは組み合わせて利用することができる。回帰アルゴリズムが使用される場合、それらは、それらに限定されないが、Stochastic Gradient Descent Regressorおよび/またはPassive Aggressive Regressor、等々を含むことができる。
【0029】
機械学習分類モデルは、クラスター化アルゴリズム(例えばMini-バッチK-平均クラスター化アルゴリズム)、推奨アルゴリズム(例えばMiniwise HashingアルゴリズムまたはEuclidean Locality-Sensitive Hashing(LSH)アルゴリズム)、および/または局所外れ値因子法などの異常検出アルゴリズムに基づくことも可能である。さらに、機械学習モデルは、Mini-batch Dictionary Learningアルゴリズム、Incremental Principal Component Analysis(PCA)アルゴリズム、Latent Dirichlet Allocationアルゴリズムおよび/またはMini-バッチK-平均アルゴリズム、等々のうちの1つまたは複数などの次元削減手法を使用することも可能である。
【0030】
いくつかの実施態様では、複数の異なるタイプの機械学習訓練/人工知能モデルを展開することができる。一例として、製造製品を最適化するべく、組立てラインプロセスを動的に調整するために、機械学習の一般的な形態を使用することができる。当業者には認識されるように、選択された機械化学習/人工知能モデルは、一組の組立て/製造指示を単純に含んでいるのではなく、組立てラインプロセス全体に関するフィードバック、および結果として得られる製造製品に対するその影響を提供し、また、組立てラインにおける下流側作業者ステーションに対する動的調整を提供し、それにより上流側作業者ステーションで生じる行為を補償するための方法である。このタイプの人工知能ベースフィードバックおよびフィードフォワードモデルは、本明細書においてはArtificial Intelligence Process Control(AIPC)と呼ばれている。いくつかの実施形態では、機械学習は、ターゲット化ゲート付き回帰型ユニット(GRU)モデルベース学習およびハウスドルフ距離最短化を利用して、可能回復経路の空間を効果的に探索し、それにより組立てプロセスの間にエラーを修正するための最適経路を見出す、模擬された環境における深層学習モデルに基づくことができる。さらに他の実施形態では、例えば機械学習アルゴリズムは、Long Short-Term Memoryモデルに基づくことができ、それにより組立てプロセスのビデオ入力を解析し、かつ、最終品質出力を予測することができる。さらに、機械学習モデルをNLPアルゴリズムの形態で使用して、作業者コンプライアンスおよび調整された指示の理解を最大化するために、音声へのテキストの変換またはテキストへの音声の変換などの、作業者ステーションへのフィードバックを調整することもできる。
【0031】
いくつかの実施形態では、機械学習を利用する計算モデルを使用して、手動組立てプロセスの間のエラーを修正することができる。
【0032】
目標対象は、処理手順によって定義される一連のステップを介して組み立てることができる。プロセスの間、公称対象の最終構成を得るためにはすべての残りの作業を改定する必要があることになる特定のステップkで不可逆エラーが生じ得る。いくつかの実施形態では、エラーを修正するための手法は、ステップkにおける欠陥のある目標対象を、同じステップkにおける公称対象に対して比較するステップ、またはステップkにおける欠陥のある目標対象をその最終構成の公称対象に対して比較するステップを含むことができる。これらの比較を使用して、欠陥のある目標対象の最終構成と公称対象の最終構成との間の偏差を最小化するために必要な上記一連のステップを決定することができる。いくつかの実施形態では、目標対象の品質メトリックを使用して、欠陥のある目標対象の修正を導くこともできる。
【0033】
一般的な数値手法は、ハウスドルフ距離アルゴリズムを使用することによって問題を解決することができ、それにより欠陥のある目標対象を組み立てるための一連のk個のステップが、公称対象をその最終構成に組み立てるための一連のステップに如何に類似しているかを決定することができる。欠陥のある組み立てられた対象における上記一連のk個のステップと、組み立てられた最終の公称対象における一連のステップとの間のハウスドルフ距離を計算によって最短化するためのいくつかの方法は、瞬時報酬公式化、多重報酬公式化、または遅延報酬公式化を介してMarkov Decision Process(MDP)を最適化することである。しかしながらこれらの公式化と関連する探索空間には、著しい量の計算資源が必要である。
【0034】
代替として、機械学習フレームワークは、強化学習を使用して、遅延報酬ポリシーエージェントと共に発展させることも可能である。強化学習フレームワークは、欠陥のある目標対象のエラーを修正するために必要な適切なステップをポリシーエージェントに決定させて、公称対象の性能メトリックと一致する性能メトリックを有する最終構成を得るように設計することができる。ポリシーエージェントに与えられる報酬は遅延され、ポリシーエージェントに報酬が支払われるのは、最終ステップが実行されたときのみである。
【0035】
いくつかの実施形態では、最適な/所望の製造製品のための設計を選択することができ、また、熟練作業者を展開して、選択された設計に従って製造製品を組み立てるために個々の作業者ステーションで実施される個々のステップを実施することができる。最適とは、結果として得られる製造製品におけるエラー、または何らかの他の基準を最小化する、結果として得られる製品の所望の性能および/または特性に基づくことができる(例えば製造製品が紙飛行機である場合、最適な紙飛行機は、所望の飛行目標を達成する紙飛行機であろう)。複数の画像化デバイスを使用して、作業者のモーションおよび作業者が組み立てている製造製品との作業者の相互作用をキャプチャし、それによりビデオ、画像および/または3Dポイントクラウドデータを生成することができる。キャプチャされたデータは、組み立てられている際の製造製品に対する関係における作業者の手座標、一方の手ともう一方の手の関係、および組み立てられている際の製造製品に対する指(およびいくつかの実施形態では指の関節)の関係などの詳細な情報を提供することができる。熟練作業者から収集されたデータは、最適な/所望の製造製品を組み立てるためのグラウンドトルースとして使用することができる。単一の例からのこのグラウンドトルースは、それはそれで、初期機械学習モデルの創出に使用するためには十分であり、あるいは追加データを収集することも可能である。例えば作業者のモーションの変化またはエラーが、結果として得られる製造製品に対して如何に影響を及ぼし得るかを理解するために、多くの作業者を展開して、最適な製造製品を組み立てる1つまたは複数のステップを実施することができる。これは、組立てラインにおける作業者ステーション毎に実施することができる。結果として得られる最終製品およびそれらのそれぞれの組立てプロセスの両方を、互いに対して、また、グラウンドトルースに対して比較し、それによりエラーおよび/または作業者のモーションの変化が製造製品の特性および/または性能に如何に影響を及ぼし得るかを決定することができる(例えば作業者の速度は、品質がより劣る飛行機をもたらし得る)。実際の組立てプロセス(すなわち人間、ロボットまたは機械が1つまたは複数のステーションでモーションを実施しているプロセス)の間に、作業者に基づいて収集されたデータは、本明細書においては「実際の訓練データ」と呼ばれることになる。実際の訓練データは、模擬されたデータで補足することができ、それにより、より豊富なデータセットを得ることができ、また、最適な製造製品を達成するための追加変形形態を提供することができる。「最適な」および「所望の」という用語は、本明細書においては交換可能に使用されることになることに留意されたい。
【0036】
いくつかの実施形態では、本明細書において考察されている異なるAI/機械学習/深層学習モデルは、Artificial Intelligence Process Control(AIPC)を達成して製造物品の組立てを最適化するために、以下で説明される特定の順序で展開することができる。AIPC深層学習モデルを実現することができる例示的プロセスは、
図1に関連して(例えばAIPC深層学習モデル112に関連して)、また、
図2に関連してさらに詳細に考察される。AIPC深層学習モデルを実現するために使用することができるハードウェアシステムおよび/またはデバイスの例は
図3に提供されており、また、対応する説明も以下に提供されている。
【0037】
第1に、CNNを組立てラインプロセスに使用して、個々の作業者ステーションにおいて、作業者の手の特徴および異なる構成の製造物品の特徴を分類することができる。
【0038】
第2に、いずれもCNN分類からの所望の結果を達成するために、また、定義済みの望ましい結果のために、強化学習(RL)およびRLエージェントを使用し、かつ、報酬を与えることができる。RLエージェントは、監視しても、あるいは監視しなくてもよい。
【0039】
第3に、Generative Adversarial Networks(GAN)を使用して、対立するRLエージェント間で選ぶことができる。GANは、ノードとしてGANに入力するRLエージェントの選択を人間にのみ頼る最小の人間監視を含むことができる。
【0040】
第4に、RNNは、フィードバックおよびフィードフォワードシステムを作り出すための入力ノードとして勝利RL(winning RLs)を取ることができ、したがって学習を連続的なものにすることができ、また、学習を監視しなくてもよい。
【0041】
これらの4つのAI/機械学習モデルの実施態様は、以下でより詳細に考察される。
【0042】
いくつかの実施形態では、実際の訓練データは、組立てプロセスにおける関連するデータを分類し、例えば作業者ステーション毎の個々の組立てステップで使用された指/手、組み立てられている製品のうちの、作業者の指が任意の時間点および空間で触れた部分、および任意の時間点および空間における、組み立てられている製造製品の形状または構成を分類するためにCNNに入力することができる。
【0043】
さらに他の実施形態では、手のモーションは追跡しないが、製造製品の組立てパターンの様々な変化を表すデータを収集することも可能である(例えば製造製品が折り畳まれた紙飛行機である場合、折畳み順序を変更すること、折畳み変化を実現すること、および/または潜在的エラーを導入することに基づいてデータを収集することができ、製造製品が衣類物品である場合、例えば縫合せ順序、縫合せ変化を実現すること、および/または潜在的エラーを導入することに基づいてデータを収集することができる)。このデータは模擬することができ、および/または実際の訓練データから収集することができる。結果として得られる製造製品およびそれらのそれぞれの組立てプロセスを比較し、それによりエラーまたは組立てパターンの変化が製造製品の特性および/または性能に如何に影響を及ぼすかを決定することができる。
【0044】
いくつかの実施形態では、キャプチャされたデータ(例えばビデオおよび組立てプロセスの手の追跡、等々)を使用して、最終アウトプットの品質が予測される。この品質予測により、キャプチャされたデータを使用して、製造プロセスの間、製品の品質を手動で検査する必要なく、製品を品質ビンに分類することができ、また、下流側で修正行為を取ることができる。
【0045】
いくつかの実施形態では、システムは、目標対象の手動組立てに的を絞ることができ、手動組立てでは、組立てプロセスは、作業者が一組の指示毎に目標対象に対して異なる作業を実施するいくつかの離散ステップを含む。システムは、作業者の手の位置の時間シリーズと目標対象の最終品質との間の相関を確立する深層学習モデルを使用している機械学習フレームワーク(すべての作業者行為全体)を使用して構築することができる。いくつかの実施形態では、モデルは2つのニューラルネットワークからなっていてもよく、第1のニューラルネットワークは、3D環境における作業者の手の位置データを抽出するために使用され、また、第2のニューラルネットワークは、手の位置データから不必要な要素を取り除いて目標対象の性能の最終品質と相関させるために使用される。
【0046】
いくつかの実施形態では、第1のニューラルネットワークは、ビデオ収集システムを使用して、作業者が目標対象の組立てと関連して実施する個々の離散ステップに対応する異なるノードビデオにおける組立てプロセスの間、作業者の手のビデオを記録することができる。例えば作業者は、異なる場所に配置され、また、組立てプロセスを同時に記録するように構成されたいくつかのカメラを使用して組立てプロセスを実施することができる。これらのカメラを使用して、作業者の手の予め規定された位置で、複数回にわたってビデオをキャプチャすることができる。次に、これらのビデオを処理して、目標対象の組立てプロセス全体を表すいくつかの画像またはランドマークフレームを抽出することができる。これらのランドマークフレームを使用して、組立てプロセスの間、作業者の手および指の位置またはキーポイントの画定を促進する手の追跡情報を抽出することができる。
【0047】
いくつかの実施形態では、手の追跡情報を抽出するために、バウンディングボックス予測アルゴリズムおよび手キーポイントディテクターアルゴリズムを適用することができる。詳細には、バウンディングボックス予測アルゴリズムは、閾値画像分割を使用して、組立てプロセスからのランドマークフレームを処理し、それにより作業者の手のためのマスク画像を得ることを含むことができる。手は、ブロブ検出(blob detection)を使用してマスクの上に位置付けることができる。バウンディングボックス予測は、マスク画像を使用して、ボックスが少なくとも手のリストポイントまでの手の位置の形状の最も高い点を含むよう、作業者の手の各々の周りにボックスを形成する。次に、バウンディングボックスおよびそれらの対応するランドマークフレームが手キーポイントディテクターアルゴリズムに供給される。
【0048】
手キーポイントディテクターアルゴリズムは、作業者の手の特定のキーポイントを検出することができる機械学習モデルを含むことができる。手キーポイントディテクターアルゴリズムは、ランドマークフレームの中で見ることができるキーポイントだけでなく、関節、視点、対象、手の相互作用のためにフレームから閉塞されるキーポイントを予測することができる。異なる手の位置が異なる閉塞点を異なるフレームに生成するため、あるフレームにおける特定の閉塞点は、他のフレームでは閉塞され得ない。手キーポイントディテクターは、特定のレベルの確実性で閉塞されるキーポイントの場所を予測する。しかしながら閉塞されるキーポイントの場所の予測は、異なる手の位置に対して同じキーポイント場所が記録されることになり得る。手動組立てプロセスのステップの間、作業者の手を画定している手キーポイントは、次に第2のニューラルネットワークに提供される。
【0049】
いくつかの実施形態では、第2のニューラルネットワークを使用して、組み立てられた対象の最終状態の品質が予測される。いくつかの実施形態では、ニューラルネットワークは、Long Short-Term Memory(LSTM)モデルに基づくことができる。LSTMは、順番に配列され、相俟って最終対象の組立てプロセス全体を表すいくつかのセルを有している。LSTMセルへの入力は、LSTMセルによって表される組立てプロセスの特定のステップにおける作業者の作業に対応する手キーポイントデータであってもよい。LSTMにおける個々のセルは、先行するセルからの情報を記憶するべきであるかどうかを決定し、更新する値を選び、セルに対する更新を実施し、出力する値を選び、次に、選ばれた値のみをセルが出力するよう、値をフィルタリングする。LSTMは、Adamオプティマイザーまたは他の適合学習率最適化アルゴリズムを使用して訓練された、1つのモデルに対するシーケンスであってもよい。ニューラルネットワークは、LSTMフレームワークを使用して、手動組立てプロセスから抽出された入力データを相関し、それにより最終製品の品質測値を決定する。
【0050】
いくつかの実施形態では、目標対象のための組立てプロセスを表すビデオおよび手追跡情報、すなわちモデルを訓練するために使用される入力データは、単一の一組の組立て指示を使用して複数の目標対象を組み立てるための組立てプロセスを実施する複数の作業者から収集することができる。作業者によって組み立てられた目標対象を制御された環境で使用して、組み立てられた対象の性能に対する対応する品質測値、すなわちモデルを訓練するために必要な出力データを収集することができる。
【0051】
いくつかの態様では、機械学習モデルを生成するために使用される訓練データは、模擬されたデータからのもの、実際の訓練データからのもの、および/または熟練者のグラウンドトルース記録からのものであってもよく、それらは、組み合わせたものであっても、あるいは個別であってもよい。いくつかの実施形態では、模擬されたデータ結果を使用して機械学習モデル、例えば(それには限定されないが)Reinforcement Learning(RL)エージェントを構築することができる。他の実施形態では、実際の訓練データを使用して機械学習モデル、例えば(それには限定されないが)Reinforcement Learning(RL)エージェントを構築することができる。RLエージェントは、良好な/所望の結果を達成すると報酬が支払われ、また、悪い結果に対しては処罰される。
【0052】
いくつかの実例では、多くのRLエージェント(そのうちのいくつかは実際の訓練データに基づき、また、いくつかは模擬されたデータに基づく)は、縦列をなして働くように展開することができ、また、累積授与を最大化するように構成することができ、例えば理想モデル/例からの最も小さい偏差を有する製造製品を組み立てる。RLエージェントに報酬を支払うことができる例示的結果は、可能な限り少ないステップで完全な製造製品を完成すること、製造製品を達成するために必要な材料の量または時間を低減することを含む。模擬されたデータに基づくRLエージェントおよび実際の訓練データに基づくRLエージェントを使用して、最適な/所望の製造物品をもたらす最適モーションパターンおよび/または最適組立てパターンを決定することができる。
【0053】
これらの2つのグループのRLエージェント(例えば実際の訓練データに基づいて作り出されたRLエージェント、および模擬されたデータに基づいて作り出されたRLエージェント)は、それらはいずれも最適な/所望の製造製品を作る行為に対して報酬が支払われているため、ここでは共同して働くことができ、さらには競合することができる。いくつかの実施形態では、最適な製造製品のための最適な組立てパターンをもたらした模擬ベースのRLエージェントから得られたデータを使用して、実際の訓練データセットのための可能性空間を小さくすることができる。例えば模擬されたRLエージェントを使用して最適な組立てパターンを決定することができ、次に、最適ではない組立てパターンに対してではなく、最適な組立てパターンに対してのみ実際の訓練データを収集することができる。実際の訓練データの収集にのみ、あるいは最適な組立てパターンにのみ的を絞ることにより、より少ない訓練データを収集することができ、および/またはより多くの実際の訓練データを収集するためのより大きい容量を達成することができるが、それは最適な組立てパターンに対してのみである。
【0054】
報酬は時によっては対立することがあるため、強化学習のみに頼って組立てラインを最適化することには限界がある。例えば製品の組立てにおいては、偽りの動き(例えば折畳んで、直ちにその折畳みを元に戻す、あるいは縫い目を追加して、直ちにその縫い目を取り除く)が最も少ない場合に対して、いくつかのRLエージェントに報酬を支払うことができ、一方、速度に対して、他のRLエージェントに報酬を支払うことができる。速度に対して報酬が支払われているRLエージェントは、組立てプロセスにおける下流側で必要な修正がより少ないため、より多くの偽りの動きがより速い組立て時間をもたらすことを決定することができる。このような実施態様トレードオフ決定をなすことは、人間が容易に判断することができるようなものではない。経験および大量の例を有している場合であっても、人間には、異なる方法で作業する異なる作業者による最終結果を把握することは如何に微妙なものであるかを理解する計算能力が依然として欠けている。
【0055】
これらの対立するRLエージェント最適化を解決するために、GANを展開して決定者として作用させることができる。対立は、実際の訓練データに基づくRLエージェント同士の間、模擬されたデータに基づくRLエージェント同士の間、および/または実際の訓練データに基づくRLエージェントと模擬されたデータに基づくRLエージェントとの間であってもよい。
【0056】
いくつかの実施形態では、GANは、さらに多くの頑丈なニューラルネットワークを作り出すために、RLエージェントの各々を試験し、かつ、その結果を記憶することができる。GANは、RLエージェントを取り、また、ゼロ-サムゲームにおける勝者および敗者をもたらすモデルを使用することによって動作する。GANには「ジェネレータ」および「ディスクリミネータ」が存在している。ジェネレータは、この場合、対立するRLエージェントからの報酬データを記憶することになり、また、ディスクリミネータは、これらのうちのどちらが所望の製造製品を作り出すタスクに対して最も関連しているかを評価することになる。GANは、ノード(またはニューロン)の深層ネットワークを使用して、ノードに重みを付ける方法を決定する。個々のRLエージェントは、個々のRLエージェントが既に最適決定を下していることを信じているため、対立しているRLエージェントのうちのどちらが実際に最も関連する選択をなすかを決定することはGANの役割であり、また、ディスクリミネータは、それに応じて重みを調整する。対立するRLエージェント同士の間でゼロ-サムゲームが開始されると、対立するRLエージェント同士の間で勝者のグループが生成され、これらの勝者のみが、組立てラインにおけるワークフローを最適化するために使用される機械学習モデルのために使用されることになる。勝利RLエージェントを決定するために大量のデータが生成されることになる可能性があるが、結果は、入力ノードとして使用される、これらの勝者を作り出し、かつ、見出すために使用されるものよりもはるかに貧弱である。
【0057】
GAN戦争に生き残り、かつ、適切に報酬が支払われたRLエージェントが決定されると、いくつかの実施形態では、それらをRecurrent Neural Network(RNN)と呼ばれる別のAIシステムに入力することができる。RNNは、それがDeep Learning Neural Networkであり、入力データの様々な形態の重み付けを介して最終結果が最適化される点で、CNNに対して多くの類似性を有している。1つの相違は、入力から出力まで線形プロセスであるCNNとは異なり、RNNは、結果として得られる出力、さらには内部ノードを新しい訓練情報としてフィードバックするループであることである。RNNは、GRUなどのフィードバックシステムおよびフィードフォワードシステムの両方である。
【0058】
いくつかの実施形態では、機械学習フレームワークは、ターゲット化GRUモデル-ベース学習を利用して構築することができる。GRUモデルは、その予測能力および比較的短い訓練時間のため、強化学習の代わりに選ぶことができる。GRUは、メモリに記憶するべき、あるいは状態を更新するべき観察と、忘れ去るべき、あるいは状態をリセットするべき観察との間を区別するためにRNNに使用される。
【0059】
いくつかの実施形態では、GRUモデルは、目標対象を構築するために必要な組立てステップの数に対応するいくつかのGRUセルから構成することができる。組立てステップの数のうちの1つを表す個々のGRUセルは、いくつかの入力パラメータおよび隠れ状態出力を有することができる。組立てプロセスにおける最終ステップを表すGRUセルは、目標対象を出力することになる。モデルの出力は、公称対象からの目標対象の偏差である。この偏差は、目標対象から公称対象までのステップ方式ハウスドルフ距離、および公称対象の最終構成の性能メトリックを使用して計算することができる。個々のGRUセルは、リセット、更新および新しいゲートによって画定される。GRUニューラルネットワークは反復して訓練され、それによりGRUニューラルネットワークを特定の副題の解決に向かってバイアスさせ、また、GRUのための一組の重みを識別する。例えば反復毎に、後続するステップにおける組立てプロセスを完了するためにいくつかの予測(特定のステップにおける可能なエラー毎に1つの予測)が生成される。さらに、修正された組立てプロセスの対応する予測された距離測度を生成することができる。これらの予測された組立てプロセス完了は、仮想表現システム、および「グラウンドトルース」距離測度を得るために計算されたそれらのステップ方式ハウスドルフ距離の中で描写することができる。「グラウンドトルース」と予測された距離測度の差を計算してモデルにフィードバックすることができ、そのネットワーク重みは、次の反復を生成する後方伝搬を介して調整される。このプロセスは、GRUのための上記一組の重みが識別されるまで継続することができる。いくつかの実施形態では、確率的勾配降下法(stochastic gradient descent method)を使用して、欠陥のある目標対象を修正し、また、満足すべき最終構成を得るために必要なステップを引き出すことができる。
【0060】
いくつかの実施形態では、処理中の目標対象のパラメータコンピュータ支援設計および製図(CAD)モデルなどのシミュレーションを生成して、機械学習モデルを開発し、かつ、検証することができる。CADシステムは、処理中の目標対象の現在の状態に対応する局所座標フレーム、および個々の組立てステップを表す入力パラメータを使用することができる。処理中の目標対象の局所座標フレームおよび入力パラメータを使用することにより、CADシステムは、組立てステップ毎に寸法情報を決定することができる。CADシステムは、次に、個々のステップにおける出力の構成を表す三次元CADモデルを生成することができる。CADシステムは、組立てプロセスにおけるすべてのステップが実行されるまでこのプロセスを継続することができ、また、組み立てられた対象の最終構成のCADモデルを出力することができる。CADシステムに様々な入力パラメータを提供することにより、異なる構成のCADモデルを生成することができる。長さまたは幅などの特定の範囲の入力基準を有する一組のCADモデルを得るために、この入力基準の統計的なサンプルをCADシステムに提供して、上記一組のCADモデルを生成することができる。
【0061】
CADモデルは、可変レベルの詳細および知的要素であってもよいが、訓練されたモデルおよびシステムは、とりわけより低い詳細CADシステムと共に動作するように設計され、それにより非計算的に高価な方法における膨大な数の例を生成することができ、また、訓練されたモデルおよびプロファイリングのための十分な表面形態学詳細を提供することができる。いくつかの実施形態では、参照されるCADシステムは、Finite Element Analysis(FEA)または基本表面モデル化ツールと対にすることができ、それにより表面の構造解析を生成することができる。このデータは、モデル訓練および解析のための追加品質スコアとして使用することができる。
【0062】
いくつかの実施形態では、CADシステムは、モデルからの例の要求に応じて、あるいは追加探究データの必要に応じて追加表面モデルを生成することができるよう、モデル訓練に組み込むことができる。この手法は物理的観察と対であり、空間の膨大な量の物理的サンプルを必要とすることなく、予め訓練されたモデルを展開することができる。
【0063】
いくつかの実施形態では、組み立てられた対象の最終構成のCADモデルをシミュレーションに使用して性能メトリックを生成することができる。組み立てられた対象の最終構成のCADモデルを使用することにより、シミュレーションは、数値および計算方法を利用して性能メトリックを生成することができる。
【0064】
Artificial Intelligence Process Control(AIPC)のリアルワールドアプリケーションは、組立てラインにおける、既に自分のタスクを完了した作業者へのフィードバックの提供(例えばビデオ指示を自動的に修正することによって)、ならびに組立てラインにおける下流側の、未だ自分のタスクを完了していない作業者への指示の提供(これも例えばビデオ指示を自動的に修正することによって)を含む(「フィードフォワード」)。このフィードバック-フィードフォワードシステム、すなわちAIPCは、本明細書において説明されているAI手法を、いくつかの実施形態では、本明細書において説明されている特定の順序で使用して達成することができ、したがって組立てライン上の作業者は、追加人間監視を必要とすることなく、結果として得られる製造製品を最適化する選択をなすことができる。
【0065】
いくつかの実施形態では、これは、単にRNNへの上記システムの圧縮、および1つまたは複数の製造製品を作り出すプロセスの間、成功または失敗の2つの方法におけるあらゆる動きの観察を含む。個々の動きは訓練として働く。RNNの出力ノードが最適ではない場合、ネットワークは、異なる選択をなすよう、組立てラインにおける実際の個人にフィードバックすることができ、また、RNNの多くのノードおよび層を通る経路では、重みは、重み付けし直すことができ、また、出力には、成功または失敗のいずれかのラベルが振られることになる。プロセスが反復すると、重みは、自身でその精度を改善する。さらに、ネットワークは、組立てを実施する個人が働いていない場合であっても、何が働いていて、何が働いていないかを学習することができる。これは、訓練セットを増加させる。また、それは、組立てプロセスの異なる段階における調整の実施を許容する。いくつかの事例では、任意の所与の瞬間に、特定の特性を有する製造物品を製造する最良の方法は、開始点に戻ることではなく、プロセスの進行に応じて指示を調整することであることが見出され得る。この場合、RNNは、最適な製造製品のために常に最適化しており、また、生産ラインの作業者ステーションにおける、既に自分のタスクを実施した個々の作業者にフィードバックを提供し、また、生産ラインの作業者ステーションにおける、未だ自分のタスクを実施していない作業者に情報をフィードフォワードするべく学習する。
【0066】
図1は、開示される技術のいくつかの態様による、生産ライン展開を実現するための例示的プロセス100のフローチャートを概念的に図解したものである。
図1のプロセスはステップ102で開始され、生産展開が開始される。例示的生産ラインのワークフローは、典型的には、ワークピース(製品)が組み立てられ、あるいは製造される複数の作業者ステーション(ノード)を含む。先行するノードにおける作業が完了した後にのみ、個々の後続するノードの作業が開始されるよう、様々なノードを逐次方式で編成することができる。
【0067】
ステップ104で、1つまたは複数の参照ビデオが生成され、および/または更新される。上で説明したビデオを使用して、特定のノード(本明細書においては作業者ステーションとも呼ばれる)に製造/組立て指示を提供することができる。すなわちワークフローにおける個々のノードは、その特定のノードに対応する製造ワークフローにおけるステップを完了する方法の手引きを引き渡す参照ビデオを備えることができる。
【0068】
ステップ106で、ステップ104で生成されたビデオの各々がそれぞれのステーション/ノードに展開される。一例として、所与のワークフローは10個のノードを含むことができ、その各々は、それぞれの異なる/独自の参照ビデオを有している。他の実施態様では、ビデオの数は、ノードの総数より少なくてもよい。実施態様に応じて、様々なステーション/ノードに展開される参照ビデオは固有であってもよく、あるいは同様の手引き/指示を提供することができる。以下でさらに詳細に考察されるように、参照ビデオの内容は動的であってもよく、また、常に更新/増補することができる。
【0069】
ステップ108で、モーションの連続記録が個々のステーション/ノードでキャプチャされる。モーション記録から得られるモーションデータは、ワークフローにおけるそれらのノード/ステーションにおけるワークピース/コンポーネント/ツールとの作業者の相互作用を記述することができる。すなわち個々のノードでキャプチャされるモーションデータは、製品組立てまたは製造の特定の部分に対応する1つまたは複数の作業者行為を表すことができ、また、そのノードと関連する参照ビデオによって提供される指示に対応し得る。いくつかの実例では、モーションキャプチャは、ビデオデータのキャプチャ、すなわちそのステーションにおける作業者の行為のすべてまたは一部の記録を含むことができる。他の実施形態では、モーションキャプチャは、例えば3Dポイントクラウドの記録を含むことができ、モーションは、画像キャプチャデバイスの視野における1つまたは複数の特定のポイントに対して記録される。作業者の行為ならびにコンポーネントの属性(例えばコンポーネント品質、引張り強さ、欠陥の数)の両方を、ワークフローにおける個々のノード/ステーションでキャプチャすることができる。
【0070】
ステップ110で、プロセス方法解析偏差を計算することができ、ステップ108におけるステーションのうちの1つまたは複数に対してキャプチャされたモーションデータを解析して、例えば対応するステーションの理想化されたモーションプロファイルを含む(または表す)比較モデルからのあらゆる偏差を識別することができる。
図1に図解されているように、ステップ110は、例えば比較モデルからのモーション偏差を識別/分類し、かつ、組立てまたは製造プロセスが影響を及ぼされ得た程度に関する推測を実施するように構成することができるAIPC深層学習モデルを利用することができる(ステップ112)。比較は、ステーションレベル毎に、および/または総合プロセスレベルで実施することができる。また、解析は、個々のステーションにおけるコンポーネントの属性、またはベースラインからのコンポーネントの偏差、およびステーションのモーション偏差がコンポーネントの品質に及ぼす影響の程度を考慮することも可能である。
【0071】
ステップ112で呼ばれるAIPC深層学習モデルは、例えば所与のステーション/ノードに対する理想的な、または品質が制御された組立て/製造相互作用の例を含むことができる様々なタイプの訓練データの収集に基づくことができる。また、AIPC深層学習モデルは、プロセス100(ステップ111)を使用して製造された特定の製品に関する顧客からのフィードバックによって、また、プロセス100(ステップ113)を使用して製造された特定の製品の品質管理検査からのフィードバックによって、ドメイン/産業情報115によって提供されるデータを使用して増補する(または調整する)ことができる。AIPC深層学習モデルは、分散ハードウェアモジュールおよび/またはソフトウェアモジュールを含む様々な計算システムを使用して実現することができることを理解されたい。一例として、AIPC深層学習モデルは、組立てラインに展開され、かつ、様々なAI/機械学習モデルおよび/または分類子を実現するように構成された1つまたは複数のシステムに結合される複数の画像キャプチャデバイスおよび表示デバイスを含む分散システムを使用して実現することができる。
【0072】
ステップ110で比較モデルからの偏差が検出され/識別されると、ステップ114で、AIPC深層学習モデル112を使用して自動調整を生成することができる。上で考察したように、ビデオ調整は、ワークフローの1つまたは複数のステーションにおける製造/組立て品質を改善することを目的とすることができる。例えば作業者に提供される指示または手引きを、エラーを低減し、あるいはエラーが発生した時点で修復する方法で変更するために、例えばエラーが発生することが分かっている(または予測される)所与のノード/ステーションにビデオ調整を適用することができる。他の実施態様では、例えば製造ワークフローが完了する前にエラーを修正するために、エラーが発生したステーションから下流側にビデオ調整を適用することができる。さらに他の実施態様では、ワークフローが完了すると、ワークフロー全体を解析することができ、また、ワークフローにおける1つまたは複数のステーションに対して調整を実施することができる。
【0073】
いくつかの実施形態では、調整は、エラーが検出された直後に実時間で実施される。他の実施形態では、調整は、一定のインターバルで、またはワークフローが完了した後に実施される。
【0074】
いくつかの態様では、ステップ114で決定された自動調整は、ステップ117で要約し、および/または製品品質レポートとして提供することができる。例えばモーション偏差の解析(ステップ110)によってもたらされる調整を使用して、組立て/製造プロセスの理想化されたモデルから識別された偏差に基づいて、ワークピースの様々な品質態様を記述する1つまたは複数の品質レポートを作成することができる。
【0075】
図2は、本技術のいくつかの態様による、組立てエラー修正を容易にするために使用することができるエラー検出解析を実施するための例示的プロセス200を図解したものである。
【0076】
ステップ210で開始され、理想化されたビデオ手引きを使用して製造/組立てを改善するプロセスを実現することができる。ステップ215で、1つまたは複数の組立てステーションのビデオ追跡が実施される。ビデオ追跡は、所与のステーション/ノードにおける人間作業者の記録を含むことができる。いくつかの実施形態では、ビデオ追跡は、所与のステーション/ノードにおけるコンポーネント属性のキャプチャをさらに含むことができる。
【0077】
ステップ220~224で、組立てステーションから記録されたビデオを解析する処理が実施される。例えばいくつかの実施形態では、背景抽出を実施して、記録されたビデオ中の動き/コンポーネントを隔離することができる。いくつかの態様では、背景抽出が完了すると、処理されたビデオは、組立て作業者に関連するモーション/ビデオデータのみを含み(ステップ224)、また、含まれているコンポーネントは、対応する組立てステップ(ステップ220)に使用される。ステップ220で、追加処理を実施して、部品/コンポーネントを隔離することができる。プロセス200の線図によって図解されているように、ステップ220は、異常検出(ステップ221)、表面変化の検出(222)および部品分類および/または品質スコアリング(ステップ223)を含む追加処理操作を含むことができる。それには限定されないが、1つまたは複数のAI/機械学習アルゴリズムおよび/または分類子の使用を含む、様々な信号および/または画像処理技法を使用して、任意のビデオ処理ステップを実施し、それにより例えば異常検出(221)、表面変化の検出(222)を実施し、および/またはスコアリング/分類(ステップ223)を実施することができることを理解されたい。
【0078】
処理ステップ220~224が完了した後、プロセス200は、モーション比較が実施されるステップ226へ進行することができる。モーション比較(ステップ226)は、対応する理想化されたビデオ/モーションデータとの、1つまたは複数のステーション/ノードにおける一人(1つ)または複数のステーション作業者を含むプロセス組立てステーションビデオデータの比較を含むことができる。複数のステーション/ノードにわたって実施されるモーション比較を使用して、結果として得られる部品/コンポーネント品質の変化を推測/予測することができる。
【0079】
ステップ228で、様々な部品/コンポーネントに対する分散/品質分類を実施することができる。一例として、部品/コンポーネントは異なる品質層に分類することができ、および/またはそれらの関連する分類/相違に応じて、除去または修理のために識別することができる。
【0080】
分類/相違が決定された後、プロセス200はステップ230へ進行することができ、ステップ230で、プロセス/ワークフロー全体の解析が、例えばステップ226および228で決定されたステーション/ノード毎の分類/相違に基づいて実施される。ワークフロー全体を解析することにより、ビデオに対する自動調整を実施することができ、それにより、上で考察したように、検出された偏差/欠陥に対処することができる。
【0081】
図3は、開示される技術のシステムを実現するために使用することができる例示的処理デバイスを図解したものである。処理デバイス300は、マスター中央処理装置(CPU)362、インタフェース368およびバス315(例えばPCIバス)を含む。適切なソフトウェアまたはファームウェアの制御の下で動作すると、CPU362は、様々なエラー検出監視および開示される技術のプロセス調整ステップを実施する責任を負う。CPU362は、オペレーティングシステムおよび任意の適切なアプリケーションソフトウェアを含むソフトウェアの制御の下ですべてのこれらの機能を成し遂げることが好ましい。CPU362は、マイクロプロセッサのMotorolaファミリーからの、あるいはマイクロプロセッサのMIPSファミリーからのプロセッサなどの1つまたは複数のプロセッサ363を含むことができる。代替実施形態では、プロセッサ363は、AIPCシステム310の操作を制御するために特別に設計されたハードウェアである。特定の実施形態では、メモリ361(不揮発性RAMおよび/またはROMなど)もCPU462の一部を形成している。しかしながらメモリをシステムに結合することができる多くの異なる方法が存在している。
【0082】
いくつかの態様では、処理デバイス310は、画像処理システム370を含むことができ、あるいは画像処理システム370と結合することができる。画像処理システム370は、作業者の動きを監視し、また、モーションデータを生成することができるビデオカメラなどの様々な画像キャプチャデバイスを含むことができる。一例として、画像処理システム370は、ビデオデータをキャプチャし、および/または3Dポイントクラウドを出力し/生成するように構成することができる。
【0083】
インタフェース368は、典型的にはインタフェースカード(時によっては「ラインカード」と呼ばれることもある)として提供される。一般に、それらは、ネットワークを介したデータパケットの送信および受信を制御し、また、時によっては、ルータと共に使用される他の周辺装置をサポートする。提供され得るインタフェースは、とりわけ、Ethernetインタフェース、フレーム中継インタフェース、ケーブルインタフェース、DSLインタフェース、トークンリングインタフェース、等々である。さらに、高速トークンリングインタフェース、無線インタフェース、Ethernetインタフェース、Gigabit Ethernetインタフェース、ATMインタフェース、HSSIインタフェース、POSインタフェース、FDDIインタフェース、等々などの様々な極めて高速のインタフェースを提供することも可能である。一般に、これらのインタフェースは、適切な媒体との通信に適したポートを含むことができる。いくつかの事例では、それらは独立プロセッサをも含むことができ、また、いくつかの実例では揮発性RAMを含むことができる。独立プロセッサは、このような通信集約タスクをパケット交換、媒体制御および管理として制御することができる。通信集約タスクのための個別のプロセッサを提供することにより、これらのインタフェースは、マスターマイクロプロセッサ362による、経路指定計算、ネットワーク診断、安全保護機能、等々の効果的な実施を許容することができる。
【0084】
図3に示されているシステムは、本発明の1つの特定の処理デバイスであるが、本発明を実現することができる唯一のネットワークデバイスアーキテクチャでは決してない。例えば通信ならびに経路指定計算、等々を取り扱う単一のプロセッサを有するアーキテクチャがしばしば使用される。さらに、他のタイプのインタフェースおよび媒体をも使用することも可能である。
【0085】
ネットワークデバイスの構成に無関係に、ネットワークデバイスは、汎用ネットワーク操作のためのプログラム命令を記憶するように構成された1つまたは複数のメモリまたはメモリモジュール(メモリ361を含む)、および本明細書において説明されているローミング、経路最適化および経路指定機能のための機構を使用することができる。プログラム命令は、例えばオペレーティングシステムおよび/または1つまたは複数のアプリケーションの操作を制御することができる。移動度結合(mobility binding)、登録および関連表、等々などの表を記憶するように1つまたは複数のメモリを構成することも可能である。
【0086】
様々な実施形態の論理演算は、(1)汎用コンピュータ内のプログラム可能回路上で走る一連のコンピュータ実現ステップ、操作または手順、(2)特定用途プログラム可能回路上で走る一連のコンピュータ実現ステップ、操作または手順、および/または(3)相互接続機械モジュールまたはプログラム可能回路内のプログラムエンジンとして実現される。システム300は、記載されている方法のすべてまたは一部を実践することができ、記載されているシステムの一部であってもよく、および/または記載されている非一時的コンピュータ可読記憶媒体中の命令に従って動作することができる。このような論理演算は、プロセッサ363を制御するように構成されたモジュールとして実現することができ、それによりそのモジュールのプログラミングに従って特定の機能を実施する。
【0087】
開示されているプロセスにおけるステップの任意の特定の順序または階層は、例示的手法の例証であることを理解されたい。設計の好みに基づいて、プロセスにおけるステップの特定の順序または階層を再配置することができること、または図解されているステップの一部のみを実施することができることを理解されたい。ステップのうちのいくつかは同時に実施することができる。例えば特定の状況では、多重タスキングおよび並列処理が有利であり得る。さらに、上で説明した実施形態における様々なシステムコンポーネントの分離は、このような分離がすべての実施形態に必要であるものとして理解してはならず、また、説明されているプログラムコンポーネントおよびシステムは、一般に、単一のソフトウェア製品の中で一体に統合することができ、あるいは複数のソフトウェア製品にパッケージ化することができることを理解すべきである。
【0088】
上記の説明は、すべての当業者による、本明細書において説明されている様々な態様の実践を可能にするために提供されたものである。これらの態様に対する様々な修正は当業者には容易に明らかであり、また、本明細書において定義されている一般原理は、他の態様にも適用することができる。したがって特許請求の範囲には、それが本明細書において示されている態様に限定されることは意図されておらず、特許請求の範囲は、言語請求項と無矛盾の全範囲と一致し、単数形の要素に対する参照には、そうであることが明確に言及されていない限り、「1つであり、また、唯一である」ことを意味するのではなく、「1つまたは複数である」ことが意図されている。
【0089】
「態様」などの語句は、このような態様が主題技術に必須であること、またはこのような態様を主題技術のすべての構成に適用することを暗に意味していない。態様に関連する開示は、すべての構成に適用することができ、あるいは1つまたは複数の構成に適用することができる。一態様などの語句は、1つまたは複数の態様を意味することができ、また、1つまたは複数の態様は、一態様を意味することができる。「構成」などの語句は、このような構成が主題技術に必須であること、またはこのような構成を主題技術のすべての構成に適用することを暗に意味していない。構成に関連する開示は、すべての構成に適用することができ、あるいは1つまたは複数の構成に適用することができる。一構成などの語句は、1つまたは複数の構成を意味することができ、また、1つまたは複数の構成は、一構成を意味することができる。
【0090】
「例示的」という語は、本明細書においては、「例または例証として働く」ことを意味するべく使用されている。「例示的」として本明細書において説明されているすべての態様または設計は、他の態様または設計に勝る、好ましい、または有利なものとして必ずしも解釈されるべきではない。
開示の供述
【0091】
供述1:組立てラインにおけるワークフローを最適化するための方法であって、方法は、目標対象の組立てプロセスのあるステップにおいて、目標対象の組立てのエラーを検出するステップと、組立てプロセスのそのステップにおける目標対象と公称対象とを評価し、それにより比較を得るステップと、その比較に基づいて、目標対象と公称対象の間の偏差を最小化するために必要な一連のステップを決定するステップと、上記一連のステップに基づいて目標対象のための組立て指示を調整するステップとを含む。
【0092】
供述2:供述1の方法であって、目標対象は、組立てプロセスの上記ステップにおける公称対象に対して評価される。
【0093】
供述3:供述1から2のいずれかの方法であって、目標対象は、公称対象の最終構成に対して評価される。
【0094】
供述4:供述1から3のいずれかの方法であって、上記一連のステップは、偏差を最小化するように構成された機械学習モデルを使用して決定される。
【0095】
供述5:供述1から4のいずれかの方法であって、偏差は、目標対象の組立てプロセスを完了するための上記一連のステップと、公称対象の組立てプロセスを完了するための別の一連のステップとの間の類似性に基づいて決定される。
【0096】
供述6:供述1から5のいずれかの方法であって、偏差は、報酬公式化を介したMarkov Decision Process(MDP)を使用して最小化される。
【0097】
供述7:供述1から6のいずれかの方法であって、確率的勾配降下法を使用して、目標対象の組立てプロセスを完了するための上記一連のステップが引き出される。
【0098】
供述8:組立てラインにおけるワークフローを最適化するためのシステムであって、システムは、複数の画像キャプチャデバイスであって、画像キャプチャデバイスの各々は、目標対象の組立てプロセスの間、作業者の動きをキャプチャするために異なる位置に配置される、複数の画像キャプチャデバイスと、作業者に提供された手引きおよび指示を自動的に修正するように構成された組立て指示モジュールであって、上記複数の画像キャプチャデバイスに結合される、組立て指示モジュールとを含み、組立て指示モジュールは、該組立て指示モジュールによって、複数の画像キャプチャデバイスからモーションデータを受け取るステップであって、モーションデータは、作業者による、目標対象を組み立てるための一組のステップの実行に対応する、ステップと、上記一組のステップのうちのあるステップにおけるモーションデータに基づいて、目標対象の組立てにおけるエラーを決定するステップと、上記一組のステップのうちの上記ステップにおける目標対象と公称対象とを評価し、それにより比較を得るステップと、その比較に基づいて、目標対象と公称対象の間の偏差を最小化するために必要な一連のステップを決定するステップと、上記一連のステップに基づいて、作業者に提供される組立て指示を調整するステップとを含む操作を実施するように構成される。
【0099】
供述9:供述8のシステムであって、モーションデータは、目標対象を組み立てている間の作業者の手の動きのデジタル記録を含む。
【0100】
供述10:供述8から9のいずれかのシステムであって、組立て指示モジュールは、確率的勾配降下法を適用して上記一連のステップを引き出すようにさらに構成される。
【0101】
供述11:供述8から10のいずれかのシステムであって、組立て指示モジュールは、機械学習モデルを使用して上記一連のステップを決定するようにさらに構成され、機械学習モデルは偏差を最小化するように構成される。
【0102】
供述12:供述8から11のいずれかのシステムであって、偏差は、目標対象の組立てを完了するための上記一連のステップと、公称対象の組立てを完了するための別の一連のステップとの間の類似性に基づいて決定される。
【0103】
供述13:供述8から12のいずれかのシステムであって、偏差は、報酬公式化を介したMarkov Decision Process(MDP)を使用して最小化される。
【0104】
供述14:供述8から13のいずれかのシステムであって、組立て指示モジュールは、モーションデータから、目標対象の組立てを表す一組の画像を引き出し、また、上記一組の画像を評価して、目標対象を組み立てるための作業者による上記一組のステップの実行を識別するようにさらに構成される。
【0105】
供述15:その上に記憶された命令を含む非一時的コンピュータ可読媒体であって、命令は、1つまたは複数のプロセッサによって実行されると、目標対象の組立てプロセスのあるステップにおいて、目標対象の組立てにおけるエラーを検出すること、組立てプロセスの上記ステップにおける目標対象と公称対象とを評価し、それにより比較を得ること、その比較に基づいて、目標対象と公称対象の間の偏差を最小化するために必要な一連のステップを決定すること、および上記一連のステップに基づいて、目標対象のための組立て指示を調整することを含む命令をプロセッサが実行することになるように構成される。
【0106】
供述16:供述15の非一時的コンピュータ可読媒体であって、命令は、プロセッサが確率的勾配降下法を使用して上記一連のステップを引き出すことになるようにさらに構成される。
【0107】
供述17:供述15から16のいずれかの非一時的コンピュータ可読媒体であって、目標対象は、組立てプロセスの上記ステップにおける公称対象に対して評価される。
【0108】
供述18:供述15から17のいずれかの非一時的コンピュータ可読媒体であって、目標対象は、公称対象の最終構成に対して評価される。
【0109】
供述19:供述15から18のいずれかの非一時的コンピュータ可読媒体であって、命令は、偏差を最小化するように構成された機械学習モデルをプロセッサが使用して上記一連のステップを決定することになるようにさらに構成される。
【0110】
供述20:供述15から19のいずれかの非一時的コンピュータ可読媒体であって、偏差は、報酬公式化を介したMarkov Decision Process(MDP)を使用して最小化される。