JP7440395B2 - Optimal solution search device and optimal solution search program - Google Patents

Optimal solution search device and optimal solution search program Download PDF

Info

Publication number
JP7440395B2
JP7440395B2 JP2020190555A JP2020190555A JP7440395B2 JP 7440395 B2 JP7440395 B2 JP 7440395B2 JP 2020190555 A JP2020190555 A JP 2020190555A JP 2020190555 A JP2020190555 A JP 2020190555A JP 7440395 B2 JP7440395 B2 JP 7440395B2
Authority
JP
Japan
Prior art keywords
production
solution
approximate
optimal solution
optimal
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
Application number
JP2020190555A
Other languages
Japanese (ja)
Other versions
JP2022079376A (en
Inventor
知弘 廣瀬
康宏 与語
健一 山田
浩二 丹野
美紀 藤本
浩二 亀山
裕司 川口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Corp
Toyota Central R&D Labs Inc
Original Assignee
Denso Corp
Toyota Central R&D Labs Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Denso Corp, Toyota Central R&D Labs Inc filed Critical Denso Corp
Priority to JP2020190555A priority Critical patent/JP7440395B2/en
Publication of JP2022079376A publication Critical patent/JP2022079376A/en
Application granted granted Critical
Publication of JP7440395B2 publication Critical patent/JP7440395B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • General Factory Administration (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、最適解探索装置及び最適解探索プログラムに関する。 The present invention relates to an optimal solution search device and an optimal solution search program.

従来、ある問題に対する、複数のパラメータから構成される最適解を探索する手法として、遺伝的アルゴリズムが知られている。図17は、遺伝的アルゴリズムの処理の流れを示す概念図である。遺伝的アルゴリズムにおいては、まず、初期個体群(すなわち第1世代)であるN個の個体が用意される。ここでは、問題に対する最適解を探索する例であるので、個体として問題に対する解が用意される。第1世代のN個の解はランダムに選択されてよい。つまり、第1世代のN個の解に含まれる各パラメータの値はランダムに選択されてよい。図17では、解1-1~解1-NのN個の初期個体群が示されている。なお、図17では、第m世代の第n番目の解が、「解m-n」と記載されている。例えば、第1世代の第2番目の解が「解1-2」と記載されている。 Genetic algorithms are conventionally known as a method for searching for an optimal solution composed of multiple parameters for a certain problem. FIG. 17 is a conceptual diagram showing the flow of genetic algorithm processing. In the genetic algorithm, first, N individuals as an initial population (ie, first generation) are prepared. Since this is an example of searching for an optimal solution to a problem, solutions to the problem are prepared as individuals. The first generation N solutions may be randomly selected. That is, the value of each parameter included in the N first generation solutions may be randomly selected. In FIG. 17, N initial populations of solutions 1-1 to 1-N are shown. Note that in FIG. 17, the n-th solution of the m-th generation is written as "solution mn." For example, the second solution of the first generation is described as "Solution 1-2."

次に、第1世代のN個の個体それぞれの適応度が算出される。各個体の適応度は、当該問題に対する、当該個体としての解の適応度であり、当該問題に応じた種々の方法にて算出される。 Next, the fitness of each of the N individuals of the first generation is calculated. The fitness of each individual is the fitness of the individual's solution to the problem, and is calculated by various methods depending on the problem.

次に、算出された第1世代のN個の個体それぞれの適応度に基づいて、第2世代のN個の個体(すなわち解)が生成される。第2世代のN個の個体の取得方法については、例えば、第1世代のN個の個体のうち、適応度が高い個体を残すエリート保存、第1世代から選択された2つの個体それぞれの一部のパラメータを交換する交叉、第1世代の個体に含まれるパラメータをランダムに変更する突然変異などの種々の方法がある。 Next, N second generation individuals (ie, solutions) are generated based on the calculated fitness of each of the N first generation individuals. Regarding the method of obtaining N individuals of the second generation, for example, elite preservation that leaves individuals with high fitness among the N individuals of the first generation, and There are various methods such as crossover, which exchanges the parameters of parts, and mutation, which randomly changes the parameters included in the first generation individuals.

さらに、第2世代のN個の個体それぞれの適応度が算出される。そして、算出された第2世代のN個の個体それぞれの適応度に基づいて、第3世代のN個の個体が生成される。以後、上記同様の処理が世代を進めながら繰り返されていく。上述の処理を世代を進めながら繰り返していくことにより、個体が調整されていき、やがて適応度が高い個体、すなわち、最適解に近い解(理想的には最適解)を得ることができる。 Furthermore, the fitness of each of the N individuals of the second generation is calculated. Then, based on the calculated fitness of each of the N individuals of the second generation, N individuals of the third generation are generated. Thereafter, the same process as described above is repeated as the generations progress. By repeating the above process with successive generations, individuals are adjusted, and eventually individuals with high fitness, that is, solutions close to the optimal solution (ideally, the optimal solution) can be obtained.

遺伝的アルゴリズムは、所定の終了条件を満たすまで実行される。所定の終了条件とは、例えば、所定の世代までの処理が完了したこと、所定の適応度を超える個体が生成されたこと、あるいは、所定の世代のN個の個体の平均適応度が所定の閾値以上となったこと、などである。 The genetic algorithm is executed until a predetermined termination condition is met. The predetermined termination condition is, for example, that processing up to a predetermined generation has been completed, that individuals exceeding a predetermined fitness have been generated, or that the average fitness of N individuals in a predetermined generation has reached a predetermined value. For example, the value has exceeded a threshold value.

遺伝的アルゴリズムは、種々の問題に対する最適解を探索するために用いられている。例えば、非特許文献1には、複数の工程を有し各工程を複数の機械で並列に処理可能なフレキシブルショップにおいて、遺伝的アルゴリズムを用いて、複数の工程を経て生産される製品の処理方法を最適解を探索する方法が開示されている。非特許文献1においては、製品の処理方法を決定すべく、作業の機械割付け、作業の順序付け、及び作業の開始時刻を決定している。特に、非特許文献1では、数理計画法と遺伝的アルゴリズムを組み合わせたハイブリッド解法によりに上記3つの決定項目を決定している。具体的には、数理計画法により上記3つの決定項目のうちの一部を決定した上で、遺伝的アルゴリズムによりその他の決定項目を決定している。 Genetic algorithms are used to search for optimal solutions to various problems. For example, Non-Patent Document 1 describes a method for processing products produced through multiple processes using a genetic algorithm in a flexible shop that has multiple processes and can process each process in parallel with multiple machines. A method for searching for an optimal solution is disclosed. In Non-Patent Document 1, in order to determine the method of processing a product, machine assignment of work, order of work, and start time of work are determined. In particular, in Non-Patent Document 1, the above three decision items are determined by a hybrid solution method that combines mathematical programming and genetic algorithms. Specifically, some of the above three decision items are determined by mathematical programming, and the other decision items are determined by genetic algorithm.

榊原一紀、玉置久、村尾元、北村新三,「フレキシブルショップ・スケジューリング問題の数理計画モデルに基づくハイブリッド解法」,システム制御情報学会論文誌,Vol.17,No.16,pp.257-263,2004Kazunori Sakakibara, Hisashi Tamaki, Hajime Murao, and Shinzo Kitamura, "Hybrid solution method based on a mathematical programming model for flexible shop scheduling problems," Transactions of the Institute of Systems, Control and Information Engineers, Vol. 17, No. 16, pp. 257-263, 2004

問題に対する最適解を探索する遺伝的アルゴリズムにおいては、初期個体群(すなわち第1世代の複数の解)を出発点として最適解を探索していくものであるところ、初期個体群によっては、世代をかなり進めたとしても最適解に近い解を得ることができない場合があった。あるいは、初期個体群によっては、遺伝的アルゴリズムによって最適解にある程度近い解を得るまでに膨大な処理時間がかかってしまう場合があった。 In genetic algorithms that search for the optimal solution to a problem, the optimal solution is searched for using an initial population (i.e., multiple solutions of the first generation) as a starting point. There were cases in which it was not possible to obtain a solution close to the optimal solution even if considerable progress was made. Alternatively, depending on the initial population, it may take an enormous amount of processing time to obtain a solution that is somewhat close to the optimal solution using the genetic algorithm.

本発明の目的は、遺伝的アルゴリズムによって最適解により近い解を取得可能とすることにある。あるいは、本発明の目的は、遺伝的アルゴリズムによる最適解の探索処理に係る処理時間を低減することにある。 An object of the present invention is to enable a genetic algorithm to obtain a solution closer to the optimal solution. Alternatively, an object of the present invention is to reduce the processing time related to the process of searching for an optimal solution using a genetic algorithm.

本発明は、最適解を得るための演算を簡略化した簡易演算により、最適解ではないが前記最適解に近似する複数の近似解を求める近似解演算部であって、複数の工程を有し各前記工程の作業を複数の処理ユニットで並列に実施可能な生産ラインにおける前記複数の製品の生産経路の干渉を考慮せずに定式化された、前記複数の工程を経て生産される複数の製品の生産に要する時間である負荷時間を表す目的関数を用いた数理計画法により、前記近似解としての近似生産計画を求める近似解演算部と、前記近似解を含む解群を初期個体群とした遺伝的アルゴリズムにより、前記複数の製品の生産経路及び前記生産ラインへの投入順序からなる前記最適解としての最適生産計画を探索する遺伝的アルゴリズム処理部と、を備えることを特徴とする最適解探索装置である。 The present invention is an approximate solution calculation unit that calculates a plurality of approximate solutions that are not the optimal solution but are close to the optimal solution by a simple calculation that simplifies the calculation for obtaining the optimal solution , and has a plurality of steps. A plurality of products produced through the plurality of processes, which are formulated without considering interference in the production routes of the plurality of products in a production line in which the work of each of the processes can be performed in parallel by a plurality of processing units. an approximate solution calculation unit that calculates an approximate production plan as the approximate solution by mathematical programming using an objective function representing a load time, which is the time required for production; and a solution group containing the approximate solution as an initial population. An optimal solution search characterized by comprising: a genetic algorithm processing unit that uses a genetic algorithm to search for an optimal production plan as the optimal solution consisting of production routes of the plurality of products and the order of input to the production line. It is a device.

望ましくは、前記遺伝的アルゴリズム処理部は、前記生産ラインにおける前記負荷時間を最小化するように、前記最適生産計画を探索する。 Preferably, the genetic algorithm processing unit searches for the optimal production plan so as to minimize the load time on the production line .

望ましくは、前記目的関数は、各製品についての、生産経路に含まれる複数の前記処理ユニットのサイクルタイムのうちの最長のサイクルタイムと、前記製品の生産数とに基づいて定式化される。 Preferably, the objective function is formulated based on the longest cycle time of the cycle times of the plurality of processing units included in the production route for each product and the number of products produced.

望ましくは、前記近似解演算部は、各前記近似生産計画を求めるにあたり、各前記処理ユニットのサイクルタイムを、予め定められた基準サイクルタイムに対して乱数を加算又は減算して得られる変更サイクルタイムに変更し、前記変更サイクルタイムに基づいて前記目的関数を解くことで、互いに異なる複数の前記近似生産計画を求める。 Preferably, the approximate solution calculation unit calculates the cycle time of each processing unit by adding or subtracting a random number to or from a predetermined standard cycle time to obtain a modified cycle time. The plurality of approximate production plans that are different from each other are obtained by changing the above and solving the objective function based on the changed cycle time.

また、本発明は、最適解を得るための演算を簡略化した簡易演算により、最適解ではないが前記最適解に近似する複数の近似解を求める近似解演算部であって、複数の工程を有し各前記工程の作業を複数の処理ユニットで並列に実施可能な生産ラインにおける前記複数の製品の各生産経路に設定された選択確率に基づいて、各製品の生産経路を順次選択、前回製品の生産経路を構成する前記処理ユニットを含む生産経路の選択確率を低下させた上で、前記順次選択における前記前回製品の次の製品である今回製品の生産経路を選択することで、前記近似解としての近似生産計画を求める近似解演算部と前記近似解を含む解群を初期個体群とした遺伝的アルゴリズムにより、前記複数の製品の生産経路及び前記生産ラインへの投入順序からなる前記最適解としての最適生産計画を探索する遺伝的アルゴリズム処理部と、を備えることを特徴とする最適解探索装置である The present invention also provides an approximate solution calculation unit that calculates a plurality of approximate solutions that are not the optimal solution but are close to the optimal solution by a simplified calculation that simplifies the calculations for obtaining the optimal solution, and which performs multiple steps. The production route for each product is sequentially selected based on the selection probability set for each production route for the plurality of products in the production line in which the work of each of the above processes can be performed in parallel by a plurality of processing units , and By reducing the selection probability of a production route including the processing unit constituting the product production route and selecting the production route of the current product, which is the next product of the previous product in the sequential selection , the approximation An approximate solution calculation unit that calculates an approximate production plan as a solution, and a genetic algorithm using a solution group including the approximate solution as an initial population, are used to calculate the above-mentioned product information, which consists of the production route of the plurality of products and the order of input to the production line. The present invention is an optimal solution search device characterized by comprising: a genetic algorithm processing unit that searches for an optimal production plan as an optimal solution .

また、本発明は、コンピュータを、最適解を得るための演算を簡略化した簡易演算により、最適解ではないが前記最適解に近似する複数の近似解を算出する近似解演算部であって、複数の工程を有し各前記工程の作業を複数の処理ユニットで並列に実施可能な生産ラインにおける前記複数の製品の生産経路の干渉を考慮せずに定式化された、前記複数の工程を経て生産される複数の製品の生産に要する時間である負荷時間を表す目的関数を用いた数理計画法により、前記近似解としての近似生産計画を求める近似解演算部と、前記近似解を含む解群を初期個体群とした遺伝的アルゴリズムにより、前記複数の製品の生産経路及び前記生産ラインへの投入順序からなる前記最適解としての最適生産計画を探索する遺伝的アルゴリズム処理部と、として機能させることを特徴とする最適解探索プログラムである。
また、本発明は、コンピュータを、最適解を得るための演算を簡略化した簡易演算により、最適解ではないが前記最適解に近似する複数の近似解を求める近似解演算部であって、複数の工程を有し各前記工程の作業を複数の処理ユニットで並列に実施可能な生産ラインにおける前記複数の製品の各生産経路に設定された選択確率に基づいて、各製品の生産経路を順次選択し、前回製品の生産経路を構成する前記処理ユニットを含む生産経路の選択確率を低下させた上で、前記順次選択における前記前回製品の次の製品である今回製品の生産経路を選択することで、前記近似解としての近似生産計画を求める近似解演算部と、前記近似解を含む解群を初期個体群とした遺伝的アルゴリズムにより、前記複数の製品の生産経路及び前記生産ラインへの投入順序からなる前記最適解としての最適生産計画を探索する遺伝的アルゴリズム処理部と、として機能させることを特徴とする最適解探索プログラムである。
The present invention also provides an approximate solution calculation unit that uses a computer to calculate a plurality of approximate solutions that are not the optimal solution but are close to the optimal solution using simple calculations that simplify the calculations for obtaining the optimal solution, A method that is formulated without taking into consideration the interference of the production routes of the plurality of products in a production line that has a plurality of steps and in which the work of each of the steps can be performed in parallel by a plurality of processing units. an approximate solution calculation unit that calculates an approximate production plan as the approximate solution by a mathematical programming method using an objective function representing a load time that is the time required to produce a plurality of products to be produced; and a solution group including the approximate solution. a genetic algorithm processing unit that searches for an optimal production plan as the optimal solution consisting of the production route of the plurality of products and the order of input to the production line, using a genetic algorithm with the initial population as an initial population ; This is an optimal solution search program that is characterized by the ability to
The present invention also provides an approximate solution calculation unit that calculates a plurality of approximate solutions that are not the optimal solution but are close to the optimal solution by using a simple calculation that simplifies the calculation for obtaining the optimal solution. Sequentially selects a production route for each product based on a selection probability set for each production route for the plurality of products in a production line that has processes in which the work of each process can be performed in parallel by a plurality of processing units. Then, by reducing the selection probability of the production route including the processing unit that constitutes the production route of the previous product, and then selecting the production route of the current product, which is the next product after the previous product in the sequential selection. , an approximate solution calculation unit that calculates an approximate production plan as the approximate solution, and a genetic algorithm using a solution group including the approximate solution as an initial population, to determine the production route of the plurality of products and the order of input to the production line. and a genetic algorithm processing unit that searches for an optimal production plan as the optimal solution consisting of the following:

本発明によれば、遺伝的アルゴリズムによって最適解により近い解を取得することができる。あるいは、本発明によれば、遺伝的アルゴリズムによる最適解の探索処理に係る処理時間を低減することができる。 According to the present invention, a solution closer to the optimal solution can be obtained using a genetic algorithm. Alternatively, according to the present invention, it is possible to reduce the processing time related to the process of searching for an optimal solution using a genetic algorithm.

本実施形態に係る最適解探索装置の構成概略図である。FIG. 1 is a schematic configuration diagram of an optimal solution search device according to the present embodiment. 本実施形態に係る生産ラインを示す図である。FIG. 1 is a diagram showing a production line according to the present embodiment. 本実施形態に係る生産ラインで取り得る生産経路を示す図である。FIG. 3 is a diagram showing possible production routes on the production line according to the present embodiment. 各製品に対する各処理ユニットの第1のサイクルタイムの例を示す第1サイクルタイム表を示す図である。FIG. 3 is a diagram showing a first cycle time table showing an example of the first cycle time of each processing unit for each product. 各製品に対する各処理ユニットの第2サイクルタイムの例を示す第2サイクルタイム表を示す図である。It is a figure which shows the 2nd cycle time table which shows the example of the 2nd cycle time of each processing unit with respect to each product. 各生産経路の基準選択確率を示す図である。It is a figure showing the standard selection probability of each production route. 各生産経路の変更選択確率を示す図である。It is a figure which shows the change selection probability of each production route. 本実施形態に係る遺伝的アルゴリズムの処理の流れを示す図である。FIG. 3 is a diagram showing the flow of processing of a genetic algorithm according to the present embodiment. 従来の遺伝的アルゴリズムで得られた出力解のヒストグラムを示す第1の図である。FIG. 2 is a first diagram showing a histogram of an output solution obtained by a conventional genetic algorithm. 本実施形態に係る遺伝的アルゴリズムで得られた出力解のヒストグラムを示す第1の図である。FIG. 2 is a first diagram showing a histogram of an output solution obtained by the genetic algorithm according to the present embodiment. 本実施形態に係る遺伝的アルゴリズムで得られた出力解のヒストグラムを示す第2の図である。FIG. 7 is a second diagram showing a histogram of an output solution obtained by the genetic algorithm according to the present embodiment. 従来の遺伝的アルゴリズムで得られた出力解のヒストグラムを示す第2の図である。FIG. 2 is a second diagram showing a histogram of an output solution obtained by a conventional genetic algorithm. 本実施形態に係る遺伝的アルゴリズムで得られた出力解のヒストグラムを示す第3の図である。FIG. 7 is a third diagram showing a histogram of the output solution obtained by the genetic algorithm according to the present embodiment. 本実施形態に係る遺伝的アルゴリズムで得られた出力解のヒストグラムを示す第4の図である。FIG. 4 is a fourth diagram showing a histogram of an output solution obtained by the genetic algorithm according to the present embodiment. 遺伝的アルゴリズムの各世代における出力解と、当該出力解に対する負荷時間の関係を示す第1の図である。FIG. 2 is a first diagram showing the relationship between the output solution in each generation of the genetic algorithm and the load time for the output solution. 遺伝的アルゴリズムの各世代における出力解と、当該出力解に対する負荷時間の関係を示す第2の図である。FIG. 7 is a second diagram showing the relationship between output solutions in each generation of the genetic algorithm and load time for the output solutions. 遺伝的アルゴリズムの処理の流れを示す図である。It is a figure showing the flow of processing of a genetic algorithm.

図1は、本実施形態に係る最適解探索装置10の構成概略図である。本実施形態に係る最適解探索装置10は、サーバコンピュータにより構成される。しかしながら、以下に説明する機能を発揮可能な限りにおいて、最適解探索装置10としてはどのような装置であってもよい。例えば、最適解探索装置10は、パーソナルコンピュータなどであってもよい。 FIG. 1 is a schematic diagram of the configuration of an optimal solution search device 10 according to this embodiment. The optimal solution search device 10 according to this embodiment is configured by a server computer. However, any device may be used as the optimal solution search device 10 as long as it can perform the functions described below. For example, the optimal solution search device 10 may be a personal computer.

入出力インターフェース12は、最適解探索装置10に対して種々の情報を入力するためのインターフェース、あるいは、最適解探索装置10から種々の情報を出力するためのインターフェースである。具体的には、後述のプロセッサ16による最適解探索処理に必要な情報が入出力インターフェース12から入力され、また、プロセッサ16による最適解探索処理の結果を示す情報が入出力インターフェース12から出力される。 The input/output interface 12 is an interface for inputting various information to the optimal solution searching device 10, or an interface for outputting various information from the optimal solution searching device 10. Specifically, information necessary for optimal solution search processing by the processor 16, which will be described later, is input from the input/output interface 12, and information indicating the results of the optimal solution search processing by the processor 16 is output from the input/output interface 12. .

入出力インターフェース12は、例えば、ネットワークアダプタなどから構成されるネットワークインターフェースであってよい。ネットワークインターフェースによれば、最適解探索装置10は、他の装置と通信可能となり、他の装置から種々の情報を受信することができ、また、他の装置に対して種々の情報を送信することができる。 The input/output interface 12 may be a network interface composed of, for example, a network adapter. According to the network interface, the optimal solution search device 10 can communicate with other devices, receive various information from other devices, and transmit various information to other devices. I can do it.

また、入出力インターフェース12は、例えば、キーボードやマウス、あるいはタッチパネルなどから構成される入力インターフェースであってよい。入力インターフェースによれば、ユーザは、最適解探索装置10に種々の情報を入力することができる。 Further, the input/output interface 12 may be an input interface composed of, for example, a keyboard, a mouse, or a touch panel. According to the input interface, the user can input various information to the optimal solution search device 10.

また、入出力インターフェース12は、例えば、液晶パネルなどから構成されるディスプレイあるいはスピーカなどから構成される出力インターフェースであってよい。出力インターフェースによれば、最適解探索装置10は、ユーザなどに向けて種々の情報を出力することができる。 Further, the input/output interface 12 may be, for example, a display including a liquid crystal panel or an output interface including a speaker. According to the output interface, the optimal solution search device 10 can output various information to users and the like.

メモリ14は、例えばHDD(Hard Disk Drive)、SSD(Solid State Drive)、ROM(Read Only Memory)、あるいはRAM(Random Access Memory)などを含んで構成されている。メモリ14は、後述のプロセッサ16とは別に設けられてもよいし、少なくとも一部がプロセッサ16の内部に設けられていてもよい。メモリ14には、最適解探索装置10の各部を動作させるための、最適解探索プログラムが記憶される。 The memory 14 includes, for example, an HDD (Hard Disk Drive), an SSD (Solid State Drive), a ROM (Read Only Memory), or a RAM (Random Access Memory). The memory 14 may be provided separately from the processor 16, which will be described later, or at least a portion thereof may be provided inside the processor 16. The memory 14 stores an optimal solution search program for operating each part of the optimal solution search device 10.

プロセッサ16は、汎用的な処理装置(例えばCPU(Central Processing Unit)など)、及び、専用の処理装置(例えばASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)、あるいは、プログラマブル論理デバイスなど)の少なくとも1つを含んで構成される。プロセッサ16としては、1つの処理装置によるものではなく、物理的に離れた位置に存在する複数の処理装置の協働により構成されるものであってもよい。図1に示す通り、プロセッサ16は、メモリ14に記憶された最適解探索プログラムにより、近似解演算部18及びGA(Genetic Algorithm、遺伝的アルゴリズム)処理部20としての機能を発揮する。 The processor 16 may be a general-purpose processing device (for example, a CPU (Central Processing Unit), etc.), or a dedicated processing device (for example, an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or a programmable logic device). ). The processor 16 may be configured not by a single processing device but by the cooperation of a plurality of processing devices located at physically separate locations. As shown in FIG. 1, the processor 16 functions as an approximate solution calculation unit 18 and a GA (Genetic Algorithm) processing unit 20 using the optimal solution search program stored in the memory 14.

プロセッサ16、すなわち、近似解演算部18及びGA処理部20による処理により、ある問題に対する、複数のパラメータから構成される最適解が探索される。詳しくは後述するが、近似解演算部18は、問題に対する近似解(最適解ではないが最適解に近い解)を演算により求め、GA処理部20は、当該近似解を含む解群を初期個体群とした遺伝的アルゴリズムにより最適解を探索する。なお、GA処理部20は、問題に対する最適解を探索はするが、GA処理部20により求められる解は、必ずしも当該問題の最適解でなくてもよい。本明細書においては、問題に対する最適の(理想的な)解を最適解と呼び、GA処理部20が最終的に出力した解を最適解とは区別して出力解と呼ぶ。もちろん、出力解が最適解となってもよい。また、本明細書において、最適解を探索するとは、最適解に向かって解を調整する処理を意味し、必ずしも最適解まで辿り着くことを意味するものではない。もちろん、最適解の探索により最適解まで辿り着いてもよい。 Through processing by the processor 16, that is, the approximate solution calculation section 18 and the GA processing section 20, an optimal solution composed of a plurality of parameters for a certain problem is searched for. As will be described in detail later, the approximate solution calculation unit 18 calculates an approximate solution to the problem (a solution that is not the optimal solution but is close to the optimal solution), and the GA processing unit 20 converts the solution group containing the approximate solution into an initial individual. Search for the optimal solution using a genetic algorithm as a group. Note that although the GA processing unit 20 searches for an optimal solution to a problem, the solution found by the GA processing unit 20 does not necessarily have to be the optimal solution to the problem. In this specification, the optimal (ideal) solution to a problem is called an optimal solution, and the solution finally output by the GA processing unit 20 is called an output solution to distinguish it from the optimal solution. Of course, the output solution may be the optimal solution. Furthermore, in this specification, searching for an optimal solution means a process of adjusting the solution toward the optimal solution, and does not necessarily mean reaching the optimal solution. Of course, the optimal solution may be arrived at by searching for the optimal solution.

本明細書においては、プロセッサ16の処理の対象となる問題として、複数の工程を有し、各工程を複数の処理ユニットで並列に処理可能な生産ラインにおける、当該複数の工程を経て生産される複数の製品の生産に要する時間である負荷時間を最小化する問題を例に、近似解演算部18及びGA処理部20の処理を説明する。すなわち、本実施形態におけるGA処理部20は、当該負荷時間を最小化するように、複数の製品の生産経路及び生産ラインへの投入順序からなる最適解としての最適生産計画を探索する。 In this specification, as a problem to be processed by the processor 16, a product is produced through a plurality of processes in a production line that has a plurality of processes and each process can be processed in parallel by a plurality of processing units. The processing of the approximate solution calculation unit 18 and the GA processing unit 20 will be explained using as an example the problem of minimizing the load time, which is the time required to produce a plurality of products. That is, the GA processing unit 20 in this embodiment searches for an optimal production plan as an optimal solution consisting of the production route of a plurality of products and the order of input to the production line so as to minimize the load time.

図2は、本実施形態の対象となる生産ラインLを示す図である。生産ラインLは、工程1~3の3つの工程から構成されている。つまり、製品は工程1~3の3つの工程を順番に経ることで生産される。各工程はそれぞれ3つの処理ユニットUを有している。すなわち、工程1の作業を実施可能な処理ユニットUとして処理ユニット#1~#3があり、工程2の作業を実施可能な処理ユニットUとして処理ユニット#4~#6があり、工程3の作業を実施可能な処理ユニットUとして処理ユニット#7~#9がある。なお、本実施形態では、処理ユニットUは作業を行う作業機であるが、サイクルタイム(処理ユニットUが作業に要する時間)が安定しているのであれば、処理ユニットUとしては人間(作業者)を含むものであってもよい。なお、1つの処理ユニットUは、1つの仕掛品に対してのみ作業を実施することができ、同時に複数の仕掛品に対する作業を行うことはできない。 FIG. 2 is a diagram showing a production line L to which this embodiment is applied. The production line L consists of three processes, processes 1 to 3. In other words, a product is produced by going through three steps, steps 1 to 3, in order. Each process has three processing units U. That is, there are processing units #1 to #3 as processing units U that can perform the work of process 1, processing units #4 to #6 as processing units U that can perform the work of process 2, and processing units U that can perform the work of process 3. There are processing units #7 to #9 as processing units U that can perform the following. In this embodiment, the processing unit U is a work machine that performs work, but if the cycle time (the time required for the processing unit U to perform the work) is stable, the processing unit U may be a human (worker). ). Note that one processing unit U can perform work on only one work-in-progress, and cannot work on multiple work-in-progress at the same time.

処理ユニット#1~#3のいずれかで工程1の作業が実施された仕掛品(生産途中の製品)は、処理ユニット#4~#6のいずれかで工程2の作業を実施されることができ、処理ユニット#4~#6のいずれかで工程2の作業が実施された仕掛品は、処理ユニット#7~#9のいずれかで工程3の作業を実施されることができる。 Work-in-progress (products in the middle of production) that have undergone process 1 work in any of processing units #1 to #3 can undergo process 2 work in any of processing units #4 to #6. Work-in-progress that has been processed in step 2 in any of processing units #4 to #6 can be processed in step 3 in any of processing units #7 to #9.

したがって、生産ラインLにおいては、製品の生産経路は、図3に示すように27本存在することとなる。例えば、生産経路1は、処理ユニット#1→処理ユニット#4→処理ユニット#7であり、生産経路2は、処理ユニット#1→処理ユニット#4→処理ユニット#8である。このように、本実施形態においては、生産経路とは、仕掛品が流れる処理ユニットUの経路を意味する。なお、生産ラインLのように、複数の工程から成り、各工程の作業を複数の処理ユニットで並列に実施可能な生産ラインLは、フレキシブル・フローショップとも呼ばれる。図3に示されるような、生産ラインLで取ることができる生産経路を示す情報は予めメモリ14に記憶される。 Therefore, in the production line L, there are 27 product production routes as shown in FIG. For example, production route 1 is processing unit #1 -> processing unit #4 -> processing unit #7, and production route 2 is processing unit #1 -> processing unit #4 -> processing unit #8. Thus, in this embodiment, the production route means the route of the processing unit U through which work in progress flows. Note that, like the production line L, a production line L that is composed of a plurality of processes and in which the work of each process can be performed in parallel by a plurality of processing units is also called a flexible flow shop. Information indicating production routes that can be taken by the production line L, as shown in FIG. 3, is stored in the memory 14 in advance.

また、各処理ユニットUにおける、仕掛品に対する作業に要する時間であるサイクルタイムが予め取得される。その上で、各処理ユニットUのサイクルタイムを示すサイクルタイム表が予めメモリ14に記憶される。図4には、サイクルタイム表の第1の例である第1サイクルタイム表が示されている。図4の第1サイクルタイム表に示される通り、同一の工程の作業を実施可能な複数の処理ユニットUにおいては、そのサイクルタイムが互いに異なっていてもよい。例えば、工程1の作業を実施する処理ユニット#1のサイクルタイムが30秒であり、同じ工程1の作業を実施する処理ユニット#2のサイクルタイムが40秒である、の如くである。 In addition, the cycle time, which is the time required for each processing unit U to work on work-in-progress, is acquired in advance. Furthermore, a cycle time table indicating the cycle time of each processing unit U is stored in the memory 14 in advance. FIG. 4 shows a first cycle time table, which is a first example of a cycle time table. As shown in the first cycle time table of FIG. 4, the cycle times of a plurality of processing units U that can perform the same process may be different from each other. For example, the cycle time of processing unit #1 that performs the work of process 1 is 30 seconds, and the cycle time of processing unit #2 that performs the work of the same process 1 is 40 seconds.

また、本実施形態では、生産ラインLにおいては、複数種類の製品が生産される。図4にも示される通り、本実施形態では、生産ラインLにおいては、品番w001~w100で表される100種類の製品が生産される。なお、各品番はそれぞれ20個ずつ生産されるとする。 Furthermore, in this embodiment, the production line L produces a plurality of types of products. As shown in FIG. 4, in this embodiment, the production line L produces 100 types of products represented by product numbers w001 to w100. It is assumed that 20 pieces of each product number are produced.

製品の種類によって、各処理ユニットUにおけるサイクルタイムが互いに異なっていてもよい。例えば、図4に示すように、品番w001の製品に対する処理ユニット#1のサイクルタイムは30秒であるのに対し、品番w034の製品に対する処理ユニット#1のサイクルタイムは50秒である、の如くである。ちなみに、同じ種類の製品(同じ品番の製品)に対する各処理ユニットUのサイクルタイムは変わらないものとする。図4の第1サイクルタイム表においては、品番w001~w033の製品(第1グループ)に対する各処理ユニットUのサイクルタイムは同じであり、品番w034~w066の製品(第2グループ)に対する各処理ユニットUのサイクルタイムは同じであり、品番w067~w100の製品(第3グループ)に対する各処理ユニットUのサイクルタイムは同じであるが、各グループに対する少なくとも一部の処理ユニットUのサイクルタイムは互いに異なるとする。 The cycle time in each processing unit U may be different depending on the type of product. For example, as shown in FIG. 4, the cycle time of processing unit #1 for the product number w001 is 30 seconds, while the cycle time of processing unit #1 for the product number w034 is 50 seconds. It is. Incidentally, it is assumed that the cycle time of each processing unit U for the same type of product (product with the same product number) does not change. In the first cycle time table of FIG. 4, the cycle time of each processing unit U for products with product numbers w001 to w033 (first group) is the same, and the cycle time of each processing unit U to products with product numbers w034 to w066 (second group) is the same. The cycle times of U are the same, and the cycle times of each processing unit U for products with product numbers w067 to w100 (third group) are the same, but the cycle times of at least some of the processing units U for each group are different from each other. shall be.

各処理ユニットUのサイクルタイムが図4の第1サイクルタイム表に示すものである場合であって、品番w001の製品を処理ユニット#1→処理ユニット#4→処理ユニット#7の生産経路1で生産した場合、当該製品を生産するのに要する時間である生産時間は、30+30+30=90秒となる。このように算出される、複数の製品(本実施形態では、品番w001~w100の100種類の製品がそれぞれ20個ずつ)の生産時間の合計が負荷時間である。 In the case where the cycle time of each processing unit U is as shown in the first cycle time table in FIG. When produced, the production time, which is the time required to produce the product, is 30+30+30=90 seconds. The total production time of a plurality of products (in this embodiment, 20 products each of 100 types with product numbers w001 to w100) calculated in this way is the load time.

負荷時間を最小化するためには、単純に、各製品について、工程毎にサイクルタイムが一番小さい処理ユニットUを選択すればよいわけではない。すなわち、生産ラインLにおける干渉という要素を考慮しなければならないからである。干渉とは、各処理ユニットUにおいて処理待ちの状態が発生することに起因して生ずるタイムロスである。例えば、干渉には、ある処理ユニットUに仕掛品Aの作業を実施させようとした場合に当該処理ユニットUが仕掛品Bに対する作業を実施中である場合の仕掛品Aの処理待ち時間(タイムロス)、あるいは、仕掛品Aに対する工程2の作業を実施予定の処理ユニットUが空き状態(作業開始可能な状態)であるのに、仕掛品Aの工程1の作業が終わらない場合のタイムロスなどが含まれる。また、生産ラインLでは、1つの工程の作業を複数の(本例では3つの)処理ユニットUで実施可能であるところ、当該3つの処理ユニットUの稼働効率(作業を行っている時間の割合)を高く維持することで、負荷時間をより低減できるはずである。このように、生産ラインLにおける干渉を考慮した上で、各処理ユニットUの稼働効率を最大限にすることで負荷時間が最小化されると考えられるが、そのような生産計画、すなわち最適生産計画を求めるのは容易ではない(なお、図4に示す第1サイクルタイム表は簡略化された例であり、実際のサイクルタイム表は、製品の各種類に対する各処理ユニットUのサイクルタイムがそれぞれ全て異なるなど、より複雑なものである)。本実施形態におけるGA処理部20は、上述のような、複数種類の製品を生産するのに要する負荷時間を最小化するように、複数種類の製品の生産経路及び生産ラインへの投入順序からなる最適解としての最適生産計画を探索する。 In order to minimize the load time, it is not sufficient to simply select the processing unit U with the shortest cycle time for each process for each product. That is, this is because the element of interference on the production line L must be taken into consideration. Interference is time loss caused by the occurrence of a processing wait state in each processing unit U. For example, interference includes the processing waiting time (time loss) for work-in-progress A when an attempt is made to have a processing unit U perform work on work-in-progress A, and the processing unit U is currently working on work-in-progress B. ), or time loss when the work in process 1 of work in process A is not completed even though the processing unit U scheduled to perform work in process 2 on work in process A is vacant (ready to start work). included. In addition, in the production line L, where the work of one process can be performed by multiple (three in this example) processing units U, the operating efficiency (percentage of time during which work is performed) of the three processing units U is ) should be able to further reduce the load time. In this way, it is thought that the load time can be minimized by maximizing the operating efficiency of each processing unit U, taking into account interference in the production line L, but such a production plan, that is, optimal production It is not easy to obtain a plan (the first cycle time table shown in Figure 4 is a simplified example, and the actual cycle time table shows that the cycle time of each processing unit U for each type of product is (They are all different and more complex.) The GA processing unit 20 in this embodiment consists of a production route for multiple types of products and an input order to the production line so as to minimize the load time required to produce multiple types of products as described above. Search for the optimal production plan as the optimal solution.

近似解演算部18は、GA処理部20による処理に先立って、すなわちGA処理部20による処理の前処理として、最適解を得るための演算を簡略化した簡易演算により、最適解ではないが最適解に近似する解である複数の近似解を求める。本実施形態では、近似解演算部18は、数理計画法、又は、本明細書において確率更新法と呼ばれる方法によって複数の近似解を求める。 Prior to the processing by the GA processing unit 20, that is, as preprocessing for the processing by the GA processing unit 20, the approximate solution calculation unit 18 performs a simple calculation that simplifies the calculation to obtain the optimal solution, and calculates the optimal solution although it is not the optimal solution. Find multiple approximate solutions that approximate the solution. In this embodiment, the approximate solution calculation unit 18 obtains a plurality of approximate solutions using mathematical programming or a method called probability updating method in this specification.

まず、数理計画法により複数の近似解を求める方法について説明する。数理計画法とは、問題に対する最適解を得るための数理モデルを求めた上で、当該数理モデルを用いて最適解を得る方法である。本実施形態では、数理モデルとして、生産ラインLにおける負荷時間を定式化した、各製品の生産経路を変数として含む目的関数を用いる。ここで、数理計画法のみによる演算によって問題の最適解を得るのは困難な場合が多々ある。本実施形態のように、生産ラインLにおける最適生産計画を得る場合においては、生産ラインLにおける干渉など、厳密な条件を全て考慮して負荷時間を厳密に定式化した目的関数を得る必要がある。このような定式化はかなり困難である。 First, a method for finding multiple approximate solutions using mathematical programming will be explained. Mathematical programming is a method of obtaining a mathematical model for obtaining an optimal solution to a problem, and then using the mathematical model to obtain the optimal solution. In this embodiment, as a mathematical model, an objective function that formulates the load time on the production line L and includes the production route of each product as a variable is used. Here, it is often difficult to obtain an optimal solution to a problem by calculations based only on mathematical programming. When obtaining an optimal production plan for production line L as in this embodiment, it is necessary to obtain an objective function in which the load time is strictly formulated by taking into account all strict conditions such as interference in production line L. . Such a formulation is quite difficult.

しかしながら、最適解を得るための演算(本実施形態では干渉を考慮して負荷時間を厳密に定式化して目的関数を得て、当該目的関数を最小化するような各製品の生産経路を求める演算)を簡略化した簡易演算であれば、数理計画法によって、最適解ではないものの近似解を比較的容易に求めることができる。本実施形態では、近似解演算部18は、簡易演算として、生産ラインLにおける干渉を考慮せずに負荷時間を定式化した目的関数を得て、当該目的関数を解くことで、すなわち、当該目的関数を最小化する各製品の生産経路を求めることで、近似解としての近似生産計画を求める。 However, calculations to obtain the optimal solution (in this embodiment, calculations are performed to obtain the objective function by strictly formulating the load time in consideration of interference, and to find the production route for each product that minimizes the objective function) ), it is possible to relatively easily find an approximate solution, although it is not the optimal solution, using mathematical programming. In this embodiment, the approximate solution calculation unit 18 obtains an objective function in which the load time is formulated without considering interference in the production line L as a simple calculation, and solves the objective function. By finding the production route for each product that minimizes the function, an approximate production plan as an approximate solution is found.

生産ラインLにおける干渉を考慮しない場合、各製品の生産経路は、各工程においてサイクルタイムが最も小さい処理ユニットUを通る生産経路となる。各処理ユニットUのサイクルタイムが図4に示す第1サイクルタイム表である場合、品番w001~w033を生産経路1(処理ユニット#1→処理ユニット#4→処理ユニット#7)で生産し、品番w034~w066を生産経路14(処理ユニット#2→処理ユニット#5→処理ユニット#8)で生産し、品番w067~w100を生産経路27(処理ユニット#3→処理ユニット#6→処理ユニット#9)で生産した場合に負荷時間が最小となり、これが近似生産計画となる。 When interference in the production line L is not considered, the production route for each product is the production route passing through the processing unit U with the shortest cycle time in each process. If the cycle time of each processing unit U is as shown in the first cycle time table shown in FIG. w034 to w066 are produced on production route 14 (processing unit #2 → processing unit #5 → processing unit #8), and product numbers w067 to w100 are produced on production route 27 (processing unit #3 → processing unit #6 → processing unit #9). ), the load time will be the minimum, and this will be the approximate production plan.

生産ラインLにおける干渉を考慮しない場合の負荷時間を一般化して定式化すると、以下の目的関数が得られる。

Figure 0007440395000001
By generalizing and formulating the load time when interference in the production line L is not considered, the following objective function is obtained.
Figure 0007440395000001

上式において、Mは製品の種類(品番)の総数(品番がw001~w100であれば100)、Nは生産経路の総数(生産ラインLにおいては27)、iは品番番号、jは生産経路の番号を表す。 In the above formula, M is the total number of product types (product numbers) (100 if the product number is from w001 to w100), N is the total number of production routes (27 for production line L), i is the product number number, and j is the production route. represents the number of

i,jは、品番iを生産経路jで生産するか否かを表すM×N個の変数であり、品番iを生産経路jで生産する場合に1、品番iを生産経路jで生産しない場合に0となるパラメータである。CTi,jは、品番及び生産経路毎のボトルネックのサイクルタイムである。ボトルネックとは、生産経路においてサイクルタイムが最大となる処理ユニットUである。例えば、各処理ユニットUのサイクルタイムが図4に示す第1サイクルタイム表に示すものである場合、品番w001に対する生産経路2(処理ユニット#1(サイクルタイム30秒)→処理ユニット#4(サイクルタイム30秒)→処理ユニット#8(サイクルタイム40秒))のボトルネックは処理ユニット#8となり、CT1,2は40秒となる。Pは品番iの生産数である。 x i,j is an M×N variable that indicates whether or not product number i is produced using production route j; it is 1 when product number i is produced using production route j; This is a parameter that becomes 0 if not used. CT i,j is the bottleneck cycle time for each product number and production route. The bottleneck is the processing unit U with the maximum cycle time in the production route. For example, if the cycle time of each processing unit U is as shown in the first cycle time table shown in FIG. Processing unit #8 (cycle time: 30 seconds)→processing unit #8 (cycle time: 40 seconds) is the bottleneck, and CTs 1 and 2 are 40 seconds. P i is the production number of product number i.

目的関数のmax関数の第1項は工程3の処理ユニットUが処理ユニット#7である生産経路におけるCTi,jの総和を表し、第2項は工程3の処理ユニットUが処理ユニット#8である生産経路におけるCTi,jの総和を表し、第3項は工程3の処理ユニットUが処理ユニット#9である生産経路におけるCTi,jの総和を表す。つまり、上記目的関数は、工程3の処理ユニットUが処理ユニット#7、#8、#9である場合のCTi,jの総和の最大値を得るものである。また、制約条件は、品番xは1つの生産経路のみで生産されることを表している。 The first term of the max function of the objective function represents the sum of CT i,j in the production route where the processing unit U of process 3 is processing unit #7, and the second term represents the sum of CT i,j in the production route where processing unit U of process 3 is processing unit #8. The third term represents the sum of CT i,j in the production route where processing unit U of process 3 is processing unit #9. In other words, the objective function is to obtain the maximum value of the sum of CT i,j when the processing units U in step 3 are processing units #7, #8, and #9. Further, the constraint condition indicates that the product number x i is produced through only one production route.

当該制約条件の下で、当該目的関数を最小化することで、近似生産計画を取得することができる。目的関数の最小化は、例えばMATLAB(登録商標)のソルバなどを用いて行うことができる。なお、数理計画法によって求められる近似生産計画における製品の生産ラインLへの投入順序は、予め適宜決定されていてよい。 An approximate production plan can be obtained by minimizing the objective function under the constraint conditions. The objective function can be minimized using, for example, a MATLAB (registered trademark) solver. Note that the order in which products are introduced into the production line L in the approximate production plan determined by mathematical programming may be appropriately determined in advance.

上述のように、本実施形態では、目的関数は、各製品についての、生産経路に含まれる複数の処理ユニットUのサイクルタイムのうちの最長のサイクルタイム(つまりCTi,j)に基づいて定式化されている。つまり、目的関数を各製品についての生産時間に基づいて目的関数を定式化する場合に比して、さらに目的関数が簡略化されている。なお、近似解演算部18は、各製品についても生産時間に基づいて、生産ラインLにおける干渉を考慮せずに目的関数を定式化するようにしてもよい。その場合、上記の目的関数のCTi,jが品番iを生産経路jで生産したときの生産時間を表す項に置き換わることとなる。 As described above, in this embodiment, the objective function is formulated based on the longest cycle time (i.e., CT i,j ) of the cycle times of the plurality of processing units U included in the production route for each product. has been made into In other words, the objective function is further simplified compared to the case where the objective function is formulated based on the production time for each product. Note that the approximate solution calculation unit 18 may also formulate the objective function for each product based on the production time without considering interference in the production line L. In that case, CT i,j in the above objective function is replaced with a term representing the production time when product number i is produced through production route j.

近似解演算部18は、複数の近似解を取得するところ、各処理ユニットUのサイクルタイムが固定されている場合、上述の目的関数を何回解いても同じ近似生産計画が得られるだけである。ここで、GA処理部20による遺伝的アルゴリズムによって最適解により近い解を取得する、あるいは、遺伝的アルゴリズムによる最適解の探索処理に係る処理時間(最適解にある程度近い解を得るまでの時間)を低減するには、互いに異なる複数の近似解を初期個体群に含めた方が良いことが分かっている。 The approximate solution calculation unit 18 obtains a plurality of approximate solutions, but if the cycle time of each processing unit U is fixed, the same approximate production plan will only be obtained no matter how many times the above-mentioned objective function is solved. . Here, the genetic algorithm by the GA processing unit 20 can be used to obtain a solution closer to the optimal solution, or the processing time (time required to obtain a solution somewhat close to the optimal solution) related to the optimal solution search process by the genetic algorithm can be reduced. It has been found that in order to reduce this, it is better to include multiple different approximate solutions in the initial population.

上述の数理計画法により、互いに異なる複数の近似解を取得すべく、近似解演算部18は、近似生産計画を求めるにあたり、各処理ユニットUのサイクルタイムを、予め定められた基準サイクルタイムに対して乱数を加算又は減産して得られる変更サイクルタイムに変更し、当該変更サイクルタイムに基づいて目的関数を解くことで、互いに異なる複数の近似生産計画を求める。本実施形態では、近似解演算部18は、図4に示す第1サイクルタイム表に示される各処理ユニットUのサイクルタイムを基準サイクルタイムとし、近似生産計画を求める処理(すなわち目的関数を最小化する処理)を行う度に、各処理ユニットUの基準サイクルタイムに対して±1~±10程度の乱数を付与することで、各処理ユニットUの変更サイクルタイムを得ている。 In order to obtain a plurality of mutually different approximate solutions using the above-mentioned mathematical programming method, the approximate solution calculation unit 18 calculates the cycle time of each processing unit U with respect to a predetermined reference cycle time when obtaining an approximate production plan. A plurality of different approximate production plans are obtained by changing the cycle time to a changed cycle time obtained by adding or reducing random numbers and solving the objective function based on the changed cycle time. In this embodiment, the approximate solution calculation unit 18 uses the cycle time of each processing unit U shown in the first cycle time table shown in FIG. Each time a process is performed, a random number of about ±1 to ±10 is assigned to the reference cycle time of each processing unit U to obtain a changed cycle time of each processing unit U.

次に、本明細書において確率更新法と呼ぶ方法により複数の近似解を求める方法について説明する。上述の数理計画法では、適切な近似解を得ることができない場合があった。例えば、各処理ユニットUのサイクルタイムが図5に示す第2サイクルタイム表のようである場合、つまり、複数の製品に対する各生産経路jのボトルネックのサイクルタイム(CTi,j)又は生産時間がどれも似通った値である場合、各製品の生産経路として同じような生産経路が選択される場合があり、そのような場合、生産ラインLにおける干渉が多く発生してしまう場合がある。このように、数理計画法では、生産ラインLにおける干渉が多く発生してしまうような近似生産計画を近似解として求めてしまう場合がある。そのような近似生産計画は、最適解に近い解とは言えず、近似解としては不適切なものとなり得る。そのような場合において近似生産計画を得る方法として確率更新法が考案された。 Next, a method for obtaining a plurality of approximate solutions using a method referred to as a probability updating method in this specification will be described. With the above-mentioned mathematical programming method, there are cases where it is not possible to obtain an appropriate approximate solution. For example, if the cycle time of each processing unit U is like the second cycle time table shown in FIG. 5, that is, the bottleneck cycle time (CT i,j ) or production time of each production route j for multiple products have similar values, a similar production route may be selected as the production route for each product, and in such a case, a lot of interference on the production line L may occur. In this way, in the mathematical programming method, an approximate production plan that causes a lot of interference on the production line L may be obtained as an approximate solution. Such an approximate production plan cannot be said to be a solution close to the optimal solution, and may be inappropriate as an approximate solution. In such cases, the stochastic updating method was devised as a method to obtain an approximate production plan.

確率更新法は、各生産経路に設定された選択確率に基づいて、各製品の生産経路を順次選択していく方法であって、近似生産計画において、生産ラインLにおける干渉が生じる可能性が低減されるように、前回製品の生産経路を構成する処理ユニットUを含む生産経路の選択確率を低下させた上で、順次選択における前回製品の次の製品である今回製品の生産経路を選択していく方法である。以下、生産ラインLにおける各処理ユニットUのサイクルタイムが、図5に示す第2サイクルタイム表に示すものである場合を例に、確率更新法について具体的に説明する。 The probability update method is a method that sequentially selects production routes for each product based on the selection probability set for each production route, and reduces the possibility of interference occurring on production line L in approximate production planning. As shown in FIG. This is the way to go. Hereinafter, the probability updating method will be specifically explained using an example in which the cycle time of each processing unit U in the production line L is as shown in the second cycle time table shown in FIG. 5.

まず、近似解演算部18は、生産ラインLで取り得る全ての生産経路についての選択確率を求める。ここで求める各生産経路についての選択確率を基準選択確率と呼ぶ。各生産経路の基準選択確率は、当該生産経路に含まれる複数の処理ユニットUのサイクルタイムに基づいて決定することができる。本実施形態では、生産経路に含まれる各処理ユニットUのサイクルタイムの逆数を取り、複数の逆数の積を求めた後、全生産経路の選択確率の総和が1となるように規格化した値を基準選択確率としている。図6に、各生産経路について算出された基準選択確率が示されている。例えば、生産経路1の初期選択確率は、処理ユニット#1のサイクルタイムの逆数である1/30と、処理ユニット#4のサイクルタイムの逆数である1/30と、処理ユニット#7のサイクルタイムの逆数である1/30との積に基づいて決定される。もっとも、第2サイクルタイム表においては、全品番に対する全処理ユニットUのサイクルタイムが同一であるので、全生産経路の基準選択確率は、上記規格化処理により、全て、1/27=0.037となっている。 First, the approximate solution calculation unit 18 calculates the selection probabilities for all possible production routes on the production line L. The selection probability for each production route found here is called the standard selection probability. The standard selection probability for each production route can be determined based on the cycle time of the plurality of processing units U included in the production route. In this embodiment, the reciprocal of the cycle time of each processing unit U included in the production route is taken, the product of multiple reciprocals is calculated, and then the value is standardized so that the sum of the selection probabilities of all production routes is 1. is taken as the standard selection probability. FIG. 6 shows the standard selection probabilities calculated for each production route. For example, the initial selection probability for production route 1 is 1/30, which is the reciprocal of the cycle time of processing unit #1, 1/30, which is the reciprocal of the cycle time of processing unit #4, and the cycle time of processing unit #7. It is determined based on the product of 1/30, which is the reciprocal of . However, in the second cycle time table, the cycle times of all processing units U for all product numbers are the same, so the standard selection probabilities for all production routes are all 1/27 = 0.037 by the normalization process described above. It becomes.

次に、近似解演算部18は、各生産経路の基準選択確率に基づいて、1つめの製品の生産経路を決定する。近似解演算部18は、基準選択確率が最大の生産経路を選択するが、図6の例のように、基準選択確率が最大の生産経路が複数ある場合は、その中から1つの生産経路を選択する。ここでは、1つめの製品の生産経路として、生産経路1(処理ユニット#1→処理ユニット#4→処理ユニット#7)が選択されたとする。なお、確率更新法における、生産経路を選択する製品の順番(製品の生産ラインLへの投入順序)は、予め適宜決定される。 Next, the approximate solution calculation unit 18 determines the production route for the first product based on the standard selection probability of each production route. The approximate solution calculation unit 18 selects the production route with the maximum standard selection probability, but if there are multiple production routes with the maximum standard selection probability as in the example of FIG. select. Here, it is assumed that production route 1 (processing unit #1→processing unit #4→processing unit #7) is selected as the production route for the first product. In addition, in the probability update method, the order of products in which the production route is selected (the order in which the products are introduced into the production line L) is appropriately determined in advance.

次に、近似解演算部18は、前回生産経路が決定された製品である前回製品の生産経路に含まれる複数の処理ユニットUに基づいて、各生産経路の選択確率を基準選択確率から変更する。変更された選択確率を変更選択確率と呼ぶ。具体的には、近似解演算部18は、前回製品の生産経路を構成する処理ユニットUを含む生産経路の選択確率を低下させる。特に、近似解演算部18は前回製品の生産経路を構成する処理ユニットUをより多く含む生産経路の選択確率をより大きく低下させる。また、近似解演算部18は、前回製品の生産経路を構成する処理ユニットUを含まない生産経路の選択確率を向上させる。 Next, the approximate solution calculation unit 18 changes the selection probability of each production route from the standard selection probability based on the plurality of processing units U included in the production route of the previous product whose production route was determined last time. . The changed selection probability is called a changed selection probability. Specifically, the approximate solution calculation unit 18 reduces the probability of selecting a production route that includes the processing unit U that constitutes the production route of the previous product. In particular, the approximate solution calculation unit 18 greatly reduces the probability of selecting a production route that includes more processing units U that constitute the production route of the previous product. Furthermore, the approximate solution calculation unit 18 improves the probability of selecting a production route that does not include the processing unit U that constitutes the production route of the previous product.

前回製品が上述の1つ目の製品である場合を考える。1つ目の製品の生産経路は生産経路1であり、生産経路1には、処理ユニット#1、処理ユニット#4、及び処理ユニット#7が含まれる。したがって、近似解演算部18は、生産経路1~27のうち、処理ユニット#1、処理ユニット#4、又は処理ユニット#7を含む生産経路の選択確率を基準選択確率から低下させる。各生産経路の変更選択確率の例が図7に示されている。 Consider the case where the previous product is the first product mentioned above. The production route for the first product is production route 1, and production route 1 includes processing unit #1, processing unit #4, and processing unit #7. Therefore, the approximate solution calculation unit 18 lowers the selection probability of the production route including the processing unit #1, the processing unit #4, or the processing unit #7 among the production routes 1 to 27 from the reference selection probability. An example of the change selection probability for each production route is shown in FIG.

具体的には、近似解演算部18は、処理ユニット#1、処理ユニット#4、及び処理ユニット#7のうちの1つを含む生産経路(生産経路5、6、8、9、11~13、16、20~22、及び25)の選択確率を、基準選択確率×(1-α)とする。ここで、αは10-10から10-1までの値を取り得るパラメータであり、後述のように適宜設定される。また、処理ユニット#1、処理ユニット#4、及び処理ユニット#7のうちの2つを含む生産経路(生産経路2~4、7、10、及び19)の選択確率を、基準選択確率×(1-2α)とする。さらに、処理ユニット#1、処理ユニット#4、及び処理ユニット#7の全てを含む生産経路(生産経路1)の選択確率を、基準選択確率×(1-3α)とする。 Specifically, the approximate solution calculation unit 18 operates on a production route (production routes 5, 6, 8, 9, 11 to 13) including one of processing unit #1, processing unit #4, and processing unit #7. , 16, 20 to 22, and 25) are defined as the standard selection probability x (1-α). Here, α is a parameter that can take a value from 10 −10 to 10 −1 , and is appropriately set as described later. In addition, the selection probability of the production routes (production routes 2 to 4, 7, 10, and 19) including two of processing unit #1, processing unit #4, and processing unit #7 is calculated as standard selection probability x ( 1-2α). Furthermore, the selection probability of the production route (production route 1) including all of processing unit #1, processing unit #4, and processing unit #7 is set as standard selection probability x (1-3α).

また、近似解演算部18は処理ユニット#1、処理ユニット#4、及び処理ユニット#7を含まない生産経路(生産経路14、15、17、18、23、24、26、及び27)の選択確率を、基準選択確率×(1+6α)とする。 In addition, the approximate solution calculation unit 18 selects production routes (production routes 14, 15, 17, 18, 23, 24, 26, and 27) that do not include processing unit #1, processing unit #4, and processing unit #7. Let the probability be the standard selection probability×(1+6α).

その上で、近似解演算部18は、各生産経路の基準選択確率に基づいて、順次生産経路を決定していく順番において、前回製品の次の製品である今回製品(ここでは2つ目の製品)の生産経路を決定する。ここでも、近似解演算部18は、変更選択確率が最大の生産経路を選択するが、変更選択確率が最大の生産経路が複数ある場合はその中から1つの生産経路を選択する。 Based on this, the approximate solution calculation unit 18 calculates the current product (here, the second determine the production route for the product). Here too, the approximate solution calculation unit 18 selects the production route with the maximum change selection probability, but if there are multiple production routes with the maximum change selection probability, it selects one production route from among them.

近似解演算部18は、2つ目の製品の生産経路に含まれる処理ユニットUに応じて、再度各生産経路の変更選択確率を求め、求めた変更選択確率に基づいて、3つ目の製品の生産経路を選択する。このような処理を繰り返していくことで、近似生産計画を求める。 The approximate solution calculation unit 18 calculates the change selection probability of each production route again according to the processing unit U included in the production route of the second product, and based on the calculated change selection probability, selects the change selection probability of the third product. Select the production route. By repeating this process, an approximate production plan is obtained.

上述した確率更新法によれば、直前に生産ラインLに投入された製品の生産経路を構成する処理ユニットUを含む生産経路が選択されにくくなる。したがって、生産ラインLにおいて干渉が起きる可能性が低減された生産計画が近似生産計画として求められる。また、確率更新法では、各製品の生産経路の選択確率(基準選択確率又は変更選択確率)は各生産経路に含まれる処理ユニットUのサイクルタイムに基づいて決定されるから、基本的には、ボトルネックのサイクルタイムや生産時間が最小の生産経路が選ばれ易くなっている。しかしながら、確率更新法では、選択確率のみに基づいて各製品の生産経路を決定しており、各製品の生産経路としてもっと良い生産経路があるかもしれない場合であってもその探索は行わない。その意味において、確率更新法も最適解を得るための演算を簡略化した簡易演算であるといえる。 According to the probability update method described above, it becomes difficult to select a production route that includes the processing unit U that constitutes the production route for the product that was input into the production line L immediately before. Therefore, a production plan in which the possibility of interference occurring on the production line L is reduced is obtained as an approximate production plan. Furthermore, in the probability updating method, the selection probability (standard selection probability or modified selection probability) of the production route for each product is determined based on the cycle time of the processing unit U included in each production route, so basically, It is becoming easier to select the production route with the minimum bottleneck cycle time or production time. However, in the probability updating method, the production route for each product is determined based only on the selection probability, and even if there may be a better production route for each product, it is not searched for. In this sense, the probability update method can also be said to be a simple calculation that simplifies the calculation to obtain the optimal solution.

また、確率更新法において、互いに異なる複数の近似生産計画を得るために、近似解演算部18は、近似生産計画を得る演算を行う度に、上述のαの値を変更する。これにより、近似生産計画を得る演算を行う度に、各生産経路の変更選択確率が変動し、求められる複数の近似生産計画が互いに異なるものとなる可能性が高くなる。 In addition, in the probability updating method, in order to obtain a plurality of mutually different approximate production plans, the approximate solution calculation unit 18 changes the above-mentioned value of α every time it performs calculations to obtain an approximate production plan. As a result, each time a computation is performed to obtain an approximate production plan, the change selection probability of each production route changes, increasing the possibility that a plurality of obtained approximate production plans will be different from each other.

GA処理部20は、近似解演算部18が求めた複数の近似解を含む解群を初期個体群とした遺伝的アルゴリズムにより、最適解を探索する。これに限られるものではないが、本実施形態では、GA処理部20による遺伝的アルゴリズムにおける初期個体群の中には、1~2割程度の近似解が含められる。 The GA processing unit 20 searches for an optimal solution using a genetic algorithm using a solution group including a plurality of approximate solutions obtained by the approximate solution calculation unit 18 as an initial population. Although not limited to this, in the present embodiment, approximately 10 to 20% of approximate solutions are included in the initial population in the genetic algorithm by the GA processing unit 20.

図8は、GA処理部20による遺伝的アルゴリズムの処理の流れを示す概念図である。なお、図8では、図17同様、第m世代の第n番目の解としての生産計画が、「生産計画m-n」と記載されている。図8に示される通り、初期個体群(第1世代)としてのN個の解(生産計画)の中に、近似解演算部18が求めた複数の近似生産計画が含められている。上述の通り、本実施形態では、初期個体群のうちの1~2割程度の個体が近似生産計画となっている。その他の個体はランダムに選択されてよい。 FIG. 8 is a conceptual diagram showing the flow of genetic algorithm processing by the GA processing unit 20. Note that in FIG. 8, as in FIG. 17, the production plan as the n-th solution of the m-th generation is written as "production plan mn." As shown in FIG. 8, a plurality of approximate production plans obtained by the approximate solution calculation unit 18 are included in the N solutions (production plans) as the initial population (first generation). As described above, in this embodiment, approximately 10 to 20% of the individuals in the initial population have approximate production plans. Other individuals may be randomly selected.

以後の処理は、従来の遺伝的アルゴリズムと同様である。すなわち、第1世代のN個の個体それぞれの適応度が算出され、算出された第1世代のN個の個体それぞれの適応度に基づいて、第2世代のN個の個体(すなわち解としての生産計画)が生成される。次いで、第2世代のN個の個体それぞれの適応度が算出され、算出された第2世代のN個の個体それぞれの適応度に基づいて、第3世代のN個の個体が生成される。以後、上記同様の処理が世代を進めながら繰り返されていく。 The subsequent processing is similar to conventional genetic algorithms. That is, the fitness of each of the N individuals of the first generation is calculated, and based on the calculated fitness of each of the N individuals of the first generation, the fitness of the N individuals of the second generation (i.e., the solution) is calculated. production plan) is generated. Next, the fitness of each of the N individuals of the second generation is calculated, and the N individuals of the third generation are generated based on the calculated fitness of each of the N individuals of the second generation. Thereafter, the same process as described above is repeated as the generations progress.

GA処理部20における遺伝的アルゴリズムも、従来同様、所定の終了条件を満たすまで実行される。所定の終了条件とは、例えば、所定の世代までの処理が完了したこと、所定の適応度を超える個体が生成されたこと、あるいは、所定の世代のN個の個体の平均適応度が所定の閾値以上となったこと、などである。 Similarly to the conventional method, the genetic algorithm in the GA processing unit 20 is executed until a predetermined termination condition is met. The predetermined termination condition is, for example, that processing up to a predetermined generation has been completed, that individuals exceeding a predetermined fitness have been generated, or that the average fitness of N individuals in a predetermined generation has reached a predetermined value. For example, the value has exceeded a threshold value.

図9~図16は、本実施形態の効果を示すためのグラフである。 9 to 16 are graphs showing the effects of this embodiment.

図9~図11は、生産ラインLの各処理ユニットUのサイクルタイムが図4に示す第1サイクルタイム表に示すものである場合における、GA処理部20の出力解である出力生産計画の負荷時間の分布を示すヒストグラムである。図9~図11のグラフにおいて、横軸がGA処理部20の出力生産計画の負荷時間を示し、縦軸が頻度(GA処理部20が出力生産計画を出力した回数)を示す。図9~図11の例では、最適解である最適生産計画の負荷時間は約0.2×10秒である。 9 to 11 show the load of the output production plan, which is the output solution of the GA processing unit 20, when the cycle time of each processing unit U of the production line L is as shown in the first cycle time table shown in FIG. It is a histogram showing time distribution. In the graphs of FIGS. 9 to 11, the horizontal axis indicates the load time of the output production plan of the GA processing unit 20, and the vertical axis indicates the frequency (the number of times the GA processing unit 20 outputs the output production plan). In the examples of FIGS. 9 to 11, the load time of the optimal production plan, which is the optimal solution, is approximately 0.2×10 5 seconds.

図9は、従来の、つまり、初期個体群を全てランダムに選択した場合の遺伝的アルゴリズムの処理結果を示し、図10は、近似解演算部18が数理計画法により求めた複数の近似解を初期個体群に含めた場合のGA処理部20による遺伝的アルゴリズムの処理結果を示し、図10は、近似解演算部18が確率更新法により求めた複数の近似解を初期個体群に含めた場合のGA処理部20による遺伝的アルゴリズムの処理結果を示す。図9と図10を比較すると、数理計画法により求めた複数の近似解を初期個体群に含めることで、遺伝的アルゴリズムによって、従来よりも最適解に近い出力解を得ることができることが分かる。同様に、図9と図11を比較すると、確率更新法により求めた複数の近似解を初期個体群に含めることで、遺伝的アルゴリズムによって、従来よりも最適解に近い出力解を得ることができることが分かる。 FIG. 9 shows the processing results of the conventional genetic algorithm, that is, when all the initial populations are selected at random, and FIG. The processing results of the genetic algorithm by the GA processing unit 20 are shown when the results are included in the initial population, and FIG. 2 shows the processing results of the genetic algorithm by the GA processing unit 20 of FIG. Comparing FIG. 9 and FIG. 10, it can be seen that by including a plurality of approximate solutions obtained by mathematical programming in the initial population, the genetic algorithm can obtain an output solution closer to the optimal solution than conventional methods. Similarly, comparing Figures 9 and 11 shows that by including multiple approximate solutions obtained by the stochastic updating method in the initial population, the genetic algorithm can obtain an output solution closer to the optimal solution than before. I understand.

図12~図14は、生産ラインLの各処理ユニットUのサイクルタイムが図5に示す第2サイクルタイム表に示すものである場合における、GA処理部20の出力解である出力生産計画の負荷時間の分布を示すヒストグラムである。図12~図14のグラフにおいても、横軸がGA処理部20の出力生産計画の負荷時間を示し、縦軸が頻度を示す。図12~図14の例でも、最適解である最適生産計画の負荷時間は約0.2×10秒である。 12 to 14 show the load of the output production plan, which is the output solution of the GA processing section 20, when the cycle time of each processing unit U of the production line L is as shown in the second cycle time table shown in FIG. It is a histogram showing time distribution. In the graphs of FIGS. 12 to 14 as well, the horizontal axis indicates the load time of the output production plan of the GA processing unit 20, and the vertical axis indicates the frequency. In the examples shown in FIGS. 12 to 14 as well, the load time of the optimal production plan, which is the optimal solution, is approximately 0.2×10 5 seconds.

図12は、従来の、つまり、初期個体群を全てランダムに選択した場合の遺伝的アルゴリズムの処理結果を示し、図13は、近似解演算部18が数理計画法により求めた複数の近似解を初期個体群に含めた場合のGA処理部20による遺伝的アルゴリズムの処理結果を示し、図14は、近似解演算部18が確率更新法により求めた複数の近似解を初期個体群に含めた場合のGA処理部20による遺伝的アルゴリズムの処理結果を示す。図12と図13を比較すると、各処理ユニットUのサイクルタイムが第2サイクルタイム表に示されたようなものである場合、つまり、数理計画法によって、生産ラインLにおいて干渉が多く発生してしまうような近似生産計画が求められ得る場合、数理計画法により求めた複数の近似解を初期個体群に含めても、従来に比して大きな効果が認められないことが分かる。これに比して、図12と図14を比較すると、数理計画法によって、生産ラインLにおいて干渉が多く発生してしまうような近似生産計画が求められ得る場合であっても、確率更新法により求めた複数の近似解を初期個体群に含めることで、遺伝的アルゴリズムによって、従来よりも最適解に近い出力解を得ることができることが分かる。 FIG. 12 shows the processing results of the conventional genetic algorithm, that is, when all the initial populations are selected at random, and FIG. FIG. 14 shows the processing results of the genetic algorithm by the GA processing unit 20 when the results are included in the initial population, and FIG. 2 shows the processing results of the genetic algorithm by the GA processing unit 20 of FIG. Comparing FIG. 12 and FIG. 13, if the cycle time of each processing unit U is as shown in the second cycle time table, that is, a lot of interference occurs in the production line L due to mathematical programming. It can be seen that when an approximate production plan that can be easily stored can be obtained, even if multiple approximate solutions obtained by mathematical programming are included in the initial population, there is no significant effect compared to the conventional method. In contrast, when comparing FIG. 12 and FIG. 14, even if the mathematical programming method can obtain an approximate production plan that causes a lot of interference on the production line L, the stochastic updating method It can be seen that by including the obtained multiple approximate solutions in the initial population, the genetic algorithm can obtain an output solution that is closer to the optimal solution than conventional methods.

図15は、生産ラインLの各処理ユニットUのサイクルタイムが図4に示す第1サイクルタイム表に示すものである場合における、GA処理部20による遺伝的アルゴリズムにおける世代数と、各世代に含まれる解(生産計画)の負荷時間の関係を示すグラフである。図15のグラフにおいて、横軸が遺伝的アルゴリズムにおける世代数を示し、縦軸が負荷時間を示す。図15の例でも、最適解である最適生産計画の負荷時間は約0.2×10秒である。 FIG. 15 shows the number of generations in the genetic algorithm by the GA processing unit 20 and the number of generations included in each generation when the cycle time of each processing unit U of the production line L is as shown in the first cycle time table shown in FIG. It is a graph showing the relationship between the load time of the solution (production plan) provided. In the graph of FIG. 15, the horizontal axis shows the number of generations in the genetic algorithm, and the vertical axis shows the load time. In the example of FIG. 15 as well, the load time of the optimal production plan, which is the optimal solution, is approximately 0.2×10 5 seconds.

図15において、四角のプロットは、従来の、つまり、初期個体群を全てランダムに選択した場合の遺伝的アルゴリズムの処理結果を示し、三角のプロットは、近似解演算部18が数理計画法により求めた複数の近似解を初期個体群に含めた場合のGA処理部20による遺伝的アルゴリズムの処理結果を示し、丸のプロットは、近似解演算部18が確率更新法により求めた複数の近似解を初期個体群に含めた場合のGA処理部20による遺伝的アルゴリズムの処理結果を示す。四角のプロットと三角のプロットを比較すると、数理計画法により求めた複数の近似解を初期個体群に含めることで、遺伝的アルゴリズムによって、従来よりも早い世代で最適解に近い解を得ることができることが分かる。つまり、遺伝的アルゴリズムによる最適解の探索処理に係る処理時間(最適解にある程度近い解を得るまでの時間)が低減されていることが分かる。同様に、四角のプロットと丸のプロットを比較すると、確率更新法により求めた複数の近似解を初期個体群に含めることで、遺伝的アルゴリズムによって、従来よりも早い世代で最適解に近い解を得ることができることが分かる。 In FIG. 15, the square plots show the processing results of the conventional genetic algorithm, that is, when all the initial populations are randomly selected, and the triangular plots show the processing results obtained by the approximate solution calculation unit 18 using mathematical programming. The graph shows the processing results of the genetic algorithm performed by the GA processing unit 20 when a plurality of approximate solutions are included in the initial population. The results of genetic algorithm processing by the GA processing unit 20 when included in the initial population are shown. Comparing the rectangular and triangular plots, we can see that by including multiple approximate solutions obtained through mathematical programming in the initial population, genetic algorithms can obtain solutions close to the optimal solution in earlier generations than before. I know what I can do. In other words, it can be seen that the processing time related to the search process for the optimal solution using the genetic algorithm (the time required to obtain a solution that is somewhat close to the optimal solution) is reduced. Similarly, when comparing the square plot and the circle plot, we can see that by including multiple approximate solutions obtained by the stochastic updating method in the initial population, the genetic algorithm can generate a solution close to the optimal solution in an earlier generation than before. I know what I can get.

図16は、生産ラインLの各処理ユニットUのサイクルタイムが図5に示す第2サイクルタイム表に示すものである場合における、GA処理部20による遺伝的アルゴリズムにおける世代数と、各世代に含まれる解(生産計画)の負荷時間の関係を示すグラフである。図16のグラフにおいて、横軸が遺伝的アルゴリズムにおける世代数を示し、縦軸が負荷時間を示す。図16の例でも、最適解である最適生産計画の負荷時間は約0.2×10秒である。 FIG. 16 shows the number of generations in the genetic algorithm by the GA processing unit 20 and the number of generations included in each generation when the cycle time of each processing unit U of the production line L is as shown in the second cycle time table shown in FIG. It is a graph showing the relationship between the load time of the solution (production plan) provided. In the graph of FIG. 16, the horizontal axis shows the number of generations in the genetic algorithm, and the vertical axis shows the load time. In the example of FIG. 16 as well, the load time of the optimal production plan, which is the optimal solution, is approximately 0.2×10 5 seconds.

図16においても、四角のプロットは、従来の、つまり、初期個体群を全てランダムに選択した場合の遺伝的アルゴリズムの処理結果を示し、三角のプロットは、近似解演算部18が数理計画法により求めた複数の近似解を初期個体群に含めた場合のGA処理部20による遺伝的アルゴリズムの処理結果を示し、丸のプロットは、近似解演算部18が確率更新法により求めた複数の近似解を初期個体群に含めた場合のGA処理部20による遺伝的アルゴリズムの処理結果を示す。四角のプロットと三角のプロットを比較すると、各処理ユニットUのサイクルタイムが第2サイクルタイム表に示されたようなものである場合、つまり、数理計画法によって、生産ラインLにおいて干渉が多く発生してしまうような近似生産計画が求められ得る場合、数理計画法により求めた複数の近似解を初期個体群に含めても、遺伝的アルゴリズムによる最適解の探索処理に係る時間の低減についても従来に比して大きな効果が認められないことが分かる。これに比して、四角のプロットと丸のプロットを比較すると、確率更新法により求めた複数の近似解を初期個体群に含めることで、遺伝的アルゴリズムによって、従来よりも早い世代で最適解に近い解を得ることができることが分かる。 In FIG. 16 as well, the square plots show the processing results of the conventional genetic algorithm, that is, when all the initial populations are randomly selected, and the triangular plots show the results of the processing performed by the approximate solution calculation unit 18 using mathematical programming. The processing results of the genetic algorithm by the GA processing unit 20 are shown when the obtained plurality of approximate solutions are included in the initial population, and the circle plots indicate the plurality of approximate solutions obtained by the approximate solution calculation unit 18 using the probability update method. 2 shows the processing results of the genetic algorithm by the GA processing unit 20 when the initial population includes . Comparing the square plot and the triangular plot, we can see that if the cycle time of each processing unit U is as shown in the second cycle time table, that is, a lot of interference occurs on the production line L due to mathematical programming. When it is possible to obtain an approximate production plan that would result in the production of an optimal solution, even if multiple approximate solutions obtained by mathematical programming are included in the initial population, the time required to search for the optimal solution using a genetic algorithm cannot be reduced. It can be seen that there is no significant effect compared to . In contrast, when comparing the square plot and the circle plot, we can see that by including multiple approximate solutions obtained using the stochastic updating method in the initial population, the genetic algorithm can arrive at the optimal solution in an earlier generation than before. It can be seen that a close solution can be obtained.

以上、本発明に係る実施形態を説明したが、本発明は上記実施形態に限られるものではなく、本発明の趣旨を逸脱しない限りにおいて種々の変更が可能である。 Although the embodiments according to the present invention have been described above, the present invention is not limited to the above embodiments, and various changes can be made without departing from the spirit of the present invention.

10 最適解探索装置、12 通信インターフェース、14 メモリ、16 プロセッサ、18 近似解演算部、20 GA処理部。 10 optimal solution search device, 12 communication interface, 14 memory, 16 processor, 18 approximate solution calculation unit, 20 GA processing unit.

Claims (7)

最適解を得るための演算を簡略化した簡易演算により、最適解ではないが前記最適解に近似する複数の近似解を求める近似解演算部であって、複数の工程を有し各前記工程の作業を複数の処理ユニットで並列に実施可能な生産ラインにおける前記複数の製品の生産経路の干渉を考慮せずに定式化された、前記複数の工程を経て生産される複数の製品の生産に要する時間である負荷時間を表す目的関数を用いた数理計画法により、前記近似解としての近似生産計画を求める近似解演算部と、
前記近似解を含む解群を初期個体群とした遺伝的アルゴリズムにより、前記複数の製品の生産経路及び前記生産ラインへの投入順序からなる前記最適解としての最適生産計画を探索する遺伝的アルゴリズム処理部と、
を備えることを特徴とする最適解探索装置。
An approximate solution calculation unit that calculates a plurality of approximate solutions that are not the optimal solution but are close to the optimal solution by a simplified calculation that simplifies the calculation for obtaining the optimal solution, the unit having a plurality of steps and each step It is formulated without considering the interference of the production routes of the plurality of products in a production line where work can be carried out in parallel by a plurality of processing units, and is formulated without considering the interference of the production routes of the plurality of products, which are produced through the plurality of processes. an approximate solution calculation unit that calculates an approximate production plan as the approximate solution by a mathematical programming method using an objective function representing a load time, which is time ;
Genetic algorithm processing that searches for an optimal production plan as the optimal solution consisting of the production route of the plurality of products and the order of input to the production line, using a genetic algorithm using a solution group including the approximate solution as an initial population. Department and
An optimal solution search device comprising:
前記遺伝的アルゴリズム処理部は、前記生産ラインにおける前記負荷時間を最小化するように、前記最適生産計画を探索する、
ことを特徴とする請求項1に記載の最適解探索装置。
The genetic algorithm processing unit searches for the optimal production plan so as to minimize the load time on the production line.
The optimal solution search device according to claim 1, characterized in that:
前記目的関数は、各製品についての、生産経路に含まれる複数の前記処理ユニットのサイクルタイムのうちの最長のサイクルタイムと、前記製品の生産数とに基づいて定式化される、
ことを特徴とする請求項に記載の最適解探索装置。
The objective function is formulated based on the longest cycle time of the cycle times of the plurality of processing units included in the production route for each product and the number of products produced.
The optimal solution search device according to claim 1 , characterized in that:
前記近似解演算部は、各前記近似生産計画を求めるにあたり、各前記処理ユニットのサイクルタイムを、予め定められた基準サイクルタイムに対して乱数を加算又は減算して得られる変更サイクルタイムに変更し、前記変更サイクルタイムに基づいて前記目的関数を解くことで、互いに異なる複数の前記近似生産計画を求める、
ことを特徴とする請求項又はに記載の最適解探索装置。
In obtaining each of the approximate production plans, the approximate solution calculation unit changes the cycle time of each of the processing units to a modified cycle time obtained by adding or subtracting a random number from a predetermined reference cycle time. , obtaining a plurality of mutually different approximate production plans by solving the objective function based on the changed cycle time;
The optimal solution search device according to claim 1 or 3 , characterized in that:
最適解を得るための演算を簡略化した簡易演算により、最適解ではないが前記最適解に近似する複数の近似解を求める近似解演算部であって、複数の工程を有し各前記工程の作業を複数の処理ユニットで並列に実施可能な生産ラインにおける前記複数の製品の各生産経路に設定された選択確率に基づいて、各製品の生産経路を順次選択、前回製品の生産経路を構成する前記処理ユニットを含む生産経路の選択確率を低下させた上で、前記順次選択における前記前回製品の次の製品である今回製品の生産経路を選択することで、前記近似解としての近似生産計画を求める近似解演算部と
前記近似解を含む解群を初期個体群とした遺伝的アルゴリズムにより、前記複数の製品の生産経路及び前記生産ラインへの投入順序からなる前記最適解としての最適生産計画を探索する遺伝的アルゴリズム処理部と、
を備えることを特徴とする最適解探索装置。
An approximate solution calculation unit that calculates a plurality of approximate solutions that are not the optimal solution but are close to the optimal solution by a simplified calculation that simplifies the calculation for obtaining the optimal solution, the unit having a plurality of steps and each step A production route for each product is sequentially selected based on a selection probability set for each production route for the plurality of products in a production line where work can be performed in parallel by multiple processing units, and the production route for the previous product is configured . By reducing the selection probability of the production route including the processing unit to be selected and selecting the production route of the current product, which is the next product of the previous product in the sequential selection , the approximate production plan as the approximate solution is determined. an approximate solution calculation unit that calculates
Genetic algorithm processing that searches for an optimal production plan as the optimal solution consisting of the production route of the plurality of products and the order of input to the production line, using a genetic algorithm using a solution group including the approximate solution as an initial population. Department and
An optimal solution search device comprising:
コンピュータを、
最適解を得るための演算を簡略化した簡易演算により、最適解ではないが前記最適解に近似する複数の近似解を算出する近似解演算部であって、複数の工程を有し各前記工程の作業を複数の処理ユニットで並列に実施可能な生産ラインにおける前記複数の製品の生産経路の干渉を考慮せずに定式化された、前記複数の工程を経て生産される複数の製品の生産に要する時間である負荷時間を表す目的関数を用いた数理計画法により、前記近似解としての近似生産計画を求める近似解演算部と、
前記近似解を含む解群を初期個体群とした遺伝的アルゴリズムにより、前記複数の製品の生産経路及び前記生産ラインへの投入順序からなる前記最適解としての最適生産計画を探索する遺伝的アルゴリズム処理部と、
として機能させることを特徴とする最適解探索プログラム。
computer,
An approximate solution calculation unit that calculates a plurality of approximate solutions that are not the optimal solution but are close to the optimal solution by a simple calculation that simplifies the calculation for obtaining the optimal solution , and has a plurality of steps, and each of the steps In the production of a plurality of products produced through the plurality of processes, the process is formulated without considering the interference of the production routes of the plurality of products in a production line in which the work can be performed in parallel by a plurality of processing units. an approximate solution calculation unit that calculates an approximate production plan as the approximate solution by a mathematical programming method using an objective function representing the load time that is the required time ;
Genetic algorithm processing that searches for an optimal production plan as the optimal solution consisting of the production route of the plurality of products and the order of input to the production line, using a genetic algorithm using a solution group including the approximate solution as an initial population. Department and
An optimal solution search program that is characterized by functioning as a.
コンピュータを、 computer,
最適解を得るための演算を簡略化した簡易演算により、最適解ではないが前記最適解に近似する複数の近似解を求める近似解演算部であって、複数の工程を有し各前記工程の作業を複数の処理ユニットで並列に実施可能な生産ラインにおける前記複数の製品の各生産経路に設定された選択確率に基づいて、各製品の生産経路を順次選択し、前回製品の生産経路を構成する前記処理ユニットを含む生産経路の選択確率を低下させた上で、前記順次選択における前記前回製品の次の製品である今回製品の生産経路を選択することで、前記近似解としての近似生産計画を求める近似解演算部と、 An approximate solution calculation unit that calculates a plurality of approximate solutions that are not the optimal solution but are close to the optimal solution by a simplified calculation that simplifies the calculation for obtaining the optimal solution, the unit having a plurality of steps and each step Based on the selection probability set for each production route of the plurality of products in a production line where work can be performed in parallel by multiple processing units, the production route of each product is sequentially selected, and the production route of the previous product is configured. The approximate production plan as the approximate solution is determined by reducing the selection probability of the production route including the processing unit that is to be selected, and then selecting the production route for the current product, which is the next product after the previous product in the sequential selection. an approximate solution calculation unit that calculates
前記近似解を含む解群を初期個体群とした遺伝的アルゴリズムにより、前記複数の製品の生産経路及び前記生産ラインへの投入順序からなる前記最適解としての最適生産計画を探索する遺伝的アルゴリズム処理部と、 Genetic algorithm processing that searches for an optimal production plan as the optimal solution consisting of the production route of the plurality of products and the order of input to the production line, using a genetic algorithm using a solution group including the approximate solution as an initial population. Department and
として機能させることを特徴とする最適解探索プログラム。 An optimal solution search program that is characterized by functioning as a.
JP2020190555A 2020-11-16 2020-11-16 Optimal solution search device and optimal solution search program Active JP7440395B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020190555A JP7440395B2 (en) 2020-11-16 2020-11-16 Optimal solution search device and optimal solution search program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020190555A JP7440395B2 (en) 2020-11-16 2020-11-16 Optimal solution search device and optimal solution search program

Publications (2)

Publication Number Publication Date
JP2022079376A JP2022079376A (en) 2022-05-26
JP7440395B2 true JP7440395B2 (en) 2024-02-28

Family

ID=81707601

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020190555A Active JP7440395B2 (en) 2020-11-16 2020-11-16 Optimal solution search device and optimal solution search program

Country Status (1)

Country Link
JP (1) JP7440395B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7410345B1 (en) 2023-03-31 2024-01-09 Qsol株式会社 Production planning device, production planning program, and production planning method

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3504072B2 (en) * 1996-08-06 2004-03-08 中部電力株式会社 Power system supply and demand plan creation device
JP3833807B2 (en) * 1998-01-23 2006-10-18 中部電力株式会社 Electricity system supply and demand plan creation device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
黒田 充 ほか,生産スケジューリング,第1版,株式会社朝倉書店,2002年02月20日,第2頁-第27頁,ISBN: 4-254-27521-8

Also Published As

Publication number Publication date
JP2022079376A (en) 2022-05-26

Similar Documents

Publication Publication Date Title
Baykasoğlu et al. Stochastic U-line balancing using genetic algorithms
US20070005522A1 (en) Resource assignment optimization using direct encoding and genetic algorithms
CN106527381B (en) A kind of fast evaluation method towards parallel batch processing machine dynamic dispatching
CA2436352A1 (en) Process and system for developing a predictive model
Elsayed et al. Integrated strategies differential evolution algorithm with a local search for constrained optimization
Wang et al. The single machine ready time scheduling problem with fuzzy processing times
JP7440395B2 (en) Optimal solution search device and optimal solution search program
Chou An experienced learning genetic algorithm to solve the single machine total weighted tardiness scheduling problem
Pooranian et al. Independent task scheduling in grid computing based on queen bee algorithm
Halim et al. Single-machine integrated production preventive maintenance scheduling: A simheuristic approach
Duenas et al. Multi-objective genetic algorithm for single machine scheduling problem under fuzziness
CN111144569A (en) Yield improvement applicable model optimization method based on genetic algorithm
Hussein et al. Dynamic process scheduling using genetic algorithm
Mathirajan et al. Scheduling algorithms for heterogeneous batch processors with incompatible job-families
CN108764586A (en) Fuzzy Petri Net parameter optimization method, system and electronic equipment
Kazemi et al. Elimination ordering in lifted first-order probabilistic inference
CN110162704B (en) Multi-scale key user extraction method based on multi-factor genetic algorithm
Chakraborti et al. FGP approach for solving fractional multiobjective decision making problems using GA with tournament selection and arithmetic crossover
Nurdiansyah et al. An Improved Differential Evolution Algorithm for Permutation Flow Shop Scheduling Problem.
Yang et al. Hybrid Taguchi-based genetic algorithm for flowshop scheduling problem
CN111858229A (en) Optimization device and control method of optimization device
Łopuszański et al. Random walks with asymmetric time delays
Ray et al. An evolutionary algorithm for constrained bi-objective optimization using radial slots
Kangarloo et al. JIT scheduling problem on flexible flow shop with machine break down, machine eligibility and setup times
TWI826087B (en) Dispatching system and dispatching method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220725

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231003

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231117

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: 20240130

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240215

R150 Certificate of patent or registration of utility model

Ref document number: 7440395

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150