(57)【特許請求の範囲】
【請求項１】
同一又は相異なる複数種の製品を作製するために引き当てる１種又は複数種の在庫品の引当数をそれぞれ決定する在庫引当装置であって、
前記製品ごとに１種又は複数種の在庫品の引当数をそれぞれ設定した各受注オーダは、それぞれ個別に、当該製品を作製するために必要となる在庫品の必要引当数と、引当可能な在庫品と、引当不可能な在庫品と、が予め設定されており、
前記各受注オーダのうちの任意の２つの受注オーダのいずれにも引当可能な在庫品の在庫数に基づいて類似度を定義し、全ての受注オーダにおける２つの受注オーダの全ての組合せに対してそれぞれ類似度を算出する類似度算出部と、
算出された前記類似度をクラスタ解析することにより各受注オーダをそれぞれ２以上のグループにグループ分けするグループ分割部と、
グループ分けされた各グループにおいて、在庫品を引当可能な各受注オーダの必要引当数の合計値を在庫品ごとに算出するグループ内必要引当数算出部と、
算出された前記合計値を在庫品ごとにグループ間で比較し、その必要引当数の合計値が大きいグループに属する受注オーダから順に当該在庫品を引き当てる引当数決定部と、を含む在庫引当装置。
【請求項２】
前記類似度算出部は、前記各受注オーダのうちの任意の２つの受注オーダのいずれにも引当可能な在庫品の在庫数の合計を類似度として、全ての受注オーダにおける２つの受注オーダの全ての組合せに対してそれぞれ類似度を算出する請求項１に記載の在庫引当装置。
【請求項３】
前記類似度算出部は、前記各受注オーダのうちの任意の２つの受注オーダのいずれにも引当可能な在庫品の在庫数に、当該在庫品を引き当てるべき優先度を乗じた値の合計を類似度として、全ての受注オーダにおける２つの受注オーダの全ての組合せに対してそれぞれ類似度を算出する請求項１に記載の在庫引当装置。
【請求項４】
前記類似度算出部は、前記各受注オーダのうちの任意の２つの受注オーダのいずれにも引当可能な在庫品の在庫数に、当該２つの受注オーダに対して当該在庫品を引き当てるべきそれぞれの優先度の和を乗じた値の合計を類似度として、全ての受注オーダにおける２つの受注オーダの全ての組合せに対してそれぞれ類似度を算出する請求項１に記載の在庫引当装置。
【請求項５】
前記グループ内必要引当数算出部は、グループ分けされた各グループにおいて、在庫品を引当可能な各受注オーダの必要引当数に、当該受注オーダに在庫品を引き当てるべき優先度を乗じた値の合計値を在庫品ごとに算出し、
前記引当数決定部は、前記算出された合計値を在庫品ごとにグループ間で比較し、その合計値が大きいグループに属する受注オーダから順に当該在庫品を引き当てる請求項１〜４のいずれか一項に記載の在庫引当装置。
【請求項６】
前記グループ内必要引当数算出部は、グループ分けされた各グループにおいて、在庫品を引当可能な各受注オーダの必要引当数に、当該受注オーダに対して当該在庫品を引き当てるべき優先度を乗じた値の合計値を在庫品ごとに算出し、
前記引当数決定部は、算出された合計値を在庫品ごとにグループ間で比較し、その合計値が大きいグループに属する受注オーダから順に当該在庫品を引き当てる請求項１〜４のいずれか一項に記載の在庫引当装置。
【請求項７】
同一又は相異なる複数種の製品を作製するために引き当てる１種又は複数種の在庫品の引当数をそれぞれ決定する在庫引当装置であって、
前記製品ごとに１種又は複数種の在庫品の引当数をそれぞれ設定した各受注オーダは、それぞれ個別に、当該製品を作製するために必要となる在庫品の必要引当数と、引当可能な在庫品と、引当不可能な在庫品と、が予め設定されており、
前記各在庫品のうちの任意の２つの在庫品のいずれにも引当可能な受注オーダの必要引当数に基づいて類似度を定義し、全ての在庫品における２つの在庫品の全ての組合せに対してそれぞれ類似度を算出する類似度算出部と、
算出された前記類似度をクラスタ解析することにより各在庫品をそれぞれ２以上のグループにグループ分けするグループ分割部と、
グループ分けされた各グループにおいて、受注オーダに引当可能な各在庫品の在庫数の合計値を受注オーダごとに算出するグループ内必要在庫数算出部と、
算出された前記合計値を受注オーダごとにグループ間で比較し、その在庫数の合計値が大きいグループに属する在庫品から順に当該在庫品を引き当てる引当数決定部と、を含む在庫引当装置。
【請求項８】
コンピュータによって実行され、同一又は相異なる複数種の製品を作製するために引き当てる１種又は複数種の在庫品の引当数をそれぞれ決定する在庫引当方法であって、
前記製品ごとに１種又は複数種の在庫品の引当数をそれぞれ設定した各受注オーダは、それぞれ個別に、当該製品を作製するために必要となる在庫品の必要引当数と、引当可能な在庫品と、引当不可能な在庫品と、が予め設定されており、
前記各受注オーダのうちの任意の２つの受注オーダのいずれにも引当可能な在庫品の在庫数に基づいて類似度を定義し、全ての受注オーダにおける２つの受注オーダの全ての組合せに対してそれぞれ類似度を算出する工程と、
算出された前記類似度をクラスタ解析することにより各受注オーダをそれぞれ２以上のグループにグループ分けする工程と、
グループ分けされた各グループにおいて、在庫品を引当可能な各受注オーダの必要引当数の合計値を在庫品ごとに算出する工程と、
算出された前記合計値を在庫品ごとにグループ間で比較し、その合計値が大きいグループに属する受注オーダから順に当該在庫品を引き当てる工程と、を含む在庫引当方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、製造業の工場で製品を製造するための複数の受注オーダに対して複数種の在庫品を引き当てる業務において、引当可能な在庫品の種類に一定の自由度がある場合に、在庫の汎用性（引当可能な受注オーダの幅）や生産性等の優先度を考慮して最適の在庫品の引当数の組合せを決定し得る在庫引当装置及び在庫引当方法に関する。
【背景技術】
【０００２】
設計製品の製造において、それぞれ仕様の異なる製品を作製する受注オーダに在庫品を引き当てる際には、オペレータが製品に対する在庫品の組み合わせを試行錯誤して、各製品に引き当てる各在庫品の種類及びその引当数を決定している。一般的には、それぞれの受注オーダに対して引当可能な在庫品と引当不可能な在庫品とが存在するので、その条件の下で、できるだけ汎用性の高い在庫品を手元に残しながら、納期の近い受注オーダを充足するように各在庫品の引当数を設定する。
【０００３】
このような在庫品の引当は、作製する製品の種類が少ない場合は、オペレータが複数の在庫品のうちから最適な在庫品の引当数の組合せを決定できるが、上記在庫品の種類数及び製品を作製する受注オーダの数が増えるにつれて、それら全てを満足するように各受注オーダに対して各在庫品の引当数を設定するための計算量は指数関数的に増加する。このため、受注オーダ及び在庫品の双方の選択肢が多い場合には、オペレータが、各製品を作製するために適した在庫品の引当数の組合せを設定することが困難になる。
【０００４】
そこで、上記選択肢の中から最適な在庫品の引当数の組合せを特定する方法として、例えば下記非特許文献１に開示の線形計画法、又はその解空間を整数に限定する整数計画法が考えられる。非特許文献１に開示の上記方法は、各製品を作製するための各在庫品の引当数に対し、各種の制約条件を考慮して評価関数を設定し、当該評価関数が最大となるように各製品を作製するための各在庫品の引当数を最適の値に設定することによって行う。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】数理計画法入門  森北出版  ２０１４年１１月出版（ＩＳＢＮ−１３：９７８−４６２７９２１８１８）
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記在庫品の引当業務においては、特定の受注オーダに対しては特定の在庫品を優先的に引き当てるべきという優先度が各受注オーダ及び各在庫品に対してそれぞれ個別に設定されていることもあるし、逆に特定の受注オーダに対して特定の在庫品を引き当ててはいけないという制約が課されることもある。このような優先度や制約を加味すると、各受注オーダに対して各在庫品の引当数を決定するための計算量はさらに膨大なものとなり、オペレータが手作業で各受注オーダに対する各在庫品の引当数の組合せの最適解を決定することは不可能に近い。
【０００７】
本発明は、上記現状に鑑みてなされたものであり、その目的は、従来よりもより簡便に各受注オーダに対して引き当てる各在庫品の引当数を決定することができる在庫引当装置及び在庫引当方法を提供することである。
【課題を解決するための手段】
【０００８】
本発明者らは、種々検討した結果、上記目的は、以下の本発明により達成されることを見出した。すなわち、本発明の一態様に係る在庫引当装置は、同一又は相異なる複数種の製品を作製するために引き当てる１種又は複数種の在庫品の引当数をそれぞれ決定する装置であって、前記製品ごとに１種又は複数種の在庫品の引当数をそれぞれ設定した各受注オーダは、それぞれ個別に、当該製品を作製するために必要となる在庫品の必要引当数と、引当可能な在庫品と、引当不可能な在庫品と、が予め設定されており、前記各受注オーダのうちの任意の２つの受注オーダのいずれにも引当可能な在庫品の在庫数に基づいて類似度を定義し、全ての受注オーダにおける２つの受注オーダの全ての組合せに対してそれぞれ類似度を算出する類似度算出部と、算出された前記類似度をクラスタ解析することにより各受注オーダをそれぞれ２以上のグループにグループ分けするグループ分割部と、グループ分けされた各グループにおいて、在庫品を引当可能な各受注オーダの必要引当数の合計値を在庫品ごとに算出するグループ内必要引当数算出部と、算出された前記合計値を在庫品ごとにグループ間で比較し、その必要引当数の合計値が大きいグループに属する受注オーダから順に当該在庫品を引き当てる引当数決定部と、を含む。
【０００９】
上記発明によれば、グループ分割部のクラスタ解析によって複数の受注オーダのうちの引当可能な在庫品が類似するもの同士の各受注オーダをグループごとにグループ分けすることができる。そして、上記グループのうちのどのグループに属する受注オーダに在庫品を引き当てるべきかの優先順位を決定するパラメータ（つまり必要引当数）をグループ内必要引当数算出部によって在庫品ごとに算出することができる。そして、このパラメータの値が大きいグループに属する受注オーダに対し各在庫品を優先的に引き当てることにより、従来よりも簡便に各受注オーダに対して各在庫品の引当数を決定することができる。
【００１０】
例えば各受注オーダ及び各在庫品の組合せをｎ個のグループに分割した場合、引当数を決定すべき各受注オーダ及び各在庫品の組合せ数を１／ｎに減らすことができ、従来よりも簡便に各在庫品の引当数を決定することができる。しかも、クラスタ解析によって互いに類似する受注オーダごとにグループ分けし、在庫品ごとにそのグループ間比較で優劣を比較して在庫品を引き当てるべきグループを特定するので、従来の引当数の決定方法と比べて、各受注オーダに対する各在庫品の引当数の組合せの解が劣化しにくい。
【００１１】
上記構成において、前記類似度算出部は、前記各受注オーダのうちの任意の２つの受注オーダのいずれにも引当可能な在庫品の在庫数の合計を類似度として、全ての受注オーダにおける２つの受注オーダの全ての組合せに対してそれぞれ類似度を算出することが好ましい。
【００１２】
上記構成によれば、２つの受注オーダに共通して引当可能な在庫品の在庫数の合計によって受注オーダの類似度を設定することができるので、グループ分割部のクラスタ解析によって共通して引当可能な在庫品を有する受注オーダ同士を同一のグループにグループ分けしやすくなる。そして、共通して引当可能な在庫品の在庫数が多い受注オーダに対して在庫品を引き当てやすくなるので、在庫数の多い在庫品を引き当てやすくすることができる。
【００１３】
上記構成において、前記類似度算出部は、前記各受注オーダのうちの任意の２つの受注オーダのいずれにも引当可能な在庫品の在庫数に、当該在庫品を引き当てるべき優先度を乗じた値の合計を類似度として、全ての受注オーダにおける２つの受注オーダの全ての組合せに対してそれぞれ類似度を算出することが好ましい。
【００１４】
上記構成によれば、在庫品を引き当てるべき優先度を加味して受注オーダの類似度を設定することができるので、グループ分割部のクラスタ解析によって優先度が高い在庫品を引当可能な受注オーダ同士を同一のグループにグループ分けしやすくなる。このようにグ
ループ分けされることにより、引当数決定部は優先度が高い在庫品を引当可能な受注オーダに対して在庫品を引き当てやすくなるので、優先度が高い在庫品ほど在庫品の引当数が大きくなるように各在庫品の引当数を決定することができる。これにより優先度が高い在庫品ほど引き当てられやすくなるので、優先度の高い在庫品が在庫として残りにくくなる。
【００１５】
上記構成において、前記類似度算出部は、前記各受注オーダのうちの任意の２つの受注オーダのいずれにも引当可能な在庫品の在庫数に、当該２つの受注オーダに対して当該在庫品を引き当てるべきそれぞれの優先度の和を乗じた値の合計を類似度として、全ての受注オーダにおける２つの受注オーダの全ての組合せに対してそれぞれ類似度を算出する。
【００１６】
上記構成によれば、各受注オーダ及び各在庫品にそれぞれ設定された優先度を加味して受注オーダの類似度が設定されるので、優先度が高い在庫品ほど、優先度が高い受注オーダほど、各在庫品の引当数が大きくなるように各在庫品の引当数を設定することができる。これにより優先度が高い在庫品ほど引き当てられやすくなるので、優先度の高い在庫品が在庫として残りにくくなるし、優先度が高い受注オーダほど在庫品が引き当てられやすくなるので、優先度の高い受注オーダほどその必要引当数を充足するように各在庫品の引当数を決定することができる。
【００１７】
上記構成において、前記グループ内必要引当数算出部は、グループ分けされた各グループにおいて、在庫品を引当可能な各受注オーダの必要引当数に、当該受注オーダに在庫品を引き当てるべき優先度を乗じた値の合計値を在庫品ごとに算出し、前記引当数決定部は、前記算出された合計値を在庫品ごとにグループ間で比較し、その合計値が大きいグループに属する受注オーダから順に当該在庫品を引き当てることが好ましい。
【００１８】
上記構成によれば、在庫品を引き当てるべきグループ間の優先順位を在庫品ごとに設定するときに、各グループに属する受注オーダの必要引当数にそれぞれの受注オーダに在庫品を引き当てるべき優先度を加味してグループ間の優先順位を設定することができるので、優先度の高い受注オーダが属するグループ内の受注オーダに対して在庫品を引き当てやすくすることができる。
【００１９】
上記構成において、前記グループ内必要引当数算出部は、グループ分けされた各グループにおいて、在庫品を引当可能な各受注オーダの必要引当数に、当該受注オーダに対して当該在庫品を引き当てるべき優先度を乗じた値の合計値を在庫品ごとに算出し、前記引当数決定部は、算出された合計値を在庫品ごとにグループ間で比較し、その合計値が大きいグループに属する受注オーダから順に当該在庫品を引き当てることが好ましい。
【００２０】
上記構成によれば、どのグループに属する受注オーダに在庫品を引き当てるべきかというグループ間の優先順位を在庫品ごとに設定するときに、各グループに属する受注オーダの必要引当数にそれぞれの受注オーダに当該在庫品を引き当てるべき優先度を加味した合計値に基づいてグループごとに在庫品を引き当てるべき優先順位を設定することができる。これにより優先度の高い受注オーダが属するグループに対して優先度の高い在庫品を引き当てることができるようになるので、優先度の高い受注オーダが充足するように在庫品を引き当てやすくなるし、優先度の高い在庫品が引き当てられるので在庫として残りにくくなる。
【００２１】
本発明の他の一態様の在庫引当装置は、同一又は相異なる複数種の製品を作製するために引き当てる１種または複数種の在庫品の引当数をそれぞれ決定する装置であって、前記製品ごとに１種又は複数種の在庫品の引当数をそれぞれ設定した各受注オーダは、それぞれ個別に、当該製品を作製するために必要となる在庫品の必要引当数と、引当可能な在庫
品と、引当不可能な在庫品と、が予め設定されており、前記各在庫品のうちの任意の２つの在庫品のいずれにも引当可能な受注オーダの必要引当数に基づいて類似度を定義し、全ての在庫品における２つの在庫品の全ての組合せに対してそれぞれ類似度を算出する類似度算出部と、算出された前記類似度をクラスタ解析することにより各在庫品をそれぞれ２以上のグループにグループ分けするグループ分割部と、グループ分けされた各グループにおいて、受注オーダごとに引当可能な在庫品の在庫数の合計値を算出するグループ内必要在庫数算出部と、算出された前記合計値を受注オーダごとにグループ間で比較し、その受注オーダの必要引当数の合計値が大きいグループに属する在庫品から順に当該在庫品を引き当てる引当数決定部と、を含むものでもある。
【００２２】
上記発明によれば、グループ分割部のクラスタ解析によって各受注オーダに引当可能な在庫品が共通する在庫品同士をグループごとにグループ分けすることができる。そして、グループ内必要引当数算出部によって、上記グループのうちのどのグループに属する在庫品を各受注オーダに引き当てるべきかの優先順位を決定するパラメータ（在庫数）を受注オーダごとに算出することができる。このパラメータの値が大きいグループに属する在庫品を、各受注オーダに対して優先的に引き当てることにより、優先度の高い在庫品の引当数が高くなるように各在庫品の引当数が決定されるので、従来よりも簡便に各受注オーダに対して各在庫品を引き当てることができる。しかも、クラスタ解析によって異なる受注オーダに共通して引当可能な在庫品を当該在庫品ごとにグループ分けし、受注オーダごとにそのグループ間比較で優劣を比較して在庫品を引き当てるべきグループを特定するので、従来の引当数の決定方法と比べて、各受注オーダに対する各在庫品の引当数の組合せの解が劣化しにくい。
【００２３】
本発明の在庫引当方法は、コンピュータによって実行され、同一又は相異なる複数種の製品を作製するために引き当てる１種又は複数種の在庫品の引当数をそれぞれ決定するものであって、前記製品ごとに１種又は複数種の在庫品の引当数をそれぞれ設定した各受注オーダは、それぞれ個別に、当該製品を作製するために必要となる在庫品の必要引当数と、引当可能な在庫品と、引当不可能な在庫品と、が予め設定されており、前記各受注オーダのうちの任意の２つの受注オーダのいずれにも引当可能な在庫品の在庫数に基づいて類似度を定義し、全ての受注オーダにおける２つの受注オーダの全ての組合せに対してそれぞれ類似度を算出する工程と、算出された前記類似度をクラスタ解析することにより各受注オーダをそれぞれ２以上のグループにグループ分けする工程と、グループ分けされた各グループにおいて、在庫品を引当可能な各受注オーダの必要引当数の合計値を在庫品ごとに算出する工程と、算出された前記合計値を在庫品ごとにグループ間で比較し、その合計値が大きいグループに属する受注オーダから順に当該在庫品を引き当てる工程と、を含む。
【００２４】
上記発明によれば、クラスタ解析によって複数の受注オーダのうちの引当可能な在庫品が類似するもの同士の各受注オーダをグループごとにグループ分けすることができる。そして、上記グループのうちのどのグループに属する受注オーダに在庫品を引き当てるべきかの優先順位を決定するパラメータ（つまり必要引当数）を在庫品ごとに算出することができる。このパラメータの値が大きいグループに属する受注オーダに対し各在庫品を優先的に引き当てることにより、従来よりも簡便に各受注オーダに対して各在庫品の引当数を決定することができる。
【発明の効果】
【００２５】
本発明によれば、従来よりもより簡便に各受注オーダに対して引き当てる各在庫品の引当数を決定し得る在庫引当装置及び在庫引当方法を提供することができる。
【図面の簡単な説明】
【００２６】
【図１】実施形態１の在庫引当装置の構成を示す図である。
【図２】実施形態における在庫引当方法の手順を示すフローチャートである。
【図３】実施形態５の在庫引当装置の構成を示す図である。
【発明を実施するための形態】
【００２７】
以下、本発明にかかる実施形態を図面に基づいて説明する。なお、各図において同一の符号を付した構成は、同一の構成であることを示し、その説明を適宜省略する。
【００２８】
＜実施形態１：在庫引当装置＞
図１は、実施形態１の在庫引当装置の構成を示す図である。在庫引当装置１は、図１に示すように、入力部２と、出力部３と、記憶部４と、制御処理部５と、で構成されている。
【００２９】
入力部２は、制御処理部５に接続され、例えば在庫を引き当てる上で必要な各種データを在庫引当装置１に入力する機器であり、例えば、所定の機能を割り付けられた複数の入力スイッチ、キーボード、マウス等である。
【００３０】
出力部３は、制御処理部５に接続され、制御処理部５の制御に従って、入力部２から入力されたコマンドやデータを出力する機器であり、例えばＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）及び有機ＥＬディスプレイ等の表示装置、又はプリンタ等の印刷装置等である。
【００３１】
記憶部４は、制御処理部５に接続され、制御処理部５の制御に従って、各種の所定のプログラム及び各種の所定のデータを記憶する回路である。
【００３２】
上記各種の所定のプログラムは、例えば、当該在庫引当装置の各部を当該各部の機能に応じて制御する制御プログラム、２つの受注オーダ間の類似度を算出する類似度演算プログラム、算出された類似度情報に基づいて各受注オーダをそれぞれ２以上のグループにグループ分けするクラスタ解析プログラム、グループごとに複数種の在庫品の引当数を決定する在庫引当プログラム等の制御処理プログラムが含まれる。
【００３３】
上記各種の所定のデータには、受注オーダに関する情報を記憶する受注オーダ情報データベース４１、在庫品に関する情報を記憶する在庫品情報データベース４２、各受注オーダに対する各在庫品の引当数を決定するために必要な情報を記憶する引当条件データベース４３等が含まれる。
【００３４】
上記受注オーダ情報データベース４１に記憶される受注オーダに関する情報とは、例えば受注オーダによって作製される製品の価格、用途、機能、受注オーダの納期及び受注オーダを充足するために必要となる引当数、並びに在庫品を引き当てるべき各受注オーダの優先度等である。受注オーダに関する上記各種の情報は、時期や状況によって変動するので、例えば週１回又は月１回等のペースで更新される。このように更新された各種情報は、ユーザが入力部２に入力することによって記憶部４の各データベースに保管される。
【００３５】
上記在庫品情報データベース４２に記憶される在庫品に関する情報とは、例えば在庫品ロット番号、在庫数、有効期限、大きさ、材質、機能、用途、仕様及び検査結果、受注オーダに引き当てるべき各在庫品の優先度等である。在庫品に関する情報も、上記受注オーダに関する情報と同様、時期や状況によって変動するので、例えば週１回又は月１回等のペースで更新される。このような各種情報の更新は、ユーザが入力部２に入力することによって記憶部４の各データベースに保管される。
【００３６】
上記引当条件データベース４３に記憶される各受注オーダに対する各在庫品の引当数を
決定するための必要な情報とは、例えば各受注オーダと各在庫品との組合せに対して引当可能か否かをそれぞれ「０」又は「１」で設定した引当可否情報である。引当可否情報は、上記各種情報の更新に伴って変更される。また、引当可否情報以外の各種の制約条件が設定されている場合にも、この引当条件データベース４３に各種の制約条件が記憶される。
【００３７】
記憶部４は、例えば不揮発性の記憶素子であるＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）や書き換え可能な不揮発性の記憶素子であるＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）等を備える。そして、記憶部４は、前記所定のプログラムの実行中に生じるデータ等を記憶するいわゆる制御処理部５のワーキングメモリとなるＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等を備える。また、記憶部４は、例えばハードディスク等の比較的大容量の記憶装置を備えて良い。
【００３８】
制御処理部５は、在庫引当装置１の各部を当該各部の機能に応じて制御し、複数種の製品を作製するための各在庫品の引当数を決定するための回路であり、例えば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）及びその周辺回路を備えて構成される。制御処理部５には、記憶部４に記憶されている制御処理プログラムが実行されることによって、図１に示すように、制御部５１、データ読込部５２、類似度算出部５３、グループ分割部５４、グループ内必要引当数算出部５５及び引当数決定部５６が機能的に構成される。
【００３９】
制御部５１は、在庫引当装置１の各部を当該各部の機能に応じてそれぞれ制御するものである。
【００４０】
データ読込部５２は、受注オーダ情報データベース４１に格納された受注オーダに関する情報（例えば納期、受注数等）を読み込むとともに在庫品情報データベース４２に格納された在庫品に関する情報（例えば在庫数）を読み込む。さらに、データ読込部５２は、引当条件データベース４３に格納された引当可否情報を読み込む。ここでの引当可否情報は、各受注オーダに対して引当可能な在庫品と、引当不可能な在庫品とがそれぞれ予め設定されたものである。データ読込部５２で読み込まれた各種データは、制御部５１によって組み合わされて引当数組合せ問題が作成される。この引当数組合せ問題は、少なくとも、各受注オーダに引き当てるべき各在庫品の必要引当数、各在庫品の在庫数、及び各受注オーダに対し在庫品を引当可能か否かを設定した引当可否情報を含むものであり、これらの情報に加え、個別に各種の制約条件や受注オーダの優先度、及び在庫品の優先度が設定されていてもよい。なお、後述する実施形態２〜４において、各在庫品に優先度が設定されている場合、各受注オーダに優先度が設定されている場合、及び、在庫品及び各受注オーダの双方に優先度が設定されている場合をそれぞれ説明する。
【００４１】
類似度算出部５３は、データ読込部５２によって読み込んだ各受注オーダのうちの任意の２つの受注オーダのいずれにも引当可能な在庫品の在庫数の合計を類似度として、全ての受注オーダのうちの２つの受注オーダの全ての組合せに対してそれぞれ類似度を算出する。データ読込部５２がｎ個の受注オーダを読み込む場合、類似度算出部５３は、ｎ個の受注オーダのうちから任意に２つの受注オーダを選択した全nＣ2、つまり｛ｎ×（ｎ−１）／２｝通りの２つの受注オーダの類似度をそれぞれ算出する。例えば、データ読込部５２が５種の受注オーダを読み込んだ場合には、類似度算出部５３は５種の受注オーダのうちの任意の２つの受注オーダを選択した全１０（5Ｃ2）通りの２つの受注オーダの類似度をそれぞれ算出する。
【００４２】
グループ分割部５４は、上記で算出された類似度をクラスタ解析することにより各受注
オーダをそれぞれ２以上のグループにグループ分けする。クラスタ解析は、グループ分けしたい特定の集団に属する要素のうちの任意の２つの要素間における類似度をそれぞれ数値化することで、互いに類似度の近い要素ごとに各要素をグループ分けする技術であり、例えば、統計解析用のスクリプト言語であるＲ言語に実装されている。上記クラスタ解析のためのアルゴリズムは、技術文献（Ｃｓａｒｄｉ，  Ｇａｂｏｒ，  ａｎｄ  Ｔａｍａｓ  Ｎｅｐｕｓｚ．  「Ｔｈｅ  ｉｇｒａｐｈ  ｓｏｆｔｗａｒｅ  ｐａｃｋａｇｅ  ｆｏｒ  ｃｏｍｐｌｅｘ  ｎｅｔｗｏｒｋ  ｒｅｓｅａｒｃｈ．“  ＩｎｔｅｒＪｏｕｒｎａｌ，  Ｃｏｍｐｌｅｘ  Ｓｙｓｔｅｍｓ  １６９５．５  （２００６）：  １−９」）に示されており、Ｒ言語上のライブラリパッケージであるｉＧｒａｐｈ上に実装されている。
【００４３】
クラスタ解析を用いて関連性の高い受注オーダごとにグループ分けする上で、２つの受注オーダ間の類似度（距離）をどのように設定するかが重要になるが、本実施形態では、引当数組合せ問題に含まれる各受注オーダのうちの任意の２つの受注オーダに共通して引当可能な在庫品の在庫数の合計値を２つの受注オーダの類似度として算出している。このように算出した類似度をクラスタ解析に適用することで、共通して引当可能な在庫品を有する受注オーダごとに各受注オーダをグループ分けすることができる。言い換えると、互いに引当可能な在庫品が共通する受注オーダ同士が同じグループに属しやすくなり、互いに引当可能な在庫品が共通しない受注オーダ同士が別のグループに属しやすくなる。このようにグループ分けされることで、同一のグループに属する受注オーダ間で在庫品の引当数を調整しやすくなるので、受注オーダに対して在庫品を引き当てやすくなる。そして、引当可能な受注オーダを含むグループに属する受注オーダに対し、在庫品を優先的に引き当てることにより、在庫品を引き当てる計算量を低減することが可能となる。
【００４４】
グループ内必要引当数算出部５５は、グループ分けされた各グループにおいて、在庫品を引当可能な各受注オーダの必要引当数の合計値を在庫品ごとに算出する。例えば上記グループ分割部５４によって、各受注オーダがグループＡとグループＢとの２グループにグループ分けされた場合、グループ内必要引当数算出部５５は、グループＡに属する各受注オーダに対し引当可能な在庫品の受注オーダの必要引当数の合計値を在庫品ごとに算出するとともにグループＢに属する各受注オーダに対し引当可能な在庫品の受注オーダの必要引当数の合計値を在庫品ごとに算出する。
【００４５】
引当数決定部５６は、上記で算出された各合計値を在庫品ごとにグループ間で比較し、その必要引当数の合計値が大きいグループに属する受注オーダから順に当該在庫品を引き当てる。上記グループＡ及びグループＢの２グループに分割された場合の例では、グループＡに属する各受注オーダに対し引当可能な在庫品Ｘの受注オーダの必要引当数の合計値と、グループＢに属する各受注オーダに対し引当可能な在庫品Ｘの受注オーダの必要引当数の合計値とを比較し、その必要引当数の合計値が大きい方のグループに属する受注オーダに対して在庫品を引き当てる。同一グループに属する各受注オーダへの在庫品の引当数の決定順序は特に限定されず、任意の受注オーダの順序で各受注オーダへの在庫品の引当数を決定することができる。
【００４６】
このように各在庫品においてグループ間で必要引当数の合計の大小を比較してその最大となるグループに属する受注オーダに在庫品を引き当てることで、必要引当数の合計値が小さいグループに属する受注オーダに在庫品を引き当てる計算を後回しにできるので、各在庫品の引当数の決定のための計算量を減らすことができ、各在庫品の引当数を決定するための計算時間を短縮することができる。グループＡとグループＢの２グループにグループ分割された上記例では、グループＡ又はＢのいずれか一方のグループに属する受注オーダに対して優先的に在庫品を引き当てるので、引当数を決定するための計算が必要となる在庫品と受注オーダとの組合せ数を半減することができる。実際の計算量の減少量は、引
当数を決定する計算アルゴリズムによって異なるが、一般的な最適計算アルゴリズムを用いる場合、引当数を決定すべき在庫品と受注オーダとの組合せ数の２乗程度の計算量が必要となるので、上記引当数を決定すべき在庫品と受注オーダとの組合せ数を半減することで、その引当数を決定する計算量を１／４程度にすることができる。上記計算の減少量は、グループ分割部５４によって分割されたグループ数に応じ、グループ数が２、３、４と増えるにつれて、計算の減少量は１／２、１／３、１／４に計算アルゴリズムの計算量の組合せ数を乗じた数だけ減少させることができる。つまり計算量を減らす上では、グループ分割部５４によって分割されるグループ数が増えるほど引当数を決定するための計算量を減らすことができる。
【００４７】
このような在庫引当装置１は、例えばパーソナルコンピュータ等のコンピュータによって構成されてよいし、また例えば、処理サーバ装置、データサーバ装置及び入出力端末装置を互いに通信可能に備えたシステムで構成されてもよい。
【００４８】
（在庫引当方法）
次に、本実施形態の在庫引当装置による在庫引当方法について説明する。図２は、実施形態における在庫引当方法の手順を示すフローチャートである。上記在庫引当装置１を用いた在庫引当方法は、同一又は相異なる複数種の製品を作製するための各受注オーダに対し、１種又は複数種の在庫品の引当数を設定した引当数組合せ解を決定するものであり、オペレータが在庫引当装置１に対し在庫引当処理の実行を指示したタイミングで、制御処理部５が図２のスタートの処理に進む。
【００４９】
図２のスタートの処理では、制御処理部５が必要な各部の初期化を実行し、制御処理プログラムの実行によって、制御処理部５には、制御部５１、データ読込部５２、類似度算出部５３、グループ分割部５４、グループ内必要引当数算出部５５、及び引当数決定部５６等がそれぞれ機能的に構成される。
【００５０】
上記在庫引当装置は、各受注オーダに対する各在庫品の引当数の決定に関して、大略、図２に示す各ステップＳ１〜Ｓ５のように動作する。
【００５１】
まず、制御処理部５は、データ読込部５２によって、受注オーダ情報データベース４１に格納されている受注オーダに関するデータ、在庫品情報データベース４２に格納されている在庫品に関するデータ、及び引当条件データベース４３に格納されている引当可否情報に関するデータを読み込む（ステップＳ１）。制御部５１は、データ読込部５２によって読み込まれた各種データに基づいて引当数組合せ問題を作成する。ここでの引当数組合せ問題は、引当処理が必要な受注オーダ、引当可能な在庫品、各受注オーダに引き当てる必要がある在庫品の必要引当数、各在庫品の在庫数、及び各受注オーダに各在庫品を引当可能か否かを示す引当可否条件等の各種情報を含む。
【００５２】
次に、制御処理部５は、類似度算出部５３によって、上記ステップＳ１で読み込んだ各受注オーダのうちの任意の２つの受注オーダのいずれにも引当可能な在庫品の在庫数の合計を類似度として、全ての受注オーダにおける２つの受注オーダの全ての組合せに対してそれぞれ類似度を算出する（ステップＳ２）。
【００５３】
次いで、制御処理部５は、グループ分割部５４によって、算出された類似度をクラスタ解析することにより各受注オーダをそれぞれ２以上のグループにグループ分けする（ステップＳ３）。
【００５４】
次に、制御処理部５は、グループ内必要引当数算出部５５によって、グループ分けされた各グループにおいて、在庫品を引当可能な各受注オーダの必要引当数の合計値を在庫品
ごとに算出する（ステップＳ４）。
【００５５】
最後に、制御処理部５は、引当数決定部５６によって、上記で算出された在庫品ごとの必要引当数の和をグループ間で比較し、その必要引当数の和の値が大きいグループに属する受注オーダから順に当該在庫品の引当数を決定する（ステップＳ５）。これにより各受注オーダに引き当てられる在庫品の引当数を定めた引当数組合せ解が設定される。この引当数組合せ解が決定されることで、制御処理部５は処理を終了する（エンド）。
【００５６】
以上のようにして、各受注オーダに引き当てるべき在庫品の引当数を決定することにより引当数組合せ問題に対する引当数組合せ解が設定される。このように引当数組合せ解を設定することにより、従来よりも簡便に各受注オーダに対する各在庫品の引当数を決定することができる。
【００５７】
＜実施形態２：在庫引当装置＞
本実施形態は、上記実施形態１に対して各在庫品にそれぞれ個別の優先度が定められていることが異なる他は実施形態１と同様のものである。ここで、各在庫品の優先度は、受注オーダに在庫品を引き当てるべき順序を各在庫品の条件に合わせて数値化したパラメータであり、各在庫品の在庫数、品質、原材料、有効期限、用途、形状等の諸特性に応じて設定される。優先度が高い在庫品ほど優先的に受注オーダに引き当てられるべき在庫品であることを表し、例えば在庫品の在庫数が多い場合、在庫品の有効期限が迫っている場合、在庫品の形状が特殊で用途が限定されている場合には、その在庫品の優先度が高くなる。逆に在庫品の汎用性が高く、あらゆる受注オーダに引当可能な場合は、その在庫品の優先度は低くなる。在庫管理の観点からは、優先度の高い在庫品の引当数を多くするほど好ましく、優先度の低い在庫品をいかに手元に残すか（つまり引当数を小さくするか）もまた重要となる。換言すると、使いにくい在庫品をなるべく引き当てつつ、汎用性の高い在庫品を手元に残しておくことが好ましい。
【００５８】
このように各在庫品に個別の優先度が定められることに伴って、類似度算出部５３では上記優先度を加味して受注オーダ間の類似度が算出される。以下では、実施形態１に対する変更部分である類似度算出部５３のみを説明する。
【００５９】
類似度算出部５３は、データ読込部５２によって読み込んだ各受注オーダのうちの任意の２つの受注オーダのいずれにも引当可能な在庫品の在庫数に、当該在庫品を引き当てるべき優先度を乗じた値の合計を類似度として、全ての受注オーダにおける２つの受注オーダの全ての組合せに対してそれぞれ類似度を算出する。
【００６０】
データ読込部５２がｎ個の受注オーダを読み込む場合、類似度算出部５３は、ｎ個の受注オーダのうちから任意に２つの受注オーダを選択した全nＣ2通り（つまり｛ｎ×（ｎ−１）／２｝種類）の２つの受注オーダのいずれにも引当可能な在庫数をそれぞれ算出し、当該各在庫品の在庫数のそれぞれに対し、それぞれの在庫品の優先度を乗じた値の合計を類似度として算出する。
【００６１】
本実施形態のように２つの受注オーダのいずれにも引当可能な在庫品の在庫数に当該在庫品の優先度を乗じた値を２つの受注オーダ間の類似度とすることにより、優先度の高い在庫品を引当可能な２つの受注オーダ同士の類似度が高くなるので、続くグループ分割部５４において、共通して引当可能な優先度の高い在庫品の受注オーダが同一のグループに属するようにグループ分けされやすくなるし、その後の引当数決定部５６によって、当該グループに属する受注オーダに対し、優先度の高い在庫品を引き当てやすくすることができる。このように優先度の高い在庫品ほど受注オーダに引き当てられやすくなるので、優先度の高い在庫品を手元に残すことなく（つまりいずれかの受注オーダに引き当てられる
ように）各在庫品の引当数を決定することが可能となる。
【００６２】
＜実施形態３：在庫引当装置＞
本実施形態は、上記実施形態１に対して各受注オーダにそれぞれ個別の優先度が定められていることが異なる他は実施形態１と同様のものである。ここで、各受注オーダの優先度は、在庫品を引き当てるべき受注オーダの優先度合を数値化したパラメータであり、受注オーダの納期並びにその受注オーダによって作製される製品の要求性能、仕様及び用途等の諸条件に応じて設定される。優先度が高い受注オーダほどその必要引当数を満たすように在庫品を引き当てるべき受注オーダであることを意味し、例えば受注オーダの納期が近い場合、製品の要求性能が高い場合、製品の仕様が限定的である場合には、受注オーダの優先度が高くなる。逆にあらゆる在庫品を引当可能な受注オーダの場合や納期に余裕がある場合には、その受注オーダの優先度は低くなる。引当数組合せ問題において、在庫管理の観点からは必要引当数を満たす受注オーダが多くなるように各在庫品の引当数を決定することが好ましく、優先度の高い受注オーダの必要引当数を満たすように引当数を決定することがより好ましい。
【００６３】
このように各受注オーダに対しそれぞれ個別の優先度が定められることに伴って、グループ内必要引当数算出部５５では、上記優先度を加味して各グループに属する各受注オーダに在庫品を引き当てるべき必要引当数合計が算出される。以下では、実施形態１に対する変更部分であるグループ内必要引当数算出部５５及び引当数決定部５６のみを説明する。
【００６４】
グループ内必要引当数算出部５５は、グループ分けされた各グループにおいて、在庫品を引当可能な各受注オーダの必要引当数に、当該受注オーダに在庫品を引き当てるべき優先度を乗じた値の合計値を在庫品ごとに算出する。このように算出される合計値は、各受注オーダの必要引当数に対し受注オーダの優先度が重みづけされたものとなる。
【００６５】
引当数決定部５６は、グループ内必要引当数算出部５５で算出された上記各合計値を在庫品ごとにグループ間で比較し、その合計値が大きいグループに属する受注オーダから順に当該在庫品を引き当てる。上記グループ内必要引当数算出部５５で算出された合計値は、受注オーダの優先度が重みづけされたものとなっているので、引当数決定部５６がグループ間で上記合計値を比較する時には、優先度の高い受注オーダが属するグループほど合計値が大きくなる。これにより当該優先度の高い受注オーダほど在庫品の引当数が多くなるように各在庫品を引き当てることができる。
【００６６】
＜実施形態４：在庫引当装置＞
本実施形態は、実施形態２及び３を組み合わせたもの、つまり上記実施形態１に対して各受注オーダ及び各在庫品の双方にそれぞれ個別の優先度が定められていることが異なる他は実施形態１と同様のものである。各受注オーダ及び各在庫品のそれぞれに優先度が定められている場合には、各受注オーダの優先度と各在庫品の優先度とをそれぞれ加算したもの又は乗算したものを各受注オーダに対する各在庫品の組合せの優先度とする。
【００６７】
例えば製品に関する各種条件に基づいて１〜１０点の１０段階評価で受注オーダの優先度が設定され、かつ在庫品に関する各種条件に基づいて１〜１０点の１０段階評価で在庫品の優先度が設定される場合、各受注オーダ及び各在庫品の双方の優先度を単純に積算することによって各受注オーダーに対する各在庫品の優先度を１〜１００までの値でそれぞれ設定することができる。
【００６８】
このように各受注オーダ及び各在庫品の組合せに対しそれぞれ個別の優先度が定められることにより、各受注オーダ及び各在庫品の双方の優先度を加味して、各グループに属す
る各受注オーダの必要引当数の合計値が算出される。以下では、実施形態１に対する変更部分である類似度算出部５３、グループ内必要引当数算出部５５及び引当数決定部５６をそれぞれ説明する。
【００６９】
類似度算出部５３は、各受注オーダのうちの任意の２つの受注オーダのいずれにも引当可能な在庫品の在庫数に、当該２つの受注オーダに対して当該在庫品を引き当てるべきそれぞれの優先度の和を乗じた値の合計を類似度として、全ての受注オーダにおける２つの受注オーダの全ての組合せに対してそれぞれ類似度を算出する。このように類似度を算出することにより、２つの受注オーダに対して引当可能な在庫品の在庫数に対し、各受注オーダそれぞれの優先度が加味された値を類似度として算出することができる。このように算出された類似度を用いることにより、後のグループ分割部５４によるグループ分割において、各受注オーダそれぞれの優先度を加味して各受注オーダをグループ分割することができる。
【００７０】
グループ分割部５４は、上記実施形態１と同様、上記類似度に基づいてクラスタ解析することによって各受注オーダをグループごとに分割する。
【００７１】
グループ内必要引当数算出部５５は、グループ分けされた各グループにおいて、在庫品を引当可能な各受注オーダの必要引当数に、当該受注オーダに対して当該在庫品を引き当てるべき優先度を乗じた値の合計値を在庫品ごとに算出する。例えば、在庫品Ｘを引当可能な受注オーダとして受注オーダｂ、ｃがグループＡに属する場合には、受注オーダｂの必要引当数に、受注オーダｂに対して在庫品Ａを引き当てるべき優先度を乗じた値と、受注オーダｃの必要引当数に、受注オーダｃに対して在庫品Ｘを引き当てるべき優先度を乗じた値とを加算又は乗算することによってグループＡ内における在庫品Ｘの合計値を算出する。このように算出された合計値は、在庫品Ａの優先度並びに受注オーダｂ及びｃの優先度が加味されたものとなる。
【００７２】
引当数決定部５６は、上記実施形態１と同様に、グループ内必要引当数算出部５５で算出された合計値を在庫品ごとにグループ間で比較し、その合計値が大きいグループに属する受注オーダから順に当該在庫品を引き当てる。
【００７３】
上記グループ内必要引当数算出部５５で算出された合計値は、受注オーダの優先度と在庫品の優先度とが組み合わさって重みづけされたものとなっているので、引当数決定部５６がグループ間で上記合計値を比較する時には、優先度の高い受注オーダが属するグループほど上記合計値が大きくなりやすくなるし、優先度の高い在庫品ほど受注オーダに引き当てられやすくなる。これにより優先度の高い受注オーダの必要引当数を満たすように各在庫品を引き当てることができるし、優先度の高い在庫品ほど在庫品の引当数が多くなるように引当数を設定することができる。
【００７４】
＜実施形態５：在庫引当装置＞
上記実施形態１〜４においては、各受注オーダの類似度に基づいて各受注オーダをグループ分けしていたが、本実施形態では、在庫品の類似度に基づいて各在庫品をグループ分けする。本実施形態のように各在庫品をグループ分けすることによっても、上記各実施形態と同様、従来よりも簡便に各受注オーダに対する各在庫品の引当数を決定することができる。以下においては、実施形態１と同一の部分については説明を繰り返さず、実施形態１と異なる部分のみ説明する。
【００７５】
図３は、実施形態５の在庫引当装置の構成を示す図である。本実施形態の在庫引当装置は、図３に示すように、実施形態１の在庫引当装置のグループ内必要引当数算出部５５に代えてグループ内必要在庫数算出部５５’を設けたことが異なる他は実施形態１の在庫引
当装置と同一の構成を有している。本実施形態では、類似度算出部５３、グループ分割部５４及び引当数決定部５６においても実施形態１〜４とは異なる作業を実行する。
【００７６】
類似度算出部５３は、各在庫品のうちの任意の２つの在庫品のいずれにも引当可能な受注オーダの必要引当数の合計を類似度として、全ての在庫品における２つの在庫品の全ての組合せに対してそれぞれ類似度を算出する。
【００７７】
グループ分割部５４は、算出された前記類似度をクラスタ解析することにより各在庫品をそれぞれ２以上のグループにグループ分けする。
【００７８】
グループ内必要在庫数算出部５５’は、グループ分けされた各グループにおいて、受注オーダごとに引当可能な在庫品の在庫数の合計値を算出する。
【００７９】
引当数決定部５６は、上記グループ内必要在庫数算出部５５’で算出された前記合計値を受注オーダごとにグループ間で比較し、その在庫品の在庫数の合計値が大きいグループに属する在庫品から順に当該在庫品を引き当てる。
【００８０】
本実施形態によれば、グループ分割部５４のクラスタ解析によって引当可能な在庫品が類似する在庫品同士をグループごとにグループ分けすることができる。そして、グループ内必要在庫数算出部５５’によって、上記グループのうちのどのグループに属する在庫品を各受注オーダに引き当てるべきかの優先順位を決定するパラメータ（在庫数の合計値）を受注オーダごとに算出することができる。当該パラメータの値が大きいグループに属する在庫品を各受注オーダに対して優先的に引き当てることにより、在庫品の引当数を簡便に設定することができる。
【実施例】
【００８１】
（実施例１）
本実施例では、本発明の在庫引当方法を用いて１０種類の受注オーダＪ００１〜Ｊ０１０に対して１０種類の在庫品Ｉ００１〜Ｉ０１０の引当数をそれぞれ引き当てる場合を説明する。まず、受注オーダ、在庫品、必要引当数及び在庫数をそれぞれ説明するために、本実施例の在庫引当方法によって引当が完了した引当数組合せ解を表１に示す。表１は、上記実施形態の在庫引当方法によって各受注オーダーＪ００１〜Ｊ０１０に引き当てる各在庫品Ｉ００１〜Ｉ０１０の引当数を設定した引当数組合せ解である。
【００８２】
【表１】
0006647966.tif 000002
各受注オーダはそれぞれ、表１の縦の列に相当し、各製品を作製するために引き当てる在庫品の引当数を設定したものである。例えば表１における受注オーダＪ００２には、９個の在庫品Ｉ００３と、５個の在庫品Ｉ００５とをそれぞれ引き当てることが設定されている。
【００８３】
各受注オーダに対してはそれぞれ個別に必要引当数が設定されている。必要引当数は、受注オーダによって製品を作製するために必要とされる各在庫品の引当数の合計を意味し、例えば表１では、受注オーダＪ００２の必要引当数が１４であるので、在庫品Ｉ００１〜Ｉ０１０の引当数の合計を１４とすることで当該受注オーダＪ００１を充足させることができる。
【００８４】
上記表１において、受注オーダＪ００１〜Ｊ００９の必要引当数は各在庫品の引当数の合計と一致しているので受注オーダＪ００１〜Ｊ００９は充足している。他方、受注オーダＪ０１０の必要引当数（４）は、受注オーダＪ０１０の各在庫品の引当数の合計（３）を上回っているので、受注オーダＪ０１０は充足していない。ただし、未充当の受注オー
ダＪ０１０を含む場合でも表１の引当数組合せ解を有効なものとして扱う。なぜなら、現実問題として在庫品の在庫数が足りないことにより１以上の受注オーダの必要引当数を充足させ得ない場合でも、不足している在庫品が新たに納入され次第、当該在庫品の不足分を引き当てる処理を行い得るからである。
【００８５】
各在庫品の引当数の合計が、受注オーダの必要引当数を上回っている場合は、当該受注オーダに引き当てられたいずれかの在庫品の引当数を減算し、受注オーダの必要引当数と各在庫品の引当数の合計とを同値とする必要がある。受注オーダが必要とする引当数よりも過剰量の在庫品の引当数を引き当てる必要はないからである。
【００８６】
在庫品は、同一の製造日時、製造場所、幅、長さ、重量及び各種性能等の属性に応じて個別のロット番号（管理番号）を付されたものであり、表１の横の列が各受注オーダに対して引き当てる在庫品の引当数を設定したものに相当する。例えば表１における在庫品Ｉ００２は、受注オーダＪ００３に５個の在庫品、受注オーダＪ００４に５個の在庫品がそれぞれ引き当てられている。
【００８７】
各在庫品に対してはそれぞれ個別に在庫数が設定されており、例えば表１においては、在庫品Ｉ００１の在庫数は１１であることから、各受注オーダに対して最大１１の在庫品を引き当てることができる。各受注オーダに対して引き当てる特定の１種の在庫品の引当数の合計が、当該在庫品の在庫数を超えている場合は、いずれかの受注オーダに対して引き当てる上記在庫品の引当数を減算することにより、当該在庫品の引当数の合計を在庫品の在庫数以下に調整する必要がある。在庫品の在庫数を上回る引当数を確保することはできないからである。以下に、本実施例の在庫引当方法をステップごとに以下に説明する。
【００８８】
（ステップＳ１：データ読込工程）
まず、ステップＳ１において、制御処理部５は、データ読込部５２によって、受注オーダ情報データベース４１に格納されている受注オーダの必要引当数と、在庫品情報データベース４２に格納されている在庫品の在庫数と、引当条件データベース４３に格納されている上記表２の引当可否情報とをそれぞれ読み込む（Ｓ１）。これらの情報をデータ読込部５２で読み込むことによって、制御処理部５は、下記の表２に示す引当数組合せ問題を作成する。これによりステップＳ１は完了し、制御処理部５はステップＳ２の処理に進む。
【００８９】
【表２】
0006647966.tif 000003
表２は、データ読込部５２によって読み込まれた各種情報を組み合わせて作成された引当数組合せ問題であり、上記表２の引当数組合せ問題において、各受注オーダに対し引当可能な在庫品に「１」を表記し、引当不可の在庫品に「０」を表記している。従って、例えば表２における受注オーダＪ００１は、在庫品Ｉ００１、Ｉ００２、Ｉ００５、Ｉ００６、Ｉ００９が引当可能であり、在庫品Ｉ００３、Ｉ００４、Ｉ００７、Ｉ００８、Ｉ０１０が引当不可能であることを示している。本実施例の在庫引当方法では、表２における各受注オーダに対してそれぞれ引当可能な各在庫品を（つまり表２中の「１」と示される各受注オーダに対する各在庫品を）、それぞれの受注オーダに定められた必要引当数を満たす引当数だけ在庫品を引き当てる。
【００９０】
（ステップＳ２：類似度算出工程）
次に、ステップＳ２において、制御処理部５は、類似度算出部５３によって、上記読み込んだ引当数組合せ問題において、各受注オーダのうちの任意の２つの受注オーダのいずれにも引当可能な在庫品の在庫数の合計を類似度として、全ての受注オーダにおける２つの受注オーダの全ての組合せに対してそれぞれ類似度を算出する（Ｓ２）。例えば受注オ
ーダＪ００１と受注オーダＪ００２との類似度は、表２により受注オーダＪ００１及びＪ００２のいずれにも引当可能な在庫品Ｉ００５の在庫数１３と算出される。
【００９１】
同様に、受注オーダＪ００１と受注オーダＪ００３との類似度は、受注オーダＪ００１及びＪ００２のいずれにも引当可能な在庫品Ｉ００１、Ｉ００２、Ｉ００６及びＩ００９の在庫数の合計３１（１１＋１０＋６＋４）と算出される。
【００９２】
受注オーダＪ００１と受注オーダＪ００３との類似度は、受注オーダＪ００１と受注オーダＪ００２との類似度よりも高いので、受注オーダＪ００１と受注オーダＪ００３との組合せは、受注オーダＪ００１と受注オーダＪ００２との組合せよりも類似しているといえる。上記と同様にして、制御処理部５は、類似度算出部５３によって全ての受注オーダＪ００１〜Ｊ０１０のうちの任意の２つの受注オーダの類似度をそれぞれ算出し、これにより２つの受注オーダの全４５通りのそれぞれの類似度を算出することができる。表２の引当数組合せ問題に基づいて類似度算出部５３が算出した各受注オーダ同士の類似度を表３に示す。
【００９３】
【表３】
0006647966.tif 000004
上記表３に示される類似度の値が大きいほど２つの受注オーダの組合せが類似していることを意味する。例えば受注オーダＪ００３と受注オーダＪ００７との組合せ（類似度５０）、受注オーダＪ００４と受注オーダＪ００７との組合せ（類似度５０）がそれぞれ類似している。上記表３に示すように、２つの受注オーダの全組合せの類似度を算出することによってステップＳ２は完了し、制御処理部５はステップＳ３の処理に進む。
【００９４】
（ステップＳ３：グループ分割工程）
次に、ステップＳ３において、制御処理部５は、グループ分割部５４によって類似度算出部５３で算出された表３の類似度をクラスタ解析することにより各受注オーダをそれぞれ２以上のグループにグループ分けする（Ｓ３）。上記クラスタ解析には、Ｒ言語上のラ
イブラリパッケージであるｉＧｒａｐｈ上に実装されているアルゴリズムを用いる。当該アルゴリズムを用いて上記表３の各類似度をクラスタ解析すると、各受注オーダはそれぞれ、下記の表４に示すようにグループＩ及びグループＩＩの２グループにグループ分けされる。なお、本実施例では、受注オーダを２つのグループにグループ分けした場合を説明しているが、クラスタ解析の結果により各受注オーダが３つ以上のグループにグループ分けされてもよい。
【００９５】
【表４】
0006647966.tif 000005
【００９６】
（ステップＳ４：グループ内必要引当数算出工程）
次に、ステップＳ４において、制御処理部５は、グループ内必要引当数算出部５５によってグループＩ及びグループＩＩに属する各受注オーダに引当可能な在庫品の必要引当数の和を在庫品ごとに算出する（ステップＳ４）。以下の表５は、表２の引当可否条件をグループＩとグループＩＩとに分けて記載したものであり、表２と同様、各受注オーダに対して引当可能な在庫品に「１」を記し、引当不可能な在庫品に「０」を記している。また下記の表５中の「必要引当数合計」は、各グループに属する各受注オーダに引当可能な在庫品の必要引当数の合計であり、当該必要引当数の合計はグループ内必要引当数算出部５５によって算出される。
【００９７】
表５からグループＩに属する各受注オーダＪ００１、Ｊ００３、Ｊ００４及びＪ００７のいずれも在庫品Ｉ００１を引当可能であるので、グループ内必要引当数算出部５５は、在庫品Ｉ００１のグループＩに属する各受注オーダＪ００１、Ｊ００３、Ｊ００４及びＪ００７の必要引当数の合計値２８（８＋６＋６＋８）を算出する。
【００９８】
ステップＳ４では、上記在庫品Ｉ００１と同様に各グループにおいて、各在庫品Ｉ００２〜Ｉ０１０の必要引当数の合計値を在庫品ごとに算出することにより表５の「必要引当数合計」に示す各値が算出される。
【００９９】
【表５】
0006647966.tif 000006
【０１００】
【表６】
0006647966.tif 000007
【０１０１】
（ステップＳ５：引当数決定工程）
次に、ステップＳ５において、制御処理部５は、引当数決定部５６によって算出された前記合計値を在庫品ごとにグループ間で比較し、その必要引当数の合計値が大きいグループに属する受注オーダから順に当該在庫品を引き当てる（Ｓ５）。例えば、上記表５では
、在庫品ごとにグループＩに属する各受注オーダの必要引当数の合計値とグループＩＩに属する各受注オーダの必要引当数の合計値とを比較し、その必要引当数の合計値が大きいグループに属する受注オーダから順に当該在庫品を引き当てる。表６は、表５における各合計値を引当数決定部５６によって比較した結果、優先的に在庫品の引当数を決定すべきと判断された項目に網掛けを付したものである。
【０１０２】
在庫品Ｉ００１におけるグループＩに属する各受注オーダの必要引当数の合計値は２８であり、在庫品Ｉ００１におけるグループＩＩに属する各受注オーダの必要引当数の合計値は０であるので、引当数決定部５６は、必要引当数の合計値が大きいグループＩに属する受注オーダＪ００１、Ｊ００３、Ｊ００４、Ｊ００７から順に当該在庫品の引当数を決定する。
【０１０３】
同一のグループに属する受注オーダＪ００１、Ｊ００３、Ｊ００４、Ｊ００７内における在庫品Ｉ００１の引当順序は特に限定されず、受注オーダＪ００１、Ｊ００３、Ｊ００４、Ｊ００７に対して任意の順序で在庫品Ｉ００１の引当数を決定することができ、本実施例における引当数決定部５６は、受注オーダの番号が小さいものから順に、つまり受注オーダＪ００１、Ｊ００３、Ｊ００４、Ｊ００７の順に在庫品Ｉ００１の引当数を決定することができる。後述するが、各受注オーダに対してそれぞれ在庫品を引き当てるべき優先度が設定されている場合には、その優先度が高い順に在庫品の引当数を決定することが好ましい。これにより優先度が高い在庫品から順番に引当数を決定することができる。
【０１０４】
引当数決定部５６は、在庫品Ｉ００２〜Ｉ０１０においても、上記在庫品Ｉ００１と同様に、在庫品ごとにグループＩとグループＩＩとの間で必要引当数の合計値を比較し、その必要引当数の合計値が大きいグループに属する受注オーダから順に各在庫品を引き当てる。つまり引当数決定部５６は、上記の表６の網掛けを付した各受注オーダに対する各在庫品の組合せに対して在庫品を引き当てる。このように必要引当数の合計値が大きいグループに属する各受注オーダに対して在庫品を優先的に引き当てることにより、必要引当数の合計値が小さいグループに属する受注オーダ（表６の網掛けがない領域）に対して在庫品を引き当てることを考慮しなくてもよくなるので、在庫品の引当数を決定するときの計算量を半減することができる。
【０１０５】
表２の引当数組合せ問題に対して表７に示す引当数組合せ解を設定することにより、従来の半分の計算量で表７に示す引当数組合せ解を設定することが可能となる。表７は、表６のグループ間比較を考慮して各受注オーダに対する各在庫品の引当数を決定した後の組合せである。表７の引当数組合せ解を受注オーダＪ００１〜Ｊ０１０を昇順に並べかえることによって表１の引当数組合せ解とすることができる。
【０１０６】
なお、本実施例では、各グループに属する各受注オーダの必要引当数の合計の、グループ間での比較を見やすくするために、各グループごとに受注オーダを並び替えているが、実計算上は上記表５及び表６のように各受注オーダをグループごとに並び替える必要はない。
【０１０７】
【表７】
0006647966.tif 000008
【０１０８】
（実施例２）
本実施例は、実施例１の在庫引当方法において、各受注オーダ及び各在庫品にそれぞれ個別に優先度が設定されていることが異なる他は上記実施例１と同様のものである。
【０１０９】
（ステップＳ１：データ読込工程）
まず、ステップＳ１において、制御処理部５は、データ読込部５２によって、受注オーダ情報データベース４１に格納されている受注オーダの優先度及び必要引当数と、在庫品情報データベース４２に格納されている優先度及び在庫品の在庫数と、引当条件データベース４３に格納されている上記表２の引当可否情報とをそれぞれ読み込む（Ｓ１）。これ
らの情報をデータ読込部５２で読み込むことによって、制御処理部５は、上記表２に示す引当数組合せ問題を作成するとともに、下記の表８に示す優先度表を作成する。これによりステップＳ１は完了し、制御処理部５はステップＳ２の処理に進む。
【０１１０】
【表８】
0006647966.tif 000009
【０１１１】
本実施例では、上記表８に示すように、受注オーダＪ００１〜Ｊ００４にそれぞれ優先度３が設定されており、受注オーダＪ００５〜Ｊ００６にそれぞれ優先度２が設定されており、受注オーダＪ００７〜Ｊ０１０にそれぞれ優先度１が設定されている。また在庫品
Ｉ００１〜Ｉ００２にそれぞれ優先度３が設定されており、在庫品Ｉ００３〜Ｉ００６にそれぞれ優先度２が設定されており、在庫品Ｉ００７〜Ｉ０１０にそれぞれ優先度１が設定されている。各受注オーダに対する各在庫品の優先度は、上記表８に示すように各受注オーダの優先度と各在庫品の優先度とを乗じることによって１〜９の優先度の値がそれぞれ設定される。
【０１１２】
（ステップＳ２：類似度算出工程）
次に、ステップＳ２において、制御処理部５は、類似度算出部５３によって、各受注オーダのうちの任意の２つの受注オーダのいずれにも引当可能な在庫品の在庫数に、当該２つの受注オーダに対して当該在庫品を引き当てるべきそれぞれの優先度の和を乗じた値の合計を類似度として、全ての受注オーダにおける２つの受注オーダの全ての組合せに対してそれぞれ類似度を算出する。例えば、受注オーダＪ００１と受注オーダＪ００２との類似度は、受注オーダＪ００１及びＪ００２のいずれにも引当可能な在庫品Ｉ００５の在庫数１３に、受注オーダＪ００１の優先度（３）と受注オーダＪ００２の優先度（３）との和（６）を乗じた値７８と算出される。
【０１１３】
同様に、受注オーダＪ００１と受注オーダＪ００３との類似度は、受注オーダＪ００１及びＪ００２のいずれにも引当可能な在庫品Ｉ００１、Ｉ００２、Ｉ００６及びＩ００９の在庫数３１（１１＋１０＋６＋４）に、当該受注オーダＪ００１の優先度と受注オーダＪ００３の優先度の和（６）を乗じた値の合計１８６と算出される。
【０１１４】
上記と同様にして、制御処理部５は、類似度算出部５３によって全ての受注オーダＪ００１〜Ｊ０１０のうちの任意の２つの受注オーダの類似度をそれぞれ算出することによって、２つの受注オーダの全４５通りの組合せのそれぞれの類似度を算出する。表２の引当数組合せ問題に基づいて類似度算出部５３が算出した各受注オーダ同士の類似度を表９に示す。
【０１１５】
【表９】
0006647966.tif 000010
【０１１６】
（ステップＳ３：グループ分割工程）
次に、ステップＳ３において、上記実施例１と同様の方法により各受注オーダをそれぞれ２以上のグループにグループ分けする。各受注オーダはそれぞれ、下記の表１０に示すグループＩ及びグループＩＩの２グループにグループ分けされる。
【０１１７】
【表１０】
0006647966.tif 000011
【０１１８】
（ステップＳ４：グループ内必要引当数算出工程）
次に、ステップＳ４において、制御処理部５は、グループ内必要引当数算出部５５によってグループＩ及びグループＩＩに属する各受注オーダに引当可能な在庫品の必要引当数に、当該受注オーダに対して当該在庫品を引き当てるべき優先度を乗じた値の合計値を在庫品ごとに算出する（ステップＳ４）。
【０１１９】
表１１は、表２の引当可否条件をグループＩとグループＩＩとに分けて記載したものであり、表２と同様、各受注オーダに対して引当可能な在庫品に「１」を記し、引当不可能な在庫品に「０」を記している。表１１によると、グループＩに属する各受注オーダＪ００１、Ｊ００３、Ｊ００４及びＪ００７のいずれも在庫品Ｉ００１を引当可能であるので、グループ内必要引当数算出部５５は、受注オーダＪ００１の必要引当数８に、受注オーダＪ００１に対する在庫品Ｉ００１の優先度９を乗じた値７２と、受注オーダＪ００３の必要引当数６に受注オーダＪ００３に対する在庫品Ｉ００１の優先度９を乗じた値５４と、受注オーダＪ００４の必要引当数６に、受注オーダＪ００４に対する在庫品Ｉ００１の優先度９を乗じた値５４と、受注オーダＪ００７の必要引当数８に受注オーダＪ００７に対する在庫品Ｉ００１の優先度６を乗じた値４８との合計値２２８（７２＋５４＋５４＋４８）を算出する。
【０１２０】
ステップＳ４では、上記在庫品Ｉ００１と同様に各グループにおいて、各在庫品Ｉ００２〜Ｉ０１０の必要引当数に、各受注オーダに対する各在庫品を引き当てるべき優先度を乗じた値の合計値を在庫品ごとに算出することにより表１１の「合計値」に示す各値が算出される。表１１中の各欄における括弧書は、受注オーダの必要引当数に各受注オーダの優先度と各在庫品の優先度とを乗じた値を記したものであり、在庫品ごとに括弧書きの数値を足し合わせることで、表１１中の「合計値」が算出される。言い換えると、表１１中の「合計値」は、各グループに属する各受注オーダに引当可能な在庫品の必要引当数に、当該受注オーダに対して当該在庫品を引き当てるべき優先度を乗じた値の合計値であり、当該合計値はそれぞれグループ内必要引当数算出部５５によって算出される。
【０１２１】
【表１１】
0006647966.tif 000012
【０１２２】
【表１２】
0006647966.tif 000013
【０１２３】
（ステップＳ５：引当数決定工程）
次に、ステップＳ５において、制御処理部５は、上記実施例１と同様に引当数決定部５６によって算出された前記合計値を、在庫品ごとにグループ間で比較し、その合計値が大
きいグループに属する受注オーダから順に当該在庫品を引き当てる。表１２は、表１１の網掛け部分に対して在庫品の引当数を決定した後の引当数組合せ解を設定したものである。
【０１２４】
上記合計値は、受注オーダの必要引当数に対し、各受注オーダの優先度及び各在庫品の優先度の双方が加味されているので、グループＩとグループＩＩとで上記合計値を比較する場合においても、上記各優先度が加味された合計値を比較することができ、より優先度の高い受注オーダに対し、より優先度の高い在庫品を引き当てることができる。
【０１２５】
（変形例）
上記実施例においては、１０種類の受注オーダと１０種類の在庫品との組合せの引当数組合せ解を設定する場合の在庫引当方法を説明したが、受注オーダの種類数及び各受注オーダで引き当てる在庫品の種類数は１０種類のみに限定されず、ｎ（ｎは２以上の整数）種類以上の受注オーダを任意に設定することができ、また各受注オーダで引き当てる在庫品の種類数は、ｍ（ｍは自然数）種類以上の任意の在庫品を引き当てることができる。
【０１２６】
上記実施例１及び２においては、２つの受注オーダに共通して引当可能な在庫品の在庫数に基づいて各受注オーダの類似度を算出していたが、２つの在庫品が共通して引き当てられる受注オーダの必要引当数に基づいて各在庫品の類似度を算出してもよい。このように算出した類似度に対してクラスタ解析し、各在庫品をグループ分けすることによっても上記実施例１及び２と同様に、各受注オーダに対して引き当てられる在庫品の引当数を決定することができる。
【０１２７】
本発明を表現するために、上述において図面を参照しながら実施形態を通して本発明を適切且つ十分に説明したが、当業者であれば上述の実施形態を変更及び／又は改良することは容易に為し得ることであると認識すべきである。したがって、当業者が実施する変更形態又は改良形態が、請求の範囲に記載された請求項の権利範囲を離脱するレベルのものでない限り、当該変更形態又は当該改良形態は、当該請求項の権利範囲に包括されると解釈される。
【符号の説明】
【０１２８】
１  在庫引当装置
２  入力部
３  出力部
４  記憶部
５  制御処理部
４１  受注オーダ情報データベース
４２  在庫品情報データベース
４３  引当条件データベース
５１  制御部
５２  データ読込部
５３  類似度算出部
５４  グループ分割部
５５  グループ内必要引当数算出部
５５’  グループ内必要在庫数算出部
５６  引当数決定部
【図１】
0006647966.tif 000014
【図２】
0006647966.tif 000015
【図３】
0006647966.tif 000016