一种调度算法

时间:2012-04-05 08:28:14

标签: java algorithm ejb

我正在寻找帮助设计医疗审查委员会的调度算法: 每天都有数百名顾客从14天后开始安排专业医生。 每位患者可能需要访问一位以上的医生,在极端情况下最多可以访问5位。

有固定数量的房间,其中一些房间配有专门的设备。对于某些会议,只能使用特定的房间。

每位医生都有一个特定的时间表,但通常在14:00到19:00之间。 主要要求是让每位患者只来一次。

许多禁忌症包括与同一位医生进行第二次就诊,避免利益冲突(患者和医生彼此了解)等。医院/居民问题不合适,主要是因为制约因素。我们正在尝试使用优先级排序方案的解决方案,然后尝试重新安排例外。

此时我们正在尝试定义算法,这是管理医疗审查委员会的整个系统的一部分。 系统基于Java,FE为dojo,BE为EJB。

1 个答案:

答案 0 :(得分:3)

这是一个可能因为过于本地化而无法关闭的问题。这对别人没什么帮助。但这是一个有趣的问题,所以我想我会抛出一些想法。

  • 您需要先找到最复杂案件的匹配。
  • 寻找“最适合”的解决方案。如果你能在另一天填满,不要在空旷的一天花时间。
  • 您将不得不想办法迭代匹配,以便尝试各种各样的可能性。某种方式退回,做出不同的选择,然后继续而不进入无限循环。
  • 你可以做到(比方说)80%,然后换人。与2和1或其他东西交换3小时的约会。目标是使计划保持最“灵活性”。
  • 您需要确定自己的交换规则。是什么让时间表变得更好?

以下是一堆SO问题供您阅读:

希望其中一些有用。