4女王,最小冲突

时间:2013-12-29 23:47:07

标签: conflict min n-queens

我想帮助min-conflicts algorithm

  A B C D
1 _ _ Q Q
2 Q _ _ _
3 _ _ _ _
4 _ Q _ _

如果我们在这一点上,

  • 算法会选择随机移动CD,因为它们都会产生相同数量的冲突(C与{{{ 1}},DD)冲突,
  • 会选择C,因为我们可以移动D的最佳位置是第3行,这将导致1次冲突,如果我们选择{{1}并在第3行中移动它将导致0次冲突。

1 个答案:

答案 0 :(得分:0)

维基百科页面中的相关行:

 var <-- a randomly chosen variable from the set of conflicted variables CONFLICTED[csp]
 value <-- the value v for var that minimizes CONFLICTS(var,v,current,csp)
 set var = value in current_state
  1. var表示女王C或D的位置,随机选择。
  2. var设置为所述女王的位置,以最小化冲突给予其余的董事会
  3. 所以,这是你的第一选择,“algoryth随机选择移动C或D ......”,但不是“因为它们都会产生相同数量的冲突。” C或D,因为那些参与一个或多个冲突。

    它确实提到“如果最少数量的冲突存在多个值,则会随机选择一个。”一旦理解了算法的基本公式,似乎可能会有这种修改,也可能被视为最小约束搜索。