用Java实现调度算法

mar*_*tin 5 java algorithm optimization scheduling data-structures

有没有人曾经处理过Java的作业调度问题?我必须处理资源受限的项目调度问题,并想要求一些实用技巧.有没有好的库可用于实现算法?我应该使用哪些有效的数据结构?

编辑:

好像我没有解释得对.我想解决资源受限的项目调度问题(RCPSP),它已知具有不同启发式的NP-complete.问题定义如下:

项目由一组A = {1,...,n}的活动组成,这些活动必须在一组R = {1,...,m}的资源上执行.活动j∈A要求rjk≥0个单位的资源k∈R在其非可抢占处理时间pj≥0.每个资源k∈R具有有限容量Rk> 0.在活动之间存在优先关系,例如活动j∈A在所有直接前任完成之前无法启动.目标是找到优先级和资源容量可行的时间表,以最小化整体完工时间.

Bor*_*vić 1

OpenSymphony Quartz Scheduler是完成该任务的正确工具。

来自 Quartz 的网页:

“什么是石英?

Quartz 是一种功能齐全的开源作业调度服务,几乎可以与任何 Java EE 或 Java SE 应用程序集成或一起使用 - 从最小的独立应用程序到最大的电子商务系统。Quartz 可以用来创建简单或复杂的调度来执行数十、数百甚至数万个作业;其任务被定义为标准 Java 组件的作业,这些组件实际上可以执行您可以对其进行编程的任何操作。Quartz Scheduler 包含许多企业级功能,例如 JTA 事务和集群。

Quartz 可以免费使用,并根据 Apache 2.0 许可证获得许可。

请阅读我们的概述以获取更多快速信息。”