(57)【特許請求の範囲】
【請求項１】
複数枚のコアシートを積層して積層コアを製造する積層コア製造装置の動作を学習する機械学習器であって、
前記積層コアおよび前記積層コア製造装置の状態を観測する状態観測部と、
前記状態観測部により観測された状態量に基づいて、前記コアシートを積層する操作量を更新する学習部と、を備え、
前記操作量の更新は、前記コアシートを積層して積層コアを製造する動作の価値を定める価値関数の更新に基づいて行われ、
前記状態観測部は、
前記積層コアの形状データ、前記積層コア製造装置の動作データ、および、前記積層コア製造装置により前記コアシートが積層される時間データを含む状態量を観測し、
前記学習部は、
前記状態観測部の出力に基づいて報酬を計算する報酬計算部と、
前記状態観測部および前記報酬計算部の出力に基づいて、前記価値関数を、前記報酬に応じて更新する価値関数更新部と、を備える、
ことを特徴とする機械学習器。
【請求項２】
複数枚のコアシートを積層して積層コアを製造する積層コア製造装置の動作を学習する機械学習器であって、
前記積層コアおよび前記積層コア製造装置の状態を観測する状態観測部と、
前記状態観測部により観測された状態量に基づいて、前記コアシートを積層する操作量を更新する学習部と、を備え、
前記操作量の更新は、前記コアシートを積層して積層コアを製造する動作の誤差を定める誤差モデルの更新に基づいて行われ、
前記状態観測部は、
前記積層コアの形状データ、前記積層コア製造装置の動作データ、および、前記積層コア製造装置により前記コアシートが積層される時間データを含む状態量を観測し、
前記学習部は、
前記状態観測部の出力、および、入力された教師データに基づいて誤差を計算する誤差計算部と、
前記状態観測部および前記誤差計算部の出力に基づいて、前記誤差モデルを更新する誤差モデル更新部と、を備える、
ことを特徴とする機械学習器。
【請求項３】
前記積層コア製造装置は、
ハンド部もしくは作業空間を見渡せる個所にロボットビジョンが設けられたロボットを含み、
前記状態観測部は、
前記ロボットビジョンから、前記コアシートの形状データを受け取る、
ことを特徴とする請求項１または請求項２に記載の機械学習器。
【請求項４】
前記積層コア製造装置は、さらに、
前記ハンド部の変位または角度を指令して前記ロボットの動作を制御するロボット制御部を含み、
前記状態観測部は、
前記ロボット制御部から、前記積層コア製造装置の動作データ、および、前記コアシートが積層される時間データを受け取る、
ことを特徴とする請求項３に記載の機械学習器。
【請求項５】
前記状態観測部は、
前記ロボット制御部から出力される前記ハンド部の速度ゲインおよび位置ゲイン、ならびに、前記コアシートが積層される時間のデータを取得する、
ことを特徴とする請求項４に記載の機械学習器。
【請求項６】
さらに、
前記学習部が学習した前記操作量を参照して、前記積層コア製造装置の動作を決定する意思決定部を備える、
ことを特徴とする請求項１乃至請求項５のいずれか１項に記載の機械学習器。
【請求項７】
前記機械学習器は、
ニューラルネットワークを有する、請求項１乃至請求項６のいずれか１項に記載の機械学習器。
【請求項８】
所定形状のコアシートを、１枚ずつまたは複数枚ずつ積層して積層コアを製造する積層コア製造装置であって、
請求項１乃至請求項７のいずれか１項に記載の機械学習器を備え、
前記コアシートを把持するハンド部に設けられたロボットビジョンにより、前記コアシートの寸法を検出して前記積層コアを製造する、
ことを特徴とする積層コア製造装置。
【請求項９】
請求項８に記載の積層コア製造装置を複数備える積層コア製造システムであって、
前記機械学習器は、それぞれの前記積層コア製造装置に設けられ、
複数の前記積層コア製造装置に設けられた複数の前記機械学習器は、通信媒体を介して相互にデータを共有または交換するようになっている、
ことを特徴とする積層コア製造システム。
【請求項１０】
前記機械学習器は、クラウドサーバ上に存在する、
ことを特徴とする請求項９に記載の積層コア製造システム。
【請求項１１】
複数枚のコアシートを積層して積層コアを製造する積層コア製造装置の動作を学習する機械学習方法であって、
前記積層コアおよび前記積層コア製造装置の状態を観測し、
前記観測された状態量に基づいて、前記コアシートを積層する操作量を更新し、
前記操作量の更新は、前記コアシートを積層して積層コアを製造する動作の価値を定める価値関数の更新に基づいて行われ、
前記積層コアおよび前記積層コア製造装置の状態を観測するのは、
前記積層コアの形状データ、前記積層コア製造装置の動作データ、および、前記積層コア製造装置により前記コアシートが積層される時間データを含む状態量を観測し、
前記コアシートを積層する操作量を更新するのは、
観測された前記状態量に基づいて報酬を計算し、
観測された前記状態量および計算された前記報酬に基づいて、前記価値関数を、前記報酬に応じて更新して行う、
ことを特徴とする機械学習方法。
【請求項１２】
複数枚のコアシートを積層して積層コアを製造する積層コア製造装置の動作を学習する機械学習方法であって、
前記積層コアおよび前記積層コア製造装置の状態を観測し、
前記観測された状態量に基づいて、前記コアシートを積層する操作量を更新し、
前記操作量の更新は、前記コアシートを積層して積層コアを製造する動作の誤差を定める誤差モデルの更新に基づいて行われ、
前記積層コアおよび前記積層コア製造装置の状態を観測するのは、
前記積層コアの形状データ、前記積層コア製造装置の動作データ、および、前記積層コア製造装置により前記コアシートが積層される時間データを含む状態量を観測し、
前記コアシートを積層する操作量を更新するのは、
観測された前記状態量、および、入力された教師データに基づいて誤差を計算し、
観測された前記状態量および計算された前記誤差に基づいて、前記誤差モデルを更新して行う、
ことを特徴とする機械学習方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コアシートの積層動作を学習する機械学習器、積層コア製造装置、積層コア製造システムおよび機械学習方法に関する。
【背景技術】
【０００２】
従来、積層コアは、例えば、ロボットを含む積層コア製造装置により、複数のコアシートを順番に積み上げて製造している。ここで、ロボットによるコアシートの積層は、例えば、ティーチペンダントを利用してハンド部によるコアシートの把持および移動経路等をロボット制御部に記憶させ、あるいは、ロボット制御部に対してコアシートを把持，移動および積層する所定のプログラムを実行させることにより行っている。
【０００３】
ところで、従来、積層コアを精度よく製造することのできる積層コア製造装置および積層コア製造方法としては、様々な提案がなされている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−０６１３５３号公報
【特許文献２】特開２０１０−１６６６６４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上述したように、積層コアは、例えば、ティーチペンダントを利用してハンド部によるコアシートの把持および移動経路等をロボット制御部に記憶させ、あるいは、所定のプログラムを実行させることにより行っている。このような手法により製造された積層コアには、所定のずれ(積層誤差)が含まれるため、より高精度の積層コアを製造するには、例えば、型枠治具を使用している。
【０００６】
しかしながら、型枠治具は、製造する積層コアの種類毎に異なるため、複数の型枠治具を準備することになり、また、同じ型枠治具を長期間継続して使用すると、その寸法や形状が微妙に変化してくるため、製造された積層コアの形状にも影響が出る。
【０００７】
本発明の目的は、上述した従来技術の課題に鑑み、高品位な積層コアを継続的に製造することができる機械学習器、積層コア製造装置、積層コア製造システムおよび機械学習方法の提供にある。
【課題を解決するための手段】
【０００８】
本発明に係る第１実施形態によれば、複数枚のコアシートを積層して積層コアを製造する積層コア製造装置の動作を学習する機械学習器であって、前記コアシートおよび前記積層コア製造装置の状態を観測する状態観測部と、前記状態観測部により観測された状態量に基づいて、前記コアシートを積層する操作量を更新する学習部と、を備える機械学習器が提供される。
【０００９】
前記状態観測部は、前記コアシートの形状データ、前記積層コア製造装置の動作データ、および、前記積層コア製造装置により前記コアシートが積層される時間データの少なくとも１つの状態量を観測し、前記学習部は、前記状態観測部により観測された前記コアシートの形状データ、前記積層コア製造装置の動作データ、および、前記コアシートが積層される時間データの少なくとも１つの状態量に基づいて、前記コアシートを積層する操作量を更新するのが好ましい。
【００１０】
前記積層コア製造装置は、ハンド部もしくは作業空間を見渡せる個所にロボットビジョンが設けられたロボットを含み、前記状態観測部は、前記ロボットビジョンから、前記コアシートの形状データを受け取ることができる。前記積層コア製造装置は、さらに、前記ハンド部の変位または角度を指令して前記ロボットの動作を制御するロボット制御部を含み、前記状態観測部は、前記ロボット制御部から、前記積層コア製造装置の動作データ、および、前記コアシートが積層される時間データを受け取るのが好ましい。
【００１１】
前記状態観測部は、前記ロボット制御部から出力される前記ハンド部の速度ゲインおよび位置ゲイン、ならびに、前記コアシートが積層される時間のデータを取得することができる。前記機械学習器は、さらに、前記学習部が学習した前記操作量を参照して、前記積層コア製造装置の動作を決定する意思決定部を備えるのが好ましい。
【００１２】
前記学習部は、前記状態観測部の出力に基づいて報酬を計算する報酬計算部と、前記状態観測部および前記報酬計算部の出力に基づいて、前記コアシートを積層して積層コアを製造する動作の価値を定める価値関数を、前記報酬に応じて更新する価値関数更新部と、を備えることができる。また、前記学習部は、前記状態観測部の出力、および、入力された教師データに基づいて誤差を計算する誤差計算部と、前記状態観測部および前記誤差計算部の出力に基づいて、前記コアシートを積層して積層コアを製造する動作の誤差を定める誤差モデルを更新する誤差モデル更新部と、を備えることもできる。前記機械学習器は、ニューラルネットワークを有してもよい。
【００１３】
本発明に係る第２実施形態によれば、所定形状のコアシートを、１枚ずつまたは複数枚ずつ掴んで積層して積層コアを製造する積層コア製造装置であって、前記コアシートを把持するハンド部に設けられたロボットビジョンにより、前記コアシートの寸法を検出して前記積層コアを製造する積層コア製造装置が提供される。前記積層コア製造装置は、さらに、機械学習器を備えるのが好ましい。
【００１４】
本発明に係る第３実施形態によれば、所定形状のコアシートを、１枚ずつまたは複数枚ずつ掴んで積層して積層コアを製造する積層コア製造装置であって、機械学習器を備え、前記コアシートを把持するハンド部に設けられたロボットビジョンにより、前記コアシートの寸法を検出して前記積層コアを製造する積層コア製造装置を複数備える積層コア製造システムであって、前記機械学習器は、それぞれの前記積層コア製造装置に設けられ、複数の前記積層コア製造装置に設けられた複数の前記機械学習器は、通信媒体を介して相互にデータを共有または交換するようになっている積層コア製造システムが提供される。前記機械学習器は、クラウドサーバ上に存在してもよい。
【００１５】
本発明に係る第４実施形態によれば、複数枚のコアシートを積層して積層コアを製造する積層コア製造装置の動作を学習する機械学習方法であって、前記コアシートおよび前記積層コア製造装置の状態を観測し、前記観測された状態量に基づいて、前記コアシートを積層する操作量を更新する機械学習方法が提供される。前記コアシートおよび前記積層コア製造装置の状態を観測するのは、前記コアシートの形状データ、前記積層コア製造装置の動作データ、および、前記積層コア製造装置により前記コアシートが積層される時間データの少なくとも１つの状態量を観測し、前記コアシートを積層する操作量の更新は、観測された前記コアシートの形状データ、前記積層コア製造装置の動作データ、および、前記コアシートが積層される時間データの少なくとも１つの状態量に基づいて行うのが好ましい。
【発明の効果】
【００１６】
本発明に係る機械学習器、積層コア製造装置、積層コア製造システムおよび機械学習方法によれば、高品位な積層コアを継続的に製造することができるという効果を奏する。
【図面の簡単な説明】
【００１７】
【図１】図１は、本発明に係る積層コア製造装置の一実施形態を概略的に示すブロック図である。
【図２】図２は、図１に示す積層コア製造装置におけるロボットビジョンにより得られるコアシート形状の一例を示す図である。
【図３】図３は、ニューロンのモデルを模式的に示す図である。
【図４】図４は、図３に示すニューロンを組み合わせて構成した三層のニューラルネットワークを模式的に示す図である。
【図５】図５は、図１に示す積層コア製造装置における機械学習器の動作の一例を示すフローチャートである。
【図６】図６は、本発明に係る積層コア製造装置の他の実施形態を概略的に示すブロック図である。
【図７】図７は、積層コア製造装置の一例を概略的に示すブロック図である。
【図８】図８は、図７に示す積層コア製造装置により積層コアを製造する一例を説明するための図である。
【図９】図９は、図７に示す積層コア製造装置により積層コアを製造する他の例を説明するための図である。
【発明を実施するための形態】
【００１８】
まず、本発明に係る機械学習器、積層コア製造装置、積層コア製造システムおよび機械学習方法の実施形態を詳述する前に、積層コア製造装置の例およびその課題を、図７〜図９を参照して説明する。図７は、積層コア製造装置の一例を概略的に示すブロック図であり、図８は、図７に示す積層コア製造装置により積層コアを製造する一例を説明するための図である。図７において、参照符号100は積層コア製造装置、101はロボット(作業ロボット)、111はロボット101のハンド部、112はロボット101を制御するロボット制御部、そして、103は積層コアを示す。
【００１９】
図７に示されるように、本例の積層コア103の製造は、ロボット制御部112の出力で制御されるロボット101のハンド部111により、例えば、図８に示されるような複数のコアシート131-1，131-2，…131-kを積み上げて積層コア103を製造する。ここで、ロボット101は、例えば、６軸多関節型ロボットであり、ロボット101およびハンド部111の各駆動軸は、ロボット制御部112によって制御される。
【００２０】
また、ロボット101は、例えば、コアシート131(131-1，131-2，…，131-k)を所定個所から把持して積み上げ、積層コア103を製造する。なお、ロボット101によるコアシート131の積層は、例えば、図示しないティーチペンダントを利用してハンド部111によるコアシート131の把持および移動経路等をロボット制御部112に記憶させ、あるいは、ロボット制御部112に対してコアシート131を把持，移動および積層する所定のプログラムを実行させることにより行う。
【００２１】
しかしながら、上述した積層コア103の製造方法では、図８に示されるように、積層される複数のコアシート131-1，131-2，…，131-kの位置がばらつくため、製造された積層コア103には、例えば、Ｘ＋ΔＸおよびＹ＋ΔＹの誤差範囲が含まれることになる。
【００２２】
図９は、図７に示す積層コア製造装置により積層コアを製造する他の例を説明するための図であり、型枠治具130を使用して積層コア103を製造する場合を示す。すなわち、図９に示されるように、本例の積層コアの製造は、型枠治具130の内面により積層される複数のコアシート131-1，131-2，…，131-kを積層後、積層状態の寸法ばらつきを抑えられるようになっている。しかしながら、型枠治具130は、製造する積層コア103の種類毎に異なるため、複数の型枠治具130を準備することになる。また、同じ型枠治具130を長期間継続して使用すると、型枠治具130の寸法や形状が微妙に変化してくるため、製造された積層コア103の形状にも影響が出る。
【００２３】
このように、図７に示すような積層コア製造装置100により積層コア103を製造する場合、型枠治具130が無いと、高品位な積層コア103の設計が難しくなり、また、型枠治具130を用いて積層コア103を製造する場合でも、長期間に渡って同じ品質の積層コア103を製造するのが困難であり、さらに、製造する積層コア103の種類ごとに型枠治具130を準備することになるといった様々な問題がある。
【００２４】
以下、本発明に係る機械学習器、積層コア製造装置、積層コア製造システムおよび機械学習方法の実施形態を、添付図面を参照して詳述する。ここで、各図面において、同じ部材には同じ参照符号が付されている。また、異なる図面において同じ参照符号が付されたものは同じ機能を有する構成要素であることを意味するものとする。なお、理解を容易にするために、これらの図面は縮尺を適宜変更している。
【００２５】
図１は、本発明に係る積層コア製造装置の一実施形態を概略的に示すブロック図であり、図２は、図１に示す積層コア製造装置におけるロボットビジョンにより得られるコアシート形状の一例を示す図である。図１に示されるように、本実施形態の積層コア製造装置１０は、ハンド部１１を有するロボット１、機械学習器２、ロボット制御部１２およびロボットビジョン１３を含む。ロボット１は、例えば、６軸多関節型ロボットであり、ロボット１およびハンド部１１のそれぞれの駆動軸は、ロボット制御部１２によって制御される。
【００２６】
ロボット１は、コアシート３１を１枚ずつ、あるいは、複数枚ずつ把持して積層し、積層コア３を製造する。なお、図１において、ハンド部１１は、コアシート３１を２本の爪で把持するように描かれているが、例えば、負圧によりコアシート３１を吸着する吸着式ハンド等であってもよい。また、ハンド部１１には、ロボットビジョン１３が設けられていて、コアシート３１の形状を認識、すなわち、図２に示されるような、コアシート３１のＸおよびＹの寸法等を検出可能になっている。
【００２７】
なお、図１において、ロボットビジョン１３の装着個所は、ハンド部１１とされているが、これは単なる例であり、作業空間を見渡せる個所であれば、ハンド部１１に限定されるものではない。また、ロボットビジョン１３の設置数も１つに限定されず、複数個所あるいは複数個設けることができるのはいうまでもない。
【００２８】
ロボット制御部１２は、ハンド部１１の変位または角度を指令してロボット１の動作を制御する。状態観測部２１は、ロボットビジョン１３からのコアシート３１の形状データ、ならびに、ロボット制御部１２からの積層コア製造装置１０(ロボット１)の動作データおよびコアシート３１が積層される時間データの少なくとも１つを受け取る。すなわち、状態観測部２１は、ロボット制御部１２から出力されるハンド部１１の速度ゲインおよび位置ゲイン、ならびに、コアシート３１が積層される時間のデータを取得する。
【００２９】
機械学習器２は、積層コア製造装置１０の動作を学習するためのもので、コアシート３１および積層コア製造装置１０の状態を観測する状態観測部２１と、状態観測部２１により観測された状態量に基づいてコアシート３１を積層する操作量を更新する学習部２２と、学習部２２が学習した操作量を参照して積層コア製造装置１０の動作を決定する意思決定部２５と、を含む。
【００３０】
学習部２２は、状態観測部２１により観測されたコアシート３１の形状データ、積層コア製造装置１０の動作データ、および、コアシート３１が積層される時間データの少なくとも１つの状態量に基づいて、コアシート３１を積層するための操作量を更新する。すなわち、学習部２２は、状態観測部２１の出力に基づいて報酬を計算する報酬計算部２３と、状態観測部２１および報酬計算部２３の出力に基づいて、コアシート３１を積層して積層コア３を製造する動作の価値を定める価値関数を、報酬に応じて更新する価値関数更新部２４と、を含む。また、意思決定部２５は、学習部２２が学習した操作量を参照して、積層コア製造装置１０(ロボット１)の動作を決定して、ロボット制御部１２へ出力する。これにより、ロボット制御部１２は、更新された価値関数による速度ゲイン(更新値)および位置ゲイン(更新値)に基づいてハンド部１３(ロボット１)の制御を行い、コアシート３１を積層して積層コア３を製造する。
【００３１】
ここで、機械学習器について、説明する。機械学習器は、装置に入力されるデータの集合から、その中にある有用な規則や知識表現、判断基準などを解析により抽出し、その判断結果を出力するとともに、知識の学習(機械学習)を行う機能を有する。機械学習の手法は様々であるが、大別すれば、例えば、「教師あり学習」、「教師なし学習」および「強化学習」に分けられる。さらに、これらの手法を実現するうえで、特徴量そのものの抽出を学習する、「深層学習(ディープラーニング：Deep Learning)」と呼ばれる手法がある。
【００３２】
なお、図１に示す機械学習器２は、「強化学習」を適用したものであり、また、図６を参照して後述する機械学習器４は、「教師あり学習」を適用したものである。これらの機械学習(機械学習器２，４)は、汎用の計算機若しくはプロセッサを用いることもできるが、例えば、ＧＰＧＰＵ(General-Purpose computing on Graphics Processing Units)や大規模ＰＣクラスター等を適用すると、より高速処理が可能になる。
【００３３】
まず、教師あり学習とは、教師データ、すなわち、ある入力と結果(ラベル)のデータの組を大量に機械学習器２に与えることで、それらのデータセットにある特徴を学習し、入力から結果を推定するモデル(誤差モデル)、すなわち、その関係性を帰納的に獲得するものである。例えば、後述のニューラルネットワークなどのアルゴリズムを用いて実現することが可能である。
【００３４】
また、教師なし学習とは、入力データのみを大量に学習装置に与えることで、入力データがどのような分布をしているか学習し、対応する教師出力データを与えなくても、入力データに対して圧縮・分類・整形などを行う装置で学習する手法である。例えば、それらのデータセットにある特徴を、似た者どうしにクラスタリングすることなどができる。この結果を使って、何らかの基準を設けてそれを最適化するような出力の割り当てを行うことにより、出力の予測を実現することができる。
【００３５】
なお、教師なし学習と教師あり学習との中間的な問題設定として、半教師あり学習と呼ばれるものもあり、これは、例えば、一部のみ入力と出力のデータの組が存在し、それ以外は入力のみのデータである場合が対応する。本実施形態においては、実際にロボットを動かさなくても取得することができるデータ(画像データやシミュレーションのデータ等)を教師なし学習で利用することにより、学習を効率的に行うことが可能になる。
【００３６】
次に、強化学習について、説明する。まず、強化学習の問題設定として、次のように考える。
・ロボットは、環境の状態を観測し、行動を決定する。
・環境は、何らかの規則に従って変化し、さらに、自分の行動が、環境に変化を与えることもある。
・行動するたびに、報酬信号が帰ってくる。
・最大化したいのは、将来にわたっての(割引)報酬の合計である。
・行動が引き起こす結果を全く知らない、または、不完全にしか知らない状態から学習はスタートする。すなわち、ロボットは、実際に行動して初めて、その結果をデータとして得ることができる。つまり、試行錯誤しながら最適な行動を探索する必要がある。
・人間の動作を真似るように、事前学習(前述の教師あり学習や、逆強化学習といった手法)した状態を初期状態として、良いスタート地点から学習をスタートさせることもできる。
【００３７】
ここで、強化学習とは、判定や分類だけではなく、行動を学習することにより、環境に行動が与える相互作用を踏まえて適切な行動を学習、すなわち、将来的に得られる報酬を最大にするための学習する方法を学ぶものである。以下に、例として、Ｑ学習の場合で説明を続けるが、Ｑ学習に限定されるものではない。
【００３８】
Ｑ学習は、或る環境状態ｓの下で、行動ａを選択する価値Ｑ(ｓ，ａ)を学習する方法である。つまり、或る状態ｓのとき、価値Ｑ(ｓ，ａ)の最も高い行動ａを最適な行動として選択すればよい。しかし、最初は、状態ｓと行動ａとの組合せについて、価値Ｑ(ｓ，ａ)の正しい値は全く分かっていない。そこで、エージェント(行動主体)は、或る状態ｓの下で様々な行動ａを選択し、その時の行動ａに対して、報酬が与えられる。それにより、エージェントは、より良い行動の選択、すなわち、正しい価値Ｑ(ｓ，ａ)を学習していく。
【００３９】
さらに、行動の結果、将来にわたって得られる報酬の合計を最大化したいので、最終的にＱ(ｓ，ａ)＝Ｅ［Σ(γt)ｒt］となるようにすることを目指す。ここでＥ［］は期待値を表し、ｔは時刻、γは後述する割引率と呼ばれるパラメータ、ｒtは時刻ｔにおける報酬、Σは時刻ｔによる合計である。この式における期待値は、最適な行動に従って状態変化したときについてとるものとし、それは、分かっていないので、探索しながら学習することになる。このような価値Ｑ(ｓ，ａ)の更新式は、例えば、次の式(１)により表すことができる。
【００４０】
【数１】
0006616170.tif 000002
上記の式(１)において、ｓ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，ｘ2，ｘ3)には、この入力ｘに対応する重みｗ(ｗ1，ｗ2，ｗ3)が掛けられる。これにより、ニューロンは、次の式(２)により表現される結果ｙを出力する。なお、入力ｘ、結果ｙおよび重みｗは、すべてベクトルである。また、下記の式(２)において、θは、バイアスであり、ｆkは、活性化関数である。
【数２】
0006616170.tif 000003
【００４５】
図４を参照して、図３に示すニューロンを組み合わせて構成した三層のニューラルネットワークを説明する。図４に示されるように、ニューラルネットワークの左側から複数の入力ｘ(ここでは、一例として、入力ｘ1〜入力ｘ3)が入力され、右側から結果ｙ(ここでは、一例として、結果ｙ1〜入力ｙ3)が出力される。具体的に、入力ｘ1，ｘ2， ｘ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)により学習可能なものである。なお、誤差の情報は、右側から入り左側に流れる。誤差逆伝搬法は、各ニューロンについて、入力ｘが入力されたときの出力ｙと真の出力ｙ(教師)との差分を小さくするように、それぞれの重みを調整(学習)する手法である。
【００５１】
このようなニューラルネットワークは、三層以上に、さらに層を増やすことも可能である(深層学習と称される)。また、入力の特徴抽出を段階的に行い、結果を回帰する演算装置を、教師データのみから自動的に獲得することも可能である。そこで、本実施形態の機械学習器２は、上述のＱ学習を実施すべく、図１に示されるように、状態観測部２１、学習部２２、および、意思決定部２５を備えている。ただし、本発明に適用される機械学習方法は、Ｑ学習に限定されないのは前述した通りである。すなわち、機械学習器で用いることができる手法である「教師あり学習」、「教師なし学習」、「半教師あり学習」および「強化学習」等の様々な手法が適用可能である。
【００５２】
次に、本実施形態の積層コア製造装置における機械学習器２の動作の一例を説明する。図５は、図１に示す積層コア製造装置における機械学習器の動作の一例を示すフローチャートである。図５に示されるように、機械学習が開始(学習スタート)すると、行動価値テーブルに基づいてコアシート３１を積層する(ステップＳＴ１)。すなわち、ロボット制御部１２は、行動価値テーブル(価値関数)による速度ゲインおよび位置ゲインに基づいて、ハンド部１１の変位，角度等(操作量)を指令し、ロボット１に対してコアシート３１の積層処理を行わせる。
【００５３】
状態観測部２１は、例えば、ロボット制御部１２から速度ゲイン，位置ゲインおよび積層時間の情報、ならびに、ロボットビジョン１３の出力に基づく寸法測定値を取得する(ステップＳＴ２)。さらに、積層コア３の寸法が許容公差範囲内か(ステップＳＴ３)、および、積層時間を前回試行時より短縮できたか(ステップＳＴ４)を判定する。すなわち、ステップＳＴ３において、積層コア３の寸法が許容公差範囲内ではない(ＳＴ３：ＮＯ)と判定すると、ステップＳＴ７に進んでマイナス報酬を設定し、一方、積層コア３の寸法が許容公差範囲内である(ＳＴ３：ＹＥＳ)と判定すると、ステップＳＴ４に進んで、上述したステップＳＴ２のコアシート３１を積層するのに要した積層時間が前回試行時の積層時間よりも短縮することができたかどうかの判定を行う。
【００５４】
すなわち、ステップＳＴ４において、積層時間を前回試行時より短縮できた(ＳＴ４：ＹＥＳ)と判定すると、ステップＳＴ５に進んで、プラス報酬を設定し、一方、積層時間を前回試行時より短縮できなかった(ＳＴ４：ＮＯ)と判定すると、ステップＳＴ６に進んで、報酬なし(零報酬)を設定する。そして、ステップＳＴ８において、ステップＳＴ５〜ＳＴ７における「プラス報酬」，「報酬なし」および「マイナス報酬」による報酬計算を行い、行動価値テーブルを更新し(ステップＳＴ９)、ステップＳＴ１に戻り、同様の処理を繰り返す。これにより、高品位な積層コアを長期間に渡って継続的に製造することが可能になる。
【００５５】
以上において、ハンド部１１により積層するコアシート３１の数は、１枚に限定されるものではない。すなわち、１回のハンド部１１の動作により、所定形状のコアシート３１を、１枚ずつまたは複数枚ずつ積層して積層コアを製造する。なお、コアシート３１を積層するためのハンド部１１は、図１に示すような２本の爪で１枚または複数枚のコアシート３１を把持するものに限定されないのは前述した通りである。
【００５６】
また、状態観測部２１が取得(観測)する速度ゲイン，位置ゲイン，積層時間および寸法測定値(状態量)は、これらのものに限定されず、他の様々なデータであってもよい。さらに、コアシート３１の寸法測定値は、例えば、ロボットビジョン１３からの画像データから求めることができるが、このとき、知られている様々な処理を適用することができる。なお、ステップＳＴ５〜ＳＴ７における「プラス報酬」，「報酬なし」および「マイナス報酬」の値(大きさ)は、様々な条件(例えば、許容公差の大きさやコアシートの形状，材質および精度等)に応じて適切なものが選ばれるのはいうまでもない。
【００５７】
図６は、本発明に係る積層コア製造装置の他の実施形態を概略的に示すブロック図であり、教師あり学習を適用したものを示す。図６と、前述した図１の比較から明らかなように、図６に示す教師あり学習を適用した積層コア製造装置１０’は、図１に示すＱ学習(強化学習)を適用した積層コア製造装置１０において、教師データ(結果(ラベル)付きデータ)が提供されるようになっている。
【００５８】
図６に示されるように、教師あり学習を適用した積層コア製造装置１０’における機械学習器４は、状態観測部４１と、学習部４２と、意思決定部４５と、を備える。学習部４２は、誤差計算部４３と、誤差モデル更新部４４と、を含む。なお、本実施形態の積層コア製造装置１０’においても、機械学習器４は、行動価値テーブル(価値関数)による速度ゲインおよび位置ゲインに基づいて、ハンド部１１の変位，角度等の操作量を学習して出力する。
【００５９】
すなわち、図６に示す教師あり学習を適用した積層コア製造装置１０’において、誤差計算部４３および誤差モデル更新部４４は、それぞれ、図１に示すＱ学習を適用した積層コア製造装置１０における報酬計算部２３および価値関数更新部２４に対応する。なお、他の構成、例えば、ロボット１，ロボット制御部１２およびロボットビジョン１３等の構成は、前述した図１と同様であり、その説明は省略する。また、意思決定部４５も、図１のものと同様であり、その説明は省略する。また、図６においても、ロボットビジョン１３の装着個所は、ハンド部１１に限定されず、作業空間を見渡せる個所に設置してもよく、さらに、ロボットビジョン１３の数も１つに限定されず、複数個所あるいは複数個設けることができる。
【００６０】
誤差計算部４３は、状態観測部４１の出力および教師データを受け取って、結果(ラベル)付きデータと学習部４２に実装されている誤差モデルの出力との誤差を計算する。ここで、教師データは、例えば、コアシート３１(積層コア３)の形状やロボット１による処理が同一の場合、ロボット１に作業を行わせる所定日の前日までに得られた結果(ラベル)付きデータを保持し、その所定日に、結果(ラベル)付きデータを誤差計算部４３に提供することができる。
【００６１】
あるいは、積層コア製造装置１０’の外部で行われたシミュレーション等により得られたデータ、または、他の積層コア製造装置の結果(ラベル)付きデータを、メモリカードや通信回線により、その積層コア製造装置１０’の誤差計算部４３に提供することも可能である。さらに、結果(ラベル)付きデータ(教師データ)を、例えば、学習部４２に内蔵したフラッシュメモリ(Flash Memory)等の不揮発性メモリに保持し、その不揮発性メモリに保持された結果(ラベル)付きデータを、そのまま学習部４２で使用することもできる。
【００６２】
以上、において、積層コア製造装置１０(１０’)を複数備えた積層コア製造システムを考えた場合、例えば、機械学習器２(４)は、積層コア製造装置１０(１０’)毎にそれぞれ設けられ、複数の積層コア製造装置１０(１０’)に設けられた複数の機械学習器２(４)は、通信媒体を介して相互にデータを共有または交換することが可能である。また、機械学習器２(４)は、クラウドサーバ上に存在させることも可能である。
【００６３】
以上、実施形態を説明したが、ここに記載したすべての例や条件は、発明および技術に適用する発明の概念の理解を助ける目的で記載されたものであり、特に記載された例や条件は発明の範囲を制限することを意図するものではない。また、明細書のそのような記載は、発明の利点および欠点を示すものでもない。発明の実施形態を詳細に記載したが、各種の変更、置き換え、変形が発明の精神および範囲を逸脱することなく行えることが理解されるべきである。
【符号の説明】
【００６４】
１    ロボット
２，４    機械学習器
３    積層コア
１０，１０’    積層コア製造装置
１１    ハンド部
１２    ロボット制御部
１３    ロボットビジョン
２１，４１    状態観測部
２２，４２    学習部
２３    報酬計算部
２４    価値関数更新部
２５，４５    意思決定部
４３    誤差計算部
４４    誤差モデル更新部
【図１】
0006616170.tif 000004
【図２】
0006616170.tif 000005
【図３】
0006616170.tif 000006
【図４】
0006616170.tif 000007
【図５】
0006616170.tif 000008
【図６】
0006616170.tif 000009
【図７】
0006616170.tif 000010
【図８】
0006616170.tif 000011
【図９】
0006616170.tif 000012