最近有个需求,做排课系统的调研,查了几天资料,写了写 DEMO ,发现难度还是不小的。发现常用的一个是 Google 的 OR-Tools ,一个是 OptaPlanner 。不知道有没有在这个行业的大佬,帮我解解惑 :)
1.整体的实现路径 3 个部分:页面(选择各种条件,XML 或 JSON 格式输出)-> 算法+问题解释器 -> 排课结果 -> 反馈到页面中去
是不是约束限制( Hard ) + 关联要求( Soft )使用算法、问题解释器进行计算,然后得出结果,再投入其他优化算法进行再次计算,最后得出 Best Score 呢?核心难度是不是主要在算法的选择和组合,以及最终得分到底什么算是好呢。
2.规模大后复杂度问题 我用 OptaPlanner 写了个 DEMO ,样本比较小(十几门课,60 个老师,8 个约束),Hard 和 Soft 也相对简单,是不是当规模上去后,求解的时间会很长呢。是否会用到分布式架构解决单机性能瓶颈问题
3.调研了下市面上的产品
发现这些产品其实已经比较成熟了,有没有曾经在相关行业公司的朋友,给我解解惑
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.