JP2000271839A - Flow shop scheduling device, flow shop scheduling method, and storage media for program solving flow shop scheduling - Google Patents

Flow shop scheduling device, flow shop scheduling method, and storage media for program solving flow shop scheduling

Info

Publication number
JP2000271839A
JP2000271839A JP8100899A JP8100899A JP2000271839A JP 2000271839 A JP2000271839 A JP 2000271839A JP 8100899 A JP8100899 A JP 8100899A JP 8100899 A JP8100899 A JP 8100899A JP 2000271839 A JP2000271839 A JP 2000271839A
Authority
JP
Japan
Prior art keywords
pruning
schedule
solution
work
pattern
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.)
Pending
Application number
JP8100899A
Other languages
Japanese (ja)
Inventor
Takeshi Yamada
武士 山田
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP8100899A priority Critical patent/JP2000271839A/en
Publication of JP2000271839A publication Critical patent/JP2000271839A/en
Pending legal-status Critical Current

Links

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/30Computing systems specially adapted for manufacturing

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Multi-Process Working Machines And Systems (AREA)
  • General Factory Administration (AREA)
  • Control By Computers (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide an excellent solution for a large scale flow shop scheduling problem at high speed. SOLUTION: When a schedule as a new solution is created in 6, pruning patterns where a work corresponding the contents of the longest critical blocks in the schedule are replaced by wild cards are generated in 7, and they are maintained as a pruning list in 8. When a neighborhood of the solution which are a set of new candidate solutions is generated by moving works corresponding to contents of respective critical blocks to outside in 3, new candidate solutions are examined if they match the patterns in the pruning list in 4. If a candidate matches, it will be excluded from the candidates to limit a search range.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は,工場等のファクト
リーオートメーションにおいて作業終了までの時間をな
るべく短くすることにより,全作業の効率化を図ること
を可能にするフローショップスケジューリング問題を解
決するフローショップスケジューリング装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a flow shop which solves the flow shop scheduling problem which makes it possible to improve the efficiency of the entire work by shortening the time until the end of the work in factory automation such as a factory. It relates to a scheduling device.

【0002】[0002]

【従来の技術】〔フローショップスケジューリング問
題〕まず,本発明で扱うフローショップスケジューリン
グ問題について説明する。フローショップスケジューリ
ング問題とは,n個の仕事をm台の機械で加工する問題
である。このとき, 1.仕事を分担して加工する機械の割当の順番(技術的
順序と呼ばれ,仕事によらず一定である), 2.各仕事の各機械上での加工時間, の二つがあらかじめ与えられている。また, 1.機械は故障しない, 2.各機械は同時に二つ以上の仕事を処理できない, 3.作業の中断はない, などの制約条件を設ける。ここで各機械上の仕事の処理
のことを作業と呼ぶ。
2. Description of the Related Art [Flow shop scheduling problem] First, a flow shop scheduling problem handled in the present invention will be described. The flow shop scheduling problem is a problem in which n jobs are processed by m machines. At this time, 1. 1. Assignment order of machines that share and process work (called a technical order, which is constant regardless of work); The machining time for each job on each machine is given in advance. Also, 1. 1. The machine does not break down. 2. Each machine cannot handle more than one job at the same time; There are constraints such as no interruption of work. Here, processing of work on each machine is called work.

【0003】また,フローショップスケジューリング問
題において,一般に解,もしくはスケジュールとは,仕
事の処理順序の順列のことである。したがって,例えば
6個の仕事からなるスケジューリング問題の場合,例え
ば解S=1,2,3,4,5,6とは,Sにおいてまず
仕事1が処理され,次に仕事2,…最後に仕事6が処理
されることを意味する。一般にSにおいて各仕事がji
2 …jn の順で処理されるとき,S=ji ,j2
…,jn のように表す。
In the flow shop scheduling problem, generally, a solution or a schedule is a permutation of a processing order of work. Therefore, for example, in the case of a scheduling problem composed of six tasks, for example, if the solution S = 1, 2, 3, 4, 5, 6, the task 1 is processed first in S, then the task 2,. 6 is processed. Generally, in S, each job is j i
when it is forward in the process of j 2 ... j n, S = j i, j 2,
..., expressed as j n.

【0004】上記の制約条件のもとで,全ての仕事を加
工し終るまでの所要時間である総作業時間(これをCma
x と呼ぶ)を最小にする解,すなわちスケジュールのこ
とをフローショップスケジューリング問題の最適解,最
適スケジュールと呼ぶ。フローショップスケジューリン
グ問題を解くとは,フローショップスケジューリング問
題の最適解,すなわち最適スケジュールを求めることで
ある。
[0004] Under the above-mentioned constraints, the total work time (which is the time required until all the work is processed) is referred to as Cma.
The solution that minimizes x), that is, the schedule, is called the optimal solution or optimal schedule of the flow shop scheduling problem. Solving the flow shop scheduling problem is to find the optimal solution of the flow shop scheduling problem, that is, the optimal schedule.

【0005】〔クリティカルパス〕フローショップスケ
ジューリング問題のクリティカルパスとは,スケジュー
ル上の作業列Pのことであり,Pは次の条件を満たす: ・最初の機械上の最初の作業はPに含まれる。 ・最後の機械上の最後の作業はPに含まれる。 ・P上の各作業は,その最初の作業を除いて,その作業
開始時刻とP上直前の作業の作業終了時刻は等しい(し
たがって,クリティカルパス上の仕事の待ち時間,機械
の遊休時間はゼロ)。
[Critical Path] The critical path in the flow shop scheduling problem is a work sequence P on a schedule, and P satisfies the following conditions: • The first work on the first machine is included in P . The last operation on the last machine is included in P; -For each work on P, except for its first work, its work start time is equal to the work end time of the work immediately before P (therefore, the waiting time of the work on the critical path and the idle time of the machine are zero). ).

【0006】スケジュール上に上記の条件を満たすPは
必ず一つ以上存在し,P上の作業の処理時間の和,すな
わち作業時間の長さは,対応するスケジュールの総作業
時間に等しい。
[0006] There is always one or more Ps satisfying the above conditions on the schedule, and the sum of the processing times of the work on P, that is, the length of the work time is equal to the total work time of the corresponding schedule.

【0007】〔クリティカルブロック〕クリティカルパ
ス上,同一機械に属する連続する作業列をクリティカル
ブロックと呼ぶ。また「クリティカルブロックの内部の
作業」を, ・先頭のブロックの場合,最後の作業を除く全ての作
業, ・最後のブロックの場合,先頭の作業を除く全ての作
業, ・それ以外のブロックの場合,先頭および最後の作業を
除く全ての作業, とし,それ以外を「両端の作業」と呼ぶ。フローショッ
プスケジューリング問題の場合,作業の処理順序と仕事
の処理順序は1対1に対応しているので,それぞれ対応
する仕事を用いて「クリティカルブロックの内部の仕
事」「両端の仕事」などとも呼ぶ。クリティカルブロッ
クに関しては,次の事実が良く知られている。
[Critical Block] A continuous work sequence belonging to the same machine on a critical path is called a critical block. "Internal work inside the critical block" is described as follows: ・ In the case of the first block, all the work except the last work ・ In the case of the last block, all the work except the first work ・ In the case of other blocks , And all operations except the first and last operations, and the others are called “end-end operations”. In the case of the flow shop scheduling problem, the processing order of the work and the processing order of the work have a one-to-one correspondence, and accordingly, the corresponding work is also referred to as “work inside the critical block” or “work at both ends”. . The following facts are well known for critical blocks.

【0008】〔クリティカルブロックの基本性質〕与え
られたスケジュールの任意のクリティカルブロックにつ
いて,クリティカルブロックの内部の仕事の処理順序を
たとえどのように入れ替えても,スケジュールの総作業
時間はこれ以上改善されない。
[Basic Properties of Critical Block] Regarding any critical block of a given schedule, no matter how the processing order of the work inside the critical block is changed, the total working time of the schedule is not further improved.

【0009】例として,8仕事,6機械のフローショッ
プスケジューリング問題を考える。図2に,この問題の
解の例4,5,6,1,2,3,8,7と,そのクリテ
ィカルパスおよびブロックの様子を示す。図中の○は作
業を表し,→は作業の順序関係を表す。太字で示すのが
クリティカルパスである。
As an example, consider a flow shop scheduling problem of eight jobs and six machines. FIG. 2 shows examples of solutions to this problem 4, 5, 6, 1, 2, 3, 8, 7 and the state of their critical paths and blocks. In the figure, ○ indicates work, and → indicates the order relation of work. The critical path is shown in bold.

【0010】図2の例の場合,長さ2以上の4つのブロ
ックが存在する。また,最長のブロックは機械3上のブ
ロック2であり,ブロック2において仕事6,1はその
内部の仕事,仕事5,2は両端の仕事となる。同様に機
械2上のブロック1においてはその内部の仕事は存在せ
ず,仕事4,5が両端の仕事となる。また機械6上のブ
ロック4においては,これは最後のブロックであるか
ら,内部の仕事は8,7であり,両端の仕事は3であ
る。上の「クリティカルブロックの基本性質」をブロッ
ク2に適用すると,仕事6,1の順序をどのように変更
しても(すなわち6→1を1→6に変更しても)スケジ
ュールはこれ以上改善しない,ということになる。
In the example shown in FIG. 2, there are four blocks having a length of 2 or more. The longest block is the block 2 on the machine 3. In the block 2, the work 6,1 is the internal work, and the work 5,2 is the work at both ends. Similarly, in the block 1 on the machine 2, there is no internal work, and the work 4, 5 is the work at both ends. Also, in block 4 on machine 6, since this is the last block, the internal work is 8, 7 and the work at both ends is 3. Applying the above “Basic Properties of Critical Blocks” to Block 2 will improve the schedule no matter how the order of jobs 6 and 1 is changed (ie, even if 6 → 1 is changed to 1 → 6). No.

【0011】〔フローショップスケジューリング問題の
近傍〕一般に,現在の解xの近傍N(x)とは,xから
一回の変更操作で到達可能な解の集合のことである。こ
の変更操作は遷移と呼ばれる。フローショップスケジュ
ーリング問題の場合,最も単純な遷移は,S=j1 2
…ji …jn においてi番目の仕事ji をk番目に移動
させて新たなスケジュールを生成する操作である。その
結果できるスケジュールをSji,kと記す。したがって,
N(S)={S ji,k|1≦i≦n,1≦k≦n,i≠
k}となる。しかし,一般にこれでは効率が悪いため,
通常は上の「クリティカルブロックの基本性質」を考慮
に入れて,i番目の仕事ji をそれが属するクリティカ
ルブロックの外側に移動させる遷移のみを考えることが
多い。これをNC(S)で表すことにする。
[Flow shop scheduling problem
Neighborhood] In general, the neighborhood N (x) of the current solution x is
A set of solutions that can be reached by a single change operation. This
Is called a transition. Flow shop schedule
In the case of the Rolling problem, the simplest transition is S = j1jTwo
... ji... jnI-th job atiMove to kth
This is an operation for generating a new schedule. That
The schedule that can result is Sji, kIt is written. Therefore,
N (S) = {S ji, k| 1 ≦ i ≦ n, 1 ≦ k ≦ n, i ≠
k}. However, since this is generally inefficient,
Usually considers the above "Basic properties of critical blocks"
And the i-th job jiThe Kritika to which it belongs
Only the transitions that move outside the
Many. This will be represented by NC (S).

【0012】フローショップスケジューリング問題のク
リティカルパス,クリティカルブロック,クリティカル
ブロックに基づく近傍などは,下記の文献に詳しく説明
されている。[参考文献]A fast tabu search algorit
hm for the permutation flow-shop problem,E.Nowick
i and C.Smutnicki ,European Journal of Operationa
l Research Vol.91(1996) pp.160-175. 〔確率サンプリング法〕確率サンプリング法とは,凹凸
の激しい探索空間を,時には解の悪化する方向も探索し
つつ最終的に最適解,もしくは準最適解を得る探索法で
ある。
The critical path, the critical block, and the neighborhood based on the critical block of the flow shop scheduling problem are described in detail in the following documents. [Reference] A fast tabu search algorit
hm for the permutation flow-shop problem, E. Nowick
i and C. Smutnicki, European Journal of Operationa
l Research Vol.91 (1996) pp.160-175. [Probability sampling method] The probability sampling method is a search method for finally obtaining an optimal solution or a sub-optimal solution while searching for a search space with severe irregularities, sometimes in a direction in which the solution deteriorates.

【0013】以下に,手続きProc-1として確率サンプリ
ング法の概要を示す。但し,解xの評価値をV(x)と
し,V(x)を最小化する問題を考える。
Hereinafter, an outline of the probability sampling method will be described as a procedure Proc-1. However, consider the problem of minimizing V (x) by setting the evaluation value of the solution x to V (x).

【0014】≪手続きProc-1 確率サンプリング法≫ 1.初期解をx0 とし,x:=x* :=x0 ,i=1と
する。但し,x* はこれまでに得られた最良解である。
{Procedure Proc-1 Probability Sampling Method} The initial solution is x 0, and x: = x * : = x 0 and i = 1. Here, x * is the best solution obtained so far.

【0015】2.xの近傍からランダムに解を選びyと
する。
2. A solution is randomly selected from the vicinity of x and set to y.

【0016】3.もしV(y)<V(x)ならば,x:
=yとする。そうでない場合,確率PT :=exp(−(V
(y)−V(x))/T)でx:=yとする。すなわ
ち,0≦r<1である乱数rを生成し,r<PT なら
ば,x:=yとする(但し,T>0)。
3. If V (y) <V (x), x:
= Y. Otherwise, the probability P T : = exp (− (V
(Y) −V (x)) / T) and x: = y. That is, a random number r satisfying 0 ≦ r <1 is generated, and if r < PT , x: = y (where T> 0).

【0017】4.i:=i+1とする。4. i: = i + 1.

【0018】5.x<x* ならx* :=x 6.i>N(Nは所定の繰り返し回数)ならばステップ
7へ,そうでなければステップ2へ戻り,同様に処理を
繰り返す。
5. 5. If x <x *, then x * : = x If i> N (N is a predetermined number of repetitions), the process returns to step 7; otherwise, the process returns to step 2 and repeats the same processing.

【0019】7.x* を出力して終了する。[7] Output x * and exit.

【0020】≪手続きProc-1 終了≫確率PT :=exp
(−(V(y)−V(x))/T)は,受理確率と呼ば
れる。ここでTは変数であり,Tをどのように変化する
かによって幾つかの異なる方法が考えられる。Tをiの
増加に応じて減少させる場合は模擬アニーリング法(S
A)と呼ばれる。簡単のため,ここではT=C(Cは正
の定数)の場合のみを考えるが,他の場合も同様に適用
できる。
{Proc-1 termination} Probability P T : = exp
(− (V (y) −V (x)) / T) is called an acceptance probability. Here, T is a variable, and several different methods can be considered depending on how T is changed. When T is decreased as i increases, the simulated annealing method (S
A). For the sake of simplicity, only the case of T = C (C is a positive constant) is considered here, but the same can be applied to other cases.

【0021】確率的サンプリング法については,以下の
文献に詳しく説明されている。 [参考文献] 「岩波講座 応用数学 離散最適化法と
アルゴリズム」(茨木俊秀著)。
The probabilistic sampling method is described in detail in the following document. [References] "Iwanami Course Applied Mathematics Discrete Optimization Method and Algorithm" (by Toshihide Ibaraki).

【0022】以上のように確率的サンプリング法は悪化
する解も受理しつつ,探索空間を確率的に探索する。し
かし,フローショップスケジューリング問題のように探
索空間のサイズが大きくなると,探索には時間がかかる
という欠点がある。
As described above, the stochastic sampling method stochastically searches the search space while accepting a worsening solution. However, when the size of the search space increases as in the flow shop scheduling problem, there is a disadvantage that the search takes time.

【0023】[0023]

【発明が解決しようとする課題】フローショップスケジ
ューリング装置の従来の方法では,分枝限定法などによ
る解法を用いる装置が研究されているが,大規模な問題
に対しては組合せ爆発を起こすため,最適解もしくは最
適解に近い良質な解,つまり準最適解を有効な時間内に
求めることが困難であるという問題点がある。この点を
解消するためには確率的サンプリング法を用いた近似解
法の利用が望まれる。
In the conventional method of the flow shop scheduling device, a device using a solution such as a branch and bound method has been studied. However, a combination explosion occurs for a large-scale problem. There is a problem that it is difficult to find an optimal solution or a high-quality solution close to the optimal solution, that is, a sub-optimal solution within an effective time. In order to solve this problem, it is desired to use an approximate solution using a stochastic sampling method.

【0024】確率的サンプリング法では,現在の解であ
るスケジュールからある仕事を現在の処理位置から別の
処理位置に移動させる遷移について全ての可能性を考
え,これを近傍と呼ぶ。この近傍中からある一定の基準
を満たす解を一つ選択し,現在の解を新たに選択された
解で置き換える。この操作を繰り返すことによって解の
品質を少しずつ向上させる。
In the stochastic sampling method, all possibilities for transition of a certain job from the current solution schedule to another processing position from the current processing position are considered, and this is called a neighborhood. One solution that satisfies a certain criterion is selected from the neighborhood, and the current solution is replaced with the newly selected solution. By repeating this operation, the quality of the solution is gradually improved.

【0025】しかし,フローショップスケジューリング
問題の探索空間は非常に大きく,たとえ確率的サンプリ
ング法を用いても,探索空間を網羅的に探索し,最適解
に十分近い品質の良い解を実用的な時間内に求めること
は非常に難しい。特に確率的サンプリング法では,既に
探索した点を何度も繰り返し探索し,無駄な面がある。
探索のための処理時間を短縮するためには,現在までに
得られた解の情報を用いて何らかの方法で探索空間を絞
り込み,探索の範囲を限定することが望ましい。但し,
限定することによって,非常に品質の良い解を探索から
除外することは避けなければならない。
However, the search space of the flow shop scheduling problem is very large, and even if the stochastic sampling method is used, the search space is exhaustively searched and a good quality solution close to the optimal solution is obtained in a practical time. It is very difficult to seek within. In particular, in the stochastic sampling method, already searched points are repeatedly searched many times, which is useless.
In order to reduce the processing time for the search, it is desirable to narrow down the search space by some method using the information of the solutions obtained up to now, and to limit the search range. However,
By limiting, one must avoid excluding very good solutions from the search.

【0026】本発明は,上記に鑑みてなされたもので,
その目的とするところは,全仕事の総作業時間を最小に
するような大規模なフローショップスケジューリング問
題の最適化に際し,既に得られた解に対してそのクリテ
ィカルブロックから対応する枝刈りパターンを生成し,
それらをリストとして保持する。今後枝刈りパターンと
マッチするような解はそのパターンに対応する既に得ら
れた解よりも品質が良くなる可能性がないため,そのよ
うな解は探索の対象からはずす。このようにして,探索
空間の部分空間のうち,そこには現在得られている品質
以上の解は存在しないことがわかっており,これ以上探
索しても無駄であるような部分空間を除外していくこと
によって探索の範囲を限定し,それによって組合せ爆発
を起こすことなく高速に準最適解を求めることができる
フローショップスケジューリング装置を提供することに
ある。
The present invention has been made in view of the above,
The goal is to generate a corresponding pruning pattern from a critical block of an already obtained solution when optimizing a large-scale flow shop scheduling problem that minimizes the total work time of all tasks. And
Keep them as a list. Solutions that match the pruning pattern in the future are not likely to have better quality than the solutions already obtained that correspond to that pattern, so such solutions are excluded from the search. In this way, it is known that among the subspaces of the search space, there is no solution higher than the currently obtained quality. It is an object of the present invention to provide a flow shop scheduling apparatus which can limit the range of search by moving and thereby quickly obtain a sub-optimal solution without causing a combination explosion.

【0027】[0027]

【課題を解決するための手段】上記目的を達成するため
に,本発明のフローショップスケジューリング装置は,
次のようにして準最適解を求めることを要旨とする。
In order to achieve the above object, a flow shop scheduling apparatus according to the present invention comprises:
The gist is to obtain a sub-optimal solution as follows.

【0028】新たな解であるスケジュールが生成される
際,直前に得られた解と比較して改善がみられた場合に
そのスケジュールの最長のクリティカルブロックを計算
し,解のスケジュールを表現する仕事名の順列におい
て,このクリティカルブロックの内部に相当する仕事を
全てワイルドカード(どの仕事名にもマッチすることを
表す符号)で置き換えたものである枝刈りパターンを計
算し,これを枝刈りリストに格納する。
When a new solution, a schedule, is generated, if there is an improvement compared with the solution obtained immediately before, the longest critical block of the schedule is calculated, and the task of expressing the solution schedule is performed. In the permutation of names, a pruning pattern is calculated by replacing all the work inside the critical block with wildcards (a sign indicating that it matches any work name), and this is added to the pruning list. Store.

【0029】初期解,あるいは処理途中で得られた解で
あるスケジュールについて,クリティカルパスとクリテ
ィカルブロックを計算し,各クリティカルブロックの内
部に相当する仕事を外部に移動させることによって新た
な解の候補の集合である解の近傍を生成する。その際に
新たな解の候補が枝刈りリスト中のパターンとマッチす
るかどうかを調べ,マッチする場合は候補に含めないよ
うにする。また,これらそれぞれの解の候補に対して解
の良さである総作業時間を計算する。
A critical path and a critical block are calculated for a schedule that is an initial solution or a solution obtained in the middle of processing, and a job corresponding to the inside of each critical block is moved to the outside to thereby obtain a new solution candidate. Generate the neighborhood of a solution that is a set. At that time, it is checked whether the new solution candidate matches the pattern in the pruning list, and if it matches, it is excluded from the candidates. In addition, the total work time, which is a good solution, is calculated for each of these solution candidates.

【0030】新たな解の候補の集合である解の近傍より
それら候補の品質に応じて確率的に解を選択し,新たな
解を生成する。
A solution is probabilistically selected according to the quality of those solutions from the vicinity of the solution which is a set of new solution candidates, and a new solution is generated.

【0031】以上を所定の繰り返し回数だけ繰り返した
後,得られた最良解を最終結果とする。
After the above is repeated a predetermined number of times, the obtained best solution is used as the final result.

【0032】具体的には,本発明に係るフローショップ
スケジューリング装置は,複数の機械が定められた順序
で,定められた時間をかけて複数の仕事を処理する際,
処理される仕事の処理順序を工夫することによって,最
初の作業開始から最後の作業終了までの時間である総作
業時間をなるべく最小にし,その仕事の処理順序を決定
するフローショップスケジューリング問題を,高速に計
算機によって解くために,仕事の処理順序を表す順列で
ある仕事名の順列によって解を表現し,ランダムな初期
解を生成する初期解生成部と,処理途中で得られた解で
あるスケジュールに対し,その直前に得られたスケジュ
ールと比較して改善がみられた場合にそのスケジュール
の最長クリティカルブロックを計算し,スケジュールを
表現する仕事名の順列において,このクリティカルブロ
ックの内部に相当する仕事を全てワイルドカードで置き
換えたものを枝刈りパターンとして生成する枝刈りパタ
ーン生成部と,新たに生成された枝刈りパターンを,枝
刈りリストの長さが一定の値に達するまで次々と枝刈り
リストに格納し,リストが一定の長さに達した後は枝刈
りリスト中,最もアクセス頻度の低いパターンを調べ,
このパターンを新たな枝刈りパターンで置き換える,但
し,アクセス頻度最低のパターンが今まで得られた最良
のスケジュールである場合は特別扱いとし,置き換えは
行わず,さらに,処理途中で得られたスケジュールとし
て最良のスケジュールを用いる枝刈りパターン格納部
と,初期解,あるいは処理途中で得られた解であるスケ
ジュールについて,クリティカルパスとクリティカルブ
ロックを計算し,各クリティカルブロックの内部に相当
する仕事を外部に移動させることによって新たな解の候
補の集合である解の近傍を生成するとともに,その際に
新たな解の候補が枝刈りリスト中のパターンとマッチす
るかどうかを調べ,マッチする場合は候補に含めないよ
うにする枝刈りパターン判定部および近傍生成部と,新
たな解の候補の集合である解の近傍よりそれら候補の品
質に応じて確率的に解を選択し,新たな解を生成するス
ケジュール更新部と,解の良さである総作業時間を計算
するスケジュール評価部と,現在の解,現在までに探索
された最も優れた解,枝刈りリスト,問題,探索のパラ
メータなどを保存させるメモリと,あらかじめ定めた繰
り返し回数に達するまで上記各処理部の処理を繰り返す
制御部とを有することを特徴とする。
More specifically, the flow shop scheduling apparatus according to the present invention provides a method for processing a plurality of jobs in a predetermined order in a predetermined order over a predetermined time.
By devising the processing order of the jobs to be processed, the total work time, which is the time from the start of the first work to the end of the last work, is minimized as much as possible, and the flow shop scheduling problem that determines the processing order of the work is reduced by a high speed In order to solve by a computer, the solution is expressed by a permutation of the work name, which is a permutation indicating the processing order of the work, and an initial solution generation unit that generates a random initial solution, On the other hand, if there is an improvement compared to the schedule obtained immediately before that, the longest critical block of the schedule is calculated, and the work corresponding to the inside of this critical block in the permutation of the work names expressing the schedule is calculated. A pruning pattern generation unit for generating a pruning pattern in which all parts have been replaced with wildcards; Are stored in the pruning list one after another until the length of the pruning list reaches a certain value, and after the list reaches a certain length, the access frequency is the highest in the pruning list. Look for patterns with low
This pattern is replaced with a new pruning pattern. However, if the pattern with the lowest access frequency is the best schedule obtained so far, it is treated as special, no replacement is performed, and the schedule obtained during processing is Calculates critical paths and critical blocks for the pruning pattern storage unit that uses the best schedule and the schedule that is the initial solution or the solution obtained during processing, and moves the work inside each critical block to the outside Then, the neighborhood of the solution, which is a set of new solution candidates, is generated. At that time, it is checked whether the new solution candidate matches the pattern in the pruning list, and if it matches, it is included in the candidate. Pruning pattern decision unit and neighborhood generation unit to eliminate the error, and a set of new solution candidates A schedule updating unit that selects solutions probabilistically from the neighborhood of a solution according to the quality of those candidates and generates a new solution, a schedule evaluation unit that calculates the total work time that is a good solution, and a current solution Having a memory for storing the best solutions, pruning lists, problems, search parameters, etc. searched to date, and a control unit for repeating the processing of each of the above processing units until a predetermined number of repetitions is reached It is characterized by.

【0033】[0033]

【発明の実施の形態】本発明のフローショップスケジュ
ーリング装置では,解であるスケジュールは処理される
仕事の順列で表現される。手続きの説明に入る前に,ま
ず本発明のキーポイントである枝刈りパターンについて
説明する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS In a flow shop scheduling apparatus according to the present invention, a schedule as a solution is represented by a permutation of work to be processed. Before describing the procedure, a pruning pattern, which is a key point of the present invention, will be described first.

【0034】〔枝刈りパターン〕与えられたスケジュー
ルSの枝刈りパターン[S]とは,Sを表現する仕事の
順列に対し,Sの最長クリティカルブロックの内部の仕
事をワイルドカード(−*−)で置き換えたものであ
る。
[Pruning Pattern] The pruning pattern [S] of a given schedule S is a permutation of the work expressing S, and the work inside the longest critical block of S is a wild card (-*-). Is replaced by

【0035】図2に示した8仕事,6機械問題の例で
は,機械3上のブロック2が最長のクリティカルブロッ
クであるから,S=4,5,6,1,2,3,8,7に
対し,その枝刈りパターンを[S]=4,5,−*−,
−*−,2,3,8,7,または省略して[S]=4,
5,−*−,2,3,8,7と記す。ここで−*−はワ
イルドカードであるから,4,5,6,1,2,3,
8,7あるいは4,5,1,6,2,3,8,7という
二つの解が[S]にマッチする解となる。
In the example of the 8-work, 6-machine problem shown in FIG. 2, since block 2 on machine 3 is the longest critical block, S = 4, 5, 6, 1, 2, 3, 8, 7 , The pruning pattern is represented by [S] = 4,5, − * −,
− * −, 2, 3, 8, 7, or [S] = 4
Described as 5,-*-, 2,3,8,7. Here,-*-is a wild card, so 4,5,6,1,2,3,
Two solutions 8, 7, or 4, 5, 1, 6, 2, 3, 8, 7 are solutions that match [S].

【0036】従来の技術で説明した「クリティカルブロ
ックの基本性質」を用いれば,[S]というパターンに
マッチする解T(これをT∈[S]で表す)の総作業時
間Cmax(T)は決してSの総作業時間Cmax(S)より良
くならない。すなわち, T∈[S]⇒Cmax(T)≧Cmax(S) が成立する。
Using the “basic properties of the critical block” described in the prior art, the total working time Cmax (T) of the solution T (which is represented by T∈ [S]) that matches the pattern [S] is It will never be better than the total working time Cmax (S) of S. That is, T∈ [S]] Cmax (T) ≧ Cmax (S) holds.

【0037】したがって,本発明の基本的なアイディア
は,T∈[S]となるようなスケジュールを探索の対象
からはずすことによって探索空間のサイズを削減し,探
索の効率化を図ることである。本例では,ブロックのサ
イズが小さいため[S]にマッチするパターンは少ない
が,一般の枝刈りパターンでは多くの解がパターンにマ
ッチすることになり,探索空間の大幅な枝刈りが達成さ
れる。複数の枝刈りパターンをリストとして保持したも
のを「枝刈りリスト」と呼ぶ。
Therefore, the basic idea of the present invention is to reduce the size of the search space by excluding a schedule that satisfies T∈ [S] from the search target, thereby improving the search efficiency. In this example, since the size of the block is small, there are few patterns that match [S]. However, in a general pruning pattern, many solutions match the pattern, and a large pruning of the search space is achieved. . What holds a plurality of pruning patterns as a list is called a “pruning list”.

【0038】一般に二つの枝刈りパターン[S],
[T]について,[S]=4,5,−*−,2,3,
8,7,[T]=4,−*−,8,7であるとすると
き,容易にわかるように[S]にマッチするパターンは
必ず[T]にマッチする。これを[S]⊂[T]と表
す。このとき, [S]⊂[T]⇒Cmax(S)≧Cmax(T) が成り立つ。したがって最適化計算の過程で[S]が得
られ,それを枝刈りリストに格納した後,更に[T]が
得られた場合,[T]をリストに格納することによって
[S]は不要になる。
In general, two pruning patterns [S],
For [T], [S] = 4,5, − * −, 2,3
Assuming that 8,7, [T] = 4,-*-, 8,7, a pattern matching [S] always matches [T] as can be easily understood. This is represented as [S] ⊂ [T]. At this time, [S] ⊂ [T] ⇒Cmax (S) ≧ Cmax (T) holds. Therefore, [S] is obtained in the process of optimization calculation, and after storing it in the pruning list, and further obtaining [T], storing [T] in the list makes [S] unnecessary. Become.

【0039】装置内の処理の手順としては,まず初期解
0 がランダムな順列として生成される。以下に,手続
きProc-2として,全体の処理のアルゴリズムの一例を,
図3に示すフローチャートに従って説明する。本例では
探索手法として確率サンプリング法を用いているが,枝
刈りパターンと枝刈りリストの組み込みは他の探索手法
にも同様に実装可能である。
As a procedure of processing in the apparatus, first, an initial solution S 0 is generated as a random permutation. In the following, an example of the algorithm of the whole processing is described as the procedure Proc-2.
This will be described with reference to the flowchart shown in FIG. In this example, the probability sampling method is used as the search method, but the incorporation of the pruning pattern and the pruning list can be similarly implemented in other search methods.

【0040】≪手続きProc-2 枝刈りリストを用いたフ
ローショップスケジューリング問題の解法≫ 〔S1〕まず,フローショップスケジューリング問題お
よび終了条件などのパラメータを入力する。
{Procedure Proc-2 Solution of Flow Shop Scheduling Problem Using Pruning List} [S1] First, parameters such as a flow shop scheduling problem and an end condition are input.

【0041】〔S2〕ランダムに選択した初期解をS0
とし,S:=S* :=S0 ,n=1とする。また,枝刈
りリストをPLとし,その初期値を空のリストとする。
枝刈りリストの長さをLとし,その初期値を0とする。
枝刈りリストの長さの最大値をLmax とする。
[S2] The initial solution randomly selected is S 0
And S: = S * : = S 0 , n = 1. Further, the pruning list is set to PL, and its initial value is set to an empty list.
The length of the pruning list is L, and its initial value is 0.
Let Lmax be the maximum value of the length of the pruning list.

【0042】〔S3〕クリティカルブロック計算に基づ
きSの近傍NCP (S)を生成するため,まず従来の技
術で説明したクリティカルブロックに基づく近傍NC
(S)を計算し生成する。
[S3] In order to generate the neighborhood NC P (S) of S based on the critical block calculation, first, the neighborhood NC based on the critical block described in the prior art is used.
(S) is calculated and generated.

【0043】〔S4〕求めたNC(S)の要素のうち枝
刈りリストPL中の枝刈りパターンにマッチする解候補
を除外してNCP (S)を生成する。ここで,枝刈りリ
ストPL中の各枝刈りパターンに対し,解候補とマッチ
する頻度(これをアクセス頻度と呼ぶ)を計算し,更新
する。アクセス頻度の大きいパターンはそれだけ探索空
間の枝刈りに貢献していることを意味する。
[S4] NC P (S) is generated by excluding the solution candidates that match the pruning pattern in the pruning list PL from among the obtained elements of NC (S). Here, for each pruning pattern in the pruning list PL, the frequency of matching with the solution candidate (this is called an access frequency) is calculated and updated. A pattern with a high access frequency means that it contributes to the pruning of the search space.

【0044】〔S5〕従来の技術で説明した確率サンプ
リング法に基づきSの近傍NCP (S)より確率的に解
S′を選択する。S′は,もしCmax (S′)<Cmax
(S)ならば確率1で,そうでない場合にはPT :=ex
p(−(Cmax(S′)−Cmax(S))/T)に従って受理
された解である。
[S5] Based on the probability sampling method described in the background art, a solution S 'is selected stochastically from the NC P (S) in the vicinity of S. S 'is, if Cmax (S') <Cmax
If (S), the probability is 1, otherwise P T : = ex
This is the solution accepted according to p (-(Cmax (S ')-Cmax (S)) / T).

【0045】〔S6〕解S′に対し,Cmax (S′)<
Cmax (S)であればステップS7へ,そうでなければ
ステップS14へ進む。
[S6] For the solution S ', Cmax (S') <
If it is Cmax (S), the process proceeds to step S7; otherwise, the process proceeds to step S14.

【0046】〔S7〕解S′の最長クリティカルブロッ
クを計算し,それをもとに枝刈りパターン[S′]を計
算する。
[S7] The longest critical block of the solution S 'is calculated, and the pruning pattern [S'] is calculated based on it.

【0047】〔S8〕L<Lmax かどうかをチェック
し,L<Lmax ならばステップS9へ,そうでなければ
ステップS10へ進む。
[S8] It is checked whether or not L <Lmax. If L <Lmax, the flow proceeds to step S9. If not, the flow proceeds to step S10.

【0048】〔S9〕枝刈りパターン[S′]を枝刈り
リストPLに追加し,L:=L+1とする。なお,ここ
で新しく枝刈りリストに加わった[S′]に対し,枝刈
りリスト中のパターン[U]で[U]⊂[S′]となる
ものが存在する場合には,それら全てをリストから除
き,リストの長さLを調整する。その後,ステップS1
4へ進む。
[S9] The pruning pattern [S '] is added to the pruning list PL, and L: = L + 1. In addition, if there is a pattern [U] in the pruning list that satisfies [U] ′ [S '] for the newly added [S'] in the pruning list, all of them are listed. , And adjust the length L of the list. Then, step S1
Proceed to 4.

【0049】〔S10〕L<Lmax でない場合には,P
L中最もアクセス頻度の少ないパターンを求め,これを
[T]とする。
[S10] If L <Lmax is not satisfied, P
The least frequently accessed pattern in L is obtained, and this is set as [T].

【0050】〔S11〕ここでTが現在までに得られた
最良解S* と等しいかどうかチェックし,等しくない場
合,ステップS12へ進み,等しい場合,ステップS1
3へ進む。
[S11] Here, it is checked whether or not T is equal to the best solution S * obtained up to the present. If not equal, the process proceeds to step S12. If equal, the process proceeds to step S1.
Proceed to 3.

【0051】〔S12〕枝刈りリスト中の[T]を
[S′]で置き換える。なお,ここで新しく枝刈りリス
トに加わった[S′]に対し,枝刈りリスト中のパター
ン[U]で[U]⊂[S′]となるものが存在する場合
には,それら全てをリストから除き,リストの長さLを
調整する。その後,ステップS14へ進む。
[S12] [T] in the pruning list is replaced with [S ']. In addition, if there is a pattern [U] in the pruning list that satisfies [U] ′ [S '] for the newly added [S'] in the pruning list, all of them are listed. , And adjust the length L of the list. Thereafter, the process proceeds to step S14.

【0052】〔S13〕TがS* に等しい場合,S:=
* ,n:=n+1とし,ステップS15へ進む。
[S13] When T is equal to S * , S: =
S * , n: = n + 1, and the process proceeds to step S15.

【0053】〔S14〕S:=S′とし,n:=n+1
とする。また,S′をメモリ上の,現在までに得られた
最良解S* と比較し,S′<S* ならば,S* :=S′
とする。
[S14] S: = S ', n: = n + 1
And Also, S ′ is compared with the best solution S * obtained so far in the memory, and if S ′ <S * , S * : = S ′
And

【0054】〔S15〕終了条件であるn>Nかどうか
調べ,n>NならばステップS16へ,そうでなければ
ステップS3へ進む。
[S15] It is checked whether n> N, which is the end condition. If n> N, the process proceeds to step S16. If not, the process proceeds to step S3.

【0055】〔S16〕S* を出力して終了する。[S16] S * is output and the processing ends.

【0056】≪手続きProc-2 終了≫以上の手続きProc
-2の結果得られたS* が求める準最適解である。上記手
続きProc-2のステップS12において,LがLmax に等
しくなった時点で単に[S]をリストに追加するのを止
め,アクセス頻度最低のパターン[T]と入れ替えてい
る。これは,アクセス頻度の低いあまり活用されていな
いパターンをリストから除くことによって,ステップS
4におけるパターンマッチのオーバーヘッドを減らすた
めである。[T]のアクセス頻度が低いということは,
現在の探索点であるSやS′が探索空間内で既にTから
かなり離れてしまっていることを意味する。
{Procedure Proc-2 end} Procedural Proc
S * obtained as a result of -2 is a suboptimal solution to be obtained. In step S12 of the procedure Proc-2, when L becomes equal to Lmax, the addition of [S] to the list is simply stopped and replaced with the pattern [T] having the lowest access frequency. This is done by removing the infrequently used patterns with low access frequency from the list, and
This is to reduce the overhead of pattern matching in No. 4. The low access frequency of [T] means that
This means that the current search point, S or S ', is already far from T in the search space.

【0057】一方,TがS* と一致する場合,これは現
在の探索点が現在までに得られた最良解から遠く離れす
ぎたことを意味する。したがって,もう一度引き戻すた
めにS:=S* とする。これを「探索の最重点化」と呼
ぶ。
On the other hand, if T matches S * , this means that the current search point is too far away from the best solution obtained so far. Therefore, S: = S * to pull back again. This is called "the highest priority of search".

【0058】図1は,本発明の一実施形態の全体構成を
示すブロック図である。図1において, ・1は問題データ,およびアルゴリズムのパラメータを
入力する入力部, ・2はスケジュールの初期値を生成する初期解生成部, ・3は初期スケジュール,あるいは処理途中のスケジュ
ールSに対してSの近傍であるNCP (S)を生成する
近傍生成部, ・4はNCP (S)を生成する際にNCP (S)の要素
が枝刈りリスト中のパターンと一致するかどうかをチェ
ックする枝刈りパターン判定部, ・5はSの評価値である総作業時間Cmax (S)を計算
するスケジュール評価部, ・6は近傍生成部3で得られたSの近傍の要素であり,
新スケジュールの候補であるS′に対して受理確率
T :=exp(−(Cmax(S′)−Cmax(S))/T)を
計算し,S′を確率的に受理するスケジュール更新部, ・7はS′より枝刈りパターン[S′]を計算する枝刈
りパターン生成部, ・8は枝刈りパターン[S′]を枝刈りリストに格納す
る枝刈りパターン格納部, ・9は現在までに得られた最も品質の良い解S* を最終
結果として出力する出力部, ・10は与えられた問題データ,入力パラメータ,今ま
で得られた最も優れたスケジュール,処理途中や最終結
果のスケジュール,枝刈りリストなどを格納するメモ
リ, ・11はこれら各部の動作を制御する制御部,である。
FIG. 1 is a block diagram showing the overall configuration of an embodiment of the present invention. In FIG. 1, 1 is an input unit for inputting problem data and algorithm parameters. 2 is an initial solution generation unit for generating initial values of a schedule. 3 is an initial schedule or a schedule S in the middle of processing. neighborhood generator for generating an NC P (S) in the vicinity of S, whether-4 is consistent with the pattern of elements in pruning list of NC P (S) in generating the NC P (S) A pruning pattern determination unit to be checked; 5 is a schedule evaluation unit that calculates a total work time Cmax (S), which is an evaluation value of S; 6 is an element in the vicinity of S obtained by the neighborhood generation unit 3;
A schedule update unit that calculates an acceptance probability P T : = exp (− (Cmax (S ′) − Cmax (S)) / T) for S ′ which is a candidate for a new schedule, and accepts S ′ stochastically. 7 is a pruning pattern generation unit that calculates a pruning pattern [S '] from S'. 8 is a pruning pattern storage unit that stores the pruning pattern [S '] in a pruning list. An output unit that outputs the highest quality solution S * obtained up to now as the final result. 10 is the given problem data, input parameters, the best schedule obtained so far, the processing and the final result schedule , A memory for storing a pruning list, etc. 11 is a control unit for controlling the operation of these units.

【0059】[0059]

【実施例】次に実際に例を用いながら,本発明の概要を
説明する。クリティカルブロック近傍NC(S)の計
算,確率的サンプリング法等は従来の技術に属するもの
なので詳しい説明は避け,主に枝刈りパターン,枝刈り
リストの部分を説明する。例題として,図4に示すよう
な,50仕事10機械のフローショップスケジューリン
グ問題(ta041問題)を取り上げる。図4におい
て,各列は仕事欄に示された仕事の,それぞれの機械上
での処理時間を表す。機械は左から順に機械1,機械
2,…,機械10となっている。
Next, the outline of the present invention will be described with reference to practical examples. The calculation of the NC (S) near the critical block, the probabilistic sampling method, and the like belong to the prior art, so that detailed explanation is omitted, and the pruning pattern and the pruning list will be mainly described. As an example, a flow shop scheduling problem (ta041 problem) of 50 jobs and 10 machines as shown in FIG. 4 is taken up. In FIG. 4, each column represents the processing time of the work shown in the work column on each machine. The machines are a machine 1, a machine 2,..., A machine 10 in order from the left.

【0060】今,初期段階としてL=0とする。手続き
Proc-2のステップS5によって新たに生成されたスケジ
ュールS′を図5(A)に示す。図5(A)において一
番左の数字は,Cmax(S′)=3063を表し,残りの
部分は,S′を表現する仕事の順列を表す。
Now, it is assumed that L = 0 as an initial stage. procedure
FIG. 5A shows a schedule S ′ newly generated in step S5 of Proc-2. In FIG. 5A, the leftmost number indicates Cmax (S ') = 3063, and the remaining part indicates a permutation of work expressing S'.

【0061】また,S′のクリティカルパスを図5
(B)に示す。図5(B)において縦軸は機械,横軸は
仕事を示し,クリティカルパスの仕事が1で示されてい
る。なお,仕事は図5(A)の順に並んでいる。図5
(B)のようにクリティカルパスは複数存在する場合も
ある。
The critical path of S 'is shown in FIG.
It is shown in (B). In FIG. 5B, the vertical axis indicates the machine and the horizontal axis indicates the work, and the work of the critical path is indicated by 1. The jobs are arranged in the order shown in FIG. FIG.
As shown in (B), a plurality of critical paths may exist.

【0062】このとき,長さ最大のブロックは機械2上
のブロックであるから,S′に対応する枝刈りパターン
は,図5(C)のように「17,−*−,44,38」
となり,これが枝刈りリストに格納される。
At this time, since the block having the largest length is the block on the machine 2, the pruning pattern corresponding to S 'is "17,-*-, 44, 38" as shown in FIG.
And this is stored in the pruning list.

【0063】さて,何回か探索の繰り返しが進み,一定
時間後に枝刈りリストが図6(A)のようになったとす
る。手続きProc-2のステップS4において,NC(S)
よりNCP (S)を生成する際,図6(A)の5つの枝
刈りパターンのうちどれか一つにマッチするパターンは
NCP (S)に含まれない。
Now, it is assumed that the repetition of the search progresses several times and the pruning list becomes as shown in FIG. In step S4 of procedure Proc-2, NC (S)
When generating NC P (S), a pattern matching any one of the five pruning patterns in FIG. 6A is not included in NC P (S).

【0064】例えばSが図6(B)に示すスケジュール
であったとする。この場合,S上左から8番目の仕事2
1を左から2番目に移動させて生成されるスケジュール
は,図6(A)のリスト中のパターン2にマッチするた
め,たとえNC(S)に候補として含まれていたとして
もNCP (S)からは除外される。また,S上右から4
番目の仕事44を右から2番目に移動させて生成される
スケジュール,S上右から7番目の仕事47を右から2
番目に移動させて生成されるスケジュールなどもそれぞ
れパターン1,パターン3にマッチし,同様にNC
P (S)から除外される。一方で,S上右から5番目の
仕事25をS上右から4番目に移動させて生成されるス
ケジュールがNC(S)に含まれていたとすると,これ
はどのパターンにもマッチしない。
For example, assume that S is the schedule shown in FIG. In this case, the 8th work 2 from the left on S
Since the schedule generated by moving No. 1 from the left to the second matches the pattern 2 in the list in FIG. 6A, even if it is included as a candidate in NC (S), the schedule generated by NC P (S ) Are excluded. In addition, 4
The schedule generated by moving the second job 44 from the right to the second, and the seventh job 47 from the right on S
The schedules generated by moving to the second position also match pattern 1 and pattern 3, respectively.
Excluded from P (S). On the other hand, if the schedule generated by moving the fifth job 25 from the upper right on S to the fourth from right on S is included in NC (S), this does not match any pattern.

【0065】ここで,手続きProc-2のステップS5によ
って新たに生成されたスケジュールS′が,図6(B)
のS上右から5番目の仕事25をS上右から4番目に移
動させて生成されるスケジュールであったとする。S′
を表す仕事の順列を図7(A)に,対応する枝刈りパタ
ーンを図7(B)に示す。
Here, the schedule S ′ newly generated in step S5 of the procedure Proc-2 is shown in FIG.
It is assumed that the schedule is generated by moving the fifth work 25 from the upper right of S to the fourth from the upper right of S. S '
Is shown in FIG. 7A, and the corresponding pruning pattern is shown in FIG. 7B.

【0066】このとき,図6(A)に示す枝刈りリスト
に既に登録されているパターンのうちパターン1からパ
ターン4までの4つのパターンは,図7(B)のパター
ン17,−*−,38に含まれる。そこで手続きProc-2
のステップS9等で説明したように,パターン1−4は
リストから削除され,新たな枝刈りリストは,図7
(C)に示すようになる。
At this time, among the patterns already registered in the pruning list shown in FIG. 6A, the four patterns from pattern 1 to pattern 4 are the patterns 17,-*-, 38. So the procedure Proc-2
As described in step S9 and the like, the pattern 1-4 is deleted from the list, and the new pruned list is
As shown in FIG.

【0067】探索が十分進み,手続きProc-2のステップ
S5によって新たに生成されたスケジュールS′が図8
(A)であり,対応する枝刈りパターンが図8(B)と
なったとする。また,このときの枝刈りリストが図8
(C)のようになったとし,枝刈りリストのリスト長の
最大値Lmax =10とする。図8(C)において左から
2列目の数字はそのパターンの対応するスケジュールの
(すなわちパターン[S]に対するSの)総作業時間C
max を表す。
The search has proceeded sufficiently, and the schedule S 'newly generated in step S5 of the procedure Proc-2 is shown in FIG.
8A and the corresponding pruning pattern is shown in FIG. The pruning list at this time is shown in FIG.
Assuming that (C) is reached, the maximum value of the list length of the pruning list is set to Lmax = 10. In FIG. 8C, the number in the second column from the left is the total work time C of the schedule corresponding to the pattern (ie, S for pattern [S]).
Represents max.

【0068】このとき,もし図8(C)のパターン中,
アクセス頻度最低のパターンがパターン6であるとする
と,手続きProc-2のステップS12に従い,パターン6
は図8(B)の枝刈りパターンで置き換わる。しかし,
もしアクセス頻度最低のパターンがパターン2である場
合には,パターン2がこれまで探索した中で最良の解S
* に対応するパターン[S* ]であるため,パターンの
置き換えは行われずに現在のスケジュールSが図9
(A)に示されるS* によって置き換えられる。
At this time, if the pattern shown in FIG.
Assuming that the pattern with the lowest access frequency is pattern 6, pattern 6 is performed according to step S12 of procedure Proc-2.
Is replaced by the pruning pattern of FIG. However,
If the pattern with the lowest access frequency is pattern 2, pattern 2 is the best solution S
Since the pattern is [S * ] corresponding to * , the pattern is not replaced and the current schedule S is
It is replaced by S * shown in (A).

【0069】以上の処理の繰り返しによって探索は進
み,手続きProc-2のステップS15で終了条件に該当し
た時点で,それまでに得られた最良解S* を出力し,終
了する。N=700として実験した場合に,最終的に得
られたスケジュールS* を図9(B)に,参考のためそ
の時点での枝刈りリストを図9(C)に示す。
The search proceeds by the repetition of the above processing, and when the termination condition is satisfied in step S15 of the procedure Proc-2, the best solution S * obtained so far is output and the process is terminated. FIG. 9B shows the schedule S * finally obtained when the experiment was performed with N = 700, and FIG. 9C shows the pruning list at that time for reference.

【0070】図10に,例題でも用いたta041問題を
用いて,N=700とした場合の,枝刈りパターンおよ
び枝刈りリストを用いないときと用いたときとで,各々
30回ずつ実験した結果の平均を示す。枝刈りパターン
および枝刈りリストを用いた方が,用いない場合より,
得られるスケジュールの品質が格段に向上することがわ
かる。
FIG. 10 shows the results of 30 experiments, each using the ta041 problem used in the example, with N = 700, with and without pruning patterns and pruning lists. The average of is shown. Using pruning patterns and pruning lists is more efficient than not using pruning patterns and lists.
It can be seen that the quality of the obtained schedule is significantly improved.

【0071】[0071]

【発明の効果】以上説明したように,本発明によれば,
フローショップスケジューリング装置において,枝刈り
パターンおよび枝刈りリストの導入によって,これまで
に得られた解より高品質の解を除外することなく,探索
空間のサイズを大幅に削減することができる。
As described above, according to the present invention,
By introducing a pruning pattern and a pruning list in the flow shop scheduling apparatus, the size of the search space can be significantly reduced without excluding solutions of higher quality than those obtained so far.

【0072】したがって,上記フローショップスケジュ
ーリング装置の構築によって,大規模な問題の良質な解
を高速に求めることが可能になる。
Therefore, by constructing the above-mentioned flow shop scheduling apparatus, it becomes possible to obtain a high-quality solution to a large-scale problem at a high speed.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の一実施形態の全体構成を示すブロック
図である。
FIG. 1 is a block diagram showing an overall configuration of an embodiment of the present invention.

【図2】8仕事6機械問題のクリティカルパスの例を示
す図である。
FIG. 2 is a diagram illustrating an example of a critical path of an eight-work-six machine problem.

【図3】全体の処理のフローチャートである。FIG. 3 is a flowchart of an entire process.

【図4】具体例として用いた50仕事10機械問題の例
を示す図である。
FIG. 4 is a diagram showing an example of 50 tasks and 10 mechanical problems used as a specific example.

【図5】探索初期段階のスケジュール,そのスケジュー
ルのクリティカルパス,そのスケジュールの枝刈りパタ
ーンを示す図である。
FIG. 5 is a diagram showing a schedule in an initial stage of a search, a critical path of the schedule, and a pruning pattern of the schedule.

【図6】探索が少し進んだ段階のスケジュール,そのス
ケジュール生成時における枝刈りリストを示す図であ
る。
FIG. 6 is a diagram showing a schedule at a stage where the search is slightly advanced, and a pruning list when the schedule is generated.

【図7】図6(B)のスケジュールから生成された新た
なスケジュール,そのスケジュールの枝刈りパターン,
そのスケジュール生成時における枝刈りリストを示す図
である。
FIG. 7 shows a new schedule generated from the schedule of FIG. 6B, a pruning pattern of the new schedule,
It is a figure showing the pruning list at the time of the schedule generation.

【図8】探索が十分進んだ段階のスケジュール,そのス
ケジュールの枝刈りパターン,そのスケジュール生成時
の枝刈りパターンを示す図である。
FIG. 8 is a diagram showing a schedule at a stage where search has been sufficiently advanced, a pruning pattern of the schedule, and a pruning pattern at the time of generating the schedule.

【図9】図8(A)のスケジュール生成時の時点で得ら
れたそれまでの最良のスケジュール,最終的に得られた
スケジュール,最終的に得られた枝刈りリストを示す図
である。
FIG. 9 is a diagram showing a best schedule up to that time obtained at the time of generation of the schedule in FIG. 8A, a finally obtained schedule, and a finally obtained pruning list.

【図10】本発明の効果を説明するための実験結果の例
を示す図である。
FIG. 10 is a diagram showing an example of an experimental result for explaining the effect of the present invention.

【符号の説明】[Explanation of symbols]

1 入力部 2 初期解生成部 3 近傍生成部 4 枝刈りパターン判定部 5 スケジュール評価部 6 スケジュール更新部 7 枝刈りパターン生成部 8 枝刈りパターン格納部 9 出力部 10 メモリ 11 制御部 DESCRIPTION OF SYMBOLS 1 Input part 2 Initial solution generation part 3 Neighborhood generation part 4 Pruning pattern determination part 5 Schedule evaluation part 6 Schedule update part 7 Pruning pattern generation part 8 Pruning pattern storage part 9 Output part 10 Memory 11 Control part

Claims (8)

【特許請求の範囲】[Claims] 【請求項1】 複数の機械が定められた順序で,定めら
れた時間をかけて複数の仕事を処理する際,処理される
仕事の処理順序を工夫することによって,最初の作業開
始から最後の作業終了までの時間である総作業時間をな
るべく最小にし,その仕事の処理順序を決定するフロー
ショップスケジューリング装置において,新たな解であ
るスケジュールが生成される際,直前に得られた解と比
較して改善がみられた場合にそのスケジュールの最長の
クリティカルブロックを計算し,解のスケジュールを表
現する仕事名の順列において,このクリティカルブロッ
クの内部に相当する仕事を全てワイルドカードで置き換
えたものである枝刈りパターンを生成する手段と,初期
解または処理途中で得られた解であるスケジュールにつ
いて,クリティカルパスとクリティカルブロックを計算
し,各クリティカルブロックの内部に相当する仕事を外
部に移動させることによって新たな解の候補の集合であ
る解の近傍を生成する際に,新たな解の候補が,前記生
成した枝刈りパターンとマッチするかどうかを調べ,マ
ッチする枝刈りパターンがある場合には候補に含めない
ようにして探索の範囲を限定する手段とを備えることを
特徴とするフローショップスケジューリング装置。
When a plurality of machines process a plurality of jobs in a predetermined order over a predetermined time, the processing order of the jobs to be processed is devised to improve the processing order from the first work start to the last work. In the flow shop scheduling device that minimizes the total work time, which is the time until the end of work, and determines the processing order of the work, when a new schedule, which is a new solution, is generated, it is compared with the solution obtained immediately before. When the improvement is seen, the longest critical block of the schedule is calculated, and in the permutation of the work name expressing the solution schedule, all the work corresponding to the inside of the critical block is replaced with a wild card. Critical for the means of generating pruning patterns and the schedule that is the initial solution or the solution obtained during processing When a path and a critical block are calculated, and the work corresponding to the inside of each critical block is moved to the outside to generate a neighborhood of a solution that is a set of new solution candidates, the new solution candidate A flow shop scheduling device comprising: means for checking whether or not a generated pruning pattern matches, and limiting a search range by not including a matching pruning pattern when a pruning pattern exists.
【請求項2】 前記新たに生成された枝刈りパターン
を,枝刈りリストの長さが一定の値に達するまで次々と
枝刈りリストに格納し,リストが一定の長さに達した後
は枝刈りリスト中,最もアクセス頻度の低い枝刈りパタ
ーンを調べ,アクセス頻度最低の枝刈りパターンが今ま
で得られた最良のスケジュールである場合を除き,アク
セス頻度最低の枝刈りパターンを新たな枝刈りパターン
で置き換える手段を備えることを特徴とする請求項1記
載のフローショップスケジューリング装置。
2. The newly generated pruning pattern is sequentially stored in the pruning list until the length of the pruning list reaches a certain value. Examine the pruning pattern with the lowest access frequency in the pruning list. Unless the pruning pattern with the lowest access frequency is the best schedule obtained so far, the pruning pattern with the lowest access frequency is replaced with the new pruning pattern. 2. The flow shop scheduling apparatus according to claim 1, further comprising: means for replacing the flow shop.
【請求項3】 複数の機械が定められた順序で,定めら
れた時間をかけて複数の仕事を処理する際,処理される
仕事の処理順序を工夫することによって,最初の作業開
始から最後の作業終了までの時間である総作業時間をな
るべく最小にし,その仕事の処理順序を決定するフロー
ショップスケジューリング問題を計算機によって解くフ
ローショップスケジューリング方法において,新たな解
であるスケジュールが生成される際,直前に得られた解
と比較して改善がみられた場合にそのスケジュールの最
長のクリティカルブロックを計算し,解のスケジュール
を表現する仕事名の順列において,このクリティカルブ
ロックの内部に相当する仕事を全てワイルドカードで置
き換えたものである枝刈りパターンを生成する過程と,
初期解または処理途中で得られた解であるスケジュール
について,クリティカルパスとクリティカルブロックを
計算し,各クリティカルブロックの内部に相当する仕事
を外部に移動させることによって新たな解の候補の集合
である解の近傍を生成する際に,新たな解の候補が,前
記生成した枝刈りパターンとマッチするかどうかを調
べ,マッチする枝刈りパターンがある場合には候補に含
めないようにして探索の範囲を限定する過程とを有する
ことを特徴とするフローショップスケジューリング方
法。
3. When a plurality of machines process a plurality of jobs in a predetermined order over a predetermined time, the processing order of the jobs to be processed is devised to improve the processing order from the first work start to the last work. In a flow shop scheduling method in which the total work time, which is the time until the end of work, is minimized and the flow shop scheduling problem that determines the processing order of the work is solved by a computer, when a new solution, a schedule, is generated. If there is an improvement compared to the solution obtained in (1), the longest critical block of the schedule is calculated, and in the permutation of the task names expressing the solution schedule, all the work corresponding to the inside of this critical block is calculated. Generating a pruning pattern that has been replaced with a wildcard;
For a schedule that is an initial solution or a solution obtained during processing, a critical path and a critical block are calculated, and the work corresponding to the inside of each critical block is moved to the outside, so that the solution is a set of new solution candidates. When generating the neighborhood of, it is checked whether the new solution candidate matches the generated pruning pattern, and if there is a matching pruning pattern, the search range is set so as not to be included in the candidate. And limiting the flow shop scheduling method.
【請求項4】 前記新たに生成された枝刈りパターン
を,枝刈りリストの長さが一定の値に達するまで次々と
枝刈りリストに格納し,リストが一定の長さに達した後
は枝刈りリスト中,最もアクセス頻度の低い枝刈りパタ
ーンを調べ,アクセス頻度最低の枝刈りパターンが今ま
で得られた最良のスケジュールである場合を除き,アク
セス頻度最低の枝刈りパターンを新たな枝刈りパターン
で置き換える過程を有することを特徴とする請求項3記
載のフローショップスケジューリング方法。
4. The newly generated pruning pattern is successively stored in the pruning list until the length of the pruning list reaches a certain value, and after the list reaches a certain length, the pruning pattern is stored. Examine the pruning pattern with the lowest access frequency in the pruning list. Unless the pruning pattern with the lowest access frequency is the best schedule obtained so far, the pruning pattern with the lowest access frequency is replaced with the new pruning pattern. 4. The flow shop scheduling method according to claim 3, further comprising the step of:
【請求項5】 複数の機械が定められた順序で,定めら
れた時間をかけて複数の仕事を処理する際,処理される
仕事の処理順序を工夫することによって,最初の作業開
始から最後の作業終了までの時間である総作業時間をな
るべく最小にし,その仕事の処理順序を決定するフロー
ショップスケジューリング問題を計算機によって解くた
めのプログラムを記録した記録媒体であって,新たな解
であるスケジュールが生成される際,直前に得られた解
と比較して改善がみられた場合にそのスケジュールの最
長のクリティカルブロックを計算し,解のスケジュール
を表現する仕事名の順列において,このクリティカルブ
ロックの内部に相当する仕事を全てワイルドカードで置
き換えたものである枝刈りパターンを生成する処理と,
初期解または処理途中で得られた解であるスケジュール
について,クリティカルパスとクリティカルブロックを
計算し,各クリティカルブロックの内部に相当する仕事
を外部に移動させることによって新たな解の候補の集合
である解の近傍を生成する際に,新たな解の候補が,前
記生成した枝刈りパターンとマッチするかどうかを調
べ,マッチする枝刈りパターンがある場合には候補に含
めないようにして探索の範囲を限定する処理とを,計算
機に実行させるプログラムを記録したことを特徴とする
フローショップスケジューリング問題を解くプログラム
記録媒体。
5. When a plurality of machines process a plurality of jobs in a predetermined order over a predetermined time, the processing order of the jobs to be processed is devised so that the last operation from the start of the first operation to the last operation is performed. A recording medium for recording a program for solving a flow shop scheduling problem by a computer, which minimizes a total work time, which is a time until the end of work, and determines a processing order of the work. When it is generated, if there is an improvement compared to the solution obtained immediately before, the longest critical block of the schedule is calculated, and the inside of this critical block in the permutation of task names expressing the solution schedule A process of generating a pruning pattern in which all tasks corresponding to are replaced with wildcards,
For a schedule that is an initial solution or a solution obtained during processing, a critical path and a critical block are calculated, and the work corresponding to the inside of each critical block is moved to the outside, so that the solution is a set of new solution candidates. When generating the neighborhood of, it is checked whether the new solution candidate matches the generated pruning pattern, and if there is a matching pruning pattern, the search range is set so as not to be included in the candidate. A program recording medium for solving a flow shop scheduling problem, characterized by recording a program for causing a computer to execute the limiting process.
【請求項6】 前記プログラム中に,前記新たに生成さ
れた枝刈りパターンを,枝刈りリストの長さが一定の値
に達するまで次々と枝刈りリストに格納し,リストが一
定の長さに達した後は枝刈りリスト中,最もアクセス頻
度の低い枝刈りパターンを調べ,アクセス頻度最低の枝
刈りパターンが今まで得られた最良のスケジュールであ
る場合を除き,アクセス頻度最低の枝刈りパターンを新
たな枝刈りパターンで置き換える処理を,計算機に実行
させるプログラムを含むことを特徴とする請求項5記載
のフローショップスケジューリング問題を解くプログラ
ム記録媒体。
6. The program stores the newly generated pruning pattern in the pruning list one after another until the length of the pruning list reaches a certain value. After that, the pruning pattern with the lowest access frequency is examined in the pruning list, and the pruning pattern with the lowest access frequency is selected unless the pruning pattern with the lowest access frequency is the best schedule obtained so far. 6. The program recording medium for solving a flow shop scheduling problem according to claim 5, further comprising a program for causing a computer to execute a process of replacing with a new pruning pattern.
【請求項7】 複数の機械が定められた順序で,定めら
れた時間をかけて複数の仕事を処理する際,処理される
仕事の処理順序を工夫することによって,最初の作業開
始から最後の作業終了までの時間である総作業時間をな
るべく最小にし,その仕事の処理順序を決定するフロー
ショップスケジューリング装置において,問題データお
よびアルゴリズムのパラメータを入力する入力部と,ス
ケジュールの初期値を生成する初期解生成部と,初期ス
ケジュールまたは処理途中のスケジュールに対して,そ
の近傍である解候補の新スケジュールを生成する近傍生
成部と,前記解候補の新スケジュールを生成する際に,
解候補が枝刈りリスト中のパターンとマッチするかどう
かをチェックし,マッチする場合には前記近傍生成部に
対してその解候補を棄却させる枝刈りパターン判定部
と,スケジュールの評価値である総作業時間を計算する
スケジュール評価部と,前記近傍生成部で得られた解候
補に対して受理確率を計算し,その新スケジュールを確
率的に受理するスケジュール更新部と,前記解候補の新
スケジュールからそのクリティカルブロックの内部に相
当する仕事を全てワイルドカードで置き換えた枝刈りパ
ターン生成する枝刈りパターン生成部と,生成された枝
刈りパターンを枝刈りリストとして格納する枝刈りパタ
ーン格納部と,現在までに得られた最も品質の良い解を
最終結果として出力する出力部と,前記各部の動作を制
御する制御部とを備えることを特徴とするフローショッ
プスケジューリング装置。
7. When a plurality of machines process a plurality of jobs in a predetermined order over a predetermined time, the processing order of the jobs to be processed is devised to improve the processing order from the first work start to the last work. An input unit for inputting problem data and algorithm parameters, and an initial unit for generating an initial value of a schedule in a flow shop scheduling device for minimizing a total operation time, which is a time until the end of the operation, and determining a processing order of the operation. A solution generation unit, a neighborhood generation unit that generates a new schedule of solution candidates that are in the vicinity of the initial schedule or a schedule in the process of processing,
It checks whether the solution candidate matches the pattern in the pruning list, and if it matches, the pruning pattern determination unit that causes the neighborhood generation unit to reject the solution candidate, and the total value that is the evaluation value of the schedule. A schedule evaluator for calculating work time, a schedule updater for calculating an acceptance probability for the solution candidate obtained by the neighborhood generator and probabilistically accepting the new schedule; A pruning pattern generation unit that generates a pruning pattern in which all the work corresponding to the inside of the critical block is replaced by wildcards; a pruning pattern storage unit that stores the generated pruning pattern as a pruning list; An output unit that outputs the highest quality solution obtained as a final result, and a control unit that controls the operation of each unit. Flow shop scheduling apparatus according to claim Rukoto.
【請求項8】 複数の機械が定められた順序で,定めら
れた時間をかけて複数の仕事を処理する際,処理される
仕事の処理順序を工夫することによって,最初の作業開
始から最後の作業終了までの時間である総作業時間をな
るべく最小にし,その仕事の処理順序を決定するフロー
ショップスケジューリング問題を計算機によって解くフ
ローショップスケジューリング方法において,問題デー
タおよびアルゴリズムのパラメータを入力する第1のス
テップと,初期スケジュールを生成する第2のステップ
と,初期スケジュールまたは処理途中のスケジュールに
対して,その近傍である解候補の新スケジュールを生成
し,その解候補が枝刈りリスト中のパターンとマッチす
るかどうかをチェックし,マッチする場合にはその解候
補をスケジュールから除く第3のステップと,スケジュ
ールの評価値である総作業時間を計算する第4のステッ
プと,スケジュールの評価値に基づく受理確率によって
解候補の新スケジュールを確率的に受理する第5のステ
ップと,受理した解候補の新スケジュールからそのクリ
ティカルブロックの内部に相当する仕事を全てワイルド
カードで置き換えた枝刈りパターン生成する第6のステ
ップと,枝刈りパターンを枝刈りリストとして格納する
第7のステップと,前記第3から第7までのステップを
所定の終了条件が満足するまで繰り返し,所定の終了条
件が満足したとき,それまでに得られた最も品質の良い
解を最終結果として出力する第8のステップとを有する
ことを特徴とするフローショップスケジューリング方
法。
8. When a plurality of machines process a plurality of jobs in a predetermined order over a predetermined time, the processing order of the jobs to be processed is devised so that the last operation from the start of the first operation to the last operation is performed. A first step of inputting problem data and algorithm parameters in a flow shop scheduling method in which a computer solves a flow shop scheduling problem that determines the processing order of the work by minimizing the total work time that is the time until the work is completed. And a second step of generating an initial schedule, and generating a new schedule of solution candidates in the vicinity of the initial schedule or the schedule in the process of processing, and the solution candidate matches a pattern in the pruning list. Check whether the solution candidate is a schedule if it matches And a fourth step of calculating the total work time, which is an evaluation value of the schedule, and a fifth step of probabilistically accepting a new schedule of solution candidates based on the acceptance probability based on the evaluation value of the schedule And a sixth step of generating a pruning pattern in which all tasks corresponding to the inside of the critical block are replaced with wildcards from the new schedule of the received solution candidates, and a seventh step of storing the pruning pattern as a pruning list Steps and the third to seventh steps are repeated until a predetermined end condition is satisfied. When the predetermined end condition is satisfied, the highest quality solution obtained up to that time is output as a final result. 8. A flow shop scheduling method, comprising:
JP8100899A 1999-03-25 1999-03-25 Flow shop scheduling device, flow shop scheduling method, and storage media for program solving flow shop scheduling Pending JP2000271839A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8100899A JP2000271839A (en) 1999-03-25 1999-03-25 Flow shop scheduling device, flow shop scheduling method, and storage media for program solving flow shop scheduling

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8100899A JP2000271839A (en) 1999-03-25 1999-03-25 Flow shop scheduling device, flow shop scheduling method, and storage media for program solving flow shop scheduling

Publications (1)

Publication Number Publication Date
JP2000271839A true JP2000271839A (en) 2000-10-03

Family

ID=13734495

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8100899A Pending JP2000271839A (en) 1999-03-25 1999-03-25 Flow shop scheduling device, flow shop scheduling method, and storage media for program solving flow shop scheduling

Country Status (1)

Country Link
JP (1) JP2000271839A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104808636A (en) * 2015-04-28 2015-07-29 广东工业大学 Flexible flow shop energy consumption optimization scheduling method
US10088828B2 (en) 2014-10-24 2018-10-02 Okuma Corporation Controlling load ratio induced shut-down conditions in numerical control devices
CN108873850A (en) * 2018-09-05 2018-11-23 昆明理工大学 A kind of Optimization Scheduling of automation of machinery manufacture production process
CN110825056A (en) * 2019-11-26 2020-02-21 北京工业大学 Hybrid flow shop scheduling method with variable parameter continuous processing and intermittent processing
CN111382915A (en) * 2018-12-27 2020-07-07 沈阳高精数控智能技术股份有限公司 Flexible job shop scheduling method for co-fusion AGV

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10088828B2 (en) 2014-10-24 2018-10-02 Okuma Corporation Controlling load ratio induced shut-down conditions in numerical control devices
CN104808636A (en) * 2015-04-28 2015-07-29 广东工业大学 Flexible flow shop energy consumption optimization scheduling method
CN104808636B (en) * 2015-04-28 2017-09-26 广东工业大学 Flexible Flow Shop energy optimization dispatching method
CN108873850A (en) * 2018-09-05 2018-11-23 昆明理工大学 A kind of Optimization Scheduling of automation of machinery manufacture production process
CN111382915A (en) * 2018-12-27 2020-07-07 沈阳高精数控智能技术股份有限公司 Flexible job shop scheduling method for co-fusion AGV
CN111382915B (en) * 2018-12-27 2024-05-14 沈阳高精数控智能技术股份有限公司 Flexible job shop scheduling method for co-fusion AGVs
CN110825056A (en) * 2019-11-26 2020-02-21 北京工业大学 Hybrid flow shop scheduling method with variable parameter continuous processing and intermittent processing
WO2021103891A1 (en) * 2019-11-26 2021-06-03 北京工业大学 Method for scheduling hybrid flow shop comprising variable parameter continuous processing and intermittent processing
GB2610032A (en) * 2019-11-26 2023-02-22 Univ Beijing Technology Method for scheduling hybrid flow shop comprising variable parameter continuous processing and intermittent processing

Similar Documents

Publication Publication Date Title
Yamada et al. Genetic algorithms for job-shop scheduling problems
Fink et al. Solving the continuous flow-shop scheduling problem by metaheuristics
Taillard Parallel iterative search methods for vehicle routing problems
Goncharov et al. Genetic algorithm for the resource-constrained project scheduling problem
Glass et al. A comparison of local search methods for flow shop scheduling
Ponnambalam et al. Constructive and improvement flow shop scheduling heuristics: an extensive evaluation
JP2000271839A (en) Flow shop scheduling device, flow shop scheduling method, and storage media for program solving flow shop scheduling
Campos et al. Adaptive memory programming for matrix bandwidth minimization
JP3358780B2 (en) Optimal solution search device
Li et al. Exact algorithms for a joint order acceptance and scheduling problem
JP2004194343A (en) System and method for path compression optimization in pipeline type hardware bitmap type multi-bit trie algorithm network search engine
CN112364526B (en) Fuzzy batch scheduling method and system based on drosophila algorithm
JPH09282359A (en) Job-shop scheduling device
CN116739269A (en) Scheduling method, device, computer equipment and storage medium based on scheduling optimization model
Janiak et al. Genetic algorithm for the permutation flow-shopscheduling problem with linear models of operations
US5568381A (en) Combinatorial optimization system that extracts an undersirable relationship from a present solution
JPH11195066A (en) Flow shop scheduling method, its device and recording medium storing flow shop scheduling program
Zhao et al. An improvement of genetic algorithms by search space reductions in solving large-scale flowshop problems
CN112528220A (en) Information processing apparatus, storage medium, and information processing method
Amghar et al. A general variable neighborhood search heuristic for the traveling salesman problem with time windows under completion time minimization
JP2000268018A (en) Device and method for multipurpose optimization and storage medium storing multipurpose optimization program
Fu et al. A new approach for solving single machine total weighted tardiness (SMTWT) problem
CN111582486A (en) Arithmetic processing apparatus, storage medium, and arithmetic processing method
Dang et al. Adaptive large neighborhood search for scheduling of mobile robots
JPH09150311A (en) Combination planning device and combination planning method