每次我在同一个问题上运行 minisat 时,我都想得到不同的解决方案。我可以通过使用 minisat 的“rnd-seed”参数来做到这一点。它只是随机化变量选择,所以每次我都能得到不同的解决方案。即使此参数在我的机器(Ubuntu16)上完美运行,它也不适用于在 Ubuntu 机器上运行的 gcloud(谷歌云)。
我想我遗漏了一小部分,但我不知道那是什么。
注意:我不想将解决方案的谈判提供给 minisat 以获得不同的解决方案。我实际上需要随机化变量选择。
编辑:让我解释一下为什么我需要随机解决方案。我解决了很多 SAT 问题,通常这些 SAT 问题看起来很像。所以,如果我不能随机变量选择,我大部分时间都会得到非常相似的解决方案,这是我不想要的。因此,我实际上并没有在同样的问题上运行 minisat。
Edit-2:@sascha 想让我解释一下“有效”和“无效”的含义。当我在我的电脑上运行一个 cnf 文件时,每次我得到不同的解决方案。但是,当我在 gcloud 机器上运行相同的 cnf 文件时,我总是得到相同的解决方案。