假设我想构建一个函数,可以在一周内正确安排三个公交车司机开车,并具有以下约束:
- 每位司机每周驾驶次数不得超过五次
- 每天必须有两个司机开车
- 他们每周休息一天(不会与其他司机的休息日发生冲突)
什么样的算法可以用来解决这样的问题?
我浏览了几个网站,发现了这些:
1) Backtracking algorithm (brute force)
2) Genetic algorithm
3) Constraint programming
坦率地说,这些对我来说都是“文化冲击”,因为我过去从未学过任何线性编程。我想知道两件事:
1) 哪种算法最适合上述情况?
2)解决这个问题的最简单算法是什么?
3)请建议我可以研究的任何其他算法来解决上述问题。