Skip to content

Latest commit

 

History

History
52 lines (32 loc) · 2.01 KB

README.md

File metadata and controls

52 lines (32 loc) · 2.01 KB

Job-Shop Schedule Problem Solving Framework

A framework to explore algorithms for Job-Shop Schedule Problem (JSSP).

  • Pre-defined solvers for benchmark.

    • Google OR-Tools Constraint Programming solver
    • Mathematical solvers (CBC, SCIP, Gurobi) based on COIN-OR PuLP
    • Priority dispatching
    • Tabu search
    • Genetic algorithm
    • Genetic programming
    • Reinforcement learning
  • Implement and test your solver efficiently.

Problem description

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.

Installation

python setup.py develop

Documentation

Combined documents in Chinese here 作业车间调度问题求解框架.

License

The project is licensed under the terms of the Apache License 2.0.