(57)【要約】【課題】作業者の成りすましを防ぎ、ロボットの作業における安全性を確保するための機械学習装置を提供する。【解決手段】機械学習装置１０は、予め設定されたロボット制御装置２０の教示操作盤２５に係る操作を作業者に行わせることにより検出される、作業者の少なくとも身体の一部の動き及び身体の形状に関連する測定値を含む操作データを、入力データとして取得する入力データ取得手段１１と、作業者の識別情報をラベルとして取得するラベル取得手段１２と、入力データとラベルとの組を教師データとして教師あり学習を行うことにより、ロボット制御装置２０の作業者を認証するためのユーザ識別を行う学習モデルを構築する学習手段１３と、を備える。【選択図】図２
2019025582.tif 000002
【特許請求の範囲】
【請求項１】
ロボット制御装置の作業者を認証するためのユーザ識別を行う学習モデルを構築する機械学習装置であって、
予め設定された前記ロボット制御装置の教示操作盤に係る操作を前記作業者に行わせることにより検出される前記作業者の少なくとも身体の一部の動き及び身体の形状に関連する測定値を含む操作データを、入力データとして取得する入力データ取得手段と、
前記作業者の識別情報をラベルとして取得するラベル取得手段と、
前記入力データと前記ラベルとの組を教師データとして教師あり学習を行うことにより、前記ロボット制御装置の作業者を認証するためのユーザ識別を行う学習モデルを構築する学習手段と、
を備える機械学習装置。
【請求項２】
前記教示操作盤は、
前記教示操作盤の備える表示器に、前記予め設定された前記ロボット制御装置の教示操作盤に係る操作のガイダンスを表示する、請求項１に記載の機械学習装置。
【請求項３】
前記予め設定された前記ロボット制御装置の教示操作盤に係る操作は、前記作業者が作業時に実際に前記教示操作盤を使用する際の操作を含む、請求項１又は請求項２のいずれかに記載の機械学習装置。
【請求項４】
前記入力データ取得手段は、前記測定値から得られる特徴量を前記操作データとして取得する、請求項１〜請求項３のいずれか１項に記載の機械学習装置。
【請求項５】
前記特徴量は、前記作業者の前記操作に基づく、前記教示操作盤により検知される前記教示操作盤の操作手順、前記教示操作盤が備える各キースイッチの使用頻度、前記教示操作盤が備えるデッドマンスイッチの使用頻度、前記教示操作盤が検出する振動、前記教示操作盤が検出する加速度、前記教示操作盤の操作時の機体の傾き、前記教示操作盤のタッチパネルが検知する筆圧のうち、少なくとも１つに関する、請求項４に記載の機械学習装置。
【請求項６】
前記入力データ取得手段は、さらに、
本番時における前記作業者の教示操作盤に係る実際の操作により検出される前記作業者の少なくとも身体の一部の動き及び身体の形状に関連する測定値を含む操作データを入力データとして取得し、
前記ラベル取得手段は、さらに、
当該作業者の識別情報をラベルとして取得し、
前記学習手段は、さらに、
前記入力データと前記ラベルとの組を教師データとして教師あり学習を行うことで、前記学習モデルを更新する、請求項１〜請求項５のいずれか１項に記載の機械学習装置。
【請求項７】
請求項１〜請求項６までのいずれか１項に記載の機械学習装置で構築した前記学習モデルを用いたユーザ識別装置であって、
前記予め設定された前記教示操作盤に係る操作を前記作業者に行わせることにより検出される前記作業者の少なくとも身体の一部の動き及び身体の形状に関連する測定値を含む操作データを取得する操作データ取得手段と、
前記操作データと前記学習モデルとに基づいて、前記作業者を識別する作業者識別手段と、
を備えるユーザ識別装置。
【請求項８】
前記操作データ取得手段は、さらに、
前記作業者が本番時に前記教示操作盤に係る実際の操作を実行中に、前記作業者の少なくとも身体の一部の動き及び身体の形状に関連する測定値を含む操作データを取得し、
前記作業者識別手段は、さらに、
前記操作データと前記学習モデルとに基づいて、前記作業者の識別情報が正しいか否かを判断する、請求項７に記載のユーザ識別装置。
【請求項９】
前記教示操作盤に組み込まれ、前記教示操作盤と一体となった、請求項７又は請求項８のいずれか１項に記載のユーザ識別装置。
【請求項１０】
請求項１〜請求項６までのいずれか１項に記載の機械学習装置と、
前記予め設定された前記教示操作盤に係る操作を前記作業者に行わせることにより検出される前記作業者の少なくとも身体の一部の動き及び身体の形状に関連する測定値を含む操作データを取得する操作データ取得手段と、
前記操作データと、前記機械学習装置で構築した前記学習モデルとに基づいて、前記作業者を識別する作業者識別手段と、
を備えるユーザ識別装置。
【請求項１１】
請求項７又は請求項８に記載のユーザ識別装置と、
前記機械学習装置と、
前記ロボット制御装置と、
前記教示操作盤と、を備えるユーザ識別システム。
【請求項１２】
前記作業者識別手段が、前記作業者の識別情報が否であると判断した場合に、前記教示操作盤に係る操作を無効とする操作無効化手段を、前記ロボット制御装置がさらに備える、請求項１１に記載のユーザ識別システム。
【請求項１３】
前記作業者識別手段が、前記作業者の識別情報が否であると判断した場合に、警報を発報する警報手段を、前記ロボット制御装置がさらに備える、請求項１１又は請求項１２に記載のユーザ識別システム。
【請求項１４】
前記作業者識別手段が、前記作業者の識別情報の正否を判断できなかった場合に、前記機械学習装置は、作業者の身体的差異に係る特徴量を算出するために用いることが可能な、さらなる操作データを用いて、さらなる学習モデルを構築し、
前記作業者識別手段は、さらなる操作データと、さらなる学習モデルとに基づいて、前記作業者を再度識別する、請求項１１〜請求項１３のいずれか１項に記載のユーザ識別装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機械学習装置、及びユーザ識別装置に関する。
【背景技術】
【０００２】
ロボットを運用するための作業には重大な事故につながる恐れがあるため、作業者に応じて操作内容を制限する等のセキュリティを設けることが知られている。これを実現するために、ＩＤ情報を記録したカードやＵＳＢ端末、又はパスワードを用いて作業者を判別し、作業者に合わせて作業内容を制限する提案がなされてきた。
【０００３】
例えば、特許文献１は、ネットワークに接続されたネットワークロボットを利用する際の、権利内容及び利用量の情報を含む権利データを生成すると共に、この権利データを識別するための権利ＩＤを発行し、ユーザ端末から入力された権利ＩＤを用いてユーザ認証する、サービス提供システムを開示している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−３２６９９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１に係る発明において、ＩＤ情報を記録したＩＤカードが貸与されたり、パスワードが漏えいしたりした場合には、安全性を確保できないという問題があった。
【０００６】
そこで、本発明は、作業者の成りすましを防ぎ、ロボットの作業における安全性を確保するための機械学習装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
（１）  本発明の機械学習装置（例えば、後述の機械学習装置１０）は、ロボット制御装置（例えば、後述の制御装置２０）の作業者を認証するためのユーザ識別を行う学習モデルを構築する機械学習装置であって、予め設定された前記ロボット制御装置の教示操作盤（例えば、後述の教示操作盤２５）に係る操作を前記作業者に行わせることにより検出される前記作業者の少なくとも身体の一部の動き及び身体の形状に関連する測定値を含む操作データを、入力データとして取得する入力データ取得手段（例えば、後述の入力部１１）と、前記作業者の識別情報をラベルとして取得するラベル取得手段（例えば、後述のラベル取得部１２）と、前記入力データと前記ラベルとの組を教師データとして教師あり学習を行うことにより、前記ロボット制御装置の作業者を認証するためのユーザ識別を行う学習モデルを構築する学習手段（例えば、後述の学習部１３）と、を備える。
【０００８】
（２）  （１）に記載の機械学習装置（例えば、後述の機械学習装置１０）において、前記教示操作盤（例えば、後述の教示操作盤２５）は、前記教示操作盤の備える表示器（例えば、後述の表示器２７）に、前記予め設定された前記ロボット制御装置（例えば、後述の制御装置２０）の教示操作盤に係る操作のガイダンスを表示することが好ましい。
【０００９】
（３）  （１）又は（２）に記載の機械学習装置（例えば、後述の機械学習装置１０）において、前記予め設定された前記ロボット制御装置（例えば、後述の制御装置２０）の教示操作盤（例えば、後述の教示操作盤２５）に係る操作は、前記作業者が作業時に実際に前記教示操作盤を使用する際の操作を含むことが好ましい。
【００１０】
（４）  （１）〜（３）に記載の機械学習装置（例えば、後述の機械学習装置１０）において、前記入力データ取得手段（例えば、後述の入力部１１）は、前記測定値から得られる特徴量を前記操作データとして取得することが好ましい。
【００１１】
（５）  （４）に記載の機械学習装置（例えば、後述の機械学習装置１０）において、前記特徴量は、前記作業者の前記操作に基づく、前記教示操作盤（例えば、後述の教示操作盤２５）により検知される前記教示操作盤の操作手順、前記教示操作盤が備える各キースイッチ（例えば、後述のキースイッチ２８）の使用頻度、前記教示操作盤が備えるデッドマンスイッチ（例えば、後述のデッドマンスイッチ２９）の使用頻度、前記教示操作盤が検出する振動、前記教示操作盤が検出する加速度、前記教示操作盤の操作時の機体の傾き、前記教示操作盤のタッチパネルが検知する筆圧のうち、少なくとも１つに関することが好ましい。
【００１２】
（６）  （１）〜（５）に記載の機械学習装置（例えば、後述の機械学習装置１０）において、前記入力データ取得手段（例えば、後述の入力部１１）は、さらに、本番時における前記作業者の教示操作盤（例えば、後述の教示操作盤２５）に係る実際の操作により検出される前記作業者の少なくとも身体の一部の動き及び身体の形状に関連する測定値を含む操作データを入力データとして取得し、前記ラベル取得手段（例えば、後述のラベル取得部１２）は、さらに、当該作業者の識別情報をラベルとして取得し、前記学習手段（例えば、後述の学習部１３）は、さらに、前記入力データと前記ラベルとの組を教師データとして教師あり学習を行うことで、前記学習モデルを更新することが好ましい。
【００１３】
（７）  本発明のユーザ識別装置（例えば、後述のユーザ識別装置３０）は、（１）〜（６）に記載の機械学習装置（例えば、後述の機械学習装置１０）で構築した前記学習モデルを用いたユーザ識別装置であって、前記予め設定された前記教示操作盤に係る操作を前記作業者に行わせることにより検出される前記作業者の少なくとも身体の一部の動き及び身体の形状に関連する測定値を含む操作データを取得する操作データ取得手段（例えば、後述の取得部３１）と、前記操作データと前記学習モデルとに基づいて、前記作業者を識別する作業者識別手段（例えば、後述の識別部３２）と、を備える。
【００１４】
（８）  （７）に記載のユーザ識別装置（例えば、後述のユーザ識別装置３０）において、前記操作データ取得手段（例えば、後述の取得部３１）は、さらに、前記作業者が本番時に前記教示操作盤（例えば、後述の教示操作盤２５）に係る実際の操作を実行中に、前記作業者の少なくとも身体の一部の動き及び身体の形状に関連する測定値を含む操作データを取得し、前記作業者識別手段（例えば、後述の識別部３２）は、さらに、前記操作データと前記学習モデルとに基づいて、前記作業者の識別情報が正しいか否かを判断することが好ましい。
【００１５】
（９）  （７）又は（８）に記載のユーザ識別装置（例えば、後述のユーザ識別装置３０）は、前記教示操作盤（例えば、後述の教示操作盤２５）に組み込まれ、前記教示操作盤と一体となっていることが好ましい。
【００１６】
（１０）  本発明のユーザ識別装置（例えば、後述のユーザ識別装置３０）は、（１）〜（６）の機械学習装置（例えば、後述の機械学習装置１０）と、前記予め設定された前記教示操作盤（例えば、後述の教示操作盤２５）に係る操作を前記作業者に行わせることにより検出される前記作業者の少なくとも身体の一部の動き及び身体の形状に関連する測定値を含む操作データを取得する操作データ取得手段（例えば、後述の取得部３１）と、前記操作データと、前記機械学習装置で構築した前記学習モデルとに基づいて、前記作業者を識別する作業者識別手段（例えば、後述の識別部３２）と、を備える。
【００１７】
（１１）  本発明のユーザ識別システムは、（７）〜（８）のユーザ識別装置（例えば、後述のユーザ識別装置３０）と、前記機械学習装置（例えば、後述の機械学習装置１０）と、前記ロボット制御装置（例えば、後述の制御装置２０）と、前記教示操作盤（例えば、後述の教示操作盤２５）と、を備える。
【００１８】
（１２）  （１１）に記載のユーザ識別システム（例えば、後述のユーザ識別システム１００）において、前記作業者識別手段（例えば、後述の識別部３２）が、前記作業者の識別情報が否であると判断した場合に、前記教示操作盤（例えば、後述の教示操作盤２５）に係る操作を無効とする操作無効化手段（例えば、後述の操作無効化部３３）を、前記ロボット制御装置（例えば、後述の制御装置２０）がさらに備えることが好ましい。
【００１９】
（１３）  （１１）又は（１２）に記載のユーザ識別システム（例えば、後述のユーザ識別システム１００）において、前記作業者識別手段（例えば、後述の識別部３２）が、前記作業者の識別情報が否であると判断した場合に、警報を発報する警報手段（例えば、後述の警報部２４）を、前記ロボット制御装置（例えば、後述の制御装置２０）がさらに備えることが好ましい。
【００２０】
（１４）  （１１）〜（１３）に記載のユーザ識別システム（例えば、後述のユーザ識別システム１００）において、前記作業者識別手段（例えば、後述の識別部３２）が、前記作業者の識別情報の正否を判断できなかった場合に、前記機械学習装置（例えば、後述の機械学習装置１０）は、作業者の身体的差異に係る特徴量を算出するために用いることが可能な、さらなる操作データを用いて、さらなる学習モデルを構築し、前記作業者識別手段は、さらなる操作データと、さらなる学習モデルとに基づいて、前記作業者を再度識別することが好ましい。
【発明の効果】
【００２１】
本発明によれば、作業者の成りすましを防ぎ、ロボットの作業における安全性を確保することができる。
【図面の簡単な説明】
【００２２】
【図１】本発明の第１実施形態に係るユーザ識別システムを示すブロック図である。
【図２】本発明の第１実施形態に係る機械学習装置及び制御装置の詳細を示すブロック図である。
【図３】本発明の第１実施形態に係る教示操作盤の構成例を示す図である。
【図４】本発明の第１実施形態に係るユーザ識別装置及び制御装置の詳細を示すブロック図である。
【図５】本発明の第１実施形態に係るユーザ識別システムにおける機械学習時の動作を示すフローチャートである。
【図６】本発明の第１実施形態に係るユーザ識別システムにおけるユーザ識別時の動作を示すフローチャートである。
【図７】本発明のその他の実施形態に係る機械学習装置、ユーザ識別装置、及び制御装置の詳細を示すブロック図である。
【発明を実施するための形態】
【００２３】
＜第１実施形態＞
以下、本発明の第１実施形態を図面に基づいて説明する。図１は、本発明に係るユーザ識別システム１００を示すブロック図である。図２は、主として、本実施形態に係る機械学習装置１０及び制御装置２０の詳細を示すブロック図である。図３は、本発明に係るユーザ識別方法で用いる教示操作盤２５の構成例である。図４は、主として、本実施形態に係るユーザ識別装置３０及び制御装置２０の詳細を示すブロック図である。
【００２４】
＜ユーザ識別システム１００の構成＞
まず、本実施形態に係るユーザ識別システム１００の構成について説明する。ユーザ識別システム１００は、図１に示すように、機械学習装置１０、ｍ台の制御装置２０、ｍ台の教示操作盤２５、ｎ台のユーザ識別装置３０、ｍ台のロボット５０を備えている。なお、ｍ及びｎは任意の自然数である。
【００２５】
制御装置２０は、ロボット５０に制御信号を送出することにより、ロボット５０が所定の動作を行うように制御する。制御装置２０は、ロボット５０のためのプログラムがインストールされた汎用のコンピュータであってもよいし、専用のコンピュータであってもよい。
【００２６】
ロボット５０は、制御装置２０からの制御信号により動作し、ある程度自律的に、作業者の代行となる自動作業を行う。
【００２７】
なお、機械学習装置１０、教示操作盤２５、ユーザ識別装置３０の機能と構成については、図２〜図４を用いて後述する。
【００２８】
ここで、制御装置２０と教示操作盤２５とロボット５０とは１対１の組とされて、通信可能に接続されている。これら制御装置２０と教示操作盤２５とロボット５０との組は、例えば同じ工場に複数組配置されていてもよく、それぞれ異なる工場に配置されていてもよい。
【００２９】
また、機械学習装置１０と、制御装置２０と、ユーザ識別装置３０とは、相互に通信可能に接続されている。なお、機械学習装置１０と、制御装置２０と、ユーザ識別装置３０とは、接続インタフェースを介して直接接続されても、ネットワーク４０を介して接続されてもよい。ネットワーク４０は、例えば、工場内に構築されたＬＡＮ（Local Area Network）や、インターネット、公衆電話網、あるいは、これらの組み合わせである。ネットワーク４０における具体的な通信方式や、有線接続及び無線接続のいずれであるか等については、特に限定されない。
【００３０】
次に、ユーザ識別システム１００に含まれるこれら装置の機能について、図２〜図４に基づいて説明する。ここで、図２は、主として、機械学習装置１０と制御装置２０に含まれる機能ブロックと、機械学習時におけるデータの流れを表すブロック図である。なお、各制御装置２０はそれぞれ同等の機能を有しているため、図２では１台のみを図示する。同様に、各教示操作盤２５もそれぞれ同等の機能を有しているため、図２では１台のみを図示する。また、各装置間に存在するネットワーク４０については、その図示を省略する。
【００３１】
教示操作盤２５は、ロボット５０を自動運転する際に、例えば、ロボット５０に対して動作を教示するために作業者が操作する装置である。教示操作盤２５は作業者からの操作に基づいて、制御装置２０に対して操作信号を送信する。
【００３２】
図３は、教示操作盤２５の構成例を示す。教示操作盤２５は、主として、電源スイッチ２６、表示器２７、キースイッチ２８、及び左右のデッドマンスイッチ２９Ａ及び２９Ｂを備える。電源スイッチ２６は、外部電源からの教示操作盤２５に対する電力供給の有無を切り替えるスイッチである。表示器２７は、教示操作盤２５を用いる作業者に対してガイダンスやロボット５０の各モニタ値を表示し、タッチパネルとして実現される。キースイッチ２８は、作業者がロボット５０に対する動作の教示を入力するためのスイッチである。デッドマンスイッチ２９Ａ及び２９Ｂは、非常停止スイッチ機構である。通常の操作時において、作業者はデッドマンスイッチ２９Ａ及び２９Ｂのいずれかに対し、所定範囲の押圧力を印加する。非常時において、作業者がデッドマンスイッチ２９Ａ及び２９Ｂのいずれかを強く押した場合に、ロボット５０は動作を停止する。あるいは、作業者がデッドマンスイッチ２９Ａ及び２９Ｂの双方から手を離した場合に、ロボット５０は動作を停止してもよい。
【００３３】
図２に示すように、制御装置２０は、特徴量算出部２１、ログイン処理部２２、操作無効化部２３、及び警報部２４を有する。
【００３４】
特徴量算出部２１は、教示操作盤２５から入力される操作信号から特徴量を算出する。
より具体的には、教示操作盤２５の表示器２７に表示された操作のガイダンスに従って、作業者は、上記の教示操作盤２５を操作する。作業者が初めて教示操作盤２５を操作する場合、例えば、管理責任者の立会いの下で、規定された操作を行ってもよい。この操作は、作業者が本番の操作を行う前のルーチン操作であり、作業者が実際に操作盤を使用する際の操作を全て網羅する内容を含み、操作時間も、作業者が実際に教示操作盤を操作する時間に近い時間とすることが望ましい。
特徴量算出部２１は、これらの操作に係る操作信号の測定値から、特徴量を算出し、後述の機械学習装置１０に送信する。
具体的には、この特徴量は、教示操作盤２５により検知される教示操作盤２５の操作手順、各キースイッチ２８の使用頻度、デッドマンスイッチ２９Ａ及び２９Ｂの使用頻度、教示操作盤２５が検出する振動、教示操作盤２５が検出する加速度、教示操作盤２５の操作時の機体の傾き、表示器２７が検知する筆圧のうち、少なくとも１つに関する。
同じ作業を行う場合でも、作業者が異なれば、各キースイッチ２８やデッドマンスイッチ２９Ａ及び２９Ｂの使用方法も異なってくる。例えば、熟練者と非熟練者とでは、操作するキースイッチを押す回数に差が生じる。より具体的には、熟練者はキースイッチを押す回数が少なくて済む一方で、非熟練者はスイッチの押下が冗長となる。また、上記のようにデッドマンスイッチ２９Ａ及び２９Ｂは、教示操作盤２５の左右に位置するため、作業者の利き手によって使用するスイッチに偏りが生じる。後述の方法により、これらの操作の特徴が作業者によって異なることを用いて学習モデルを構築するため、上記のように、特徴量算出部２１は、これらの操作に係る操作信号の測定値から得られる特徴量を、算出する。
【００３５】
ログイン処理部２２、操作無効化部２３、警報部２４の機能については、図４を用いて後述する。
【００３６】
機械学習装置１０は、教師あり機械学習により、ロボット５０の制御装置２０の作業者を認証するための学習モデルを構築する。そのため、図２に示すように、機械学習装置１０は、入力部１１、ラベル取得部１２、学習部１３、及び学習モデル記憶部１４を備えている。
【００３７】
入力部１１は、制御装置２０の特徴量算出部２１から、特徴量を取得する。
ラベル取得部１２は、作業者の識別情報であるラベルを取得する。
学習部１３は、特徴量とラベルとの組を教師データとして教師あり学習を行うことにより、制御装置２０の作業者を認証するためのユーザ識別を行う学習モデルを構築し、構築した学習モデルを、後述のユーザ識別装置３０の識別部３２に送信する。学習モデル記憶部１４は、学習部１３が構築した学習モデルを記憶する。
【００３８】
なお、学習部１３は、例として、サポート・ベクター・マシン（Support Vector Machine、以下ＳＶＭともいう）を用いて実現することが可能である。ＳＶＭは公知技術であるのでその詳細な説明は省略するが、教師あり学習（正解データと非正解データが教師データとして与えられる学習）を用いる識別手法の１つであり、識別が優れた学習モデルとして知られており、例えば、未学習データに対して高い識別性能（高い汎化性能）を得られることが知られている。
学習部１３は、上記のラベルとして、特定の作業者に該当するか否かに係る二値化されたラベルを用いると共に、上記の特徴量を含む空間を、特定の作業者に該当するか否かに関して、マージンが最大となるように分離する超平面を算出する。さらに、学習部１３は、この超平面の係数を、後述のユーザ識別装置３０がユーザ識別のために用いる学習モデルのパラメータとすることが可能である。
例えば、制御装置２０に登録すべき作業者として、Ａ、Ｂ、及びＣの３名の作業者が存在する場合、ラベル取得部１２が取得するラベルとして、「Ａである」というラベルと、「Ａではない」というラベルとを用いる。さらに、学習部１３は、Ａ、Ｂ、及びＣ、３名分の特徴量データ群を、「Ａである」というラベルに対応するか（正例）、「Ａではない」というラベルに対応するか（負例）によって分離する超平面であって、「Ａである」特徴量データ群のうち最も近傍に存在する特徴量データとの距離と、「Ａではない」特徴量データ群のうち最も近傍に存在する特徴量データとの距離が、最大となる超平面を求める。学習部１３は、この超平面の係数を用いて、「Ａである」か「Ａではない」かについて識別する学習モデルを構築することが可能である。同様に、学習部１３は、同一の特徴量データ群と、「Ｂである」及び「Ｂではない」というラベルを用いることにより、「Ｂである」か「Ｂではない」かについて識別する学習モデルを構築することが可能である。また、学習部１３は、同一の特徴量データ群と、「Ｃである」及び「Ｃではない」というラベルを用いることにより、「Ｃである」か「Ｃではない」かについて識別する学習モデルを構築することが可能である。すなわち、学習部１３が、ＳＶＭを用いて実現された場合、Ａ、Ｂ、及びＣを識別するために、Ａ、Ｂ、及びＣの各々に対応する３つの学習モデルを構築することとなる。
【００３９】
学習モデル記憶部１４は、上記のように、学習部１３が構築した学習モデルを記憶する。とりわけ、学習部１３が、ＳＶＭを用いて実現された場合には、識別すべき作業者の人数分の学習モデルを記憶する。
【００４０】
図４は、主として、ユーザ識別装置３０と制御装置２０とに含まれる機能ブロックと、ユーザ識別時におけるデータの流れを表すブロック図である。
【００４１】
ユーザ識別装置３０は、教示操作盤２５に係る操作をしている作業者が、事前に登録された特定の作業者に対応するか否かについて識別する。そのため、図４に示すように、ユーザ識別装置３０は、取得部３１、及び識別部３２を備える。
【００４２】
取得部３１は、上記の入力部１１と同様に、教示操作盤２５の表示器２７にガイダンス表示された操作を作業者に行わせることにより、教示操作盤２５から入力される操作信号から、制御装置２０の特徴量算出部２１が算出した特徴量を取得する。繰り返しとなるが、この操作は、作業者が本番の操作を行う前のルーチン操作であり、作業者が実際に操作盤を使用する際の操作を全て網羅する内容を含み、操作時間も、作業者が実際に教示操作盤を操作する時間に近い時間とすることが望ましい。
【００４３】
識別部３２は、取得部３１が取得した特徴量と、機械学習装置１０の学習部１３から取得した学習モデルとを用いて、教示操作盤２５に係る操作を行った作業者が、事前に登録された作業者であるか否か、識別し、識別結果を制御装置２０に送信する。
なお、図４においては、簡略化のため、１つの識別部３２のみ示すが、上記のように、機械学習装置１０の学習部１３がＳＶＭを用いて実現された場合には、識別部３２は、事前に登録された作業者の人数分だけ存在する。具体的には、事前に登録された作業者が、例えば、Ａ、Ｂ、及びＣの３名存在した場合、教示操作盤２５に係る操作を行った作業者が、Ａか否かを識別する識別部３２Ａと、Ｂか否かを識別する識別部３２Ｂと、Ｃか否かを識別する識別部３２Ｃと、合計３つの識別部３２が必要となる。
この場合、最初に、識別部３２Ａが、上記の操作データを用いて、操作をした作業者がＡに一致するか否かを識別し、次に、識別部３２Ｂが、上記の操作データを用いて、操作をした作業者がＢに一致するか否かを識別し、最後に、識別部３２Ｃが、上記の操作データを用いて、操作をした作業者がＣに一致するか否かを識別することにより、操作をした作業者が、Ａ、Ｂ、及びＣのうち誰に一致するかを識別することが可能となる。
【００４４】
制御装置２０は、上記のように、特徴量算出部２１に加えて、ログイン処理部２２、操作無効化部２３、及び警報部２４を備える。
【００４５】
ログイン処理部２２は、ユーザ識別装置３０の識別部３２から受信した識別結果に基づいて、教示操作盤２５の表示器２７にガイダンス表示された操作を行った作業者の、制御装置２０へのログイン処理をする。より具体的には、ログイン処理部２２が、ユーザ識別装置３０の識別部３２から、作業者の識別情報が正である旨の識別結果を受信した場合には、作業者のログインを許可する。一方で、ログイン処理部２２が、ユーザ識別装置３０から、作業者の識別情報が否である旨の識別結果を受信した場合には、作業者のログインを許可しない。
【００４６】
操作無効化部２３は、ユーザ識別装置３０の識別部３２から、作業者の識別情報が否である旨の識別結果を受信した場合に、教示操作盤２５に係る操作を無効とする。これにより、作業者は、教示操作盤２５に係る操作が出来なくなる。
【００４７】
警報部２４は、ユーザ識別装置３０から、作業者の識別情報が否である旨の識別結果を受信した場合に、警報を発報する。
【００４８】
＜機械学習時の動作＞
次に、本実施形態に係るユーザ識別システム１００における機械学習時の動作について説明する。図５は、この機械学習時の機械学習装置１０の動作を示すフローチャートである。
【００４９】
ステップＳ１１において、機械学習装置１０の入力部１１は、制御装置２０の特徴量算出部２１から、特徴量を取得する。より具体的には、作業者が、教示操作盤２５の表示器２７に表示された操作のガイダンスに従って、教示操作盤２５を操作した際の操作信号から、特徴量算出部２１が算出した特徴量を、入力部１１が取得する。
【００５０】
ステップＳ１２において、機械学習装置１０のラベル取得部１２は、作業者の識別情報であるラベルを取得する。
【００５１】
ステップＳ１３において、機械学習装置１０の学習部１３は、特徴量とラベルとの組を教師データとして受け付ける。
【００５２】
ステップＳ１４において、機械学習装置１０の学習部１３は、この教師データを用いて機械学習を実行する。
【００５３】
ステップＳ１５において、機械学習装置１０の学習部１３は、機械学習を終了するか、それとも機械学習を繰り返すかを判定する。ここで、機械学習を終了させる条件は任意に定めることができる。例えば、予め定められた回数だけ機械学習を繰り返した場合に、機械学習を終了させるようにしてもよい。
【００５４】
ここで、機械学習を繰り返す場合には、処理はステップＳ１１に戻り、機械学習装置１０は同じ動作を繰り返す。一方、機械学習を終了する場合には、ステップＳ１６において、機械学習装置１０は、その時点までの機械学習により構築した学習モデルをネットワーク４０経由で各ユーザ識別装置３０に送信する。
【００５５】
また、機械学習装置１０の学習モデル記憶部１４は、この学習モデルを記憶する。これにより、新たに設置されたユーザ識別装置３０から学習モデルを要求された場合に、そのユーザ識別装置３０に学習モデルを送信することができる。また、新たな教師データを取得した場合に、学習モデルに対して更なる機械学習を行うこともできる。
【００５６】
＜ユーザ識別時の動作＞
次いで、本実施形態に係るユーザ識別システム１００におけるユーザ識別時の動作について説明する。図６は、このユーザ識別時のユーザ識別装置３０の動作を示すフローチャートである。
【００５７】
ステップＳ２１において、ユーザ識別装置３０の識別部３２は、機械学習装置１０が構築した学習モデルをネットワーク４０経由で受信することにより、学習モデルを取得する。
【００５８】
ステップＳ２２において、ユーザ識別装置３０の取得部３１は、制御装置２０から、識別情報と、特徴量を取得する。より具体的には、教示操作盤２５の表示器２７に表示された操作のガイダンスに従って、作業者が教示操作盤２５を操作した際の操作信号から算出された特徴量を、識別情報と共に、取得部３１が取得する。
【００５９】
ステップＳ２３において、ユーザ識別装置３０の識別部３２は、特徴量と、機械学習装置１０が構築した学習モデルとに基づいて、作業者を識別する。
【００６０】
ステップＳ２４において、識別情報が正の場合（Ｓ２４：ＹＥＳ）には、処理はステップＳ２５に移行する。識別情報が否の場合（Ｓ２４：ＮＯ）には、処理はステップＳ２６に移行する。
【００６１】
ステップＳ２５において、制御装置２０のログイン処理部２２は、ユーザ識別装置３０の識別部から、識別情報が正である旨の識別結果を受信し、作業者のログインを許可する。
【００６２】
ステップＳ２６において、制御装置２０のログイン処理部２２は、ユーザ識別装置３０の識別部から、識別情報が否である旨の識別結果を受信し、作業者のログインを不許可とする。
【００６３】
ステップＳ２７において、制御装置２０の操作無効化部３３は、教示操作盤２５に係る操作を無効とする。この結果、作業者は教示操作盤２５に係る操作が出来なくなる。
【００６４】
なお、ステップＳ２７において、制御装置２０の操作無効化部３３が、教示操作盤２５に係る操作を無効とする代わりに、あるいは、教示操作盤２５に係る操作を無効とするのに加えて、制御装置２０の警報部２４が警報を発報してもよい。
【００６５】
＜第１実施形態の効果＞
このように、本実施形態では、機械学習装置１０において、教示操作盤に係る操作を作業者に行わせることにより検出される、作業者の少なくとも身体の一部の動き及び身体の形状に関連する測定値を含む操作データから、ロボット制御装置の作業者を認証するためのユーザ識別を行う学習モデルを構築する。
【００６６】
また、ユーザ識別装置３０において、機械学習装置１０によって構築された学習モデルに基づいて、作業者を識別する。
【００６７】
この点、教示操作盤２５の扱い方によって変化する特徴量を機械学習し、作業者に固有のパターンを抽出することで、教示操作盤２５が作業者を識別すれば、作業者の成り済ましを防ぎ、ロボットの作業における安全性を確保することができる。とりわけ、教示操作盤２５側にカメラやＩＤリーダー等を必要とすることもなく、作業者の教示操作盤２５の扱い方からパターンを抽出するので、作業者が偽装をすることが困難となる。
【００６８】
上述した実施形態は、本発明の好適な実施形態ではあるが、上記実施形態に本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において、種々の変更を施した形態での実施が可能である。
【００６９】
＜変形例１＞
本実施形態における、作業者を認証する際の作業者に行わせる教示操作盤２５に係る操作として、作業者がロボット５０を実際に操作する際の教示操作盤２５に係る操作を含むものとしたが、これに限定されない。
作業者がロボット５０を実際に操作する際の教示操作盤２５に係る操作以外に、作業者の身体的な差異等を直接識別できる動作を行わせてもよい。より具体的には、例えば、作業者に教示操作盤２５を持って歩かせる動作を含ませてもよい。そうすることで、歩行により測定される教示操作盤２５の振動データを、作業者の歩幅を示す特徴量として用いることができる。また、作業者に教示操作盤２５を持つ腕を伸ばし、頭の上まで持ち上げさせる動作を含めてもよい。この動作により測定される教示操作盤２５の傾きに関するデータを、作業者の腕の長さを示す特徴量として用いることができる。
このような作業者の身体的な差異等を直接識別できる動作を、前述したルーチン操作に含むように構成することができる。
【００７０】
なお、作業者の身体的な差異等を直接識別できる動作を付加した特徴量に基づく学習モデル（「学習モデル_２」という）を、前述したルーチン操作から得られる特徴量に基づく学習モデル（「学習モデル_１」という）に加えて、学習するようにしてもよい。
そうすることで、ログイン時に、作業者に前述したルーチン操作を行わせた場合に、「学習モデル_１」によりユーザ識別装置３０が作業者を識別できなかったときに、さらに、前述の作業者の身体的な差異等を直接識別できる動作を行わせることで、ユーザ識別装置３０が「学習モデル_２」により作業者を識別するように識別処理を段階的に行うようにしてしてもよい。
【００７１】
＜変形例２＞
また、本実施形態における機械学習時に用いられる構成要素として、機械学習装置１０の学習部１３が、２クラス（正否判定のＹｅｓ／Ｎｏ）のパターン識別器であるＳＶＭを用いて実現されるとしたが、これに限定されない。
例えば、単純ベイズ分類器、ニューラルネットワーク、ブースティング等を用いて、教師あり学習を行うようにしてもよい。
また、複数クラスに分類するように、ＳＶＭを行使してもよい、また、複数クラスに識別分類するような機械学習（例えばニューラルネットワーク）を用いてもよい。
例えば、作業者がＡ、Ｂ、及びＣの３名存在する場合、機械学習装置１０のラベル取得部１２は、ラベルＡ、ラベルＢ、及びラベルＣの３種類のラベルを取得し、学習部１３が、Ａ、Ｂ、及びＣ３名分の特徴量と、これら３種類のラベルとの組を教師データとする、教師あり学習を実施することにより、学習モデルを構築してもよい。この場合においては、ユーザ識別装置３０の識別部３２は１つだけ存在し、１つの識別部３２が１つの学習モデルを用いることにより、作業者の識別情報の正否を判定することとなる。
【００７２】
＜変形例３＞
また、本実施形態における機械学習時に用いられる教師データとして、ログイン時（本番の操作を許可する前）に、作業者に、予め設定されたルーチン操作を実行させることで得られる当該ルーチン操作に係る操作信号の測定値から算出される特徴量を、教師データのラベルとしたが、これに限定されない。
例えば、機械学習装置１０において、ログイン後（本番の操作を許可された後）における作業者の教示操作盤２５に係る実際の操作に基づいて算出される特徴量を、教師データのラベルとして使用してもよい。
図７は、実際の操作に基づいて算出される特徴量を、教師データのラベルとして使用する際の、機械学習装置１０、制御装置２０、及びユーザ識別装置３０の間でのデータの流れを示す。なお、機械学習装置１０の構成は、図２に記載の機械学習装置１０の構成と同一であり、及び制御装置２０の構成は、図２及び図４に記載の制御装置２０の構成と同一であり、ユーザ識別装置３０の構成は、図４に記載のユーザ識別装置３０の構成と同一である。
【００７３】
作業者が、教示操作盤２５を操作することにより、ロボット５０を操作する際、この操作に係る操作信号に基づいて、制御装置２０の特徴量算出部２１が特徴量を算出する。更に、特徴量算出部２１は、この特徴量を機械学習装置１０の入力部１１に送信する。また、実際の作業中である、すなわち、作業者は制御装置２０にログイン済みであるため、機械学習装置１０のラベル取得部１２は、操作中の作業者に対応するラベルを取得する。学習部１２は、これら特徴量とラベルとの組を教師データとして用いることにより、学習モデルをアップデートするように構成することができる。さらに、学習部１２は、アップデートした学習モデルをユーザ識別装置３０の識別部３２に送信することができる。ユーザ識別装置３０の識別部３２は、取得部３１が、制御装置２０の特徴量算出部２１から取得した特徴量と、アップデートされた学習モデルとを用いて、作業者を識別することが可能となる。
これにより、作業者が教示操作盤２５を操作する度に、作業者を識別するパターンをアップデートすることができ、パターンの固有性を高めることができる。
【００７４】
＜変形例４＞
また、本実施形態におけるユーザ識別時の動作として、ログイン時に作業者を識別するとしたが、これに限定されない。
例えば、ログイン後（本番の操作を許可された後）のロボット５０の操作中に、作業者が、ロボット５０を操作する際の、教示操作盤２５に係る操作により生成された操作信号から、制御装置２０の特徴量算出部２１が特徴量を算出し、ユーザ識別装置３０の取得部３１がこの特徴量を取得し、ユーザ識別装置３０の識別部３２が、この特徴量を用いてユーザ識別処理を実行するようにしてもよい。例えば、ログイン後に作業者の作業中に、特徴量算出部２１が、それまでの作業における所定の操作量に基づいて、当該作業者に係る特徴量を算出し、識別部３２が、この特徴量を用いて、作業者を再度識別してもよい。仮に、当該作業者をログイン時に認証した者として認証できなかった場合、制御装置２０の操作無効化部３３が、教示操作盤２５に係る操作を無効とするようにしてもよい。また、教示操作盤２５に係る操作を無効とするのに加えて／又は制御装置２０の警報部３４が警報を発報してもよい。
そうすることで、例えば、ログイン時に成りすましを行った作業者を誤って認証した場合であっても、作業者の普段の癖等が本番時に出ることにより、成りすましを発見することが可能となる。
【００７５】
＜変形例５＞
また、本実施形態におけるログイン時のユーザ識別時の動作として、ユーザ識別装置３０の取得部３１は、作業者の識別情報（ユーザＩＤ）を取得し、識別部３２が、この識別情報（ユーザＩＤ）の正否について、制御装置２０から受信した特徴量に基づいて、識別するとしたが、これに限定されない。
例えば、ログイン時のユーザ識別時の動作として、作業者の識別情報（ユーザＩＤ）を入力せず、すなわち、ユーザ識別装置３０の取得部３１は、作業者の識別情報（ユーザＩＤ）を取得せずに、制御装置２０から受信した特徴量のみに基づいて、当該作業者を識別するようにしてもよい。
ユーザ識別装置３０は、例えば当該作業者を作業者Ａとして認証した場合、教示表示盤２５にその旨を表示するようにしてもよい。
そうすることで、ログイン時のユーザＩＤの入力を省略することができる。
【００７６】
＜変形例６＞
また、本実施形態におけるユーザ識別システム１００において、ユーザ識別装置３０は、教示操作盤２５及び機械学習装置１０の各々と別体であるとしたが、これに限定されない。
例えば、ユーザ識別システム１００の構成として、ユーザ識別装置３０と教示操作盤２５が一体の装置として実現されるようにしてもよい。あるいは、ユーザ識別装置３０と機械学習装置１０が一体の装置として実現されるようにしてもよい。あるいは、機械学習装置１０の機能の一部又は全部を、制御装置２０により実現してもよい。あるいは、ユーザ識別装置３０の機能の一部又は全部を、制御装置２０により実現してもよい。
更に、上述した実施形態では、機械学習装置１０を、学習を行う機能と、学習モデルを記憶する機能とを有するものとしたが、学習を行う機能と、学習モデルを記憶する機能とを別の装置で行うようにしてもよい。
【００７７】
なお、上記のユーザ識別システム１００に含まれる各装置は、ハードウェア、ソフトウェア又はこれらの組み合わせによりそれぞれ実現することができる。また、上記のユーザ識別システム１００に含まれる各装置により行なわれるユーザ識別方法も、ハードウェア、ソフトウェア又はこれらの組み合わせにより実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。
【００７８】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば、光磁気ディスク）、ＣＤ−ＲＯＭ(Read Only Memory)、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ(Programmable ROM)、ＥＰＲＯＭ(Erasable PROM)、フラッシュＲＯＭ、ＲＡＭ(random access memory）)を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【符号の説明】
【００７９】
１０  機械学習装置
１１  入力部
１２  ラベル取得部
１３  学習部
１４  学習モデル記憶部
２０  制御装置
２１  特徴量算出部
２２  ログイン処理部
２３  操作無効化部
２４  警報部
２５  教示操作盤
２６  電源スイッチ
２７  表示器
２８  キースイッチ
２９Ａ  ２９Ｂ  デッドマンスイッチ
３０  ユーザ識別装置
３１  取得部
３２  識別部
５０  ロボット
１００  ユーザ識別システム
【図１】
2019025582.tif 000003
【図２】
2019025582.tif 000004
【図３】
2019025582.tif 000005
【図４】
2019025582.tif 000006
【図５】
2019025582.tif 000007
【図６】
2019025582.tif 000008
【図７】
2019025582.tif 000009