我联系您是为了了解“如何将流水车间调度问题”转化为布尔可满足性。
我已经对 N*N 数独、N 皇后和班级调度问题进行了此类简化,但我对如何将流水车间转换为 SAT 有一些问题。
SAT 问题如下所示:
目标是:使用不同的布尔变量,找到每个变量的影响以使“句子”为真。 (如果可以找到解决方案)。
我使用遗传算法创建自己的求解器,能够找到解决方案并证明何时没有解决方案。现在,我尝试解决不同的 NP 问题,例如 Flow Shop。
流水车间调度问题是车间或集团车间的一类调度问题,其中流程控制应能够对每个作业以及在一组机器或其他资源上进行的处理进行适当的排序 1,2,...,m遵守给定的加工指令。
尤其需要以最少的空闲时间和最少的等待时间来维持处理任务的连续流。
流水车间调度是作业车间调度的一种特殊情况,其中对所有作业执行的所有操作都有严格的顺序。
流水车间调度既可以应用于生产设施,也可以应用于计算设计。
(http://en.wikipedia.org/wiki/Flow_shop_scheduling http://en.wikipedia.org/wiki/Flow_shop_scheduling)
结果是一系列将经历每个研讨会的作业,图形结果将如下所示:
因此,为了表示流水作业实例,在输入中我有这样的文件:
2 4
4 26 65 62
63 83 57 9
这个文件意味着我有 2 个商店和 4 个作业,以及每个作业在每台机器上的所有持续时间。
目标:找到最小化 C_max 的序列,C_max 是最后一台机器上最后一个作业的结束日期(如果您愿意)。
我的 Flow-Shop 目前非常简单,但我不知道如何将它们形式化,以便创建一个 CNF 文件来执行我的 SAT 求解器。
如果你们中的一个人有一些想法:文章?一个想法的开始?
这个问题的下一部分:Flow/Job Shop 到布尔可满足性 [多项式时间缩减] 第 2 部分 https://stackoverflow.com/questions/29651856/flow-job-shop-to-boolean-satisfiability-polynomial-time-reduction-part-2