Gantt chart for scheduling problems

The gantt_scheduling function creates a Gantt chart to visualize job scheduling on machines, with and without duplicate machines across jobs
48 Downloads
Updated 23 May 2024

View License

The 'gantt_scheduling' function generates a Gantt chart to visualize the scheduling of jobs across multiple machines over time. The function supports scenarios with and without duplicate machine mappings.
PARAMETERS:
  • startTime (matrix): A J x M matrix where each element startTime(j, m) represents the start time of job j on machine m.
  • completionTime (matrix): A J x M matrix where each element completionTime(j, m) represents the completion time of job j on machine m.
  • M (integer): The total number of machines.
  • J (integer): The total number of jobs.
  • graph_title (string, optional): The title of the Gantt chart.
  • M0 (integer, optional): The number of original machines before considering duplicates. This parameter is required if map_duplicate is provided.
  • map_duplicate (matrix, optional): A matrix that maps duplicate machines to their original machine indices. The first column indicates the duplicate machine index, and the second column indicates the corresponding original machine index. This parameter is used if there are duplicate machine mappings. Note: All machines must be present in this matrix. Thus, for non-duplicated machines, the value in the first column (duplicate machine value) must be equal to the second column (original machine value).
USAGE:
  • Without Duplicates: If neither M0 nor map_duplicate is provided, the function assumes there are no duplicate machines.
  • With Duplicates: If M0 and map_duplicate are provided, the function adjusts the Gantt chart to account for duplicate machine mappings.
DEPENDENCIES:
  1. maxdistcolor: A function from MATLAB File Exchange used to generate distinguishable colors for jobs.
  2. legendUnq: A function from MATLAB File Exchange used to create unique legends for the chart

Cite As

Bozzi, Alessandro, et al. “Dynamic MPC-Based Scheduling in a Smart Manufacturing System Problem.” IEEE Access, vol. 11, Institute of Electrical and Electronics Engineers (IEEE), 2023, pp. 141987–96, doi:10.1109/access.2023.3341504.

View more styles
MATLAB Release Compatibility
Created with R2024a
Compatible with any release
Platform Compatibility
Windows macOS Linux
Acknowledgements

Inspired by: Maximally Distinct Color Generator, legendUnq

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
1.0.2

Added a more precise explanation of the map_duplicate variable to help user in building properly the matrix.

1.0.1

Graph title is now an optional parameter to speed up function call

1.0.0