An open API service indexing awesome lists of open source software.

https://github.com/th-rpy/algo_cds_ordanncement

Python Implementation of a flow shop scheduling algorithm (JACKSON)
https://github.com/th-rpy/algo_cds_ordanncement

Last synced: 4 months ago
JSON representation

Python Implementation of a flow shop scheduling algorithm (JACKSON)

Awesome Lists containing this project

README

        

# Jackson Algorithm with Python

Python's Implementation of a flow shop scheduling algorithm (JACKSON) (N tasks on M machines): CDS heuristic.

## Earliest Due Date (EDD)

EDD is algorithm proposed by Jackson in 1955 :

- Jackson proposed a EDD (Earliest Due Date) algorithm in 1995 that minimizes the maximum lateness of above given task model.
EDD says that, given a set of n independent tasks, any algorithm that executes the tasks in order of nondecreasing deadlines is optimal respect to minimizing the maximum lateness.

- The definition of maximum lateness is the maximum value among n task’s finish time minus its deadline.

- If a task set consists of n tasks, the schedulability condition can be perfomed by verifying the following n conditions.

## How does work:

Just download the code (open terminal or cmd and paste this line: `git clone https://github.com/th-rpy/Algo_Cds_Ordanncement.git` ). Then run `python AlgoEDD.py`. Once the code has run successfully, you will have a folder called `/output` and 3 subfolders in the output folder: `ImagesOutput` , `TxtsOutput` and `PdfsOutput`. In these folders you will find the results of the algorithm in Image, Text and PDF formats. You will also find in `PdfsOutput` a file called `Algo_Cds_Output.pdf` which describes Jackson's Algorithm, the code inputs/outputs and the different steps of the algorithm.

- Input:
- File (.txt) contains N linges (number of tasks). Each ligne must have M integer separate by `,` (number of machines).
- Enter the inputs with the console (cmd or terminal) and code will save its in text file.

## Demo (GIF)
![](https://github.com/th-rpy/Algo_Cds_Ordanncement/blob/master/img/Demo.gif?raw=true)

## Image Output (example)
![](https://github.com/th-rpy/Algo_Cds_Ordanncement/blob/master/output/ImagesOutput/output_diagram_gantt(1).png?raw=true)