以下、図面を参照して本発明の実施形態について説明する。なお、以下に説明する実施の形態は、物品管理システムに対して本発明を適用した場合の実施形態である。
[1.物品管理システムの構成および機能概要]
(1.1 物品管理システムの構成および機能)
まず、本発明の一実施形態に係る物品管理システムの構成および概要機能について、図1を用いて説明する。
図1は、本実施形態に係る物品管理システム1の概要構成例を示す模式図である。
図1に示すように、物品管理システム1は、物品を製造する物品メーカMのサーバ(図示せず)と、物品を販売する店舗Sのサーバ(図示せず)と、物品メーカMからの物品を保管する倉庫5を管理する物品管理サーバ10と、を備えている。
物品管理サーバ10は、倉庫5内の各物品の在庫を管理する。物品管理サーバ10は、倉庫5から各店舗への各物品の出庫状態を管理する。物品管理サーバ10は、各物品メーカMへの各物品の発注状態を管理する。
なお、物品管理サーバ10と、物品メーカMのサーバと、店舗Sのサーバとが、ネットワークを介して、例えば、通信プロトコルにTCP/IP等を用いて相互にデータの送受信が可能になっていてもよい。ネットワークは、例えば、ローカルエリアネットワーク、インターネット、専用通信回線(例えば、CATV(Community Antenna Television)回線)、移動体通信網、およびゲートウェイ等により構築されていてもよい。
物品管理サーバ10は、倉庫5を運営する倉庫業者のサーバでもよいし、倉庫5を運営する倉庫業者から管理の依頼を受けた管理業者のサーバでもよい。
各物品メーカMは、発注を受けて各種物品を製造する。製造された物品は、倉庫5に保管される。物品は、倉庫5から各店舗に供給される。倉庫5の運営主体は、ある物品メーカMでもよいし、ある店舗Sでもよいし、物品メーカMや店舗Sと独立した主体でもよい。
物品の一例として、販売する商品、商品の販売を促すための販売促進ツール等が挙げられる。商品の一例として、カタログ、書籍、食料品、日用品、衣料品等が挙げられる。商品は、BtoCの商品に限らず、BtoBの商品でもよい。販売促進ツールの種類として、例えば、スイングPOP(Point of Purchase advertising)、ジャンボスポッター、ミニのぼり、パネル、ジャンブルボックス、エアーPOP、フロアPOP、POP用紙、のれん、ミニのぼり、レシピカード、ムービングPOP、プライスPOP、ムービングPOP、棚帯、ビニール幕、陳列台、ポスタ、タペストリ、ハンガー什器、クリアファイル、ボールペン、チラシ、パンフレット等が挙げられる。
店舗Sの店舗形態の一例として、ドラッグストア、スーパーマーケット、ネット販売店等が挙げられる。
(1.2 物品管理サーバ10の構成および機能)
次に、物品管理サーバ10の構成および機能について、図2から図7を用いて説明する。
図2は、物品管理サーバ10の概要構成の一例を示すブロック図である。図3から図6は、物品管理サーバ10におけるデータベースのデータの一例を示す模式図である。
図2に示すように、コンピュータである物品管理サーバ10は、通信部11と、記憶部12と、表示部13と、操作部14と、入出力インターフェース部15と、制御部16と、を備えている。そして、制御部16と入出力インターフェース部15とは、システムバス17を介して接続されている。
通信部11は、外部の各サーバおよび内部の各端末(図示せず)と通信を行う。
記憶部12は、例えば、ハードディスクドライブ、シリコンディスクドライブ等により構成されている。
また、記憶部12には、物品データベース12a(以下「物品DB12a」とする。)、物品管理データベース12b(以下「物品管理DB12b」とする。)、パターンデータベース12c(以下「パターンDB12c」とする。)等が構築されている。
物品DB12aには、図3に示すように、各物品のアイテムマスタとして、物品を特定するアイテムIDに関連付けて、アイテム名、アラートフラグ等が記憶されている。現在の在庫数が、安全在庫数よりも少なくなった物品に対して、アラートフラグが”1”になる。
また、物品DB12aには、図4に示すように、アイテムIDに関連付けられて、物品の仕様が記憶されている。物品の仕様の一例として、物品の種類、物品の大きさ、物品の色(使用している色の数を含む)、物品の価格、製造年、製造会社、ブランド等、物品を特徴付ける項目が挙げられる。物品の種類には、風邪薬、シャンプーのような商品自体の種類の他に、販売促進ツールの場合、販売促進ツールの対象商品、POP、香り見本等の販売促進ツールの資材種類も含まれる。物品の仕様のデータは、物品の類似検索の際に利用される。
物品管理DB12bには、アイテムIDに関連付けて、倉庫5における各物品の在庫数、安全在庫数、出庫時期、出庫数、出庫先の店舗ID、累積の出庫数(出庫数の累積値の一例)、発注時期、発注数、発注先のメーカID、累積の発注数(発注数の累積値の一例)等が記憶されている。
物品管理DB12bには、倉庫5に設置されたセンサからの情報を収集したデータが反映されてもよい。
また、物品管理DB12bには、アイテムIDに関連付けられて、発注数毎の発注単価が記憶されている。また、物品管理DB12bには、アイテムIDに関連付けられて、保管単価が記憶されている。
パターンDB12cには、物品が出庫していく出庫数の傾向を、所定の出庫パターンに分類する分類方法またはルールが記憶されている。
ここで、出庫パターンの一例として、図5Aに示すように、時間に対して累積の出庫数が階段型になる出庫パターンが挙げられる。図5Bに示すように、出庫パターンの一例として、時間に対して累積の出庫数が直線的になる出庫パターンが挙げられる。図5Cに示すように、出庫パターンの一例として、時間に対して累積の出庫数が突発的に変化する出庫パターンが挙げられる。図5Dに示すように、出庫パターンの一例として、時間に対して累積の出庫数が直線の傾きが変化する出庫パターンが挙げられる。図5Eに示すように、出庫パターンの一例として、時間に対して累積の出庫数が飽和的になる出庫パターンが挙げられる。図5Fに示すように、出庫パターンの一例として、時間に対して累積の出庫数の傾きが増加しつつある出庫パターンが挙げられる。
出庫数の傾向を第1分類方法の一例として、所定の出庫パターンを除くルールが挙げられる。例えば、出庫量が少ない(例えば、年間1,000個以下)場合、データ量が少なくて(例えば、90日未満で)傾向が不明となる場合等が挙げられる。
分類方法として、図5Aに示すように、出庫パターンが階段型か否かに分類する方法が挙げられる。例えば、所定の時間間隔(例えば、30日から60日)で、所定量(例えば、10から50等)の物品が出庫されている場合が挙げられる。なお、この分類方法は、出庫数の傾向を第1分類方法、または、第1分類方法で分類できなかった出庫数の傾向を分類する第2分類方法の一例である。
分類方法として、変化点アルゴリズムを適用できる否かで分類する方法が挙げられる。例えば、変化点アルゴリズムは、階段型パターンと判定されなかったデータに対して、所定日分の傾向期間を設け、傾向期間における傾向と直近の30日のデータとが比較され、図5Bに示すように、直近の30日分の傾きが所定の範囲内ならば、一定傾向(直線的)パターンと判定、図5Cに示すように、急激に増加した場合、突発傾向のパターンと判定する。なお、急激に増加する時期が、2年以上のデータからある季節に特有であるかを判定されてもよい。なお、この分類方法は、出庫数の傾向を第1分類方法、または、第1分類方法で分類できなかった出庫数の傾向を分類する第2分類方法の一例である。
分類方法として、回帰曲線を適用する分類する方法が挙げられる。上記の分類方法で未分類のデータに対して、ゴンペルツ曲線等の成長曲線を当てはめ、パラメータの値の範囲で分類される。例えば、図5Dから図5Fに示すように、データが分類される。なお、この分類方法は、出庫数の傾向を第1分類方法、または、第1分類方法で分類できなかった出庫数の傾向を分類する第2分類方法の一例である。
また、パターンDB12cには、物品を発注する所定の発注パターンに分類する分類方法またはルールが記憶されている。
ここで、発注パターンの一例として、図6Aに示すように、時間に対して累積の出庫数が階段型になる出庫パターンに対して、発注する発注パターンが挙げられる。在庫が安全在庫以下にならないように、発注パターンが決定される。なお、図6Aでは、発注数が4回の発注パターンであるが、発注数が3回の発注パターン、発注数が5回の発注パターンのように、発注数が異なってもよい。
図6Bに示すように、発注パターンの一例として、時間に対して累積の出庫数が直線的になる出庫パターンに対して、所定の回数で発注する発注パターンが挙げられる。例えば、図中、発注回数が3回の場合と2回の場合とが挙げられる。
また、図6Cに示すように、発注パターンの一例として、時間に対して累積の出庫数が突発的に変化する出庫パターンに対して、所定の回数で発注する発注パターンが挙げられる。例えば、早めに大量に発注してもよいし、突発的に変化する時期が、季節的な場合、季節に間にあうように、発注してもよい。
また、図6Dに示すように、発注パターンの一例として、時間に対して累積の出庫数が直線の傾きが変化する出庫パターンに対して、所定の回数で発注する発注パターンが挙げられる。例えば、初回を少なめに発注して、2回目で大量に発注する場合、初回に大目に発注して、2回目は少なめに発注する場合が挙げられる。
また、図6Eに示すように、発注パターンの一例として、時間に対して累積の出庫数が飽和的になる出庫パターンに対して、所定の回数で発注する発注パターンが挙げられる。例えば、初回を少なめに発注して、2回目で大量に発注する場合、初回に大目に発注して、2回目は少なめに発注する場合が挙げられる。
また、図6Fに示すように、出庫パターンの一例として、時間に対して累積の出庫数の傾きが増加しつつある出庫パターンが挙げられる。例えば、初回を少なめに発注して、2回目で大量に発注する場合、初回に大目に発注して、2回目は少なめに発注する場合が挙げられる。
なお、発注パターンは、出庫パターンに対して、階段近似的に安全在庫以下にならないように設定されることが好ましい。発注パターンのパラメータとして、対応する出庫パターンに対して、発注回数、おおよその発注時期に、各発注時期における発注量の大小等が挙げられる。なお、発注パターンは、シミュレーションを行う際のガイドラインに過ぎず、最終的な、発注回数、発注時期および発注量は、予測出庫数およびコストに基づいたシミュレーションおよびシミュレーションを見た顧客からのフィードバックにより決定される。
なお、出庫パターンおよび発注パターンが、AI(Artificial Intelligence)で分類されてもよい。
なお、物品管理DB12bには、アイテムIDに関連付けられて、分類された出庫パターンが記憶されてもよい。
記憶部12は、オペレーティングシステムおよびサーバプログラム等の各種プログラム等を記憶する。なお、各種プログラムは、例えば、他のサーバ装置等からネットワークを介して取得されるようにしてもよいし、記録媒体に記録されてドライブ装置を介して読み込まれるようにしてもよい。
表示部13は、例えば、液晶表示素子またはEL(Electro Luminescence)素子等によって構成されている。
操作部14は、例えば、キーボードおよびマウス等によって構成されている。
入出力インターフェース部15は、通信部11等と制御部16との間のインターフェース処理を行うようになっている。
制御部16は、CPU(Central Processing Unit)16a、ROM(Read Only Memory)16b、RAM(Random Access Memory)16c等により構成されている。
[2.物品管理システムの動作]
次に、本発明の1実施形態に係る物品管理システムの動作について図を用いて説明する。
(2.1 物品の補充の発注業務の動作例)
物品の補充の発注業務の動作例を、図7を用いて説明する。
図7は、物品の補充の発注業務の動作例を示すフローチャートである。
図7に示すように、物品管理サーバ10は、アラートチェック処理を行う。(ステップS1)。具体的には、物品管理サーバ10の制御部16が、全ての物品(アイテム)に対して、安全在庫を算出し、現在の在庫と比較する。制御部16が、在庫が少なくなった物品に対して、物品DB12aにおいてアラートフラグを立てる。詳細は、アラートチェック処理のサブルーチンで後述する。
次に、物品管理サーバ10は、アラートが発生した物品が有るか否かの判定を行う(ステップS2)。具体的には、制御部16が、物品DB12aを参照して、アラートフラグが“1”である物品があるか否かを判定する。
アラートが発生した物品がない場合(ステップS2;NO)、制御部16が、物品の補充の発注業務の処理を終了する。
アラートが発生した物品が有る場合(ステップS2;YES)、物品管理サーバ10は、発注数・コスト算出処理を行う(ステップS3)。具体的には、制御部16が、アラートがかかった物品に対して、出庫パターンの分類を行い、発注パターンを決定する。制御部16が、発注コストと保管コストとに基づいて、シミュレーションして発注時期および発注数の候補を算出する。詳細は、発注数・コスト算出処理のサブルーチンで後述する。
なお、発注量を求めたい任意の物品、例えば、過去に一度も発注されていない物品や、物品内容が改訂された場合等は、ステップS3の処理でなく、初回または改訂の発注業務の動作例で後述する説明する。
次に、物品管理サーバ10は、発注数決定処理を行う(ステップS4)。具体的には、制御部16が、候補の発注時期および発注数を、表示部13に表示する。なお、制御部16が、発注時期および発注数の組み合わせの候補を、印刷物を出力したり、クライアントである倉庫業者の端末に送信したりしてもよい。
制御部16が、各物品に対して発注時期と発注数との組み合わせの選択を、操作部14または通信部11を介して受け付ける。制御部16が、受け付けた発注時期と発注数とを決定する。制御部16が、各物品に対して発注時期および発注数の決定されたスケジュールに従い、発注を行う。例えば、物品管理サーバ10が、物品を製造している物品メーカMのサーバに発注の情報を送信する。
(2.2 アラートチェック処理のサブルーチン)
次に、アラートチェック処理のサブルーチンについて、図8を用いて説明する。
図8は、アラートチェック処理のサブルーチンの一例を示すフローチャートである。
図8に示すように、物品管理サーバ10は、現在の在庫データを取得する(ステップS10)。具体的には、物品管理サーバ10の制御部16が、アラートがかかったアイテムIDの1つに対して、物品管理DB12bを参照して、各物品の在庫数のデータを取得する。なお、制御部16が、通信部11を介して、倉庫5に設置されたセンサから、各物品の在庫の情報を取得してもよい。
次に、物品管理サーバ10は、出庫データを取得する(ステップS11)。具体的には、制御部16が、アイテムIDに基づき、物品管理DB12bを参照して、出庫データを取得する。
次に、物品管理サーバ10は、安全在庫を算出する(ステップS12)。具体的には、制御部16が、アイテムIDに対応する物品の発注の間隔、発注のリードタイム、 安全係数等から安全在庫数を算出する。
次に、物品管理サーバ10は、現在在庫数が安全在庫数より少ないか否かを判定する(ステップS13)。具体的には、制御部16が、アイテムIDに対応する物品の現在の在庫数が、安全在庫数より少ないか否かを判定する。
現在在庫数が安全在庫数より少ない場合(ステップS13;YES)、物品管理サーバ10は、アラートフラグを立てる(ステップS14)。具体的には、制御部16が、対応するアイテムIDに基づき、物品DB12aのアラートフラグを“0”から“1”にする。
一方、現在在庫数が安全在庫数より少なくない場合(ステップS13;NO)、物品管理サーバ10は、アラートフラグを下げる(ステップS15)。具体的には、制御部16が、対応するアイテムIDに基づき、物品DB12aのアラートフラグを“1”から“0”にする。
次に、物品管理サーバ10は、倉庫5の管理対象の全物品に対して処理が行われたか否かを判定する(ステップS16)。具体的には、制御部16が、物品DB12aにおける管理しているアイテムIDに対して、処理が行われたか否かを判定する。
全物品に対して処理が行われていない場合(ステップS16;NO)、物品管理サーバ10は、ステップS10の処理に戻り、次のアイテムIDの物品に対して、一連の処理を行う。
全物品に対して処理が行われ場合(ステップS16;YES)、物品管理サーバ10は、アラートチェック処理のサブルーチンを終了する。
(2.3 発注数・コスト算出処理のサブルーチン)
次に、発注数・コスト算出処理のサブルーチンについて図9を用いて説明する。
図9は、発注数・コスト算出処理のサブルーチンの一例を示すフローチャートである。
図9に示すように、物品管理サーバ10は、アイテムマスタからアラートが発生した物品(所定の物品の一例)のアイテムIDを取得する(ステップS20)。具体的には、物品管理サーバ10の制御部16が、物品DB12aを参照して、アラートフラグが“1”であるアイテムIDを取得する。
次に、物品管理サーバ10は、予測出庫数を算出する(ステップS21)。具体的には、制御部16が、取得したアイテムIDに基づき、物品管理DB12bを参照して、過去の出庫数のデータから予測出庫数を算出する。例えば、過去30日の平均出庫数を計算して、この平均出庫数、物品が出て行くと予測する。なお、制御部16が、過去の出庫数のデータに曲線を当てはめて需要予測して、予測出庫数を算出してもよい。
このように、物品管理サーバ10は、前記所定の物品に関して予測される予測出庫数を算出する予測出庫数算出手段の一例として機能する。
次に、物品管理サーバ10は、出庫パターンを分類する(ステップS22)。具体的には、制御部16が、取得したアイテムIDに基づき、物品管理DB12bを参照して、累積出庫数のデータ(例えば、365日分)を読み出す。制御部16が、パターンDB12cを参照して、累積出庫数のデータに対して、複数の分類方法を順に適用して、フィルターを掛けて、例えば、図5Aから図5Fに示すような出庫パターンに順次分類していく。詳細は、出庫パターンの分類のサブルーチンで後述する。なお、データ量が小又は出庫量が小である場合等、所定の出庫パターンに分類できない場合は、物品管理サーバ10は、発注数・コスト算出処理を終了する。
このように、物品管理サーバ10は、所定の物品が出庫していく出庫数の傾向を、所定の出庫パターンに分類する出庫パターン分類手段の一例として機能する。
次に、物品管理サーバ10は、発注パターンを決定する(ステップS23)。具体的には、制御部16が、パターンDB12cを参照して、図6Aから図6Fに示したように、分類された出庫パターンに応じて、所定の物品を発注する発注パターンを決定する。なお、制御部16が、複数の発注回数に対して、複数の発注パターンを決定してもよい。例えば、2回の発注回数に対して、複数の発注パターンを決定してもよし、3回の発注回数に対して、複数の発注パターンを決定してもよい。
このように、物品管理サーバ10は、前記分類された出庫パターンに応じて、前記所定の物品を発注する発注パターンを決定する発注パターン決定手段の一例として機能する。
次に、物品管理サーバ10は、発注時期および発注数を算出する(ステップS24)。具体的には、制御部16が、累積出庫数のデータのパターンを、予測出庫数に応じて、予測累積出庫数のデータを生成する。制御部16が、予測累積出庫数のデータに適用して、安全在庫を考慮して、発注時期および発注数を算出する。例えば、制御部16が、決定された発注パターンを、予測累積出庫数のデータに対して、安全在庫数以下にならないように、階段近似的に適用して、発注時期および発注数を算出する。なお、同じアイテムIDに対しては、2回目以降の処理の場合、制御部16が、決定された発注パターンに従い、発注時期と発注数との組み合わせを、所定の変動幅で変えていく。例えば、制御部16が、発注数を固定して、発注時期を所定の変動幅で変えたり、発注時期を固定して、発注数を所定の変動幅で変えたり、発注時期および発注数の両方をそれぞれ所定の変動幅で変えたりする。決定された発注パターンを基準とした発注パターンの周りの範囲(発注時期のある範囲および発注数のある範囲)で、コストを探索するために、制御部16が、発注時期および発注数を、所定の変動幅で変えていく。
このように、物品管理サーバ10は、前記決定された発注パターンと前記予測出庫数とから、前記所定の物品を発注する発注時期および当該発注時期における発注数を算出する発注算出手段の一例として機能する。
次に、物品管理サーバ10は、発注コストを算出する(ステップS25)。具体的には、制御部16が、取得したアイテムIDに基づき、物品管理DB12bを参照して、発注数毎の発注単価を読み出し、算出した各発注時期の発注数から、発注コストを算出する。
このように、物品管理サーバ10は、前記発注時期および前記発注数から、前記所定の物品を発注する発注コストを算出する発注コスト算出手段の一例として機能する。物品管理サーバ10は、前記所定の物品に対する発注数に応じた前記所定の物品の単価に基づき、前記発注コストを算出する発注コスト算出手段の一例として機能する。
次に、物品管理サーバ10は、保管コストを算出する(ステップS26)。具体的には、制御部16が、算出された予測出庫数と、算出された発注時期および発注数とから、予測される在庫数の推移を算出する。制御部16が、取得したアイテムIDに基づき、物品管理DB12bを参照して、保管単価を読み出し、算出された在庫数の推移から、保管コストを算出する。
このように、物品管理サーバ10は、前記発注時期および前記発注数と前記予測出庫数とに応じて、前記所定の物品を保管する保管コストを算出する保管コスト算出手段の一例として機能する。
次に、物品管理サーバ10は、発注時期および発注数の全ての組み合わせで計算を行ったかを判定する(ステップS27)。具体的には、制御部16が、発注パターンに対して、変動させる発注時期および発注数の全ての組み合わせで計算を行ったかを判定する。なお、決定された発注パターンが複数ある場合、制御部16は、各発注パターンにおいて、発注時期および発注数を変動させる。
発注時期および発注数の全ての組み合わせで計算を行っていない場合(ステップS27;NO)、物品管理サーバ10は、ステップS24に戻り、発注時期および発注数を所定の変動幅で変更する。
発注時期および発注数の全ての組み合わせで計算を行った場合(ステップS27;YES)、物品管理サーバ10は、発注時期および発注数の組み合わせの候補を抽出する。具体的には、物品管理サーバ10は、発注コストおよび保管コストを加算したトータルコストが最も低い、発注時期および発注数の組み合わせを含んだ、複数の組み合わせの候補を抽出する(ステップS28)。
次に、物品管理サーバ10は、アラートが発生した全物品に対して処理を行ったか否かを判定する(ステップS29)。
アラートが発生した全物品に対して処理を行っていない場合(ステップS29;NO)、物品管理サーバ10は、ステップS21に戻り、次のアラートが発生したアイテムIDに基づき、予測出庫数を算出する。
アラートが発生した全物品に対して処理を行った場合(ステップS29;YES)、物品管理サーバ10は、発注数・コスト算出処理のサブルーチンを終了する。このとき、複数の発注時期および発注数の組み合わせの候補と、発注コスト、保管コスト、トータルコスト等を帰す。
(2.4 出庫パターン分類のサブルーチン)
次に、出庫パターン分類のサブルーチンについて、図10を用いて説明する。
図10は、出庫パターン分類のサブルーチンの一例を示すフローチャートである。
図10に示すように、物品管理サーバ10は、データ量が小又は出庫量が小であるか否かを判定する(ステップS30)。具体的には、物品管理サーバ10の制御部16が、パターンDB12cを参照して、累積出庫数のデータに対して、データ量が少ない(例えば、90日未満)か、または、出庫量が少ない(例えば、年間1,000個以下)かを判定して、傾向が不明となる場合を取り除く。
データ量が小又は出庫量が小である場合(ステップS30;YES)、傾向が不明として、物品管理サーバ10は、出庫パターン分類のサブルーチンを終了する。
データ量が小および出庫量が小でない場合のように、傾向が不明でない場合(ステップS30;YES)、物品管理サーバ10は、出庫パターンが階段型であるか否かを判定する(ステップS31)。具体的には、制御部16が、パターンDB12cを参照して、累積出庫数のデータに対して、所定の時間間隔(例えば、30日から60日)で、所定量(例えば、10から50等)の物品が出庫されているか否かを判定する。
出庫パターンが階段型である場合(ステップS31;YES)、物品管理サーバ10は、出庫パターンが階段型に分類され、出庫パターン分類のサブルーチンを終了する。
出庫パターンが階段型でない場合(ステップS31;NO)、物品管理サーバ10は、変化点アルゴリズム適用か否かを判定する(ステップS32)。具体的には、制御部16が、パターンDB12cを参照して、累積出庫数のデータに対して、所定日分の傾向期間を設け、傾向期間における傾向と直近の例えば30日のデータとが比較する変化点アルゴリズム適用可能か否かを判定する。
変化点アルゴリズム適用可能な場合(ステップS32;YES)、物品管理サーバ10は、変化点で分類する(ステップS33)。具体的には、制御部16が、パターンDB12cを参照して、累積出庫数のデータに対して、所定日分の傾向期間を設け、傾向期間における傾向と直近の30日のデータとが比較され、変化点アルゴリズム適用可能として、図5Bに示すように、直近の30日分の傾きが所定の範囲内ならば、一定傾向(直線的)パターンと判定、図5Cに示すように、急激に増加した場合、突発傾向のパターンと判定する。
変化点アルゴリズム適用できない場合(ステップS32;NO)、物品管理サーバ10は、回帰曲線適用で分類する(ステップS34)。具体的には、制御部16が、累積出庫数のデータに対して、ゴンペルツ曲線等の成長曲線を当てはめ、パラメータの値の範囲で分類する。例えば、図5Dから図5Fに示すように、累積出庫数のデータが分類される。
このように、物品管理サーバ10は、前記出庫数の傾向を第1分類方法で分類し、前記第1分類方法で分類できなかった前記出庫数の傾向を、第2分類方法で分類する出庫パターン分類手段の一例として機能する。
(2.5 初回または改訂の発注業務の動作例)
次に、発注量を求めたい任意の物品、例えば、過去に一度も発注されていない物品や、物品内容が改訂された物品に対して、初回または改訂の発注業務の動作例について、図11を用いて説明する。
図11は、初回または改訂の発注業務の動作例を示すフローチャートである。
図11に示すように、物品管理サーバ10は、仕様情報を取得する(ステップS40)。具体的には、物品管理サーバ10の制御部16が、初回または改訂された物品であって、発注量を求めたい任意の物品のアイテムIDに基づき、物品DB12aを参照して、図4に示すように、物品の仕様情報を取得する。
次に、物品管理サーバ10は、類似物品を検索する(ステップS41)。具体的には、制御部16が、物品の仕様情報の各項目の値に基づき、初回または改訂の物品でない、類似した物品を検索する。例えば、一致する項目の数が多い物品、各項目の値に対して、文字列の距離が近い物品等を、制御部16が、類似度順に抽出する。制御部16が、上位(例えば、10個)の類似度の類似物品を抽出してもよい。
なお、物品管理サーバ10は、各項目に重みを設けて、検索してもよい。
次に、物品管理サーバ10は、発注数・コストの算出処理を行う(ステップS42)。具体的には、制御部16が、類似物品の出庫パターンを選択し、類似物品の出庫パターンから、発注パターンを決定する。制御部16が、発注パターンを利用して、初回または改訂された物品の発注時期および発注数を算出する。制御部16が、発注コストと保管コストとに基づいて、シミュレーションして発注時期および発注数の候補を算出する。詳細は、発注数・コスト算出処理のサブルーチンで後述する。
次に、物品管理サーバ10は、ステップS4のように、発注数決定処理を行う(ステップS43)。
(2.6 初回または改訂の発注業務における発注数・コスト算出処理のサブルーチン)
次に、 初回または改訂の発注業務における発注数・コスト算出処理のサブルーチンについて図12を用いて説明する。
図12は、初回または改訂の発注業務における発注数・コスト算出処理のサブルーチンの一例を示すフローチャートである。
図12に示すように、物品管理サーバ10は、類似物品のアイテムIDを取得する(ステップS50)。具体的には、物品管理サーバ10の制御部16が、ステップS41で、類似と判定された類似物品のアイテムIDと、発注量を求めたい任意の物品のアイテムIDとを取得する。
次に、物品管理サーバ10は、ステップS21のように、発注量を求めたい任意の物品の予測出庫数を算出する(ステップS51)。なお、発注量を求めたい任意の物品に関するデータ数が少ない場合、類似物品の予測出庫数を利用してもよい。発注量を求めたい任意の物品の予測出庫数は、類似度上位の物品の平均予測出庫数でもよい。
次に、物品管理サーバ10は、類似物品の出庫パターンを取得する(ステップS52)。具体的には、制御部16が、類似物品のアイテムIDに基づき、出庫パターンを取得する。上位の類似物品の出庫パターンのうち、多数を占める出庫パターンが選択されてもよい。
次に、物品管理サーバ10は、ステップS23のように、発注パターンを決定する(ステップS53)。
次に、物品管理サーバ10は、ステップS24のように、発注時期および発注数を算出する(ステップS54)。なお、発注量を求めたい任意の物品に関するデータ数が少ない場合、このデータに対して、類似物品の出庫パターンをフィッティングして外挿したり、または類似物品の実データをフィッティングして外挿したりしてもよい。擬似的な発注量を求めたい任意の物品の累積出庫数のデータに対して、物品管理サーバ10は、ステップS24のように、発注時期および発注数を算出する。または、物品管理サーバ10は、類似物品の発注時期および発注数の実績値から、発注量を求めたい任意の物品の規模に合わせて、発注時期および発注数を算出してもよい。
次に、物品管理サーバ10は、発注コストを算出する(ステップS55)。具体的には、制御部16が、発注量を求めたい任意の物品のアイテムIDに基づき、物品管理DB12bを参照して、発注数毎の発注単価を読み出し、算出した各発注時期の発注数から、発注コストを算出する。
次に、物品管理サーバ10は、保管コストを算出する(ステップS56)。具体的には、制御部16が、算出された予測出庫数と、算出された発注時期および発注数とから、予測される在庫数の推移を算出する。制御部16が、発注量を求めたい任意の物品のアイテムIDに基づき、物品管理DB12bを参照して、保管単価を読み出し、算出された在庫数の推移から、保管コストを算出する。
次に、物品管理サーバ10は、ステップS27のように、発注時期および発注数の全ての組み合わせで計算を行ったかを判定する(ステップS57)。
発注時期および発注数の全ての組み合わせで計算を行っていない場合(ステップS57;NO)、物品管理サーバ10は、ステップS54に戻り、発注時期および発注数を所定の変動幅で変更する。
発注時期および発注数の全ての組み合わせで計算を行った場合(ステップS57;YES)、物品管理サーバ10は、ステップS28のように、発注時期および発注数の組み合わせの候補を抽出する。
以上、本実施形態によれば、所定の物品が出庫していく出庫数の傾向を、出庫パターンに分類して、分類された出庫パターンに応じて、物品を発注する発注パターンが決定され、決定された発注パターンと予測出庫数とから、発注時期および発注数を算出し、発注コストも算出しているので、物品の保管コスト以外に発注コストを含めたトータルでのコストを物品管理ができる。
さらに、各物品の発注コストと保管コストのトータルコストとにより、物品管理できる他に、各物品の出庫傾向、使用期限等を踏まえた判断で発注量を決定できる。
出庫パターンが、時間に対する出庫数の累積値である場合、出庫パターンを分類しやすくなる。
所定の物品に対する発注数に応じた所定の物品の単価に基づき、発注コストを算出する場合、物品の発注数に応じて単価が変化する場合を考慮して、トータルでのコストを物品管理できる。
発注パターンが、時間に対する発注数の累積値である場合、分類された出庫パターンに対して、適用しやすくなる。
出庫数の傾向を第1分類方法で分類し、第1分類方法で分類できなかった出庫数の傾向を、第2分類方法で分類する場合、効率的に、出庫パターンを分類できる。