Académique Documents
Professionnel Documents
Culture Documents
BENCHMARKS
FOR
BASIC SCHEDULING PROBLEMS
E. TAILLARD
ORWP89/21 Dec. 1989
Abstract
In this paper, we propose 260 scheduling problems whose size is greater than that of the rare
examples published. Such sizes correspond to real dimensions of industrial problems.
The types of problems that we propose are : the permutation flow shop, the job shop and the open
shop scheduling problems.
We restrict us to basic problems : the processing times are fixed, there are neither set-up times nor
due dates nor release dates, etc. Then, the objective is the minimization of the makespan.
Introduction
The types of problems discussed in this paper (permutation flow shop, job shop and
open shop scheduling problems) have been widely studied in the literature using exact
or heuristic methods, but a common comparison base is missing. We hope that this
paper will fill a gap in this domain.
The three-field nomenclature described in Lawler et al. [5] names these problems
F| |Cmax, J| |Cmax and O| |Cmax respectively. They certainly belong to the most studied
ones among the scheduling problems. Let us describe them briefly.
There are n jobs that have to be performed on m unrelated machines ; in our case,
every job consists of m non preemptible operations. Every operation of a job uses a
different machine during a given time and may wait before being processed.
For the permutation flow shop problem, the operations of every job must be
processed on machines 1 m in this order. Moreover, the processing order of the jobs
on the machines is the same for every machine. The problem consists in finding a
permutation of the n jobs that minimizes the makespan.
In the case of the job shop problem, any processing order of the jobs on the
machines is allowed. For every job, the operations must be processed in a given order
on the machines, but this order may differ according to the jobs.
For the open shop problem, every operation is assigned to a given machine but the
order of the operations of every job is totally free.
The aim of this paper is to present unsolved problems whose size corresponds to the
one of industrial problems. These problems must be easy to generate.
The problems
The problems we propose are randomly generated with a good random number
generator proposed in Bratley [1]. We recall its implementation so that this paper is self
contained.
A problem will be entirely defined by the initial value of the seed of the random
generator and by the way of generating it.
For every type of problem, we give a simple manner of computing a lower bound of
the makespan ; in particular, this permits to verify the generation of the problem.
For every size of problem, we give the total number of instances we have generated
(summary resolution), the maximum number of iteration of taboo search that were done
(long resolution) and the proportion of problems that were solved up to the lower
bound, that is to say optimally. For every type and every size of problem, we give 10
instances.
For each instance, we give the initial value of the random generator seed, the best
value of the makespan we have found (i. e. an upper bound of the optimal makespan)
and a lower bound of all the makespans.
1) Modification of
the seed :
k := Xi/b
Xi+1 := a(Xi mod b) - kc
If Xi+1 < 0 then let Xi+1 := Xi+1 + m
2) New value of
the seed :
Current value of
the generator :
Xi+1
Xi+1/m
Below, we shall denote by U(0,1) the pseudorandom number that this generator provides. We have 0 < U(0,1) < 1 for every generated number.
We shall denote by U[a,b] (with a < b, a and b integers) the integer number
a + U(0,1).(b-a+1). For every random integer generated, we have a 8>DE@EDQG
every integer between a and b has the same probability of being chosen. In order to
implement the integer random procedure only with 32-bit integers, the problems have
been chosen in such a way that one never has to deal with a seed X such that :
; (E D + 1)
a +
a +
P (E D + 1)
i-1
dkj )
Ti = ,
j=1
dij
Prob(C*,max = LB) = 1
Nb
20
20
20
50
50
50
100
100
100
200
200
500
*
Nb jobs :
Nb machines :
Nb instances :
LB reached :
Nb iterations :
The value reached for this size was less than or equal to 1.02 times the lower bound.
UB :
LB :
As the aim is to give an upper bound as good as possible but not a fast solving
method, the computation time does not have much importance. However, let us mention
Flow shop
UB
1278
1359
1081
1293
1236
1195
1239
1206
1230
1108
LB
1232
1290
1073
1268
1198
1180
1226
1170
1206
1082
20 jobs,
10 machines
Time seed
587595453
1401007982
873136276
268827376
1634173168
691823909
73807235
1273398721
2065119309
1672900551
Flow shop
UB
1582
1659
1496
1378
1419
1397
1484
1538
1593
1591
20 jobs,
20 machines
Time seed
479340445
268827376
1958948863
918272953
555010963
2010851491
1519833303
1748670931
1923497586
1829909967
Flow shop
UB
2297
2100
2326
2223
2291
2226
2273
2200
2237
2178
LB
1448
1479
1407
1308
1325
1290
1388
1363
1472
1356
LB
1911
1711
1844
1810
1899
1875
1875
1880
1840
1900
50 jobs,
5 machines
Time seed
1328042058
200382020
496319842
1203030903
1730708564
450926852
1303135678
1273398721
587288402
248421594
Flow shop
UB
2724
2836
2621
2751
2863
2829
2725
2683
2554
2782
LB
2712
2808
2596
2740
2837
2793
2689
2667
2527
2776
50 jobs,
10 machines
Time seed
1958948863
575633267
655816003
1977864101
93805469
1803345551
49612559
1899802599
2013025619
578962478
Flow shop
UB
3037
2911
2873
3067
3025
3021
3124
3048
2913
3114
LB
2907
2821
2801
2968
2908
2941
3062
2959
2795
3046
50 jobs,
20 machines
Time seed
1539989115
691823909
655816003
1315102446
1949668355
1923497586
1805594913
1861070898
715643788
464843328
Flow shop
UB
3886
3733
3689
3755
3655
3719
3730
3744
3790
3791
LB
3480
3424
3351
3336
3313
3460
3427
3383
3457
3438
100 jobs,
5 machines
Time seed
896678084
1179439976
1122278347
416756875
267829958
1835213917
1328833962
1418570761
161033112
304212574
Flow shop
UB
5493
5274
5175
5018
5250
5135
5247
5106
5454
5328
LB
5437
5208
5130
4963
5195
5063
5198
5038
5385
5272
100 jobs,
10 machines
Time seed
1539989115
655816003
960914243
1915696806
2013025619
1168140026
1923497586
167698528
1528387973
993794175
Flow shop
UB
5776
5362
5679
5820
5491
5308
5602
5640
5891
5860
LB
5759
5345
5623
5732
5431
5246
5523
5556
5779
5830
100 jobs,
20 machines
Time seed
450926852
1462772409
1021685265
83696007
508154254
1861070898
26482542
444956424
2115448041
118254244
Flow shop
UB
6345
6323
6385
6331
6405
6487
6393
6514
6386
6544
LB
5851
6099
6099
6072
6009
6144
5991
6084
5979
6298
200 jobs,
10 machines
Time seed
471503978
1215892992
135346136
1602504050
160037322
551454346
519485142
383947510
1968171878
540872513
Flow shop
UB
10927
10570
11004
10936
10550
10378
10885
10808
10473
10727
LB
10816
10422
10886
10794
10437
10255
10761
10663
10348
10616
200 jobs,
20 machines
Time seed
2013025619
475051709
914834335
810642687
1019331795
2056065863
1342855162
1325809384
1988803007
765656702
Flow shop
UB
11441
11549
11537
11580
11484
11416
11659
11587
11498
11569
LB
10979
10947
11150
11127
11132
11085
11194
11126
10965
11122
500 jobs,
20 machines
Time seed
1368624604
450181436
1927888393
1759567256
606425239
19268348
1298201670
2041736264
379756761
28837162
Flow shop
UB
26699
27303
26928
27009
26771
26959
26870
27104
26586
26910
LB
25922
26353
26320
26424
26181
26401
26300
26429
25891
26315
The processing time dij of the jth operation of job i , (1 LQMPLVREWDLQHG
as follows :
For i = 1 to n
For j = 1 to m
dij := U[1,99]
The machine Mij on which the jth operation of job i has to be performed is given by
the following procedure :
0) Mij := j (1 LQMP
1) For i = 1 to n
For j = 1 to m
Swap Mij and MiU[j,m]
Let us note the use of another initial seed for the choice of the machines :
Machine seed.
An instance of a small open shop problem, obtained with the same procedures, is
given extensively in Table 7.
The lower bound of the makespans corresponds to the maximum amount of time that
a job or a machine requires, i.e. :
LB = max{max, ( , dij), max, ( ,
dkj)}
We conjecture again that this bound is tight if n/m EHFDXVH ZH KDYH DOZD\V
found an optimal schedule if n/m FRQVLGHULQJPRUHWKDQSUREOHPVZKRVHVL]H
was varying from 20 jobs, 2 machines to 150 jobs, 15 machines, passing by 500 jobs, 4
machines.
The time needed to perform one iteration of taboo search is about 20.10-6.n.m
seconds on the same computer as for the flow shop problems.
Tables 3 and 4 are analogous to Tables 1 and 2, but, for job shop problems, we give
in addition Machine seed in Table 4.
10
Nb
jobs
Nb
machines
15
20
20
30
30
50
50
100
15
15
20
15
20
15
20
20
Nb
instance
s
50
50
50
50
50
100
26
100
LB
reached
Nb
iterations
0%
4%
0%
18%
0%
65%
15%
89%
5105
106
107
5105
2106
2105
5105
3105
Nb
resolutions
4
3
4
4
4
4
4
3
Machine seed
398197754
386720536
316176388
1806358582
1501949241
1734077082
1374316395
2092186050
1393392374
1544979948
Job shop
UB
1247
1263
1233
1181
1236
1247
1235
1221
1289
1270
LB
977
942
921
911
940
889
935
963
982
911
Machine seed
317419073
1474268163
509669280
1209573668
529048107
25321885
1717580117
1353003786
1734469503
998486810
Job shop
UB
1376
1381
1368
1356
1375
1385
1495
1432
1378
1383
LB
1139
1251
1178
1130
1148
1181
1257
1153
1202
1186
11
20 jobs,
20 machines
Time seed
1035939303
5997802
1357503601
806159563
1902815253
1503184031
1032645967
229894219
823349822
1297900341
Machine seed
773961798
1872541150
722225039
1166962073
1879990068
1850351876
99711329
1158117804
108033225
489486403
10 jobs,
10 machines
Time seed
1344106948
425990073
666128954
442723456
2033800800
964467313
1004528509
1667495107
1806968543
938376228
Machine seed
1868311537
1111853152
1750328066
1369177184
1344077538
1735817385
967002400
818777384
1561913259
344628625
30 jobs,
15 machines
Time seed
98640593
1839268120
573875290
1670898570
1118914567
178750207
1549372605
798174738
553410952
1661531649
Machine seed
1981283465
248890888
2081512253
788294565
1074349202
294279708
596993084
151685779
1329272528
1173386294
Job shop
UB
1663
1626
1574
1665
1598
1679
1704
1633
1635
1616
Open shop
UB
652
596
617
581
657
545
623
606
606
604
Job shop
UB
1770
1853
1864
1852
2015
1844
1823
1714
1824
1723
LB
1217
1240
1185
1271
1256
1207
1331
1269
1267
1212
LB
637
588
598
577
640
538
616
595
595
596
LB
1764
1774
1729
1828
1729
1777
1771
1673
1641
1602
12
30 jobs,
20 machines
Time seed
1841414609
2116959593
796392706
532496463
2020525633
524444252
1569394691
1460267840
198324822
38071822
50 jobs,
15 machines
Time seed
17271
660481279
352229765
1197518780
1376020303
2106639239
1765352082
1105092880
907248070
2011630757
50 jobs,
20 machines
Time seed
8493988
1991925010
342093237
1634043183
341706507
320167954
1089696753
433032965
615974477
236150141
Machine seed
1357882888
1546338557
1230864158
254174057
978943053
185526083
487269855
1631446539
1937476577
1541985579
Job shop
UB
2064
1983
1905
2031
2038
2057
1950
2014
2013
1973
LB
1830
1761
1694
1787
1731
1856
1690
1744
1758
1674
Machine seed
718939
449650254
949737911
166840558
483922052
955932362
1209982549
1349003108
919544535
1845447001
Job shop
UB
2791
2800
2768
2845
2757
2833
2977
2928
2722
2777
LB
2760
2756
2717
2797
2679
2781
2943
2885
2655
2723
Machine seed
2738939
709517751
786960785
973178279
286513148
1411193018
298068750
1589656152
331205412
592292984
Job shop
UB
2961
3013
2859
2790
2813
2921
2907
2840
3129
3173
LB
2868
2848
2755
2691
2725
2845
2812
2764
3063
2995
13
100 jobs,
20 machines
Time seed
302034063
1437643198
1792475497
1647273132
696480901
1785569423
117806902
1639154709
2007423389
682761130
Job shop
UB
5582
5221
5671
5345
5573
5403
5450
5459
5360
5278
Machine seed
1203569070
1692025209
1039908559
1012841433
1689682358
1092647459
739059626
1319962509
749368241
262763021
LB
5464
5181
5552
5339
5392
5342
5436
5394
5358
5183
Nb
resoluti
ons
5
4
7
10
7
10
1'
000
300
94%
89%
2106
5
5
15
15
40
52%
3105
20
20
25
24%
3106
14
4 jobs,
4 machines
Time seed
1166510396
1624514147
1116611914
410579806
1036100146
597897640
1268670769
307928077
667545295
35780816
5 jobs,
5 machines
Time seed
527556884
1046824493
1165033492
476292817
1181363416
897739730
577107303
1714191910
1813128617
808919936
7 jobs,
7 machines
Time seed
1840686215
1026771938
609471574
1022295947
1513073047
1612211197
435024109
1760865440
122574075
248031774
Machine seed
164000672
1076870026
1729673136
1453014524
375655500
322140729
556009645
421384574
485515899
492238933
Open shop
UB
193
236
271
250
295
189
201
217
261
217
LB
186
229
262
245
287
185
197
212
258
213
Machine seed
1343124817
1973406531
86711717
24463110
606981348
513119113
2046387124
1928475945
2091141708
183753764
Open shop
UB
300
262
328
310
329
312
305
300
353
326
LB
295
255
321
306
321
307
298
292
349
321
Machine seed
1827454623
1312166461
670843185
398226875
1250759651
95606345
1118234860
1099909092
10979313
1685251301
Open shop
UB
438
449
479
467
419
460
435
426
460
400
LB
435
443
468
463
416
451
422
424
458
398
15
15 jobs,
15 machines
Time seed
1561423441
204120997
801158374
1502847623
282791231
1130361878
379464508
1760142791
1993140927
1678386613
20 jobs,
20 machines
Time seed
957638
162587311
965299017
1158457671
1191143707
1826671743
1591533998
937297777
687896268
687034842
Machine seed
1787167667
213027331
1812110433
1527847153
1855451778
849417380
944419714
1955448160
179408412
1567160817
Open shop
UB
956
957
899
946
992
959
931
916
951
935
LB
937
918
871
934
946
933
891
893
899
902
Machine seed
9237185
1489531109
1054695706
1499999517
1530757746
901609771
1146547719
92726463
1731298717
684013066
Open shop
UB
1215
1332
1294
1310
1301
1252
1352
1269
1322
1284
LB
1155
1241
1257
1248
1256
1204
1294
1169
1289
1241
Job i
1
2
3
4
1
54
9
38
95
Operation j
2
3
4
34 61
2
15 89 70
19 28 87
34
7 29
16
Job i
1
2
3
4
1
3
4
1
1
Operation j
2
3
1
4
1
2
2
3
3
2
4
2
3
4
4
b) Machines (Mij)
Table 7. The first instance of the 4-job 4-machine open shop problem.
Concluding remarks
We hope that the problems that we propose will constitute a comparison base for the
future resolution methods.
Everyone may send us his own results about these problems, specifying whether his
solutions are proved optimal or not, in order to update the best solutions known.
References
[1]
A guide to Simulation,
J. Carlier,
[3]
[4]
[5]
E.L. Lawler, J.K. Lenstra, A.H.G. Rinnooy Kan & D.B. Shmoys,
S. Lawrence,
[7]
[8]
E. Taillard,
17
[9]
E. Taillard,
[10] M. Widmer & A. Hertz, A new heuristic for the flowshop sequencing problem , European Journal of Operational Research
vol 41 (2), 186-193, 1989.
Machine
2
1
2
0
2
4
3
2
4
50
100
1
150
Time