A framework to explore algorithms for Job-Shop Schedule Problem (JSSP).
-
Pre-defined solvers for benchmark.
-
Implement and test your solver efficiently.
According to the problem description here:
In the classical Job-Shop Schedule Problem, there are
$n$ jobs that must be processed on$m$ machines. Each job consists of a sequence of different tasks. Each task needs to be processed during an uninterrupted period of time on a given machine.
In general, JSSP can be modeled in direct or indirect ways, i.e., mathematical model, and disjunctive graph.
- mathematical model - take
start_time
of each task as variable and solve it directly; - disjunctive graph - solve the sequence of tasks assigned in each machine first and deduce
start_time
accordingly.
A detailed description in Chinese here.
python setup.py develop
- Load or create a problem
- Solve problem with built-in solver
- Build new solver
- Run solvers benchmark
- Class diagram
Combined documents in Chinese here 作业车间调度问题求解框架.
The project is licensed under the terms of the Apache License 2.0.