The flexible jobshop scheduling problem benchmark library
FJSPLib is a comprehensive benchmark library for the Flexible Job Shop Scheduling Problem (FJSP), with three components:
- Instance repository — a centralized set of classic instances (Brandimarte, Hurink, Dauzere-Perez, Chambers, Kacem, Fattahi, Behnke, Birgin)
- Engine benchmark — a standardized 10-minute comparison of reference solvers (CPO, CP-SAT, OptalCP, Cplex), measuring each engine’s optimality gap and deviation from the best known bounds.
- Best-known-solutions archive — a running record of the best upper/lower bounds ever found for each instance, from any source (published papers, meta-heuristics, or engine runs) — not limited to the reference engines above.
The data and source code can be found in the Github repository. This document is visible as a README.md in the Github folder flexible jobshop or as a webpage. Instances are now available in json or text formats. The standardized benchmark results for each engine on each instance is available in json format. And a json file of best known solutions is also provided with a trace of the evolution of the bounds.
Table of Contents
Overview of the flexible jobshop benchmark library
Flexible jobshop with machine-independent processing times (264)
- 66 x 4 instances : instances (
abz,car,la,ftandorb) from the jsplib modified in 4 ways (sdataedatardataandvdata) from Hurink, Jurisch and Thole (1994)
Flexible jobshop instances (138)
- 15 instances
mkfrom Brandimarte (1993) - 18 instances
dppfrom Dauzère-Pérès and Paulli (1994) - 3 x 7 instances
mt,setb4etseti5from Chambers and Barnes (1996) - 4 instances
kacemfrom Kacem, Hammadi and Borne (2002) - 20 instances
fattahifrom Fattahi, Mehrabad and Jolai (2007) - 60 instances
behnkefrom Behnke and Geiger (2012)
Flexible assembly jobshop (50)
- 50 instances
dafjsandyfjsfrom Birgin et al. 2014
Classification of the flexible jobshop instances
The reference engines used are
- IBM ILOG Cplex : a state-of-the-art MIP engine
- IBM ILOG CP Optimizer : representative of the CP-scheduling family of engines
- Google CP-SAT : representative of the lazy clause generation family of engines
- OptalCP : representative of the CP-scheduling family of engines
We use the following criteria to classify instances by difficulty
- toy : solved to optimality (with proof) in 1 minute by at least 1 reference engine
- easy : solved to optimality (with proof) in 10 minute by at least 1 reference engine
- medium : solved to optimality (with proof) in 1 hour by at least 1 reference engine
- hard : solved to optimality (with proof) in > 1h by at least 1 reference engine
- closed : allegedly solved to optimality. Most of the time the optimal solution is known because 2 different methods independently found equal upper and lower bounds. The problem is reclassified into toy, easy, medium or hard when a reference engine is able to reproduce the results.
- open : no proof of optimality
The 10 minutes time limit reflects industrial workflows in which schedules are repeatedly regenerated after manual adjustments, parameter tuning, or changes in production data. Furthermore, problems that can be solved to optimality in less than 10 minutes are suitable as sub-problems in decomposition methods like Benders decomposition, Pareto frontier generation or rolling-horizon optimization.
What we expect from a scheduling engine is:
- prove optimality for as many instances as possible within the 10 minute limit
- for instances that cannot be closed in 10 minutes, to minimize the deviation to the best known upper and lower bounds
Why upper and lower bounds ? Because a decomposition may use the scheduling problem as a dual certificate, not only a primal one.
Currently the instances are distributed as follows
machine-independent flexible jobshop
abz: 8 toy, 1 medium, 3 hard, 2 closed, 6 opencar: 27 toy, 3 medium, 2 closedla: 119 toy, 17 medium, 4 hard, 11 closed, 9 openft: 12 toyorb: 40 toy
flexible jobshop
mk: 9 toy, 2 medium, 2 hard, 2 opendpp: 4 toy, 1 medium, 1 hard, 2 closed, 10 openmt: 7 toysetb: 7 toyseti: 7 toykacem: 4 toyfattahi: 20 toybehnke: 15 toy, 12 medium, 1 closed, 32 open
Flexible jobshop with arbitrary precedence graphs / flexible assembly jobshop
dafjs: [status unknown]yfjs: [status unknown]
Similar work
We have borrowed data and ideas from the following sources
Quintiq (2012 - 2014)
Around 2012, the Dutch company Quintiq started keeping track of the best known solutions for flexible jobshop problems (Barnes, Brandimarte, Dauzère and Hurink). Quintiq kept track of the lower and upper bounds, reference and date of the result. They also provided the instances and proven optimal solutions. Quintiq work is still visible thanks to the Internet Wayback Machine.
Jean-François Puget (2013)
In November 2013 Jean-François Puget benchmarked IBM ILOG CP Optimizer 12.6 on the same instances that Quintiq had worked on, improving 100 bounds and closing 69 new instances.
| Time-limit | %Opt | #Improved LB | #Improved UB | #NewClosed |
|---|---|---|---|---|
| 15mn | 64.2% | 48 | 20 | 52 |
| 3h | 68.7% | 56 | 35 | 65 |
| 24h | 70.0% | 59 | 41 | 69 |
JFP highlights the importance of clearly stated experimental protocols
A direct comparison between Quintiq Optimizer and CP Optimizer is difficult to perform because (1) the Quintiq page does not describe the experimental protocol and (2) Quintiq results are only available for the instances that were improved by Quintiq Optimizer. Nevertheless, on these instances improved by Quintiq optimizer, CP Optimizer is worse than Quintiq optimizer on 11 instances and is better on 24 instances.
Naderi, Ruiz and Roshanei (2022)
Our work was inspired by the outstanding work of Naderi, Ruiz and Roshanaei Mixed-Integer Programming versus Constraint Programming for shop scheduling problems : New Results and Outlook [NRR2022] which compares CPO, Cplex, Gurobi and OR-tools on a benchmark of 6623 instances over 17 benchmarks with a timeout of 1h. They have made all the raw results available
Scheduling Lab (2022 - present)
SchedulingLab collects instances of various types of scheduling problems, including instances not referenced here.
Dauzère-Perès, Ding, Shen and Tamssaouet and (2024)
The paper The flexible job shop scheduling problem: A review is an in-depht overview of the state-of-the-art for flexible jobshop and its variants. The supplementary material contains a summary of the best known solutions at the time of publication.
Formats
There are now three format supported in the FJSPLib
- the json format
- the text fjasp format
- the text fjsp format
The JSON format
The JSON format follows closely the new format
For instance fattahi1 is
{
"instance" : "fattahi1",
"family" : "fattahi",
"family_long" : "FattahiMehrabadJolai2007",
"year" : "2007",
"format" : "fajsp",
"operations" : [
{ "operation" : 0, "option" : 0, "machine" : 0, "duration" : 25 },
{ "operation" : 0, "option" : 1, "machine" : 1, "duration" : 37 },
{ "operation" : 1, "option" : 0, "machine" : 0, "duration" : 32 },
{ "operation" : 1, "option" : 1, "machine" : 1, "duration" : 24 },
{ "operation" : 2, "option" : 0, "machine" : 0, "duration" : 45 },
{ "operation" : 2, "option" : 1, "machine" : 1, "duration" : 65 },
{ "operation" : 3, "option" : 0, "machine" : 0, "duration" : 21 },
{ "operation" : 3, "option" : 1, "machine" : 1, "duration" : 65 }
],
"precedences" : [
{ "before" : 0, "after" : 1, "job" : 0},
{ "before" : 2, "after" : 3, "job" : 1}
]
}
The fjsp format
In the fjsp format
- each line represents a job
- the first number of the line is the number of operations in the job
- then for each operation is given the number of options and as many pairs machine duration as there are options
#jobs #machines average_flexibility
#operations (#options (duration machine) (duration machine)) (#options (duration machine))
For instance fattahi1 is
2 2 2
2 2 1 25 2 37 2 1 32 2 24
2 2 1 45 2 65 2 1 21 2 65
meaning
- (2 jobs) (2 machines) (average flexibility 2.0)
- (2 operations) (2 options : (1,25) (2,37)) (2 options : (1,32) (2,24))
- (2 operations) (2 options : (1,45) (2,65)) (2 options : (1,21) (2,65))
The fajsp format
The fasp format uses
- the first line is the header with
#operations#precedences#machines #precedenceslines of the formx y jwherexandyare the indices of 2 operations, andjthe number of the job that links them#operationslines of the form#options m1 d1 m2 d2 ... mk dkwhere $k \in 0 .. \mathtt{#options}-1$, $m_k$ is a machine between $0$ and $\mathtt{#machines}-1$ and $d_k$ is a duration
Notice that the format doesn’t say how many jobs exist in the instance. That number needs to be deduced from the third column of the precedence data.
For instance fattahi1 is
4 2 2
0 1 0
2 3 1
2 0 25 1 37
2 0 32 1 24
2 0 45 1 65
2 0 21 1 65
There are 4 operations from 0 to 3 with 2 options in each operation.
There are two jobs 0 -> 1 and 2 -> 3
Publications (instances)
The instances come from the following publications
-
Brandimarte, P (1993). Routing and scheduling in a flexible job shop by tabu search. Annals of Operations research, 41(3), 157-183.
-
Hurink, J., Jurisch, B., & Thole, M. (1994). Tabu search for the job-shop scheduling problem with multi-purpose machines. Operations-Research-Spektrum, 15(4), 205-215.
-
Dauzère-Pérès, S., & Paulli, J. (1994). Solving the general multiprocessor job-shop scheduling problem.
-
Chambers, J. B., & Barnes, J. W. (1996). Flexible job shop scheduling by tabu search. The University of Texas, Austin, TX, Technical Report Series ORP96-09, Graduate Program in Operations Research and Industrial Engineering.
-
Kacem, I., Hammadi, S., & Borne, P. (2002). Pareto-optimality approach for flexible job-shop scheduling problems: hybridization of evolutionary algorithms and fuzzy logic. Mathematics and computers in simulation, 60(3-5), 245-276.
-
Fattahi, P., Saidi Mehrabad, M., & Jolai, F. (2007). Mathematical modeling and heuristic approaches to flexible job shop scheduling problems. Journal of intelligent manufacturing, 18(3), 331-342.
-
Behnke, D., & Geiger, M. J. (2012). Test instances for the flexible job shop scheduling problem with work centers Technical report, Helmut-Schmidt-Universität, Lehrstuhl für Betriebswirtschaftslehre, insbes. Logistik-Management, RR 12-01-01.
-
Birgin, E. G., Feofiloff, P., Fernandes, C. G., De Melo, E. L., Oshiro, M. T., & Ronconi, D. P. (2014). A MILP model for an extended version of the flexible job shop problem. Optimization Letters, 8(4), 1417-1431.
Standardized benchmark of engines
We track the State-Of-The-Art (SOTA) of optimization engines for scheduling with a standardized 10-minute benchmark of the reference engines
The engines that are benchmarked are
- IBM ILOG Cplex : a state-of-the-art MIP engine
- IBM ILOG CP Optimizer : representative of the CP-scheduling family of engines
- Google CP-SAT : representative of the lazy clause generation family of engines
- OptalCP : representative of the CP-scheduling family of engines
A short history of the reference engines
IBM ILOG Cplex (1988 - present)
Cplex is a MIP engine founded by Robert Bixby in 1987, and acquired in 1997 by ILOG, subsequently acquired by IBM in 2009.
Like similar state-of-the-art MIP engines, Cplex features
- a presolve
- various LP algorithms (simplex, dual simplex, barrier)
- search strategies with learning (branching, restarts)
- a large collection of cuts
- primal heuristics
- conflict analysis adapted from SAT
- solution polishing before the time-limit
Improvements in a complex software like Cplex are incremental, but we can broadly divide its evolution as follows
- Cplex 1-3 [1987-1994] LP improvements (simplex, dual simplex, interior points), basic presolve and branch-and-cut. Cplex 3.0 is a performance milestone due to its mature dual simplex.
- Cplex 6-7 [1998-2001] established what we would recognize today as a modern MIP (presolve + branch-and-cut + heuristics + learning) with a particular emphasis on cuts. Cplex 6.5 (1999) is considered by practitioners as a performance milestone.
- Cplex 9-11 [2003-2007] more emphasis on primal approaches : heuristics (RINS, Feasibility pump), search strategies (restart + node presolve), solution polishing, SAT-like conflict analysis. Cplex 11 is considered as a performance milestone.
- Cplex 11/12- [2007-] more cuts (GCD-based cuts, multi-commodity flow) sometimes mixed with heuristics (pump reduce) or search (conflict analysis), and systematic cutting plane filtering allowing a more aggressive usage of cuts
From 2008, Bixby, Rothberg and Gu created Gurobi.
References
- Solving Real-World linear programs: a decade and more of progress (Robert Bixby - 2002)
- Mixed Integer Programming: Analyzing 12 Years of Progress.” In Facets of Combinatorial Optimization (Tobias Achterberg, Roland Wunderling - 2013)
IBM ILOG CP Optimizer (2007 - present)
CP Optimizer is a descendant of ILOG Solver (architectured over the years by Jean-François Puget, Jean-Charles Régin and later Laurent Perron) and ILOG Scheduler (architectured by Claude Le Pape, then Philippe Laborie). CP Optimizer (led by Paul Shaw, Laurent Perron and Philippe Laborie) merged the general CP engine and the specific scheduling add-on in a single engine, promoted the model-and-run approach and pioneered a new scheduling language (optional intervals, noOverlap, cumulative functions, etc.) that has become an industry standard.
From a technical perspective CP Optimizer interleaves the following search methods
- Large Neighbourhood Search (Shaw and al.) : tree-search based local search
- Iterative diving (designed by Philppe Laborie) : a quick diving heuristic for “simple” scheduling problems that often provides fast and good initial solutions
- Failure Directed Search (designed by Petr Vilim) : a generalization of the fail-first principle that reduces the search space by eliminating assignments unlikely to succeed
- Genetic algorithms on top of the scheduling engine : named “multi-point” search, they are not on by default unless a large number of cores are available
The temporal linear relaxation solved by an LP and objective landscapes act like a reduced cost / impact based oracle but for scheduling problems.
Because CP Optimizer was designed in a time where multi-core computers weren’t common, the engine alternates the different strategies on the same core. And replicates itself over various cores with different parameters if more cores are available
The main propagation algorithms in CP optimizer are
- time tabling and edge-finding for disjunctive and cumulative resources (Claude LePape, Wim Nuijten, Philippe Baptiste) later improved by Petr Vilim
- logical network for implications and (dis)equalities between boolean variables
- simple temporal networks for precedences
References
- 20+ years of scheduling with constraints at IBM/ILOG (Philippe Laborie, Jérôme Rogerie, Paul Shaw and Petr Vilim - 2018)
- Introduction to CP Optimizer (Philippe Laborie - 2019)
- Self-adapting large neighborhood search: Application to single-mode scheduling problems (Philippe Laborie and Daniel Godard - 2007)
- Reasoning with Conditional Time-intervals (Philippe Laborie and Jérôme Rogerie - 2008)
- Reasoning with Conditional Time-intervals Part II (Phillipe Laborie, Jérôme Rogerie, Paul Shaw and Petr Vilim - 2009)
- Temporal linear relaxation in IBM ILOG CP Optimizer (Philippe Laborie and Jérôme Rogerie - 2014)
- Failure-Directed Search for Constraint-Based Scheduling (Petr Vilim, Philippe Laborie and Paul Shaw - 2015)
- Objective landscapes for constraint programming (Philippe Laborie - 2018)
Google ORTools CP-SAT (2017 - present)
CP-SAT is an open-source lazy clause generation engine augmented with an LP, MIP-style cuts and CP-style propagators designed by Laurent Perron, Frédéric Didier and Steven Gay.
CP-SAT includes
- LP-based lower bounds + MIP style cuts, in particular MIP cuts specialized for scheduling
- CP-style propagation algorithms (time-tabling, edge-finding)
- SAT-style conflict analysis
- synchronization of MIP and CP style reasonings
- LNS : tree-based local search
- LS with infeasible moves
CP-SAT is the “successor” of a more traditional CP + LS engine by Laurent Perron and Vincent Furnon, focusing more on VRP problems.
CP-SAT team doesn’t publish much about how CP SAT works, but maintains very informative comments in the source code. Here is an overview of the files and what they contain
| Constraint | Main source files | Implemented algorithms |
|---|---|---|
| NoOverlap | disjunctive.cc | Detectable precedences, Edge Finding, Not-First/Not-Last, overload checking |
| Cumulative | cumulative.cc, timetable.cc, timetable_edgefinding.cc | Time-table propagation, Edge Finding, energetic reasoning |
| NoOverlap2D | diffn.cc | DiffN filtering, energetic reasoning |
| Circuit | circuit.cc | SCC detection, subtour elimination |
| AllDifferent | all_different.cc | Matching-based filtering, binary decomposition in some cases |
| Linear | integer_expr.cc, linear_constraint.cc | Integer propagation, pseudo-Boolean reasoning |
| Element | element.cc | Bounds consistency |
| Automaton | table.cc, automaton.cc | DFA propagation |
| Table | table.cc | Compact table propagation |
| Reservoir | reservoir.cc | Specialized cumulative reasoning |
The paper From Literals to Atomic Constraints: Generalising Conflict-Driven Clause Learning for Constraint Programming contains a comparison of the implementation of various LCG-based CP solvers.
OR-Tools only creates literals for decisions. However, OR-Tools often decomposes constraints into a SAT representation, leading to more existing literals than only decision literals. During conflict analysis, an atomic constraint with no associated literal is repeatedly replaced with its reason until only existing literals are left. OR-Tools’s approach has the benefits that 1) it only creates literals that are “important” enough to be decisions, and 2) decomposed constraints ensure that there are enough literals for conflict analysis. However, OR-Tools suffers from the fact that 1) limiting created literals can lead to less general nogoods, and 2) since explanations are resolved until consisting of existing literals, explanation lifting and nogood minimisation can have less impact
The presolver of CP-SAT does a significant amount of work, closer to a MIP than a typical CP engine
- variable fixing
- domain tightening
- affine relation detection
- duplicate constraint elimination
- implied bound computation
- linear simplification
- clique extraction
- symmetry detection
- interval simplification
- objective simplification
Moreover some of the classic scheduling algorithms have been transformed into cutting planes (scheduling_cuts.cc) : energetic reasoning, time-table propagation, cumulative precedence, cumulative completion time, energetic reasoning for disjunctive resources.
References
- CP-SAT at scheduling seminar (Laurent Perron - 2024)
- From Literals to Atomic Constraints: Generalising Conflict-Driven Clause Learning for Constraint Programming (Imko Marijnissen, Maarten Flippo, Emir Demirović - CP2026)
OptalCP (2021 - present)
OptalCP was architectured by Petr Vilim, Nicolas Bonifas and Diego Olivier Fernandez Pons (initially with input from Philippe Laborie). Compared to CPO the parallelism is done with one strategy per core instead of interleaving. The strategies used are
- Large Neighbourhood Search (LNS) : tree-search based local search
- Failure Directed Search (FDS) : generalizes first-fail principle
- FDSDual : generalizes destructive lower bounds
OptalCP continues the legacy of CP Optimizer (engine style, modeling language). The hybridization of OptalCP with heuristics and meta-heuristics is done outside by communicating upper and lower bounds in real time (during search)
References
- OptalCP at scheduling seminar (Petr Vilim - 2026)
If your name appears in this section and you notice an error contact me
Comparison of reference solvers
We adopt the following metrics to compare the engines
- Geometric average of lower bound to best known lower bound ratio
- Geometric average of the upper bound to best known upper bound ratio
- Geometric shifted average of the gap
Comparisons were performed on a Windows PC with an i7 4-core 3GHz 32GB ram in 600 seconds
- Cplex 22.1.1.0
- CPO 22.1.1.0
- with gap tolerance = 0
- CP-SAT V9.15.6755 with default configuration
- OptalCP Academic Version 2026.4.0
- with maximum propagation instead of default, gap tolerance = 0 and some other parameter changes
- we may benchmark with default parameters later
The raw data is in the solutions folder
We recommend to run your own benchmarks on your own machines. All required code is provided with HOWTO instructions in each README file.
Important caveats
- Engines have relative and absolute optimality tolerances (CPO, OptalCP) which can lead to reporting sub-optimal solutions as optimal (for the tolerance). For this test the tolerances have been set to zero
- Engines are very non-deterministic (results between two runs of the same engine on the same machine differ significantly) due to parallelism. As a result it makes no sense to consider very accurate values for average deviations or gap.
- Engines have different bottlenecks (CPU, memory) that are due to their internal architecture and trade-offs made by their designers. An engine doesn’t behave in the same way with 2, 4, 8, 16, 32 or 64 cores, doesn’t behave the same in machines with fast / slow memory, etc.
- Engines recommend different configurations : CP-SAT recommends a minimum of 8 cores and ideally 16 (due to the high number of strategies that need to be interleaved with less cores). CPO on the other hand gives most of its performance on 1 or 2 cores . The 4 core configuration was chosen because it is a usual laptop configuration, but commercial users will probably run on a larger server.
Best known solutions
In this section are collected the best known solutions (upper and lower bound) for each problem in the benchmark.
The solutions may come from
- Published papers (eg. MG2000), the section publications provides references
- An engine run by someone else (eg. CPO2013) which results have been published
- An engine run by us with approximate resolution time
The type of hardware and time required to find the best known solution are difficult to track and compare, in particular for bounds coming from published papers. Which is why
- When a reference engine reproduces a published bound, the table credits the engine because of the reproducibility advantage
- An approximative timing for reference engines is provided, in particular when the time to find the solution is unusually long
We do not systematically run the instances for very long times on large machines. Most of the instances that appear as having been solved after a large comptation time (eg. 40h) had peculiarities (e.g.
best lb + 1 == best ub) that justified exploring how long it would take to solve them to optimality. We also devote more effort to solve instances which best known solutions are given by papers that are old, difficult to find and difficlt to reproduce. This allows verifying the paper claims and having a more accessible way of generating the result.
Best known solutions json format
The best known solutions are now collected in a json file with the following syntax
{
"instance":"dpp06a",
"size":"10 x 5",
"type":"flexible jobshop",
"family":"dpp",
"family_long":"Dauzère-Pérès and Paulli (1994)",
"status":"open",
"lower_bound":2164,
"upper_bound":2169,
"lb_data":[{
"value":2164,
"date":"2026-01-01",
"solver":"CdGKGC2025",
"time":"?",
"hardware":"?",
"certificate":"no"
}],
"ub_data":[{
"value":2169,
"date":"2026-01-01",
"solver":"CdGKGC2025",
"time":"?",
"hardware":"?",
"certificate":"no"
}]
}
For most of the best known solutions, the date, hardware, running time and certificate (valid primal or valid dual solution) are not known. The data will be progressively updated to the best of our knowledge.
Best known solutions per instance family
Hurink, Jurisch and Thole (1994) - Machine independent processing times
The problems in this benchmark are modified versions of the corresponding jobshop problems. They are divided into
- sdata : each operation can be assigned to a single machine (jobshop)
- edata : a few operations can be assigned to many machines
- rdata : most operations can be assigned to a few machines
- vdata : all operation can be assigned to many machines
| Instance | Size | Problem | LB | UB | Type | Solved by |
|---|---|---|---|---|---|---|
| abz5_sdata | 10 x 10 | machine-independent flexible jobshop | 1234 | 1234 | toy | OptalCP in < 1m |
| abz5_edata | 10 x 10 | machine-independent flexible jobshop | 1167 | 1167 | toy | OptalCP in < 1m |
| abz5_rdata | 10 x 10 | machine-independent flexible jobshop | 954 | 954 | toy | OptalCP in < 1m |
| abz5_vdata | 10 x 10 | machine-independent flexible jobshop | 859 | 859 | toy | OptalCP in < 1m |
| abz6_sdata | 10 x 10 | machine-independent flexible jobshop | 943 | 943 | toy | OptalCP in < 1m |
| abz6_edata | 10 x 10 | machine-independent flexible jobshop | 925 | 925 | toy | OptalCP in < 1m |
| abz6_rdata | 10 x 10 | machine-independent flexible jobshop | 807 | 807 | toy | OptalCP in < 1m |
| abz6_vdata | 10 x 10 | machine-independent flexible jobshop | 742 | 742 | toy | OptalCP in < 1m |
| abz7_sdata | 20 x 15 | machine-independent flexible jobshop | 656 | 656 | medium | OptalCP in < 1h |
| abz7_edata | 20 x 15 | machine-independent flexible jobshop | 604 | 610 | open | lb CPO2013 | ub Quintiq |
| abz7_rdata | 20 x 15 | machine-independent flexible jobshop | 497 | 522 | open | lb CdGKGC2025 | ub DLLSXG2019 |
| abz7_vdata | 20 x 15 | machine-independent flexible jobshop | 492 | 492 | closed | Quintiq |
| abz8_sdata | 20 x 15 | machine-independent flexible jobshop | 667 | 667 | hard | OptalCP in < NaNh |
| abz8_edata | 20 x 15 | machine-independent flexible jobshop | 625 | 636 | open | lb Quintiq | ub CPO2013 |
| abz8_rdata | 20 x 15 | machine-independent flexible jobshop | 509 | 535 | open | lb CdGKGC2025 | ub DLLSXG2019 |
| abz8_vdata | 20 x 15 | machine-independent flexible jobshop | 506 | 507 | open | lb OptalCP | ub Quintiq |
| abz9_sdata | 20 x 15 | machine-independent flexible jobshop | 678 | 678 | hard | OptalCP in < NaNh |
| abz9_edata | 20 x 15 | machine-independent flexible jobshop | 644 | 644 | hard | CPO2013 in < 24h |
| abz9_rdata | 20 x 15 | machine-independent flexible jobshop | 517 | 536 | open | lb CPO2013 | ub Quintiq |
| abz9_vdata | 20 x 15 | machine-independent flexible jobshop | 497 | 497 | closed | lb OptalCP | ub Quintiq |
Hurink, Jurisch and Thole 1994
| Instance | Size | Problem | LB | UB | Type | Solved by |
|---|---|---|---|---|---|---|
| car1_sdata | 11 x 5 | machine-independent flexible jobshop | 7038 | 7038 | toy | OptalCP in < 1m |
| car1_edata | 11 x 5 | machine-independent flexible jobshop | 6176 | 6176 | toy | OptalCP in < 1m |
| car1_rdata | 11 x 5 | machine-independent flexible jobshop | 5034 | 5034 | medium | OptalCP in < 1h |
| car1_vdata | 11 x 5 | machine-independent flexible jobshop | 5005 | 5005 | medium | OptalCP in < 1h |
| car2_sdata | 13 x 4 | machine-independent flexible jobshop | 7166 | 7166 | toy | OptalCP in < 1m |
| car2_edata | 13 x 4 | machine-independent flexible jobshop | 6327 | 6327 | toy | OptalCP in < 1m |
| car2_rdata | 13 x 4 | machine-independent flexible jobshop | 5985 | 5985 | toy | OptalCP in < 1m |
| car2_vdata | 13 x 4 | machine-independent flexible jobshop | 5929 | 5929 | toy | OptalCP in < 1m |
| car3_sdata | 12 x 5 | machine-independent flexible jobshop | 7312 | 7312 | toy | OptalCP in < 1m |
| car3_edata | 12 x 5 | machine-independent flexible jobshop | 6856 | 6856 | toy | OptalCP in < 1m |
| car3_rdata | 12 x 5 | machine-independent flexible jobshop | 5622 | 5622 | closed | lb OptalCP | ub Quintiq |
| car3_vdata | 12 x 5 | machine-independent flexible jobshop | 5597 | 5597 | medium | OptalCP in < 1h |
| car4_sdata | 14 x 4 | machine-independent flexible jobshop | 8003 | 8003 | toy | OptalCP in < 1m |
| car4_edata | 14 x 4 | machine-independent flexible jobshop | 7789 | 7789 | toy | OptalCP in < 1m |
| car4_rdata | 14 x 4 | machine-independent flexible jobshop | 6514 | 6514 | toy | OptalCP in < 1m |
| car4_vdata | 14 x 4 | machine-independent flexible jobshop | 6514 | 6514 | toy | OptalCP in < 1m |
| car5_sdata | 10 x 6 | machine-independent flexible jobshop | 7702 | 7702 | toy | OptalCP in < 1m |
| car5_edata | 10 x 6 | machine-independent flexible jobshop | 7229 | 7229 | toy | OptalCP in < 1m |
| car5_rdata | 10 x 6 | machine-independent flexible jobshop | 5615 | 5615 | toy | OptalCP in < 1m |
| car5_vdata | 10 x 6 | machine-independent flexible jobshop | 4909 | 4909 | closed | lb OptalCP | ub CdGKGC2025 |
| car6_sdata | 8 x 9 | machine-independent flexible jobshop | 8313 | 8313 | toy | OptalCP in < 1m |
| car6_edata | 8 x 9 | machine-independent flexible jobshop | 7990 | 7990 | toy | OptalCP in < 1m |
| car6_rdata | 8 x 9 | machine-independent flexible jobshop | 6147 | 6147 | toy | OptalCP in < 1m |
| car6_vdata | 8 x 9 | machine-independent flexible jobshop | 5486 | 5486 | toy | OptalCP in < 1m |
| car7_sdata | 7 x 7 | machine-independent flexible jobshop | 6558 | 6558 | toy | OptalCP in < 1m |
| car7_edata | 7 x 7 | machine-independent flexible jobshop | 6123 | 6123 | toy | OptalCP in < 1m |
| car7_rdata | 7 x 7 | machine-independent flexible jobshop | 4425 | 4425 | toy | OptalCP in < 1m |
| car7_vdata | 7 x 7 | machine-independent flexible jobshop | 4281 | 4281 | toy | OptalCP in < 1m |
| car8_sdata | 8 x 8 | machine-independent flexible jobshop | 8264 | 8264 | toy | OptalCP in < 1m |
| car8_edata | 8 x 8 | machine-independent flexible jobshop | 7689 | 7689 | toy | OptalCP in < 1m |
| car8_rdata | 8 x 8 | machine-independent flexible jobshop | 5692 | 5692 | toy | OptalCP in < 1m |
| car8_vdata | 8 x 8 | machine-independent flexible jobshop | 4613 | 4613 | toy | OptalCP in < 1m |
Hurink, Jurisch and Thole 1994
| Instance | Size | Problem | LB | UB | Type | Solved by |
|---|---|---|---|---|---|---|
| la01_sdata | 10 x 5 | machine-independent flexible jobshop | 666 | 666 | toy | OptalCP in < 1m |
| la01_edata | 10 x 5 | machine-independent flexible jobshop | 609 | 609 | toy | OptalCP in < 1m |
| la01_rdata | 10 x 5 | machine-independent flexible jobshop | 570 | 570 | medium | OptalCP in < 1h |
| la01_vdata | 10 x 5 | machine-independent flexible jobshop | 570 | 570 | toy | OptalCP in < 1m |
| la02_sdata | 10 x 5 | machine-independent flexible jobshop | 655 | 655 | toy | OptalCP in < 1m |
| la02_edata | 10 x 5 | machine-independent flexible jobshop | 655 | 655 | toy | OptalCP in < 1m |
| la02_rdata | 10 x 5 | machine-independent flexible jobshop | 529 | 529 | toy | OptalCP in < 1m |
| la02_vdata | 10 x 5 | machine-independent flexible jobshop | 529 | 529 | toy | OptalCP in < 1m |
| la03_sdata | 10 x 5 | machine-independent flexible jobshop | 597 | 597 | toy | OptalCP in < 1m |
| la03_edata | 10 x 5 | machine-independent flexible jobshop | 550 | 550 | toy | OptalCP in < 1m |
| la03_rdata | 10 x 5 | machine-independent flexible jobshop | 477 | 477 | toy | OptalCP in < 1m |
| la03_vdata | 10 x 5 | machine-independent flexible jobshop | 477 | 477 | toy | OptalCP in < 1m |
| la04_sdata | 10 x 5 | machine-independent flexible jobshop | 590 | 590 | toy | OptalCP in < 1m |
| la04_edata | 10 x 5 | machine-independent flexible jobshop | 568 | 568 | toy | OptalCP in < 1m |
| la04_rdata | 10 x 5 | machine-independent flexible jobshop | 502 | 502 | toy | OptalCP in < 1m |
| la04_vdata | 10 x 5 | machine-independent flexible jobshop | 502 | 502 | toy | OptalCP in < 1m |
| la05_sdata | 10 x 5 | machine-independent flexible jobshop | 593 | 593 | toy | OptalCP in < 1m |
| la05_edata | 10 x 5 | machine-independent flexible jobshop | 503 | 503 | toy | OptalCP in < 1m |
| la05_rdata | 10 x 5 | machine-independent flexible jobshop | 457 | 457 | toy | OptalCP in < 1m |
| la05_vdata | 10 x 5 | machine-independent flexible jobshop | 457 | 457 | toy | OptalCP in < 1m |
| la06_sdata | 15 x 5 | machine-independent flexible jobshop | 926 | 926 | toy | OptalCP in < 1m |
| la06_edata | 15 x 5 | machine-independent flexible jobshop | 833 | 833 | toy | OptalCP in < 1m |
| la06_rdata | 15 x 5 | machine-independent flexible jobshop | 799 | 799 | toy | OptalCP in < 1m |
| la06_vdata | 15 x 5 | machine-independent flexible jobshop | 799 | 799 | toy | OptalCP in < 1m |
| la07_sdata | 15 x 5 | machine-independent flexible jobshop | 890 | 890 | toy | OptalCP in < 1m |
| la07_edata | 15 x 5 | machine-independent flexible jobshop | 762 | 762 | toy | OptalCP in < 1m |
| la07_rdata | 15 x 5 | machine-independent flexible jobshop | 749 | 749 | toy | OptalCP in < 1m |
| la07_vdata | 15 x 5 | machine-independent flexible jobshop | 749 | 749 | toy | OptalCP in < 1m |
| la08_sdata | 15 x 5 | machine-independent flexible jobshop | 863 | 863 | toy | OptalCP in < 1m |
| la08_edata | 15 x 5 | machine-independent flexible jobshop | 845 | 845 | toy | OptalCP in < 1m |
| la08_rdata | 15 x 5 | machine-independent flexible jobshop | 765 | 765 | toy | OptalCP in < 1m |
| la08_vdata | 15 x 5 | machine-independent flexible jobshop | 765 | 765 | toy | OptalCP in < 1m |
| la09_sdata | 15 x 5 | machine-independent flexible jobshop | 951 | 951 | toy | OptalCP in < 1m |
| la09_edata | 15 x 5 | machine-independent flexible jobshop | 878 | 878 | toy | OptalCP in < 1m |
| la09_rdata | 15 x 5 | machine-independent flexible jobshop | 853 | 853 | toy | OptalCP in < 1m |
| la09_vdata | 15 x 5 | machine-independent flexible jobshop | 853 | 853 | toy | OptalCP in < 1m |
| la10_sdata | 15 x 5 | machine-independent flexible jobshop | 958 | 958 | toy | OptalCP in < 1m |
| la10_edata | 15 x 5 | machine-independent flexible jobshop | 866 | 866 | toy | OptalCP in < 1m |
| la10_rdata | 15 x 5 | machine-independent flexible jobshop | 804 | 804 | toy | OptalCP in < 1m |
| la10_vdata | 15 x 5 | machine-independent flexible jobshop | 804 | 804 | toy | OptalCP in < 1m |
| la11_sdata | 20 x 5 | machine-independent flexible jobshop | 1222 | 1222 | toy | OptalCP in < 1m |
| la11_edata | 20 x 5 | machine-independent flexible jobshop | 1103 | 1103 | toy | OptalCP in < 1m |
| la11_rdata | 20 x 5 | machine-independent flexible jobshop | 1071 | 1071 | toy | OptalCP in < 1m |
| la11_vdata | 20 x 5 | machine-independent flexible jobshop | 1071 | 1071 | toy | OptalCP in < 1m |
| la12_sdata | 20 x 5 | machine-independent flexible jobshop | 1039 | 1039 | toy | OptalCP in < 1m |
| la12_edata | 20 x 5 | machine-independent flexible jobshop | 960 | 960 | toy | OptalCP in < 1m |
| la12_rdata | 20 x 5 | machine-independent flexible jobshop | 936 | 936 | toy | OptalCP in < 1m |
| la12_vdata | 20 x 5 | machine-independent flexible jobshop | 936 | 936 | toy | OptalCP in < 1m |
| la13_sdata | 20 x 5 | machine-independent flexible jobshop | 1150 | 1150 | toy | OptalCP in < 1m |
| la13_edata | 20 x 5 | machine-independent flexible jobshop | 1053 | 1053 | toy | OptalCP in < 1m |
| la13_rdata | 20 x 5 | machine-independent flexible jobshop | 1038 | 1038 | toy | OptalCP in < 1m |
| la13_vdata | 20 x 5 | machine-independent flexible jobshop | 1038 | 1038 | toy | OptalCP in < 1m |
| la14_sdata | 20 x 5 | machine-independent flexible jobshop | 1292 | 1292 | toy | OptalCP in < 1m |
| la14_edata | 20 x 5 | machine-independent flexible jobshop | 1123 | 1123 | toy | OptalCP in < 1m |
| la14_rdata | 20 x 5 | machine-independent flexible jobshop | 1070 | 1070 | toy | OptalCP in < 1m |
| la14_vdata | 20 x 5 | machine-independent flexible jobshop | 1070 | 1070 | toy | OptalCP in < 1m |
| la15_sdata | 20 x 5 | machine-independent flexible jobshop | 1207 | 1207 | toy | OptalCP in < 1m |
| la15_edata | 20 x 5 | machine-independent flexible jobshop | 1111 | 1111 | toy | OptalCP in < 1m |
| la15_rdata | 20 x 5 | machine-independent flexible jobshop | 1089 | 1089 | toy | OptalCP in < 1m |
| la15_vdata | 20 x 5 | machine-independent flexible jobshop | 1089 | 1089 | toy | OptalCP in < 1m |
| la16_sdata | 10 x 10 | machine-independent flexible jobshop | 945 | 945 | toy | OptalCP in < 1m |
| la16_edata | 10 x 10 | machine-independent flexible jobshop | 892 | 892 | toy | OptalCP in < 1m |
| la16_rdata | 10 x 10 | machine-independent flexible jobshop | 717 | 717 | toy | OptalCP in < 1m |
| la16_vdata | 10 x 10 | machine-independent flexible jobshop | 717 | 717 | toy | OptalCP in < 1m |
| la17_sdata | 10 x 10 | machine-independent flexible jobshop | 784 | 784 | toy | OptalCP in < 1m |
| la17_edata | 10 x 10 | machine-independent flexible jobshop | 707 | 707 | toy | OptalCP in < 1m |
| la17_rdata | 10 x 10 | machine-independent flexible jobshop | 646 | 646 | toy | OptalCP in < 1m |
| la17_vdata | 10 x 10 | machine-independent flexible jobshop | 646 | 646 | toy | OptalCP in < 1m |
| la18_sdata | 10 x 10 | machine-independent flexible jobshop | 848 | 848 | toy | OptalCP in < 1m |
| la18_edata | 10 x 10 | machine-independent flexible jobshop | 842 | 842 | toy | OptalCP in < 1m |
| la18_rdata | 10 x 10 | machine-independent flexible jobshop | 666 | 666 | toy | OptalCP in < 1m |
| la18_vdata | 10 x 10 | machine-independent flexible jobshop | 663 | 663 | toy | OptalCP in < 1m |
| la19_sdata | 10 x 10 | machine-independent flexible jobshop | 842 | 842 | toy | OptalCP in < 1m |
| la19_edata | 10 x 10 | machine-independent flexible jobshop | 796 | 796 | toy | OptalCP in < 1m |
| la19_rdata | 10 x 10 | machine-independent flexible jobshop | 700 | 700 | toy | OptalCP in < 1m |
| la19_vdata | 10 x 10 | machine-independent flexible jobshop | 617 | 617 | toy | OptalCP in < 1m |
| la20_sdata | 10 x 10 | machine-independent flexible jobshop | 902 | 902 | toy | OptalCP in < 1m |
| la20_edata | 10 x 10 | machine-independent flexible jobshop | 857 | 857 | toy | OptalCP in < 1m |
| la20_rdata | 10 x 10 | machine-independent flexible jobshop | 756 | 756 | toy | OptalCP in < 1m |
| la20_vdata | 10 x 10 | machine-independent flexible jobshop | 756 | 756 | toy | OptalCP in < 1m |
| la21_sdata | 15 x 10 | machine-independent flexible jobshop | 1046 | 1046 | toy | OptalCP in < 1m |
| la21_edata | 15 x 10 | machine-independent flexible jobshop | 1009 | 1009 | toy | OptalCP in < 1m |
| la21_rdata | 15 x 10 | machine-independent flexible jobshop | 809 | 825 | open | lb CdGKGC2025 | ub Quintiq |
| la21_vdata | 15 x 10 | machine-independent flexible jobshop | 800 | 800 | medium | OptalCP in < 1h |
| la22_sdata | 15 x 10 | machine-independent flexible jobshop | 927 | 927 | toy | OptalCP in < 1m |
| la22_edata | 15 x 10 | machine-independent flexible jobshop | 880 | 880 | toy | OptalCP in < 1m |
| la22_rdata | 15 x 10 | machine-independent flexible jobshop | 745 | 753 | open | lb CdGKGC2025 | ub DLLSXG2019 |
| la22_vdata | 15 x 10 | machine-independent flexible jobshop | 733 | 733 | closed | lb OptalCP | ub CPO2013 |
| la23_sdata | 15 x 10 | machine-independent flexible jobshop | 1032 | 1032 | toy | OptalCP in < 1m |
| la23_edata | 15 x 10 | machine-independent flexible jobshop | 950 | 950 | toy | OptalCP in < 1m |
| la23_rdata | 15 x 10 | machine-independent flexible jobshop | 820 | 831 | open | lb CdGKGC2025 | ub DLLSXG2019 |
| la23_vdata | 15 x 10 | machine-independent flexible jobshop | 809 | 809 | medium | OptalCP in < 1h |
| la24_sdata | 15 x 10 | machine-independent flexible jobshop | 935 | 935 | toy | OptalCP in < 1m |
| la24_edata | 15 x 10 | machine-independent flexible jobshop | 908 | 908 | toy | OptalCP in < 1m |
| la24_rdata | 15 x 10 | machine-independent flexible jobshop | 780 | 795 | open | lb CdGKGC2025 | ub DLLSXG2019 |
| la24_vdata | 15 x 10 | machine-independent flexible jobshop | 773 | 773 | hard | OptalCP in < NaNh |
| la25_sdata | 15 x 10 | machine-independent flexible jobshop | 977 | 977 | toy | OptalCP in < 1m |
| la25_edata | 15 x 10 | machine-independent flexible jobshop | 936 | 936 | toy | OptalCP in < 1m |
| la25_rdata | 15 x 10 | machine-independent flexible jobshop | 771 | 779 | open | lb CdGKGC2025 | ub DLLSXG2019 |
| la25_vdata | 15 x 10 | machine-independent flexible jobshop | 751 | 751 | closed | lb OptalCP | ub Quintiq |
| la26_sdata | 20 x 10 | machine-independent flexible jobshop | 1218 | 1218 | toy | OptalCP in < 1m |
| la26_edata | 20 x 10 | machine-independent flexible jobshop | 1106 | 1106 | medium | OptalCP in < 1h |
| la26_rdata | 20 x 10 | machine-independent flexible jobshop | 1056 | 1057 | open | lb DOFP2026a | ub Quintiq |
| la26_vdata | 20 x 10 | machine-independent flexible jobshop | 1052 | 1052 | medium | OptalCP in < 1h |
| la27_sdata | 20 x 10 | machine-independent flexible jobshop | 1235 | 1235 | toy | OptalCP in < 1m |
| la27_edata | 20 x 10 | machine-independent flexible jobshop | 1181 | 1181 | toy | OptalCP in < 1m |
| la27_rdata | 20 x 10 | machine-independent flexible jobshop | 1085 | 1085 | closed | lb DOFP2026a | ub Quintiq |
| la27_vdata | 20 x 10 | machine-independent flexible jobshop | 1084 | 1084 | medium | OptalCP in < 1h |
| la28_sdata | 20 x 10 | machine-independent flexible jobshop | 1216 | 1216 | toy | OptalCP in < 1m |
| la28_edata | 20 x 10 | machine-independent flexible jobshop | 1142 | 1142 | hard | CPO2013 in < 24h |
| la28_rdata | 20 x 10 | machine-independent flexible jobshop | 1075 | 1076 | open | lb DOFP2026a | ub Quintiq |
| la28_vdata | 20 x 10 | machine-independent flexible jobshop | 1069 | 1069 | medium | OptalCP in < 1h |
| la29_sdata | 20 x 10 | machine-independent flexible jobshop | 1152 | 1152 | medium | OptalCP in < 1h |
| la29_edata | 20 x 10 | machine-independent flexible jobshop | 1107 | 1107 | hard | CPO2013 in < 24h |
| la29_rdata | 20 x 10 | machine-independent flexible jobshop | 993 | 994 | open | lb OptalCP | ub Quintiq |
| la29_vdata | 20 x 10 | machine-independent flexible jobshop | 993 | 993 | closed | lb OptalCP | ub Quintiq |
| la30_sdata | 20 x 10 | machine-independent flexible jobshop | 1355 | 1355 | toy | OptalCP in < 1m |
| la30_edata | 20 x 10 | machine-independent flexible jobshop | 1188 | 1188 | hard | CPO2013 in < 24h |
| la30_rdata | 20 x 10 | machine-independent flexible jobshop | 1068 | 1071 | open | lb OptalCP | ub Quintiq |
| la30_vdata | 20 x 10 | machine-independent flexible jobshop | 1068 | 1068 | closed | lb OptalCP | ub Quintiq |
| la31_sdata | 30 x 10 | machine-independent flexible jobshop | 1784 | 1784 | toy | OptalCP in < 1m |
| la31_edata | 30 x 10 | machine-independent flexible jobshop | 1532 | 1532 | medium | OptalCP in < 1h |
| la31_rdata | 30 x 10 | machine-independent flexible jobshop | 1520 | 1520 | medium | OptalCP in < 1h |
| la31_vdata | 30 x 10 | machine-independent flexible jobshop | 1520 | 1520 | medium | OptalCP in < 1h |
| la32_sdata | 30 x 10 | machine-independent flexible jobshop | 1850 | 1850 | toy | OptalCP in < 1m |
| la32_edata | 30 x 10 | machine-independent flexible jobshop | 1698 | 1698 | toy | OptalCP in < 1m |
| la32_rdata | 30 x 10 | machine-independent flexible jobshop | 1657 | 1657 | closed | lb OptalCP | ub Quintiq |
| la32_vdata | 30 x 10 | machine-independent flexible jobshop | 1657 | 1657 | closed | lb OptalCP | ub Quintiq |
| la33_sdata | 30 x 10 | machine-independent flexible jobshop | 1719 | 1719 | toy | OptalCP in < 1m |
| la33_edata | 30 x 10 | machine-independent flexible jobshop | 1547 | 1547 | toy | OptalCP in < 1m |
| la33_rdata | 30 x 10 | machine-independent flexible jobshop | 1497 | 1497 | closed | lb OptalCP | ub Quintiq |
| la33_vdata | 30 x 10 | machine-independent flexible jobshop | 1497 | 1497 | closed | lb OptalCP | ub MG2000 |
| la34_sdata | 30 x 10 | machine-independent flexible jobshop | 1721 | 1721 | toy | OptalCP in < 1m |
| la34_edata | 30 x 10 | machine-independent flexible jobshop | 1599 | 1599 | toy | OptalCP in < 1m |
| la34_rdata | 30 x 10 | machine-independent flexible jobshop | 1535 | 1535 | closed | lb OptalCP | ub Quintiq |
| la34_vdata | 30 x 10 | machine-independent flexible jobshop | 1535 | 1535 | medium | OptalCP in < 1h |
| la35_sdata | 30 x 10 | machine-independent flexible jobshop | 1888 | 1888 | toy | OptalCP in < 1m |
| la35_edata | 30 x 10 | machine-independent flexible jobshop | 1736 | 1736 | toy | OptalCP in < 1m |
| la35_rdata | 30 x 10 | machine-independent flexible jobshop | 1549 | 1549 | closed | lb OptalCP | ub Quintiq |
| la35_vdata | 30 x 10 | machine-independent flexible jobshop | 1549 | 1549 | medium | OptalCP in < 1h |
| la36_sdata | 15 x 15 | machine-independent flexible jobshop | 1268 | 1268 | toy | OptalCP in < 1m |
| la36_edata | 15 x 15 | machine-independent flexible jobshop | 1160 | 1160 | toy | OptalCP in < 1m |
| la36_rdata | 15 x 15 | machine-independent flexible jobshop | 1023 | 1023 | toy | OptalCP in < 1m |
| la36_vdata | 15 x 15 | machine-independent flexible jobshop | 948 | 948 | toy | OptalCP in < 1m |
| la37_sdata | 15 x 15 | machine-independent flexible jobshop | 1397 | 1397 | toy | OptalCP in < 1m |
| la37_edata | 15 x 15 | machine-independent flexible jobshop | 1397 | 1397 | toy | OptalCP in < 1m |
| la37_rdata | 15 x 15 | machine-independent flexible jobshop | 1062 | 1062 | medium | OptalCP in < 1h |
| la37_vdata | 15 x 15 | machine-independent flexible jobshop | 986 | 986 | toy | OptalCP in < 1m |
| la38_sdata | 15 x 15 | machine-independent flexible jobshop | 1196 | 1196 | medium | OptalCP in < 1h |
| la38_edata | 15 x 15 | machine-independent flexible jobshop | 1141 | 1141 | toy | OptalCP in < 1m |
| la38_rdata | 15 x 15 | machine-independent flexible jobshop | 954 | 954 | toy | OptalCP in < 1m |
| la38_vdata | 15 x 15 | machine-independent flexible jobshop | 943 | 943 | toy | OptalCP in < 1m |
| la39_sdata | 15 x 15 | machine-independent flexible jobshop | 1233 | 1233 | toy | OptalCP in < 1m |
| la39_edata | 15 x 15 | machine-independent flexible jobshop | 1184 | 1184 | toy | OptalCP in < 1m |
| la39_rdata | 15 x 15 | machine-independent flexible jobshop | 1011 | 1011 | toy | OptalCP in < 1m |
| la39_vdata | 15 x 15 | machine-independent flexible jobshop | 922 | 922 | toy | OptalCP in < 1m |
| la40_sdata | 15 x 15 | machine-independent flexible jobshop | 1222 | 1222 | toy | OptalCP in < 1m |
| la40_edata | 15 x 15 | machine-independent flexible jobshop | 1144 | 1144 | medium | OptalCP in < 1h |
| la40_rdata | 15 x 15 | machine-independent flexible jobshop | 955 | 955 | medium | OptalCP in < 1h |
| la40_vdata | 15 x 15 | machine-independent flexible jobshop | 955 | 955 | toy | OptalCP in < 1m |
Hurink, Jurisch and Thole 1994
| Instance | Size | Problem | LB | UB | Type | Solved by |
|---|---|---|---|---|---|---|
| ft06_sdata | 6 x 6 | machine-independent flexible jobshop | 55 | 55 | toy | OptalCP in < 1m |
| ft06_edata | 6 x 6 | machine-independent flexible jobshop | 55 | 55 | toy | OptalCP in < 1m |
| ft06_rdata | 6 x 6 | machine-independent flexible jobshop | 47 | 47 | toy | OptalCP in < 1m |
| ft06_vdata | 6 x 6 | machine-independent flexible jobshop | 47 | 47 | toy | OptalCP in < 1m |
| ft10_sdata | 10 x 10 | machine-independent flexible jobshop | 930 | 930 | toy | OptalCP in < 1m |
| ft10_edata | 10 x 10 | machine-independent flexible jobshop | 871 | 871 | toy | OptalCP in < 1m |
| ft10_rdata | 10 x 10 | machine-independent flexible jobshop | 686 | 686 | toy | OptalCP in < 1m |
| ft10_vdata | 10 x 10 | machine-independent flexible jobshop | 655 | 655 | toy | OptalCP in < 1m |
| ft20_sdata | 20 x 5 | machine-independent flexible jobshop | 1165 | 1165 | toy | OptalCP in < 1m |
| ft20_edata | 20 x 5 | machine-independent flexible jobshop | 1088 | 1088 | toy | OptalCP in < 1m |
| ft20_rdata | 20 x 5 | machine-independent flexible jobshop | 1022 | 1022 | toy | OptalCP in < 1m |
| ft20_vdata | 20 x 5 | machine-independent flexible jobshop | 1022 | 1022 | toy | OptalCP in < 1m |
Hurink, Jurisch and Thole 1994
| Instance | Size | Problem | LB | UB | Type | Solved by |
|---|---|---|---|---|---|---|
| orb1_sdata | 10 x 10 | machine-independent flexible jobshop | 1059 | 1059 | toy | OptalCP in < 1m |
| orb1_edata | 10 x 10 | machine-independent flexible jobshop | 977 | 977 | toy | OptalCP in < 1m |
| orb1_rdata | 10 x 10 | machine-independent flexible jobshop | 746 | 746 | toy | OptalCP in < 1m |
| orb1_vdata | 10 x 10 | machine-independent flexible jobshop | 695 | 695 | toy | OptalCP in < 1m |
| orb2_sdata | 10 x 10 | machine-independent flexible jobshop | 888 | 888 | toy | OptalCP in < 1m |
| orb2_edata | 10 x 10 | machine-independent flexible jobshop | 865 | 865 | toy | OptalCP in < 1m |
| orb2_rdata | 10 x 10 | machine-independent flexible jobshop | 696 | 696 | toy | OptalCP in < 1m |
| orb2_vdata | 10 x 10 | machine-independent flexible jobshop | 620 | 620 | toy | OptalCP in < 1m |
| orb3_sdata | 10 x 10 | machine-independent flexible jobshop | 1005 | 1005 | toy | OptalCP in < 1m |
| orb3_edata | 10 x 10 | machine-independent flexible jobshop | 951 | 951 | toy | OptalCP in < 1m |
| orb3_rdata | 10 x 10 | machine-independent flexible jobshop | 712 | 712 | toy | OptalCP in < 1m |
| orb3_vdata | 10 x 10 | machine-independent flexible jobshop | 648 | 648 | toy | OptalCP in < 1m |
| orb4_sdata | 10 x 10 | machine-independent flexible jobshop | 1005 | 1005 | toy | OptalCP in < 1m |
| orb4_edata | 10 x 10 | machine-independent flexible jobshop | 984 | 984 | toy | OptalCP in < 1m |
| orb4_rdata | 10 x 10 | machine-independent flexible jobshop | 753 | 753 | toy | OptalCP in < 1m |
| orb4_vdata | 10 x 10 | machine-independent flexible jobshop | 753 | 753 | toy | OptalCP in < 1m |
| orb5_sdata | 10 x 10 | machine-independent flexible jobshop | 887 | 887 | toy | OptalCP in < 1m |
| orb5_edata | 10 x 10 | machine-independent flexible jobshop | 842 | 842 | toy | OptalCP in < 1m |
| orb5_rdata | 10 x 10 | machine-independent flexible jobshop | 639 | 639 | toy | OptalCP in < 1m |
| orb5_vdata | 10 x 10 | machine-independent flexible jobshop | 584 | 584 | toy | OptalCP in < 1m |
| orb6_sdata | 10 x 10 | machine-independent flexible jobshop | 1010 | 1010 | toy | OptalCP in < 1m |
| orb6_edata | 10 x 10 | machine-independent flexible jobshop | 958 | 958 | toy | OptalCP in < 1m |
| orb6_rdata | 10 x 10 | machine-independent flexible jobshop | 754 | 754 | toy | OptalCP in < 1m |
| orb6_vdata | 10 x 10 | machine-independent flexible jobshop | 715 | 715 | toy | OptalCP in < 1m |
| orb7_sdata | 10 x 10 | machine-independent flexible jobshop | 397 | 397 | toy | OptalCP in < 1m |
| orb7_edata | 10 x 10 | machine-independent flexible jobshop | 389 | 389 | toy | OptalCP in < 1m |
| orb7_rdata | 10 x 10 | machine-independent flexible jobshop | 302 | 302 | toy | OptalCP in < 1m |
| orb7_vdata | 10 x 10 | machine-independent flexible jobshop | 275 | 275 | toy | OptalCP in < 1m |
| orb8_sdata | 10 x 10 | machine-independent flexible jobshop | 899 | 899 | toy | OptalCP in < 1m |
| orb8_edata | 10 x 10 | machine-independent flexible jobshop | 894 | 894 | toy | OptalCP in < 1m |
| orb8_rdata | 10 x 10 | machine-independent flexible jobshop | 639 | 639 | toy | OptalCP in < 1m |
| orb8_vdata | 10 x 10 | machine-independent flexible jobshop | 573 | 573 | toy | OptalCP in < 1m |
| orb9_sdata | 10 x 10 | machine-independent flexible jobshop | 934 | 934 | toy | OptalCP in < 1m |
| orb9_edata | 10 x 10 | machine-independent flexible jobshop | 933 | 933 | toy | OptalCP in < 1m |
| orb9_rdata | 10 x 10 | machine-independent flexible jobshop | 694 | 694 | toy | OptalCP in < 1m |
| orb9_vdata | 10 x 10 | machine-independent flexible jobshop | 659 | 659 | toy | OptalCP in < 1m |
| orb10_sdata | 10 x 10 | machine-independent flexible jobshop | 944 | 944 | toy | OptalCP in < 1m |
| orb10_edata | 10 x 10 | machine-independent flexible jobshop | 933 | 933 | toy | OptalCP in < 1m |
| orb10_rdata | 10 x 10 | machine-independent flexible jobshop | 742 | 742 | toy | OptalCP in < 1m |
| orb10_vdata | 10 x 10 | machine-independent flexible jobshop | 681 | 681 | toy | OptalCP in < 1m |
FT instances are also known as MT because the 1963 paper of Fisher and Thompson was published in the book “Industrial scheduling” by Muth and Thompson.
Brandimarte (1993)
| Instance | Size | Problem | LB | UB | Type | Solved by |
|---|---|---|---|---|---|---|
| mk01 | 10 x 6 | flexible jobshop | 40 | 40 | toy | OptalCP in < 1m |
| mk02 | 10 x 6 | flexible jobshop | 26 | 26 | toy | OptalCP in < 1m |
| mk03 | 15 x 8 | flexible jobshop | 204 | 204 | toy | OptalCP in < 1m |
| mk04 | 15 x 8 | flexible jobshop | 60 | 60 | toy | OptalCP in < 1m |
| mk05 | 15 x 4 | flexible jobshop | 172 | 172 | toy | OptalCP in < 1m |
| mk06 | 10 x 15 | flexible jobshop | 57 | 57 | medium | OptalCP in < 1h |
| mk07 | 20 x 5 | flexible jobshop | 139 | 139 | medium | OptalCP in < 1h |
| mk08 | 20 x 10 | flexible jobshop | 523 | 523 | toy | OptalCP in < 1m |
| mk09 | 20 x 10 | flexible jobshop | 307 | 307 | toy | OptalCP in < 1m |
| mk10 | 20 x 15 | flexible jobshop | 189 | 193 | open | lb DOFP2026a | ub Quintiq |
| mk11 | 30 x 5 | flexible jobshop | 609 | 609 | hard | OptalCP in < 24h |
| mk12 | 30 x 10 | flexible jobshop | 508 | 508 | toy | OptalCP in < 1m |
| mk13 | 30 x 10 | flexible jobshop | 381 | 390 | open | lb DOFP2026a | ub OptalCP |
| mk14 | 30 x 15 | flexible jobshop | 694 | 694 | toy | OptalCP in < 1m |
| mk15 | 30 x 15 | flexible jobshop | 333 | 333 | hard | OptalCP in < 2h |
Instances mk11 to mk15 are present in the supplementary material of Test Instances for the Flexible Job Shop Scheduling Problem with Work Centers but absent from other problem repositories
Dauzère-Pérès and Paulli (1994)
| Instance | Size | Problem | LB | UB | Type | Solved by |
|---|---|---|---|---|---|---|
| dpp01a | 10 x 5 | flexible jobshop | 2505 | 2505 | toy | OptalCP in < 1m |
| dpp02a | 10 x 5 | flexible jobshop | 2228 | 2228 | toy | OptalCP in < 1m |
| dpp03a | 10 x 5 | flexible jobshop | 2228 | 2228 | toy | OptalCP in < 1m |
| dpp04a | 10 x 5 | flexible jobshop | 2503 | 2503 | toy | OptalCP in < 1m |
| dpp05a | 10 x 5 | flexible jobshop | 2195 | 2199 | open | CdGKGC2025 |
| dpp06a | 10 x 5 | flexible jobshop | 2164 | 2169 | open | CdGKGC2025 |
| dpp07a | 15 x 8 | flexible jobshop | 2216 | 2254 | open | lb CPO2013 | ub DLLSXG2019 |
| dpp08a | 15 x 8 | flexible jobshop | 2061 | 2061 | hard | OptalCP in < 10h |
| dpp09a | 15 x 8 | flexible jobshop | 2061 | 2061 | medium | OptalCP in < 1h |
| dpp10a | 15 x 8 | flexible jobshop | 2212 | 2241 | open | lb CPO2013 | ub Quintiq |
| dpp11a | 15 x 8 | flexible jobshop | 2019 | 2037 | open | lb CdGKGC2025 | ub Quintiq |
| dpp12a | 15 x 8 | flexible jobshop | 1969 | 1984 | open | lb OptalCP | ub Quintiq |
| dpp13a | 20 x 10 | flexible jobshop | 2206 | 2236 | open | lb CdGKGC2025 | ub DLLSXG2019 |
| dpp14a | 20 x 10 | flexible jobshop | 2161 | 2161 | closed | lb OptalCP | ub Quintiq |
| dpp15a | 20 x 10 | flexible jobshop | 2161 | 2161 | closed | lb OptalCP | ub Quintiq |
| dpp16a | 20 x 10 | flexible jobshop | 2202 | 2231 | open | lb CdGKGC2025 | ub Quintiq |
| dpp17a | 20 x 10 | flexible jobshop | 2089 | 2105 | open | lb CdGKGC2025 | ub Quintiq |
| dpp18a | 20 x 10 | flexible jobshop | 2057 | 2070 | open | lb OptalCP | ub Quintiq |
Chambers and Barnes (1996)
| Instance | Size | Problem | LB | UB | Type | Solved by |
|---|---|---|---|---|---|---|
| mt10c1 | 10 x 11 | flexible jobshop | 927 | 927 | toy | OptalCP in < 1m |
| mt10cc | 10 x 12 | flexible jobshop | 908 | 908 | toy | OptalCP in < 1m |
| mt10x | 10 x 11 | flexible jobshop | 918 | 918 | toy | OptalCP in < 1m |
| mt10xx | 10 x 12 | flexible jobshop | 918 | 918 | toy | OptalCP in < 1m |
| mt10xxx | 10 x 13 | flexible jobshop | 918 | 918 | toy | OptalCP in < 1m |
| mt10xy | 10 x 12 | flexible jobshop | 905 | 905 | toy | OptalCP in < 1m |
| mt10xyz | 10 x 13 | flexible jobshop | 847 | 847 | toy | OptalCP in < 1m |
| setb4c9 | 15 x 11 | flexible jobshop | 914 | 914 | toy | OptalCP in < 1m |
| setb4cc | 15 x 12 | flexible jobshop | 907 | 907 | toy | OptalCP in < 1m |
| setb4x | 15 x 11 | flexible jobshop | 925 | 925 | toy | OptalCP in < 1m |
| setb4xx | 15 x 12 | flexible jobshop | 925 | 925 | toy | OptalCP in < 1m |
| setb4xxx | 15 x 13 | flexible jobshop | 925 | 925 | toy | OptalCP in < 1m |
| setb4xy | 15 x 12 | flexible jobshop | 910 | 910 | toy | OptalCP in < 1m |
| setb4xyz | 15 x 13 | flexible jobshop | 902 | 902 | toy | OptalCP in < 1m |
| seti5c12 | 15 x 16 | flexible jobshop | 1169 | 1169 | toy | OptalCP in < 1m |
| seti5cc | 15 x 17 | flexible jobshop | 1135 | 1135 | toy | OptalCP in < 1m |
| seti5x | 15 x 16 | flexible jobshop | 1198 | 1198 | toy | OptalCP in < 1m |
| seti5xx | 15 x 17 | flexible jobshop | 1194 | 1194 | toy | OptalCP in < 1m |
| seti5xxx | 15 x 18 | flexible jobshop | 1194 | 1194 | toy | OptalCP in < 1m |
| seti5xy | 15 x 17 | flexible jobshop | 1135 | 1135 | toy | OptalCP in < 1m |
| seti5xyz | 15 x 18 | flexible jobshop | 1125 | 1125 | toy | OptalCP in < 1m |
Kacem, Hammadi and Borne (2002)
| Instance | Size | Problem | LB | UB | Type | Solved by |
|---|---|---|---|---|---|---|
| kacem1 | 4 x 6 | flexible jobshop | 11 | 11 | toy | OptalCP in < 1m |
| kacem2 | 10 x 7 | flexible jobshop | 11 | 11 | toy | OptalCP in < 1m |
| kacem3 | 10 x 10 | flexible jobshop | 7 | 7 | toy | OptalCP in < 1m |
| kacem4 | 15 x 10 | flexible jobshop | 11 | 11 | toy | OptalCP in < 1m |
Fattahi, Mehrabad and Jolai (2007)
| Instance | Size | Problem | LB | UB | Type | Solved by |
|---|---|---|---|---|---|---|
| fattahi1 | 2 x 2 | flexible jobshop | 66 | 66 | toy | OptalCP in < 1m |
| fattahi2 | 2 x 2 | flexible jobshop | 107 | 107 | toy | OptalCP in < 1m |
| fattahi3 | 3 x 2 | flexible jobshop | 221 | 221 | toy | OptalCP in < 1m |
| fattahi4 | 3 x 2 | flexible jobshop | 355 | 355 | toy | OptalCP in < 1m |
| fattahi5 | 3 x 2 | flexible jobshop | 119 | 119 | toy | OptalCP in < 1m |
| fattahi6 | 3 x 2 | flexible jobshop | 320 | 320 | toy | OptalCP in < 1m |
| fattahi7 | 3 x 5 | flexible jobshop | 397 | 397 | toy | OptalCP in < 1m |
| fattahi8 | 3 x 4 | flexible jobshop | 253 | 253 | toy | OptalCP in < 1m |
| fattahi9 | 3 x 3 | flexible jobshop | 210 | 210 | toy | OptalCP in < 1m |
| fattahi10 | 4 x 5 | flexible jobshop | 516 | 516 | toy | OptalCP in < 1m |
| fattahi11 | 5 x 6 | flexible jobshop | 468 | 468 | toy | OptalCP in < 1m |
| fattahi12 | 5 x 7 | flexible jobshop | 446 | 446 | toy | OptalCP in < 1m |
| fattahi13 | 6 x 7 | flexible jobshop | 466 | 466 | toy | OptalCP in < 1m |
| fattahi14 | 7 x 7 | flexible jobshop | 554 | 554 | toy | OptalCP in < 1m |
| fattahi15 | 7 x 7 | flexible jobshop | 514 | 514 | toy | OptalCP in < 1m |
| fattahi16 | 8 x 7 | flexible jobshop | 634 | 634 | toy | OptalCP in < 1m |
| fattahi17 | 8 x 7 | flexible jobshop | 879 | 879 | toy | OptalCP in < 1m |
| fattahi18 | 9 x 8 | flexible jobshop | 884 | 884 | toy | OptalCP in < 1m |
| fattahi19 | 11 x 8 | flexible jobshop | 1055 | 1055 | toy | OptalCP in < 1m |
| fattahi20 | 12 x 8 | flexible jobshop | 1196 | 1196 | toy | OptalCP in < 1m |
Behnke and Geiger (2012)
| Instance | Size | Problem | LB | UB | Type | Solved by |
|---|---|---|---|---|---|---|
| behnke1 | 10 x 20 | flexible jobshop | 90 | 90 | toy | OptalCP in < 1m |
| behnke2 | 10 x 20 | flexible jobshop | 91 | 91 | toy | OptalCP in < 1m |
| behnke3 | 10 x 20 | flexible jobshop | 91 | 91 | toy | OptalCP in < 1m |
| behnke4 | 10 x 20 | flexible jobshop | 97 | 97 | toy | OptalCP in < 1m |
| behnke5 | 10 x 20 | flexible jobshop | 91 | 91 | toy | OptalCP in < 1m |
| behnke6 | 20 x 20 | flexible jobshop | 125 | 125 | medium | OptalCP in < 1h |
| behnke7 | 20 x 20 | flexible jobshop | 117 | 124 | open | OptalCP |
| behnke8 | 20 x 20 | flexible jobshop | 123 | 123 | medium | OptalCP in < 1h |
| behnke9 | 20 x 20 | flexible jobshop | 125 | 125 | medium | OptalCP in < 1h |
| behnke10 | 20 x 20 | flexible jobshop | 127 | 127 | medium | OptalCP in < 1h |
| behnke11 | 50 x 20 | flexible jobshop | 223 | 228 | open | lb DOFP2026a | ub OptalCP |
| behnke12 | 50 x 20 | flexible jobshop | 213 | 219 | open | lb DOFP2026a | ub OptalCP |
| behnke13 | 50 x 20 | flexible jobshop | 223 | 229 | open | lb DOFP2026a | ub OptalCP |
| behnke14 | 50 x 20 | flexible jobshop | 221 | 230 | open | lb DOFP2026a | ub OptalCP |
| behnke15 | 50 x 20 | flexible jobshop | 219 | 228 | open | lb DOFP2026a | ub OptalCP |
| behnke16 | 100 x 20 | flexible jobshop | 391 | 412 | open | lb DOFP2026a | ub OptalCP |
| behnke17 | 100 x 20 | flexible jobshop | 392 | 401 | open | lb DOFP2026a | ub OptalCP |
| behnke18 | 100 x 20 | flexible jobshop | 390 | 396 | open | lb DOFP2026a | ub OptalCP |
| behnke19 | 100 x 20 | flexible jobshop | 395 | 400 | open | lb DOFP2026a | ub OptalCP |
| behnke20 | 100 x 20 | flexible jobshop | 391 | 398 | open | lb DOFP2026a | ub OptalCP |
| behnke21 | 10 x 40 | flexible jobshop | 85 | 85 | toy | OptalCP in < 1m |
| behnke22 | 10 x 40 | flexible jobshop | 87 | 87 | toy | OptalCP in < 1m |
| behnke23 | 10 x 40 | flexible jobshop | 85 | 85 | toy | OptalCP in < 1m |
| behnke24 | 10 x 40 | flexible jobshop | 87 | 87 | toy | OptalCP in < 1m |
| behnke25 | 10 x 40 | flexible jobshop | 87 | 87 | toy | OptalCP in < 1m |
| behnke26 | 20 x 40 | flexible jobshop | 113 | 113 | medium | OptalCP in < 1h |
| behnke27 | 20 x 40 | flexible jobshop | 122 | 122 | medium | OptalCP in < 1h |
| behnke28 | 20 x 40 | flexible jobshop | 114 | 114 | medium | OptalCP in < 1h |
| behnke29 | 20 x 40 | flexible jobshop | 116 | 117 | open | lb DOFP2026a | ub OptalCP |
| behnke30 | 20 x 40 | flexible jobshop | 120 | 120 | medium | OptalCP in < 1h |
| behnke31 | 50 x 40 | flexible jobshop | 226 | 226 | closed | lb DOFP2026a | ub OptalCP |
| behnke32 | 50 x 40 | flexible jobshop | 220 | 224 | open | lb DOFP2026a | ub OptalCP |
| behnke33 | 50 x 40 | flexible jobshop | 223 | 224 | open | lb DOFP2026a | ub OptalCP |
| behnke34 | 50 x 40 | flexible jobshop | 219 | 223 | open | lb DOFP2026a | ub OptalCP |
| behnke35 | 50 x 40 | flexible jobshop | 211 | 214 | open | lb DOFP2026a | ub OptalCP |
| behnke36 | 100 x 40 | flexible jobshop | 381 | 388 | open | lb DOFP2026a | ub OptalCP |
| behnke37 | 100 x 40 | flexible jobshop | 387 | 391 | open | lb DOFP2026a | ub OptalCP |
| behnke38 | 100 x 40 | flexible jobshop | 386 | 389 | open | lb DOFP2026a | ub OptalCP |
| behnke39 | 100 x 40 | flexible jobshop | 384 | 389 | open | lb DOFP2026a | ub OptalCP |
| behnke40 | 100 x 40 | flexible jobshop | 415 | 419 | open | OptalCP |
| behnke41 | 10 x 60 | flexible jobshop | 87 | 87 | toy | OptalCP in < 1m |
| behnke42 | 10 x 60 | flexible jobshop | 87 | 87 | toy | OptalCP in < 1m |
| behnke43 | 10 x 60 | flexible jobshop | 86 | 86 | toy | OptalCP in < 1m |
| behnke44 | 10 x 60 | flexible jobshop | 84 | 84 | toy | OptalCP in < 1m |
| behnke45 | 10 x 60 | flexible jobshop | 87 | 87 | toy | OptalCP in < 1m |
| behnke46 | 20 x 60 | flexible jobshop | 114 | 114 | medium | OptalCP in < 1h |
| behnke47 | 20 x 60 | flexible jobshop | 117 | 117 | medium | OptalCP in < 1h |
| behnke48 | 20 x 60 | flexible jobshop | 124 | 125 | open | lb DOFP2026a | ub OptalCP |
| behnke49 | 20 x 60 | flexible jobshop | 113 | 113 | medium | OptalCP in < 1h |
| behnke50 | 20 x 60 | flexible jobshop | 123 | 123 | medium | OptalCP in < 1h |
| behnke51 | 50 x 60 | flexible jobshop | 215 | 218 | open | lb DOFP2026a | ub OptalCP |
| behnke52 | 50 x 60 | flexible jobshop | 210 | 212 | open | lb DOFP2026a | ub OptalCP |
| behnke53 | 50 x 60 | flexible jobshop | 211 | 215 | open | lb DOFP2026a | ub OptalCP |
| behnke54 | 50 x 60 | flexible jobshop | 221 | 223 | open | lb DOFP2026a | ub OptalCP |
| behnke55 | 50 x 60 | flexible jobshop | 221 | 223 | open | lb DOFP2026a | ub OptalCP |
| behnke56 | 100 x 60 | flexible jobshop | 384 | 390 | open | lb DOFP2026a | ub OptalCP |
| behnke57 | 100 x 60 | flexible jobshop | 385 | 390 | open | lb DOFP2026a | ub OptalCP |
| behnke58 | 100 x 60 | flexible jobshop | 392 | 397 | open | lb DOFP2026a | ub OptalCP |
| behnke59 | 100 x 60 | flexible jobshop | 392 | 398 | open | lb DOFP2026a | ub OptalCP |
| behnke60 | 100 x 60 | flexible jobshop | 397 | 402 | open | lb DOFP2026a | ub OptalCP |
Birgin et al. (2014) - arbitrary precedence DAGs
[Results to be published soon]
Publications (best known solutions)
The upper and lower bounds come from
-
MG2000 (1 bounds in la) : M. Mastrolilli, L. Gambardella, Effective neighbourhood functions for the flexible job shop problem, Journal of Scheduling 3 (2000) 3–20
-
Quintiq (31 bounds in mk, dpp, abz, car and la) : Quintiq http://www.quintiq.com/optimization/fjssp-world-records.html (2013) - this site doesn’t exist anymore
-
CPO2013 (14 bounds in abz, la and dpp) : Jean-François Puget Solving flexible job shop scheduling problems (cp optimizer 12.6) https://www.ibm.com/developerworks/community/blogs/jfp/entry/solving_flexible_job_shop_scheduling_problems?lang=en (2013) - this site doesn’t exist anymore
-
DLLSXG2019 (8 bounds in dpp, abz and la) : J. Ding, Z. Lu, C.-M. Li, L. Shen, L. Xu, F. Glover (2019) A two-individual based evolutionary algorithm for the flexible job shop scheduling problem, in: Proceedings of the AAAI Conference on Artificial Intelligence, Vol. 33, 2019, pp. 2262–2271
-
CdGKGC2025 (14 bounds in #a, abz, car, la) : Marc-Emmanuel Coupvent des Graviers, Lotfi Kobrosly, Christophe Guettier, and Tristan Cazenave (2025). Updating Lower and Upper Bounds for the Job-Shop Scheduling Problem Test Instances CoRR abs/2504.16106
-
DOFP2026a (36 bounds in mk, behnke and la) : Diego Olivier Fernandez Pons -(2026) Personal communication, study / test to improve OptalCP
All other bounds were found with OptalCP