Scheduling heuristics are commonly used to solve dynamic scheduling problems in real-world applications. However, designing effective heuristics can be time-consuming and often leads to suboptimal performance. Genetic programming has been widely used to automatically learn scheduling heuristics. In recent years, reinforcement learning has also gained attention in this field. Understanding their strengths and weaknesses is crucial for developing effective scheduling heuristics. This paper takes a typical genetic programming method and a typical reinforcement learning method in dynamic flexible job shop scheduling for investigation. The results show that the investigated genetic programming algorithm outperforms the studied reinforcement learning method in the examined scenarios. Also, the study reveals that the compared reinforcement learning method is more stable as the amount of training data changes, and the investigated genetic programming method can learn more effective scheduling heuristics as training data increases. Additionally, the study highlights the potential and value of genetic programming in real-world applications due to its good generalization ability and interpretability. Based on the results, this paper suggests using the investigated reinforcement learning method when training data is limited and stable results are required, and using the investigated genetic programming method when training data is sufficient and high interpretability is required.
History
Preferred citation
Xu, M., Mei, Y., Zhang, F. & Zhang, M. (2024). Genetic Programming and Reinforcement Learning on Learning Heuristics for Dynamic Scheduling: A Preliminary Comparison. IEEE Computational Intelligence Magazine, 19(2), 18-33. https://doi.org/10.1109/MCI.2024.3363970