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

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

▶ ファナック株式会社の特許一覧

特許7339063作業工程に関する学習を行う機械学習プログラム及び機械学習装置
<>
  • 特許-作業工程に関する学習を行う機械学習プログラム及び機械学習装置 図1
  • 特許-作業工程に関する学習を行う機械学習プログラム及び機械学習装置 図2
  • 特許-作業工程に関する学習を行う機械学習プログラム及び機械学習装置 図3
  • 特許-作業工程に関する学習を行う機械学習プログラム及び機械学習装置 図4
  • 特許-作業工程に関する学習を行う機械学習プログラム及び機械学習装置 図5
  • 特許-作業工程に関する学習を行う機械学習プログラム及び機械学習装置 図6
  • 特許-作業工程に関する学習を行う機械学習プログラム及び機械学習装置 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-08-28
(45)【発行日】2023-09-05
(54)【発明の名称】作業工程に関する学習を行う機械学習プログラム及び機械学習装置
(51)【国際特許分類】
   G06N 20/00 20190101AFI20230829BHJP
   G05B 19/418 20060101ALI20230829BHJP
   G06Q 10/0633 20230101ALI20230829BHJP
   G06Q 50/04 20120101ALI20230829BHJP
【FI】
G06N20/00 130
G05B19/418 Z
G06Q10/0633
G06Q50/04
【請求項の数】 10
(21)【出願番号】P 2019149818
(22)【出願日】2019-08-19
(65)【公開番号】P2021033418
(43)【公開日】2021-03-01
【審査請求日】2022-05-17
(73)【特許権者】
【識別番号】390008235
【氏名又は名称】ファナック株式会社
(74)【代理人】
【識別番号】100099759
【弁理士】
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【弁理士】
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100112357
【弁理士】
【氏名又は名称】廣瀬 繁樹
(72)【発明者】
【氏名】杉山 裕亮
【審査官】北川 純次
(56)【参考文献】
【文献】特開2006-331425(JP,A)
【文献】特開2013-074695(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06N 20/00
G06N 3/02-3/10
G05B 19/418
G06Q 10/06-10/0633
G06Q 50/04
(57)【特許請求の範囲】
【請求項1】
それぞれが少なくとも1種類の単位作業を含む複数の異なる作業工程に関する学習を行う機械学習プログラムであって、
プロセッサに、
前記複数の異なる作業工程に含まれる全ての前記単位作業を集計して、同一種類の複数の単位作業の有無を判断する作業集計工程と
前記同一種類の複数の単位作業の各々を構成する作業要素のうち、該複数の単位作業の間で共通する作業要素の個数に基づき、前記複数の単位作業が互いに類似するか否かを判断する類似判断工程と
互いに類似する第1の前記単位作業と第2の前記単位作業とを類似作業セットとして、共通の機械学習アルゴリズムにより、該類似作業セットの特性を入力データとする類似作業学習モデルを生成する第1の学習工程と
前記第1の単位作業を含む第1の前記作業工程及び前記第2の単位作業を含む第2の前記作業工程に関する学習を、前記類似作業学習モデルに基づいて行う第2の学習工程と、を実行させ、
前記第1の学習工程は、前記プロセッサに、
前記単位作業の内容情報を含む状態データであって前記特性を表す状態データと、前記状態データに対応する前記単位作業の行為が異常であるか否かを表すラベルデータとを、学習データセットとして取得するデータ取得工程と、
前記学習データセットに基づいて、前記単位作業の行為が異常になり易いか否かを判定するための閾値を算出する閾値算出工程と、
前記学習データセットを用いて、前記内容情報と前記閾値との相関性を表す前記類似作業学習モデルを生成する学習モデル生成工程と、を実行させる
機械学習プログラム
【請求項2】
前記作業集計工程は、前記複数の異なる作業工程に含まれる全ての前記単位作業を種類ごとに分類して複数の作業類を定義し、複数の前記単位作業を含む前記作業類が存在するか否かを判断する、請求項1に記載の機械学習プログラム
【請求項3】
前記第1の学習工程は、他の単位作業とは類似しない単位作業に対し個別に機械学習アルゴリズムを実行して、該類似しない単位作業の特性を入力データとする非類似作業学習モデルを生成し、
前記第2の学習工程は、前記複数の異なる作業工程に関する前記学習を、前記類似作業学習モデルと前記非類似作業学習モデルとに基づいて行う、請求項1又は2に記載の機械学習プログラム
【請求項4】
前記第1の学習工程又は前記第2の学習工程は、前記作業集計工程が前記同一種類の複数の単位作業の全てが互いに類似しないと判断した場合に、前記複数の異なる作業工程に対し個別に機械学習アルゴリズムを実行して、個々の前記作業工程の特性を入力データとする前記類似作業学習モデル又は前記非類似作業学習モデルを生成する、請求項1~のいずれか1項に記載の機械学習プログラム
【請求項5】
前記第1の学習工程又は前記第2の学習工程は、前記作業集計工程が前記複数の異なる作業工程に含まれる全ての前記単位作業が互いに異なる種類であると判断した場合に、前記複数の異なる作業工程に対し個別に機械学習アルゴリズムを実行して、個々の前記作業工程の特性を入力データとする前記類似作業学習モデル又は前記非類似作業学習モデルを生成する、請求項1~のいずれか1項に記載の機械学習プログラム
【請求項6】
前記状態データは、前記単位作業の作業者情報、作業時間情報及び作業日時情報のうち、少なくとも1つの追加情報をさらに含み、前記類似作業学習モデルは、前記内容情報及び前記追加情報と前記閾値との相関性を表す、請求項3~5のいずれか1項に記載の機械学習プログラム
【請求項7】
それぞれが少なくとも1種類の単位作業を含む複数の異なる作業工程に関する学習を行う機械学習装置であって、
前記複数の異なる作業工程に含まれる全ての前記単位作業を集計して、同一種類の複数の単位作業の有無を判断する作業集計部と、
前記同一種類の複数の単位作業の各々を構成する作業要素のうち、該複数の単位作業の間で共通する作業要素の個数に基づき、前記複数の単位作業が互いに類似するか否かを判断する類似判断部と、
互いに類似する第1の前記単位作業と第2の前記単位作業とを類似作業セットとして、共通の機械学習アルゴリズムにより、該類似作業セットの特性を入力データとする類似作業学習モデルを生成する第1の学習部と、
前記第1の単位作業を含む第1の前記作業工程及び前記第2の単位作業を含む第2の前記作業工程に関する学習を、前記類似作業学習モデルに基づいて行う第2の学習部と、を備え、
前記第1の学習部は、
前記単位作業の内容情報を含む状態データであって前記特性を表す状態データと、前記状態データに対応する前記単位作業の行為が異常であるか否かを表すラベルデータとを、学習データセットとして取得するデータ取得部と、
前記学習データセットに基づいて、前記単位作業の行為が異常になり易いか否かを判定するための閾値を算出する閾値算出部と、
前記学習データセットを用いて、前記内容情報と前記閾値との相関性を表す前記類似作業学習モデルを生成する学習モデル生成部と、を備える機械学習装置。
【請求項8】
前記作業集計部は、前記複数の異なる作業工程に含まれる全ての前記単位作業を種類ごとに分類して複数の作業類を定義し、複数の前記単位作業を含む前記作業類が存在するか否かを判断することにより、前記同一種類の複数の単位作業の有無を判断する、請求項に記載の機械学習装置。
【請求項9】
前記第1の学習部は、他の単位作業とは類似しない単位作業に対し個別に機械学習アルゴリズムを実行して、該類似しない単位作業の特性を入力データとする非類似作業学習モデルを生成し、
前記第2の学習部は、前記複数の異なる作業工程に関する前記学習を、前記類似作業学習モデルと前記非類似作業学習モデルとに基づいて行う、請求項7又は8に記載の機械学習装置。
【請求項10】
前記状態データは、前記単位作業の作業者情報、作業時間情報及び作業日時情報のうち、少なくとも1つの追加情報をさらに含み、前記類似作業学習モデルは、前記内容情報及び前記追加情報と前記閾値との相関性を表す、請求項に記載の機械学習装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、作業工程に関する学習を行う機械学習方法及び機械学習装置に関する。
【背景技術】
【0002】
人が何らかの作業工程(例えば組立工程、検査工程、洗浄工程、梱包工程、事務工程等)を遂行する際に、例えば作業支援や品質管理の観点から、作業工程の特性(作業内容、作業者、作業時間、作業日時等)を把握することが求められる場合がある。把握した作業工程の特性に基づき、例えば、正しい作業手順を必要に応じて映像や音声により作業者に教示したり、工程不良の要因を分析したりすることができる。
【0003】
特許文献1には、外景画像を画像認識することによって現在の手順を推定し、指示内容を表す文字列や使用者が実施すべき内容を表す画像を表示する頭部装着型表示装置が開示されている。
【0004】
特許文献2には、作業を登録した標準データと、取得した作業データとの差異が閾値以上である場合に、作業の修正に関する指示画像を現実空間に重畳して表示する情報処理システムが開示されている。
【0005】
特許文献3には、速度センサの出力及び撮像部の出力を用いてユーザの作業を同定する作業認識装置が開示されている。
【0006】
特許文献4には、作業者のスキルレベルに応じて提供する作業手順情報を決定する内視鏡洗浄管理システムが開示されている。
【先行技術文献】
【特許文献】
【0007】
【文献】特開2014-155207号公報
【文献】特許第6224873号公報
【文献】国際公開第2010/143361号
【文献】特開2017-131335号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
作業工程の特性(作業内容、作業者、作業時間、作業日時等)を、例えば作業支援や品質管理のために必要な条件(作業手順を教示するための条件、工程不良要因を分析するための条件等)と関連付けて、既知の情報として収集し蓄積することで、当該条件の新規設定、修正、変更等を効率良く行うことができる。この場合、情報の収集や蓄積を迅速かつ正確に行うこと、蓄積される情報の信頼性を向上させること、等が所望される。
【課題を解決するための手段】
【0009】
本開示の一態様は、それぞれが少なくとも1種類の単位作業を含む複数の異なる作業工程に関する学習を行う機械学習プログラムであって、プロセッサに、複数の異なる作業工程に含まれる全ての単位作業を集計して、同一種類の複数の単位作業の有無を判断する作業集計工程と、同一種類の複数の単位作業の各々を構成する作業要素のうち、複数の単位作業の間で共通する作業要素の個数に基づき、複数の単位作業が互いに類似するか否かを判断する類似判断工程と、互いに類似する第1の単位作業と第2の単位作業とを類似作業セットとして、共通の機械学習アルゴリズムにより、類似作業セットの特性を入力データとする類似作業学習モデルを生成する第1の学習工程と、第1の単位作業を含む第1の作業工程及び第2の単位作業を含む第2の作業工程に関する学習を、類似作業学習モデルに基づいて行う第2の学習工程と、を実行させ、第1の学習工程は、プロセッサに、単位作業の内容情報を含む状態データであって特性を表す状態データと、状態データに対応する単位作業の行為が異常であるか否かを表すラベルデータとを、学習データセットとして取得するデータ取得工程と、学習データセットに基づいて、単位作業の行為が異常になり易いか否かを判定するための閾値を算出する閾値算出工程と、学習データセットを用いて、内容情報と閾値との相関性を表す類似作業学習モデルを生成する学習モデル生成工程と、を実行させる、機械学習プログラムである。
【0010】
本開示の他の態様は、それぞれが少なくとも1種類の単位作業を含む複数の異なる作業工程に関する学習を行う機械学習装置であって、複数の異なる作業工程に含まれる全ての単位作業を集計して、同一種類の複数の単位作業の有無を判断する作業集計部と、同一種類の複数の単位作業の各々を構成する作業要素のうち、複数の単位作業の間で共通する作業要素の個数に基づき、複数の単位作業が互いに類似するか否かを判断する類似判断部と、互いに類似する第1の単位作業と第2の単位作業とを類似作業セットとして、共通の機械学習アルゴリズムにより、類似作業セットの特性を入力データとする類似作業学習モデルを生成する第1の学習部と、第1の単位作業を含む第1の作業工程及び第2の単位作業を含む第2の作業工程に関する学習を、類似作業学習モデルに基づいて行う第2の学習部と、を備え、第1の学習部は、単位作業の内容情報を含む状態データであって特性を表す状態データと、状態データに対応する単位作業の行為が異常であるか否かを表すラベルデータとを、学習データセットとして取得するデータ取得部と、学習データセットに基づいて、単位作業の行為が異常になり易いか否かを判定するための閾値を算出する閾値算出部と、学習データセットを用いて、内容情報と閾値との相関性を表す類似作業学習モデルを生成する学習モデル生成部と、を備える機械学習装置である。
【発明の効果】
【0011】
一態様に係る機械学習方法によれば、複数の異なる作業工程に関する学習が、個々の作業工程に含まれる単位作業のうち互いに類似する単位作業について共通する類似作業学習モデルを生成することで行われるから、複数の作業工程(或いは複数の単位作業)に関し個別に学習を行う構成に比較してデータ数(つまり学習回数)が増加し、個々の作業工程に関する学習の精度及び確度が向上する。例えば、作業工程の特性(作業内容、作業者、作業時間、作業日時等)を、作業支援や品質管理のために必要な条件(作業手順を教示するための条件、工程不良要因を分析するための条件等)と関連付けて、迅速かつ正確に学習モデル化できるだけでなく、学習モデルの信頼性を向上させることができるから、作業支援や品質管理のために必要な条件の新規設定、修正、変更等を高効率かつ高精度で行うことが可能になる。
【0012】
他の態様に係る機械学習装置によれば、機械学習方法による上記効果と同等の効果が生じる。
【図面の簡単な説明】
【0013】
図1】一実施形態による機械学習装置を示す機能ブロック図である。
図2】一実施形態による機械学習方法を示すフローチャートである。
図3図2の機械学習方法の具体例を概念的に示す図である。
図4図1の機械学習装置が有する学習部の一例を示す機能ブロック図である。
図5図4の学習部が実行する機械学習アルゴリズムの一例を示すフローチャートである。
図6図4の学習部を有する機械学習装置を装備した表示システムを示す機能ブロック図である。
図7図6の表示システムにおける表示処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0014】
以下、添付図面を参照して本開示の実施の形態を説明する。全図面に渡り、対応する構成要素には共通の参照符号を付す。
【0015】
図1は、一実施形態による機械学習装置10を機能ブロックで示す。図2は、機械学習装置10が実行する一実施形態による機械学習方法を示す。
【0016】
機械学習装置10は、人が何らかの作業工程(例えば組立工程、検査工程、洗浄工程、梱包工程、事務工程等)を遂行するときの、作業工程の特性(作業内容、作業者、作業時間、作業日時等)に関連する様々な事項を、いわゆる機械学習により自ら学習するものであって、種々の学習アルゴリズムを定義するソフトウェアを実行するための、電算機のプロセッサ(例えば中央処理装置(CPU))等のハードウェアを備える。例えば機械学習装置10は、作業工程の特性を、作業支援や品質管理のために必要な条件(作業手順を教示するための条件、工程不良要因を分析するための条件等)と関連付けて学習することができる。機械学習装置10が学習により生成した学習モデルを用いることで、上記条件の新規設定、修正、変更等を効率良く行うことができる。
【0017】
図1に示すように、機械学習装置10は、それぞれが少なくとも1種類の単位作業を含む複数の異なる作業工程に関する学習を行うプロセッサ12を備える。プロセッサ12は、複数の異なる作業工程に含まれる全ての単位作業を集計して、同一種類の複数の単位作業の有無を解釈する作業集計部14と、同一種類の複数の単位作業が互いに類似するか否かを判断する類似判断部16と、互いに類似する第1の単位作業と第2の単位作業とを類似作業セットとして、共通の機械学習アルゴリズムにより、類似作業セットの特性を入力データとする類似作業学習モデルを生成する第1の学習部18と、第1の単位作業を含む第1の作業工程及び第2の単位作業を含む第2の作業工程に関する学習を、類似作業学習モデルに基づいて行う第2の学習部20とを備える。ここで、類似作業セットは、n個(n≧2)の単位作業(つまり第1~第nの単位作業)で構成でき、第1の学習部18は、第1~第nの単位作業に対し共通の学習アルゴリズムにより類似作業学習モデルを生成でき、第2の学習部20は、第1~第nの単位作業をそれぞれに含む第1~第nの作業工程に関する学習を類似作業学習モデルに基づいて行うことができる。
【0018】
プロセッサ12は例えば、CPU、ASIC(application specific integrated circuit)、FPGA(field programmable gate array)等の構成を有することができる。作業集計部14、類似判断部16、第1の学習部18及び第2の学習部20は、それぞれ、プロセッサ12の一機能ブロックとして構成でき、或いはプロセッサ12を機能させるためのプログラムや記録媒体(コンピュータ読取可能な非一時的記録媒体)として構成できる。作業工程が例えば機器の組立工程の場合、作業工程に含まれる単位作業としては、種類別に、ケーブル取付作業、板金取付作業、ねじ取付作業、基板取付作業、ユニット取付作業、クランプ作業等を例示できる。作業工程が例えば装置の検査工程の場合、作業工程に含まれる単位作業としては、種類別に、組み立てた装置の外観確認作業、組立部品の固定状態確認作業等を例示できる。
【0019】
機械学習装置10が実行する機械学習方法は、図2に示すように、それぞれが少なくとも1種類の単位作業を含む複数の異なる作業工程に関する学習を行うものであって、複数の異なる作業工程に含まれる全ての単位作業を集計して、同一種類の複数の単位作業の有無を解釈するステップ(ステップS1~S3:作業集計部14の動作)と、同一種類の複数の単位作業が互いに類似するか否かを判断するステップ(ステップS4~S6:類似判断部16の動作)と、互いに類似する第1の単位作業と第2の単位作業とを類似作業セットとして、共通の機械学習アルゴリズムにより、類似作業セットの特性を入力データとする類似作業学習モデルを生成するステップ(ステップS7:第1の学習部18の動作)と、第1の単位作業を含む第1の作業工程及び第2の単位作業を含む第2の作業工程に関する学習を、類似作業学習モデルに基づいて行うステップ(ステップS8:第2の学習部20の動作)とを有する。
【0020】
図3は、機械学習装置10が実行する機械学習方法の1つの具体例を概念的に示す。以下、図1図2及び図3を参照して、具体例に基づき機械学習装置10及び機械学習方法の構成を詳細に説明する。図3の具体例では、作業工程は機器の組立工程であり、機械学習装置10の学習対象は3つの異なる組立工程A~Cである。組立工程Aは、ケーブル取付A、板金取付A及びねじ取付Aの、3種類の単位作業を含む。組立工程Bは、ケーブル取付B、板金取付B及び基板取付Bの、3種類の単位作業を含む。組立工程Cは、ケーブル取付C、ユニット取付C及びクランプCの、3種類の単位作業を含む。
【0021】
図2に示すように、個々の組立工程A~Cを任意の作業者が任意の日時に任意の作業環境で開始することにより、学習がスタートする。まず作業集計部14は、ステップS1で、3つの組立工程A~Cに含まれる全ての単位作業を抽出する。抽出手法の一例として、作業環境(すなわち学習環境)に設けられるカメラやバーコードリーダ等の特徴識別装置を用いて、組立工程A~Cの各々の特徴を識別する手法を採用できる。例えば、カメラにより各組立工程の最初の単位作業を撮像したり、バーコードリーダにより各組立工程の最初の作業対象物のバーコードを読み取ったりすることで、当該最初の単位作業を含む一連の単位作業を、予め用意したデータベースとの照合により抽出することができる。
【0022】
次にステップS2で、作業集計部14は、抽出した全ての単位作業を種類ごとに分類して複数の作業類を定義する。図3の具体例では、全ての単位作業が、種類が同一であるケーブル取付A~Cの作業類22と、種類が同一である板金取付A及びBの作業類24と、ねじ取付Aのみの作業類26と、基板取付Bのみの作業類28と、ユニット取付Cのみの作業類30と、クランプCのみの作業類32とに分類されている。
【0023】
次にステップS3で、作業集計部14は、全ての単位作業の中に同一種類の複数の単位作業が有るか否か、具体的にはステップS2で定義した複数の作業類22~32の中に複数の単位作業を含む作業類が存在するか否かを判断し、この判断により同一種類の単位作業の有無を解釈する。図3の具体例では、複数の単位作業を含む作業類22及び24が存在するので、同一種類の単位作業が有ると解釈される。
【0024】
同一種類の単位作業が有る場合(ステップS3の判断がYESの場合)、類似判断部16は、ステップS4~S6で、それら同一種類の単位作業が互いに類似するか否かを判断する。図3の具体例では、作業類22に属するケーブル取付A~Cが互いに類似するか否か、及び作業類24に属する板金取付A及びBが互いに類似するか否かが判断される。
【0025】
単位作業の類似を判断するためには、単位作業を構成する作業要素の共通性を解釈することが有効である。作業要素は、人が単位作業を遂行するために必要な複数の設定事項の1つ1つを意味する。例えば単位作業がケーブル取付作業の場合、作業要素として、ケーブルの取付位置、ケーブルコネクタの形状、ケーブルの長さ等を例示できる。また単位作業が板金取付作業の場合、作業要素として、板金素材の取付位置、板金素材の寸法や形状、板金素材に設けた組付穴の位置等を例示できる。図3の具体例では、作業類22において、ケーブル取付Aの作業要素として取付位置1、コネクタ外形1、ケーブル線長1が示され、ケーブル取付Bの作業要素として取付位置1、コネクタ外形1、ケーブル線長2が示され、ケーブル取付Cの作業要素として取付位置1、コネクタ外形3、ケーブル線長3が示されている(数字1~3は設定値の相違を表す)。
【0026】
類似判断部16は、ステップS4~S6における類似判断処理の一例として、同一種類の複数の単位作業の各々を構成する作業要素のうち、それら単位作業の間で共通する作業要素の個数に基づき、複数の単位作業が互いに類似するか否かを判断することができる。まずステップS4で、類似判断部16は、同一種類の単位作業の各々を構成する全ての作業要素を抽出し、それら単位作業の間で共通する作業要素の個数(作業要素重複数)を算出する。抽出手法としては、例えば前述したカメラやバーコードリーダ等の特徴識別装置を用いる手法を採用できる。図3の具体例では、作業類22において、ケーブル取付Aの取付位置1、コネクタ外形1及びケーブル線長1、ケーブル取付Bの取付位置1、コネクタ外形1及びケーブル線長2、並びにケーブル取付Cの取付位置1、コネクタ外形3及びケーブル線長3が抽出される。ケーブル取付Aとケーブル取付Bとの間で取付位置1及びコネクタ外形1が共通しているので、ケーブル取付A及びBの作業要素重複数は「2」と算出される。同様にして、ケーブル取付B及びCの作業要素重複数は「1」と算出され、ケーブル取付C及びAの作業要素重複数は「1」と算出される。
【0027】
次にステップS5で、作業要素重複数に基づき、同一種類の単位作業同士の類似度を、例えば以下の式1に従って算出する。式1は、上記した作業要素重複数を、個々の作業要素の重みを考慮した値(つまり類似度)Anに変換するための関数に相当する。
【0028】
〔式1〕
An=X・x+Y・y+Z・z+…
【0029】
式1において、X、Y、Z、…はそれぞれ、単位作業を構成する作業要素(設定値は考慮しない)を表す。同一種類の単位作業の間で共通する作業要素には、「共通」を意味する同一の引数が与えられ、共通しない作業要素には、引数として零が与えられる。x、y、z、…はそれぞれ作業要素の重みを表し、例えば機械学習装置10の設計者の経験則等に従って設定される。図3の具体例では、Xは取付位置を表し、Yはコネクタ外形を表し、Zはケーブル線長を表す。作業要素重複数「2」のケーブル取付A及びBの類似度は、取付位置1及びコネクタ外形1のそれぞれの重みを加味して、An=X・x+Y・yとして算出される。同様にして、作業要素重複数「1」のケーブル取付B及びCの類似度はAn=X・xと算出され、作業要素重複数「1」のケーブル取付C及びAの類似度はAn=X・xと算出される。
【0030】
次にステップS6で、類似度Anが予め定めた閾値以上であるか否かを判断する。閾値は、同一種類の単位作業同士が類似しているか否かの判断基準となる値であって、単位作業の種類等に応じて、例えば機械学習装置10の設計者の経験則等に従って設定される。図3の具体例では、ケーブル取付作業の類似度Anの閾値が、X・xよりも大きく(X・x+Y・y)よりも小さい値に設定され、その結果、作業類22の中でケーブル取付Aとケーブル取付Bとが類似すると判断される。ここでは同様にして、作業類24の中で板金取付Aと板金取付Bとが類似すると判断されたものとする。
【0031】
同一種類の複数の単位作業が互いに類似する場合(ステップS6の判断がYESの場合)、第1の学習部18は、ステップS7で、互いに類似する単位作業を類似作業セットとして、共通の機械学習アルゴリズムにより、類似作業セットの特性(つまり類似作業セットに含まれる複数の単位作業の各々の特性)を入力データとする類似作業学習モデルを生成する。図3の具体例では、ケーブル取付Aとケーブル取付Bとが類似作業セットとして扱われ、ケーブル取付Aの特性(作業内容、作業者、作業時間、作業日時等)及びケーブル取付Bの特性(作業内容、作業者、作業時間、作業日時等)を入力データとする1つの(つまりケーブル取付A及びBに共通の)類似作業学習モデルが生成される。板金取付A及びBについても同様にして、共通の類似作業学習モデルが生成される。
【0032】
複数の作業類の各々に属する同一種類の単位作業の中に、他の単位作業とは類似しない単位作業が有る場合、第1の学習部18は、上記ステップS7で、類似しない単位作業に対し個別に機械学習アルゴリズムを実行して、当該類似しない単位作業の特性を入力データとする非類似作業学習モデルを生成する。非類似作業学習モデルを生成するための機械学習アルゴリズムは、類似作業学習モデルを生成する機械学習アルゴリズムと同じであってもよいし異なっていてもよい。図3の具体例では、作業類22において、ケーブル取付Cが他の単位作業とは類似しない単位作業であるから、ケーブル取付Cの特性(作業内容、作業者、作業時間、作業日時等)を入力データとする非類似作業学習モデルが生成される。他方、作業類24については、他の単位作業と類似しない単位作業が存在しないので、非類似作業学習モデルが生成されない。
【0033】
ステップS7ではさらに、単一の単位作業のみを含む作業類についても、他の単位作業とは類似しない単位作業に対する上記処理と同様にして、非類似作業学習モデルを生成する。図3の具体例では、作業類26に属するねじ取付A、作業類28に属する基板取付B、作業類30に属するユニット取付C、及び作業類32に属するクランプCの各々について、非類似作業学習モデルが生成される。
【0034】
ステップS4で抽出された全ての単位作業について類似作業学習モデル又は非類似作業学習モデルが生成されると、第2の学習部20は、ステップS8で、複数の異なる作業工程(組立工程A~C)に関する学習を、類似作業学習モデルと非類似作業学習モデルとに基づいて(少なくとも類似作業学習モデルに基づいて)行う。各作業工程に関する学習を行うことは、当該作業工程に含まれる個々の単位作業について類似作業学習モデル又は非類似作業学習モデルを生成することと実質的に同義であるが、第2の学習部20は、第1の学習部18が単位作業ごとに生成する類似作業学習モデル又は非類似作業学習モデル(少なくとも類似作業学習モデル)を、適宜に取捨選択して作業工程ごとの学習を進めることになる。したがって、個々の単位作業についての類似作業学習モデル又は非類似作業学習モデル(つまり入出力の相関性の確からしさ)が所望の信頼水準に到達することで、第2の学習部20による各作業工程に関する学習が終了する。
【0035】
図3の具体例では、組立工程Aに関する学習が、ケーブル取付Aについて生成された類似作業学習モデルと、板金取付Aについて生成された類似作業学習モデルと、ねじ取付Aについて生成された非類似作業学習モデルとに基づいて行われる。また、組立工程Bに関する学習が、ケーブル取付Bについて生成された類似作業学習モデルと、板金取付Bについて生成された類似作業学習モデルと、基板取付Bについて生成された非類似作業学習モデルとに基づいて行われる。また、組立工程Cに関する学習が、ケーブル取付Cについて生成された非類似作業学習モデルと、ユニット取付Cについて生成された非類似作業学習モデルと、クランプCについて生成された非類似作業学習モデルとに基づいて行われる。
【0036】
同一種類の複数の単位作業の全てが互いに類似しない場合(ステップS6の判断がNOの場合)、第2の学習部20は、ステップS9で、複数の異なる作業工程(組立工程A~C)に対し個別に機械学習アルゴリズムを実行して、個々の作業工程の特性を入力データとする学習モデルを生成する。作業工程ごとの学習モデルを生成するための機械学習アルゴリズムは、類似作業学習モデルを生成する機械学習アルゴリズムと同じであってもよいし異なっていてもよい。また各作業工程の学習モデルは、当該作業工程全体を通して生成した1つの学習モデルでもよいし、第1の学習部18が当該作業工程に含まれる単位作業ごとに生成した複数の非類似作業学習モデルを組み合わせたものでもよい。個々の作業工程についての学習モデル(つまり入出力の相関性の確からしさ)が所望の信頼水準に到達することで、各作業工程に関する学習が終了する。
【0037】
また、複数の異なる作業工程に含まれる全ての単位作業が互いに異なる種類である場合(ステップS3の判断がNOの場合)、第2の学習部20は、ステップS10で、複数の異なる作業工程(組立工程A~C)に対し個別に機械学習アルゴリズムを実行して、個々の作業工程の特性を入力データとする学習モデルを生成する。作業工程ごとの学習モデルを生成するための機械学習アルゴリズムは、類似作業学習モデルを生成する機械学習アルゴリズムと同じであってもよいし異なっていてもよい。個々の作業工程についての学習モデル(つまり入出力の相関性の確からしさ)が所望の信頼水準に到達することで、各作業工程に関する学習が終了する。
【0038】
このようにして、複数の異なる作業工程(組立工程A~C)に関する学習が行われ、各作業工程に関する学習モデル(類似作業学習モデル及び非類似作業学習モデル)の信頼性が所望の水準まで深化した段階で、学習のための作業工程を終了する。
【0039】
上記したように、一実施形態による機械学習装置10及び機械学習方法では、複数の異なる作業工程に関する学習が、個々の作業工程に含まれる単位作業のうち互いに類似する単位作業について共通する類似作業学習モデルを生成することで行われる。類似作業学習モデルの入力データは、類似作業セットの特性(つまり類似作業セットに含まれる複数の単位作業の各々の特性)に関するデータであるから、複数の作業工程(或いは複数の単位作業)に関し個別に学習を行う構成に比較してデータ数(つまり学習回数)が増加する。したがって、互いに類似する単位作業についての類似作業学習モデルの信頼性が向上し、それに伴い、個々の作業工程に関する学習の精度及び確度が向上する。
【0040】
例えば、作業工程の特性(作業内容、作業者、作業時間、作業日時等)を、作業支援や品質管理のために必要な条件(作業手順を教示するための条件、工程不良要因を分析するための条件等)と関連付けて、既知の情報として収集し蓄積するアプリケーションにおいて、一実施形態による機械学習装置10及び機械学習方法によれば、そのような情報の収集や蓄積を迅速かつ正確に行って学習モデル化できるだけでなく、蓄積される情報すなわち学習モデルの信頼性を向上させることができる。その結果、作業支援や品質管理のために必要な条件の新規設定、修正、変更等を高効率かつ高精度で行うことが可能になる。
【0041】
上記構成を有する機械学習装置10及び機械学習方法では、第1の学習部18が実行する学習手法(機械学習アルゴリズム)は特に限定されず、例えば教師あり学習、教師なし学習、強化学習等の、機械学習として公知の学習手法を採用できる。教師あり学習は、入力データとそれに対応する出力データ(一般に教師データやラベル等と呼称される)との既知の学習データセットが予め大量に与えられ、それら既知の学習データセットから入力データと出力データとの相関性を暗示する特徴を識別することで、新たな入力に対する所要の出力を推定するための相関性モデル(機械学習装置10では類似作業学習モデル)を生成する手法である。これに対し、教師なし学習や強化学習は、入力と出力との関係が未知の状態から学習が開始される。
【0042】
機械学習装置10において第1の学習部18が実行する機械学習アルゴリズム(つまり類似作業学習モデルの生成処理)の一例を、図4及び図5を参照して説明する。図4は、第1の学習部18の構成を機能ブロックで示す。図5は、第1の学習部18が実行する機械学習アルゴリズムを示す。
【0043】
第1の学習部18は、単位作業の内容情報を含む状態データD1であって単位作業の特性を表す状態データD1と、状態データD1に対応する単位作業の行為が異常であるか否かを表すラベルデータD2とを、学習データセットDSとして取得するデータ取得部34と、学習データセットDSに基づいて、単位作業の行為が異常になり易いか否かを判定するための閾値Tを算出する閾値算出部36と、学習データセットDSを用いて、内容情報(状態データD1)と閾値Tとの相関性を表す類似作業学習モデルMを生成する学習モデル生成部38とを備える。
【0044】
第1の学習部18が実行する機械学習アルゴリズムは、前述した教師あり学習に相当し、状態データD1とラベルデータD2とを学習データセットDSとして取得するステップU1(データ取得部34の動作)と、学習データセットDSに基づいて閾値Tを算出するステップU2(閾値算出部36の動作)と、学習データセットDSを用いて類似作業学習モデルMを生成するステップU3(学習モデル生成部38の動作)とを有する。
【0045】
図6は、図4に示す第1の学習部18を有する機械学習装置10のアプリケーションの具体例として、表示システム40の構成を機能ブロックで示す。以下、図6を参照して、具体例に基づき第1の学習部18が実行する機械学習アルゴリズムの構成を詳細に説明する。図6に示すように、表示システム40は、前述した作業工程が遂行される環境42と、環境42に配置される作業対象44と、作業対象44に対して既定の作業工程を行う作業者46とを含む。表示システム40は、作業工程を支援する情報を作業者46に対して表示する機能を有する。
【0046】
表示システム40は、機械学習装置10及び表示装置48を備える。機械学習装置10と表示装置48とは、有線又は無線のネットワーク等を介して互いに通信可能に接続される。機械学習装置10は、PC(personal computer)、サーバ等として構成される。表示装置48は、環境42の中に配置されるラップトップ、PDA(personal digital assistant)、スマートフォン、ウェアラブルデバイス等として構成される。表示システム40は、複数の表示装置48を備えてもよく、この場合、表示装置48の各々が同一環境又は別環境に配置される。
【0047】
表示システム40は、第1プロセッサとしての機械学習装置10の第1の学習部18に加えて、表示装置48の第2プロセッサ50を有する。第2プロセッサ50は表示制御部52を有し、表示制御部52は、第1の学習部18の閾値算出部36が算出した閾値Tに基づいて、表示装置48の表示部54に正常作業情報を表示するタイミングを制御する。第2プロセッサ50はさらに、作業対象44が正常品であるか否かを判定する機能、作業対象44の不良箇所を表示して交換を指示する機能、及び単位作業が正常であったか否かを判定する機能を有することができる。
【0048】
「正常作業情報」は、単位作業に関する正常な作業手順でもよいし正常な作業結果でもよい。表示部54は、液晶ディスプレイ、タッチパネルディスプレイ等の公知の表示ディスプレイとして構成される。表示部54は、表示制御部52の指令に従って作業支援情報を表示し、特に表示制御部52が制御する表示タイミングに従って正常作業情報を表示する。表示部54は、拡張現実機器として構成されてもよく、この場合、正常作業情報を現実空間の画像に重畳して表示することができる。
【0049】
第1の学習部18のデータ取得部34は、状態データD1及びラベルデータD2を学習データセットDSとして環境42から取得する。状態データD1は、単位作業の内容情報に加えて、単位作業の作業者情報、作業時間情報及び作業日時情報のうち、少なくとも1つの追加情報をさらに含むことができる。この場合、第1の学習部18の学習モデル生成部38が生成する類似作業学習モデルMは、内容情報及び追加情報と閾値Tとの相関性を表すものとなる。
【0050】
「内容情報」は、作業者46が環境42で作業対象44に対しどのような単位作業を行っているかを表す情報として定義される。例えば内容情報は、作業種別コード、作業難易度等を含む。内容情報は、例えばカメラ、バーコードリーダ等の特徴識別装置を用いて特定される。特徴識別装置は、表示装置48に設けたものでもよいし、又は別個に設けたものでもよい。内容情報は、例えば作業対象44のID又は画像に基づき特定してもよい。例えば複数の部品を互いに組付ける組立作業の場合、個々の部品のIDを、予め記憶した基準データと照合することによって内容情報を特定できる。また内容情報は、作業が正常であったか否かの判定に用いることもできる。単位作業の内容は作業結果や作業支援の要否等と直接的な関連性を有するので、状態データD1は少なくとも内容情報を含むものとする。
【0051】
「作業者情報」は、作業者46の熟練度を表す情報として定義される。例えば作業者情報は、作業者ID、年齢、勤務年数、作業年数等を含む。作業者情報は、例えば環境42への入退室権限、表示装置48へのアクセス権限を検証する際に入力される作業者46のIDに基づき特定される。作業者46の熟練度と作業結果や作業支援の要否等との間に関連性が見出される場合がある。
【0052】
「作業時間情報」は、単位作業の開始から終了までに掛かった時間を表す情報として定義される。作業時間情報は、例えばカメラ、バーコードリーダ等の特徴識別装置や内部時計等の計時装置を用いて特定される。作業開始時刻は、作業対象44のIDを取得した時刻でもよいし、表示装置48の電源を投入した時刻でもよいし、又は作業者46が表示装置48に作業開始を入力した時刻でもよい。作業終了時刻は、作業対象44に付与される作業終了印の画像を取得した時刻でもよいし、表示装置48の電源を切った時刻でもよいし、又は作業者46が表示装置48に作業終了を入力した時刻でもよい。作業時間と作業結果や作業支援の要否等との間に関連性が見出される場合がある。
【0053】
「作業日時情報」は、作業者46が単位作業を行った日付、時刻及び曜日を表す情報として定義される。例えば作業日時情報は、作業開始日時でもよいし、作業終了日時でもよいし、又は作業開始日時と作業終了日時との間の中間の日時でもよい。作業日時情報は、例えばカメラ、バーコードリーダ等の特徴識別装置や内部時計等の計時装置を用いて特定される。勤務時間や勤務日数等が所定値以上になると作業の正確性が損なわれる等、作業日時と作業結果や作業支援の要否等との間に関連性が見出される場合がある。
【0054】
ラベルデータD2は、例えばカメラ、バーコードリーダ等の特徴識別装置を用いて特定される。この場合、ラベルデータD2は、例えば作業対象44のIDや画像等に基づき特定できる。例えば複数の部品を互いに組付ける組立作業の場合、個々の部品のIDや組立後の作業対象44の画像を、予め記憶した基準データと照合することによってラベルデータD2を特定できる。画像データを用いる場合、基準データとして正常作業及び異常作業のいずれの画像を用いてもよい。どのような単位作業が正常であるかについては、例えば機械学習装置10の設計者の経験則等に従って定められる。
【0055】
次に、閾値算出部36及び学習モデル生成部38の動作の一例を説明する。以下の式2は、異常作業フラグFと状態データD1との関係をモデル化した関数の一例である。異常作業フラグFは、状態データD1に対応する単位作業の行為が異常になり易いか否かを表す。
【0056】
〔式2〕
F=G・g0+H・h0+I・i0+J・j0
【0057】
式2において、G、H、I、Jはそれぞれ、内容情報、作業者情報、作業時間情報、作業日時情報を表す。g0、h0、i0、j0はそれぞれ、内容情報の重み、作業者情報の重み、作業時間情報の重み、作業日時情報の重みを表す。これら重みの初期値は、状態データD1が一定以上蓄積された後に回帰分析等によって求めることができる。
【0058】
以下の式3は、ラベルデータD2の重みl1、l2と、状態データD1の重みg0、h0、i0、j0との関係をモデル化した関数の一例である。
【0059】
〔式3〕
g1=g0・l1、h1=h0・l1、i1=i0・l1、j1=j0・l1
g2=g0・l2、h2=h0・l2、i2=i0・l2、j2=j0・l2
【0060】
式3において、重みl1は、ラベルデータD2のうち正常作業ラベルデータL1の重みを表し、重みl2は、ラベルデータD2のうち異常作業ラベルデータL2の重みを表す。g1、h1、i1、j1はそれぞれ、L1取得時の各状態データD1の重みを表し、g2、h2、i2、j2はそれぞれ、L2取得時の各状態データD1の重みを表す。
【0061】
以下の式4は、L1取得時及びL2取得時の異常作業フラグFと閾値Tとの関係をモデル化した関数である。
【0062】
〔式4〕
L1取得時:
T=T′+(G・g1+H・h1+I・i1+J・j1)
L2取得時:
T=T′-(G・g2+H・h2+I・i2+J・j2)
【0063】
式4において、T′は前回ラベルデータD2を取得したときの閾値を表す。T′の初期値は零でよい。式4に示す通り、L1取得時には閾値Tが増加され、L2取得時には閾値Tが減少される。このように、データ取得部34が状態データD1及びラベルデータD2を取得する度に、閾値Tが更新されることになる。このようにして、閾値算出部36が閾値Tを算出し、学習モデル生成部38が、状態データD1と閾値Tとの相関性を表す類似作業学習モデルMを生成する。
【0064】
以下の式5は、機械学習装置10による学習結果(作業工程の学習モデル)を用いて現場で実行される作業支援のための表示処理に際して、状態データD1に対応する単位作業の行為が異常になり易いか否かを判定する関数である。
【0065】
〔式5〕
F≧Tのとき:作業前に正常作業情報を表示する
F<Tのとき:作業前に正常作業情報を表示しない
【0066】
式5に示す通り、異常作業フラグFが閾値T以上の場合には、単位作業が異常になり易いため、作業者46による単位作業の遂行前に「正常作業情報」が表示部54に表示される。一方、異常作業フラグFが閾値T未満の場合には、単位作業が異常になり難いため、作業者46が実際に遂行した単位作業が正常でなかった場合にのみ「正常作業情報」が表示部54に表示される。
【0067】
図7は、機械学習装置10を備える表示システム40において、機械学習装置10による学習結果(作業工程の学習モデル)を用いて現場で実行される作業支援のための表示処理フローの一例を示す。まずステップP1で、データ取得部34が状態データD1を取得する。図示の例では、状態データD1は内容情報に加えて作業者情報、作業時間情報及び作業日時情報を含む。
【0068】
次にステップP2で、例えば第2プロセッサ50が、作業対象44が正常品であるか否かを判断する。作業対象44が正常品であるか否かは画像認識等によって特定できる。例えば複数の部品を互いに組付ける組立作業の場合、個々の部品の画像を基準データと照合することによって各部品が正常品であるか否かを特定できる。作業対象44が正常品でない場合(ステップP2の判断がNOの場合)は、ステップP3で表示制御部52が表示部54に不良箇所を表示し、必要に応じて作業対象44の交換を指示した後、ステップP1へ戻る。作業対象44が正常品である場合(ステップP2の判断がYESの場合)は、ステップP4に進む。
【0069】
ステップP4で、例えば第2プロセッサ50が、取得した状態データD1に対応する単位作業の行為が異常になり易いか否か、すなわち異常作業フラグF(式2)が閾値T以上であるか否か(式5)を判断する。単位作業が異常になり難い場合(ステップP4の判断がNOの場合)は、作業者46が単位作業を遂行した後に、例えば第2プロセッサ50が、ステップP5で当該単位作業の行為が正常であったか否かを判断する。
【0070】
単位作業の行為が正常でなかった場合(ステップP5の判断がNOの場合)は、ステップP6で表示制御部52が表示部54に正常作業情報を表示するとともに、不良箇所を表示して必要に応じ作業対象44の交換を指示する。このような処理により、例えば熟練した作業者46は、実際に誤作業等を行ったときだけ正常作業情報を確認できる。次いで、例えば第2プロセッサ50が、ステップP7で異常作業フラグFを増加し、ステップP1に戻る。
【0071】
単位作業の行為が正常であった場合(ステップP5の判断がYESの場合)は、例えば第2プロセッサ50が、ステップP8で異常作業フラグFを減少し、ステップP9で単位作業が終了したか否かを判断する。現場での作業支援表示処理の間も学習を進める場合は、ステップP7及びP8において閾値Tを更新する(式4)。
【0072】
取得した状態データD1に対応する単位作業の行為が異常になり易い場合(ステップP4の判断がYESの場合)は、ステップP10で、作業者46による単位作業の遂行前に表示制御部52が表示部54に正常作業情報を表示する。これにより、状態データD1が、作業者46が未熟である、作業内容が複雑である、作業時間が長い、作業者46の勤務時間や勤務日数が多いといった特性を表す場合であっても、誤作業や工程不良を未然に防止できる。
【0073】
作業者46が作業支援表示の下で単位作業を遂行した後に、例えば第2プロセッサ50が、ステップP11で当該単位作業の行為が正常であったか否かを判断する。単位作業の行為が正常でなかった場合(ステップP11の判断がNOの場合)は、ステップP12で表示制御部52が表示部54に正常作業情報を再び表示するとともに、不良箇所を表示して必要に応じ作業対象44の交換を指示する。このような処理により、作業前に正常作業情報を表示したにも拘わらず単位作業が異常であった場合に、誤作業や工程不良の頻度を低減できる。次いで、例えば第2プロセッサ50が、ステップP13で異常作業フラグFを増加し、ステップP1に戻る。
【0074】
単位作業の行為が正常であった場合(ステップP11の判断がYESの場合)は、例えば第2プロセッサ50が、ステップP14で異常作業フラグFを減少し、ステップP9で単位作業が終了したか否かを判断する。現場での作業支援表示処理の間も学習を進める場合は、ステップP13及びP14において閾値Tを更新する(式4)。
【0075】
単位作業が終了していない場合(ステップP9の判断がNOの場合)は、ステップP1に戻る。単位作業が終了している場合(ステップP9の判断がYESの場合)は、作業終了として表示処理フローを終了する。
【0076】
本開示の機械学習装置及び機械学習方法は、上記及び図示の実施形態の構成に限定されない。例えば、機械学習の対象となる作業工程及び単位作業の特性(つまり入力データ)は、上記及び図示の実施形態に限定されず、ユーザの要求に応じた様々な特性を入力データとすることができる。また、機械学習アルゴリズムは、上記及び図示の実施形態に限定されず、ユーザの要求に応じた様々なアルゴリズムを採用できる。機械学習装置のアプリケーションとしては、前述した表示システム以外にも、例えば、機械学習装置が生成した作業工程の学習モデルに従って工程手順書の記載事項を新設したり変更したりするシステムを例示できる。
【符号の説明】
【0077】
10 機械学習装置
12 プロセッサ
14 作業集計部
16 類似判断部
18 第1の学習部
20 第2の学習部
22、24、26、28、30、32 作業類
34 データ取得部
36 閾値算出部
38 学習モデル生成部
40 表示システム
図1
図2
図3
図4
図5
図6
図7