説明

部品発注量決定装置および部品発注量決定プログラム

【課題】
製品毎の品切れ率が許容する品切れ率を超えることのない部品毎の発注量を算出する。
【解決手段】
部品発注量決定装置は、製品毎の許容する品切れ率等の入力を受け付ける入力部と、製品毎の許容する品切れ率を記録しておく製品毎情報記憶部と、製品毎の構成部品と員数を記憶しておく部品構成情報記憶部と、製品毎に需要量の分布を記憶しておく製品毎需要量記憶部と、部品毎の発注量を記憶しておく部品毎発注情報記憶部と、計算期間分、製品毎の需要量の分布から仮想的に需要量を算出し、算出した需要量に員数を乗じて構成部品の必要量を算出し、部品毎の発注量分布から発注量を算出し、算出した発注量と必要量の差から製品毎の品切れ率を算出し、製品毎の品切れ率が許容する品切れ率を超えている場合には部品毎の許容品切れ率を変更することで製品毎の品切れ率が許容する品切れ率を超えることのない部品毎の品切れ率を算出し、発注量を決定する部品毎発注情報算出部と、部品毎の発注量を表示する表示部と、を有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、見込生産における部品の発注業務において、製品の需要変動により生じる製品品切れ率が許容する品切れ率を超えず、かつ、ユーザが指定した売上・利益・部品発注金額等の経営指標の値を最良とする部品発注量を算出する部品発注量決定装置、および部品発注量決定プログラムに関する。
【背景技術】
【0002】
あらかじめ需要を予測して部品の発注や製品の製造を行う見込み生産では、実際に製品を販売する時点で予測量を上回る需要が発生すると、製品は品切れとなる。一般に、製品の品切れによる販売機会損失を防止するため、需要予測量に安全在庫量を加算して製品の生産量を決定する方法が採られている。しかし、過剰に安全在庫量を見積もることで、製品が売れ残り、破棄する問題が起きている。このため、経営上許容される範囲で製品の品切れを許容しつつ、かつ、できる限り少ない安全在庫量を算出する方式が求められている。特許文献1では、許容する製品の品切れ率を満たす最小の製品安全在庫量を求める方法が記載されている。
【0003】
しかし、近年、製品種類の増加や部品の標準化により部品として安全在庫を保持する企業が増加している。安全在庫を部品で保持すれば、複数種類の製品で使用される部品については、使用される製品間の需要変動の打ち消し合いをあらかじめ予測することで、製品で保持する場合に必要とされる部品量よりも少ない部品量で許容する品切れ率を達成することができる。特許文献2には、使用される製品間の需要変動の打ち消し合いを利用し、許容する部品の品切れ率を満たす最小の部品安全在庫量を求める方法が記載されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2005−309770号公報
【特許文献2】特開2007−128225号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献2は部品の品切れ率が許容値を超えない最小の部品安全在庫量を求めている。しかし、企業では、損益分岐を判断する材料として、製品の品切れによる販売機会損失および製品の売れ残りによる廃棄リスクを用いる。すなわち、企業が制御すべき指標は部品の品切れ率ではなく、製品の品切れ率である。このため、製品の品切れ率が許容値を超えないように、部品の発注量を算出する必要がある。ところが、部品の品切れ率から製品の品切れ率を求めることは、下記の理由により困難である。
【0006】
製品は複数の部品から構成されており、その中で1種類でも部品が不足すると製品の品切れとなる。製品を生産する期間において部品が不足する期は、部品毎に異なっている。部品が不足する期は、部品の情報、例えば安全在庫量を求めるために使用する部品発注量分布の平均値や標準偏差、許容品切れ率等だけでなく、当該部品を使用する製品の情報、例えば需要量分布の平均値や標準偏差、許容品切れ率等にも影響される。このように部品が不足する期は様々な要因が関係し、その関係は明らかになっていないため、製品の許容品切れ率を決定して部品の品切れ率を算出することは、困難である。
【0007】
本発明は上記問題を鑑みてなされたもので、製品の品切れ率が許容値を超えない部品発注量を算出することを課題とする。なお、企業が経営上、勘案すべき指標(ここでは経営指標と呼ぶ)は、製品の品切れ率の他に利益、原価、売上、キャッシュフロー等がある。そこで、本発明では、製品の品切れ率が許容値を超えない範囲内で、ユーザが指定した経営指標を最良とする部品発注量を算出する。
【課題を解決するための手段】
【0008】
上記の課題を解決する部品発注量決定装置は、製品毎の品切れ率が許容品切れ率を超えない範囲で許容品切れ率に最も近づくように部品毎の発注量を算出する部品発注量決定装置であって、ユーザが入力した初期情報を受け付け、記憶部へ格納する入力部と、製品毎の許容品切れ率を記憶する第1の記憶部と、製品毎の構成部品と員数を記憶する第2の記憶部と、製品毎の需要量分布の平均値および標準偏差を記憶する第3の記憶部と、部品毎の発注量分布の平均値および標準偏差、並びに初期品切れ率を記憶する第4の記憶部と、 計算期間、計算対象品切れ率の最大値と変更間隔および標準正規分布表を記憶する第5の記憶部と、前記需要量分布の平均値および標準偏差より、製品毎に計算期毎の需要量を算出し、前記発注量分布の平均値および標準偏差、並びに初期品切れ率より、部品毎に初期発注量を算出し、算出した前記製品毎に計算期毎の需要量に構成部品の員数を乗じて、部品毎・計算期毎の必要量を算出し、部品毎・計算期毎に前記初期発注から前記必要量を差し引いて初期過不足量を算出して、全ての部品について初期品切れ率を算出し、製品毎に、該製品で使用する各部品の各計算期の前記初期過不足量に基づき、各製品の初期品切れ率を算出し、部品毎に計算対象品切れ率を段階的に設定して、その他の部品は前記初期品切れ率として、製品毎の品切れ率を算出して、前記製品毎の初期品切れ率との差し引きより、部品毎・計算対象品切れ率毎に製品品切れ率増減を算出し、前記製品毎の許容品切れ率と前記製品毎の品切れ率との第1の制約式、前記製品毎の品切れ率と前記製品毎の初期品切れ率と前記部品毎・計算対象品切れ率毎の製品品切れ率増減と品切れ率フラグとの第2の制約式、前記品切れ率フラグに関する第3の制約式、および各製品の許容品切れ率から品切れ率を引いた差分の総計を最小化する目的関数を作成し、前記目的関数に対して最適化計算を実行して部品毎の適正品切れ率を算出し、前記部品の発注量分布の平均値および標準偏差、並びに前記部品毎の適正品切れ率より、部品毎に発注量を算出する部品毎発注情報算出部と、前記部品毎の発注量を表示する表示部とを有する。
【0009】
また、上記の課題を解決する部品発注量決定プログラムは、コンピュータに、製品毎の品切れ率が許容品切れ率を超えない範囲で許容品切れ率に最も近づくように部品毎の発注量を算出する機能を実現させるための部品発注量決定プログラムであって、入力部が、ユーザが入力した初期情報として、製品毎の許容品切れ率、製品毎の構成部品と員数、製品毎の需要量分布の平均値および標準偏差、部品毎の発注量分布の平均値および標準偏差、初期品切れ率、計算期間、計算対象品切れ率の最大値と変更間隔、および標準正規分布表を受付けて、記憶部へ格納し、演算部が、前記需要量分布の平均値および標準偏差より、製品毎に計算期毎の需要量を算出し、前記発注量分布の平均値および標準偏差、並びに初期品切れ率より、部品毎に初期発注量を算出し、算出した前記製品毎に計算期毎の需要量に構成部品の員数を乗じて、部品毎・計算期毎の必要量を算出し、部品毎・計算期毎に前記初期発注から前記必要量を差し引いて初期過不足量を算出して、全ての部品について初期品切れ率を算出し、製品毎に、該製品で使用する各部品の各計算期の前記初期過不足量に基づき、各製品の初期品切れ率を算出し、部品毎に計算対象品切れ率を段階的に設定して、その他の部品は前記初期品切れ率として、製品毎の品切れ率を算出して、前記製品毎の初期品切れ率との差し引きより、部品毎・計算対象品切れ率毎に製品品切れ率増減を算出し、前記製品毎の許容品切れ率と前記製品毎の品切れ率との第1の制約式、前記製品毎の品切れ率と前記製品毎の初期品切れ率と前記部品毎・計算対象品切れ率毎の製品品切れ率増減と品切れ率フラグとの第2の制約式、前記品切れ率フラグに関する第3の制約式、および各製品の許容品切れ率から品切れ率を引いた差分の総計を最小化する目的関数を作成し、前記目的関数に対して最適化計算を実行して部品毎の適正品切れ率を算出し、前記部品の発注量分布の平均値および標準偏差、並びに前記部品毎の適正品切れ率より、部品毎に発注量を算出し、表示部が前記部品毎の発注量を表示する各手順をコンピュータに実行させる。
【発明の効果】
【0010】
本発明によれば、製品の品切れ率が許容値を超えない部品の発注量を算出することで、製品の品切れによる販売機会損失および製品の売れ残りによる部品の死蔵在庫化のリスクを低減し、かつ、ユーザが指定した経営指標の値を改善することができる。
【図面の簡単な説明】
【0011】
【図1】本発明の第一の実施形態における部品発注量決定装置100の機能構成を示すブロック図である。
【図2】部品発注量決定装置100のハードウェア構成例を示すブロック図である。
【図3】製品の部品構成の例を示す図である。
【図4】製品の需要量分布および許容品切れ率を示す図である。
【図5】部品の発注量分布および初期品切れ率を示す図である。
【図6】計算期間、計算対象品切れ率の最大値および変更間隔、標準正規分布表を示す図である。
【図7】表示部151で表示される部品発注量決定装置の起動画面例を示す図である。
【図8】第一の実施形態における部品発注量決定処理の流れを示すフロー図である。
【図9】入力部150で受け付けるテキストファイルの例を示す図である。
【図10】入力部150で受け付けるテキストファイルの例を示す図である。
【図11】製品毎に計算期毎の需要量を算出する処理の流れを示すフロー図である。
【図12】製品Aの需要量算出処理で抽出または算出する情報を示す図である。
【図13】部品の初期発注量算出処理の流れを示すフロー図である。
【図14】部品pの初期発注量算出処理で抽出または算出する情報を示す図である。
【図15】部品毎に計算期毎の必要量を算出する処理の流れを示すフロー図である。
【図16】部品pの計算期毎の必要量算出処理で抽出または算出する情報を示す図である。
【図17】部品毎の初期品切れ率算出処理の流れを示すフロー図である。
【図18】部品pの初期過不足量情報を示す図である。
【図19】製品毎の初期品切れ率算出処理の流れを示すフロー図である。
【図20】製品Aの初期品切れ率算出処理で抽出または算出する情報を示す図である。
【図21】部品毎に各計算対象品切れ率の製品品切れ率を算出する処理の流れを示すフロー図である。
【図22】部品毎に各計算対象品切れ率の製品品切れ率を算出する処理で抽出する情報を示す図である。
【図23】部品毎に各計算対象品切れ率の製品品切れ率を算出する処理で算出する情報を示す図である。
【図24】適正品切れ率算出処理で使用する集合を示す図である。
【図25】適正品切れ率算出処理で使用する定数を示す図である。
【図26】適正品切れ率算出処理の流れを示すフロー図である。
【図27】第一の実施形態において適正品切れ率算出処理により算出された部品および製品の品切れ率を示す図である。
【図28】第一の実施形態において部品発注量算出処理により算出された部品の発注量を示す図である。
【図29】表示部151で表示される部品発注量の例を示す図である。
【図30】本発明の第二の実施形態における部品発注量決定装置1000の機能構成を示すブロック図である。
【図31】製品の売価および製造費用を示す図である。
【図32】部品の購入費用を示す図である。
【図33】表示部155で表示される部品発注量決定装置の起動画面例を示す図である。
【図34】第二の実施形態における部品発注量決定処理の流れを示すフロー図である。
【図35】入力部150にて情報を読み込む処理の流れを示すフロー図である。
【図36】入力部150で受け付けるテキストファイルの例を示す図である。
【図37】第二の実施形態において適正品切れ率算出処理により算出された部品および製品の品切れ率を示す図である。
【図38】第一の実施形態において適正品切れ率算出処理により算出された部品発注量と、その発注金額を示す図である。
【図39】表示部155で表示される部品発注量および発注金額、製品品切れ率、経営指標の値の例を示す図である。
【発明を実施するための形態】
【0012】
本発明の実施形態について、以下、図面を参照して説明する。
【実施例1】
【0013】
本発明の第一の実施形態では、ユーザによる経営指標の入力を省略し、製品毎の品切れ率が最も許容する品切れ率に近づく部品発注量を算出する。
【0014】
図1は、本発明の一実施形態に係る部品発注量決定装置100の機能構成を示すブロック図である。本図に示すように、部品発注量決定装置100は、製品毎情報記憶部110、部品構成情報記憶部111、製品毎需要量分布記憶部112、部品毎情報記憶部113、システム情報記憶部114、部品毎発注情報算出部130、部品毎発注情報記憶部140、入力部150、表示部151を有する。
【0015】
入力部150は、製品毎の許容品切れ率、製品毎の売価および製造費用、製品毎の構成部品と員数、製品毎の需要量分布情報、部品毎の発注量分布情報、部品毎の初期品切れ率、部品毎の購入費用、計算期間、計算対象品切れ率の最大値と変更間隔、確率分布表、を受け付ける処理を行う。ここで、本実施例では製品毎の需要量分布および部品毎の発注量分布は正規分布に従うと仮定する。製品毎の需要量分布情報として、製品毎の需要量分布の平均値および標準偏差、部品毎の発注量分布情報として、部品毎の発注量分布の平均値および標準偏差、確率分布表として標準正規分布表を受け付ける。
【0016】
入力部150は、受け付けた製品毎の許容品切れ率、売価および製造費用を、製品毎情報記憶部110に格納する。受け付けた製品毎の構成部品と員数を、部品構成情報記憶部111に格納する。受け付けた製品毎の需要量分布の平均値および標準偏差を、製品毎需要量分布記憶部112に格納する。受け付けた部品毎の発注量分布の平均値および標準偏差、初期品切れ率、購入費用を、部品毎情報記憶部113に格納する。計算期間、計算対象品切れ率の最大値と変更間隔および標準正規分布表をシステム情報記憶部114に格納する。
【0017】
製品毎情報記憶部110には、入力部150により受け付けられた製品毎の許容品切れ率、売価および製造費用が格納される。
【0018】
部品構成情報記憶部111には、入力部150により受け付けられた製品毎の構成部品と員数が格納される。
【0019】
製品毎需要量分布記憶部112には、入力部150より受け付けられた製品毎の需要量分布の平均値および標準偏差が格納される。
【0020】
部品毎情報記憶部113には、入力部150より受け付けられた部品毎の発注量分布の平均値および標準偏差、初期品切れ率、購入費用が格納される。
【0021】
システム情報記憶部114には、入力部150より受け付けられた計算期間、計算対象品切れ率の最大値と変更間隔、標準正規分布表が格納される。
【0022】
部品毎発注情報算出部130は、製品毎の品切れ率が許容値を超えない範囲で最小となる各部品の発注量を算出する。
【0023】
具体的には、部品毎発注情報算出部130は、各製品について製品毎需要量分布記憶部112から当該製品の需要量分布の平均値および標準偏差を抽出する。また、製品毎情報記憶部110から当該製品の許容品切れ率を抽出する。部品毎発注情報算出部130は、部品毎情報記憶部113から部品毎の発注量分布の平均値および標準偏差、初期品切れ率を抽出する。システム情報記憶部114からは、計算期間、計算対象品切れ率の最大値と変更間隔を抽出する。
【0024】
部品毎発注情報算出部130は、各製品の需要量分布の平均値および標準偏差に従い、計算期間分だけ計算期毎の当該製品の需要量を疑似的に算出し、製品・計算期・需要量の組合せを格納する。すなわち、各期について0から1の間で乱数を発生し、乱数をキーとして、システム情報記憶部114の標準正規分布表を検索し、対応する値を抽出する。抽出した値に当該製品の需要量分布の標準偏差を乗じ、平均値を加算することで、製品の需要量を疑似的に算出する。
【0025】
部品毎発注情報算出部130は、各部品について検索対象品切れ率を決定し、対応する発注量を算出する。検索対象品切れ率としては、初期品切れ率や適正品切れ率がある。部品毎発注情報算出部130は、検索対象品切れ率を決定すると、システム情報記憶部114から(100%−検索対象品切れ率)をキーに標準正規分布表を検索し、対応する値を抽出する。抽出した値に当該部品の発注量分布の標準偏差を乗じて、平均値を加算し、初期発注量を算出する。
【0026】
部品毎発注情報算出部130は、部品毎に当該部品を使用する製品およびその員数を部品構成情報記憶部111から抽出する。部品毎発注情報算出部130は、当該部品を使用する製品毎・計算期毎に、当該製品の需要量に員数を乗じて当該製品に対する当該部品の必要量として算出する。
【0027】
部品毎発注情報算出部130は、製品毎の各計画期における部品毎の必要量について、当該部品・計算期が同一である部品の必要量を足し合わせ、部品毎に各計算期の必要量を算出する。部品毎発注情報算出部130は、部品毎の各計算期の必要量について、当該部品の当該計算期における発注量から必要量を差し引き、当該部品の当該計算期における過不足量を算出する。部品毎発注情報算出部130は、部品毎の各計算期の過不足量について、当該過不足量が負ならば当該部品の品切れ率に(1/計算期間)を加算して部品毎に計算期間に生じた品切れ率を算出し、部品毎に品切れ率を算出する。
【0028】
部品毎発注情報算出部130は、計算対象品切れ率の最大値から品切れ率変更間隔を減算して計算対象品切れ率とする。計算対象品切れ率が0以下になるまで、算出した計算対象品切れ率から品切れ率変更間隔を減算し、計算対象品切れ率を算出する。
【0029】
部品毎発注情報算出部130は、各部品について、計算対象品切れ率毎に当該部品の検索対象品切れ率として、上述した手順により当該部品の初期発注量を算出する。当該部品ではない各部品については、初期品切れ率を検索対象品切れ率とし、上述した手順により発注量を算出する。部品毎発注情報算出部130は、算出した発注量を用いて、上述した手順により部品・品切れ率および部品組合せ・品切れ率を算出する。部品毎発注情報算出部130は、算出した品切れ率から当該品切れ率を差し引くことで品切れ率増減を抽出する。部品毎発注情報算出部130は、部品毎に各計算対象品切れ率とした場合の各製品の品切れ率増減を算出する。
【0030】
部品毎発注情報算出部130は、適正品切れ率計算で使用する情報を、適正品切れ率計算アルゴリズムが適用できるようにマッピングする。本実施例では、適正品切れ率を計算するために混合整数計画問題としてモデル化する。混合整数計画問題では、満たすべき制約条件および許容する目的関数を線形方程式として記述する。線形方程式の係数は、製品毎の需要量、部品毎の発注量、部品毎の品切れ率等である。部品毎発注情報算出部130は、これらの情報を線形方程式の係数に代入し、混合整数計画問題の解法である分枝限定法による最適化計算を行う。
【0031】
部品毎発注情報算出部130は、部品の適正品切れ率を検索対象品切れ率として当該部品の発注量を算出し、部品毎に発注量を算出する。
部品発注情報記憶部140には、部品毎発注情報算出部130により算出された部品毎の発注量が格納される。表示部151が、この部品毎の発注量を表示する。
【0032】
入力部150は、ユーザからの入力操作を受け付けるためのユーザインタフェースである。
【0033】
表示部151は、他の機能部の指示に従って、各種操作画面や画像などを表示するためのユーザインタフェースである。
【0034】
上記の各種機能を有する部品発注量決定装置100は、例えば、図2に示すようなコンピュータにより実現される。
【0035】
図2は、部品発注量決定装置100のハードウェア構成例を示すブロック図である。本図に示すように、部品発注量決定装置100は、CPU201、RAM210、ROM220、補助記憶装置230、表示装置240、入力装置250、メディア読取装置260を有する。部品発注量決定装置100は、例えば、一般的なPCである。
【0036】
CPU201は、各種演算を実行するユニットである。CPU201は、補助記憶装置230からRAM210にロードした所定の部品発注量決定プログラム(図示せず)を実行することにより、各種処理を実行する。
【0037】
部品発注量決定プログラムは、例えば、OS(Operating System)プログラム上で実行可能なアプリケーションプログラムである。
【0038】
なお、部品発注量決定プログラムは、例えば、メディア読取装置260を介して可搬型記憶媒体から、補助記憶装置230にインストールされてもよい。
【0039】
RAM210は、CPU201により実行されるプログラムや、プログラムの実行に必要なデータなどを格納するメモリである。ROM220は、部品発注量決定装置100の起動に必要なプログラムなどを格納するメモリである。
【0040】
補助記憶装置230は、例えば、HDD(Hard Disk Drive)などの装置である。フラッシュメモリなどを用いたSSD(Solid State Drive)であってもよい。
【0041】
表示装置240は、例えば、CRTディスプレイ、LCD(Liquid Crystal Display)、有機EL(Electro-Luminescence)ディスプレイなどの装置である。入力装置250は、例えば、キーボード、マウス、マイクなどの装置である。
【0042】
メディア読取装置260は、CD−ROM等の可搬性を有する可搬型記憶媒体の情報を読み出す装置である。
【0043】
上述した部品毎発注情報算出部130は、例えば、CPU201がRAM210にロードした部品発注量決定プログラムを実行することにより実現される。製品毎情報記憶部110、部品構成情報記憶部111、製品毎需要量分布記憶部112、部品毎情報記憶部113、システム情報記憶部114、部品毎発注情報算出部130、部品毎発注情報記憶部140のデータは、例えば、RAM210または補助記憶装置230に格納される。
【0044】
また、入力部150は、例えば、CPU201が所定のプログラムを実行して、入力装置250や補助記憶装置230を制御することにより実現される。表示部151は、例えば、CPU201が所定のプログラムを実行して、表示装置240を制御することにより実現される。
【0045】
次に、上記の部品発注量決定装置100により実現される部品発注量決定処理について説明する。
【0046】
まず、専有部品と共有部品について定義する。専有部品は、1つの製品にのみ使用される部品のことを指す。共有部品は、複数の製品で使用される部品のことを指す。
【0047】
次に、製品および部品の品切れ率について定義する。製品の品切れとは、対象とする製品を構成する部品が1つ以上の品切れする場合と定義する。製品の品切れ率とは、計算期間の中で、対象とする製品が品切れした期の割合、すなわち(製品が品切れした期の数/計算期間)×100%とする。専有部品の品切れ率は、(部品が品切れした期の数/計算期間)×100%とする。また、本実施例では共有部品が不足した場合には、不足した共有部品を使用する製品の中で1つの製品が品切れするものと仮定する。この仮定に基づき、製品における共有部品のみの品切れ率として、(対象とする製品の専有部品に品切れがなく、かつ、共有部品が1つ以上品切れした期の数/品切れした共有部品を使用する製品数/計算期間)×100%と定義する。これより、製品の品切れ率は、専有部品の品切れ率に製品における共有部品のみの品切れ率を加算した値として定義される。
【0048】
以下では、説明をわかり易くするため、部品発注量決定の対象のモデルを例に挙げて説明を行う。まず、図3、図4、図5、図6を参照して、対象のモデルについて説明する。
【0049】
図3に示すように、対象とする製品は製品A、B、Cの3種類であり、対象とする部品は、部品a、b、c、p、q、rの6種類である。製品Aは、部品a、p、q、r各々1個からなる。製品Bは、部品b、q各々1個およびp2個からなる。製品Cは、部品c、p、r各々1個からなる。部品a、b、cは専有部品であり、部品p、q、rは共有部品である。
【0050】
製品A、B、Cの需要量分布は正規分布に従うものとし、平均値および標準偏差を図4(a)に示す。製品Aの平均値は100、標準偏差は10である。製品Bの平均値は100、標準偏差は10である。製品Cの平均値は100、標準偏差は5である。図4(b)に、製品毎の許容品切れ率を示す。各製品の許容品切れ率は、製品Aが5%、製品Bが3%、製品Cが5%である。
部品a、b、c、p、q、rの発注量分布は正規分布に従うものとし、平均値および標準偏差を図5(a)に示す。部品aの平均値は100、標準偏差は10である。部品bの平均値は100、標準偏差は10である。部品cの平均値は100、標準偏差は5である。部品pの平均値は400、標準偏差は23である。部品qの平均値は200、標準偏差は14である。部品rの平均値は200、標準偏差は14である。図5(b)に、部品毎の初期品切れ率を示す。各部品の初期品切れ率は、部品aが5%、部品bが3%、部品cが5%、部品p、q、rは各々4%である。
【0051】
図6(a)に計算期間を示す。本実施例では30とする。図6(b)に計算対象品切れ率の最大値および変更間隔を示す。最大値は5%、変更間隔は1%である。図6(c)に標準正規分布表を示す。標準正規分布表は、標準正規分布累積値とそのときの値から構成される。
【0052】
図7に示す画面は、ユーザが所定の操作により部品発注量決定処理プログラムを起動する際に表示される起動画面例である。ユーザは入力装置を用いて、部品発注量算出実行アイコンを選択すると、部品発注量決定処理フロー図8が開始される。
【0053】
部品発注量決定処理フローが開始されると、入力部150は製品毎の許容品切れ率、製品毎の構成部品と員数、製品毎の需要量分布の平均値および標準偏差、部品毎の発注量分布の平均値および標準偏差、部品毎の初期品切れ率、計算期間、計算対象品切れ率の最大値と変更間隔、標準正規分布表を受け付け、記憶部へ格納する(S901)。
【0054】
具体的には、例えば、入力部150は、製品毎の許容品切れ率、製品毎の構成部品と員数、製品毎の需要量分布の平均値および標準偏差、部品毎の発注量分布の平均値および標準偏差、部品毎の初期品切れ率、計算期間、計算対象品切れ率の最大値と変更間隔、標準正規分布表の記載を含むテキストファイルを受け付ける。各テキストファイルの内容は、例えば、図9(a)〜(d)および図10(a)〜(d)に示すように記載される。図9(a)は、製品毎の許容品切れ率を定義するテキストファイルの内容を示している。図9(b)は、製品毎の構成部品と員数を定義するテキストファイルの内容を示している。図9(c)は、製品毎の需要量分布の平均値および標準偏差を定義するテキストファイルの内容を示している。図9(d)は、部品毎の発注量分布の平均値および標準偏差を定義するテキストファイルの内容を示している。図10(a)は、部品毎の初期品切れ率を定義するテキストファイルの内容を示している。図10(b)は、計算期間を定義するテキストファイルの内容を示している。図10(c)は、計算対象品切れ率の最大値および変更間隔を定義するテキストファイルの内容を示している。図10(d)は、標準正規分布表を定義するテキストファイルの内容を示している。
【0055】
続いて、入力部150は、受け付けた製品毎の許容品切れ率、製品毎の構成部品と員数、製品毎の需要量分布の平均値および標準偏差、部品毎の発注量分布の平均値および標準偏差、部品毎の初期品切れ率、計算期間、計算対象品切れ率の最大値および変更間隔、標準正規分布表を記憶部へ格納する。
【0056】
具体的には、入力部150は、受け付けたテキストファイル(図9(a))から製品毎の許容品切れ率を順次抽出し、製品毎情報記憶部110に格納する。また、受け付けたテキストファイル(図9(b))から製品毎の構成部品・員数を順次抽出し、部品構成情報記憶部111に格納する。また、受け付けたテキストファイル(図9(c))から製品毎の需要量分布の平均値および標準偏差を順次抽出し、製品毎需要量分布記憶部112に格納する。また、受け付けたテキストファイル(図9(d))から部品毎の発注量分布の平均値および標準偏差を順次抽出し、部品毎情報記憶部113に格納する。また、受け付けたテキストファイル(図10(a))から部品毎の初期品切れ率を順次抽出し、部品毎情報記憶部113の該当部品のレコードに格納する。また、受け付けたテキストファイル(図10(b))から計算期間を抽出し、システム情報記憶部114に格納する。また、受け付けたテキストファイル(図10(c))から計算対象品切れ率の最大値および変更間隔を抽出し、システム情報記憶部114に格納する。また、受け付けたテキストファイル(図10(d))から標準正規分布表を抽出し、システム情報記憶部114に格納する。
【0057】
その後、部品毎発注情報算出部130は、製品毎に計算期毎の需要量を算出する(S902)。以下、図11を参照して、製品毎に計算期毎の需要量を算出する処理について説明する。図11は、製品毎に計算期毎の需要量を算出する処理の流れを示すフロー図である。本実施例では、製品Aに対する処理を例に説明する。
【0058】
本フローが開始されると、部品毎発注情報算出部130は、製品毎需要量分布記憶部112を参照し、対象となる製品の需要量分布の平均値および標準偏差を抽出する(S9021)。ここでは、図12(a)に示すように、製品A、平均値100、標準偏差10の情報を抽出する。続いて、システム情報記憶部114から計算期間を抽出し、計算期間分、以下の処理を繰り返す。まず、計算期を1とする。0から100の間の値をとるように乱数を発生させ、発生させた乱数を需要量の発生確率とする(S9022)。ここでは、一例として図12(b)に示すように、製品Aの計算期1の発生確率は97%であったものとする。ステップS9022で算出した発生確率をキーに、システム情報記憶部114の標準正規分布表を参照し、値を検索する(S9023)。ここでは、検索値は1.88となる(図12(b))。検索した値に製品の需要量分布の標準偏差を乗じ、製品の需要量分布の平均値を加算して、製品の需要量を算出する。ここでは、需要量は、1.88×10+100=119となる。計算期を1すすめ、ステップS9022に戻る。計算期分、製品毎の需要量を算出する。ここでは、図12(c)のように需要量が算出されたものとする。図8に戻って説明を続ける。
【0059】
続いて、部品毎発注情報算出部130は、部品毎に初期発注量を算出する(S903)。以下、図13を参照して、部品毎に初期発注量を算出する処理について説明する。図13は、部品毎に初期発注量を算出する処理の流れを示すフロー図である。本実施例では、部品pに対する処理を例に説明する。
【0060】
部品毎発注情報算出部130は、部品毎情報記憶部113を参照し、対象となる部品の発注量分布の平均値および標準偏差を抽出する(S9031)。ここでは、図14(a)に示すように、部品p、平均値400、標準偏差23の情報を抽出する。続いて、部品毎情報記憶部113から対象とする部品の初期品切れ率を抽出する(S9032)。ここでは、図14(b)に示すように、部品pの初期品切れ率として4%の情報を抽出する。(100−初期品切れ率)をキーに、システム情報記憶部114の標準正規分布表を参照し、値を検索する(S9033)ここでは、標準正規分布表の96%に対応する値を検索し、図14(c)に示すように1.75となる。この値に部品の発注量分布の標準偏差を乗じ、部品の発注量分布の平均値を加算して、部品の初期発注量を算出する(S9034)ここでは、初期発注量は、1.75×23+400=440となる(図14(d))。全ての部品について初期発注量を算出する。図8に戻って説明を続ける。
【0061】
続いて、部品毎発注情報算出部130は、部品毎に各計算期に必要とする量を算出する(S904)。以下、図15を参照して、部品毎に各計算期に必要とする量を算出する処理について説明する。図15は、部品毎に各計算期に必要とする量を算出する処理の流れを示すフロー図である。本実施例では、部品pに対する処理を例に説明する。
【0062】
部品毎発注情報算出部130は、部品構成情報記憶部111を参照し、対象とする部品を使用する製品およびその員数を抽出する(S9041)。ここでは、図16(a)に示すように、製品A員数1、製品B員数2、製品C員数1の情報を抽出する。続いて、計算期間分、以下の処理を繰り返す。まず、計算期を1とする。対象とする部品を使用する製品について、ステップS902で算出した対象とする計算期の需要量を抽出する(S9042)。ここでは、図16(b)に示すように、計算期1、製品A需要量119、製品B需要量93、製品C需要量105の情報が抽出されたものとする。対象とする計算期の製品毎の需要量に員数を乗じ、製品毎の必要量を算出する(S9043)。ここでは、図16(b)に示すように、製品A製品毎必要量119、製品B製品毎必要量186、製品C製品毎必要量105となる。対象とする計算期の製品毎の部品必要量を加算し、部品全体の必要量を算出する(S9044)。計算期1の必要量は119+186+105=410となる(図16(c))。計算期分、部品毎に各計算期の必要量を算出する。図8に戻って説明を続ける。
【0063】
続いて、部品毎発注情報算出部130は、部品毎に初期品切れ率を算出する(S905)。以下、図17を参照して、部品毎に初期品切れ率を算出する処理について説明する。図17は、部品毎に初期品切れ率を算出する処理の流れを示すフロー図である。本実施例では、部品pに対する処理を例に説明する。
【0064】
部品毎発注情報算出部130は、計算期間分、以下の処理を繰り返す。まず、計算期1とする。ステップS903で算出した対象とする部品の初期発注量を抽出する(S9051)。ここでは、図14(d)に示した、部品pの初期発注量440の情報を抽出する。次に、ステップS904で算出した対象とした計算期の必要量を抽出する(S9052)。ここでは、図16(c)に示した、部品pの計算期1の必要量410を抽出する。初期発注量から必要量を差し引き、対象とする部品の各計算期の初期過不足量を算出する(S9053)。ここでは、440−410=30が初期過不足量となる(図18)。算出した初期過不足量が負であった場合、対象とする部品の品切れ率に(1/計算期間)だけ加算する(S9054)。全ての部品について、初期品切れ率を算出する。図8に戻り、説明を続ける。
【0065】
部品毎発注情報算出部130は、製品の初期品切れ率を算出する(S906)。具体的には、図19を参照して説明する。図19は、製品の初期品切れ率を算出する処理の流れを示すフロー図である。本実施例では、製品Aに対する処理を例に説明する。
【0066】
部品毎発注情報算出部130は、まず、部品構成情報記憶部111から対象とする製品で使用する部品および員数を抽出する(S9061)。ここでは、図20(a)に示すように、部品a、p、q、r各々1つずつの情報を抽出する。部品毎発注情報算出部130は、計算期間分、以下の処理を繰り返す。まず、計算期1とする。ステップS905で求めた使用する部品毎に対象とする計算期の初期過不足量を抽出する(S9062)。ここでは、図20(b)に示すように、部品a過不足量−3、部品p過不足量30、部品q過不足量25、部品r過不足量13の情報を抽出する。対象とする製品が使用する全ての部品について、過不足量が正であれば計算期を1進め、ステップS9062へ戻る。1つでも過不足量が負となる部品があり、かつ、専有部品の過不足量が負である場合は、対象とする製品の品切れ率に(1/計画期間)を加算する(S9063)。本例はこの場合に該当し、製品Aの品切れ率に1/30を加算する。1つでも過不足量が負となる部品があり、かつ、全ての専有部品の過不足量が正である場合は、対象とする製品の品切れ率に(1/計画期間)に(1/過不足量が負となる共有部品を使用する製品数)を乗じて、加算する(S9064)。これは、共有部品が品切れした場合には、その共有部品を使用しているいずれか1つの製品が品切れとなると仮定することに基づく。計算期を1進め、S9062に戻る。図20(c)に、本例において計算期間分、ステップS906を実行した結果を示す。本例では、専有部品品切れ率が5.02%、共有部品品切れ率が1.05%、製品A品切れ率が6.07%となった。図8に戻って説明を続ける。
【0067】
続いて、部品毎発注情報算出部130は、部品毎に各計算対象品切れ率とした場合の製品品切れ率を算出する(S907)。以下、図21を参照して、部品毎に各計算対象品切れ率とした場合の製品品切れ率を算出する処理について説明する。図21は、部品毎に各計算対象品切れ率とした場合の製品品切れ率を算出する処理の流れを示すフロー図である。本実施例では、部品pに対する処理を例に説明する。
【0068】
部品毎発注情報算出部130は、システム情報記憶部114から計算対象品切れ率の最大値および変更間隔を抽出する(S9071)。ここでは、図6(b)に示した計算対象品切れ率の最大値5%、変更間隔1%の情報を抽出する。次に、計算対象品切れ率の最大値から0になるまで変更間隔分ずつ差し引き、計算対象品切れ率を生成する(S9072)。ここでは、図22(a)に示すように計算対象品切れ率として5%、4%、3%、2%、1%を生成する。次に、部品毎・計算対象品切れ率毎に、以下の処理を行う。まず、計算対象品切れ率5%とする。対象とする部品の品切れ率は対象とする計算対象品切れ率、その他の部品は初期品切れ率として品切れ率を設定する(S9073)。ここでは、図22(b)に示すように、部品aの品切れ率5%、部品bの品切れ率3%、部品cの品切れ率5%、部品pの品切れ率5%、部品qの品切れ率4%、部品rの品切れ率4%とする。ステップS905で計算した初期品切れ率をステップS9073で設定した品切れ率と置き替え、部品毎の品切れ率を算出する(S9074)。算出した部品毎の品切れ率に対して、製品毎の品切れ率をステップ906と同じ処理により算出する(S9075)。ここでは、図23(a)に示すように、製品A品切れ率6.19%、製品B品切れ率3.89%、製品C品切れ率5.75%となった。算出した製品の品切れ率からステップS906で算出した製品の初期品切れ率を差し引き、品切れ率増減を算出する(S9076)。ここでは、図23(b)に示すように、製品Aおよび製品Bの品切れ率増減は0.12%、製品Cの品切れ率増減は0.13%である。図8に戻って説明を続ける。
【0069】
続いて、部品毎発注情報算出部130は、最適化アルゴリズムに従い、部品毎の適正品切れ率を算出する(S908)。本実施例では、部品毎の適正品切れ率を算出するために、混合整数計画問題としてモデル化し、分枝限定法により適正品切れ率を算出する。混合整数計画問題では、満たすべき制約条件および最小化する目的関数を線形方程式として記述する。本実施例の制約条件は3つ、目的関数は1つであり、以下、その内容について説明する。まず、線形方程式で使用される集合について説明する。集合PRODは、製品の集合を表す。集合PARTSは、部品の集合を表す。集合PROBは、計算対象品切れ率の集合を表す。本実施例における各集合を、図24(a)〜(c)に示す。図24(a)は集合PRODを表す。図24(b)は集合PARTSを表す。図24(c)は計算対象品切れ率の集合PROBを表す。次に、線形方程式で使用される定数について説明する。定数GoalprodOutOfStockprodは、集合PRODに含まれる製品prodの許容品切れ率である。BaseOutOfStockprodは、集合PRODに含まれる製品prodの初期品切れ率を表す。DiffOutOfStockparts、prod、probは、集合PARTSに含まれるparts、集合PRODに含まれるprod、集合PROBに含まれるprobについて、部品partsが品切れ率probとなった場合の製品prodにおける品切れ率の増減を表す。本実施例における各定数を、図25(a)および(b)に示す。図25(a)は定数GoalprodOutOfStockprodを表す。図25(b)は定数DiffOutOfStockparts、prod、probを表す。次に、線形方程式で使用される変数について説明する。変数outOfStockprodは、集合PRODに含まれる製品prodの品切れ率である。変数outOfStockMinprodは、集合PRODに含まれる製品prodの許容品切れ率から品切れ率を引いた差分である。変数flagOutOfStockparts、probは、集合PARTSに含まれるparts、集合PROBに含まれるprobについて、partsの適正品切れ率がprobとなる場合に1、partsの適正品切れ率がprobとはならない場合には0をとる品切れ率フラグである。
【0070】
本実施例における制約条件について説明する。第一の制約条件は、集合PRODに含まれる製品prodの品切れ率に関する制約である。prodの品切れ率と品切れ率の差分を加算すると、許容品切れ率となる。本制約式は、以下の式で表される。
【0071】
【数1】


第二の制約条件は、集合PRODに含まれる製品prodの品切れ率を初期品切れ率からの増減の加算として定義した制約である。prodの品切れ率は、集合PARTSに含まれるpartsについて、初期品切れ率に適正品切れ率における初期品切れ率からの増減を足し合わせた確率となる。本制約式は、以下の式で表される。
【0072】
【数2】


第三の制約条件は、集合PARTSに含まれるparts、集合PROBに含まれるprobの品切れフラグに関する制約である。partsの品切れ率は、1つの値に決定される。すなわち、品切れフラグは部品1つにつき、1つの品切れ率のみ1となる。本制約式は、以下の式で表される。
【0073】
【数3】


次に、本実施例における目的関数について説明する。目的関数は、集合PRODに含まれる製品prodの品切れ率を許容品切れ率に近づけることである。本目的関数は、以下の式で表される。
【0074】
【数4】


図26を参照し、最適化アルゴリズムを用いて部品毎の適正品切れ率を算出する処理について説明する。図26は最適化計算により部品毎の適正品切れ率を算出する処理の流れを示すフロー図である。
【0075】
まず、あらかじめ保存されている制約式および目的関数の定数部分に、値をマッピングする(S9081)。ここでは、第一の制約式を例に説明する。第一の制約式は、集合PRODに含まれる全ての製品について、算出される。部品毎発注情報算出部130は、製品毎情報記憶部110を参照し、対象とする製品の許容品切れ率を抽出する。この値を定数GoalprodOutOfStockprodに代入することで、制約式を完成する。ここでは、製品A、製品B、製品Cの許容品切れ率に関する3本の制約式を算出する。製品Aの第一の制約式を以下に示す。
【0076】
【数5】


製品Bの第一の制約式を以下に示す。
【0077】
【数6】


製品Cの第一の制約式を以下に示す。
【0078】
【数7】


続いて、混合整数計画問題の解法である分枝限定法に従い、制約を満たす中で許容品切れ率に最も近づく各部品の適正品切れ率を算出する(S9082)。ここでは、図27(a)に示すように、部品aの適正品切れ率4%、部品bの適正品切れ率2%、部品cの適正品切れ率4%、部品pの適正品切れ率3%、部品qの適正品切れ率3%、部品rの適正品切れ率3%となった。また、このときの各製品の品切れ率は、製品Aの品切れ率4.9%、製品Bの品切れ率2.7%、製品Cの品切れ率4.5%となり、いずれの製品も許容する品切れ率を超えていない。図8に戻り、説明する。
【0079】
部品毎発注情報算出部130は、ステップS903における初期品切れ率を前記適正品切れ率と置き替えて、部品毎の発注量を算出する(S909)。ここでは、図28に示すように、部品aの発注量118、部品bの発注量121、部品cの発注量109、部品pの発注量443、部品qの発注量226、部品rの発注量226となる。算出した部品毎の発注量を部品毎発注情報記憶部140に格納する。図8に戻り、説明を続ける。
【0080】
部品毎発注情報記憶部140に格納された部品毎の発注量は、表示部151を通じてユーザに表示する(S910)。具体的には、表示部151は、部品毎発注情報記憶部140から部品毎の発注量を取得し、図29に示すようにCRT等のディスプレイに表示する。または、通信部(図示しない)を介して、外部のコンピュータに送信するようにしてもよい。以上をもって、図8のフローを終了する。こうして、部品発注量決定処理が実行される。
【0081】
以上、本発明の一実施形態について説明した。本実施形態によれば、製品毎の許容品切れ率を超えない範囲で、製品毎の品切れ率が最も許容値に近づく部品毎の発注量を算出できる。
【実施例2】
【0082】
次に、本発明の第二の実施形態について、図面を参照して説明する。本実施形態では、ユーザが経営指標を入力し、製品毎の品切れ率が許容値を超えない範囲で、指定した経営指標の値を最良とする部品発注量を算出する。本実施例では、ユーザが部品発注金額を指定した場合を例にとり、説明する。
【0083】
図30は、本発明の一実施形態に係る部品発注量決定装置1000の機能構成を示すブロック図である。本図に示すように、部品発注量決定装置1000は、第一の実施形態における部品発注量決定装置100に加え、経営指標情報記憶部115、製品毎品切れ率算出値記憶部142、経営指標算出値記憶部143を有する。
【0084】
経営指標情報記憶部115には、ユーザが指定した経営指標の名前が格納される。
製品毎品切れ率算出値記憶部142には、部品毎発注量算出部130により算出された製品毎の品切れ率が格納される。
経営指標算出値記憶部143には、部品毎発注量算出部130により算出されたユーザが指定した経営指標の値が格納される。本実施例では部品発注金額が格納される。
【0085】
部品発注量決定装置1000により実現される部品発注量決定処理について説明する。図3、図4、図5、図6、図31、図32に示すモデルを対象として部品発注量決定処理を説明する。図3〜6は、第一の実施形態と同様である。図31に示すように、製品Aの売価は100、製造費用は30である。製品Bの売価は300、製造費用は50である。製品Cの売価は200、製造費用は40である。また、図32に示すように、部品aの購入費用は10、部品bの購入費用は10、部品cの購入費用は5、部品pの購入費用は20、部品qの購入費用は15、部品rの購入費用は25である。
【0086】
図33に示す画面は、ユーザが所定の操作により部品発注量決定処理プログラムを起動した際に表示される起動画面例である。ユーザは入力装置を用いて、最良とする経営指標の名前の左側にあるチェックボックスに指定の意思を示すマークをつけ、部品発注量算出実行アイコンを選択すると、部品発注量決定処理フロー図34が開始される。
【0087】
部品発注量決定処理フロー図34が開始されると、入力部150は部品発注量決定装置1000外部よりデータを受け付け格納する(S912)。以下、図35を用いて説明する。図35は、データを受け付け格納する処理S912の流れを示すフロー図である。データを受け付け格納する処理S912が開始されると、入力部150は製品毎の許容品切れ率、製品毎の構成部品と員数、製品毎の需要量分布の平均値および標準偏差、部品毎の発注量分布の平均値および標準偏差、部品毎の初期品切れ率、計算期間、計算対象品切れ率の最大値と変更間隔、標準正規分布表を受け付け、格納する(S901)。
【0088】
次に、入力部150は製品毎の売価・製造費用、部品毎の購入費用、ユーザが指定した経営指標を受け付け、格納する(S931)。具体的には、例えば、入力部150は、製品毎の売価・製造費用、部品毎の購入費用の記載を含むテキストファイルを受け付ける。各テキストファイルの内容は図36(a)(b)に示すように記載される。図36(a)は、製品毎の売価・製造費用を定義するテキストファイルの内容を示している。図36(b)は、部品毎の購入費用を定義するテキストファイルの内容を示している。続いて、入力部150は、受け付けたテキストファイル図36(a)から製品毎の売価および製造費用を順次抽出し、製品毎情報記憶部110に格納する。また、受け付けたテキストファイル図36(b)から部品毎の購入費用を順次抽出し、部品毎情報記憶部113に格納する。また、入力部150は、図33に示す画面で指定された経営指標を経営指標情報記憶部115に格納する。具体的には、「部品発注金額」という文字列を経営指標情報記憶部115に格納する。
【0089】
図34に戻り、説明を続ける。続いて、部品発注量決定装置1000は、第一の実施形態と同様に、製品毎・計算期毎の需要量の生成処理(S902)、部品毎の初期発注量の生成処理(S903)、部品毎・計算期毎の必要量の生成処理(S904)、部品毎の初期品切れ率の算出処理(S905)、製品毎の初期品切れ率の算出処理(S906)、部品毎・計算対象品切れ率毎に製品品切れ率の算出処理(S907)を行う。
【0090】
次に、部品毎発注情報算出部130は、最適化アルゴリズムに従い、部品毎の適正品切れ率を算出する(S908)。本実施例では、第一の実施形態と同様に、部品毎の適正品切れ率を算出するために混合整数計画法としてモデル化し、分枝限定法により適正品切れ率を算出する。本実施例の制約条件は、第一の実施形態で使用する制約条件数1〜数3に加え、ユーザが指定した経営指標の値を算出する計算式を制約条件として追加する。また、第一の実施形態とは異なる目的関数1つを有する。
【0091】
例として、ユーザが部品発注金額を指定した場合に追加する制約式について説明する。部品発注金額は、購入費用を発注量に乗じた値を部品毎に算出し、全ての部品について加算することで算出する。部品partsの購入費用を定数PartsCostparts、部品partsの計算対象品切れ率probにおける部品発注量をQparts、probで表わすと、部品発注金額buyingCostpartsは次式で表わされる。
【0092】
【数8】


次に、目的関数を定義する。目的関数は、ユーザが指定した経営指標の値を最小化するように定義する。すなわち、利益、売上等のように最大化することが最良である経営指標の場合には、経営指標の値に−1を乗じ、目的関数とする。ユーザが部品発注金額を指定した場合には、次式で表わされる。
【0093】
【数9】


続いて、混合整数計画問題の解法である分枝限定法に従い、制約を満たす中で製品毎の品切れ率が許容品切れ率に最も近づく各部品の適正品切れ率を算出する(S9082)。ここでは、図37(a)に示すように、部品aの適正品切れ率2%、部品bの適正品切れ率2%、部品cの適正品切れ率3%、部品pの適正品切れ率4%、部品qの適正品切れ率1%、部品rの適正品切れ率6%となった。部品の発注量は、部品aの発注量121、部品bの発注量121、部品cの発注量109、部品pの発注量440、部品qの発注量233、部品rの発注量222であった。発注量に購買費用を乗じて算出した部品発注金額は、部品aの発注金額1210、部品bの発注金額1210、部品cの発注金額545、部品pの発注金額8800、部品qの発注金額3495、部品rの発注金額5550であり、部品発注金額の合計は20810となった。
【0094】
また、このときの各製品の品切れ率は、製品Aの品切れ率4.1%、製品Bの品切れ率2.7%、製品Cの品切れ率3.3%となり、いずれの製品も許容する品切れ率を超えていない。
【0095】
なお、参考のために第一の実施形態により算出された部品発注量について部品発注金額を求める。図38に示すように、第一の実施形態により算出された部品発注金額は、部品aの発注金額1180、部品bの発注金額1210、部品cの発注金額545、部品pの発注金額8860、部品qの発注金額3390、部品rの発注金額5650であり、部品発注金額の合計は20835となった。すなわち、本実施形態にて算出した部品発注金額の方が小さいことを確認できる。
【0096】
算出した部品毎の発注量および発注金額を部品毎発注情報記憶部140に格納し、算出した製品毎の品切れ率を製品毎品切れ率算出値記憶部142に格納する。また、算出した経営指標の値を経営指標算出値記憶部143に格納する。
【0097】
図34に戻り、説明を続ける。部品毎発注情報記憶部140に格納された部品毎の発注量および発注金額、製品毎の品切れ率算出値記憶部142に格納された製品毎の品切れ率および経営指標算出値記憶部143に格納された経営指標の値は、表示部151を通じてユーザに表示する(S913)。
【0098】
具体的には、表示部151は、部品毎発注情報記憶部140から部品毎の発注量および発注金額を取得する。製品毎の品切れ率算出値記憶部142から製品毎の品切れ率を取得し、製品毎情報記憶部110から製品毎の許容品切れ率を取得する。また、経営指標算出値記憶部143から格納された経営指標の値を取得する。表示部151は、取得した値を図39に示すようにCRT等のディスプレイに表示する。または、通信部(図示しない)を介して、外部のコンピュータに送信するようにしてもよい。以上をもって、図34のフローを終了する。こうして、部品発注量決定処理が実行される。
【0099】
以上、本発明の第二の実施形態について説明した。多くの代替物、修正および変形例が考えられることは明白である。したがって、上に記載の本発明の実施形態は、本発明の要旨と範囲を例示することを意図し、限定するものではない。
【0100】
例えば、上に記載の本発明の実施形態では、部品毎の発注量分布を入力部で受け付ける形態であったが、使用される製品毎の需要量分布を加算することで部品毎の発注量分布を算出してもよい。また、製品毎の需要量分布は正規分布に従うと仮定したが、ガンマ分布に従ってもよい。また、部品毎の部品調達リードタイムを受け付け、製品毎の部品必要量を算出する際に、製品の需要日よりも部品調達リードタイム期だけ前の期の部品必要量としてもよい。また、発注量を決定する際に部品毎の発注量分布の平均値、標準偏差および適正品切れ率を用いたが、発注量分布の平均値に代えてその期の部品の必要量を用いてもよい。また、適正品切れ率を算出するアルゴリズムとして分枝限定法を用いたが、遺伝的アルゴリズムなど近似的に最適解を求める手法を用いてもよい。また、ユーザが指定する経営指標として部品発注金額を用いたが、売上、原価、キャッシュフロー、利益、在庫回転率等でもよい。
【符号の説明】
【0101】
100:第一の実施形態における部品発注量決定装置、 110:製品毎情報記憶部、 111:部品構成情報記憶部、 112:製品毎需要量分布記憶部、 113:部品毎情報記憶部、 114:システム情報記憶部、 115:経営指標情報記憶部、 130:部品毎発注情報算出部、 140:部品毎発注情報記憶部、 142:製品毎品切れ率算出値記憶部、 143:経営指標算出値記憶部、 150:入力部、 151:出力部、 201:CPU、 210:RAM、 220:ROM、 230:補助記憶装置、 240:表示装置、 250:入力装置、 260:メディア読取装置、 800:ディスプレイ、 1000:第二の実施形態における部品毎発注情報決定装置

【特許請求の範囲】
【請求項1】
製品毎の品切れ率が許容品切れ率を超えない範囲で許容品切れ率に最も近づくように部品毎の発注量を算出する部品発注量決定装置であって、
ユーザが入力した初期情報を受け付け、記憶部へ格納する入力部と、
製品毎の許容品切れ率を記憶する第1の記憶部と、
製品毎の構成部品と員数を記憶する第2の記憶部と、
製品毎の需要量分布の平均値および標準偏差を記憶する第3の記憶部と、
部品毎の発注量分布の平均値および標準偏差、並びに初期品切れ率を記憶する第4の記憶部と、
計算期間、計算対象品切れ率の最大値と変更間隔および標準正規分布表を記憶する第5の記憶部と、
前記需要量分布の平均値および標準偏差より、製品毎に計算期毎の需要量を算出し、
前記発注量分布の平均値および標準偏差、並びに初期品切れ率より、部品毎に初期発注量を算出し、
算出した前記製品毎に計算期毎の需要量に構成部品の員数を乗じて、部品毎・計算期毎の必要量を算出し、
部品毎・計算期毎に前記初期発注から前記必要量を差し引いて初期過不足量を算出して、全ての部品について初期品切れ率を算出し、
製品毎に、該製品で使用する各部品の各計算期の前記初期過不足量に基づき、各製品の初期品切れ率を算出し、
部品毎に計算対象品切れ率を段階的に設定して、その他の部品は前記初期品切れ率として、製品毎の品切れ率を算出して、前記製品毎の初期品切れ率との差し引きより、部品毎・計算対象品切れ率毎に製品品切れ率増減を算出し、
前記製品毎の許容品切れ率と前記製品毎の品切れ率との第1の制約式、前記製品毎の品切れ率と前記製品毎の初期品切れ率と前記部品毎・計算対象品切れ率毎の製品品切れ率増減と品切れ率フラグとの第2の制約式、前記品切れ率フラグに関する第3の制約式、および各製品の許容品切れ率から品切れ率を引いた差分の総計を最小化する目的関数を作成し、
前記目的関数に対して最適化計算を実行して部品毎の適正品切れ率を算出し、
前記部品の発注量分布の平均値および標準偏差、並びに前記部品毎の適正品切れ率より、部品毎に発注量を算出する部品毎発注情報算出部と、
前記部品毎の発注量を表示する表示部と、
を有することを特徴とする部品発注量決定装置。
【請求項2】
製品毎の品切れ率が許容品切れ率を超えない範囲で、ユーザが指定した経営指標の値を最良とする部品毎の発注量を算出する部品発注量決定装置であって、
ユーザが入力した初期情報を受け付け、記憶部へ格納する入力部と、
製品毎の許容品切れ率、売価および製造費用を記憶する第1の記憶部と、
製品毎の構成部品と員数を記憶する第2の記憶部と、
製品毎の需要量分布の平均値および標準偏差を記憶する第3の記憶部と、
部品毎の発注量分布の平均値および標準偏差、購入費用並びに初期品切れ率を記憶する第4の記憶部と、
計算期間、計算対象品切れ率の最大値と変更間隔および標準正規分布表を記憶する第5の記憶部と、
ユーザが指定した経営指標の名前を記憶する第6の記憶部と、
前記需要量分布の平均値および標準偏差より、製品毎に計算期毎の需要量を算出し、
前記発注量分布の平均値および標準偏差、並びに初期品切れ率より、部品毎に初期発注量を算出し、
算出した前記製品毎に計算期毎の需要量に構成部品の員数を乗じて、部品毎・計算期毎の必要量を算出し、
部品毎・計算期毎に前記初期発注から前記必要量を差し引いて初期過不足量を算出して、全ての部品について初期品切れ率を算出し、
製品毎に、該製品で使用する各部品の各計算期の前記初期過不足量に基づき、各製品の初期品切れ率を算出し、
部品毎に計算対象品切れ率を段階的に設定して、その他の部品は前記初期品切れ率として、製品毎の品切れ率を算出して、前記製品毎の初期品切れ率との差し引きより、部品毎・計算対象品切れ率毎に製品品切れ率増減を算出し、
前記製品毎の許容品切れ率と前記製品毎の品切れ率との第1の制約式、前記製品毎の品切れ率と前記製品毎の初期品切れ率と前記部品毎・計算対象品切れ率毎の製品品切れ率増減と品切れ率フラグとの第2の制約式、前記品切れ率フラグに関する第3の制約式、ユーザが指定した経営指標値を算出する第4の制約式、およびユーザが指定した経営指標値を最小化または最大化する目的関数を作成し、
前記目的関数に対して最適化計算を実行して部品毎の適正品切れ率を算出し、
前記部品の発注量分布の平均値および標準偏差、並びに前記部品毎の適正品切れ率より、部品毎に発注量を算出、および前記経営指標値を算出する部品毎発注情報算出部と、
前記部品毎の発注量、および前記経営指標値を表示する表示部と、
を有することを特徴とする部品発注量決定装置。
【請求項3】
前記部品毎発注情報算出部は、前記第3の記憶部に記憶される製品毎の需要量分布を加算することで部品毎の発注量分布の情報を算出して、前記第4の記憶部へ記憶することを特徴とする請求項1または請求項2に記載の部品発注量決定装置。
【請求項4】
前記第3の記憶部に記憶され、および読み出される製品毎の需要量分布の情報が、ガンマ分布に従う形式で作成されることを特徴とする請求項1または請求項2に記載の部品発注量決定装置。
【請求項5】
前記入力部が更に部品調達リードタイムを受付け、
前記部品毎発注情報算出部が、算出した前記製品毎に計算期毎の需要量に構成部品の員数を乗じて、部品毎・計算期毎の必要量を算出する処理において、製品の需要日よりも部品調達リードタイム期だけ前の期の部品必要量として算出することを特徴とする請求項1または請求項2に記載の部品発注量決定装置。
【請求項6】
前記部品毎発注情報算出部が、前記部品の発注量分布の平均値および標準偏差、並びに前記部品毎の適正品切れ率より、部品毎に発注量を算出する処理において、発注量分布の平均値に代えて、その期の部品の必要量を用いることを特徴とする請求項1または請求項2に記載の部品発注量決定装置。
【請求項7】
前記部品毎発注情報算出部が、前記目的関数に対して最適化計算を実行して部品毎の適正品切れ率を算出するアルゴリズムとして分枝限定法、遺伝的アルゴリズム、または近似的に最適解を求める手法を実行することを特徴とする請求項1または請求項2に記載の部品発注量決定装置。
【請求項8】
ユーザが指定した経営指標は、部品発注金額、売上、原価、キャッシュフロー、利益、または在庫回転率であることを特徴とする請求項2に記載の部品発注量決定装置。
【請求項9】
コンピュータに、製品毎の品切れ率が許容品切れ率を超えない範囲で許容品切れ率に最も近づくように部品毎の発注量を算出する機能を実現させるための部品発注量決定プログラムであって、
入力部が、ユーザが入力した初期情報として、製品毎の許容品切れ率、製品毎の構成部品と員数、製品毎の需要量分布の平均値および標準偏差、部品毎の発注量分布の平均値および標準偏差、初期品切れ率、計算期間、計算対象品切れ率の最大値と変更間隔、および標準正規分布表を受付けて、記憶部へ格納し、
演算部が、
前記需要量分布の平均値および標準偏差より、製品毎に計算期毎の需要量を算出し、
前記発注量分布の平均値および標準偏差、並びに初期品切れ率より、部品毎に初期発注量を算出し、
算出した前記製品毎に計算期毎の需要量に構成部品の員数を乗じて、部品毎・計算期毎の必要量を算出し、
部品毎・計算期毎に前記初期発注から前記必要量を差し引いて初期過不足量を算出して、全ての部品について初期品切れ率を算出し、
製品毎に、該製品で使用する各部品の各計算期の前記初期過不足量に基づき、各製品の初期品切れ率を算出し、
部品毎に計算対象品切れ率を段階的に設定して、その他の部品は前記初期品切れ率として、製品毎の品切れ率を算出して、前記製品毎の初期品切れ率との差し引きより、部品毎・計算対象品切れ率毎に製品品切れ率増減を算出し、
前記製品毎の許容品切れ率と前記製品毎の品切れ率との第1の制約式、前記製品毎の品切れ率と前記製品毎の初期品切れ率と前記部品毎・計算対象品切れ率毎の製品品切れ率増減と品切れ率フラグとの第2の制約式、前記品切れ率フラグに関する第3の制約式、および各製品の許容品切れ率から品切れ率を引いた差分の総計を最小化する目的関数を作成し、
前記目的関数に対して最適化計算を実行して部品毎の適正品切れ率を算出し、
前記部品の発注量分布の平均値および標準偏差、並びに前記部品毎の適正品切れ率より、部品毎に発注量を算出し、
表示部が前記部品毎の発注量を表示する各手順をコンピュータに実行させることを特徴とする部品発注量決定プログラム。
【請求項10】
コンピュータに、製品毎の品切れ率が許容品切れ率を超えない範囲でユーザが指定した経営指標の値を最良とする部品毎の発注量を算出する機能を実現させるための部品発注量決定プログラムであって、
入力部が、ユーザが入力した初期情報として、製品毎の許容品切れ率、製品毎の構成部品と員数、製品毎の需要量分布の平均値および標準偏差、部品毎の発注量分布の平均値および標準偏差、初期品切れ率、計算期間、計算対象品切れ率の最大値と変更間隔、標準正規分布表、およびユーザが指定した経営指標の名前を受付けて、記憶部へ格納し、
演算部が、
前記需要量分布の平均値および標準偏差より、製品毎に計算期毎の需要量を算出し、
前記発注量分布の平均値および標準偏差、並びに初期品切れ率より、部品毎に初期発注量を算出し、
算出した前記製品毎に計算期毎の需要量に構成部品の員数を乗じて、部品毎・計算期毎の必要量を算出し、
部品毎・計算期毎に前記初期発注から前記必要量を差し引いて初期過不足量を算出して、全ての部品について初期品切れ率を算出し、
製品毎に、該製品で使用する各部品の各計算期の前記初期過不足量に基づき、各製品の初期品切れ率を算出し、
部品毎に計算対象品切れ率を段階的に設定して、その他の部品は前記初期品切れ率として、製品毎の品切れ率を算出して、前記製品毎の初期品切れ率との差し引きより、部品毎・計算対象品切れ率毎に製品品切れ率増減を算出し、
前記製品毎の許容品切れ率と前記製品毎の品切れ率との第1の制約式、前記製品毎の品切れ率と前記製品毎の初期品切れ率と前記部品毎・計算対象品切れ率毎の製品品切れ率増減と品切れ率フラグとの第2の制約式、前記品切れ率フラグに関する第3の制約式、ユーザが指定した経営指標値を算出する第4の制約式、およびユーザが指定した経営指標値を最小化または最大化する目的関数を作成し、
前記目的関数に対して最適化計算を実行して部品毎の適正品切れ率を算出し、
前記部品の発注量分布の平均値および標準偏差、並びに前記部品毎の適正品切れ率より、部品毎に発注量を算出、および前記経営指標値を算出し、
表示部が前記部品毎の発注量、および前記経営指標値を表示する各手順をコンピュータに実行させることを特徴とする部品発注量決定プログラム。
【請求項11】
前記演算部は、前記記憶部に記憶される製品毎の需要量分布を加算することで部品毎の発注量分布の情報を算出して、前記記憶部へ記憶することを特徴とする請求項9または請求項10に記載の部品発注量決定プログラム。
【請求項12】
前記記憶部に記憶され、および読み出される製品毎の需要量分布の情報が、ガンマ分布に従う形式で作成されることを特徴とする請求項9または請求項10に記載の部品発注量決定プログラム。
【請求項13】
前記入力部が更に部品調達リードタイムを受付け、
前記演算部が、算出した前記製品毎に計算期毎の需要量に構成部品の員数を乗じて、部品毎・計算期毎の必要量を算出する処理において、製品の需要日よりも部品調達リードタイム期だけ前の期の部品必要量として算出することを特徴とする請求項9または請求項10に記載の部品発注量決定プログラム。
【請求項14】
前記演算部が、前記部品の発注量分布の平均値および標準偏差、並びに前記部品毎の適正品切れ率より、部品毎に発注量を算出する処理において、発注量分布の平均値に代えて、その期の部品の必要量を用いることを特徴とする請求項9または請求項10に記載の部品発注量決定プログラム。
【請求項15】
前記演算部が、前記目的関数に対して最適化計算を実行して部品毎の適正品切れ率を算出するアルゴリズムとして分枝限定法、遺伝的アルゴリズム、または近似的に最適解を求める手法を実行することを特徴とする請求項9または請求項10に記載の部品発注量決定プログラム。
【請求項16】
ユーザが指定した経営指標は、部品発注金額、売上、原価、キャッシュフロー、利益、または在庫回転率であることを特徴とする請求項10に記載の部品発注量決定プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate

【図36】
image rotate

【図37】
image rotate

【図38】
image rotate

【図39】
image rotate