中文

PyJobShop:使用约束规划在Python中求解调度问题

最优化与控制 2025-02-20 v1

摘要

本文介绍了PyJobShop,这是一个用于通过约束规划求解调度问题的开源Python库。PyJobShop提供了一个易于使用的建模接口,支持多种调度问题,包括柔性作业车间问题和资源受限项目调度问题等知名变体。PyJobShop集成了两个最先进的约束规划求解器:Google的OR-Tools CP-SAT和IBM ILOG的CP Optimizer。我们利用PyJobShop对来自机器调度和项目调度文献的9000多个基准实例进行了大规模数值实验,比较了OR-Tools和CP Optimizer的性能。虽然CP Optimizer在排列调度和大规模问题上表现更好,但OR-Tools在作业车间调度和项目调度问题上具有很强的竞争力,同时完全开源。通过提供一种易于使用且经过测试的约束规划调度实现,我们希望PyJobShop能够帮助研究人员和从业者将约束规划应用于现实世界的调度问题。

关键词

引用

@article{arxiv.2502.13483,
  title  = {PyJobShop: Solving scheduling problems with constraint programming in Python},
  author = {Leon Lan and Joost Berkhout},
  journal= {arXiv preprint arXiv:2502.13483},
  year   = {2025}
}

备注

24 pages, 1 figure