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

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

▶ 株式会社日立製作所の特許一覧

特許7376405最適化処理装置、最適化処理方法及び最適化処理プログラム
<>
  • 特許-最適化処理装置、最適化処理方法及び最適化処理プログラム 図1
  • 特許-最適化処理装置、最適化処理方法及び最適化処理プログラム 図2
  • 特許-最適化処理装置、最適化処理方法及び最適化処理プログラム 図3
  • 特許-最適化処理装置、最適化処理方法及び最適化処理プログラム 図4
  • 特許-最適化処理装置、最適化処理方法及び最適化処理プログラム 図5
  • 特許-最適化処理装置、最適化処理方法及び最適化処理プログラム 図6
  • 特許-最適化処理装置、最適化処理方法及び最適化処理プログラム 図7
  • 特許-最適化処理装置、最適化処理方法及び最適化処理プログラム 図8
  • 特許-最適化処理装置、最適化処理方法及び最適化処理プログラム 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-10-30
(45)【発行日】2023-11-08
(54)【発明の名称】最適化処理装置、最適化処理方法及び最適化処理プログラム
(51)【国際特許分類】
   G06Q 10/04 20230101AFI20231031BHJP
   G06N 20/00 20190101ALI20231031BHJP
【FI】
G06Q10/04
G06N20/00
【請求項の数】 6
(21)【出願番号】P 2020056611
(22)【出願日】2020-03-26
(65)【公開番号】P2021157456
(43)【公開日】2021-10-07
【審査請求日】2022-04-21
(73)【特許権者】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110002365
【氏名又は名称】弁理士法人サンネクスト国際特許事務所
(72)【発明者】
【氏名】魏 文鵬
(72)【発明者】
【氏名】岡留 有哉
(72)【発明者】
【氏名】相薗 敏子
【審査官】田上 隆一
(56)【参考文献】
【文献】特開2019-159864(JP,A)
【文献】特開2018-005563(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
G06N 20/00
(57)【特許請求の範囲】
【請求項1】
組合せ最適化の問題に対して最適解を探索する処理を行う処理部と、
過去の問題と解のセットである学習データに関する情報を記憶する記憶部と
を備え、
前記処理部は、
前記学習データを用いた機械学習により、解の候補となる組合せの評価値を予測する予測モデルを生成し、
与えられた問題の解の候補としての組合せについて前記予測モデルを用いて前記評価値を求め、より評価値の高い組合せを探索することで最適解を求める場合に前記学習データの分布に基づいて探索範囲を制限するものであり、
前記学習データの分布から解候補のデータまでの距離を求め、該距離が距離閾値以下となる範囲を前記探索範囲とする
ことを特徴とする最適化処理装置。
【請求項2】
前記探索範囲は、前記学習データの分布範囲よりも大きく、前記学習データの分布範囲を包含することを特徴とする請求項1に記載の最適化処理装置。
【請求項3】
前記処理部は、前記評価値及び前記距離に基づく損失関数を用いて前記最適解を探索することを特徴とする請求項1に記載の最適化処理装置。
【請求項4】
前記処理部は、ランキング学習を用いて前記予測モデルを生成することを特徴とする請求項1に記載の最適化処理装置。
【請求項5】
組合せ最適化の問題に対して最適解を探索する最適化処理方法であって、
最適化処理装置が、
過去の問題と解のセットである学習データを用いた機械学習により、解の候補となる組合せの評価値を予測する予測モデルを生成する予測モデル生成ステップと、
与えられた問題の解の候補としての組合せについて前記予測モデルを用いて前記評価値を求め、より評価値の高い組合せを探索することで最適解を求める探索ステップと
を含み、
前記探索ステップは、前記学習データの分布から解候補のデータまでの距離が距離閾値以下となる範囲を探索範囲とする
ことを特徴とする最適化処理方法。
【請求項6】
組合せ最適化の問題に対して最適解を探索する最適化処理プログラムであって、
過去の問題と解のセットである学習データを用いた機械学習により、解の候補となる組合せの評価値を予測する予測モデルを生成する予測モデル生成手順と、
与えられた問題の解の候補としての組合せについて前記予測モデルを用いて前記評価値を求め、より評価値の高い組合せを探索することで最適解を求める探索手順と
をコンピュータに実行させ、
前記探索手順は、前記学習データの分布から解候補のデータまでの距離が距離閾値以下となる範囲を探索範囲とする
ことを特徴とする最適化処理プログラム。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、組合せ最適化の問題に対して最適解を探索する最適化処理装置、最適化処理方法及び最適化処理プログラムに関する。
【背景技術】
【0002】
従来、生産計画や配送計画などの組合せ最適化の問題に対し、数理最適化の手法が適用されている。例えば特開2017-120561号公報(特許文献1)には、「搬送物置場における搬送物の受け入れから払い出しまでの物流計画を立案する物流計画立案装置であって、前記搬送物置場における置場、前記搬送物置場において搬送物を取り扱う搬送機器、搬送物、及び物流計画立案の方針をモデル化して得られる、数式モデルである物流モデルを構築する物流モデル構築手段と、前記物流モデル構築手段で構築した物流モデルに基づいて、数理最適化手法により物流計画を立案する物流計画立案手段と、前記物流計画立案手段で立案した物流計画を出力する出力手段とを備えたことを特徴とする」という記載がある。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2017-120561号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記特許文献1に代表される従来技術では、モデリングを人手で行うことでコストが増大するという問題がある。また、対象とする問題を最適化する上での制約を業務知識として、あるいは暗黙知として保有していることが前提となる。そのため、実績にない未知の問題に適用することができない。
【0005】
そこで、本発明では、組合せ最適化の問題に対して最適解を探索するにあたり、モデルを自律的に構築し、未知の問題に適用可能な技術を適用することを目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するために、代表的な本発明の最適化処理装置、最適化処理方法及び最適化処理プログラムの一つは、学習データから組合せの評価値を予測する予測モデルを生成し、予測モデルを用いて最適解の探索を行う場合に学習データの分布に基づいて探索範囲を制限する。
【発明の効果】
【0007】
本発明によれば、組合せ最適化の問題に対して最適解を探索するにあたり、モデルを自律的に構築し、未知の問題に適用することができる。
上記した以外の課題、構成及び効果は以下の実施の形態の説明により明らかにされる。
【図面の簡単な説明】
【0008】
図1】実施例に係る最適化処理装置による処理の概念図。
図2】予測モデルと学習データの分布についての説明図。
図3】組合せ最適化問題の具体例についての説明図。
図4】最適化処理装置の構成図。
図5】最適化処理装置の処理手順を示すフローチャート。
図6】最適化処理装置の処理手順の説明図。
図7】学習結果表示画面の具体例。
図8】最適解探索画面の具体例。
図9】最適化処理装置の変形例についての説明図。
【発明を実施するための形態】
【0009】
以下、実施例を図面を用いて説明する。
【実施例
【0010】
図1は、実施例に係る最適化処理装置による処理の概念図である。本実施例に係る最適化処理装置は、まず、学習データから予測モデルを生成する。学習データは、過去の問題と解のセットである。具体例については後述するが、例えば、複数の工程における作業の順序が問題であれば、実際に行われた作業の順序(組合せ)が解となる。予測モデルの生成には、例えば深層学習を用いる。予測モデルは、解の候補となる組合せから予測評価値を求める関数である。予測評価値は、組合せを相対的に評価する指標であり、組合せを比較してより適切な解を探索するために用いられる。
【0011】
最適化処理装置は、問題が与えられたならば、生成した予測モデルを用いて最適化処理を行い、最適解を出力する。具体的には、与えられた問題の解の候補としての組合せについて予測評価値を求め、より予測評価値の高い組合せを探索することで最適解を求める。
【0012】
ここで、本実施例に係る最適化処理装置は、学習データの分布に基づいて最適解の探索範囲を制限する。学習データから生成された予測モデルは、学習データの分布内では高い精度を期待できるが、学習データの分布から外れると精度が低下するためである。
【0013】
図2は、予測モデルと学習データの分布についての説明図である。図2では、z軸を予測評価値として予測モデルを表示している。したがって、最適化処理では、zの値が最大となる組合せ(図2ではxとyの組合せ)を最適解として探索することになる。
【0014】
この探索は、学習データの分布範囲とその近傍に限定して行う。図2では、予測モデルの曲面上において、学習データの分布範囲に対応する範囲を白線で囲むことで示している。最適化処理は、この白線で囲まれた範囲とその近傍で、zの値を比較して最大値を探索する処理と言える。
【0015】
ここで、探索範囲に学習データの分布範囲の近傍を含める理由について説明する。具体的には、探索範囲は、学習データの分布範囲よりも大きく、学習データの分布範囲を包含する。本来、十分な数と分布を有する学習データが入手可能であれば、広範囲で精度の高い予測モデルを生成することができる。しかし、解となりえる組合せが膨大であれば、十分な数と分布を有する学習データの入手は現実的ではなくなる。換言するならば、解空間が広大であれば、学習データは疎で偏りのある群とならざるを得ない。
【0016】
学習データの分布範囲の中で探索を行うことは、すでに説明したように、精度の高い予測評価値を得るために有効である。一方で、探索範囲を学習データの分布範囲よりも大きくすることは、学習データの分布範囲を逸脱した最適解が得られる可能性があることを示す。学習データの分布範囲を逸脱した最適解に従って作業を実施し、その作業実績を新たな学習データとして利用すれば、学習データの分布範囲を拡大することができる。すなわち、探索範囲を学習データの分布範囲よりも大きくすることで、学習データの分布範囲を拡大して予測モデルを成熟させることができるのである。
【0017】
図3は、組合せ最適化問題の具体例についての説明図である。図3では、倉庫内において複数工程を対象とする作業順序の最適化問題を示している。具体的には注文された商品を倉庫から取り出して、商品ラベルを付け、仕分けし、梱包し、出荷する作業を対象としている。
【0018】
例えば、注文の数であるオーダー数が1日に1000であり、作業員の数が500であり、8時間の稼働時間を1時間ごとに時間帯として分割するならば、作業順序の組合せ数は、「1000!×500!×8!」となる。このように作業順序の組合せは膨大であり、さらに、工程ごとに最適な作業順序の条件が異なる。具体的には、商品ラベル付けであればラベルの種類が同じ商品を連続して作業すること、自動搬送棚による仕分けであれば同時に注文されやすい商品を連続すること、梱包では梱包方法が同じオーダーを連続すること、出荷では出荷先が近いオーダーを連続することが条件となる。
【0019】
このような作業の最適化を新たに検討するとすれば、過去の情報、業務知識、暗黙知を用いてモデリングを人手で行うのは困難である。また、過去の情報を蓄積したとしても、組合せが膨大であるために同じ作業があることは期待できない。
【0020】
本実施例に係る最適化処理装置は、このような問題に対し、学習データを用いた機械学習で予測モデルを自律的に生成することができる。学習データとしては、例えば過去に行わった作業の順序(組合せ)を用いる。学習データは、解空間に対して疎で偏りがあるが、学習データの分布範囲に基づいて探索範囲を制限することで、妥当な解を得ることができる。また、学習データの分布範囲の近傍を探索範囲に含めるとともに、解に基づく新たな作業の実績を学習データに追加することで、学習データの分布範囲を広げることができる。
【0021】
図4は、最適化処理装置の構成図である。図4に示すように最適化処理装置10は、CPU(Central Processing Unit)11、メモリ12、表示部13、入力部14及び記憶部15を有する。CPU11は、補助記憶装置(例えば記憶部15)から読み出したプログラムを主記憶装置であるメモリ12上に展開して実行することで、各種機能部として動作する。図4では、予測モデル生成部21、距離算定部22、評価値予測部23及び探索部24として動作するプログラムがメモリ12に展開された状態を示している。
【0022】
表示部13は、液晶パネルディスプレイなどの出力デバイスであり、入力部14はキーボードやタッチパネルなどの入力デバイスである。記憶部15は、ハードディスクドライブなどである。記憶部15は、各種データやプログラムを記憶するが、本実施例に特に重要なデータとして学習データ31及び予測モデルデータ32を記憶する。学習データ31は、すでに説明したように、予測モデルの生成に用いるデータである。予測モデルデータ32は、予測モデルを特定するデータである。
【0023】
予測モデル生成部21は、学習データ31を用いて深層学習を行い、予測モデルを生成する処理部である。予測モデル生成部21は、生成した予測モデルを特定する予測モデルデータ32を記憶部15に格納する。
【0024】
距離算定部22は、学習データ31の分布から解候補のデータまでの距離を算定する処理部である。
評価値予測部23は、予測モデルデータ32を読み出し、予測モデルデータ32によって特定される予測モデルを用いて解候補のデータの予測評価値を算定する処理部である。
探索部24は、予測評価値を用いて最適解の探索を行う処理部である。探索部24は、最適解の探索を行う場合に、学習データ31の分布に基づいて探索範囲を制限する。
【0025】
ここで、予測モデルの学習について説明する。学習データ31から予測モデルを学習するにあたり、学習データ31が相対的に少ないため、実指標の正確な予測は困難である。例えば、図3に示した例では、「作業員1人が1時間で処理できる商品数」を実指標として予測しても誤差が大きくなる。
【0026】
そこで、最適化処理装置10は、実指標を直接予測するのではなく、実指標の相対的な大小関係を求める。すなわち、最適化処理装置10は、回帰問題からランキング問題に変換することで、誤差を低減している。予測評価値は、より実指標が良好となる組合せを見つけるための指標であり、実指標に対応する。なお、本実施例では予測評価値は大きいほど良好な値であるものとする。この予測評価値をV(x)とすると、
【数1】
ここで
【数2】
である。このPijを用いたランキング学習により予測モデルを生成する。
【0027】
次に、距離の算定について説明する。まず、学習データ31の特徴が多次元ガウス分布に従うと仮定し、学習データ31の分布パラメータを推定すると、特定データの特徴と学習データ31の特徴分布とのマハラノビス距離は、
【数3】
ここで
【数4】
となる。
【0028】
最適化処理装置10は、x=(πθ(t|c),c)として、次の損失関数を用いて最適解を求める。
【数5】
λを十分に大きく設定すれば、損失関数は、学習データ分布からのマハラノビス距離がα以下のとき「-V(x)」となり、それ以外で大きい値を取ることになる。
【0029】
図5は、最適化処理装置10の処理手順を示すフローチャートである。最適化処理装置10の予測モデル生成部21は、まず、学習データ31を記憶部15に格納する(ステップS101)。予測モデル生成部21は、学習データ31から予測モデルを生成し、生成した予測モデルを特定する予測モデルデータ32を記憶部15に格納する(ステップS102)。
【0030】
予測モデルの生成後、所定のタイミングで、評価値予測部23は、評価対象データを決定する(ステップS103)。評価対象データは、解候補としての1つの組合せに対応する。評価値予測部23は、予測モデルデータ32を読み出し、予測モデルデータ32によって特定される予測モデルを用いて評価対象データの予測評価値を算定する(ステップS104)。
【0031】
距離算定部22は、評価対象データと学習データ31の分布からマハラノビス距離を算定する(ステップS105)。
【0032】
探索部24は、予測評価値と距離に基づいて、損失関数による損失の評価を行う(ステップS106)。ステップS106の後、探索部24は、探索を終了するか否かを判定する(ステップS107)。探索を終了するのは、最適解が特定できた場合や、探索ステップ(ステップS103~S107)を所定回数繰り返した場合などである。探索を終了しない場合には(ステップS107;No)、ステップS103に移行し、次の評価対象データを決定する。探索を終了するならば(ステップS107)、ステップS108に移行し、最適解を出力して、処理を終了する。
【0033】
図6は、最適化処理装置10の処理手順の説明図である。図6では、学習データから予測モデルが生成され、最適化処理に用いられている。最適化処理では、予測モデルを用いて解候補のデータの予測評価値を求める処理と、最適化アルゴリズムを用いて予測評価値及び距離から解候補のデータを求める処理とを繰り返し、最適解を求めている。
【0034】
図7は、学習結果表示画面の具体例である。図7では、x軸を実指標(作業員1人が1時間で処理できる商品数)、y軸を予測評価値としてグラフ表示を行っている。また、作業の順番を実指標及び予測評価値とともに表示することも可能である。具体的には、
「作業順番: B C A・・・G
実指標: 55.8
予測評価値:933.1」
「作業順番: D A E・・・H
実指標: 55.1
予測評価値:905.6」
を表示した状態を示している。
かかる表示により、最適化処理装置10は、最も予測評価値の高い組合せや最も予測評価値の低い組合せなどをユーザに認識させることができる。
【0035】
図8は、最適解探索画面の具体例である。図8では、損失関数と距離が最適化ステップの繰り返しによってどのように変化するかを示している。図8に示すように、損失関数の値は最適化ステップ数に応じて減少している。これは、予測評価値の向上を意味する。同様に、距離も最適化ステップ数に応じて減少し、高信頼区間に近づいている。
【0036】
次に、最適化処理装置の変形例について説明する。図9は、最適化処理装置の変形例についての説明図である。図9では、予測モデル生成装置50と最適化処理装置60とが接続されている。予測モデル生成装置50は、学習データから予測モデルを生成する処理を行う。
【0037】
最適化処理装置60は、予測モデル生成装置50が生成した予測モデルを記憶する。また、最適化処理装置60は、学習データの分布を示す分布データを学習データに関する情報として記憶する。
【0038】
最適化処理装置60は、問題が与えられたならば、予測モデルと分布データを参照し、分布データからの距離により制限された範囲内で最適化処理を行い、最適解を出力する。この最適解に基づいて作業が行われたならば、最適化処理の結果と作業結果を対応付けて作業実績に蓄積する。蓄積した作業実績を追加の学習データとして予測モデル生成装置50に提供すれば、予測モデル生成装置50は、改めて学習を行うことで精度の向上した予測モデルを生成し、最適化処理装置60に提供できる。
【0039】
上述してきたように、本実施例に係る最適化処理装置は、組合せ最適化の問題に対して最適解を探索する処理を行う処理部として機能するCPU11及びメモリ12と、学習データに関する情報を記憶する記憶部15とを備え、学習データから組合せの評価値を予測する予測モデルを生成し、予測モデルを用いて最適解の探索を行う場合に学習データの分布に基づいて探索範囲を制限する。このため、モデルを自律的に構築し、未知の問題に適用することができる。
【0040】
ここで、探索範囲は、学習データの分布範囲よりも大きく、学習データの分布範囲を包含することが好ましい。このように設定することで、学習データの分布範囲を拡大して予測モデルを成熟させることができる。
【0041】
具体的には、最適化処理装置は、学習データの分布から解候補のデータまでの距離を求め、該距離が距離閾値以下となる範囲を探索範囲とすることで、探索範囲を簡易に定めることができる。また、評価値及び距離に基づく損失関数を用いて最適解を探索することができる。
【0042】
また、最適化処理装置は、ランキング学習を用いて予測モデルを生成することで、実指標を直接予測することで生じる誤差の影響を抑制することができる。
また、最適化処理装置は、最適解に基づいて行われた作業の実績を追加の学習データとして用いることで、予測モデルの精度を向上することができる。
【0043】
変形例として、学習データの追加に伴って探索範囲を小さくし、学習データの分布に近づける(損失関数におけるαを小さくする)構成としてもよい。すなわち、初期は探索範囲と学習データの分布との差分を大きくすることで、学習データの分布の拡大を優先し、学習データの分布範囲が十分に大きくなった後は探索範囲を学習データの分布に近づけることで予測モデルを安定させることができる。
【0044】
なお、本発明は上述の実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、かかる構成の削除に限らず、構成の置き換えや追加も可能である。
【0045】
例えば、上述の実施例では、コンピュータが最適化処理プログラムを実行することで最適化処理装置10として動作する場合を例示して説明を行ったが、各種機能部をハードウェアで構成した最適化処理装置として実施することも可能である。
【符号の説明】
【0046】
10,60:最適化処理装置、11:CPU、12:メモリ、13:表示部、14:入力部、15:記憶部、21:予測モデル生成部、22:距離算定部、23:評価値予測部、24:探索部、31:学習データ、32:予測モデルデータ、50:予測モデル生成装置
図1
図2
図3
図4
図5
図6
図7
図8
図9