JP6947517B2 - Inventory allocation device and inventory allocation method - Google Patents
Inventory allocation device and inventory allocation method Download PDFInfo
- Publication number
- JP6947517B2 JP6947517B2 JP2017055570A JP2017055570A JP6947517B2 JP 6947517 B2 JP6947517 B2 JP 6947517B2 JP 2017055570 A JP2017055570 A JP 2017055570A JP 2017055570 A JP2017055570 A JP 2017055570A JP 6947517 B2 JP6947517 B2 JP 6947517B2
- Authority
- JP
- Japan
- Prior art keywords
- inventory
- allocation
- combination solution
- solution
- order
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- General Factory Administration (AREA)
Description
本発明は、製造業の工場で製品を製造するための複数の受注オーダーに対して複数種の在庫品ロットを引き当てる業務において、引当可能な在庫品ロットの種類に一定の自由度がある場合に、在庫の汎用性(引当可能な受注オーダーの幅)や生産性等の優先度を考慮して最適の在庫品の引当数の組合せを決定し得る在庫引当装置及び在庫引当方法に関する。 The present invention relates to a case where there is a certain degree of freedom in the types of inventory lots that can be allocated in the business of allocating a plurality of types of inventory lots to a plurality of order orders for manufacturing a product in a manufacturing factory. The present invention relates to an inventory allocation device and an inventory allocation method that can determine the optimum combination of inventory allocation numbers in consideration of priorities such as inventory versatility (width of order orders that can be allocated) and productivity.
設計製品の製造において、それぞれ仕様の異なる製品を作製する受注オーダーに在庫品を引き当てる際には、オペレータが受注オーダーに対する在庫品ロットの組み合わせを試行錯誤して、各受注オーダーに引き当てる各在庫品の種類及びその引当数を決定している。一般的には、それぞれの受注オーダーに対して引当可能な在庫品ロットと引当不可能な在庫品ロットとが存在するので、その条件の下で、できるだけ汎用性の高い在庫品ロットを在庫として手元に残しながら、納期の近い受注オーダーを充足するように各在庫品の引当数を設定する。 In the manufacture of design products, when inventories are assigned to order orders that produce products with different specifications, the operator makes trial and error in combining inventory lots for the order, and assigns each inventories to each order. The type and the number of allocations are determined. In general, there are inventory lots that can be allocated and inventory lots that cannot be allocated for each order, so under those conditions, the inventory lot that is as versatile as possible is on hand as inventory. Set the allocation number of each inventory item so as to satisfy the order order with the near delivery date.
このような在庫品の引当処理に関し、作製する製品の種類が少ない場合は、オペレータが複数の在庫品のうちから最適な在庫品の引当数の組合せを決定できるが、上記在庫品の種類数及び受注オーダーの数が増えるにつれて、それら全てを満足するように各受注オーダーに対して各在庫品の引当数を設定するための計算量は指数関数的に増加する。このため、受注オーダー及び在庫品の双方の選択肢が多い場合には、オペレータが、各製品を作製するために適した在庫品の引当数の組合せを設定することが困難になる。 Regarding such inventory processing, when the number of types of products to be produced is small, the operator can determine the optimum combination of the number of inventory items to be allocated from among a plurality of inventory items. As the number of sales orders increases, the amount of calculation for setting the allocation number of each inventory for each sales order increases exponentially so as to satisfy all of them. For this reason, when there are many options for both order orders and inventories, it becomes difficult for the operator to set a combination of the number of inventories allocated suitable for manufacturing each product.
そこで、上記選択肢の中から最適な在庫品の引当数の組合せを特定する方法として、例えば下記非特許文献1に開示の線形計画法、又はその解空間を整数に限定する整数計画法が考えられる。非特許文献1に開示の方法は、各製品を作製するための各在庫品の引当数に対し、各種の制約条件を考慮して評価関数を設定し、当該評価関数が最大となるように各製品を作製するための各在庫品の引当数を最適の値に設定することによって行う。
Therefore, as a method of specifying the optimum combination of the allocation number of inventories from the above options, for example, the linear programming method disclosed in Non-Patent
上記線形計画法及び整数計画法を用いた場合、受注オーダーと在庫品ロットとの組合せの探索空間が膨大となるため、実用的な時間内に最適解を見出すことが困難である。 When the above linear programming method and integer programming method are used, it is difficult to find the optimum solution within a practical time because the search space for the combination of the ordered order and the inventory lot is enormous.
上記線形計画法及び整数計画法以外の最適解を算出するアルゴリズムとして、局所探索法と呼ばれる手法もある。局所探索法は、まず、出発点となる暫定解(初期解)に対し、局所的に異なる解(近傍解)を設定し、初期解の評価値と近傍解の評価値を評価関数に基づいてそれぞれ算出して比較する。次に、例えばコンピュータの演算処理部は、近傍解が評価値が大きい場合には近傍解を新たな暫定解に設定し、初期解が評価値が大きい場合には暫定解を変更しないという作業を繰り返す。この暫定解の書き換えを繰り返すほど暫定解が最適解に近づく。上記局所探索法を在庫引当処理に適用することにより、より高い評価値の引当組合せ解が設定される。 As an algorithm for calculating the optimum solution other than the above linear programming method and integer programming method, there is also a method called a local search method. In the local search method, first, a locally different solution (neighborhood solution) is set for the provisional solution (initial solution) that is the starting point, and the evaluation value of the initial solution and the evaluation value of the neighborhood solution are evaluated based on the evaluation function. Calculate and compare each. Next, for example, the arithmetic processing unit of a computer sets the neighborhood solution as a new provisional solution when the evaluation value is large, and does not change the provisional solution when the initial solution has a large evaluation value. repeat. The more the rewriting of this provisional solution is repeated, the closer the provisional solution approaches the optimum solution. By applying the above local search method to inventory allocation processing, an allocation combination solution with a higher evaluation value is set.
しかしながら、引当組合せ解における評価値の解空間は多峰性の評価値分布を有している場合が多く、初期解がある程度高品質のものである場合には、その初期解の一部の引当数を微調整する局所探索法によって解の品質を高めることはできるが、初期解自体の完成度が低い場合には解空間全体の中での最適解からは程遠い局所解に陥ってしまうこともある。また引当数をランダムに設定する検索手法は、解空間が膨大である場合には必ずしも効率的に解を見出し得るとは言い難い。 However, the solution space of the evaluation values in the allocation combination solution often has a multimodal evaluation value distribution, and if the initial solution is of a certain high quality, a part of the initial solution is allocated. Although the quality of the solution can be improved by the local search method that fine-tunes the number, if the initial solution itself is not perfect, it may fall into a local solution far from the optimum solution in the entire solution space. be. In addition, it is difficult to say that a search method that randomly sets the number of allocations can find a solution efficiently when the solution space is huge.
本発明は、このような事情に鑑みてなされたものであり、その目的とするところは、複数種の受注オーダーに対して引き当てる複数種の在庫品ロットの各引当数の適した組合せを効率よく設定できる在庫引当方法及び在庫引当装置を提供することである。 The present invention has been made in view of such circumstances, and an object of the present invention is to efficiently combine appropriate combinations of each allocation number of a plurality of types of stock lots to be allocated to a plurality of types of order orders. It is to provide an inventory allocation method and an inventory allocation device that can be set.
本発明者は、種々検討した結果、上記目的は、以下の本発明により達成されることを見出した。すなわち、本発明の一態様に係る在庫引当方法は、同一又は相異なる2種以上の製品を作製するために製品ごとに必要となる1又は複数種の在庫品ロットの受注量が定められた各受注オーダーに対して各在庫品ロットの引当数をそれぞれ決定する在庫引当方法であって、前記各受注オーダーはそれぞれ、予め2以上設定された、各在庫品ロットを引き当てるべき受注オーダーの優先順位を決定する優先度受注パラメータを備え、前記各在庫品ロットはそれぞれ、予め2以上設定された、各受注オーダーに引き当てるべき在庫品ロットの優先順位を決定する優先度在庫パラメータを備え、前記優先度受注パラメータのうちの任意の1の優先度受注パラメータ及び前記優先度在庫パラメータのうちの任意の1の優先度在庫パラメータに基づいて各受注オーダーに引き当てる各在庫品ロットの引当数を設定した第1引当組合せ解を作成する第1工程と、前記第1工程で用いた前記優先度受注パラメータ又は前記優先度在庫パラメータのうちの少なくとも一方を変更した前記優先度受注パラメータ及び前記優先度在庫パラメータに基づいて各受注オーダーに引き当てる各在庫品ロットの引当数を設定した第2引当組合せ解を作成する第2工程と、前記第1引当組合せ解と前記第2引当組合せ解とを評価関数に基づいて比較し、より優れた評価値を示す解を引当組合せ解に設定する第3工程とを含む。 As a result of various studies, the present inventor has found that the above object can be achieved by the following invention. That is, in the inventory allocation method according to one aspect of the present invention, the order quantity of one or a plurality of types of inventory lots required for each product in order to produce two or more types of the same or different products is determined. This is an inventory allocation method that determines the number of allocations for each inventory lot for a sales order, and each of the sales orders has two or more preset order priorities for which each inventory lot should be allocated. Each of the inventory lots has two or more preset priority inventory parameters for determining the priority of the inventory lot to be assigned to each order, and the priority order parameter is provided. A first allocation that sets the allocation number of each inventory lot to be allocated to each sales order based on any one priority order parameter of the parameters and any one priority inventory parameter of the priority inventory parameters. Based on the first step of creating a combined solution and the priority order parameter and the priority inventory parameter in which at least one of the priority order parameter or the priority inventory parameter used in the first step is changed. The second step of creating a second allocation combination solution that sets the number of allocations for each inventory lot to be assigned to each order is compared with the first allocation combination solution and the second allocation combination solution based on the evaluation function. , A third step of setting a solution showing a better evaluation value as an allocation combination solution.
上記のように優先度受注パラメータと優先度在庫パラメータとの組合せに基づいて第1引当組合せ解と第2引当組合せ解とが作成されるので、無作為に引当数を設定した場合に比べて、第1引当組合せ解も第2引当組合せ解も充当制約を満たす可能性が高い。しかも、第1引当組合せ解と第2引当組合せ解とを比較した上で優れた方の解を引当組合せ解として設定するので、最適解により近い引当数を設定した引当組合せ解を簡便に得ることができる。 Since the first allocation combination solution and the second allocation combination solution are created based on the combination of the priority order parameter and the priority inventory parameter as described above, compared with the case where the allocation number is set at random. Both the first allocation combination solution and the second allocation combination solution are likely to satisfy the allocation constraint. Moreover, since the superior solution is set as the allocation combination solution after comparing the first allocation combination solution and the second allocation combination solution, it is possible to easily obtain the allocation combination solution in which the number of allocations closer to the optimum solution is set. Can be done.
上記構成において、前記第1工程又は前記第2工程で用いた前記優先度受注パラメータ又は前記優先度在庫パラメータのうちの少なくとも一方を変更した前記優先度受注パラメータ及び前記優先度在庫パラメータに基づいて各受注オーダーに引き当てる各在庫品ロットの引当数を設定した仮引当組合せ解を作成する第4工程と、前記引当組合せ解と前記仮引当組合せ解とを評価関数に基づいて比較し、前記仮引当組合せ解の評価値が前記引当組合せ解の評価値未満の場合に前記引当組合せ解を変更せず、前記仮引当組合せ解の評価値が前記引当組合せ解の評価値以上の場合に前記仮引当組合せ解を新たな引当組合せ解に書き換える第5工程とを含んでもよい。前記第4工程及び前記第5工程を各1回以上行ってもよい。 In the above configuration, each is based on the priority order parameter and the priority inventory parameter in which at least one of the priority order parameter or the priority inventory parameter used in the first step or the second step is changed. The fourth step of creating a provisional allocation combination solution in which the number of allocations for each inventory lot to be assigned to the sales order is set, and the provisional allocation combination solution and the provisional allocation combination solution are compared based on the evaluation function, and the provisional allocation combination is compared. If the evaluation value of the solution is less than the evaluation value of the allocation combination solution, the allocation combination solution is not changed, and if the evaluation value of the provisional allocation combination solution is equal to or more than the evaluation value of the provision combination solution, the provisional allocation combination solution is used. May include a fifth step of rewriting a new allocation combination solution. The fourth step and the fifth step may be performed one or more times each.
上記構成によれば、第1引当組合せ解及び第2引当組合せ解を作成したときの優先度受注パラメータ及び優先度在庫パラメータの組合せとは異なる組合せで仮引当組合せ解を作成することができる。このように作成された仮引当組合せ解の評価値を引当組合せ解の評価値と比較し、仮引当組合せ解の方が大きくなる場合に仮引当組合せ解を引当組合せ解に書き換えることにより、引当組合せ解の各在庫品ロットの引当数を最適解に近づけることができる。しかも、上記第4工程及び第5工程を実行する回数を多くするほど、より優れた評価値となる仮引当組合せ解を引当組合せ解とすることができ、引当組合せ解を最適解に近づけることができる。 According to the above configuration, the provisional allocation combination solution can be created with a combination different from the combination of the priority order parameter and the priority inventory parameter when the first allocation combination solution and the second allocation combination solution are created. By comparing the evaluation value of the provisional allocation combination solution created in this way with the evaluation value of the allocation combination solution and rewriting the provisional allocation combination solution to the allocation combination solution when the provisional allocation combination solution becomes larger, the allocation combination The number of allocations for each in-stock lot of the solution can be brought closer to the optimal solution. Moreover, as the number of times of executing the fourth step and the fifth step is increased, the provisional allocation combination solution having a better evaluation value can be used as the allocation combination solution, and the allocation combination solution can be brought closer to the optimum solution. can.
上記構成において、前記引当組合せ解における任意の1の受注オーダーに対する任意の1種の前記在庫品ロットの引当数を変更した局所変更引当組合せ解を作成する第6工程と、前記引当組合せ解の評価値及び前記局所変更引当組合せ解の評価値を前記評価関数を用いて算出し、前記局所変更引当組合せ解の評価値が前記引当組合せ解の評価値未満の場合に前記引当組合せ解を変更せず、前記局所変更引当組合せ解の評価値が前記引当組合せ解の評価値以上の場合に前記局所変更引当組合せ解を新たな引当組合せ解に書き換える第7工程と、を含んでもよい。前記第6工程及び前記第7工程を1回以上行ってもよい。 In the above configuration, the sixth step of creating a locally modified allocation combination solution in which the allocation number of any one type of inventory lot is changed for any one order in the allocation combination solution, and evaluation of the allocation combination solution. The value and the evaluation value of the local change allocation combination solution are calculated using the evaluation function, and when the evaluation value of the local change allocation combination solution is less than the evaluation value of the allocation combination solution, the allocation combination solution is not changed. , The seventh step of rewriting the local change allocation combination solution to a new allocation combination solution when the evaluation value of the local change allocation combination solution is equal to or higher than the evaluation value of the allocation combination solution may be included. The sixth step and the seventh step may be performed once or more.
上記のように引当組合せ解における任意の1の受注オーダーに対する任意の1種の在庫品ロットの引当数を局所的に変更し、その変更前後の引当組合せ解の評価値を比較して、より評価値が好ましくなるように引当組合せ解を書き換えることにより、引当組合せ解の各受注オーダーに対する各在庫品ロットの引当数を最適解に近づけることができる。しかも、局所的に引当数を変更する受注オーダーと在庫品ロットの組合せを変えつつ上記第6工程及び上記第7工程を実行する回数を多くするほど、各受注オーダーに対する在庫品ロットの引当数を最適解に近づけることができる。 As described above, the number of allocations of any one type of inventory lot for any one order in the allocation combination solution is locally changed, and the evaluation values of the allocation combination solutions before and after the change are compared to make a further evaluation. By rewriting the allocation combination solution so that the value becomes preferable, the allocation number of each inventory lot for each sales order of the allocation combination solution can be approached to the optimum solution. Moreover, as the number of times the sixth step and the seventh step are executed while changing the combination of the order order and the inventory lot, which locally change the allocation number, the allocation number of the inventory lot for each order is increased. You can get closer to the optimal solution.
上記構成において、前記第1工程又は前記第2工程で用いた前記優先度受注パラメータ又は前記優先度在庫パラメータのうちの少なくとも一方を変更した前記優先度受注パラメータ及び前記優先度在庫パラメータに基づいて各受注オーダーに引き当てる各在庫品ロットの引当数を設定した仮引当組合せ解を作成する第4工程と、
前記引当組合せ解と前記仮引当組合せ解とを評価関数に基づいて比較し、前記仮引当組合せ解の評価値が前記引当組合せ解の評価値未満の場合に前記引当組合せ解を変更せず、前記仮引当組合せ解の評価値が前記引当組合せ解の評価値以上の場合に前記仮引当組合せ解を新たな引当組合せ解に書き換える第5工程と、
前記引当組合せ解における任意の1の受注オーダーに対する任意の1種の前記在庫品ロットの引当数を変更した局所変更引当組合せ解を作成する第6工程と、
前記引当組合せ解の評価値及び前記局所変更引当組合せ解の評価値を前記評価関数を用いて算出し、前記局所変更引当組合せ解の評価値が前記引当組合せ解の評価値未満の場合に前記引当組合せ解を変更せず、前記局所変更引当組合せ解の評価値が前記引当組合せ解の評価値以上の場合に前記局所変更引当組合せ解を新たな引当組合せ解に書き換える第7工程と、を含んでもよい。
In the above configuration, each is based on the priority order parameter and the priority inventory parameter in which at least one of the priority order parameter or the priority inventory parameter used in the first step or the second step is changed. The fourth step of creating a provisional allocation combination solution that sets the allocation number of each inventory lot to be assigned to the sales order, and
The allocation combination solution and the provisional allocation combination solution are compared based on the evaluation function, and when the evaluation value of the provisional allocation combination solution is less than the evaluation value of the provision combination solution, the allocation combination solution is not changed. The fifth step of rewriting the provisional allocation combination solution to a new allocation combination solution when the evaluation value of the provisional allocation combination solution is equal to or higher than the evaluation value of the provision combination solution.
A sixth step of creating a locally modified allocation combination solution in which the number of allocations of any one type of inventory lot is changed for any one order in the allocation combination solution.
The evaluation value of the allocation combination solution and the evaluation value of the local change allocation combination solution are calculated by using the evaluation function, and when the evaluation value of the local change allocation combination solution is less than the evaluation value of the allocation combination solution, the allocation Including the seventh step of rewriting the locally changed allocation combination solution to a new allocation combination solution when the evaluation value of the locally changing allocation combination solution is equal to or greater than the evaluation value of the allocation combination solution without changing the combination solution. good.
前記第1工程、前記第2工程、及び前記第3工程を実行し、続いて前記第4工程及び前記第5工程を第1ループ回数実行する処理が、全体探索処理と定義されてもよい。前記第6工程及び前記第7工程を第2ループ回数実行する処理が、局所探索処理と定義されてもよい。前記全体探索処理を実行した後に前記局所探索処理を実行する解探索処理が、1回以上行われてもよい。 The process of executing the first step, the second step, and the third step, and then executing the fourth step and the fifth step the first loop number of times may be defined as a total search process. The process of executing the sixth step and the seventh step a second loop number of times may be defined as a local search process. The solution search process for executing the local search process after executing the whole search process may be performed once or more.
前記在庫引当方法は、さらに、前記解探索処理が1回行われた場合は、前記解探索処理で得られた前記引当組合せ解を出力する第1出力工程を含み、前記解探索処理が2回以上行われた場合は、前記評価関数を用いて前記2回以上の前記解探索処理で得られた前記引当組合せ解の評価値をそれぞれ算出し、算出したそれぞれの前記評価値を互いに比較し、前記評価値が最高の前記引当組合せ解を出力する第2出力工程を含んでもよい。 The inventory allocation method further includes a first output step of outputting the allocation combination solution obtained by the solution search process when the solution search process is performed once, and the solution search process is performed twice. When the above is performed, the evaluation values of the allocation combination solutions obtained by the solution search process two or more times are calculated using the evaluation function, and the calculated evaluation values are compared with each other. A second output step may be included to output the allocation combination solution having the highest evaluation value.
上記構成では、第1工程、第2工程、及び第3工程を実行し、続いて第4工程及び第5工程を第1ループ回数実行する全体探索処理が実行された後に、第6工程及び第7工程を第2ループ回数実行する局所探索処理が実行される解探索処理が、1回以上行われる。解探索処理が1回行われた場合は、解探索処理で得られた引当組合せ解が出力される。解探索処理が2回以上行われた場合は、評価関数を用いて2回以上の解探索処理で得られた引当組合せ解の評価値がそれぞれ算出され、算出されたそれぞれの評価値が互いに比較され、最も高い評価値の引当組合せ解が出力される。したがって、上記構成によれば、各受注オーダーに対する在庫品ロットの引当数を最適解に近づけることができる。 In the above configuration, the sixth step and the sixth step are executed after the whole search process of executing the first step, the second step, and the third step, and then executing the fourth step and the fifth step for the first loop number of times is executed. The solution search process in which the local search process in which the 7 steps are executed the second loop number of times is executed is performed once or more. When the solution search process is performed once, the allocation combination solution obtained in the solution search process is output. When the solution search process is performed twice or more, the evaluation values of the allocation combination solutions obtained by the solution search process two or more times are calculated using the evaluation function, and the calculated evaluation values are compared with each other. And the allocation combination solution with the highest evaluation value is output. Therefore, according to the above configuration, the number of stock lots allocated for each order can be brought close to the optimum solution.
上記構成において、前記全体探索処理は、1回目の前記解探索処理における前記第1ループ回数を前記受注オーダー数に応じて設定する設定工程を含んでもよい。 In the above configuration, the overall search process may include a setting step of setting the number of times of the first loop in the first solution search process according to the number of orders ordered.
上記構成では、全体探索処理に含まれる設定工程において、1回目の解探索処理における第1ループ回数が、受注オーダー数に応じて設定される。したがって、上記構成によれば、第1ループ回数を受注オーダー数に応じた適切な値に設定することができる。 In the above configuration, in the setting process included in the overall search process, the number of first loops in the first solution search process is set according to the number of ordered orders. Therefore, according to the above configuration, the number of first loops can be set to an appropriate value according to the number of ordered orders.
上記構成において、前記設定工程は、前記受注オーダー数が所定の閾値以上のときは1回目の前記解探索処理における前記第1ループ回数を第1回数値に設定し、前記受注オーダー数が前記閾値未満のときは1回目の前記解探索処理における前記第1ループ回数を前記第1回数値より少ない第2回数値に設定してもよい。 In the above configuration, in the setting step, when the number of ordered orders is equal to or greater than a predetermined threshold value, the number of first loops in the first solution search process is set to the first number value, and the number of ordered orders is the threshold value. If it is less than, the number of times of the first loop in the first solution search process may be set to a second number value less than the first number value.
上記構成では、設定工程において、受注オーダー数が所定の閾値以上のときは1回目の解探索処理における第1ループ回数が第1回数値に設定される。受注オーダー数が閾値未満のときは1回目の解探索処理における第1ループ回数が第1回数値より少ない第2回数値に設定される。したがって、上記構成によれば、第1ループ回数を受注オーダー数に応じた適切な値に設定することができる。 In the above configuration, when the number of ordered orders is equal to or greater than a predetermined threshold value in the setting step, the number of first loops in the first solution search process is set to the first number value. When the number of ordered orders is less than the threshold value, the number of first loops in the first solution search process is set to the second number value less than the first number value. Therefore, according to the above configuration, the number of first loops can be set to an appropriate value according to the number of ordered orders.
上記構成において、前記設定工程は、2回目以降の前記解探索処理における前記第1ループ回数を、1回目の前記解探索処理における前記第1ループ回数より少ない一定値に設定してもよい。 In the above configuration, the setting step may set the number of times of the first loop in the second and subsequent solution search processes to a constant value less than the number of times of the first loop in the first solution search process.
2回目以降の解探索処理における第1ループ回数を、1回目の解探索処理における第1ループ回数以上の値に設定しても、引当組合せ解を最適解に近づけられない場合が多いことが判明した。そこで、上記構成では、設定工程において、2回目以降の解探索処理における第1ループ回数が、1回目の解探索処理における第1ループ回数より少ない一定値に設定される。このため、上記構成によれば、全体探索処理の時間が無駄に長くなるのを防ぐことができる。 It was found that even if the number of first loops in the second and subsequent solution search processes is set to a value equal to or greater than the number of first loops in the first solution search process, the allocation combination solution cannot often approach the optimum solution. bottom. Therefore, in the above configuration, in the setting step, the number of first loops in the second and subsequent solution search processes is set to a constant value less than the number of first loops in the first solution search process. Therefore, according to the above configuration, it is possible to prevent the time required for the entire search process from becoming unnecessarily long.
上記構成において、前記解探索処理を開始する際に経過時間のカウントを開始するカウント開始工程と、前記解探索処理が終了したときに、前記経過時間が所定時間を超えているか否かを判定する時間判定工程と、を含んでもよい。前記時間判定工程において、前記経過時間が前記所定時間を超えていないと判定されると前記解探索処理が新たに開始されてもよく、前記経過時間が前記所定時間を超えていると判定されると前記解探索処理が新たに開始されなくてもよい。 In the above configuration, it is determined whether or not the elapsed time exceeds a predetermined time when the solution search process is completed and the count start step of starting the counting of the elapsed time when the solution search process is started. It may include a time determination step. In the time determination step, if it is determined that the elapsed time does not exceed the predetermined time, the solution search process may be newly started, and it is determined that the elapsed time exceeds the predetermined time. And the solution search process does not have to be newly started.
上記構成では、解探索処理を開始する際に経過時間のカウントが開始され、解探索処理が終了したときに、経過時間が所定時間を超えているか否かが判定される。そして、経過時間が所定時間を超えていないと判定されると、解探索処理が新たに開始される。一方、経過時間が所定時間を超えていると判定されると、解探索処理が新たに開始されない。したがって、上記構成によれば、解探索処理の時間を制御することが可能になっている。 In the above configuration, counting of the elapsed time is started when the solution search process is started, and when the solution search process is completed, it is determined whether or not the elapsed time exceeds a predetermined time. Then, when it is determined that the elapsed time does not exceed the predetermined time, the solution search process is newly started. On the other hand, if it is determined that the elapsed time exceeds the predetermined time, the solution search process is not newly started. Therefore, according to the above configuration, it is possible to control the time of the solution search process.
上記構成において、前記評価関数は、前記各受注オーダーに対して前記各在庫品ロットを引き当てるべき優先度と、前記引当組合せ解における全ての受注オーダーに対する、前記受注オーダーの受注量を満たす在庫品ロットの引当数が設定された充当完了オーダーの割合と、前記在庫品ロットの在庫量とを変動因子に有してもよい。前記評価関数は、下記の式(I)で表される評価関数Fであってもよい。 In the above configuration, the evaluation function satisfies the priority of assigning each inventory lot to each order and the order quantity of the order for all the order in the allocation combination solution. The ratio of the allocation completion order for which the allocation number of the above is set and the inventory amount of the inventory item lot may be included in the variable factor. The evaluation function may be an evaluation function F represented by the following formula (I).
前記式(I)中、xiはN(Nは2以上の整数)種類の受注オーダーのうちの受注オーダーiに引き当てるべき優先度であり、yjはM(Mは自然数)種類の在庫品ロットのうちの在庫品ロットjを引き当てるべき優先度であり、ai,jは受注オーダーiに対して引き当てる在庫品ロットjの引当数であり、αは前記各受注オーダーに応じて設定される補正係数であり、βは前記各在庫品ロットに応じて設定される補正係数であり、Xは引当組合せ解における全ての受注オーダーに対する充当完了オーダーの割合(%)であり、Yは在庫品ロットを引き当てた後の在庫品の在庫量の総和である。 In the formula (I), x i is a priority to be assigned to the order order i among the order orders of N (N is an integer of 2 or more) types, and y j is an inventory product of M (M is a natural number) type. Of the lots, the inventory lot j is the priority to be assigned, ai and j are the allocation numbers of the inventory lot j to be allocated to the order i, and α is set according to each order. The correction coefficient, β is the correction coefficient set according to each inventory lot, X is the ratio (%) of the allocation completion order to all the order orders in the allocation combination solution, and Y is the inventory lot. It is the total amount of inventories of the inventories after allocating.
上記変動因子を有する評価関数を用いることにより、第1引当組合せ解、第2引当組合せ解、仮引当組合せ解及び引当組合せ解の評価値をそれぞれ数値化することができるので、各組合せ解の評価値の優劣を簡便に判定することができる。 By using the evaluation function having the above variable factors, the evaluation values of the first allocation combination solution, the second allocation combination solution, the provisional allocation combination solution, and the allocation combination solution can be quantified, respectively, and therefore the evaluation of each combination solution is evaluated. The superiority or inferiority of the value can be easily determined.
本発明の在庫引当装置は、同一又は相異なる2種以上の製品を作製するために製品ごとに必要となる1又は複数種の在庫品ロットの受注量が定められた各受注オーダーに対して各在庫品ロットの引当数をそれぞれ決定するものであって、前記各受注オーダーはそれぞれ、予め2以上設定された、各在庫品ロットを引き当てるべき受注オーダーの優先順位を決定する優先度受注パラメータを備え、前記各在庫品ロットはそれぞれ、予め2以上設定された、各受注オーダーに引き当てるべき在庫品ロットの優先順位を決定する優先度在庫パラメータを備え、前記優先度受注パラメータのうちの任意の1の優先度受注パラメータ及び前記優先度在庫パラメータのうちの任意の1の優先度在庫パラメータに基づいて各受注オーダーに引き当てる各在庫品ロットの引当数を設定した第1引当組合せ解を作成する第1引当組合せ解作成部と、前記第1工程で用いた前記優先度受注パラメータ又は前記優先度在庫パラメータのうちの少なくとも一方を変更した前記優先度受注パラメータ及び前記優先度在庫パラメータに基づいて各受注オーダーに引き当てる各在庫品ロットの引当数を設定した第2引当組合せ解を作成する第2引当組合せ解作成部と、前記第1引当組合せ解と前記第2引当組合せ解とを評価関数に基づいて比較する評価値比較部と、前記評価値比較部によって比較された前記第1引当組合せ解及び前記第2引当組合せ解のうちのより優れた評価値を示す解を引当組合せ解に設定する引当組合せ解設定部とを含む。 The inventory allocation device of the present invention is used for each order for which the order quantity of one or more kinds of inventory lots required for each product in order to produce two or more kinds of the same or different products is defined. Each of the above-mentioned order orders has a priority order parameter for determining the priority of the order to be assigned to each inventory lot, which is set in advance of 2 or more. Each of the inventory lots has two or more preset priority inventory parameters for determining the priority of the inventory lots to be assigned to each order, and any one of the priority order parameters. First allocation to create a first allocation combination solution that sets the allocation number of each inventory lot to be assigned to each sales order based on the priority order parameter and any one of the priority inventory parameters. For each order, based on the combination solution creation unit and the priority order parameter and the priority inventory parameter in which at least one of the priority order parameter or the priority inventory parameter used in the first step is changed. The second allocation combination solution creation unit that creates the second allocation combination solution that sets the number of allocations for each inventory lot to be allocated is compared with the first allocation combination solution and the second allocation combination solution based on the evaluation function. The allocation combination solution setting that sets the solution showing the better evaluation value among the evaluation value comparison unit and the first allocation combination solution and the second allocation combination solution compared by the evaluation value comparison unit as the allocation combination solution. Including part.
上記のように優先度受注パラメータと優先度在庫パラメータとの組合せに基づいて第1引当組合せ解と第2引当組合せ解とが作成されるので、無作為に引当数を設定した場合に比べて、第1引当組合せ解も第2引当組合せ解も充当制約を満たす可能性が高い。しかも、第1引当組合せ解と第2引当組合せ解とを比較した上で優れた方の解を引当組合せ解として設定することにより、引当組合せ解をより簡便に最適解に近づけることができる。 Since the first allocation combination solution and the second allocation combination solution are created based on the combination of the priority order parameter and the priority inventory parameter as described above, compared with the case where the allocation number is set at random. Both the first allocation combination solution and the second allocation combination solution are likely to satisfy the allocation constraint. Moreover, by comparing the first allocation combination solution and the second allocation combination solution and setting the superior solution as the allocation combination solution, the allocation combination solution can be more easily approached to the optimum solution.
本発明によれば、複数種の受注オーダーに対して引き当てる複数種の在庫品ロットの各引当数の適した組合せを効率よく設定できる在庫引当方法及び在庫引当装置を提供することができる。 According to the present invention, it is possible to provide an inventory allocation method and an inventory allocation device that can efficiently set an appropriate combination of each allocation number of a plurality of types of inventory lots to be allocated to a plurality of types of order orders.
以下、本発明にかかる実施形態を図面に基づいて説明する。なお、各図において同一の符号を付した構成は、同一の構成であることを示し、その説明を適宜省略する。 Hereinafter, embodiments according to the present invention will be described with reference to the drawings. It should be noted that the configurations with the same reference numerals in each figure indicate that they are the same configurations, and the description thereof will be omitted as appropriate.
<第1実施形態の在庫引当システム>
図1は、第1実施形態の在庫引当方法を実行する在庫引当システムの構成を示す図である。第1実施形態の在庫引当システム1は、図1に示すように、入力部11と、出力部12と、記憶部13と、制御処理部14と、で構成されている。
<Inventory allocation system of the first embodiment>
FIG. 1 is a diagram showing a configuration of an inventory allocation system that executes the inventory allocation method of the first embodiment. As shown in FIG. 1, the
入力部11は、制御処理部14に接続され、例えば在庫を引き当てる上で必要な各種データを在庫引当システム1に入力する機器であり、例えば、所定の機能を割り付けられた複数の入力スイッチ、キーボード、マウス等である。
The
出力部12は、制御処理部14に接続され、制御処理部14の制御に従って、入力部11から入力されたコマンドやデータを出力する機器であり、例えばCRT(Cathode Ray Tube)、LCD(Liquid Crystal Display)及び有機ELディスプレイ等の表示装置、又はプリンタ等の印刷装置等である。
The
記憶部13は、制御処理部14に接続され、制御処理部14の制御に従って、各種の所定のプログラム及び各種の所定のデータを記憶する回路である。この各種の所定のプログラムは、例えば、当該在庫引当システムの各部を当該各部の機能に応じて制御する制御プログラム、複数の受注オーダーに対して複数種の在庫品の最適な引当数の組合せ(引当組合せ解)を決定する在庫引当プログラム等の制御処理プログラムが含まれる。前記各種の所定のデータには、製品に関する情報(例えば価格、用途、機能、保管期間、大きさ等)を記憶する製品情報データベース31、在庫品に関する情報(例えば在庫数、有効期限、大きさ、材質、機能及び用途等)を記憶する在庫品情報データベース32、各受注オーダーに対する各在庫品の引当数を決定するために必要な情報(例えば各受注オーダーに対して特定の在庫品を引き当てる優先度、引当可否情報、ループ数設定値K,L等)を記憶する解探索条件データベース33等が含まれる。
The
このような記憶部13は、例えば不揮発性の記憶素子であるROM(Read Only Memory)や書き換え可能な不揮発性の記憶素子であるEEPROM(Electrically Erasable Programmable Read Only Memory)等を備える。そして、記憶部13は、前記所定のプログラムの実行中に生じるデータ等を記憶するいわゆる制御処理部14のワーキングメモリとなるRAM(Random Access Memory)等を備える。また、記憶部13は、例えばハードディスク等の比較的大容量の記憶装置を備えて良い。
Such a
制御処理部14は、在庫引当システム1の各部を当該各部の機能に応じてそれぞれ制御し、複数種の製品を作製するための複数種の在庫品の各引当数を決定するための回路である。制御処理部14は、例えば、CPU(Central Processing Unit)及びその周辺回路を備えて構成される。制御処理部14には、記憶部13に記憶されている制御処理プログラムが実行されることによって、図1に示すように、制御部41、第1引当組合せ解作成部42、第2引当組合せ解作成部43、評価値比較部44、引当組合せ解設定部45、カウンタ部46、カウンタ成否判定部47、仮引当組合せ解作成部48、引当組合せ解更新部49、及び局所変更解作成部50が機能的に構成される。
The
制御部41は、在庫引当システム1の各部を当該各部の機能に応じてそれぞれ制御するものである。
The
第1引当組合せ解作成部42は、記憶部13の製品情報データベース31に格納された優先度受注パラメータのうちの任意の1の優先度受注パラメータと、記憶部13の在庫品情報データベース32に格納された優先度在庫パラメータのうちの任意の1の優先度在庫パラメータに基づいて各受注オーダーに引き当てる各在庫品ロットの引当数を設定した第1引当組合せ解を作成するものである。ここで、第1引当組合せ解作成部42は、上記優先度受注パラメータにおける優先度が高い受注オーダーから順に、上記優先度在庫パラメータにおける優先度が高い在庫品ロットの引当数を設定していくことによって上記第1引当組合せ解を作成する。各引当数の設定の手順の詳細は後述する。
The first allocation combination
第2引当組合せ解作成部43は、第1引当組合せ解作成部42が用いた優先度受注パラメータ又は優先度在庫パラメータの少なくとも一方を変更した優先度受注パラメータ及び優先度在庫パラメータに基づいて各受注オーダーに引き当てる各在庫品ロットの引当数を設定した第2引当組合せ解を作成するものである。このように優先度受注パラメータ又は優先度在庫パラメータの少なくとも一方を変更して第2引当組合せ解を作成することにより、第2引当組合せ解は、第1引当組合せ解で設定された引当数の組合せとは異なる引当数の組合せとなる。
The second allocation combination
評価値比較部44は、上記第1引当組合せ解と上記第2引当組合せ解とをそれぞれ評価関数に基づいて評価値を算出し、それらの評価値を比較する。ここで算出される評価値によって第1引当組合せ解及び第2引当組合せ解のうちのいずれがより優れた解であるかを特定することができる。また評価値比較部44は、後述する仮引当組合せ解作成部48によって作成された仮引当組合せ解の評価値を算出し、局所変更解作成部50によって作成された局所変更引当組合せ解の評価値を算出する。この仮引当組合せ解の評価値及び局所変更引当組合せ解の評価値を、引当組合せ解の評価値と比較することで、いずれがより優れた解であるかを特定することができる。
The evaluation
引当組合せ解設定部45は、上記評価値比較部44によって算出された第1引当組合せ解の評価値と第2引当組合せ解の評価値とを比較し、より優れた評価値を示す解を引当組合せ解に設定する。これにより優先度受注パラメータ又は優先度在庫パラメータの少なくとも一方を変更して2種類の引当組合せ解が作成され、そのうちの評価値が優れた方を引当組合せ解に設定することができる。
The allocation combination
カウンタ部46は、後述する仮引当組合せ解作成部48が仮引当組合せ解を作成した回数を数えるものである。例えば引当組合せ解が第1引当組合せ解と第2引当組合せ解とのいずれか優れた方を設定したものである場合、仮引当組合せ解は一度も作成されていないので、カウンタ部46は、カウンタnの値を0に設定する。カウンタ部46は、その後、仮引当組合せ解作成部48によって仮引当組合せ解を作成した回数に応じてカウンタnの値を1ずつ増数させる。
The
カウンタ成否判定部47は、カウンタnの値が予めユーザによって設定されたループ数設定値Kを満たすか否かを判定するものであり、具体的にはカウンタnの値がループ数設定値Kと同値となる場合に、さらなる仮引当組合せ解を作成する必要はないと判定し、カウンタnの値がループ数設定値Kに到達していない場合に、さらに仮引当組合せ解を作成すべきと判定する。ループ数設定値Kは、例えば100又は1000等のようにユーザーによって任意に設定されるものであり、解探索条件データベース33に格納されている。本実施形態において、ループ数設定値Kは、第1ループ回数の一例に相当する。
The counter success /
仮引当組合せ解作成部48は、上記第1引当組合せ解作成部42及び第2引当組合せ解作成部43が用いた優先度受注パラメータ又は優先度在庫パラメータのうちの少なくとも一方を変更した優先度受注パラメータ及び優先度在庫パラメータに基づいて各受注オーダーに引き当てる各在庫品ロットの引当数を設定した仮引当組合せ解を作成する。ここで作成された仮引当組合せ解は、上記引当組合せ解を更新する候補となるものであり、仮引当組合せ解の評価値が引当組合せ解の評価値以上である場合にはその仮引当組合せ解が新たな引当組合せ解となる。
The provisional allocation combination
引当組合せ解更新部49は、上記評価値比較部44による比較の結果、仮引当組合せ解の評価値が、引当組合せ解の評価値以上の場合に、仮引当組合せ解作成部48によって作成された仮引当組合せ解を新たな引当組合せ解に書き換えるものである。
The provisional combination
局所変更解作成部50は、引当組合せ解における任意の1の受注オーダーに対する任意の1種の前記在庫品ロットの引当数を変更した局所変更引当組合せ解を作成するものである。ここで作成された局所変更引当組合せ解は、上記引当組合せ解を更新する候補となるものであり、局所変更引当組合せ解の評価値が引当組合せ解の評価値以上である場合にはその局所変更引当組合せ解が新たな引当組合せ解となる。
The local change allocation
このような在庫引当システム1は、例えばパーソナルコンピュータ等のコンピュータによって構成されてよいし、また例えば、処理サーバ装置、データサーバ装置および入出力端末装置を互いに通信可能に備えたシステムで構成されてもよい。
Such an
以下においては、第1実施形態の在庫引当方法を構成する各ステップを説明する。図2は第1実施形態における在庫引当方法のうちの全体探索の手順を示すフローチャートであり、図3は第1実施形態における在庫引当方法のうちの局所探索の手順を示すフローチャートである。上記在庫引当システム1を用いた在庫引当方法は、解空間における全体探索と局所探索とを組み合わせることで、同一又は相異なる複数種の製品を作製するために引き当てる1種又は複数種の在庫品ロットの引当数の組合せを設定した引当組合せ解を決定するものであり、オペレータが在庫引当システム1に対し在庫引当処理の実行を指示したタイミングでスタートして、制御処理部14が図2のステップS1の処理に進む。
In the following, each step constituting the inventory allocation method of the first embodiment will be described. FIG. 2 is a flowchart showing the procedure of the overall search of the inventory allocation method in the first embodiment, and FIG. 3 is a flowchart showing the procedure of the local search of the inventory allocation method in the first embodiment. In the inventory allocation method using the
このスタートと同時に、制御処理部14は、必要な各部の初期化を実行し、制御処理プログラムの実行によって、制御処理部14には、制御部41、第1引当組合せ解作成部42、第2引当組合せ解作成部43、評価値比較部44、引当組合せ解設定部45、カウンタ部46、カウンタ成否判定部47、仮引当組合せ解作成部48、引当組合せ解更新部49、及び局所変更解作成部50等が機能的に構成される。上記在庫引当システムは、各製品に対する各在庫品の引当数の決定に関して、大略、次のように動作する。
At the same time as this start, the
まず、制御処理部14は、制御部41によって、製品情報データベース31に格納されている受注オーダーに関するデータ、在庫品情報データベース32に格納されている在庫品に関するデータ、及び解探索条件データベース33に格納されている引当に関する制約条件に関するデータを読み込む。
First, the
制御処理部14は、図2に示すように、第1引当数組合せ解作成部42によって、任意の1の優先度受注パラメータ及び任意の1の優先度在庫パラメータに基づいて各受注オーダーに引き当てる各在庫品ロットの引当数を設定した第1引当組合せ解を作成する(S1)。
As shown in FIG. 2, the
次に、制御処理部14は、第2引当数組合せ解作成部43によって、第1引当数組合せ解作成部42が用いた優先度受注パラメータ又は優先度在庫パラメータのうちの少なくとも一方を変更した優先度受注パラメータ又は優先度在庫パラメータに基づいて各受注オーダーに引き当てる各在庫品ロットの引当数を設定した第2引当組合せ解を作成する(S2)。
Next, the
次に、制御処理部14は、評価値比較部44によって、上記第1引当組合せ解の評価値EV1と、第2引当組合せ解の評価値EV2を算出し、評価値EV1と評価値EV2とを比較する(S3)。そして、制御処理部14は、引当組合せ解設定部45によって、上記第1引当組合せ解の評価値EV1と第2引当組合せ解の評価値EV2とのうちのより優れた評価値を示す方の解を引当組合せ解に設定する(S4)。
Next, the
次に、制御処理部14は、カウンタ部46によって、仮引当組合せ解を作成した回数を示すカウンタnの値を0に設定する(S5)。ここでは、仮引当組合せ解は一度も作成されていないので、カウンタnの値が0に設定される。
Next, the
次に、制御処理部14は、カウンタ成否判定部47によって、カウンタnの値がループ数設定値Kを満たすか否かを判定する(S6)。そして、カウンタnの値がループ数設定値Kと同値である場合(S6:Yes)、制御処理部14は、記憶部13に記憶された引当組合せ解を最適解として記憶部13に格納し、全体探索の処理を終了する(エンド)。例えば、ループ数設定値Kが0に設定されている場合、制御処理部14は、ステップS7に進むことなく、ステップS4で定めた引当組合せ解を記憶部13に格納し、処理を終了する(エンド)。記憶部13に格納された引当組合せ解は、必要に応じて、制御部41によって外部機器に出力されてもよい。一方、カウンタnの値がループ数設定値Kに満たない場合(S6:No)、カウンタ部46によってカウンタnの値を1増数させて(S7)、ステップS8の処理に進む。
Next, the
次に、制御処理部14は、仮引当組合せ解作成部48によって、第1組合せ解作成部42又は第2組合せ解作成部43が用いた優先度受注パラメータ又は優先度在庫パラメータのうちの少なくとも一方を変更した優先度受注パラメータ及び優先度在庫パラメータに基づいて各受注オーダーに引き当てる各在庫品ロットの引当数を設定した仮引当組合せ解を作成する(S8)。
Next, the
そして、制御処理部14は、評価値比較部44によって、引当組合せ解設定部45で設定された引当組合せ解の評価値EV3及び前記仮引当組合せ解の評価値EV4を算出し、評価値EV3と評価値EV4とを比較する(S9)。そして、前記仮引当組合せ解の評価値EV4が前記引当組合せ解の評価値EV3未満の場合(S9:No)、制御処理部14はステップS6の処理に戻る。一方、前記仮引当組合せ解の評価値EV4が前記引当組合せ解の評価値EV3以上の場合(S9:Yes)、引当組合せ解更新部49は、前記仮引当組合せ解を新たな引当組合せ解に書き換えた上で(S10)。制御処理部14はステップS6の処理に戻る。
Then, the
以上のようにしてステップS5〜S10の各工程を繰り返すことで、カウンタ部46がカウンタnの値を1ずつ増数させて、カウンタnの値がループ数設定値KになるまでステップS5〜ステップS10の各工程を繰り返す。このようにステップS8において、優先度在庫パラメータ又は優先度在庫パラメータの少なくとも一方を変更して作成された仮引当組合せ解を作成し、ステップS9において、当該仮引当組合せ解の評価値が、元の引当組合せ解の評価値以上となる場合のみ仮引当組合せ解を新たな引当組合せ解に設定することにより、各受注オーダーに対する各在庫品ロットの引当数をより適した値に設定することができる。そして、受注オーダーの優先順位を決める優先度受注パラメータと在庫品ロットの優先順位を決める優先度在庫パラメータの組合せを変えて仮引当組合せ解を設定するステップS8の実行回数を多くするほど、引当組合せ解を書き換える回数を多くなるので、引当組合せ解を最適解に近づけることができる。
By repeating each step of steps S5 to S10 as described above, the
上記各ステップにより、全体探索による引当組合せ解が設定される(S11)。この引当組合せ解に対して以下の各工程による局所探索を施すことでより適した引当数を設定した引当組合せ解に修正することができる。 Each of the above steps sets an allocation combination solution by a global search (S11). By performing a local search by each of the following steps on this allocation combination solution, it is possible to modify it to an allocation combination solution in which a more suitable number of allocations is set.
制御処理部14は、カウンタ部46によって、局所変更解を作成した回数を示すカウンタnの値を0に設定する(S12)。ここでは、局所変更解は一度も作成されていないので、カウンタnの値が0に設定される。
The
次に、制御処理部14は、カウンタ成否判定部47によって、カウンタnの値がループ数設定値Lを満たすか否かを判定する。このループ数設定値Lは、ループ数設定値Kと同じ値であっても異なる値であってもよい。そして、カウンタnの値がループ数設定値Lと同値である場合(S13:Yes)、制御処理部14は、記憶部13に記憶された引当組合せ解を最適解として記憶部13に格納し、全体探索の処理を終了する(エンド)。つまり、ループ数設定値Lが0に設定されている場合は、制御処理部14は、ステップS14に進むことなく、ステップS11で定めた引当組合せ解を記憶部13に格納し、処理を終了する(エンド)。一方、カウンタnの値がループ数設定値Lに満たない場合(S13:No)、カウンタ部46によってカウンタnの値を1増数させて(S14)、ステップS15の処理に進む。
Next, the
次に、制御処理部14は、局所変更解作成部50によって、引当組合せ解における任意の1の受注オーダーに対する任意の1種の在庫品ロットの引当数を変更した局所変更引当組合せ解を作成する(S15)。ここでの引当数は、0以上の整数であって、かつ受注オーダーの受注量又は在庫品の在庫数のいずれか小さい方の数値を上限とする整数の中からランダムに設定される。なお、このように引当数を変更したことに伴って、各種の制約条件を満たさなくなった場合には、それらの各種制約条件を満たすように各在庫品ロットの引当数を適宜修正する工程を含む。
Next, the
次に、制御処理部14は、評価値比較部44によって、引当組合せ解の評価値EV5及び局所変更引当組合せ解の評価値EV6を算出し、評価値EV5と評価値EV6とを比較する(S16)。そして、局所変更引当組合せ解の評価値EV6が引当組合せ解の評価値EV5未満の場合(S16:No)、前記引当組合せ解を変更せず、制御処理部14はステップS13の処理に戻る。一方、局所変更引当組合せ解の評価値EV6が引当組合せ解の評価値EV5以上の場合(S16:Yes)、引当組合せ解更新部49は、局所変更引当組合せ解を新たな引当組合せ解に書き換えた上で(S17)。制御処理部14はステップS13の処理に戻る。このようにして引当組合せ解の一部を修正することにより引当組合せ解の評価値をより高めることができる。本実施形態において、ループ数設定値Lは、第2ループ回数の一例に相当する。
Next, the
<引当問題の具体例>
次に、本第1実施形態の在庫引当方法によって、N種類の受注オーダーに対するM種類の在庫品ロットの引当数を設定する手順を説明する。引当組合せ解は、下記の表1のN×Mの行列で表され、受注オーダーは、受注オーダーJ1、J2、J3、・・・、JNの合計N種類があり、在庫品ロットは、在庫品ロットL1、L2、L3、・・・、LMの合計M種類がある。
<Specific example of allocation problem>
Next, a procedure for setting the allocation number of M types of inventory lots for N types of order orders will be described by the inventory allocation method of the first embodiment. The allocation combination solution is represented by the N × M matrix in Table 1 below, and there are a total of N types of order orders J1, J2, J3, ..., JN, and the inventory lot is an inventory item. There are a total of M types of lots L1, L2, L3, ..., LM.
表1における「在庫品群」は、同一の製造地及び製造日に製造された一群の在庫品である。同一の在庫品群に属する在庫品であっても、製造後の品質検査において異なる性質を示す在庫品に対して別々の在庫品ロットを設定している。例えば、同一の在庫品群G1に属する複数の在庫品ロットL1、L2は、同一の製造日に同一の製造地で製造された在庫品群に含まれる在庫品であるが、その後の品質検査で異なる性質を示すことが明らかとなった2種類の在庫品である。 The “inventory group” in Table 1 is a group of inventories manufactured at the same place of manufacture and on the date of manufacture. Even if the inventories belong to the same inventories group, different inventories lots are set for the inventories showing different properties in the quality inspection after manufacturing. For example, a plurality of inventories lots L1 and L2 belonging to the same inventories group G1 are inventories included in the inventories manufactured in the same manufacturing place on the same manufacturing date, but in the subsequent quality inspection. There are two types of inventories that have been shown to exhibit different properties.
表1における「在庫品ロット」は、同一の製造日時、製造場所、幅、長さ、重量及び各種性能等の属性に応じて在庫品に対し個別のロット番号を付してグループ分けした在庫品の管理番号であり、表1の横の数列は各在庫品ロットの引当数をそれぞれ個別に設定したものである。各在庫品ロットにはそれぞれ個別に在庫量が設定されており、当該在庫量は、在庫品ロットの在庫数である。例えば在庫品ロットL1の在庫品は10個の在庫が存在し、全ての受注オーダーに対して合計で最大10個の在庫品を引き当てることができる。 “Inventory lots” in Table 1 are inventories that are grouped by assigning individual lot numbers to inventories according to attributes such as the same manufacturing date, manufacturing location, width, length, weight, and various performances. In the number sequence next to Table 1, the number of allocations for each inventory lot is set individually. An inventory amount is set individually for each inventory lot, and the inventory amount is the number of inventories of the inventory lot. For example, the inventory of the inventory lot L1 has 10 inventories, and a total of up to 10 inventories can be allocated to all the ordered orders.
在庫品群と在庫品ロットとの関係の一例として、例えば、同一の製造日に同一の製造地で製造された在庫品は、本来であれば同一の在庫品ロットを付して管理すべきであるが、その在庫品の保管場所を異なる場所(例えば倉庫WH1と倉庫WH2)にした場合や、各場所によって在庫品ロットが異なる性質を示すものとなっていることが品質検査において判明した場合には、それぞれの在庫品は、受注オーダーへの引当においては保管場所又は品質に応じて別々の在庫品ロットとして引き当てるべき在庫品となる。 As an example of the relationship between the inventory group and the inventory lot, for example, inventory products manufactured at the same manufacturing site on the same manufacturing date should be managed with the same inventory product lot. However, when the storage location of the inventory is different (for example, warehouse WH1 and warehouse WH2), or when it is found in the quality inspection that the inventory lot shows different properties depending on each location. Is an inventory item that should be allocated as a separate inventory item lot according to the storage location or quality in the allocation to the order.
各在庫品ロットにはそれぞれ、各受注オーダーに引き当てるべき在庫品ロットの優先順位を決定する優先度在庫パラメータが予め2以上設定されている。この優先度在庫パラメータが高いほど受注オーダーに引き当てる優先度が高い在庫品ロットであることを意味する。なお、優先度が高い在庫品ロットとは、換言すれば、優先的に引き当て消化したい在庫品ロットということであり、例えば早く使い切ってしまいたい在庫品ロット、汎用性が低く引き当てにくい在庫品ロット等は優先度が高い在庫品ロットとなる。このような優先度在庫パラメータとしては、例えば各在庫品ロットに個別に設定された基本的な優先度値、各在庫品ロットの引当可能な受注オーダーの種類数、各在庫品ロットの在庫量、各在庫品ロットの在庫滞留期間、各在庫品ロットが受注オーダーに引き当てられなかった回数、各在庫品ロットの製造年月日、ランダムに設定される各在庫品ロットの優先度等が挙げられる。 For each inventory lot, two or more priority inventory parameters that determine the priority of the inventory lot to be assigned to each order are set in advance. The higher the priority inventory parameter, the higher the priority of the inventory lot to be assigned to the order. In other words, an inventory lot with a high priority is an inventory lot that you want to preferentially allocate and digest. For example, an inventory lot that you want to use up quickly, an inventory lot that is low in versatility and difficult to allocate, etc. Is a high-priority inventory lot. Such priority inventory parameters include, for example, a basic priority value set individually for each inventory lot, the number of types of sales orders that can be allocated for each inventory lot, and the inventory quantity of each inventory lot. The inventory retention period of each inventory lot, the number of times each inventory lot was not assigned to the order, the date of manufacture of each inventory lot, the priority of each inventory lot set at random, and the like can be mentioned.
上記各優先度在庫パラメータは、例えば引当可能な受注オーダーの種類数が少ないほど受注オーダーに引き当てるべき優先度が高く、在庫品ロットの在庫量が多いほど優先度が高く、在庫品ロットの滞留期間が長いほど優先度が高く、引き当てられている受注オーダー数が少ないほど優先度が高く、製造年月日が古いほど優先度が高いなど、複数の優先度基準がある。また優先度をランダムに決定することもできる。これらのうちのいずれかの優先度在庫パラメータに基づいて在庫品ロットを順位付けした上でその優先順位が高い在庫品ロットから順に引当数が設定される。 For each of the above priority inventory parameters, for example, the smaller the number of types of order orders that can be allocated, the higher the priority that should be assigned to the order, and the larger the inventory amount of the inventory lot, the higher the priority. There are multiple priority criteria, such as the longer the number, the higher the priority, the smaller the number of ordered orders assigned, the higher the priority, and the older the date of manufacture, the higher the priority. It is also possible to randomly determine the priority. After ranking the inventory lots based on the priority inventory parameter of any of these, the allocation number is set in order from the inventory lot with the highest priority.
表1における「受注オーダー」は、製品を作製するために引き当てる各在庫品ロットの引当数を設定したものであり、各受注オーダーにはそれぞれ個別に受注量が設定されており、さらに必要に応じて、在庫品群数上限及び引当数下限のような制約条件が設定されている。表1の縦の数列が1つの受注オーダーに相当し、例えば、受注オーダーJ1は、在庫品ロットL1を0個、在庫品ロットL2を2個、・・・、在庫品ロットLMを5個をそれぞれ引き当てることが設定されている。なお、ここでの引当数の単位は「個」に限られず、例えば扱う在庫品に応じて、枚数(枚)、本数(本)、重量(g、kg、ton)、体積(cm3、m3)等で表されることもある。 The "orders ordered" in Table 1 set the number of allocations for each inventory lot to be allocated to manufacture the product, and the order quantity is set individually for each order, and if necessary. Therefore, constraints such as the upper limit of the number of inventories and the lower limit of the number of allocations are set. The vertical sequence in Table 1 corresponds to one order, for example, the order J1 has 0 inventory lots L1, 2 inventory lots L2, ..., 5 inventory lots LM. It is set to allocate each. The unit of the number of allocations here is not limited to "pieces". For example, depending on the stock items to be handled, the number of sheets (sheets), the number (pieces), the weight (g, kg, ton), and the volume (cm 3 , m). It may be represented by 3) or the like.
受注オーダーの受注量は、製品を作製するために引き当てるべき在庫品の引当数の合計であり、その合計には表1に示すように個別の受注オーダーの事情に応じて数値範囲が設定されることもある。各受注オーダーに引き当てられる各在庫品ロットの引当数の合計が、各受注オーダーの受注量の上限を上回ることがないように各在庫品ロットの引当数が設定される。表1の受注オーダーJ1を例にとると、受注オーダーJ1の受注量は4以上7以下に設定されているので、受注オーダーJ1に引き当てる在庫品ロットの引当数の合計が8以上となることがないように各在庫品ロットの引当数が設定される。 The order quantity of the order is the total number of inventories to be allocated to manufacture the product, and a numerical range is set for the total according to the circumstances of the individual order as shown in Table 1. Sometimes. The allocation number of each inventory lot is set so that the total number of allocations of each inventory lot assigned to each sales order does not exceed the upper limit of the order quantity of each order. Taking the order order J1 in Table 1 as an example, since the order quantity of the order order J1 is set to 4 or more and 7 or less, the total number of stock lots allocated to the order order J1 may be 8 or more. The number of allocations for each inventory lot is set so that there is no such thing.
そして、受注オーダーに引き当てられる各在庫品ロットの引当数の合計が、当該受注オーダーの受注量の範囲内にある場合のその受注オーダーを「充当完了オーダー」といい、上記受注量の範囲の下限値未満のその受注オーダーを「未充当オーダー」という。例えば受注オーダーJ1の場合、各在庫品ロットの引当数の合計が4以上7以下である場合の受注オーダーJ1を充当完了オーダーといい、各在庫品ロットの引当数の合計が3以下の場合の受注オーダーJ1を未充当オーダーという。また引当組合せ解における全ての受注オーダーに対する充当完了オーダーの割合(%)を充当完了率ということもある。 When the total number of allocations of each inventory lot allocated to the order is within the range of the order quantity of the order, the order is called "allocation completed order", and the lower limit of the range of the order quantity is described. Orders that are less than the value are called "unallocated orders". For example, in the case of order order J1, order order J1 when the total number of reserves for each inventory lot is 4 or more and 7 or less is called an allocation completion order, and when the total number of reserves for each inventory lot is 3 or less. Order order J1 is called an unallocated order. In addition, the ratio (%) of allocation completion orders to all order orders in the allocation combination solution may be referred to as the allocation completion rate.
各受注オーダーの在庫品群数上限は、在庫品群の種類数の上限で設定された種類数の在庫品群に含まれる在庫品ロットのうちから在庫品ロットを引き当てる必要があることを定めたものであり、例えば、表1の受注オーダーJ1に在庫品を引き当てる場合には、3種類以下の在庫品群に含まれる在庫品ロットの中から在庫品ロットを引き当てる必要があり、4種類以上の在庫品群に含まれる在庫品ロットの中から在庫品ロットを引き当てることができないことを定めた制約条件である。例えば在庫品群数上限が1と設定されている場合には、単一の在庫品群に含まれる在庫品ロットのうちから引当数を設定して受注オーダーの受注量を満たす必要があるし、在庫品群数上限が2と設定されている場合には、多くても2種類(好ましくは1種類)の在庫品群に含まれる在庫品ロットのうちから引当数を設定して受注オーダーの受注量を満たす必要がある。例えば、在庫品ロットL1と在庫品ロットL2とは同一の在庫品群G1に属しているので、在庫品ロットL1及び在庫品ロットL2の両方を引き当てても在庫品群数としては1種類としてカウントされる。 The upper limit of the number of inventories of each order has been stipulated that it is necessary to allocate the inventories lot from the inventories lots included in the inventories of the number of types set by the upper limit of the types of inventories. For example, when an inventory item is assigned to the order order J1 in Table 1, it is necessary to allocate an inventory item lot from the inventory item lots included in the inventory item group of 3 or less types, and 4 or more types of inventory items must be allocated. This is a constraint condition that stipulates that an inventory lot cannot be assigned from the inventory lots included in the inventory group. For example, when the upper limit of the number of inventories is set to 1, it is necessary to set the allocation number from the inventories lots included in a single inventory group to satisfy the order quantity of the order. When the upper limit of the number of in-stock items is set to 2, the order is received by setting the allocation number from the inventories lots included in at most two types (preferably one type) of inventories. Need to meet the quantity. For example, since the inventory item lot L1 and the inventory item lot L2 belong to the same inventory item group G1, even if both the inventory item lot L1 and the inventory item lot L2 are assigned, the number of inventory items is counted as one type. Will be done.
各受注オーダーの引当数下限は、受注オーダーに対し、1つの在庫品群に含まれる在庫品ロットの引当数の総和の最低数を設定したものであり、各受注オーダーに対して引き当てる各在庫品ロットを含む在庫品群の種類数を少なくするための制約条件である。例えば、ある受注オーダーの引当数下限が3と定められている場合、その受注オーダーに対して1つの在庫品群に含まれる全ての在庫品ロットの引当数の総和を1又は2とすることは許されず、その総和が3以上となるように設定する必要があり、3以上の引当数を設定できない場合にはその在庫品群に含まれる全ての在庫品ロットの引当数は0に設定される。 The lower limit of the number of allocations for each order is set to the minimum number of the total number of allocations of inventory lots included in one inventory group for the order, and each inventory to be allocated to each order. This is a constraint condition for reducing the number of types of inventory items including lots. For example, if the lower limit of the number of reserves for a certain order is set to 3, the total number of reserves for all inventory lots included in one inventory group for that order may be 1 or 2. It is not allowed and the total must be set to 3 or more, and if the allocation number of 3 or more cannot be set, the allocation number of all inventory lots included in the inventory group is set to 0. ..
例えば表1の受注オーダーJ1に在庫品を引き当てる場合には、最低でも1つの在庫品群に属する全ての在庫品ロットの引当数の総和を3以上とする必要がある。引当数下限も、上記在庫品群数上限と同様に在庫品群単位で数えられる。したがって、例えば受注オーダーJ1に在庫品を引き当てる場合には、在庫品ロットL1の引当数を1とし、在庫品ロットL2の引当数を2としても、在庫品群G1に属する在庫品ロットの引当数の総和が3となるので、上記受注オーダーJ1の引当数下限を満たすことになる。 For example, when inventories are assigned to the order J1 in Table 1, the total number of all inventories lots belonging to at least one inventories group must be 3 or more. The lower limit of the number of reserves is also counted in units of the inventory group as in the case of the upper limit of the number of inventory items. Therefore, for example, when allocating an inventory item to order J1, even if the allocation number of the inventory item lot L1 is 1 and the allocation number of the inventory item lot L2 is 2, the allocation number of the inventory item lot belonging to the inventory item group G1 Since the sum of 3 is 3, the lower limit of the number of allocations of the order J1 is satisfied.
上記のように受注オーダーに対して在庫品群数上限及び引当数下限等の制約条件が課されることにより、別々の在庫品群に含まれる在庫品ロットから1つずつ細切れで引き当てられることを防止することができる。 As described above, by imposing constraints such as the upper limit of the number of stock items and the lower limit of the number of reserves for the order, it is possible to allocate one by one from the inventory lots included in different inventory groups. Can be prevented.
各受注オーダーにもそれぞれ、各在庫品ロットと同様に、在庫品ロットを引き当てるべき受注オーダーの優先順位を決定する優先度受注パラメータが予め設定されている。当該優先度受注パラメータとしては、例えば各受注オーダーに個別に設定された基本的な優先度値、受注オーダーによって作製される製品の納期までの期間、過去の引当処理において未充当オーダーとなった回数、ランダムに設定される優先度等が挙げられる。これらのうちのいずれかの優先度受注パラメータに基づいて受注オーダーを順位付けした上で、その優先順位が高い順に受注オーダーに対して各在庫品ロットの引当数が設定される。 Similar to each inventory lot, each order has a priority order parameter that determines the priority of the order to which the inventory lot should be assigned. The priority order parameters include, for example, the basic priority value set individually for each order, the period until the delivery date of the product produced by the order, and the number of unallocated orders in the past allocation process. , Randomly set priority, etc. Orders are ranked based on any of these priority order parameters, and the number of allocations for each inventory lot is set for the order in descending order of priority.
各受注オーダーはそれぞれ個別に特定の在庫品ロットを引き当てることができないという制約条件が存在することもある。このような引当可否の情報は、解探索条件データベース33に格納されており、例えば、下記の表2に示すようなN×Mの行列で表される。表2において、各受注オーダーに対して引当可能な在庫品ロットに「1」を、引当不可の在庫品ロットに「0」をそれぞれ表記している。言い換えると、表2の引当可否の情報における「1」の受注オーダーに対する在庫品ロットの組合せに対して任意の引当数を設定することはできるが、引当可否情報における「0」の受注オーダーに対する在庫品ロットの組合せに対しては0以外の引当数を設定することはできない。
There may be a constraint that each sales order cannot be assigned a particular inventory lot individually. Such allocation availability information is stored in the solution
上記表2に示すように、在庫品群G1のように同一の在庫品群に含まれる在庫品ロットL1、L2であっても、特定の受注オーダー(例えば受注オーダーJ2)に引当可能な在庫品ロットと引当不可能な在庫品ロットとが存在することはあり得る。以下に本第1実施形態の在庫引当方法を構成する全体探索の各工程(S1〜S10)及び局所探索の各工程(S11〜S17)をそれぞれ説明する。概念的な説明ではあるが、全体探索は引当組合せ解における在庫品ロットの行単位及び受注オーダーの列単位を変更して引当組合せ解を最適化するものであるのに対し、局所探索は引当組合せ解のうちの特定の受注オーダーに対する特定の在庫品ロットの引当数を部分的に変更して引当組合せ解の最適化を図るものである。図2は第1実施形態における全体探索のフローチャートであり、図3は第1実施形態における局所探索のフローチャートである。 As shown in Table 2 above, even if the inventory lots L1 and L2 are included in the same inventory group as in the inventory group G1, the inventory items can be allocated to a specific order (for example, order order J2). It is possible that there are lots and unallocated inventory lots. Hereinafter, each step (S1 to S10) of the overall search and each step (S11 to S17) of the local search constituting the inventory allocation method of the first embodiment will be described. Although it is a conceptual explanation, the global search optimizes the allocation combination solution by changing the row unit of the stock lot and the column unit of the sales order in the allocation combination solution, whereas the local search is the allocation combination. The number of allocations for a specific inventory lot for a specific sales order in the solution is partially changed to optimize the allocation combination solution. FIG. 2 is a flowchart of the whole search in the first embodiment, and FIG. 3 is a flowchart of the local search in the first embodiment.
(ステップS1:第1引当組合せ解の作成(第1工程))
ステップS1において、第1引当組合せ解作成部42は、優先度受注パラメータのうちの任意の1の優先度受注パラメータ及び前記優先度在庫パラメータのうちの任意の1の優先度在庫パラメータに基づいて各受注オーダーに引き当てる各在庫品ロットの引当数を設定した第1引当組合せ解を作成する。
(Step S1: Creation of first allocation combination solution (first step))
In step S1, each of the first allocation combination
ここで、各在庫品ロットの引当数の設定の手順は、受注オーダーに対して引当数下限の制約条件及び在庫品群数上限の制約条件が設定されている場合と、これらの制約条件が設定されていない場合とで異なる。以下に各場合における引当数の設定の手順を説明する。 Here, the procedure for setting the allocation number of each inventory lot is when the constraint condition of the lower limit of the allocation number and the constraint condition of the upper limit of the number of stock items are set for the order, and these constraint conditions are set. It is different from the case where it is not done. The procedure for setting the number of allocations in each case will be described below.
(受注オーダーに引当数下限及び在庫品群数上限の制約条件が設定されていない場合)
受注オーダーに引当数下限及び在庫品群数上限の制約条件が設定されていない場合、優先度受注パラメータの優先度が高い順に受注オーダーを並べるとともに、優先度在庫パラメータの高い順に在庫品ロットを並べる。例えば優先度受注パラメータとして受注オーダーの納期を用いるとともに、優先度受注パラメータとして在庫品の在庫数を用いる場合には、受注オーダーの納期が近い順に受注オーダーを並べるとともに、在庫品ロットの在庫数が多い順に在庫品ロットを並べる。
(When the lower limit of the number of reserves and the upper limit of the number of inventories are not set in the order)
If the sales order does not have the constraints of the lower limit of the number of allocations and the upper limit of the number of stock items, the sales order is arranged in descending order of priority of the priority order parameter, and the inventory lot is arranged in descending order of priority inventory parameter. .. For example, when the delivery date of an order is used as the priority order parameter and the inventory quantity of inventories is used as the priority order parameter, the order orders are arranged in the order of the delivery date of the order order and the inventory quantity of the inventory lot is increased. Arrange inventory lots in descending order.
このように受注オーダー及び在庫品ロットを並べた上で、最も優先度受注パラメータが高い受注オーダーに対し、最も優先度在庫パラメータが高い在庫品ロットから優先度の高い順に引当数を設定していく。具体的には、まず、受注オーダーの受注量と、当該受注オーダーに引当可能な在庫品ロットのうちの最も優先度が高い在庫品ロットの在庫量とを比較し、その小さい方の数値を当該受注オーダーに引き当てる在庫品ロットの引当数として設定する。ここで設定した引当数が受注オーダーの受注量を満たす場合には、当該受注オーダーに対する引当処理を終了し、次に優先度が高い受注オーダーの引当処理を実行する。 After arranging the order and inventory lots in this way, for the order with the highest priority order parameter, the number of allocations is set in descending order of priority from the inventory lot with the highest priority inventory parameter. .. Specifically, first, the order quantity of the order is compared with the inventory quantity of the inventory lot with the highest priority among the inventory lots that can be allocated to the order, and the smaller value is used. Set as the number of stock lots to be allocated to the sales order. When the number of allocations set here satisfies the order quantity of the order, the allocation process for the order is terminated, and the allocation process for the order with the next highest priority is executed.
一方、上記で設定した引当数が受注オーダーの受注量に満たない場合には、当該受注オーダーの受注量からすでに在庫品ロットを引き当てた引当数を減算することにより、当該受注オーダーに引き当てるべき在庫品ロットの残引当数を算出する。そして、当該残引当数と、当該受注オーダーに引当可能な在庫品ロットのうちの2番目に優先度が高い在庫品ロットの在庫量とを比較し、その小さい方の数値を当該受注オーダーに引き当てる在庫品ロットの引当数として設定する。そして、当該受注オーダーに引き当てた全ての在庫品ロットの引当数の総和が受注オーダーの受注量を満たす場合には、当該受注オーダーに対する引当処理を終了し、次に優先度が高い受注オーダーの引当処理に進む。 On the other hand, if the number of allocations set above is less than the order quantity of the order, the inventory to be allocated to the order is obtained by subtracting the allocation number for which the inventory lot has already been allocated from the order quantity of the order. Calculate the number of remaining reserves for the product lot. Then, the number of remaining reserves is compared with the inventory quantity of the inventory lot with the second highest priority among the inventory lots that can be allocated to the order, and the smaller value is assigned to the order. Set as the number of stock lots to be allocated. Then, when the sum of the allocation numbers of all the inventory lots allocated to the order is satisfied with the order quantity of the order, the allocation process for the order is completed and the next highest priority order is allocated. Proceed to processing.
一方、上記受注オーダーに引き当てた全ての在庫品ロットの引当数の総和が受注オーダーの受注量に満たない場合には、当該受注オーダーの受注量からすでに在庫品ロットを引き当てた引当数の合計を減算することにより、当該受注オーダーに引き当てるべき在庫品ロットの残引当数を算出する。そして、当該残引当数と、当該受注オーダーに引当可能な在庫品ロットのうちの3番目に優先度が高い在庫品ロットの在庫量とを比較し、その小さい方の数値を当該受注オーダーに引き当てる在庫品ロットの引当数として設定する。このような操作を繰り返すことにより受注オーダーの受注量を満たすまで引当可能な在庫品ロットの優先度順に引当数を設定していく。これにより優先度の高い受注オーダーに対して優先度の高い在庫品ロットを優先的に引き当てることができる。 On the other hand, if the total number of all inventories allocated to the above-mentioned order is less than the order quantity of the order, the total number of inventories already allocated from the order quantity of the order is added. By subtracting, the number of remaining stock lots to be allocated to the order is calculated. Then, the number of remaining reserves is compared with the inventory amount of the inventory lot with the third highest priority among the inventory lots that can be allocated to the order, and the smaller value is assigned to the order. Set as the number of stock lots to be allocated. By repeating such an operation, the number of allocations is set in the order of priority of the inventory lots that can be allocated until the order quantity of the order is satisfied. As a result, it is possible to preferentially allocate high-priority inventory lots to high-priority order orders.
しかし、受注オーダーに対して引当可能な全ての在庫品ロットの引当数を設定してもなお全ての在庫品ロットの引当数の合計が受注オーダーの受注量に満たない場合もある。この場合には、その受注オーダーを未充当オーダーとして引当処理を終了し、次に優先度の高い受注オーダーの引当処理に進む。このような未充当オーダーが発生しても有効な引当組合せ解として扱うものとする。なぜなら、現実問題として在庫品ロットの在庫数が足りずに受注オーダーの受注量を充足させ得ない場合でも、次回の引当処理までに特定の在庫品ロットが納入されることで、その在庫品の不足分を未充当オーダーに引き当てることができ、これにより充当完了オーダーにすることができるからである。 However, even if the allocation number of all inventory lots that can be allocated for the order is set, the total allocation number of all inventory lots may still be less than the order quantity of the order. In this case, the order is regarded as an unallocated order and the allocation process is completed, and then the process proceeds to the allocation process of the order with the highest priority. Even if such an unallocated order occurs, it shall be treated as a valid allocation combination solution. This is because, as a matter of fact, even if the stock quantity of the stock product lot is insufficient to satisfy the order quantity of the order, the specific stock product lot will be delivered by the next allocation process, and the stock product will be delivered. This is because the shortfall can be allocated to the unallocated order, which makes it possible to make the allocated completed order.
(受注オーダーに引当数下限及び在庫品群数上限の制約条件が設定されている場合)
受注オーダーに引当数下限及び在庫品群数上限の制約条件が設定されている場合、在庫品ロット単位で引当数を決定するのではなく、在庫品群単位で在庫品ロットの引当数を設定していく。したがって、まず、在庫品群に含まれる在庫品ロットのうちの優先度在庫パラメータが最も高い値をその在庫品群の優先度として、各在庫品群を優先度が高い順に並べた上で、各在庫品群内において優先度在庫パラメータが高い順に各在庫品ロットを並べる。一方、受注オーダーについては優先度受注パラメータが高い順に並べる。
(When the order has the lower limit of the number of reserves and the upper limit of the number of inventories set)
If the sales order has the lower limit of the number of allocations and the upper limit of the number of stock items, the number of allocations of the inventory lots is set for each inventory group instead of determining the number of allocations for each inventory lot. To go. Therefore, first, the value with the highest priority inventory parameter among the inventory lots included in the inventory group is set as the priority of the inventory group, and each inventory group is arranged in descending order of priority, and then each is arranged. In the inventory group, each inventory lot is arranged in descending order of priority inventory parameter. On the other hand, order orders are arranged in descending order of priority order parameter.
次に、まず受注オーダーの受注量と、当該受注オーダーに引当可能な在庫品ロットのうちの最も優先度が高い在庫品ロットを含む在庫品群に含まれる在庫品ロットのうちの最も優先度が高い在庫品ロットの在庫量とを比較し、その小さい方の数値を当該受注オーダーに引き当てる在庫品ロットの引当数として設定する。ここで設定した引当数が受注オーダーの受注量を満たす場合には、当該受注オーダーに対する引当処理を終了し、次に優先度が高い受注オーダーの引当処理に進む。 Next, first, the order quantity of the order and the highest priority among the inventory lots included in the inventory group including the inventory lot with the highest priority among the inventory lots that can be allocated to the order. Compare with the inventory quantity of the high inventory lot, and set the smaller value as the allocation number of the inventory lot to be assigned to the order. When the number of allocations set here satisfies the order quantity of the order, the allocation process for the order is terminated, and the process proceeds to the allocation process for the order with the next highest priority.
一方、当該受注オーダーに引き当てた在庫品ロットの引当数が受注オーダーの受注量に満たない場合には、当該受注オーダーの受注量からすでに在庫品ロットを引き当てた引当数を減算することにより、当該受注オーダーに引き当てるべき在庫品ロットの残引当数を算出する。そして、当該残引当数と、当該受注オーダーに引当可能な在庫品ロットのうちの最も優先度が高い在庫品ロットを含む在庫品群のうちの2番目に優先度が高い在庫品ロットの在庫量とを比較し、その小さい方の数値を当該受注オーダーに引き当てる在庫品ロットの引当数として設定する。このような操作を繰り返すことにより単一の在庫品群に含まれる在庫品ロットで受注オーダーの受注量を満たすまで引当可能な在庫品ロットの優先度順に引当数を設定する。 On the other hand, if the number of inventories allocated to the order is less than the order quantity of the order, the number of inventories already allocated to the order is subtracted from the order quantity of the order. Calculate the number of remaining inventory lots to be allocated to the sales order. Then, the remaining allocation quantity and the inventory amount of the inventory item lot having the second highest priority in the inventory item group including the inventory item lot having the highest priority among the inventory item lots that can be allocated to the order. Is compared with, and the smaller value is set as the number of stock lots to be allocated to the order. By repeating such an operation, the number of allocations is set in the order of priority of the inventory lots that can be allocated until the order quantity of the order is satisfied by the inventory lots included in a single inventory group.
上記受注オーダーに対して単一の在庫品群に含まれる引当可能な全ての在庫品ロットの引当数を設定し終えた場合、当該在庫品群に含まれる全ての在庫品ロットの引当数の合計値と引当数下限とを比較し、在庫品群に含まれる全ての在庫品ロットの引当数の合計値が引当数下限に満たない場合は、当該在庫品群に含まれる全ての在庫品ロットの引当数を0に設定した上で、2番目に優先度が高い在庫品ロットを含む在庫品群に含まれる在庫品ロットのうちの最も優先度が高い在庫品ロットの引当数を設定する。 When the allocation number of all available inventory lots included in a single inventory group has been set for the above order, the total number of allocations of all inventory lots included in the inventory group. Compare the value with the lower limit of the number of reserves, and if the total value of the number of reserves of all the stock lots included in the stock group is less than the lower limit of the number of reserves, for all the stock lots included in the stock group. After setting the allocation number to 0, the allocation number of the inventory item lot having the highest priority among the inventory item lots included in the inventory item group including the inventory item lot having the second highest priority is set.
一方、在庫品群に含まれる全ての在庫品ロットの引当数の合計値が引当数下限以上となる場合は、当該在庫品群に含まれる全ての在庫品ロットの引当数を上記で設定した通りに維持し、当該受注オーダーに対して2番目に優先度が高い在庫品ロットを含む在庫品群に含まれる在庫品ロットのうちの最も優先度が高い在庫品ロットの引当数を設定する。このような操作を繰り返すことにより2番目に優先度が高い在庫品ロットを含む在庫品群に含まれる全ての在庫品ロットの引当数を設定する。なお、2番目に優先度が高い在庫品ロットを含む在庫品群に含まれる在庫品ロットのうちの上記受注オーダーに引当可能な在庫品ロットの在庫量の総和が上記引当数下限に満たない場合、当該2番目に優先度が高い在庫品ロットを含む在庫品群に含まれる在庫品ロットの引当数を設定せずに、次(3番目)に優先度が高い在庫品ロットを含む在庫品群に含まれる在庫品ロットを引き当てる処理に進む。 On the other hand, if the total number of allocations for all inventory lots included in the inventory group is equal to or greater than the lower limit of the allocation number, the allocation numbers for all inventory lots included in the inventory group are as set above. To set the allocation number of the inventory lot with the highest priority among the inventory lots included in the inventory group including the inventory lot with the second highest priority for the order. By repeating such an operation, the allocation number of all the inventory lots included in the inventory group including the inventory lot having the second highest priority is set. When the total inventory amount of the inventory lots that can be allocated to the above order among the inventory lots included in the inventory group including the inventory lot having the second highest priority is less than the above lower limit of the allocation number. , The inventory group including the next (third) high priority inventory lot without setting the allocation number of the inventory lot included in the inventory group including the second highest priority inventory lot. Proceed to the process of allocating the inventory lot included in.
上記受注オーダーに対して2番目に優先度が高い在庫品ロットを含む在庫品群に含まれる引当可能な全ての在庫品ロットの引当数を設定し終えた場合、当該在庫品群に含まれる全ての在庫品ロットの引当数の合計値と引当数下限とを比較し、在庫品群に含まれる全ての在庫品ロットの引当数の合計値が引当数下限に満たない場合は、当該在庫品群に含まれる全ての在庫品ロットの引当数を0に設定した上で、3番目に優先度が高い在庫品ロットを含む在庫品群に含まれる在庫品ロットのうちの最も優先度が高い在庫品ロットの引当数を設定する。このようにして受注オーダーに対して優先度の高い在庫品ロットを含む在庫品群ごとに在庫品ロットを引き当てることにより優先度の高い受注オーダーに対して優先度の高い在庫品群に含まれる在庫品ロットから順番に在庫品ロットの引当数を設定することができる。 When the allocation number of all available inventory lots included in the inventory group including the inventory lot having the second highest priority for the above order is set, all included in the inventory group. Compare the total number of reserves for stock lots with the lower limit of the number of reserves, and if the total number of reserves for all stock lots included in the inventory group does not meet the lower limit of the number of reserves, the stock group After setting the allocation number of all inventory lots included in to 0, the inventory lot with the highest priority among the inventory lots included in the inventory group including the inventory lot with the third highest priority. Set the number of lots to be allocated. In this way, by allocating an inventory lot for each inventory group including a high-priority inventory lot for an order, the inventory included in the high-priority inventory group for a high-priority order. The number of stocked product lots to be allocated can be set in order from the product lot.
このような操作を繰り返すことにより受注オーダーの受注量を満たすか又は受注オーダーの在庫品群種類数上限を超えるまで引当可能な在庫品ロットを含む在庫品群の優先度順に在庫品ロットの引当数を設定していく。これにより優先度の高い受注オーダーに対して優先度の高い在庫品ロットを含む在庫品群に含まれる在庫品ロットの引当数を優先的に設定することができる。このようにして優先度が高い受注オーダーから順に受注オーダーに対して在庫品ロットの引当数を決定することで、全ての受注オーダーに対して在庫品ロットの引当数を設定する。このようにして第1引当組合せ解を作成することによりステップS1は完了し、制御処理部14はステップS2の処理に進む。
By repeating such operations, the number of stock lots allocated in order of priority of the inventory group including the inventory lots that can be allocated until the order quantity of the order is satisfied or the number of inventory items in the order order exceeds the upper limit. Will be set. As a result, it is possible to preferentially set the allocation number of inventory lots included in the inventory group including the inventory lots with high priority for the order with high priority. In this way, by determining the number of stock lots to be allocated for the order in order from the order with the highest priority, the number of inventory lots to be allocated is set for all the orders. By creating the first allocation combination solution in this way, step S1 is completed, and the
一方、受注オーダーの在庫品群種類数上限と同数の在庫品群に含まれる在庫品ロットを引き当ててもなお全ての在庫品ロットの引当数の合計が受注オーダーの受注量に満たない場合、先に引当済の在庫品ロットのうちの最も優先度が低い在庫品群に含まれる全ての在庫品ロットの引当数を0にした上で、引当処理を実施していない在庫品群のうちの最も優先度が高い在庫品ロットを含む在庫品群に含まれる在庫品ロットのうちの最も優先度が高い在庫品ロットから優先度の高い順に在庫品ロットの引当数を設定する。このようにして在庫品群種類数上限の制約条件を満たしつつ在庫品ロットの引当数を決定していく。 On the other hand, if the total number of all stock lots allocated is still less than the order quantity of the order, even if the inventory lots included in the same number of inventory groups as the upper limit of the number of types of inventory items in the order order are assigned. The number of all inventory lots included in the lowest priority inventory group among the inventory lots allocated to is set to 0, and the most of the inventory items that have not been allocated. Set the allocation number of inventory lots in descending order of priority from the inventory lots with the highest priority among the inventory lots included in the inventory group including the inventory lots with high priority. In this way, the number of inventories lots to be allocated is determined while satisfying the constraint condition of the upper limit of the number of inventories.
上記未充当オーダーに対しては、次回の在庫品の納品後に再度の引当処理を行う場合にも、各受注オーダーの在庫品群種類数の制約条件及び引当数下限の制約条件を満たすように引当数を修正する必要がある。なお、下記の在庫品群種類数上限による修正工程及び引当数下限による修正工程の順序は一例に過ぎず、各修正工程を入れ替えて実行してもよい。 For the above unallocated orders, even if the allocation process is performed again after the next delivery of the inventories, the allocation is made so as to satisfy the constraint condition of the number of stock items in each order and the constraint condition of the lower limit of the allocation number. The number needs to be corrected. The order of the correction steps based on the upper limit of the number of types of inventories and the correction steps based on the lower limit of the number of allocations described below is only an example, and each correction step may be exchanged and executed.
(未充当オーダーが在庫品群種類数上限の制約条件を満たすための修正工程)
上記未充当オーダーに対し在庫品群の種類数の上限が設定されている場合において、当該未充当オーダーに在庫品群種類数の上限と同数の在庫品群に含まれる在庫品ロットを引き当てている場合には、次回の引当処理時に新たな在庫品群に含まれる在庫品ロットを引き当てることができない。このような事態を避けるために、未充当オーダーに対して引き当て済の在庫品ロットのうちのいずれか1以上の在庫品群に含まれる全ての在庫品ロットの引当数を0に設定することにより、次回の引当処理時に在庫品種類数上限の制約条件を満たし得るように在庫品ロットの引当数を修正する。
(Correction process for unallocated orders to satisfy the constraint condition of the upper limit of the number of types in stock)
When the upper limit of the number of types of inventory items is set for the above unallocated order, the inventory lots included in the same number of inventory items as the upper limit of the number of types of inventory items are assigned to the unallocated order. In that case, the inventory lot included in the new inventory group cannot be allocated at the next allocation process. In order to avoid such a situation, by setting the allocation number of all inventory lots included in any one or more inventory groups of the inventory lots already allocated to the unallocated order to 0. , Correct the allocation quantity of the inventory lot so that the constraint condition of the upper limit of the number of inventory types can be satisfied at the next allocation processing.
具体的には、未充当オーダーに引当可能な在庫品群の種類数の上限をAとし、未充当オーダーの受注量の下限をBとし、当該未充当オーダーに引当済の各在庫品ロットの引当数の合計をCとし、次に引当処理を実行するまでに補充される予定の1種の在庫品群に含まれる全ての在庫品ロットの補充予定数の総和をDとすると、上記未充当オーダーに引き当てる在庫品群の種類数が、A−(B−C)÷Dによって算出される値の小数点以下を切り捨てた整数値以下となるように、当該未充当オーダーに引き当てた在庫品群のうちのいずれか1以上の在庫品群に含まれる全ての在庫品ロットの引当数を0にする。このように引当数を修正することにより、未充当オーダーに引当可能な在庫品群の種類数に余裕を持たせることができ、次回の引当処理までに納品される在庫品ロットを引当可能とすることができる。 Specifically, the upper limit of the number of types of inventory items that can be allocated to unallocated orders is A, the lower limit of the order quantity of unallocated orders is B, and the allocation of each inventory lot allocated to the unallocated orders. Assuming that the total number is C and the total number of all inventory lots included in one type of inventory group to be replenished by the time the allocation process is executed is D, the above unallocated order Of the inventory items allocated to the unallocated order so that the number of types of inventory items allocated to is less than or equal to the integer value obtained by rounding down the decimal point of the value calculated by A- (BC) ÷ D. Set the allocation number of all inventory lots included in any one or more of the inventory groups to 0. By adjusting the number of allocations in this way, it is possible to allow a margin in the number of types of inventory items that can be allocated to unallocated orders, and it is possible to allocate inventory lots to be delivered by the next allocation processing. be able to.
(未充当オーダーが引当数下限の制約条件を満たすための修正工程)
未充当オーダーに引当数下限が定められている場合において、当該未充当オーダーの受注量の上限と、未充当オーダーに引当済の在庫品ロットの引当数の合計値との差が当該未充当オーダーの引当数下限未満の場合、次回の引当処理時に未充当オーダーに対して在庫品ロットの引当数を引当数下限以上に設定することができなくなる。このような事態を避けるために、次回の引当処理時に未充当オーダーに対して在庫品ロットを引き当てることができるように以下の修正工程を行う。
(Correction process for unallocated orders to meet the constraint condition of the lower limit of the number of allocations)
When the lower limit of the number of allocations is set for the unallocated order, the difference between the upper limit of the order quantity of the unallocated order and the total number of allocations of the inventory lots allocated for the unallocated order is the unallocated order. If it is less than the lower limit of the number of allocations, it will not be possible to set the number of allocations for inventory lots to more than the lower limit of the number of allocations for unallocated orders at the next allocation processing. In order to avoid such a situation, the following modification step is performed so that the inventory lot can be allocated to the unallocated order at the next allocation process.
すなわち、受注オーダーの受注量の上限から受注オーダーに引当済の在庫品ロットの引当数の合計値を引いた値が未充当オーダーの引当数下限以上となるように、受注オーダーに引当済のいずれか1以上の在庫品ロットの引当数を減算する。このように未充当オーダーに引当済の在庫品ロットの引当数を減算することにより、次回の引当処理時に未充当オーダーに対して在庫品ロットを引き当てることができるように引当数の余地を残すことができる。なお、在庫品ロットの引当数を減算した結果、減算した在庫品ロットを含む在庫品群に含まれる全ての在庫品ロットの引当数の総和が未充当オーダーの引当数下限を下回る場合には、当該在庫品群に含まれる全ての在庫品ロットの引当数を0に設定する。 That is, any of the reserved orders so that the value obtained by subtracting the total number of stock lots allocated to the ordered order from the upper limit of the ordered quantity of the ordered order is equal to or greater than the lower limit of the allocated number of unallocated orders. Or subtract the number of reserves for one or more inventory lots. By subtracting the number of reserved inventory lots from the unallocated order in this way, there is room for the number of allocations so that the inventory lot can be allocated to the unallocated order at the next allocation process. Can be done. If, as a result of subtracting the number of allocations for inventory lots, the total number of allocations for all inventory lots included in the inventory group including the subtracted inventory lots is less than the lower limit for the number of allocations for unallocated orders. Set the allocation number of all inventory lots included in the inventory group to 0.
ここでの引当数の減算は、未充当オーダーに対して引き当てたいずれか1の在庫品ロットの引当数を1ずつ行うことが好ましい。このように在庫品ロットの引当数を徐々に減らしていくことで、当該減算後の引当数が、受注オーダーに許容される在庫品群に含まれる全ての在庫品ロットの引当数の総和の下限値未満となりにくくなるので、過剰に引当数が減算されることを防止することができる。以上のように引当数を修正することにより第1引当組合せ解を作成することができる。 As for the subtraction of the allocation number here, it is preferable to perform the allocation number of any one inventories allocated to the unallocated order one by one. By gradually reducing the number of allocations for inventory lots in this way, the number of allocations after subtraction is the lower limit of the total number of allocations for all inventory lots included in the inventory group allowed for order orders. Since it is less likely to be less than the value, it is possible to prevent the number of allocations from being excessively subtracted. The first allocation combination solution can be created by modifying the allocation number as described above.
(ステップS2:第2引当組合せ解の作成(第2工程))
ステップS2において、第2引当組合せ解作成部43は、第1工程で用いた優先度受注パラメータ又は優先度在庫パラメータの少なくとも一方を変更した優先度受注パラメータ及び優先度在庫パラメータに基づいて各受注オーダに引き当てる各在庫品ロットの引当数を設定した第2引当組合せ解を作成する。例えば第1工程で優先度受注パラメータとして受注オーダーの納期を用いる場合には、第2工程で優先度受注パラメータとして受注オーダーの受注量を用いるか、又は第1工程で優先度在庫パラメータとして在庫品ロットの在庫数を用いる場合には、第2工程で優先度在庫パラメータとして在庫品ロットの製造年月日を用いる。
(Step S2: Creation of second allocation combination solution (second step))
In step S2, the second allocation combination
第2引当組合せ解作成部43は、上記のように優先度受注パラメータ又は優先度在庫パラメータのうちの少なくとも一方を変更したことが異なる他は第1引当組合せ解と同様にして第2引当組合せ解を作成する。このように優先度受注パラメータ又は優先度在庫パラメータの少なくとも一方を第1引当組合せ解を作成した場合とは異なる組合せで第2引当組合せ解を作成することにより、第1引当組合せ解とは異なる行列となる第2引当組合せ解を得ることができる。
The second allocation combination
(ステップS3:評価値の比較)
ステップS3において、評価値比較部44は、所定の評価関数に基づいて、第1引当組合せ解の評価値EV1と、第2引当組合せ解の評価値EV2とを算出する。ここで算出される評価値EV1及び評価値EV2はいずれも具体的数値によって特定されるものであり、その数値が高いほど最適解に近いことを示すものである。ここでの評価関数は、受注オーダーの優先度、在庫品ロットの優先度、充当完了オーダーの割合、及び引当処理後の在庫品の在庫数に基づいて設定されることが好ましく、より好ましくは下記式(I)で表される評価関数Fを用いることである。
(Step S3: Comparison of evaluation values)
In step S3, the evaluation
ここで、上記式(I)中、xiはN(Nは2以上の整数)種類の受注オーダーのうちの受注オーダーiに引き当てるべき優先度であり、yjはM(Mは自然数)種類の在庫品ロットのうちの在庫品ロットjを引き当てるべき優先度であり、ai,jは受注オーダーiに対して引き当てる在庫品ロットjの引当数であり、αは前記各受注オーダーに応じて設定される補正係数であり、βは前記各在庫品ロットに応じて設定される補正係数であり、Xは引当組合せ解における全ての受注オーダーに対する充当完了オーダーの割合(%)であり、Yは在庫品ロットを引き当てた後の在庫品の在庫量の総和である。 Here, in the above formula (I), x i is a priority to be assigned to the order order i among the order orders of N (N is an integer of 2 or more) types, and y j is the M (M is a natural number) type. Of the inventory lots of the above, the inventory lot j is the priority to be assigned, ai and j are the allocation number of the inventory lot j to be allocated to the order i, and α is according to each order. The correction coefficient is set, β is the correction coefficient set according to each inventory lot, X is the ratio (%) of the allocation completion order to all the order orders in the allocation combination solution, and Y is. This is the total amount of inventories in stock after the lot of inventories has been allocated.
引当組合せ解の評価値を大きくするためには、上記式(I)に示されるように、優先度の高い受注オーダーに引き当てる在庫品ロットの引当数を多くするほど、また優先度の高い在庫品ロットの引当数を多くするほど、充当完了オーダーの割合を増やすほど、引当終了後の在庫品ロットの在庫数の総和が少ないほど好ましく、上記諸条件相互のバランスをとることが肝要である。したがって、例えば優先度が高い受注オーダーに優先度が高い在庫品ロットを引き当てることができたとしても、充当完了オーダーの割合が低い場合には評価値が高くならないこともあるし、充当完了オーダーの割合が多少劣っていても引当処理を終えた後の在庫品ロットの在庫数が著しく少なくなる場合には、評価値が高くなることもある。 In order to increase the evaluation value of the allocation combination solution, as shown in the above formula (I), the larger the number of inventory lots allocated to the high-priority order order, the higher the priority inventory. It is preferable that the number of lots allocated increases, the ratio of allocation completion orders increases, and the total number of inventories of inventories lots after the allocation ends is small, and it is important to balance the above conditions. Therefore, for example, even if a high-priority inventory lot can be assigned to a high-priority order, the evaluation value may not be high if the ratio of the allocation completion order is low, and the allocation completion order may not be high. Even if the ratio is slightly inferior, the valuation value may be high if the number of inventories in the inventory lot after the allocation process is significantly reduced.
上記受注オーダーの優先度は、各受注オーダーによって作製される製品に関する条件(例えば要求性能、仕様、用途、大きさ等)に基づいて設定されるものであり、在庫品ロットの優先度は、各在庫品ロットに関する条件(品質、原材料、有効期限、用途、形状等)に基づいて設定されるものである。上記式(I)における充当完了オーダーの割合(%)は、引当組合せ解に含まれる全ての受注オーダーに対する充当完了オーダーの個数の百分率である。 The priority of the above-mentioned order is set based on the conditions (for example, required performance, specifications, application, size, etc.) related to the product manufactured by each order, and the priority of the inventory lot is each. It is set based on the conditions related to the inventory lot (quality, raw materials, expiration date, use, shape, etc.). The ratio (%) of the allocation completed orders in the above formula (I) is a percentage of the number of allocation completed orders to all the ordered orders included in the allocation combination solution.
なお、比較対象となる2種類の引当組合せ解S1、S2において、引当組合せ解S1の充当完了オーダーの割合と引当組合せ解S2の充当完了オーダーの割合との差が所定値αより大きい場合は、上記評価関数の値にかかわらず、その充当完了オーダーの割合が高い方の解を引当組合せ解として採用することができる。そして、充当完了オーダーを大幅に改善できた引当組合せ解に対し、後述するステップS15及びS16における局所探索を実行して局所的に引当数を変更した引当組合せ解を作成した上で、この局所的に変更した引当組合せ解を上述の評価関数で評価値を算出し、当該評価値が、これまでに算出された引当組合せ解の最善解の評価値を上回る場合には、その解を引当組合せ解として設定することができる。 If the difference between the ratio of the allocation completion order of the allocation combination solution S1 and the ratio of the allocation completion order of the allocation combination solution S2 is larger than the predetermined value α in the two types of allocation combination solutions S1 and S2 to be compared, Regardless of the value of the evaluation function, the solution having the higher ratio of the allocation completion orders can be adopted as the allocation combination solution. Then, for the allocation combination solution in which the allocation completion order can be significantly improved, the local search in steps S15 and S16 described later is executed to create an allocation combination solution in which the number of allocations is locally changed, and then this local allocation solution is created. The evaluation value of the allocation combination solution changed to is calculated by the above evaluation function, and if the evaluation value exceeds the evaluation value of the best solution of the allocation combination solution calculated so far, the solution is allocated combination. It can be set as a solution.
なお、上記式(I)で表される評価関数以外の変動因子として、例えば引当処理後の在庫品ロットの在庫数等を加えてもよい。例えば引当処理後の在庫品ロットの在庫数が少なすぎると、次回の引当処理時にその少量のみの在庫品ロットを引き当てにくくなるので好ましくない。 As a variable factor other than the evaluation function represented by the above formula (I), for example, the number of inventories of the inventory lot after the allocation process may be added. For example, if the number of inventories of the inventory lot after the allocation process is too small, it is difficult to allocate only the small amount of the inventory lot at the next allocation process, which is not preferable.
(ステップS4:引当組合せ解設定(第3工程))
評価値比較部44は、上記第1引当組合せ解の評価値EV1と第2引当組合せ解の評価値EV2とを比較し、引当組合せ解設定部45によって、より優れた評価値を示す解が引当組合せ解に設定される。このように引当組合せ解を設定することにより、第1引当組合せ解と第2引当組合せ解とを比較して、優れた方の解を引当組合せ解に設定することができるので、引当組合せ解の評価値を高めることができる。これによりステップS4は完了し、ステップS5の処理に進む。
(Step S4: Allocation combination solution setting (third step))
The evaluation
(ステップS5:ループ数設定)
ステップS5において、カウンタ部46は仮引当組合せ解を設定した回数(ループ回数)を示すカウンタnの値を0に設定する。カウンタnの値は、仮引当組合せ解を設定した回数を意味するが、ステップS4の後のステップS5の段階では、引当組合せ解に対し、引当数の書き換えを一度も行っていないため、カウンタ部46は、カウンタnの値を0に設定する。このカウンタnの設定によりステップS5は完了し、制御処理部14はステップS6の処理に進む。
(Step S5: Setting the number of loops)
In step S5, the
(ステップS6:ループ判定)
ステップS6において、カウンタ成否判定部47はカウンタnの値とループ数設定値Kとを比較し、カウンタnの値がループ数設定値Kであるか否かを判定する。カウンタnの値がループ数設定値Kである場合(S6:Yes)、カウンタ成否判定部47は、現在設定されている引当組合せ解を最適解と判定し、制御処理部14は引当組合せ解の書き換えを終了する(エンド)。一方、カウンタnの値がループ数設定値Kに達していない場合(S6:No)、カウンタ部46はカウンタnの値を1増数するステップS7を行う。これによりステップS7は完了し、制御処理部14はステップS8の処理に進む。
(Step S6: Loop determination)
In step S6, the counter success /
(ステップS8:仮引当組合せ解の作成(第4工程))
ステップS8において、仮引当組合せ解作成部48は、第1工程及び第2工程で用いた優先度受注パラメータ又は優先度在庫パラメータのうちの少なくとも一方を変更した優先度受注パラメータ及び優先度在庫パラメータに基づいて各受注オーダに引き当てる各在庫品ロットの引当数を設定した仮引当組合せ解を作成する。このように第1工程又は第2工程で用いた優先度受注パラメータと優先度在庫パラメータの組合せとは異なる優先度受注パラメータと優先度在庫パラメータの組合せを用いて各受注オーダーに引き当てる各在庫品ロットの引当数を設定することにより、仮引当組合せ解作成部48は、第1引当組合せ解と第2引当組合せ解以外の引当数の組合せを設定した仮引当組合せ解を作成することができる。
(Step S8: Creation of provisional allocation combination solution (4th step))
In step S8, the provisional allocation combination
(ステップS9:評価値の比較)
ステップS9において、評価値比較部44は、上記式(I)に示される評価関数を用いて、上記で作製した仮引当組合せ解の評価値を算出し、上記引当組合せ解の評価値EV3と仮引当組合せ解の評価値EV4とを比較し、評価値EV4が評価値EV3未満の場合(S9:No)、引当組合せ解を変更せず、ステップS5の処理に戻るように判定する。一方、評価値比較部44は評価値EV4が評価値EV3以上の場合(S9:Yes)、ステップS10の処理に進むように判定し、引当組合せ解更新部49はステップS10において仮引当組合せ解を新たな引当組合せ解に書き換える。このように引当組合せ解を書き換えることにより、引当組合せ解の各受注オーダーに対する各在庫品ロットの引当数を最適解に近づけることができる。これによりステップS10は完了し、ステップS5の処理に戻る。以上のようにしてステップS5〜ステップS10の各工程を繰り返し、カウンタnの値がループ数設定値Kになった後にステップS6において、カウンタ成否判定部47は制御処理部14が処理を終了すると判定する(エンド)。
(Step S9: Comparison of evaluation values)
In step S9, the evaluation
ステップS5〜ステップS10のループを繰り返す中でステップS8を複数回実行する場合、優先度受注パラメータ又は優先度在庫パラメータのうちの少なくとも一方を各ステップS8ごとに異ならしめることが好ましく、例えば優先度受注パラメータを変更せずに、優先度在庫パラメータのみを変更して仮引当組合せ解を作成し、全ての優先度在庫パラメータの変更を終えると優先度受注パラメータを変更して、同様に優先度在庫パラメータを順番に変更していくというように各優先度受注パラメータと優先度在庫パラメータの組合せを変更することが好ましい。もちろん、ステップS5〜ステップS10のループを繰り返す中でのステップS8ごとに、優先度受注パラメータ及び優先度在庫パラメータの組合せをランダムに変更してもよい。 When step S8 is executed a plurality of times while repeating the loop of steps S5 to S10, it is preferable that at least one of the priority order parameter and the priority inventory parameter is different for each step S8, for example, the priority order is received. Create a provisional allocation combination solution by changing only the priority stock parameters without changing the parameters, and after changing all the priority stock parameters, change the priority order parameters and similarly the priority stock parameters. It is preferable to change the combination of each priority order parameter and priority inventory parameter, such as changing in order. Of course, the combination of the priority order parameter and the priority inventory parameter may be randomly changed for each step S8 while repeating the loop of steps S5 to S10.
ステップS8(第4工程)は、優先度受注パラメータ及び優先度在庫パラメータの全ての組合せに対して仮引当組合せ解を設定することが好ましい。例えば、5種類の優先度受注パラメータと5種類の優先度在庫パラメータが予め設定されている場合にはその全組合せである5×5の25通りの優先度受注パラメータと優先度在庫パラメータとに基づいて25種類の仮引当組合せ解を設定し、その中での評価値が最大となる解を引当組合せ解として設定することが好ましい。このように全ての組合せに対して仮引当組合せ解を設定することにより、より適した引当数を設定した引当組合せ解を得ることができる。 In step S8 (fourth step), it is preferable to set a provisional allocation combination solution for all combinations of the priority order parameter and the priority inventory parameter. For example, if 5 types of priority order parameters and 5 types of priority inventory parameters are preset, it is based on 25 5 × 5 priority order parameters and priority inventory parameters, which are all combinations thereof. It is preferable to set 25 types of provisional allocation combination solutions, and set the solution having the maximum evaluation value among them as the allocation combination solution. By setting the provisional allocation combination solution for all combinations in this way, it is possible to obtain an allocation combination solution in which a more suitable number of allocations is set.
上記各ステップによって作製された引当組合せ解に対して以下の局所探索を実行することにより引当組合せ解をより優れた評価値にする。図3は、第1実施形態における在庫引当方法のうちの局所探索の手順を示すフローチャートである。 By executing the following local search for the allocation combination solution created by each of the above steps, the allocation combination solution is made a better evaluation value. FIG. 3 is a flowchart showing a procedure for local search in the inventory allocation method according to the first embodiment.
(ステップS11:引当組合せ解の設定)
ステップS11において、上記全体探索(S1〜S10)によって得られた引当組合せ解を局所探索の初期解として設定する。このように初期解を設定することによりステップS11は完了し、制御処理部14はステップS12の処理に進む。
(Step S11: Setting of allocation combination solution)
In step S11, the allocation combination solution obtained by the overall search (S1 to S10) is set as the initial solution of the local search. By setting the initial solution in this way, step S11 is completed, and the
(ステップS12:ループ数設定)
ステップS12において、カウンタ部46は局所変更引当組合せ解を作成した回数を示すカウンタnの値を0に設定する。カウンタnの値は、仮引当組合せ解を設定した回数を意味するが、ステップS12の段階では引当数の書き換えを一度も行っていないため、カウンタ部46は、カウンタnの値を0に設定する。このカウンタnの設定によりステップS12は完了し、制御処理部14はステップS13の処理に進む。
(Step S12: Setting the number of loops)
In step S12, the
(ステップS13:ループ判定)
ステップS13において、カウンタ成否判定部47はカウンタnの値とループ数設定値Lとを比較し、カウンタnの値がループ数設定値Lであるか否かを判定する。カウンタnの値がループ数設定値Lである場合(S13:Yes)、カウンタ成否判定部47は、現在設定されている引当組合せ解を最適解と判定し、制御処理部14は引当組合せ解の書き換えを終了する(エンド)。一方、カウンタnの値がループ数設定値Lに達していない場合(S13:No)、カウンタ部46はカウンタnの値を1増数するステップS14を行う。これによりステップS14は完了し、制御処理部14はステップS15の処理に進む。
(Step S13: Loop determination)
In step S13, the counter success /
(ステップS15:特定の引当数の変更:第6工程)
ステップS15において、局所変更解作成部50は、引当組合せ解における任意の1種の受注オーダーに対する任意の1種の在庫品ロットの引当数を変更した局所変更引当組合せ解を作成する。ここでの特定の1の引当数を変更する在庫品ロットの選択方法は、特に限定されず、全受注オーダーの中からランダムに任意の1の受注オーダーを選択し、その選択した受注オーダーに対して引当可能な全在庫品ロットの中からランダムに任意の1の在庫品ロットを選択してもよい。ここでの変更後の引当数は、各種の制約条件を満たすように変更され、この変更に応じて別の在庫品ロットの引当数を変更する必要が生じた場合にはその引当数を新たに変更する。これらの引当数の変更によりステップS15は完了し、制御処理部14はステップS16の処理に進む。
(Step S15: Change of specific allocation number: 6th step)
In step S15, the local change allocation
ステップS13〜ステップS16のループを繰り返す中でステップS15を複数回実行する場合、変更する引当数の受注オーダー又は在庫品ロットの少なくとも一方を各ステップS15ごとに異ならしめることが好ましい。各ステップS15ごとに、変更する受注オーダー及び在庫品ロットの組合せをランダムに設定してもよい。 When step S15 is executed a plurality of times while repeating the loop of steps S13 to S16, it is preferable that at least one of the ordered order or the inventory lot of the reserved number to be changed is different for each step S15. For each step S15, the combination of the order to be changed and the inventory lot may be randomly set.
(ステップS16:評価値の比較)
ステップS16において、評価値比較部44は、所定の評価関数に基づいて、全体探索によって設定された引当組合せ解の評価値EV5と、ステップS15で設定された局所変更引当組合せ解の評価値EV6を算出する。ここでの評価値を算出する評価関数は、ステップS3及びステップS9で用いた評価関数Fと同様のものを用いることができる。
(Step S16: Comparison of evaluation values)
In step S16, the evaluation
評価値比較部44は、上記引当組合せ解の評価値EV5と局所変更引当組合せ解の評価値EV6とを比較し、評価値EV6が評価値EV5未満の場合(S16:No)、引当組合せ解を変更せず、ステップS13の処理に戻る。一方、評価値比較部44は評価値EV6が評価値EV5以上の場合(S16:Yes)、ステップS17の処理に進むように判定し、引当組合せ解更新部49はステップS17において局所変更引当組合せ解を新たな引当組合せ解に書き換える。このように引当組合せ解を書き換えることにより、引当組合せ解の各製品に対する各在庫品の引当数を最適解に近づけることができる。これによりステップS17は完了し、ステップS13の処理に戻る。以上のようにしてステップS13〜ステップS17の各工程を繰り返し、カウンタnの値がループ数設定値Kになった後にステップS13において、制御処理部14はカウンタ成否判定部47によって処理を終了すると判定する(エンド)。
The evaluation
<第2実施形態の在庫引当システム>
図4は、第2実施形態の在庫引当方法を実行する在庫引当システムの構成を示す図である。第2実施形態の在庫引当システム1は、図4に示されるように、入力部11と、出力部12と、記憶部13と、制御処理部14と、を備える。記憶部13は、第2実施形態の在庫引当プログラム等の第2実施形態の制御処理プログラムを記憶する。
<Inventory allocation system of the second embodiment>
FIG. 4 is a diagram showing a configuration of an inventory allocation system that executes the inventory allocation method of the second embodiment. As shown in FIG. 4, the
制御処理部14には、記憶部13に記憶されている第2実施形態の制御処理プログラムが実行されることによって、図4に示されるように、制御部41、第1引当組合せ解作成部42、第2引当組合せ解作成部43、評価値比較部44、引当組合せ解設定部45、カウンタ部46、カウンタ成否判定部47、仮引当組合せ解作成部48、引当組合せ解更新部49、局所変更解作成部50、時間判定部51、ループ回数設定部52が機能的に構成される。
When the control processing program of the second embodiment stored in the
制御部41は、各部42〜50を制御して、全体探索を実行した後、局所探索を実行する解探索処理を行う。時間判定部51は、解探索処理の実行時間をカウントする。時間判定部51は、1回の解探索処理が終了したときに、解探索処理の実行時間が所定時間を超えているか否かを判定する。
The
時間判定部51が、解探索処理の実行時間が所定時間を超えていないと判定すると、制御部41は、解探索処理を再び行う。時間判定部51が、解探索処理の実行時間が所定時間を超えていると判定すると、制御部41は、解探索処理を行わずに終了する。
When the
ループ回数設定部52は、解探索条件データベース33に記憶されているループ回数情報500(図5)に基づき、第2実施形態の全体探索におけるループ回数を設定する。ループ回数は、後述される図7のステップS71,S7,S8,S9,S10のループを実行する回数である。
The loop
図5は、第2実施形態の解探索条件データベース33に記憶されているループ回数情報500の一例を概略的に示す図である。図5に示されるように、ループ回数情報500では、探索回数Nsに応じて、ループ回数K(Ns)が定められている。探索回数Nsは、解探索処理を行う回数を表す。
FIG. 5 is a diagram schematically showing an example of
また、ループ回数情報500では、探索回数が1回目(つまりNs=1)のときは、受注オーダー数Nに応じて、ループ回数K(Ns)が定められている。すなわち、受注オーダー数Nが500以上のときは、ループ回数K(1)が50に定められ、受注オーダー数Nが500未満で300以上のときは、ループ回数K(1)が30に定められ、受注オーダー数Nが300未満のときは、ループ回数K(1)が10に定められている。
Further, in the
探索回数が2回目以降のときは、受注オーダー数Nに関係なく、ループ回数K(Ns)が定められている。すなわち、第2実施形態では、探索回数が2回目(つまりNs=2)のときは、受注オーダー数Nに関係なく、ループ回数K(2)は例えば5に定められ、探索回数が3回目以降(つまりNs≧3)のときは、受注オーダー数Nに関係なく、ループ回数K(Ns)は例えば1に定められている。 When the number of searches is the second or later, the number of loops K (Ns) is defined regardless of the number of ordered orders N. That is, in the second embodiment, when the number of searches is the second time (that is, Ns = 2), the number of loops K (2) is set to 5, for example, regardless of the number of ordered orders N, and the number of searches is the third and subsequent times. When (that is, Ns ≧ 3), the number of loops K (Ns) is set to 1, for example, regardless of the number of ordered orders N.
本実施形態において、ループ回数K(Ns)は、第1ループ回数の一例に相当する。受注オーダー数N=500は、閾値の一例に相当し、ループ回数K(1)=50は、第1回数値の一例に相当し、ループ回数K(1)=30は、第2回数値の一例に相当する。受注オーダー数N=300は、閾値の一例に相当し、ループ回数K(1)=30は、第1回数値の一例に相当し、ループ回数K(1)=10は、第2回数値の一例に相当する。 In the present embodiment, the number of loops K (Ns) corresponds to an example of the number of first loops. The order number N = 500 corresponds to an example of the threshold value, the loop number K (1) = 50 corresponds to an example of the first number value, and the loop number K (1) = 30 corresponds to the second number value. Corresponds to one example. The order number N = 300 corresponds to an example of the threshold value, the loop number K (1) = 30 corresponds to an example of the first number value, and the loop number K (1) = 10 corresponds to the second number value. Corresponds to one example.
図6は、第2実施形態における在庫引当方法の手順を示すフローチャートである。ステップS60において、制御部41は、探索回数Nsを1に設定する。ステップS61(カウント開始工程)において、時間判定部51は、経過時間のカウントを開始する。ステップS62において、制御部41は、各部42〜50を制御して、全体探索処理(後述の図7)を実行する。
FIG. 6 is a flowchart showing the procedure of the inventory allocation method in the second embodiment. In step S60, the
ステップS63において、制御部41は、各部42〜50を制御して、局所探索処理を実行する。第2実施形態の局所探索処理は、図3に示される第1実施形態と同様である。なお、第2実施形態の局所探索処理では、ループ数設定値Lは、一定値(本実施形態では例えば3)に設定されている。この第2実施形態において、ステップS62(全体探索処理)〜S63(局所探索処理)は、解探索処理の一例に相当する。
In step S63, the
ステップS64において、制御部41は、ステップS63で得られた引当組合せ解を記憶部13に保存する。ステップS65(時間判定工程)において、時間判定部51は、経過時間が所定時間を超えているか否かを判定する。所定時間は、例えば解探索条件データベース33に記憶されている。経過時間が所定時間を超えていないと時間判定部51が判定すると(ステップS65でNo)、処理はステップS66に進む。一方、経過時間が所定時間を超えていると時間判定部51が判定すると(ステップS65でYes)、処理はステップS67に進む。
In step S64, the
ステップS66において、制御部41は、探索回数Nsを1インクリメントして、処理はステップS62に戻り、全体探索処理(ステップS62)と局所探索処理(ステップS63)とを含む解探索処理を再び実行する。すなわち、解探索処理の終了時に、解探索処理の開始時から所定時間が経過していなければ、解探索処理を新たに開始する。一方、解探索処理の終了時に、解探索処理の開始時から所定時間が経過していれば、解探索処理を新たに開始しない。
In step S66, the
ステップS67において、制御部41は、引当組合せ解が記憶部13に2個以上保存されているか否か、つまり解探索処理が2回以上行われたか否かを判定する。引当組合せ解が記憶部13に1個だけ保存されていれば(ステップS67でNo)、処理はステップS68に進む。一方、引当組合せ解が記憶部13に2個以上保存されていれば(ステップS67でYes)、処理はステップS69に進む。
In step S67, the
ステップS68(第1出力工程)において、制御部41は、記憶部13に保存されている引当組合せ解を出力部12に出力して、図6の処理は終了する。ステップS69(第2出力工程)において、評価値比較部44は、上記評価関数Fを用いて、記憶部13に保存されている2個以上の引当組合せ解の評価値をそれぞれ算出し、算出した評価値を比較し、評価値が最も高い引当組合せ解を出力部12に出力して、図6の処理は終了する。出力部12が表示装置の場合、制御部41は引当組合せ解を出力部12に表示してもよい。出力部12が印刷装置の場合、制御部41は引当組合せ解を出力部12により印刷してもよい。
In step S68 (first output step), the
図7は、第2実施形態における在庫引当方法のうちの全体探索の手順を示すフローチャートである。ステップS1〜S4は、図2のステップS1〜S4と同じである。ステップS4に続くステップS70(設定工程)において、ループ回数設定部52は、ループ回数K(Ns)を設定する。探索回数Nsは、図6のステップS60又はステップS65で設定されている。
FIG. 7 is a flowchart showing a procedure for a general search among the inventory allocation methods in the second embodiment. Steps S1 to S4 are the same as steps S1 to S4 in FIG. In step S70 (setting step) following step S4, the loop
解探索処理の1回目は、図6のステップS60において、Nsが1に設定される。Nsが1であれば、ループ回数設定部52は、製品情報データベース31に記憶されている情報から受注オーダー数Nを読み出す。ループ回数設定部52は、読み出した受注オーダー数Nと解探索条件データベース33に記憶されているループ回数情報500とから、ループ回数K(Ns)を設定する。例えば受注オーダー数Nが450であれば、ループ回数K(Ns)を30に設定する。
In the first solution search process, Ns is set to 1 in step S60 of FIG. If Ns is 1, the loop
解探索処理の2回目以降は、図6のステップS65において、Nsが設定される。Nsが2であれば、ループ回数設定部52は、解探索条件データベース33に記憶されているループ回数情報500から、ループ回数K(Ns)を5に設定する。Nsが3以上であれば、ループ回数設定部52は、解探索条件データベース33に記憶されているループ回数情報500から、ループ回数K(Ns)を1に設定する。ステップS70に続くステップS5は、図2のステップS5と同じである。
From the second time onward of the solution search process, Ns is set in step S65 of FIG. If Ns is 2, the loop
ステップS5に続くステップS71において、カウンタ成否判定部47は、カウンタnの値とループ回数K(Ns)とを比較し、カウンタnの値がループ回数K(Ns)に等しいか否かを判定する。カウンタnの値がループ回数K(Ns)に等しければ(ステップS6でYes)、カウンタ成否判定部47は、現在設定されている引当組合せ解を最適解と判定して、図7の処理は終了する。一方、カウンタnの値がループ回数K(Ns)に等しくなければ(ステップS6でNo)、処理はステップS7に進む。ステップS7〜S10は、図2のステップS7〜S10と同じである。ステップS10が終了すると、処理はステップS71に戻る。
In step S71 following step S5, the counter success /
以上説明されたように、第2実施形態では、探索回数Nsが1回目のときは、受注オーダー数Nに応じて、全体探索処理のループ回数K(Ns)を定めている。これによって、全体探索処理のループ回数K(Ns)を、受注オーダー数Nに応じた適切な値に設定することができる。 As described above, in the second embodiment, when the number of searches Ns is the first time, the number of loops K (Ns) of the total search process is determined according to the number of orders N. Thereby, the loop number K (Ns) of the total search process can be set to an appropriate value according to the order number N.
探索回数Nsが2回目以降のときは、全体探索処理のループ回数を増加させても、引当組合せ解の更新される頻度が低いということが経験的に判明している。そこで、第2実施形態では、探索回数Nsが2回目のときは、受注オーダー数Nに関係なく、全体探索処理のループ回数K(Ns)を5に定め、探索回数Nsが3回目以降のときは、受注オーダー数Nに関係なく、全体探索処理のループ回数K(Ns)を1に定めている。その結果、第2実施形態によれば、引当組合せ解の計算精度を低下させることなく、全体探索処理の時間が無駄に長くなるのを防ぐことができる。 It has been empirically found that when the number of searches Ns is the second or later, the frequency of updating the allocation combination solution is low even if the number of loops of the total search process is increased. Therefore, in the second embodiment, when the number of searches Ns is the second time, the number of loops K (Ns) of the total search process is set to 5 regardless of the number of orders N, and when the number of searches Ns is the third or later. Sets the number of loops K (Ns) of the total search process to 1 regardless of the number of ordered orders N. As a result, according to the second embodiment, it is possible to prevent the total search processing time from becoming unnecessarily long without lowering the calculation accuracy of the allocation combination solution.
また、第2実施形態では、ステップS65(図6)において、解探索処理の開始時からの経過時間が所定時間を超えているか否かを判定し、所定時間が経過していれば、解探索処理を新たに開始しない。これによって、解探索処理の実行時間が過剰に長くなるのを防ぐことができる。 Further, in the second embodiment, in step S65 (FIG. 6), it is determined whether or not the elapsed time from the start of the solution search process exceeds the predetermined time, and if the predetermined time has elapsed, the solution search is performed. Do not start a new process. As a result, it is possible to prevent the execution time of the solution search process from becoming excessively long.
<実施形態の変形例>
上記第1実施形態においては、全体探索処理ではカウンタnの値がループ数設定値Kになるまで、局所探索処理ではカウンタnの値がループ数設定値Lになるまで、それぞれ引当組合せ解を模索する場合を説明したが、これに限られない。全体探索処理及び局所探索処理では、それぞれ、評価値が所定の数値以上となるまで引当組合せ解を模索してもよいし、所定時間となるまでループを繰り返すように設定することもできる。
<Modified example of the embodiment>
In the first embodiment, the allocation combination solution is searched for until the value of the counter n becomes the loop number setting value K in the whole search process and until the value of the counter n becomes the loop number setting value L in the local search process. However, the case is not limited to this. In the whole search process and the local search process, the allocation combination solution may be searched until the evaluation value becomes a predetermined value or more, or the loop may be repeated until the predetermined time is reached.
上記第1、第2実施形態においては、上記第1引当組合せ解及び第2引当組合せ解における引当数の設定の順序は、優先度が高い受注オーダーから順番に在庫品ロットの引当数を設定していたが、優先度が高い在庫品ロットから順番に受注オーダーに引き当てる引当数を設定してもよい。 In the first and second embodiments, the order of setting the allocation number in the first allocation combination solution and the second allocation combination solution is to set the allocation number of the inventory lot in order from the order with the highest priority. However, the number of allocations to be allocated to the order may be set in order from the stock lot with the highest priority.
上記第2実施形態のループ回数情報500(図5)におけるループ回数K(Ns)は一例であり、これに限られない。例えば、探索回数Nsが1のときのループ回数K(Ns)は、受注オーダー数Nの10%に設定してもよい。この場合、小数点以下は、四捨五入してもよい。 The loop number K (Ns) in the loop number information 500 (FIG. 5) of the second embodiment is an example, and is not limited to this. For example, the number of loops K (Ns) when the number of searches Ns is 1 may be set to 10% of the number of ordered orders N. In this case, the numbers after the decimal point may be rounded off.
上記第2実施形態では、ステップS64(図6)の判定に用いる所定時間は、解探索条件データベース33に記憶されているが、これに限られない。例えば、入力部11を用いてユーザが所定時間を所望の時間に設定できるようにしてもよい。
In the second embodiment, the predetermined time used for the determination in step S64 (FIG. 6) is stored in the solution
<その他>
本発明を表現するために、上述において図面を参照しながら実施形態を通して本発明を適切且つ十分に説明したが、当業者であれば上述の実施形態を変更および/または改良することは容易に為し得ることであると認識すべきである。したがって、当業者が実施する変更形態または改良形態が、請求の範囲に記載された請求項の権利範囲を離脱するレベルのものでない限り、当該変更形態または当該改良形態は、当該請求項の権利範囲に包括されると解釈される。
<Others>
In order to express the present invention, the present invention has been appropriately and sufficiently described through the embodiments with reference to the drawings described above, but those skilled in the art can easily change and / or improve the above-described embodiments. It should be recognized that it can be done. Therefore, unless the modified or improved form implemented by a person skilled in the art is at a level that deviates from the scope of rights of the claims stated in the claims, the modified form or the improved form is the scope of rights of the claims. It is interpreted as being comprehensively included in.
11 入力部
12 出力部
13 記憶部
14 制御処理部
31 製品情報データベース
32 在庫品情報データベース
33 解探索条件データベース
41 制御部
42 第1引当組合せ解作成部
43 第2引当組合せ解作成部
44 評価値比較部
45 引当組合せ解設定部
46 カウンタ部
47 カウンタ成否判定部
48 仮引当組合せ解作成部
49 引当組合せ解更新部
50 局所変更解作成部
51 時間判定部
52 ループ回数設定部
11
Claims (11)
前記各受注オーダーはそれぞれ、予め2以上設定された、各在庫品ロットを引き当てるべき受注オーダーの優先順位を決定する優先度受注パラメータを備え、
前記各在庫品ロットはそれぞれ、予め2以上設定された、各受注オーダーに引き当てるべき在庫品ロットの優先順位を決定する優先度在庫パラメータを備え、
前記優先度受注パラメータのうちの任意の1の優先度受注パラメータ及び前記優先度在庫パラメータのうちの任意の1の優先度在庫パラメータに基づいて各受注オーダーに引き当てる各在庫品ロットの引当数を設定した第1引当組合せ解を作成する第1工程と、
前記第1工程で用いた前記優先度受注パラメータ又は前記優先度在庫パラメータのうちの少なくとも一方を変更した前記優先度受注パラメータ及び前記優先度在庫パラメータに基づいて各受注オーダーに引き当てる各在庫品ロットの引当数を設定した第2引当組合せ解を作成する第2工程と、
前記第1引当組合せ解と前記第2引当組合せ解とを評価関数に基づいて比較し、より優れた評価値を示す解を引当組合せ解に設定する第3工程と、
前記引当組合せ解における任意の1の受注オーダーに対する任意の1種の前記在庫品ロットの引当数を変更した局所変更引当組合せ解を作成する第6工程と、
前記引当組合せ解の評価値及び前記局所変更引当組合せ解の評価値を前記評価関数を用いて算出し、前記局所変更引当組合せ解の評価値が前記引当組合せ解の評価値未満の場合に前記引当組合せ解を変更せず、前記局所変更引当組合せ解の評価値が前記引当組合せ解の評価値以上の場合に前記局所変更引当組合せ解を新たな引当組合せ解に書き換える第7工程と、を含み、
前記第6工程及び前記第7工程を1回以上行う在庫引当方法。 The number of allocations for each inventory lot is assigned to each order for which the order quantity of one or more inventory lots required for each product to produce two or more products of the same or different types is defined. It is the inventory allocation method to decide
Each of the ordered orders has two or more preset priority order parameters that determine the priority of the ordered orders to which each inventory lot should be assigned.
Each of the inventory lots has two or more preset priority inventory parameters that determine the priority of the inventory lots to be assigned to each sales order.
Set the allocation number of each inventory lot to be assigned to each sales order based on any 1 priority order parameter of the priority order parameter and any 1 priority inventory parameter of the priority inventory parameter. The first step of creating the first allocation combination solution
Of each inventory lot assigned to each order based on the priority order parameter and the priority inventory parameter in which at least one of the priority order parameter or the priority inventory parameter used in the first step is changed. The second step of creating a second allocation combination solution with the number of allocations set, and
The third step of comparing the first allocation combination solution and the second allocation combination solution based on the evaluation function and setting a solution showing a better evaluation value as the allocation combination solution.
A sixth step of creating a locally modified allocation combination solution in which the number of allocations of any one type of inventory lot is changed for any one order in the allocation combination solution.
The evaluation value of the allocation combination solution and the evaluation value of the local change allocation combination solution are calculated by using the evaluation function, and when the evaluation value of the local change allocation combination solution is less than the evaluation value of the allocation combination solution, the allocation Including the seventh step of rewriting the local change allocation combination solution to a new allocation combination solution when the evaluation value of the local change allocation combination solution is equal to or higher than the evaluation value of the allocation combination solution without changing the combination solution.
An inventory allocation method in which the sixth step and the seventh step are performed one or more times.
前記引当組合せ解と前記仮引当組合せ解とを評価関数に基づいて比較し、前記仮引当組合せ解の評価値が前記引当組合せ解の評価値未満の場合に前記引当組合せ解を変更せず、前記仮引当組合せ解の評価値が前記引当組合せ解の評価値以上の場合に前記仮引当組合せ解を新たな引当組合せ解に書き換える第5工程とを含み、
前記第4工程及び前記第5工程を各1回以上行う請求項1に記載の在庫引当方法。 Allocate to each order based on the priority order parameter and the priority inventory parameter in which at least one of the priority order parameter or the priority inventory parameter used in the first step or the second step is changed. The fourth step of creating a provisional allocation combination solution that sets the allocation number of each inventory lot, and
The allocation combination solution and the provisional allocation combination solution are compared based on the evaluation function, and when the evaluation value of the provisional allocation combination solution is less than the evaluation value of the provision combination solution, the allocation combination solution is not changed. Including the fifth step of rewriting the provisional allocation combination solution to a new allocation combination solution when the evaluation value of the provisional allocation combination solution is equal to or higher than the evaluation value of the provision combination solution.
The inventory allocation method according to claim 1, wherein the fourth step and the fifth step are performed one or more times each.
前記各受注オーダーはそれぞれ、予め2以上設定された、各在庫品ロットを引き当てるべき受注オーダーの優先順位を決定する優先度受注パラメータを備え、
前記各在庫品ロットはそれぞれ、予め2以上設定された、各受注オーダーに引き当てるべき在庫品ロットの優先順位を決定する優先度在庫パラメータを備え、
前記優先度受注パラメータのうちの任意の1の優先度受注パラメータ及び前記優先度在庫パラメータのうちの任意の1の優先度在庫パラメータに基づいて各受注オーダーに引き当てる各在庫品ロットの引当数を設定した第1引当組合せ解を作成する第1工程と、
前記第1工程で用いた前記優先度受注パラメータ又は前記優先度在庫パラメータのうちの少なくとも一方を変更した前記優先度受注パラメータ及び前記優先度在庫パラメータに基づいて各受注オーダーに引き当てる各在庫品ロットの引当数を設定した第2引当組合せ解を作成する第2工程と、
前記第1引当組合せ解と前記第2引当組合せ解とを評価関数に基づいて比較し、より優れた評価値を示す解を引当組合せ解に設定する第3工程と、
前記第1工程又は前記第2工程で用いた前記優先度受注パラメータ又は前記優先度在庫パラメータのうちの少なくとも一方を変更した前記優先度受注パラメータ及び前記優先度在庫パラメータに基づいて各受注オーダーに引き当てる各在庫品ロットの引当数を設定した仮引当組合せ解を作成する第4工程と、
前記引当組合せ解と前記仮引当組合せ解とを評価関数に基づいて比較し、前記仮引当組合せ解の評価値が前記引当組合せ解の評価値未満の場合に前記引当組合せ解を変更せず、前記仮引当組合せ解の評価値が前記引当組合せ解の評価値以上の場合に前記仮引当組合せ解を新たな引当組合せ解に書き換える第5工程と、
前記引当組合せ解における任意の1の受注オーダーに対する任意の1種の前記在庫品ロットの引当数を変更した局所変更引当組合せ解を作成する第6工程と、
前記引当組合せ解の評価値及び前記局所変更引当組合せ解の評価値を前記評価関数を用いて算出し、前記局所変更引当組合せ解の評価値が前記引当組合せ解の評価値未満の場合に前記引当組合せ解を変更せず、前記局所変更引当組合せ解の評価値が前記引当組合せ解の評価値以上の場合に前記局所変更引当組合せ解を新たな引当組合せ解に書き換える第7工程と、を含み、
前記第1工程、前記第2工程、及び前記第3工程を実行し、続いて前記第4工程及び前記第5工程を第1ループ回数実行する処理が、全体探索処理と定義され、
前記第6工程及び前記第7工程を第2ループ回数実行する処理が、局所探索処理と定義され、
前記全体探索処理を実行した後に前記局所探索処理を実行する解探索処理が、1回以上行われ、
前記在庫引当方法は、さらに、
前記解探索処理が1回行われた場合は、前記解探索処理で得られた前記引当組合せ解を出力する第1出力工程を含み、
前記解探索処理が2回以上行われた場合は、前記2回以上の前記解探索処理で得られた前記引当組合せ解の評価値を前記評価関数を用いてそれぞれ算出し、算出したそれぞれの前記評価値を互いに比較し、前記評価値が最高の前記引当組合せ解を出力する第2出力工程を含む、
在庫引当方法。 The number of allocations for each inventory lot is assigned to each order for which the order quantity of one or more inventory lots required for each product to produce two or more products of the same or different types is defined. It is the inventory allocation method to decide
Each of the ordered orders has two or more preset priority order parameters that determine the priority of the ordered orders to which each inventory lot should be assigned.
Each of the inventory lots has two or more preset priority inventory parameters that determine the priority of the inventory lots to be assigned to each sales order.
Set the allocation number of each inventory lot to be assigned to each sales order based on any 1 priority order parameter of the priority order parameter and any 1 priority inventory parameter of the priority inventory parameter. The first step of creating the first allocation combination solution
Of each inventory lot assigned to each order based on the priority order parameter and the priority inventory parameter in which at least one of the priority order parameter or the priority inventory parameter used in the first step is changed. The second step of creating a second allocation combination solution with the number of allocations set, and
The third step of comparing the first allocation combination solution and the second allocation combination solution based on the evaluation function and setting a solution showing a better evaluation value as the allocation combination solution.
Allocate to each order based on the priority order parameter and the priority inventory parameter in which at least one of the priority order parameter or the priority inventory parameter used in the first step or the second step is changed. The fourth step of creating a provisional allocation combination solution that sets the allocation number of each inventory lot, and
The allocation combination solution and the provisional allocation combination solution are compared based on the evaluation function, and when the evaluation value of the provisional allocation combination solution is less than the evaluation value of the provision combination solution, the allocation combination solution is not changed. The fifth step of rewriting the provisional allocation combination solution to a new allocation combination solution when the evaluation value of the provisional allocation combination solution is equal to or higher than the evaluation value of the provision combination solution.
A sixth step of creating a locally modified allocation combination solution in which the number of allocations of any one type of inventory lot is changed for any one order in the allocation combination solution.
The evaluation value of the allocation combination solution and the evaluation value of the local change allocation combination solution are calculated by using the evaluation function, and when the evaluation value of the local change allocation combination solution is less than the evaluation value of the allocation combination solution, the allocation Including the seventh step of rewriting the locally changed allocation combination solution to a new allocation combination solution when the evaluation value of the locally changing allocation combination solution is equal to or greater than the evaluation value of the allocation combination solution without changing the combination solution.
The process of executing the first step, the second step, and the third step, and then executing the fourth step and the fifth step the first loop number of times is defined as a total search process.
The process of executing the sixth step and the seventh step the second loop number of times is defined as a local search process.
After executing the whole search process, the solution search process for executing the local search process is performed one or more times.
The inventory allocation method further
When the solution search process is performed once, it includes a first output step of outputting the allocation combination solution obtained in the solution search process.
When the solution search process is performed two or more times, the evaluation values of the allocation combination solutions obtained by the solution search process two or more times are calculated by using the evaluation function, and each of the calculated values is calculated. A second output step of comparing the evaluation values with each other and outputting the allocation combination solution having the highest evaluation value is included.
Inventory reserve method.
請求項3に記載の在庫引当方法。 The overall search process includes a setting step of setting the number of times of the first loop in the first solution search process according to the number of ordered orders.
The inventory allocation method according to claim 3.
請求項4に記載の在庫引当方法。 In the setting step, when the number of ordered orders is equal to or greater than a predetermined threshold value, the number of first loops in the first solution search process is set to the first number value, and when the number of ordered orders is less than the threshold value. The number of times of the first loop in the first solution search process is set to a second number value less than the first number value.
The inventory allocation method according to claim 4.
請求項4又は5に記載の在庫引当方法。 In the setting step, the number of times of the first loop in the second and subsequent solution search processes is set to a constant value less than the number of times of the first loop in the first solution search process.
The inventory allocation method according to claim 4 or 5.
前記解探索処理が終了したときに、前記経過時間が所定時間を超えているか否かを判定する時間判定工程と、を含み、
前記時間判定工程において、前記経過時間が前記所定時間を超えていないと判定されると前記解探索処理が新たに開始され、前記経過時間が前記所定時間を超えていると判定されると前記解探索処理が新たに開始されない、
請求項3〜6のいずれか1項に記載の在庫引当方法。 A counting start step of starting counting of elapsed time when starting the solution search process, and
Includes a time determination step of determining whether or not the elapsed time exceeds a predetermined time when the solution search process is completed.
In the time determination step, if it is determined that the elapsed time does not exceed the predetermined time, the solution search process is newly started, and if it is determined that the elapsed time exceeds the predetermined time, the solution is determined. The search process is not started anew,
The inventory allocation method according to any one of claims 3 to 6.
前記各受注オーダーはそれぞれ、予め2以上設定された、各在庫品ロットを引き当てるべき受注オーダーの優先順位を決定する優先度受注パラメータを備え、
前記各在庫品ロットはそれぞれ、予め2以上設定された、各受注オーダーに引き当てるべき在庫品ロットの優先順位を決定する優先度在庫パラメータを備え、
前記優先度受注パラメータのうちの任意の1の優先度受注パラメータ及び前記優先度在庫パラメータのうちの任意の1の優先度在庫パラメータに基づいて各受注オーダーに引き当てる各在庫品ロットの引当数を設定した第1引当組合せ解を作成する第1引当組合せ解作成部と、
前記第1引当組合せ解作成部で用いた前記優先度受注パラメータ又は前記優先度在庫パラメータのうちの少なくとも一方を変更した前記優先度受注パラメータ及び前記優先度在庫パラメータに基づいて各受注オーダーに引き当てる各在庫品ロットの引当数を設定した第2引当組合せ解を作成する第2引当組合せ解作成部と、
前記第1引当組合せ解と前記第2引当組合せ解とを評価関数に基づいて比較する評価値比較部と、
前記評価値比較部によって比較された前記第1引当組合せ解及び前記第2引当組合せ解のうちのより優れた評価値を示す解を引当組合せ解に設定する引当組合せ解設定部と、
前記引当組合せ解における任意の1の受注オーダーに対する任意の1種の前記在庫品ロットの引当数を変更した局所変更引当組合せ解を作成する第6工程を行う局所変更引当組合せ解作成部と、
前記引当組合せ解の評価値及び前記局所変更引当組合せ解の評価値を前記評価関数を用いて算出し、前記局所変更引当組合せ解の評価値が前記引当組合せ解の評価値未満の場合に前記引当組合せ解を変更せず、前記局所変更引当組合せ解の評価値が前記引当組合せ解の評価値以上の場合に前記局所変更引当組合せ解を新たな引当組合せ解に書き換える第7工程を行う書換部と、を含み、
前記第6工程及び前記第7工程を1回以上行う在庫引当装置。 The number of allocations for each inventory lot is assigned to each order for which the order quantity of one or more inventory lots required for each product to produce two or more products of the same or different types is defined. It is an inventory allocation device to decide
Each of the ordered orders has two or more preset priority order parameters that determine the priority of the ordered orders to which each inventory lot should be assigned.
Each of the inventory lots has two or more preset priority inventory parameters that determine the priority of the inventory lots to be assigned to each sales order.
Set the allocation number of each in-stock item lot to be assigned to each order based on the priority order parameter of any one of the priority order parameters and the priority inventory parameter of any one of the priority inventory parameters. The first allocation combination solution creation unit that creates the first allocation combination solution
Each assigned to each order based on the priority order parameter and the priority inventory parameter in which at least one of the priority order parameter or the priority inventory parameter used in the first allocation combination solution creation unit is changed. A second allocation combination solution creation unit that creates a second allocation combination solution that sets the number of allocations for stock lots, and a second allocation combination solution creation unit.
An evaluation value comparison unit that compares the first allocation combination solution and the second allocation combination solution based on the evaluation function.
The allocation combination solution setting unit that sets the solution showing the better evaluation value of the first allocation combination solution and the second allocation combination solution compared by the evaluation value comparison unit as the allocation combination solution, and the allocation combination solution setting unit.
A local change allocation combination solution creation unit that performs the sixth step of creating a local change allocation combination solution in which the number of allocations of any one type of inventory lot is changed for any one order in the allocation combination solution.
The evaluation value of the allocation combination solution and the evaluation value of the local change allocation combination solution are calculated by using the evaluation function, and when the evaluation value of the local change allocation combination solution is less than the evaluation value of the allocation combination solution, the allocation With the rewriting unit that performs the seventh step of rewriting the locally changed allocation combination solution to a new allocation combination solution when the evaluation value of the locally changing allocation combination solution is equal to or greater than the evaluation value of the allocation combination solution without changing the combination solution. , Including
An inventory allocation device that performs the sixth step and the seventh step one or more times.
前記各受注オーダーはそれぞれ、予め2以上設定された、各在庫品ロットを引き当てるべき受注オーダーの優先順位を決定する優先度受注パラメータを備え、
前記各在庫品ロットはそれぞれ、予め2以上設定された、各受注オーダーに引き当てるべき在庫品ロットの優先順位を決定する優先度在庫パラメータを備え、
前記優先度受注パラメータのうちの任意の1の優先度受注パラメータ及び前記優先度在庫パラメータのうちの任意の1の優先度在庫パラメータに基づいて各受注オーダーに引き当てる各在庫品ロットの引当数を設定した第1引当組合せ解を作成する第1工程を行う第1引当組合せ解作成部と、
前記第1引当組合せ解作成部で用いた前記優先度受注パラメータ又は前記優先度在庫パラメータのうちの少なくとも一方を変更した前記優先度受注パラメータ及び前記優先度在庫パラメータに基づいて各受注オーダーに引き当てる各在庫品ロットの引当数を設定した第2引当組合せ解を作成する第2工程を行う第2引当組合せ解作成部と、
前記第1引当組合せ解と前記第2引当組合せ解とを評価関数に基づいて比較する第3A工程を行う評価値比較部と、
前記評価値比較部によって比較された前記第1引当組合せ解及び前記第2引当組合せ解のうちのより優れた評価値を示す解を引当組合せ解に設定する第3B工程を行う引当組合せ解設定部と、
前記第1工程又は前記第2工程で用いた前記優先度受注パラメータ又は前記優先度在庫パラメータのうちの少なくとも一方を変更した前記優先度受注パラメータ及び前記優先度在庫パラメータに基づいて各受注オーダーに引き当てる各在庫品ロットの引当数を設定した仮引当組合せ解を作成する第4工程を行う仮引当組合せ解作成部と、
前記引当組合せ解と前記仮引当組合せ解とを評価関数に基づいて比較し、前記仮引当組合せ解の評価値が前記引当組合せ解の評価値未満の場合に前記引当組合せ解を変更せず、前記仮引当組合せ解の評価値が前記引当組合せ解の評価値以上の場合に前記仮引当組合せ解を新たな引当組合せ解に書き換える第5工程を行う第1書換部と、
前記引当組合せ解における任意の1の受注オーダーに対する任意の1種の前記在庫品ロットの引当数を変更した局所変更引当組合せ解を作成する第6工程を行う局所変更引当組合せ解作成部と、
前記引当組合せ解の評価値及び前記局所変更引当組合せ解の評価値を前記評価関数を用いて算出し、前記局所変更引当組合せ解の評価値が前記引当組合せ解の評価値未満の場合に前記引当組合せ解を変更せず、前記局所変更引当組合せ解の評価値が前記引当組合せ解の評価値以上の場合に前記局所変更引当組合せ解を新たな引当組合せ解に書き換える第7工程を行う第2書換部と、を含み、
前記第1工程、前記第2工程、前記第3A工程、及び前記第3B工程を実行し、続いて前記第4工程及び前記第5工程を第1ループ回数実行する処理が、全体探索処理と定義され、
前記第6工程及び前記第7工程を第2ループ回数実行する処理が、局所探索処理と定義され、
前記全体探索処理を実行した後に前記局所探索処理を実行する解探索処理が、1回以上行われ、
さらに、前記解探索処理が1回行われた場合は、前記解探索処理で得られた前記引当組合せ解を出力し、前記解探索処理が2回以上行われた場合は、前記2回以上の前記解探索処理で得られた前記引当組合せ解の評価値を前記評価関数を用いてそれぞれ算出し、算出したそれぞれの前記評価値を互いに比較し、前記評価値が最高の前記引当組合せ解を出力する出力部を含む、在庫引当装置。 The number of allocations for each inventory lot is assigned to each order for which the order quantity of one or more inventory lots required for each product to produce two or more products of the same or different types is defined. It is an inventory allocation device to decide
Each of the ordered orders has two or more preset priority order parameters that determine the priority of the ordered orders to which each inventory lot should be assigned.
Each of the inventory lots has two or more preset priority inventory parameters that determine the priority of the inventory lots to be assigned to each sales order.
Set the allocation number of each inventory lot to be assigned to each sales order based on any 1 priority order parameter of the priority order parameter and any 1 priority inventory parameter of the priority inventory parameter. The first allocation combination solution creation unit that performs the first step to create the first allocation combination solution
Each assigned to each order based on the priority order parameter and the priority inventory parameter in which at least one of the priority order parameter or the priority inventory parameter used in the first allocation combination solution creation unit is changed. The second allocation combination solution creation unit that performs the second step of creating the second allocation combination solution that sets the allocation number of stock lots, and
An evaluation value comparison unit that performs the third A step of comparing the first allocation combination solution and the second allocation combination solution based on the evaluation function.
Provision combined solution set intends row better the 3B step of the solution indicating the evaluation value is set to reserve the combination solution of the compared first reserve combined solution and the second reserve combined solution by the evaluation value comparison unit Department and
Allocate to each order based on the priority order parameter and the priority inventory parameter in which at least one of the priority order parameter or the priority inventory parameter used in the first step or the second step is changed. A provisional allocation combination solution creation unit that performs the fourth step of creating a provisional allocation combination solution that sets the number of allocations for each inventory lot,
The allocation combination solution and the provisional allocation combination solution are compared based on the evaluation function, and when the evaluation value of the provisional allocation combination solution is less than the evaluation value of the provision combination solution, the allocation combination solution is not changed. The first rewriting unit that performs the fifth step of rewriting the provisional allocation combination solution to a new allocation combination solution when the evaluation value of the provisional allocation combination solution is equal to or higher than the evaluation value of the provision combination solution.
A local change allocation combination solution creation unit that performs the sixth step of creating a local change allocation combination solution in which the number of allocations of any one type of inventory lot is changed for any one order in the allocation combination solution.
The evaluation value of the allocation combination solution and the evaluation value of the local change allocation combination solution are calculated by using the evaluation function, and when the evaluation value of the local change allocation combination solution is less than the evaluation value of the allocation combination solution, the allocation The second rewriting that performs the seventh step of rewriting the locally changed allocation combination solution to a new allocation combination solution when the evaluation value of the local change allocation combination solution is equal to or greater than the evaluation value of the allocation combination solution without changing the combination solution. Including the part
The first step, the second step, before Symbol a 3 A step, and executing the first 3B step, followed by the fourth step and the fifth step process to be executed first loop count, overall search process Defined as
The process of executing the sixth step and the seventh step the second loop number of times is defined as a local search process.
After executing the whole search process, the solution search process for executing the local search process is performed one or more times.
Further, when the solution search process is performed once, the allocation combination solution obtained by the solution search process is output, and when the solution search process is performed twice or more, the two or more times are output. The evaluation values of the allocation combination solutions obtained in the solution search process are calculated by using the evaluation function, the calculated evaluation values are compared with each other, and the allocation combination solution having the highest evaluation value is output. An inventory allocation device that includes an output unit.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2016150976 | 2016-08-01 | ||
| JP2016150976 | 2016-08-01 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2018026097A JP2018026097A (en) | 2018-02-15 |
| JP6947517B2 true JP6947517B2 (en) | 2021-10-13 |
Family
ID=61195235
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2017055570A Active JP6947517B2 (en) | 2016-08-01 | 2017-03-22 | Inventory allocation device and inventory allocation method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP6947517B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115730888B (en) * | 2021-08-26 | 2026-04-10 | 顺丰科技有限公司 | Inventory Allocation Method and Device |
-
2017
- 2017-03-22 JP JP2017055570A patent/JP6947517B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2018026097A (en) | 2018-02-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8121885B2 (en) | Plan solver | |
| Paiva et al. | Improved heuristic algorithms for the job sequencing and tool switching problem | |
| KR100286442B1 (en) | Production process control device and production process control method | |
| JPH05225205A (en) | Sequential defined production planning system | |
| CN118674246B (en) | Supply plan data processing method and system | |
| CN110276568B (en) | Inbound resource allocation method, device and computer system | |
| JP7385456B2 (en) | Work plan creation device and work plan creation method | |
| JP2002373013A (en) | Production scheduling method, program for computer to execute the same method and computer-readable recording medium with the program recorded thereon | |
| JPWO2009038196A1 (en) | Precut material assignment method, computer program for precut material assignment method, and computer-readable recording medium | |
| CN114862045A (en) | Scheduling optimization method and device, electronic equipment and storage medium | |
| WO2016079843A1 (en) | Production plan adjustment assisting device and production plan adjustment assisting method | |
| TWI581197B (en) | Method, device and program product for determining order quantity | |
| KR20240003201A (en) | Scheduling method and apparatus for producing plan | |
| JP6947517B2 (en) | Inventory allocation device and inventory allocation method | |
| CN115081779B (en) | Production line scheduling method, production line system and computer readable storage medium | |
| KR102827531B1 (en) | Apparatus for determining the optimal loading position of ordered products | |
| JP2021120891A (en) | Article arrangement optimization system and method | |
| JP2002132327A (en) | Method and system for generating production plan | |
| JP6647966B2 (en) | Inventory allocation device and inventory allocation method | |
| JP5442526B2 (en) | Schedule creation method, schedule creation program, and schedule creation device | |
| JP6776157B2 (en) | Appropriation work support method and appropriation work support device | |
| JP6389817B2 (en) | Production plan optimization system and production plan optimization method | |
| KR101770303B1 (en) | Meta heuristic based production planning method considering allocation rate conformance | |
| JP6673750B2 (en) | Inventory allocation device and inventory allocation method | |
| CN115730888B (en) | Inventory Allocation Method and Device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190930 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200909 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200915 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201015 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210413 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210421 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20210914 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210916 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6947517 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |