(57)【要約】【課題】機械が故障したこと等を迅速に検出して効率的に動作させる。【解決手段】生産システム（１０）のセル制御装置（３０）は、製品情報を監視する製品情報監視部（３１）と、少なくとも一つのセルに供給される複数種類の部品および複数種類のそれぞれの部品の数を監視する部品供給状態監視部（３２）と、部品供給状態監視部により監視される複数種類のそれぞれの部品の数が複数種類の部品のそれぞれに応じて定まる所定範囲から逸脱する場合に上位管理コントローラに通知する通知部（３４）とを含む。【選択図】図１
2017191567.tif 000002
【特許請求の範囲】
【請求項１】
製品を作成する複数の機械（Ｒ１〜Ｒ３）と該複数の機械を制御する複数の機械制御装置（ＲＣ１〜ＲＣ２）とを含む少なくとも一つのセル（１６）と、
該少なくとも一つのセルに通信可能に接続されていて前記セルを制御するセル制御装置（１８）と、
該セル制御装置に通信可能に接続されていて製品情報を含む上位管理コントローラ（２０）と、を具備し、
前記製品情報は、一つの前記製品を作成するための複数種類の部品と前記複数種類のそれぞれの部品の数とを含んでおり、
前記セル制御装置は、
前記製品情報を監視する製品情報監視部（３１）と、
前記少なくとも一つのセルに供給される前記複数種類の部品および前記複数種類のそれぞれの部品の数を監視する部品供給状態監視部（３２）と、
該部品供給状態監視部により監視される前記複数種類のそれぞれの部品の数が前記複数種類の部品のそれぞれに応じて定まる所定範囲から逸脱する場合に前記上位管理コントローラに通知する通知部（３４）と、を具備する生産システム。
【請求項２】
前記セル制御装置は、前記セルにおいて実際に作成された前記製品の数を監視する製品監視部（３３）を含んでおり、
前記部品供給状態監視部により監視された前記複数種類の部品および前記複数種類のそれぞれの部品の数に応じて定まる、前記セルにおいて作成されるべき前記製品の数が、前記製品監視部により監視されていて前記セルにおいて実際に作成された前記製品の数よりも小さい場合には、前記通知部は前記上位管理コントローラに通知する、請求項１に記載の生産システム。
【請求項３】
前記セル制御装置は、前記セルにおいて実際に作成された前記製品の数を監視する製品監視部（３３）を含んでおり、
前記部品供給状態監視部により監視された前記複数種類の部品および前記複数種類のそれぞれの部品の数に応じて定まる、前記セルにおいて作成されるべき前記製品の数が、前記製品監視部により監視されていて前記セルにおいて実際に作成された前記製品の数と同じであると共に、
前記セルにおいて作成されるべき前記製品の数が、所望される前記製品の数よりも小さい場合には、前記通知部は前記上位管理コントローラに通知する、請求項１に記載の生産システム。
【請求項４】
前記生産システムは、該生産システムの生産データを学習する機械学習装置（５０）を具備し、
該機械学習装置は、
前記生産システムの状態量を観測する状態量観測部（１１）と、
前記生産システムにおける前記製品の作成結果を取得する動作結果取得部（１２）と、
前記状態量観測部からの出力および前記動作結果取得部からの出力を受け取り、前記生産データを、前記生産システムの前記状態量および前記作成結果に関連付けて学習する学習部（１３）と、
前記機械学習装置が学習した前記生産データを参照して、生産データを出力する意思決定部（１４）と、を備える、請求項１から３のいずれか一項に記載の生産システム。
【請求項５】
前記セル制御装置は、前記セルにおいて実際に作成された前記製品の数を監視する製品監視部（３３）を含んでおり、
前記状態量観測部が観測する状態量は、所望される製品の数、前記製品情報監視部により監視される前記製品情報、前記部品供給状態監視部により監視される前記複数種類の部品および前記複数種類のそれぞれの部品の数、前記製品監視部により監視された実際に作成された前記製品の数、および前記セルに含まれる前記複数の機械のそれぞれの設定のうちの少なくとも一つを含む、請求項４に記載の生産システム。
【請求項６】
前記意志決定部が出力する生産データは、前記少なくとも一つのセルに供給されるべき前記複数種類のそれぞれの部品の数、および前記少なくとも一つのセルに含まれる前記複数の機械の設定のうちの少なくとも一方を含む、請求項４または５に記載の生産システム。
【請求項７】
前記機械学習装置は、生産データを学習する学習モデルを備え、
前記動作結果取得部が取得した前記作成結果と予め設定された目標との間の誤差を計算する誤差計算部（１５）と、
前記誤差に応じて前記学習モデルを更新する学習モデル更新部（１６）とを備えることを特徴とする請求項４に記載の機械学習装置。
【請求項８】
前記機械学習装置は、生産データの価値を定める価値関数を有し、
前記機械学習装置は、さらに、前記動作結果取得部が取得した前記作成結果と予め設定された目標との間の差異が小さい場合にはその差異に応じてプラスの報酬を与え、前記差異が大きい場合にその差異に応じてマイナスの報酬を与える報酬計算部（１８）と、
前記報酬に応じて前記価値関数を更新する価値関数更新部（１９）を備えることを特徴とする請求項４に記載の機械学習装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、上位管理コントローラにおいて計画された生産計画を実施する生産システムに関する。
【背景技術】
【０００２】
従来、組み立てラインなどにおいては、製品を作成するために複数種類の多数の部品を取扱っている。図８は従来技術における生産システムのブロック図である。図８においては、セル４００が、複数の機械Ｒ１〜Ｒ２、機械Ｒ１〜Ｒ２を制御する複数の機械制御装置ＲＣ１〜ＲＣ２とを含んでいる。セル４００においては、複数の機械Ｒ１〜Ｒ２が単独でまたは互いに協動して製品を作成するものとする。そして、生産計画装置としての上位管理コントローラ２００がセル４００に通信部４１０により通信可能に接続されている。
【０００３】
ここで、一つの製品を作成するのに必要な部品の種類およびそれぞれの部品の数は製品情報Ｓ０として、上位管理コントローラ２００に包含されている。上位管理コントローラ２００は、製品情報Ｓ０に応じて定まる数の複数種類の部品をセル４００に供給する。
【０００４】
また、特許文献１には、生産計画装置が複数種類の部品の在庫や部品の数の情報にもとづいて生産性を向上させることが開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１３−０１６０８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、図８に示される生産システムにおいては、セル４００の機械Ｒ１〜Ｒ２が故障したり、操作者が誤って上位管理コントローラ２００を操作した場合には、上位管理コントローラ２００に設定された生産計画に従って製品が作成されない場合がある。
【０００７】
具体的には、以下のような場合である。
（１）機械Ｒ１〜Ｒ２の少なくとも一方が故障しているため、製造能力が著しく低下している。
（２）上位管理コントローラ２００は監督範囲が広いものの、応答性に劣る。このため、部品の供給が遅れることにより、機械Ｒ１〜Ｒ２が部品待ちの状態になってタイムロスが発生する。この場合には、製品を適切に製造できない。
（３）上位管理コントローラ２００へのインプットに誤りがあり、部品の供給に過不足が生じている。
【０００８】
これら問題点が迅速に検出されない場合には、時間が経過するに従って生産システムの製造効率が低下することとなる。なお、特許文献１では、前述した問題点を迅速に検出することは開示されていない。
【０００９】
本発明はこのような事情に鑑みてなされたものであり、機械が故障したこと等を迅速に検出して効率的に動作させることのできる生産システムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
前述した目的を達成するために１番目の発明によれば、製品を作成する複数の機械と該複数の機械を制御する複数の機械制御装置とを含む少なくとも一つのセルと、該少なくとも一つのセルに通信可能に接続されていて前記セルを制御するセル制御装置と、該セル制御装置に通信可能に接続されていて製品情報を含む上位管理コントローラと、を具備し、前記製品情報は、一つの前記製品を作成するための複数種類の部品と前記複数種類のそれぞれの部品の数とを含んでおり、前記セル制御装置は、前記製品情報を監視する製品情報監視部と、前記少なくとも一つのセルに供給される前記複数種類の部品および前記複数種類のそれぞれの部品の数を監視する部品供給状態監視部と、該部品供給状態監視部により監視される前記複数種類のそれぞれの部品の数が前記複数種類の部品のそれぞれに応じて定まる所定範囲から逸脱する場合に前記上位管理コントローラに通知する通知部と、を具備する生産システムが提供される。
２番目の発明によれば、１番目の発明において、前記セル制御装置は、前記セルにおいて実際に作成された前記製品の数を監視する製品監視部を含んでおり、前記部品供給状態監視部により監視された前記複数種類の部品および前記複数種類のそれぞれの部品の数に応じて定まる、前記セルにおいて作成されるべき前記製品の数が、前記製品監視部により監視されていて前記セルにおいて実際に作成された前記製品の数よりも小さい場合には、前記通知部は前記上位管理コントローラに通知する。
３番目の発明によれば、１番目の発明において、前記セル制御装置は、前記セルにおいて実際に作成された前記製品の数を監視する製品監視部を含んでおり、前記部品供給状態監視部により監視された前記複数種類の部品および前記複数種類のそれぞれの部品の数に応じて定まる、前記セルにおいて作成されるべき前記製品の数が、前記製品監視部により監視されていて前記セルにおいて実際に作成された前記製品の数と同じであると共に、前記セルにおいて作成されるべき前記製品の数が、所望される前記製品の数よりも小さい場合には、前記通知部は前記上位管理コントローラに通知する。
４番目の発明によれば、１番目から３番目のいずれかの発明において、前記生産システムは、該生産システムの生産データを学習する機械学習装置を具備し、該機械学習装置は、前記生産システムの状態量を観測する状態量観測部と、前記生産システムにおける前記製品の作成結果を取得する動作結果取得部と、前記状態量観測部からの出力および前記動作結果取得部からの出力を受け取り、前記生産データを、前記生産システムの前記状態量および前記作成結果に関連付けて学習する学習部と、前記機械学習装置が学習した前記生産データを参照して、生産データを出力する意思決定部と、を備える。
５番目の発明によれば、４番目の発明において、前記セル制御装置は、前記セルにおいて実際に作成された前記製品の数を監視する製品監視部を含んでおり、前記状態量観測部が観測する状態量は、所望される製品の数、前記製品情報監視部により監視される前記製品情報、前記部品供給状態監視部により監視される前記複数種類の部品および前記複数種類のそれぞれの部品の数、前記製品監視部により監視された実際に作成された前記製品の数、および前記セルに含まれる前記複数の機械のそれぞれの設定のうちの少なくとも一つを含む。
６番目の発明によれば、４番目または５番目の発明において、前記意志決定部が出力する生産データは、前記少なくとも一つのセルに供給されるべき前記複数種類のそれぞれの部品の数、および前記少なくとも一つのセルに含まれる前記複数の機械の設定のうちの少なくとも一方を含む。
７番目の発明によれば、４番目の発明において、前記機械学習装置は、生産データを学習する学習モデルを備え、前記動作結果取得部が取得した前記作成結果と予め設定された目標との間の誤差を計算する誤差計算部と、前記誤差に応じて前記学習モデルを更新する学習モデル更新部とを備える。
８番目の発明によれば、４番目の発明において、前記機械学習装置は、生産データの価値を定める価値関数を有し、前記機械学習装置は、さらに、前記動作結果取得部が取得した前記作成結果と予め設定された目標との間の差異が小さい場合にはその差異に応じてプラスの報酬を与え、前記差異が大きい場合にその差異に応じてマイナスの報酬を与える報酬計算部と、前記報酬に応じて前記価値関数を更新する価値関数更新部を備える。
【発明の効果】
【００１１】
１番目の発明においては、複数種類のそれぞれの部品の数がそれぞれの所定範囲から逸脱する場合には、セルに供給される複数種類の部品のうちの少なくとも一つが過剰であるかまたは不足していると判断できる。従って、上位管理コントローラにこのことを通知し、上位管理コントローラは過剰または不足している部品の数を適切に変更して、それにより、生産システムを効率的に動作させられる。
２番目の発明においては、セルにて作成されうる製品の数はセルに供給される複数種類の部品の数に応じて定まる。そして、セルにて作成されうる製品の数が、製品監視部により監視された実際に作成された製品の数よりも小さい場合には、セル内の複数の機械のうちの少なくとも一つが故障していると判断できる。従って、上位管理コントローラにこのことを通知し、上位管理コントローラは複数種類の部品の数を同じ割合で減少させ、それにより、生産システムを効率的に動作させられる。
３番目の発明においては、セルにて作成されうる製品の数が、製品監視部により監視された実際に作成された製品の数と同じであったとしても、セルにて作成されうる製品の数が所望される製品の数よりも小さい場合には、セルに供給される複数種類の部品の数が不足していると判断できる。従って、上位管理コントローラにこのことを通知し、上位管理コントローラは複数種類の部品の数を増加させ、それにより、生産システムを効率的に動作させられる。
４番目から８番目の発明においては、生産システムにおける異常の検出精度を高めることができる。
【００１２】
添付図面に示される本発明の典型的な実施形態の詳細な説明から、本発明のこれら目的、特徴および利点ならびに他の目的、特徴および利点がさらに明解になるであろう。
【図面の簡単な説明】
【００１３】
【図１】本発明に基づく生産システムのブロック図である。
【図２】製品情報の例を示す図である。
【図３】本発明に基づく生産システムの動作を示すフローチャートである。
【図４】機械学習装置の一例を示す図である。
【図５】機械学習装置の他の例を示す図である。
【図６】ニューロンのモデルを模式的に示す図である。
【図７】図６に示すニューロンを組合せて構成した３層のニューラルネットワークを模式的に示す図である。
【図８】従来技術における生産システムのブロック図である。
【発明を実施するための形態】
【００１４】
以下、添付図面を参照して本発明の実施形態を説明する。以下の図面において同様の部材には同様の参照符号が付けられている。理解を容易にするために、これら図面は縮尺を適宜変更している。
図１は本発明に基づく生産システムのブロック図である。生産システム１０は、少なくとも１つ、好ましくは複数（図示例では二つ）の機械Ｒ１、Ｒ２、並びに機械Ｒ１、Ｒ２を制御する少なくとも１つ（通常は機械と同数）の機械制御装置（数値制御装置）ＲＣ１、ＲＣ２を含むセル４０と、機械制御装置ＲＣ１、ＲＣ２の各々と通信可能に構成されたセル制御装置（セルコントローラ）３０と、セル制御装置３０と通信可能に構成された、生産計画装置としての上位管理コントローラ２０とを備えている。これら機械Ｒ１、Ｒ２は単独でまたは互いに協動して複数種類の部品から製品を作成する。機械制御装置ＲＣ１、ＲＣ２は、それぞれ機械Ｒ１、Ｒ２の動作制御を行うとともに、それぞれの機械において測定されたデータをセル制御装置３０に送信する。
【００１５】
セル４０は、予め定められた作業を実施するための複数の機械の集合である。また機械Ｒ１、Ｒ２は例えば、工作機械、多関節ロボット、パラレルリンクロボット、製造機械、産業機械等であり、各機械は互いに同一のものでも異なるものでもよい。さらに、同様な構成のセル４０’、４０’’がセル制御装置３０に接続されている。
【００１６】
図１においては、機械Ｒ１、Ｒ２のそれぞれにセンサＳ１、Ｓ２が取付けられている。これらセンサＳ１、Ｓ２は、機械Ｒ１、Ｒ２の速度、加減速度、加減速時間のうちの少なくとも一つを検出する。さらに、セル４０には、作成された製品の各種品質を検出するセンサＳ３が備えられている。
【００１７】
なお、本発明では、セル４０、４０’、４０’’は、製品を製造する工場等に設置可能であるのに対して、セル制御装置３０及び上位管理コントローラ２０は、工場とは異なる建屋等に設置可能である。この場合には、セル制御装置３０と機械制御装置ＲＣ１、ＲＣ２とは、イントラネット等のネットワーク（第一通信部４１）を介して接続することができる。また、上位管理コントローラ２０は、工場とは離れた事務所等に設置可能である。この場合には、上位管理コントローラ２０は、インターネット等のネットワーク（第二通信部４２）を介して、セル制御装置３０と通信可能に接続することができる。但しこれは一例であり、第一通信部４１は、セル制御装置３０と機械制御装置ＲＣ１、ＲＣ２とを通信可能に接続するものであればどのようなものでもよく、また第二通信部４２は、セル制御装置３０と上位管理コントローラ２０とを通信可能に接続するものであればどのようなものでもよい。
【００１８】
上位管理コントローラ２０は例えばパーソナルコンピュータであり、生産システム１０の生産計画を作成してセル制御装置３０に伝達する生産計画装置として機能する。図１に示されるように、上位管理コントローラ２０は製品情報Ｓ０を含んでいる。
【００１９】
図２は製品情報Ｓ０の例を示す図である。製品情報Ｓ０は、一つの製品を作成するのに必要な部品の種類およびそれぞれの部品の数をマップの形で表したものである。図２に示される例においては、一つの製品は、三種類の部品Ａ〜Ｃから構成される。そして、ＮＡ０個の数の部品Ａ、ＮＢ０個の数の部品ＢおよびＮＣ０個の数の部品Ｃを用いて一つの製品が作成されるものとする。
【００２０】
操作者は、入力部などを用いて、所望される製品の数Ｎ０を上位管理コントローラ２０に入力する。上位管理コントローラ２０は、セル制御装置３０からのフィードバックおよび所望される製品の数Ｎ０に基づいて複数種類の部品Ａ〜Ｃをセル４０、４０’、４０’’に供給するのを制御する。なお、製品情報Ｓ０が所望される製品の数Ｎ０を含んでいてもよい。
【００２１】
セル制御装置３０は、セル４０、４０’、４０’’を制御するように構成されており、具体的には、機械制御装置ＲＣ１、ＲＣ２に各種の指令を送出したり、機械制御装置ＲＣ１、ＲＣ２からそれぞれ機械Ｒ１、Ｒ２の稼働の状態等のデータを取得したりすることができる。
【００２２】
図１に示されるように、セル制御装置３０は、製品情報Ｓ０を監視する製品情報監視部３１と、セル４０等に供給される複数種類の部品および複数種類のそれぞれの部品の数を監視する部品供給状態監視部３２と、セル４０、４０’、４０’’において実際に作成された製品の数を監視する製品監視部３３とを含んでいる。さらに、セル制御装置３０は所定の事態が起きたときに上位管理コントローラ２０に問題として通知する通知部３４を含んでいる。さらに、セル制御装置３０は後述する機械学習装置５０を含んでいる。機械学習装置５０は上位管理コントローラ２０に含まれていても良い。また、機械学習装置５０はセル制御装置３０または上位管理コントローラ２０に外付けで接続されていてもよい。
【００２３】
図３は本発明に基づく生産システムの動作を示すフローチャートである。以下、これら図面を参照しつつ、生産システム１０の動作について説明する。図３に示される内容は生産システム１０の稼働時に所定の制御周期毎に繰返し実施されるものとする。なお、以下の例では、簡潔にする目的で、セル４０のみにおいて製品が作成されるものとする。セル４０’、４０’’においても概ね同様な制御が行われうることに留意されたい。
【００２４】
はじめに、ステップＳ１１において、セル制御装置３０の製品情報監視部３１が上位管理コントローラ２０の製品情報Ｓ０および所望される製品の数Ｎ０を取得する。次いで、ステップＳ１２においては、セル制御装置３０の部品供給状態監視部３２が、部品Ａ〜Ｃの供給状態を監視する。言い換えれば、部品供給状態監視部３２は、セル４０に供給される複数種類の部品Ａ〜Ｃおよび複数種類のそれぞれの部品Ａ〜Ｃの数ＮＡ１、ＮＢ１、ＮＣ１を取得する。
【００２５】
次いで、ステップＳ１３においては、部品Ａ〜Ｃのそれぞれがセル４０に適切に供給されているか否かが判定される。部品Ａ〜Ｃのそれぞれについては、セル４０において適切に加工されうる上限数および下限数が設定されている。ステップＳ１３においては、部品Ａ〜Ｃの数ＮＡ１〜ＮＣ１が対応する上限数と下限数との間にあるか否かが判定される。
【００２６】
そして、例えば部品Ａの数ＮＡ１が対応する上限数よりも大きいか、または対応する下限数よりも小さい場合には、ステップＳ１５に進む。ステップＳ１５においては、部品Ａの供給数が過剰または不足であると判断され、通知部３４がその旨を上位管理コントローラ２０に通知する。他の部品Ｂ、Ｃについても同様に処理される。
【００２７】
前述したように、一つの製品の作成するために、複数種類の部品Ａ〜Ｃの全てが必要とされる。このため、複数種類の部品Ａ〜Ｃのうちの少なくとも一つの部品の数が過剰または不足であると判断された場合には、製品を良好に作成することができず、通知部３４が上位管理コントローラ２０に通知するものとする。
【００２８】
このような場合には、上位管理コントローラ２０は過剰または不足している部品Ａ〜Ｃの数を例えば所定数だけ増加または減少させる。従って、生産システム１０を効率的に動作させることが可能となる。
【００２９】
なお、ステップＳ１３において部品Ａ〜Ｃの数ＮＡ１〜ＮＣ１が対応する上限数と下限数との間にあると判定された場合には、部品Ａ〜Ｃを用いて製品を適切に作成できると判断できる。従って、この場合には、ステップＳ１４に進んで、製品の作成を継続する。
【００３０】
次いで、ステップＳ１６においては、セル４０にて作成されうる製品の数Ｎ１を算出する。セル４０にて作成されうる製品の数Ｎ１は、ステップＳ１１で取得した製品情報Ｓ０と、ステップＳ１２で取得した部品Ａ〜Ｃの数ＮＡ１〜ＮＣ１とに応じて定まる。
【００３１】
次いで、ステップＳ１７においては、セル制御装置３０の製品監視部３３は、セル４０にて実際に作成された製品の数Ｎ２を取得する。そして、ステップＳ１８において、セル４０にて作成されうる製品の数Ｎ１が実際に作成された製品の数Ｎ２より小さいか否か、およびセル４０にて作成されうる製品の数Ｎ１が実際に作成された製品の数Ｎ２よりも大きいか否かが判定される。
【００３２】
ステップＳ１８においてセル４０にて作成されうる製品の数Ｎ１が実際に作成された製品の数Ｎ２より小さいと判定された場合には、セル４０内の複数の機械Ｒ１、Ｒ２のうちの少なくとも一つが故障していると判断できる。従って、通知部３４がステップＳ１９において上位管理コントローラ２０にこのことを通知する。次いで、上位管理コントローラ２０は例えば複数種類の部品の数を同じ割合で減少させ、それにより、生産システム１０を効率的に動作させるようにする。
【００３３】
また、セル４０にて作成されうる製品の数Ｎ１が実際に作成された製品の数Ｎ２よりも大きくなることは現実的には起こりえない。このため、ステップＳ１８において、上記のように判定された場合には、通知部３４はセル４０に異常が起きた可能性があることを上位管理コントローラ２０にを通知する（ステップＳ１９）。
【００３４】
ところで、ステップＳ１８においてセル４０にて作成されうる製品の数Ｎ１が実際に作成された製品の数Ｎ２に等しいと判定された場合には、セル４０に異常が起きていないと判断できる。このような場合には、ステップＳ２０において所望される製品の数Ｎ０を取得し、ステップＳ２１においてセル４０にて作成されうる製品の数Ｎ１が所望される製品の数Ｎ０より小さいか否かが判定される。なお、ステップＳ２０の処理を省略することも可能である。
【００３５】
セル４０にて作成されうる製品の数Ｎ１が実際に作成された製品の数Ｎ２に等しいものの、セル４０にて作成されうる製品の数Ｎ１が所望される製品の数Ｎ０より小さい場合には、セル４０に供給される部品Ａ〜Ｃの数が少ないと判断できる。このため、通知部３４は上位管理コントローラ２０にこのことを通知する。次いで、上位管理コントローラ２０は複数種類の部品の数Ａ〜Ｃを例えば所定の割合いで増加させ、それにより、生産システム１０を効率的に動作させるようにする。
【００３６】
このように、本発明のセル制御装置３０は、製品情報監視部３１、部品供給状態監視部３２、製品監視部３３を用いて、上位管理コントローラ２０およびセル４０から各種の情報を取得する。そして、セル制御装置３０は各種の情報に基づいて異常の発生の有無を判断し、異常がある場合には、上位管理コントローラ２０に通知する。このため、本発明では異常を迅速に解消でき、従って、生産システム１０を効率的に動作させられる。
【００３７】
ところで、図４は機械学習装置の一例を示す図である。本発明においては、製品情報監視部３１、部品供給状態監視部３２および製品監視部３３からの情報を用いて機械学習装置５０に学習させられる。機械学習装置５０は、状態量観測部１１と、動作結果取得部１２と、学習部１３と、意思決定部１４とを備える。
【００３８】
機械学習装置５０の学習部１３は、生産システム１０の状態量を観測する状態量観測部１１からの出力および生産システム１０における加工結果を取得する動作結果取得部１２からの出力（製品の作成結果）を受け取り、生産データを、生産システム１０の状態量および作成結果に関連付けて学習する。そして、意思決定部１４が、学習部１３が学習した生産データを参照して、生産データを決定してセル制御装置３０に出力する。
【００３９】
ここで、状態量観測部１１が観測する状態量は、所望される製品の数Ｎ０、製品情報監視部３１により監視される製品情報Ｓ０、部品供給状態監視部３２により監視される複数種類の部品Ａ〜Ｃおよび複数種類のそれぞれの部品の数ＮＡ１〜ＮＣ１、製品監視部３３により監視された実際に作成された製品の数Ｎ２、およびセル４０に含まれる複数の機械Ｒ１、Ｒ２のそれぞれの設定のうちの少なくとも一つを含んでいる。なお、複数の機械Ｒ１、Ｒ２の設定には、機械Ｒ１、Ｒ２の動作速度、加減速度、加減速時間などが含まれる。
【００４０】
また、意志決定部１４が出力する生産データは、少なくとも一つのセル４０に供給されるべき複数種類のそれぞれの部品の数ＮＡ２〜ＮＣ２、および少なくとも一つのセル４０に含まれる複数の機械Ｒ１、Ｒ２の設定のうちの少なくとも一方を含むものとする。
【００４１】
学習部１３は、異なる生産データを学習する学習モデルを備えている。そして、学習部１３は、動作結果取得部１２が取得した作成結果、例えば製品の数、製品の各種品質などと、予め設定された目標との間の誤差を計算する誤差計算部１５と、誤差に応じて学習モデルを更新する学習モデル更新部１６とを備えている。
【００４２】
或る生産データに基づいて製品を作成中に、動作結果取得部１２からの出力の一つとして受け取った製品の品質が所定閾値を越えると、誤差計算部１５は、生産データの作成結果に所定の誤差が生じたとする計算結果を出力する。そして、学習モデル更新部１６は該計算結果に応じて学習モデルを更新する。
【００４３】
また、図５は機械学習装置の他の例を示す図である。図５に示される学習部１３は、報酬計算部１８と、報酬に応じて価値関数を更新する価値関数更新部１９とを備えている。そして、図５に示される機械学習装置５０は、結果（ラベル）付きデータ記録部１７は備えていない。製品の作成結果の内容によって、生産データの価値を定める価値関数が、それぞれの生産データ毎に異なる内容で備えられている。
【００４４】
報酬計算部１８は、動作結果取得部１２が取得した製品の品質と目標品質との間の差異が小さい場合はその小ささに応じてプラスの報酬を与え、差異が大きい場合にその大きさに応じてマイナスの報酬を与える。
【００４５】
また、この場合、或る生産データで製品を作成中に、動作結果取得部１２からの出力の一つとして受け取った製品の品質が所定閾値を越えると、報酬計算部１８は、所定のマイナス報酬を与え、価値関数更新部１９は所定のマイナス報酬に応じて価値関数を更新することが好ましい。
【００４６】
最後に、機械学習装置５０の学習方法について述べる。機械学習装置５０は、機械学習装置５０に入力されたデータの集合の中にある有用な規則、ルール、知識表現、判断基準などを解析により抽出し、その判断結果を出力するとともに、知識の学習を行う機能を備えている。
【００４７】
機械学習には、教師あり学習、教師なし学習、強化学習などのアルゴリズムがあり、更に、これらの手法を実現するうえで、特徴量そのものの抽出を学習する、「深層学習（ディープラーニング：Deep Learning）」と呼ばれる手法がある。
【００４８】
教師あり学習とは、ある入力と結果（ラベル）のデータの組を大量に機械学習装置５０に与えることで、それらのデータセットにある特徴を学習し、入力から結果を推定するモデル、すなわちその関係性を帰納的に獲得するものである。教師あり学習は、学習のための適切な入力データと出力データのペアが与えられることによって、比較的容易に学習を進めることができる。
【００４９】
教師なし学習とは、入力データのみを大量に学習装置に与えることで、入力データがどのような分布をしているか学習し、対応する教師出力データを与えなくても、入力データに対して圧縮・分類・整形などを行う装置で学習する手法である。「出力すべきもの」が予め決まっていないという点で教師有り学習とは異なる。データの背後に存在する本質的な構造を抽出するために用いられる。
【００５０】
強化学習とは、判定や分類だけではなく、行動を学習することにより、環境に行動が与える相互作用を踏まえて適切な行動を学習、すなわち将来的に得られる報酬を最大にするための学習する方法を学ぶものである。強化学習では、行動が引き起こす結果を全く知らない、または、不完全にしか知らない状態から学習を開始するが、教師あり学習で事前学習を行って、事前学習した状態を初期状態として、条件の良いスタート地点から強化学習をスタートさせることもできる。強化学習には、未知の学習領域を開拓していく行動と、既知の学習領域を利用して行く行動とをバランスよく選択できるという特徴があり、従来全く知られていなかった条件領域に更に目的とする適切な生産条件が見出される可能性がある。また、生産データの出力により、機械や製品の温度等が変化する、すなわち、行動が環境に影響を与えるので、強化学習を適用する意義はあると考えられる。
【００５１】
図４は、教師あり学習の機械学習装置５０の例を示し、図５は、強化学習の機械学習装置５０の例を示している。
【００５２】
まず、教師あり学習による学習方法について述べる。教師あり学習では、学習のための適切な入力データと出力データのペアが与えられ、入力データとそれに対応すべき出力データを写像する関数（学習モデル）を生成する。
【００５３】
教師あり学習を行う機械学習器の動作は学習段階と予測段階の２つの段階がある。教師あり学習を行う機械学習器は、学習段階において、入力データとして用いられる状態変数（説明変数）の値と、出力データとして用いられる目的変数の値とを含む教師データを与えると、状態変数の値が入力された時に、目的変数の値を出力することを学習し、このような教師データをいくつも与えることにより、状態変数の値に対する目的変数の値を出力するための予測モデルを構築する。そして、教師あり学習を行う機械学習器は、予測段階において、新しい入力データ（状態変数）が与えられたとき、学習結果（構築された予測モデル）に従って、出力データ（目的変数）を予測して出力する。ここで、結果（ラベル）付きデータ記録部１７は、それまでに得られた結果（ラベル）付きデータを保持し、結果（ラベル）付きデータを誤差計算部１５に提供することができる。あるいは、セル制御装置３０の結果（ラベル）付きデータを、メモリカードや通信回線等により、そのセル制御装置３０の誤差計算部１５に提供することも可能である。
【００５４】
教師あり学習を行う機械学習器の学習の一例として、例えば以下の式（１）に示すような予測モデルの回帰式を設定し、学習の過程において各状態変数ｘ1，ｘ2，ｘ3，…が取る値を回帰式に当てはめた時に、目的変数ｙの値が得られるように、各係数ａ0，ａ1，ａ2，ａ3，…の値を調整することにより学習が進められる。なお、学習の方法はこれに限られるものではなく、教師あり学習のアルゴリズムごとに異なる。
【００５５】
【数１】
2017191567.tif 000003
【００５６】
教師あり学習のアルゴリズムとしては、ニューラルネットワーク、最小二乗法、ステップワイズ法など様々な方法が周知となっており、本発明に適用する方法としていずれの教師あり学習アルゴリズムを採用しても良い。なお、それぞれの教師あり学習アルゴリズムは周知なので、本明細書における各アルゴリズムの詳細説明は省略する。
【００５７】
次に、強化学習による学習方法について述べる。強化学習の問題設定は次のように考えられる。
・学習部１３は、セル４０の状態を含む環境の状態を観測し、行動（生産データの出力）を決定する。
・環境は、何らかの規則に従って変化し、更に、行動が、環境に変化を与えることもある。
・行動する度に、報酬信号が帰ってくる。
・最大化したいのは、将来にわたっての報酬の合計である。
・行動が引き起こす結果を全く知らない、または、不完全にしか知らない状態から学習を開始する。
【００５８】
強化学習の代表的な手法としては、Ｑ学習やＴＤ学習が知られている。以下、Ｑ学習の場合で説明するが、Ｑ学習に限定されるものではない。
Ｑ学習は、或る環境状態ｓの下で、行動ａを選択する価値Ｑ（ｓ，ａ）を学習する方法であって、ある状態ｓのとき、価値Ｑ（ｓ，ａ）の最も高い行動ａを最適な行動として選択すれば良い。しかし、最初は、状態ｓと行動ａとの組合せについて、価値Ｑ（ｓ，ａ）の正しい値は分かっていないので、エージェント（行動主体）は、ある状態ｓの下で様々な行動ａを選択し、その時の行動ａに対して、報酬が与えられる。それにより、エージェントは、より良い行動の選択、すなわち、正しい価値Ｑ（ｓ，ａ）を学習していく。
【００５９】
更に、行動の結果、将来にわたって得られる報酬の合計を最大化したいので、最終的にＱ（ｓ，ａ）＝Ｅ［Σ（γt）ｒt］となるようにすることを目指す。ここでＥ［］は期待値を表し、tは時刻、γは後述する割引率と呼ばれるパラメータ、ｒtは時刻tにおける報酬、Σは時刻tによる合計である。この式における期待値は、最適な行動に従って状態変化したときについてとるものとし、それは、分かっていないので、探索しながら学習することになる。このような価値Ｑ（ｓ，ａ）の更新式は、例えば、下記の式（２）により表すことができる。
【００６０】
即ち、価値関数更新部２１は、下記の式（２）を用いて価値関数Ｑ（ｓt，ａt）を更新する。
【００６１】
【数２】
2017191567.tif 000004
【００６２】
ここで、ｓtは、時刻tにおける環境の状態を表し、ａtは、時刻tにおける行動を表す。行動ａtにより、状態はｓt+1に変化する。rt+1は、その状態の変化により得られる報酬を表している。また、ｍａｘの付いた項は、状態ｓt+1の下で、その時に分かっている最もＱ値の高い行動ａを選択した場合のＱ値にγを乗じたものになる。ここで、γは、０＜γ≦１のパラメータで、割引率と呼ばれる。また、αは、学習係数で、０＜α≦１の範囲とする。
【００６３】
上述した式（２）は、試行ａtの結果、帰ってきた報酬ｒt+1を元に、状態ｓtにおける行動ａtの評価値Ｑ（ｓt，ａt）を更新する方法を表している。すなわち、状態ｓにおける行動ａの評価値Ｑ（ｓt，ａt）よりも、報酬ｒt+1と行動ａによる次の状態における最良の行動ｍａｘ ａの評価値Ｑ（ｓt+1，ｍａｘ ａt+1）の合計の方が大きければ、Ｑ（ｓt，ａt）を大きくし、反対に小さければ、Ｑ（ｓt，ａt）を小さくすることを示している。つまり、ある状態におけるある行動の価値を、結果として即時帰ってくる報酬と、その行動による次の状態における最良の行動の価値に近付けるものである。
【００６４】
ここで、Ｑ（ｓ，ａ）の計算機上での表現方法は、すべての状態行動ペア（ｓ，ａ）に対して、その値を行動価値テーブルとして保持しておく方法と、Ｑ（ｓ，ａ）を近似するような関数を用意する方法がある。後者の方法では、前述の式（２）は、確率勾配降下法などの手法で近似関数のパラメータを調整していくことにより、実現することができる。なお、近似関数としては、ニューラルネットワークを用いることができる。
上記のように、教師あり学習の学習アルゴリズムや、強化学習での価値関数の近似アルゴリズムとして、ニューラルネットワークを用いることができるので、機械学習装置５０は、ニューラルネットワークを有することが好ましい。
【００６５】
図６は、ニューロンのモデルを模式的に示す図であり、図７は、図６に示すニューロンを組み合わせて構成した三層のニューラルネットワークを模式的に示す図である。ニューラルネットワークは、図６に示すようなニューロンのモデルを模した演算装置およびメモリ等で構成される。ニューロンは、複数の入力ｘに対する出力（結果）ｙを出力するものである。各入力ｘ（ｘ1〜ｘ3）には、この入力ｘに対応する重みｗ（ｗ1〜ｗ3）が掛けられ、ニューロンは、以下の式（３）により表現される結果ｙを出力する。なお、入力ｘ、結果ｙおよび重みｗは、すべてベクトルである。
【００６６】
【数３】
2017191567.tif 000005
ここで、θは、バイアスであり、ｆkは、活性化関数である。
【００６７】
図７に示したように、ニューラルネットワークの左側から複数の入力ｘ（ｘ1〜ｘ3）が入力され、右側から結果ｙ（ｙ1〜ｙ3）が出力される。入力ｘ1〜ｘ3は、３つのニューロンＮ11〜Ｎ13の各々に対して、対応する重みが掛けられて入力される。これらの入力に掛けられる重みは、まとめてｗ１と表記している。
【００６８】
ニューロンＮ11〜Ｎ13は、それぞれ、ｚ11〜ｚ13を出力する。図７において、これらｚ11〜ｚ13は、まとめて特徴ベクトルｚ１と表記され、入力ベクトルの特徴量を抽出したベクトルと見なすことができる。この特徴ベクトルｚ１は、重みｗ１と重みｗ２との間の特徴ベクトルである。ｚ11〜ｚ13は、２つのニューロンＮ21およびＮ22の各々に対して、対応する重みが掛けられて入力される。これらの特徴ベクトルに掛けられる重みは、まとめてｗ２と表記されている。ニューロンＮ21，Ｎ22は、それぞれｚ21，ｚ22を出力する。図７において、これらｚ21，ｚ22は、まとめて特徴ベクトルｚ２と標記されている。この特徴ベクトルｚ２は、重みｗ２と重みｗ３との間の特徴ベクトルである。ｚ21，ｚ22は、３つのニューロンＮ31〜Ｎ33の各々に対して、対応する重みが掛けられて入力される。これらの特徴ベクトルに掛けられる重みは、まとめてｗ３と標記している。
【００６９】
最後に、ニューロンＮ31〜Ｎ33は、それぞれ、結果ｙ１〜結果ｙ３を出力する。ニューラルネットワークの動作には、学習モードと価値予測モードがあり、学習モードにおいて、学習データセットを用いて重みｗを学習し、そのパラメータを用いて予測モードにおいて、生産データの出力の行動判断を行う。ここで、予測モードで実際に生産データの出力を行い、得られたデータを即時学習し、次の行動に反映させるオンライン学習も、予め収集しておいたデータ群を用いてまとめた学習を行い、以降はずっとそのパラメータで検知モードを行うバッチ学習も行うこともできる。ある程度データが溜まるたびに学習モードを挟むということも可能である。
【００７０】
また、重みｗ１〜ｗ３は、誤差逆伝播法（Backpropagation）により学習可能である。なお、誤差の情報は、右側から入り左側に流れる。誤差逆伝搬法は、各ニューロンについて、入力ｘが入力されたときの出力ｙと真の出力ｙ（教師）との差分を小さくするように、それぞれの重みを調整（学習）する手法である。
【００７１】
図７のニューラルネットワークの中間層（隠れ層）は一層だが、２層以上にすることも可能であり、中間層が２層以上の場合は深層学習と呼ばれている。
以上、教師あり学習と強化学習の学習方法について簡単に述べたが、本発明に適用される機械学習方法は、これらの手法に限定されず、機械学習装置１０で用いることが出来る手法である「教師あり学習」、「教師なし学習」、「半教師あり学習」および「強化学習」等といった様々な手法が適用可能である。
【００７２】
このような機械学習装置５０は、製品情報監視部３１、部品供給状態監視部３２および製品監視部３３からの情報に基づいて学習し、作成された製品当たりの複数種類の部品Ａ〜Ｃの必要数を推測する。部品Ａ〜Ｃの推測値からセル４０にて作成可能な製品の数Ｎ１を算出し、これを実際に作成された製品の数Ｎ２と比較する。そして、前述したのと同様に、機械Ｒ１、Ｒ２のいずれかが故障している等の推測を行うことができる。
【００７３】
さらに、機械学習装置５０は、部品供給状態監視部３２からの複数種類のそれぞれの部品Ａ〜Ｃの数ＮＡ１、ＮＢ１、ＮＣ１および製品監視部３３からの製品の数Ｎ２の時間的推移を学習して、セル４０の状況を推測する。そして、セル４０に供給された部品Ａ〜Ｃを使い果たしている場合には、部品の供給が停滞していると推測する。また、供給された部品の数が十分であるにもかかわらず実際に作成された製品の数Ｎ２が小さい場合には、機械Ｒ１、Ｒ２のいずれかが故障している等の推測を行うことができる。
【００７４】
機械学習装置５０はリアルタイム性に優れると共に監督範囲が局所的であるので、前述した異常の検出精度を高めることが可能となっている。
【００７５】
なお、上述した実施形態の生産システム１０は、図１に示されるように１つの生産システム１０に対して１つの機械学習装置５０を備えたものである。しかし、本発明においては、生産システム１０および機械学習装置５０の各々の数は１つに限定されない。生産システム１０が、複数存在し、生産システム１０毎にそれぞれ設けられた複数の機械学習装置５０が、通信媒体を介して相互にデータを共有または交換することが好ましい。各生産システム１０が取得した学習結果を含むデータを共有することによって、より短時間により精度の高い学習効果が得られ、より適切な生産データが出力できるようになる。
【００７６】
更に、機械学習装置５０は、生産システム１０内に在っても、生産システム１０外に在っても良い。また、通信媒体を介して、単一の機械学習装置５０を複数の生産システム１０で共有しても良い。更には、機械学習装置５０がクラウドサーバ上に存在しても良い。
【００７７】
その結果、学習効果を共有できるだけでなく、データを集中管理すると共に、大規模な高性能プロセッサを利用して学習することが可能になる。それゆえ、学習速度、学習の精度が向上し、より適切な生産データを出力できる。また、出力する生産データの決定に要する時間も短縮できる。これらの機械学習装置５０には、汎用の計算機もしくはプロセッサを用いても良いが、ＧＰＧＰＵ（General-Purpose computing on Graphics Processing Units）や大規模ＰＣクラスター等を適用すると、より高速に処理することができる。
【００７８】
典型的な実施形態を用いて本発明を説明したが、当業者であれば、本発明の範囲から逸脱することなしに、前述した変更および種々の他の変更、省略、追加を行うことができるのを理解できるであろう。
【符号の説明】
【００７９】
１０    生産システム
１１    状態量観測部
１２    動作結果取得部
１３    学習部
１４    意思決定部
１５    誤差計算部
１６    学習モデル更新部
１７    ラベル付きデータ記録部
１８    報酬計算部
１９    価値関数更新部
２０    上位管理コントローラ
３０    セル制御装置
３１    製品情報監視部
３２    部品供給状態監視部
３３    製品監視部
３４    通知部
４０、４０’、４０’’    セル
４１    第一通信部
４２    第二通信部
５０    機械学習装置
Ｒ１〜Ｒ２    機械
ＲＣ１〜ＲＣ２    機械制御装置
Ｓ１、Ｓ２、Ｓ３    センサ
【図１】
2017191567.tif 000006
【図２】
2017191567.tif 000007
【図３】
2017191567.tif 000008
【図４】
2017191567.tif 000009
【図５】
2017191567.tif 000010
【図６】
2017191567.tif 000011
【図７】
2017191567.tif 000012
【図８】
2017191567.tif 000013