(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024072298
(43)【公開日】2024-05-28
(54)【発明の名称】在庫計画作成装置及び在庫計画作成方法
(51)【国際特許分類】
G06Q 10/20 20230101AFI20240521BHJP
【FI】
G06Q10/20
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2022182982
(22)【出願日】2022-11-16
(71)【出願人】
【識別番号】000006208
【氏名又は名称】三菱重工業株式会社
(74)【代理人】
【識別番号】110000785
【氏名又は名称】SSIP弁理士法人
(72)【発明者】
【氏名】森野 友真
(72)【発明者】
【氏名】森本 陽
(72)【発明者】
【氏名】古賀 祐一
(72)【発明者】
【氏名】笠原 智亮
(72)【発明者】
【氏名】竹ノ内 高子
(72)【発明者】
【氏名】東 祐太
(72)【発明者】
【氏名】井上 恭一
(72)【発明者】
【氏名】松浦 大輔
(72)【発明者】
【氏名】田中 潤治
【テーマコード(参考)】
5L049
【Fターム(参考)】
5L049CC15
(57)【要約】
【課題】親部品を構成する複数種類の子部品の充足率を考慮した最適な在庫計画に作成することができる在庫計画作成装置を提供する。
【解決手段】在庫計画作成装置であって、子部品の在庫量と充足率との関係を子部品の種類毎に示す充足率情報とを取得するデータ取得部と、子部品の在庫量と充足率との関係が充足率情報に基づいて規定されることを第1制約条件として定義し、複数種類の子部品の充足率に基づく親部品の充足率が目標充足率を下回ってはならないという制約条件を近似した不等式を第2制約条件として定義するように構成された制約条件定義部と、目的関数定義部と、部品構成情報及び充足率情報を用いて第1制約条件及び第2制約条件を満たすように目的関数を最適化する最適化計算を行うことによって、在庫計画を作成する在庫計画最適化部と、在庫計画を出力するように構成された出力部と、を備える。
【選択図】
図4
【特許請求の範囲】
【請求項1】
親部品を構成する複数種類の子部品について前記子部品の種類毎の在庫量を規定する在庫計画を作成するための在庫計画作成装置であって、
前記在庫計画の対象とする期間に前記子部品の不足が生じない確率を前記子部品の種類毎に示した値を前記子部品の充足率と定義すると、前記親部品を構成するために必要な前記子部品の種類及び数を示す部品構成情報と、前記子部品の前記在庫量と前記充足率との関係を前記子部品の種類毎に示す充足率情報とを取得するように構成されたデータ取得部と、
前記在庫計画の作成に用いる複数の制約条件を定義するように構成された制約条件定義部であって、前記子部品の種類毎の前記子部品の前記在庫量と前記充足率との関係が前記充足率情報に基づいて規定されることを第1制約条件として定義し、前記複数種類の前記子部品の前記充足率に基づく前記親部品の充足率が目標充足率を下回ってはならないという制約条件を近似した不等式を第2制約条件として定義するように構成された制約条件定義部と、
前記在庫計画の作成に用いる目的関数を定義するように構成された目的関数定義部と、
前記データ取得部によって取得した前記部品構成情報及び前記充足率情報を用いて、前記制約条件定義部で定義された前記第1制約条件及び前記第2制約条件を満たすように、前記目的関数定義部で定義された前記目的関数を最適化する最適化計算を行うことによって、前記在庫計画を作成するように構成された在庫計画最適化部と、
前記在庫計画最適化部によって作成された前記在庫計画を出力するように構成された出力部と、
を備える、在庫計画作成装置。
【請求項2】
前記制約条件定義部は、前記子部品の種類毎に規定された前記子部品の在庫量の上限値を前記子部品の在庫量が超えてはならないことを第3制約条件として定義するように構成され、
前記在庫計画最適化部は、前記制約条件定義部で定義された前記第1制約条件、前記第2制約条件及び前記第3制約条件を満たすように前記最適化計算を行うことによって、前記在庫計画を作成するように構成された、請求項1に記載の在庫計画作成装置。
【請求項3】
前記制約条件定義部は、前記データ取得部によって取得した前記充足率情報における前記子部品の前記在庫量と前記充足率との関係を示す非線形の各グラフを複数の区間に区切って前記区間毎に線形関数に近似することで、前記非線形の各グラフを区分線形関数に近似する機能を有し、
前記制約条件定義部は、前記子部品の種類毎の前記子部品の前記在庫量が上記区分線形関数に従って規定されることを前記第1制約条件として定義するように構成された、請求項1に記載の在庫計画作成装置。
【請求項4】
前記親部品を構成する前記子部品の種類の数をmとすると、前記不等式は、前記複数種類の前記子部品の前記充足率の相加平均が前記目標充足率のm乗根を下回ってはならないことを示す、請求項1に記載の在庫計画作成装置。
【請求項5】
前記目的関数は、前記親部品を構成する前記複数種類の子部品の在庫購入費の総額であり、
前記在庫計画最適化部は、前記在庫購入費の前記総額を最小化する最適化計算を行うことによって前記在庫計画を作成するように構成された、請求項1乃至4の何れか1項に記載の在庫計画作成装置。
【請求項6】
前記データ取得部は、前記目標充足率の下限値を更に取得するように構成され、
前記在庫計画最適化部は、前記複数種類の前記子部品の前記充足率の総乗が前記目標充足率の前記下限値を下回らず、且つ、前記目標充足率が所定の収束条件を満たすまで、二分探索を用いて前記目標充足率を変化させながら前記最適化計算を繰り返し実行するように構成された、請求項5に記載の在庫計画作成装置。
【請求項7】
前記データ取得部は、前記親部品を構成する前記複数種類の子部品の前記在庫購入費の総額の上限値を更に取得するように構成され、
前記在庫計画最適化部は、前記在庫購入費の総額の前記上限値を前記在庫購入費の総額が上回らず、且つ、前記目標充足率が所定の収束条件を満たすまで、二分探索を用いて前記目標充足率を変化させながら前記最適化計算を繰り返し実行するように構成された、請求項5に記載の在庫計画作成装置。
【請求項8】
親部品を構成する複数種類の子部品について前記子部品の種類毎の在庫量を規定する在庫計画を作成するための在庫計画作成方法であって、
前記在庫計画の対象とする期間に前記子部品の不足が生じない確率を前記子部品の種類毎に示した値を前記子部品の充足率と定義すると、前記親部品を構成するために必要な前記子部品の種類及び数を示す部品構成情報と、前記子部品の前記在庫量と前記充足率との関係を前記子部品の種類毎に示す充足率情報とを取得するように構成されたデータ取得ステップと、
前記在庫計画の作成に用いる複数の制約条件を定義するように構成された制約条件定義ステップであって、前記子部品の種類毎の前記子部品の前記在庫量と前記充足率との関係が前記充足率情報に基づいて規定されることを第1制約条件として定義し、前記複数種類の前記子部品の前記充足率に基づく前記親部品の充足率が目標充足率を下回ってはならないという制約条件を近似した不等式を第2制約条件として定義するように構成された制約条件定義ステップと、
前記在庫計画の作成に用いる目的関数を定義するように構成された目的関数定義ステップと、
前記データ取得ステップで取得した前記部品構成情報及び前記充足率情報を用いて、前記制約条件定義ステップで定義された前記第1制約条件及び前記第2制約条件を満たすように、前記目的関数定義ステップで定義された前記目的関数を最適化する最適化計算を行うことによって、前記在庫計画を作成するように構成された在庫計画最適化ステップと、
前記在庫計画最適化ステップによって作成された前記在庫計画を出力するように構成された出力ステップと、
を備える、在庫計画作成方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、在庫計画作成装置及び在庫計画作成方法に関する。
【背景技術】
【0002】
特許文献1には、プラント設備の在庫管理に関して、予備品の在庫購入費、在庫管理費、及び、予備品の在庫切れによる設備の停止又は能力低下に起因した金銭的損失に基づいて適切な在庫量を決定し、予備品の在庫切れによるプラント設備運営主体の金銭的損失及び予備品の調達に要するプラント保守費用を抑制することが記載されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、MRO(整備、修理及びオーバーホール)の対象となる製品において、親部品(アセンブリ)と、親部品を構成する複数種類の子部品とを含む場合があるが、特許文献1に記載の在庫量の決定方法では、予備品全体を考慮せずに予備品の種類毎に最適な在庫量を決めているに過ぎず、親部品を構成する複数種類の子部品の充足率(在庫計画の対象期間に故部品が欠品しない確率)を考慮した最適な在庫計画を作成することができない。
【0005】
上述の事情に鑑みて、本開示の少なくとも一実施形態は、親部品を構成する複数種類の子部品の充足率を考慮した最適な在庫計画に作成することができる在庫計画作成装置及び在庫計画作成方法を提供することを目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するため、本開示の少なくとも一実施形態に係る在庫計画作成装置は、
親部品を構成する複数種類の子部品について前記子部品の種類毎の在庫量を規定する在庫計画を作成するための在庫計画作成装置であって、
前記在庫計画の対象とする期間に前記子部品の不足が生じない確率を前記子部品の種類毎に示した値を前記子部品の充足率と定義すると、前記親部品を構成するために必要な前記子部品の種類及び数を示す部品構成情報と、前記子部品の前記在庫量と前記充足率との関係を前記子部品の種類毎に示す充足率情報とを取得するように構成されたデータ取得部と、
前記在庫計画の作成に用いる複数の制約条件を定義するように構成された制約条件定義部であって、前記子部品の種類毎の前記子部品の前記在庫量と前記充足率との関係が前記充足率情報に基づいて規定されることを第1制約条件として定義し、前記複数種類の前記子部品の前記充足率に基づく前記親部品の充足率が目標充足率を下回ってはならないという制約条件を近似した不等式を第2制約条件として定義するように構成された制約条件定義部と、
前記在庫計画の作成に用いる目的関数を定義するように構成された目的関数定義部と、
前記データ取得部によって取得した前記部品構成情報及び前記充足率情報を用いて、前記制約条件定義部で定義された前記第1制約条件及び前記第2制約条件を満たすように、前記目的関数定義部で定義された前記目的関数を最適化する最適化計算を行うことによって、前記在庫計画を作成するように構成された在庫計画最適化部と、
前記在庫計画最適化部によって作成された前記在庫計画を出力するように構成された出力部と、
を備える。
【0007】
上記目的を達成するため、本開示の少なくとも一実施形態に係る在庫計画作成方法は、
親部品を構成する複数種類の子部品について前記子部品の種類毎の在庫量を規定する在庫計画を作成するための在庫計画作成方法であって、
前記在庫計画の対象とする期間に前記子部品の不足が生じない確率を前記子部品の種類毎に示した値を前記子部品の充足率と定義すると、前記親部品を構成するために必要な前記子部品の種類及び数を示す部品構成情報と、前記子部品の前記在庫量と前記充足率との関係を前記子部品の種類毎に示す充足率情報とを取得するように構成されたデータ取得ステップと、
前記在庫計画の作成に用いる複数の制約条件を定義するように構成された制約条件定義ステップであって、前記子部品の種類毎の前記子部品の前記在庫量と前記充足率との関係が前記充足率情報に基づいて規定されることを第1制約条件として定義し、前記複数種類の前記子部品の前記充足率に基づく前記親部品の充足率が目標充足率を下回ってはならないという制約条件を近似した不等式を第2制約条件として定義するように構成された制約条件定義ステップと、
前記在庫計画の作成に用いる目的関数を定義するように構成された目的関数定義ステップと、
前記データ取得ステップで取得した前記部品構成情報及び前記充足率情報を用いて、前記制約条件定義ステップで定義された前記第1制約条件及び前記第2制約条件を満たすように、前記目的関数定義ステップで定義された前記目的関数を最適化する最適化計算を行うことによって、前記在庫計画を作成するように構成された在庫計画最適化ステップと、
前記在庫計画最適化ステップによって作成された前記在庫計画を出力するように構成された出力ステップと、
を備える。
【発明の効果】
【0008】
本開示の少なくとも一実施形態によれば、親部品を構成する複数種類の子部品の充足率を考慮した最適な在庫計画に作成することができる在庫計画作成装置及び在庫計画作成方法が提供される。
【図面の簡単な説明】
【0009】
【
図1】一実施形態に係る在庫計画作成装置100のハードウェア構成の一例を示すブロック図である。
【
図2】上記在庫計画作成装置100の機能的な構成の一例を示すブロック図である。
【
図4】充足率情報における子部品の在庫量と子部品の充足率との関係を示すグラフを区分線形関数に近似したグラフの一例を示す図である。
【
図5】在庫計画最適化部4による在庫計画の作成フローの一例を示す図である。
【
図6】二分探索を用いて目標充足率を更新する方法の一例を説明するための図である。
【
図7】在庫計画作成装置100の機能的な構成の他の一例を示すブロック図である。
【
図8】在庫計画最適化部4による在庫計画の作成フローの他の一例を示す図である。
【
図9】二分探索を用いて目標充足率を更新する方法の他の一例を説明するための図である
【発明を実施するための形態】
【0010】
以下、添付図面を参照して本開示の幾つかの実施形態について説明する。ただし、実施形態として記載されている又は図面に示されている構成部品の寸法、材質、形状、その相対的配置等は、発明の範囲をこれに限定する趣旨ではなく、単なる説明例にすぎない。
例えば、「ある方向に」、「ある方向に沿って」、「平行」、「直交」、「中心」、「同心」或いは「同軸」等の相対的或いは絶対的な配置を表す表現は、厳密にそのような配置を表すのみならず、公差、若しくは、同じ機能が得られる程度の角度や距離をもって相対的に変位している状態も表すものとする。
例えば、「同一」、「等しい」及び「均質」等の物事が等しい状態であることを表す表現は、厳密に等しい状態を表すのみならず、公差、若しくは、同じ機能が得られる程度の差が存在している状態も表すものとする。
例えば、四角形状や円筒形状等の形状を表す表現は、幾何学的に厳密な意味での四角形状や円筒形状等の形状を表すのみならず、同じ効果が得られる範囲で、凹凸部や面取り部等を含む形状も表すものとする。
一方、一の構成要素を「備える」、「具える」、「具備する」、「含む」、又は、「有する」という表現は、他の構成要素の存在を除外する排他的な表現ではない。
【0011】
図1は、一実施形態に係る在庫計画作成装置100のハードウェア構成の一例を示すブロック図である。
図2は、上記在庫計画作成装置100の機能的な構成の一例を示すブロック図である。在庫計画作成装置100は、後述するように、親部品(アセンブリ)を構成する複数種類の子部品について、子部品の種類毎の子部品の在庫量を規定する在庫計画(以下、単に「在庫計画」という。)を作成するように構成されている。在庫計画との対象となる親部品及び子部品の各々は、例えばMRO(整備、修理及びオーバーホール)の対象となる製品を構成する部品である。なお、以降の各実施形態において、「親部品を構成する複数種類の子部品」とは、親部品を構成する全ての種類の子部品を意味する。
【0012】
図1に示すように、在庫計画作成装置100は、例えばプロセッサ72、RAM(Random Access Memory)74、ROM(Read Only Memory)76、HDD (Hard Disk Drive)78、入力I/F80、及び出力I/F82を含み、これらがバス84を介して互いに接続されたコンピュータを用いて構成される。在庫計画作成装置100は、在庫計画作成装置100の各機能を実現するプログラムをコンピュータが実行することにより構成される。以下で説明する在庫計画作成装置100における各部の機能は、例えばROM76に保持されるプログラムをRAM74にロードしてプロセッサ72で実行するとともに、RAM74やROM76におけるデータの読み出し及び書き込みを行うことで実現される。在庫計画作成装置100を構成するハードウェアは、1つの場所に集約されていてもよいし、複数の場所に分散して設けられていてもよい。
【0013】
図2に示すように、在庫計画作成装置100は、データ取得部1、制約条件定義部2、目的関数定義部3、在庫計画最適化部4及び出力部5を備える。
【0014】
データ取得部1は、以下で説明する部品構成情報、充足率情報及び目標充足率の下限値を取得するように構成されている。
【0015】
部品構成情報は、親部品を構成するために必要な子部品の種類及び数を示す情報、すなわち、親部品を構成するために必要な子部品の数を子部品の種類毎に示す情報である。具体的には、例えば親部品Aが1個の子部品aと1個の子部品bとによって構成されていること等を示す情報である。ここで、Aは親部品の種類を示す識別情報であり、a及びbの各々は子部品の種類を示す識別情報である。
【0016】
充足率情報は、
図3に例示するように、親部品を構成する複数種類の子部品について、子部品の在庫量と子部品の充足率との関係を子部品の種類毎に示す情報である。ここで、子部品の充足率とは、在庫計画の対象とする期間に子部品の不足が生じない確率を子部品の種類毎に示した値であり、
図3に示す例では、親部品を構成する子部品a~fについて、子部品の在庫量と子部品の充足率との関係を示すグラフが子部品の種類毎に示されている。
【0017】
目標充足率は、親部品の目標充足率、すなわち、親部品の充足率の目標値を意味する。なお、親部品の充足率は、親部品を構成する複数種類の子部品の充足率を総乗することで算出される値であり、下記式(1)によって定義される。
ここで、Pは親部品の充足率であり、mは親部品を構成する子部品の種類の数であり、iは子部品の種類であり、p
iは子部品i(ただし、1≦i≦mを満たす。)の充足率である。
【0018】
制約条件定義部2は、在庫計画の作成に用いる複数の制約条件を定義するように構成されている。ここでは、制約条件定義部2が定義する複数の制約条件は、以下で説明する第1制約条件、第2制約条件及び第3制約条件を含む。
【0019】
制約条件定義部2は、子部品の種類毎の子部品の在庫量と子部品の充足率との関係がデータ取得部によって取得した充足率情報に基づいて規定されることを第1制約条件として定義する。制約条件定義部2は、第1制約条件を線形関数を用いて定義するために、データ取得部1によって取得した充足率情報における子部品の在庫量と子部品の充足率との関係を示す非線形の各グラフ(
図3参照)を
図4に例示するように複数の区間に区切って区間毎に線形関数に近似することで、該非線形の各グラフを区分線形関数に近似(整形)する機能を有する。そして、制約条件定義部2は、子部品の種類毎の子部品の在庫量が上記区分線形関数に従って規定されることを第1制約条件として定義する。
【0020】
また、制約条件定義部2は、下記式(2)を近似した不等式である下記式(3)を第2制約条件として定義するように構成される。
なお、上記式(2)及び(3)において、mは親部品を構成する子部品の種類の数であり、i(ただし、1≦i≦mを満たす。)は子部品の種類であり、p
iは子部品iの充足率であり、P
goalは親部品の目標充足率である。
上記式(2)は、親部品を構成する全ての種類の子部品の充足率の総乗によって算出される親部品の充足率が目標充足率を下回ってはならない、という制約条件を意味する。また、上記式(3)は、親部品を構成する全ての種類の子部品の充足率の相加平均が目標充足率のm乗根を下回ってはならない、という制約条件を意味する。
制約条件定義部2は、相加平均が相乗平均以上となることを利用して、上記式(2)の近似式である上記式(3)を第2制約条件として定義する。
【0021】
また、制約条件定義部2は、第3制約条件として、親部品を構成する複数種類の子部品について、子部品の種類毎に規定された子部品の在庫量の上限値を子部品の在庫量が上回ってはならないことを規定している。すなわち、制約条件定義部2は、子部品の種類毎に規定された子部品の在庫量をxi、子部品の種類毎に規定された子部品の在庫量の上限値をuiとすると、xi≦uiを満たすことを第3制約条件として規定している。
【0022】
目的関数定義部3は、在庫計画の作成に用いる目的関数を定義するように構成される。ここでは、目的関数定義部3は、在庫計画最適化部4で作成する在庫計画における親部品を構成する複数種類の子部品の在庫購入費の総額を目的関数として定義する。ここで、親部品を構成する複数種類の子部品の在庫購入費の総額をC、親部品を構成する子部品の種類の数をm、子部品の種類をi(ただし、1≦i≦mを満たす。)、子部品iの単価をc
iとすると、親部品を構成する複数種類の子部品の在庫購入費の総額Cは、下記式(4)によって算出される。
【0023】
在庫計画最適化部4は、データ取得部1によって取得した部品構成情報、充足率情報及び目標充足率の下限値を用いて、制約条件定義部2で定義された上記第1制約条件、第2制約条件及び第3制約条件を満たすように、目的関数定義部3で目的関数として定義された在庫購入費の総額を最小化する最適化計算を行うことによって、在庫計画を作成する。在庫計画最適化部4によって作成される在庫計画が規定する情報は、親部品を構成する複数種類の子部品について、子部品の充足率、子部品の在庫量及び子部品の在庫購入費を子部品の種類毎に含むとともに、在庫購入費の総額及び親部品の充足率を含む。在庫計画最適化部4は、数理計画法の1つである混合整数線形計画法を用いて最適化問題を解く最適化ソルバーにより構成されている。
【0024】
出力部5は、在庫計画最適化部4によって作成された在庫計画を在庫計画作成装置100の外部に出力するように構成されている。
【0025】
また、在庫計画最適化部4では、上記最適化計算を行う際に上記式(2)を近似した上記式(3)を第2制約条件として用いているため、上記在庫計画最適化部4は、元の上記式(2)を確実に満たすために、以下で説明するように、二分探索(昇順又は降順に整列済みのデータ群の探索範囲を半分に絞り込む操作を繰り返して高速に解の探索を行う手法)を用いて親部品の目標充足率を更新する機能を備えている。在庫計画最適化部4は、以下で説明するように、親部品を構成する全ての種類の子部品の充足率の総乗が、データ取得部1によって取得した目標充足率の下限値を下回らず、且つ、目標充足率が所定の収束条件を満たすまで、二分探索を用いて目標充足率を変化させながら上記最適化計算を繰り返し実行する。
【0026】
図5は、在庫計画最適化部4による上記二分探索の機能を説明するためのフローチャートである。
図5に示すように、S101において、在庫計画最適化部4は、データ取得部1によって取得した部品構成情報、充足率情報及び目標充足率の下限値を用いて、制約条件定義部2で定義された上記第1制約条件、第2制約条件及び第3制約条件を満たすように、目的関数定義部3で目的関数として定義された在庫購入費の総額を混合整数線形計画法を用いて最小化する最適化計算を行うことによって、在庫計画を作成する。S101の最適化計算では、第2制約条件としての上記式(3)に用いられる目標充足率は、データ取得部1によって取得した目標充足率の下限値に設定される。在庫計画最適化部4によって作成される在庫計画が規定する情報は上述の通りである。
【0027】
S102において、在庫計画最適化部4は、S101で作成された在庫計画が上記式(2)を満たすか否かを判定する。S102において、S101で作成された在庫計画が上記式(2)を満たすと判定された場合には、S109において、S101で作成された在庫計画を出力部5が出力する。
【0028】
S102において、S101で作成された在庫計画が上記式(2)を満たさないと判定された場合には、S103において、第2制約条件としての上記式(3)で用いられる目標充足率を増加させる。例えば
図6に示すように、S101の最適化計算に用いられたもとの目標充足率(データ取得部1によって取得された目標充足率の下限値)が80%である場合には、S103では、もとの目標充足率である80%を次の充足率の探索範囲の最小値に設定するとともに、次の充足率の探索範囲の最大値を100%に設定し、上記最小値である80%と上記最大値である100%との中間値(上記最小値と最大値との和の半分の値)である90%を次の目標充足率に設定する。なお、以下では、「もとの目標充足率」とは、S101の最適化計算に用いられた目標充足率すなわち目標充足率の初期値をいうこととし、データ取得部1によって取得された目標充足率の下限値を意味する。
【0029】
S104では、在庫計画最適化部4は、S103で設定した目標充足率(
図6に示す例では90%)を第2制約条件としての上記式(3)の目標充足率に用いて、S101と同様に上記最適化問題を解くことによって、在庫計画を作成する。
【0030】
S105では、在庫計画最適化部4は、S104で作成された在庫計画が上記式(2)を満たすか否かを判定する。なお、上記(2)における目標充足率は、データ取得部1によって取得された目標充足率の下限値すなわちもとの目標充足率であり、
図6に示す例では80%である。
【0031】
S105において、S104で作成された在庫計画が上記式(2)を満たさないと判定された場合には、S106において、S104の最適化計算で用いた目標充足率(
図6に示す例では90%)を次の充足率の探索範囲の最小値に設定するとともに、次の充足率の探索範囲の最大値(
図6に示す例では100%)を維持し、上記最小値と上記最大値との中間値(
図6に示す例では上記最小値と最大値との和の半分の値である95%)を次の目標充足率に設定し、S104に戻って再び最適化計算を行う。
【0032】
S105において、S104で作成された在庫計画が上記式(2)を満たすと判定された場合には、S107において、S104の最適化計算で用いた目標充足率(
図6に示す例では90%)を次の充足率の探索範囲の最大値に設定するとともに、次の充足率の探索範囲の最小値(
図6に示す例では80%)を維持し、上記最小値と上記最大値との中間値(
図6に示す例では上記最小値と最大値との和の半分の値である85%)を次の目標充足率を設定する。
【0033】
S108では、目標充足率が所定の収束条件を満たしたか否か、すなわち、S104の最適化計算で用いた目標充足率とS107で設定した次の目標充足率との差分の絶対値が予め設定された閾値以下であるか否かを判定する。S108において、S104の最適化計算で用いた目標充足率とS107で設定した次の目標充足率との差分の絶対値が予め設定された閾値以下ではないと判定した場合(目標充足率が所定の収束条件を満たしていないと判定した場合)には、S104に戻って、S107で設定した次の目標充足率を第2制約条件としての上記式(3)に用いて再び最適化計算を行う。
【0034】
S108において、S104の最適化計算で用いた目標充足率とS107で設定した次の目標充足率との差分の絶対値が予め設定された閾値以下であると判定した場合(目標充足率が所定の収束条件を満たしていると判定した場合)には、目的関数である在庫購入費の総額が最小化されたとみなせるため、S109において、S104で作成された在庫計画を出力部5が上記最適化計算の最適解として出力する。
【0035】
上記在庫計画作成装置100によれば、上記複数種類の子部品の充足率に基づく親部品の充足率を考慮して、第1制約条件、第2制約条件及び第3制約条件を満たすように、考えられる全ての在庫計画(子部品の種類毎の在庫量の全ての組み合わせ)の中から在庫購入費の総額を最小化した最適な在庫計画を作成して出力することができる。
【0036】
また、区分線形関数を用いて上記第1制約条件を規定し、親部品を構成する複数種類の子部品の充足率の相加平均を用いた上記式(3)によって上記第2制約条件を規定することにより、数理計画法の一種である混合整数線形計画法を用いて厳密解に近い最適解としての在庫計画を作成して出力することができる。
【0037】
また、在庫計画最適化部4は、データ取得部1によって取得した目標充足率の下限値を複数種類の子部品の充足率の総乗によって規定される親部品の充足率が下回らず、且つ、目標充足率が所定の収束条件を満たすまで、二分探索を用いて目標充足率を変化させながら最適化計算を繰り返し実行する。このため、上記式(2)を厳密に満たすように、考えられる全ての在庫計画(子部品の種類毎の在庫量の全ての組み合わせ)の中から、親部品を構成する複数種類の子部品の在庫購入費の総額を最小化した在庫計画を作成して出力することができる。
【0038】
図7は、在庫計画作成装置100の機能的な構成の他の一例を示すブロック図である。
図7に示す構成では、データ取得部1は、部品構成情報、充足率情報及び在庫購入費の総額の上限値を取得するように構成されている。部品構成情報及び充足率情報は
図2に示した実施形態で説明した部品構成情報及び充足率情報と同一であるため説明を省略する。また、
図7に示す構成では、制約条件定義部2、目的関数定義部3及び出力部5は、それぞれ、
図2に示した実施形態で説明した制約条件定義部2、目的関数定義部3及び出力部5と同一であるため説明を省略する。
【0039】
在庫計画最適化部4は、データ取得部1によって取得した部品構成情報、充足率情報を用いて、制約条件定義部2で定義された上記第1制約条件、第2制約条件及び第3制約条件を満たすように、目的関数定義部3で目的関数として定義された在庫購入費の総額を最小化する最適化計算を行うことによって、在庫計画を作成する。在庫計画最適化部4によって作成される在庫計画が規定する情報は、親部品を構成する複数種類の子部品について、子部品の充足率、子部品の在庫量及び子部品の在庫購入費を子部品の種類毎に含むとともに、在庫購入費の総額及び親部品の充足率を含む。在庫計画最適化部4は、数理計画法の1つである混合整数線形計画法を用いて最適化問題を解く最適化ソルバーにより構成されている。
【0040】
在庫計画最適化部4は、以下で説明するように、二分探索を用いて目標充足率を更新する機能を備えており、データ取得部1によって取得した在庫購入費の総額の上限値を在庫購入費の総額が上回らず、且つ、目標充足率が所定の収束条件を満たすまで、二分探索を用いて目標充足率を変化させながら上記最適化計算を繰り返し実行する。
【0041】
図8は、在庫計画最適化部4による在庫計画の作成フローを示す図である。
図8及び
図9に示すように、S201において、在庫計画最適化部4は、充足率の探索範囲の最小値を0%に設定するとともに充足率の探索範囲の最大値を100%に設定し、上記最小値である0%と上記最大値である100%との中間値(上記最小値と最大値との和の半分の値)である50%を目標充足率の初期値として設定する。
【0042】
S202において、在庫計画最適化部4は、データ取得部1によって取得した部品構成情報及び充足率情報を用いて、制約条件定義部2で定義された上記第1制約条件、第2制約条件及び第3制約条件を満たすように、目的関数定義部3で目的関数として定義された在庫購入費の総額を混合整数線形計画法を用いて最小化する最適化計算を行うことによって、在庫計画を作成する。在庫計画最適化部4によって作成される在庫計画が規定する情報は
図2を用いて説明した実施形態と同一であるため説明を省略する。
【0043】
S203において、在庫計画最適化部4は、S202で作成した在庫計画における在庫購入費の総額がデータ取得部1によって取得した在庫購入費の総額の上限値を上回っていないかを判定する。
【0044】
S203において、S202で作成した在庫計画における在庫購入費の総額がデータ取得部1によって取得した在庫購入費の総額の上限値を上回っていると判定した場合には、S204において、S202の最適化計算で用いた目標充足率(
図9に示す例では50%)を次の充足率の探索範囲の最大値に設定するとともに、次の充足率の探索範囲の最小値(
図9に示す例では0%)を維持し、上記最小値と上記最大値との中間値(
図9に示す例では上記最小値と最大値との和の半分の値である25%)に次の目標充足率を設定する。
【0045】
S203において、S202で作成した在庫計画における在庫購入費の総額がデータ取得部1によって取得した在庫購入費の総額の上限値を上回っていないと判定した場合には、S205において、S202の最適化計算で用いた目標充足率(
図9に示す例では50%)を次の目標充足率の探索範囲の最小値に設定するとともに、次の目標充足率の探索範囲の最大値(
図9に示す例では100%)を維持し、上記最小値と上記最大値との中間値(
図9に示す例では上記最小値と最大値との和の半分の値である75%)に次の目標充足率を設定する。
【0046】
S206において、目標充足率が所定の収束条件を満たしたか否か、すなわち、S202の最適化計算で用いた目標充足率とS205で設定した次の目標充足率との差分の絶対値が予め設定された閾値以下であるか否かを判定する。S206において、S202の最適化計算で用いた目標充足率とS205で設定した次の目標充足率との差分の絶対値が予め設定された閾値以下ではないと判定した場合(目標充足率が所定の収束条件を満たしていないと判定した場合)には、S202に戻って、S205で設定した次の目標充足率を第2制約条件に適用して再び最適化計算を行う。
【0047】
S206において、S202の最適化計算で用いた目標充足率とS205で設定した次の目標充足率との差分の絶対値が予め設定された閾値以下であると判定した場合(目標充足率が所定の収束条件を満たしていると判定した場合)には、親部品の充足率が最大化されたとみなせるため、S207において、S202で作成された在庫計画を出力部5が上記最適化計算の最適解として出力する。
【0048】
図7及び
図8を用いて説明した在庫計画作成装置100によれば、上記複数種類の子部品の充足率に基づく親部品の充足率を考慮して、第1制約条件、第2制約条件及び第3制約条件を満たすように、考えられる全ての在庫計画(子部品の種類毎の在庫量の全ての組み合わせ)の中から在庫購入費の総額を最小化した最適な在庫計画を作成して出力することができる。
【0049】
また、区分線形関数を用いて上記第1制約条件を規定し、親部品を構成する複数種類の子部品の充足率の相加平均を用いた上記式(3)によって上記第2制約条件を規定することにより、数理計画法の一種である混合整数線形計画法を用いて厳密解に近い最適解としての在庫計画を作成して出力することができる。
【0050】
また、在庫計画最適化部4は、データ取得部1によって取得した在庫購入費の総額の上限値を在庫購入費の総額が上回らず、且つ、目標充足率が所定の収束条件を満たすまで、二分探索を用いて目標充足率を変化させながら最適化計算を繰り返し実行する。このため、在庫購入費の総額の前記上限値を前記在庫購入費の総額が上回らないように、考えられる全ての在庫計画(子部品の種類毎の在庫量の全ての組み合わせ)の中から、親部品の充足率を最大化した在庫計画を作成して出力することができる。
【0051】
本開示は上述した実施形態に限定されることはなく、上述した実施形態に変形を加えた形態や、これらの形態を適宜組み合わせた形態も含む。
【0052】
例えば、データ取得部1は、子部品の種類毎の子部品の需要を示す需要情報を取得して、需要情報から上述した充足率情報を算出することで充足率情報を取得してもよい。
【0053】
上記各実施形態に記載の内容は、例えば以下のように把握される。
【0054】
[1]本開示の少なくとも一実施形態に係る在庫計画作成装置(例えば上述の在庫計画作成装置100)は、
親部品を構成する複数種類の子部品について前記子部品の種類毎の在庫量を規定する在庫計画を作成するための在庫計画作成装置であって、
前記在庫計画の対象とする期間に前記子部品の不足が生じない確率を前記子部品の種類毎に示した値を前記子部品の充足率と定義すると、前記親部品を構成するために必要な前記子部品の種類及び数を示す部品構成情報と、前記子部品の前記在庫量と前記充足率との関係を前記子部品の種類毎に示す充足率情報とを取得するように構成されたデータ取得部(例えば上述のデータ取得部1)と、
前記在庫計画の作成に用いる複数の制約条件を定義するように構成された制約条件定義部であって、前記子部品の種類毎の前記子部品の前記在庫量と前記充足率との関係が前記充足率情報に基づいて規定されることを第1制約条件として定義し、前記複数種類の前記子部品の前記充足率に基づく前記親部品の充足率が目標充足率を下回ってはならないという制約条件を近似した不等式(例えば上述の式(3))を第2制約条件として定義するように構成された制約条件定義部(例えば上述の制約条件定義部2)と、
前記在庫計画の作成に用いる目的関数(例えば上述の在庫購入費の総額)を定義するように構成された目的関数定義部(例えば上述の目的関数定義部3)と、
前記データ取得部によって取得した前記部品構成情報及び前記充足率情報を用いて、前記制約条件定義部で定義された前記第1制約条件及び前記第2制約条件を満たすように、前記目的関数定義部で定義された前記目的関数を最適化する最適化計算を行うことによって、前記在庫計画を作成するように構成された在庫計画最適化部(例えば上述の在庫計画最適化部4)と、
前記在庫計画最適化部によって作成された前記在庫計画を出力するように構成された出力部(例えば上述の出力部5)と、
を備える。
【0055】
上記[1]に記載の在庫計画作成装置によれば、第1制約条件及び第2制約条件に従って、上記複数種類の子部品の充足率に基づく親部品の充足率を考慮して、考えられる全ての在庫計画(子部品の種類毎の在庫量の全ての組み合わせ)の中から目的関数を最適化した最適な在庫計画を作成して出力することができる。
【0056】
[2]幾つかの実施形態では、上記[1]に記載の在庫計画作成装置において、
前記制約条件定義部は、前記子部品の種類毎に規定された前記子部品の在庫量の上限値を前記子部品の在庫量が超えてはならないことを第3制約条件として定義するように構成され、
前記在庫計画最適化部は、前記制約条件定義部で定義された前記第1制約条件、前記第2制約条件及び前記第3制約条件を満たすように前記最適化計算を行うことによって、前記在庫計画を作成するように構成される。
【0057】
上記[2]に記載の在庫計画作成装置によれば、子部品の種類毎に規定された子部品の在庫量の上限値を子部品の在庫量が超えないように在庫計画を作成することができる。
【0058】
[3]幾つかの実施形態では、上記[1]又は[2]に記載の在庫計画作成装置において、
前記制約条件定義部は、前記データ取得部によって取得した前記充足率情報における前記子部品の前記在庫量と前記充足率との関係を示す非線形の各グラフ(例えば上述の
図3参照)を複数の区間に区切って前記区間毎に線形関数に近似することで、前記非線形の各グラフを区分線形関数(例えば上述の
図4参照)に近似する機能を有し、
前記制約条件定義部は、前記子部品の種類毎の前記子部品の前記在庫量が上記区分線形関数に従って規定されることを前記第1制約条件として定義するように構成される。
【0059】
上記[3]に記載の在庫計画作成装置によれば、区分線形関数を用いて上記第1制約条件を規定することにより、数理計画法の一種である混合整数線形計画法を用いて厳密解に近い最適解としての在庫計画を作成して出力することができる。
【0060】
[4]幾つかの実施形態では、上記[1]乃至[3]の何れかに記載の在庫計画作成装置において、
前記親部品を構成する前記子部品の種類の数をmとすると、前記不等式は、前記親部品を構成する前記複数種類の前記子部品の前記充足率の相加平均が前記目標充足率のm乗根を下回ってはならないことを示す。
【0061】
上記[4]に記載の在庫計画作成装置によれば、親部品を構成する複数種類の子部品の充足率の相加平均を用いて上記第2制約条件を規定することにより、数理計画法の一種である混合整数線形計画法を用いて厳密解に近い最適解としての在庫計画を作成して出力することができる。
【0062】
[5]幾つかの実施形態では、上記[1]乃至[4]の何れかに記載の在庫計画作成装置において、
前記目的関数は、前記親部品を構成する前記複数種類の子部品の在庫購入費の総額であり、
前記在庫計画最適化部は、前記在庫購入費の前記総額を最小化する最適化計算を行うことによって前記在庫計画を作成するように構成される。
【0063】
上記[5]に記載の在庫計画作成装置によれば、上記複数種類の子部品の充足率に基づく親部品の充足率を考慮して、考えられる全ての在庫計画(子部品の種類毎の在庫量の全ての組み合わせ)の中から、親部品を構成する複数種類の子部品の在庫購入費の総額を最小化した在庫計画を作成して出力することができる。したがって、出力された在庫計画に基づいて親部品を構成する複数種類の子部品を購入することにより、在庫購入費用の総額を最小化することができる。
【0064】
[6]幾つかの実施形態では、上記[5]に記載の在庫計画作成装置において、
前記データ取得部は、前記目標充足率の下限値を更に取得するように構成され、
前記在庫計画最適化部は、前記複数種類の前記子部品の前記充足率の総乗が前記目標充足率の前記下限値を下回らず、且つ、前記目標充足率が所定の収束条件を満たすまで、二分探索を用いて前記目標充足率を変化させながら前記最適化計算を繰り返し実行するように構成される。
【0065】
上記[6]に記載の在庫計画作成装置によれば、データ取得部によって取得した目標充足率を複数種類の子部品の充足率の総乗によって規定される親部品の充足率が下回らないように、考えられる全ての在庫計画(子部品の種類毎の在庫量の全ての組み合わせ)の中から、親部品を構成する複数種類の子部品の在庫購入費の総額を最小化した在庫計画を作成して出力することができる。
【0066】
[7]幾つかの実施形態では、上記[5]の何れかに記載の在庫計画作成装置において、
前記データ取得部は、前記親部品を構成する前記複数種類の子部品の前記在庫購入費の総額の上限値を更に取得するように構成され、
前記在庫計画最適化部は、前記在庫購入費の総額の前記上限値を前記在庫購入費の総額が上回らず、且つ、前記目標充足率が所定の収束条件を満たすまで、二分探索を用いて前記目標充足率を変化させながら前記最適化計算を繰り返し実行するように構成される。
【0067】
上記[7]に記載の在庫計画作成装置によれば、在庫購入費の総額の前記上限値を前記在庫購入費の総額が上回らないように、考えられる全ての在庫計画(子部品の種類毎の在庫量の全ての組み合わせ)の中から、親部品の充足率を最大化した在庫計画を作成して出力することができる。
【0068】
[8]本開示の少なくとも一実施形態に係る在庫計画作成方法は、
親部品を構成する複数種類の子部品について前記子部品の種類毎の在庫量を規定する在庫計画を作成するための在庫計画作成方法であって、
前記在庫計画の対象とする期間に前記子部品の不足が生じない確率を前記子部品の種類毎に示した値を前記子部品の充足率と定義すると、前記親部品を構成するために必要な前記子部品の種類及び数を示す部品構成情報と、前記子部品の前記在庫量と前記充足率との関係を前記子部品の種類毎に示す充足率情報とを取得するように構成されたデータ取得ステップと、
前記在庫計画の作成に用いる複数の制約条件を定義するように構成された制約条件定義ステップであって、前記子部品の種類毎の前記子部品の前記在庫量と前記充足率との関係が前記充足率情報に基づいて規定されることを第1制約条件として定義し、前記複数種類の前記子部品の前記充足率に基づく前記親部品の充足率が目標充足率を下回ってはならないという制約条件を近似した不等式(例えば上述の式(3))を第2制約条件として定義するように構成された制約条件定義ステップと、
前記在庫計画の作成に用いる目的関数(例えば上述の在庫購入費の総額)を定義するように構成された目的関数定義ステップと、
前記データ取得ステップで取得した前記部品構成情報及び前記充足率情報を用いて、前記制約条件定義ステップで定義された前記第1制約条件及び前記第2制約条件を満たすように、前記目的関数定義ステップで定義された前記目的関数を最適化する最適化計算を行うことによって、前記在庫計画を作成するように構成された在庫計画最適化ステップと、
前記在庫計画最適化ステップによって作成された前記在庫計画を出力するように構成された出力ステップと、
を備える。
【0069】
上記[8]に記載の在庫計画作成装置によれば、第1制約条件及び第2制約条件に従って、上記複数種類の子部品の充足率に基づく親部品の充足率を考慮して、考えられる全ての在庫計画(子部品の種類毎の在庫量の全ての組み合わせ)の中から、目的関数を最適化した最適な在庫計画を作成して出力することができる。
【符号の説明】
【0070】
1 データ取得部
2 制約条件定義部
3 目的関数定義部
4 在庫計画最適化部
5 出力部
72 プロセッサ
74 RAM
76 ROM
78 HDD
80 入力I/F
82 出力I/F
84 バス
100 在庫計画作成装置