Skip to content

A Comprehensive Library for Solving Machine Scheduling Problems Using Genetic Algorithms

License

Notifications You must be signed in to change notification settings

Valdecy/ga_scheduler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 

Repository files navigation

GA Scheduler

Overview

GA Scheduler is an advanced scheduling tool that leverages genetic algorithms to optimize single, parallel, flow shop, and job shop machines scheduling problems. Multiple objectives can be addressed such as makespan, weighted tardiness, total waste changeover between jobs, total setup times changeover between jobs, total completion time and total of late jobs. Additionally, the library provides a comprehensive way to visualize scheduling results through Gantt charts.

Features

  • Scheduling Machine Environments: Supports single machine, parallel machines, flow shop, and job shop scheduling problems.
  • Multi-Objective Optimization: Supports optimization for multiple objectives including makespan, weighted tardiness, total waste changeover between jobs, setup times changeover between jobs, total completion time and total of late jobs.
  • Genetic Algorithm Integration: Utilizes a GA to efficiently explore the solution space and find optimal or near-optimal job sequences.
  • Many or Multiobjective Algorithm Integration: Alternatively, the multiobjective problem can be solved using the ECMOA (Elitist Combinatorial Multiobjective Optimization Algorithm), which returns the Pareto Front as the solution.
  • Brute Force: For small problem instances, the brute force search can be used to find the optimal job sequence.
  • Customizability: Allows customization of job sequences, setup times, due dates, and more.
  • Visualization: Generates Gantt charts to visualize the scheduling of jobs across machines.

Usage

  1. Install
pip install ga_scheduler
  1. Try it in Colab:

a) Multiobjective - Weighted

  • Parallel Machines Scheduling - Brute Force ( Colab Demo )
  • Parallel Machines Scheduling - Genetic Algorithm ( Colab Demo )
  • Flow Shop Machines Scheduling - Brute Force ( Colab Demo )
  • Flow Shop Machines Scheduling - Genetic Algorithm ( Colab Demo )
  • Job Shop Machines Scheduling - Brute Force ( Colab Demo )
  • Job Shop Machines Scheduling - Genetic Algorithm ( Colab Demo )

b) Multiobjective - Pareto Front

About

A Comprehensive Library for Solving Machine Scheduling Problems Using Genetic Algorithms

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages