fbpx
维基百科

約束滿足問題

約束滿足問題Constraint satisfaction problemCSPs)是種數學的問題,其定義為一組物件(object),而這些物件需要滿足一些限制或條件。CSPs將其問題中的單元(entities)表示成在變數上有限條件的一組同質(homogeneous)的集合,這類問題透過「約束滿足方法」來解決。CSPs是人工智慧運籌學的熱門主題,因為它們公式中的規律,提供了共同基礎來分析、解決很多看似不相關的問題。通常約束滿足問題具有高度複雜性英语Complexity of constraint satisfaction,需要同時透過啟發式搜索聯合搜索英语Combinatorial search的方法,來在合理的時間內解決問題。布林可滿足性問題(SAT),可滿足性的理論英语Satisfiability modulo theories(SMT)和回答集程式設計(ASP)可以算是某種程度上的約束滿足問題。

以下舉例為幾個簡單的約束滿足問題:

這些ASP是BooleanSAT和SMT教學課程的人常會使用的範例。在現實情况下,約束滿足問題通常更困難,且難以用簡單的範例來表達,例如自動規劃英语Automated planning and scheduling資源配置

定義

正式來說,約束滿足問題定義為一個三元組 ,其中

 是變數的集合,
 是各個變數的定義域集合,而
 是限制條件的集合。

每個變數 可以在非空的定義域 中取出。每個限制條件(Constraint) 依序對應一對 ,其中 是變數的 元组 則是在定義域 中,其對應到的子集合上得到的 元组的關係。變數的定值(evaluation或assignment)是一個函數,其從變數的子集合映射到該變數子集合所對應到的定義域子集合中特定的值組成的集合,也就是

 其中 

如果 ,則此定值 滿足條件限制 

如果一個定值不違反任何的條件限制,我們說這個定值是無矛盾的(consistent)。 如果一個定值包含了所有的變數,我們說這個定值是完備的(complete)。 如果一個定值無矛盾而且完備的,我們說這個定值是一個解(solution),這樣的定值就是CSP的解。[1]

解決方法

定義域有限的約束滿足問題通常利用搜索方法來解決。最常用的技術是回溯法(backtracking)、約束傳遞constraint propagation,以及局部搜索local search的改良。

回溯法是一種遞迴演算法,它保持部分變數的賦值。一開始,所有的變數都還沒被賦值。在每一個步驟中,先選取一個變數,並且將所有可能的值依次賦予該變數。對於每一個值,在限制條件下的局部賦值的無矛盾性(consistency)都進行檢查。在符合無矛盾(consistency)的情況下,就會遞迴地往下呼叫。當所有的值都試過,演算法則回溯上層。在這個基本回溯演算法中,無矛盾性(consistency)被定義為滿足所有的條件限制,且這些條件限制的變數已被賦值。若干回溯變數存在。回溯法提高了檢查無矛盾性的效率。回跳法可以使在某些在某些情況中,透過回溯”一個以上的變數“,來省去部分的搜尋。約束學習則藉由減少新的條件限制,來避免部分的搜尋。可預見性也常常在回溯法中應用,用來去預期選擇一個變數或值的影響,因此常常用來預先判定一個子問題什麼時候滿足或不滿足。約束傳遞(Constraint propagation)技術是用來修飾一個CSP的方法。更精確地說,是一種方法,用來增強一種形式的局部一致性,是一種條件牽連到一組變數或條件限制的一致性。約束傳播應用在各個領域。一來,它把問題轉化為一個等價但通常是最簡單的解決方法。二來,他可以用來驗證滿足或不滿足於問題。一般來說他不保證會發生,但是它總是會發生一些形式的約束傳遞(Constraint propagation)或某些種類的問題。最有名的慣用的局部一致性是弧協調性,超弧一致性,和路徑一致性。最流行的方法是AC-3約束傳播演算法,該演算法可以執行弧的一致性。

局部搜索方法是不完全滿足的演算法。人們可能找到解決問題的方法,但這方法可能令我們失望。其反覆更改變數來改進整個任務,而得以運作。在每一步,要更改少量變數的值,與整體目標數量的增加條件限制以滿足的任務。最小衝突演算法是局部搜索演算法和基於特定CSPs原則。在實踐中,局部搜索似乎工作當這些變化也受隨機選擇。整合搜索和局部搜索被開發了,導致混合演算法。

理论

判定问题

CSPs也研究计算复杂性问题和有限模型理论。一个重要的问题是,是否为每一组的关系、套都可视为CSPs选自只使用关系设置不是在p或NP-完全问题。如果这样一个二分法真实可靠,那么CSPs提供已知的最大的一个NP子集,避免NP-intermediate问题,其存在是证明了Ladner's理论在这种假定下P≠NP。Schaefer's二分法理论处理所用变量相关时的情况布尔数学运算符,也就是,对一个定义域大小为2的。最近的一个促进dichotomoy二分定理推广到一个更大的类的事务。[2]


功能问题

相同的情形存在于功能类别之间,FP和#P。通过一般的Ladner's理论,FP和#P-complete也存在问题如果FP≠#P。在这种决策下,一个#CSP问题被定义为一组关系。每个问题需要输入布尔公式作为输入,任务是计算数字令人满意的工作。这可以进一步推广利用大域大小和附上一个权重,对每一个满意的赋值和计算这些权值的总和。众所周知任何复杂的#CSP权重问题既不是FP也不是#P-hard问题。[3]

变型

经典的造型约束满足问题定义了一个静态模型,呆板的约束。这个严格的模型的缺点是他很难容易的表现问题[4]。基于CSP定义的几种修改,提出使该模型广泛适应各种各样的问题。

动态CSPs

动态CSPs[5](DCSPs)是有用的,当原有的问题形式以某种方式改变,通常是由于约束集进化,因为要考虑环境[6]。DCSPs被当做一系列的静态CSPs,每一个都是转变的前一个变量和约束可以添加或删除限制(放松)。信息在初始的配方发现问题可以用来提炼下一个。解决的方法可分为根据信息的方法在转让:

  • Oracles:解决之前发现的序列CSPs作为启发式方法指导解决当前CSP从零开始。
  • Localrepair:每个CSP计算从解决部分问题之前的修复与Local search。局部搜索不约束。
  • Constraintrecording:新的约束是定义在每一阶段的搜索代表学习群决策不一致。在这些约束进行了新的CSP问题。

灵活的CSPs

经典的CSPs处理约束很严格,意味着强制的(每一解决方案必须满足所有问题)并且刻板的(意味着,以至于他们必须被完全满足,否则他们是完全违反了)。灵活的CSPs放宽假设,部分的放宽限制对不遵循的的也一样解决问题。这类似于preference-based planning。一些类型的灵活CSPs包括:

  • MAX-CSP,在那里有好些约束允许受侵犯的质量,并通过测量方法多少满意的约束。
  • 加权CSP,使每一个MAX-CSP违反约束加权根据预定义的偏好。因此,更重要的是满足约束的优先考虑。
  • CSP模糊的约束关系,在这种情况下约束满足是变量的连续函数,从完全满足到完全不满足。

参见

  • 约束满足
  • 声明式编程
  • 规划约束
  • 分布式约束满足问题(DisCSP)

参考文献

  1. ^ Stuart Jonathan Russell; Peter Norvig. Artificial Intelligence: A Modern Approach. Prentice Hall. 2010: Chapter 6. ISBN 9780136042594. 
  2. ^ Bodirsky, Manuel; Pinsker, Michael. Schaefer's theorem for graphs. CoRR. 2010,. abs/1011.2894: 2894. Bibcode:2010arXiv1011.2894B. arXiv:1011.2894 . 
  3. ^ Cai, Jin-Yi; Chen, Xi. . CoRR. 2011,. abs/1111.2384 [2012-04-08]. (原始内容存档于2017-01-17). 
  4. ^ Ian Miguel. . University of Edinburgh School of Informatics. [2014-05-04]. hdl:1842/326 doi:10.1.1.9.6733. (原始内容存档于2016-03-04) (英语). 
  5. ^ (PDF). [2012-04-08]. (原始内容 (PDF)存档于2012-11-17). 
  6. ^ Solution reuse in dynamic constraint satisfaction problems (页面存档备份,存于互联网档案馆), Thomas Schiex

扩展阅读

  • Steven Minton, Andy Philips, Mark D. Johnston, Philip Laird. Minimizing Conflicts: A Heuristic Repair Method for Constraint-Satisfaction and Scheduling Problems (PDF). Journal of Artificial Intelligence Research. 1993, 58: 161–205. [永久失效連結]

超链接

    • Tsang, Edward. . Academic Press. 1993 [2012-04-08]. (原始内容存档于2021-04-23). ISBN 0-12-701610-4
    • Chen, Hubie. A Rendezvous of Logic, Complexity, and Algebra. ACM Computing Surveys (ACM). December 2009, 42 (1): 1–32. doi:10.1145/1592451.1592453. 
    • Dechter, Rina. . Morgan Kaufmann. 2003 [2012-04-08]. (原始内容存档于2021-04-25). ISBN 1-55860-890-7
    • Apt, Krzysztof. Principles of constraint programming. Cambridge University Press. 2003. ISBN 0-521-82583-0
    • Lecoutre, Christophe. . ISTE/Wiley. 2009 [2012-04-08]. (原始内容存档于2017-11-07). ISBN 978-1-84821-106-3
    • TomásFeder,Constraintsatisfaction:apersonalperspective(页面存档备份,存于互联网档案馆),manuscript.
    • ForcedSatisfiableCSPBenchmarksofModelRB(页面存档备份,存于互联网档案馆
    • ,IanMiguel-slides.
    • -DissertationbyGuidoTackgivingagoodsurveyoftheoryandimplementationissues

    約束滿足問題, constraint, satisfaction, problem, csps, 是種數學的問題, 其定義為一組物件, object, 而這些物件需要滿足一些限制或條件, csps將其問題中的單元, entities, 表示成在變數上有限條件的一組同質, homogeneous, 的集合, 這類問題透過, 約束滿足方法, 來解決, csps是人工智慧和運籌學的熱門主題, 因為它們公式中的規律, 提供了共同基礎來分析, 解決很多看似不相關的問題, 通常具有高度複雜性, 英语, complexity, . 約束滿足問題 Constraint satisfaction problem CSPs 是種數學的問題 其定義為一組物件 object 而這些物件需要滿足一些限制或條件 CSPs將其問題中的單元 entities 表示成在變數上有限條件的一組同質 homogeneous 的集合 這類問題透過 約束滿足方法 來解決 CSPs是人工智慧和運籌學的熱門主題 因為它們公式中的規律 提供了共同基礎來分析 解決很多看似不相關的問題 通常約束滿足問題具有高度複雜性 英语 Complexity of constraint satisfaction 需要同時透過啟發式搜索和聯合搜索 英语 Combinatorial search 的方法 來在合理的時間內解決問題 布林可滿足性問題 SAT 可滿足性的理論 英语 Satisfiability modulo theories SMT 和回答集程式設計 ASP 可以算是某種程度上的約束滿足問題 以下舉例為幾個簡單的約束滿足問題 八皇后問題 圖著色問題 填字遊戲 數獨及其他一些邏輯益智遊戲這些ASP是BooleanSAT和SMT教學課程的人常會使用的範例 在現實情况下 約束滿足問題通常更困難 且難以用簡單的範例來表達 例如自動規劃 英语 Automated planning and scheduling 和資源配置 目录 1 定義 2 解決方法 3 理论 3 1 判定问题 3 2 功能问题 4 变型 4 1 动态CSPs 4 2 灵活的CSPs 5 参见 6 参考文献 7 扩展阅读 8 超链接定義 编辑正式來說 約束滿足問題定義為一個三元組 X D C displaystyle langle X D C rangle 其中 X X 1 X n displaystyle X X 1 X n 是變數的集合 D D 1 D n displaystyle D D 1 D n 是各個變數的定義域集合 而 C C 1 C n displaystyle C C 1 C n 是限制條件的集合 每個變數X i displaystyle X i 可以在非空的定義域D i displaystyle D i 中取出 每個限制條件 Constraint C j C displaystyle C j in C 依序對應一對 t j R j displaystyle langle t j R j rangle 其中t j X displaystyle t j subset X 是變數的k displaystyle k 元组 R j displaystyle R j 則是在定義域D i displaystyle D i 中 其對應到的子集合上得到的k displaystyle k 元组的關係 變數的定值 evaluation或assignment 是一個函數 其從變數的子集合映射到該變數子集合所對應到的定義域子集合中特定的值組成的集合 也就是 f X V displaystyle f X rightarrow V 其中X X p 1 X p 2 X p 3 X p k X V v 1 v 2 v 3 v k v i f X p i D p i displaystyle X X p 1 X p 2 X p 3 X p k in X V v 1 v 2 v 3 v k v i f X p i in D p i 如果f X p 1 f X p k R j displaystyle f X p 1 ldots f X p k in R j 則此定值f displaystyle f 滿足條件限制 t j R j displaystyle langle t j R j rangle 如果一個定值不違反任何的條件限制 我們說這個定值是無矛盾的 consistent 如果一個定值包含了所有的變數 我們說這個定值是完備的 complete 如果一個定值無矛盾而且完備的 我們說這個定值是一個解 solution 這樣的定值就是CSP的解 1 解決方法 编辑定義域有限的約束滿足問題通常利用搜索方法來解決 最常用的技術是回溯法 backtracking 約束傳遞constraint propagation 以及局部搜索local search的改良 回溯法是一種遞迴演算法 它保持部分變數的賦值 一開始 所有的變數都還沒被賦值 在每一個步驟中 先選取一個變數 並且將所有可能的值依次賦予該變數 對於每一個值 在限制條件下的局部賦值的無矛盾性 consistency 都進行檢查 在符合無矛盾 consistency 的情況下 就會遞迴地往下呼叫 當所有的值都試過 演算法則回溯上層 在這個基本回溯演算法中 無矛盾性 consistency 被定義為滿足所有的條件限制 且這些條件限制的變數已被賦值 若干回溯變數存在 回溯法提高了檢查無矛盾性的效率 回跳法可以使在某些在某些情況中 透過回溯 一個以上的變數 來省去部分的搜尋 約束學習則藉由減少新的條件限制 來避免部分的搜尋 可預見性也常常在回溯法中應用 用來去預期選擇一個變數或值的影響 因此常常用來預先判定一個子問題什麼時候滿足或不滿足 約束傳遞 Constraint propagation 技術是用來修飾一個CSP的方法 更精確地說 是一種方法 用來增強一種形式的局部一致性 是一種條件牽連到一組變數或條件限制的一致性 約束傳播應用在各個領域 一來 它把問題轉化為一個等價但通常是最簡單的解決方法 二來 他可以用來驗證滿足或不滿足於問題 一般來說他不保證會發生 但是它總是會發生一些形式的約束傳遞 Constraint propagation 或某些種類的問題 最有名的慣用的局部一致性是弧協調性 超弧一致性 和路徑一致性 最流行的方法是AC 3約束傳播演算法 該演算法可以執行弧的一致性 局部搜索方法是不完全滿足的演算法 人們可能找到解決問題的方法 但這方法可能令我們失望 其反覆更改變數來改進整個任務 而得以運作 在每一步 要更改少量變數的值 與整體目標數量的增加條件限制以滿足的任務 最小衝突演算法是局部搜索演算法和基於特定CSPs原則 在實踐中 局部搜索似乎工作當這些變化也受隨機選擇 整合搜索和局部搜索被開發了 導致混合演算法 理论 编辑判定问题 编辑 CSPs也研究计算复杂性问题和有限模型理论 一个重要的问题是 是否为每一组的关系 套都可视为CSPs选自只使用关系设置不是在p或NP 完全问题 如果这样一个二分法真实可靠 那么CSPs提供已知的最大的一个NP子集 避免NP intermediate问题 其存在是证明了Ladner s理论在这种假定下P NP Schaefer s二分法理论处理所用变量相关时的情况布尔数学运算符 也就是 对一个定义域大小为2的 最近的一个促进dichotomoy二分定理推广到一个更大的类的事务 2 功能问题 编辑 相同的情形存在于功能类别之间 FP和 P 通过一般的Ladner s理论 FP和 P complete也存在问题如果FP P 在这种决策下 一个 CSP问题被定义为一组关系 每个问题需要输入布尔公式作为输入 任务是计算数字令人满意的工作 这可以进一步推广利用大域大小和附上一个权重 对每一个满意的赋值和计算这些权值的总和 众所周知任何复杂的 CSP权重问题既不是FP也不是 P hard问题 3 变型 编辑经典的造型约束满足问题定义了一个静态模型 呆板的约束 这个严格的模型的缺点是他很难容易的表现问题 4 基于CSP定义的几种修改 提出使该模型广泛适应各种各样的问题 动态CSPs 编辑 动态CSPs 5 DCSPs 是有用的 当原有的问题形式以某种方式改变 通常是由于约束集进化 因为要考虑环境 6 DCSPs被当做一系列的静态CSPs 每一个都是转变的前一个变量和约束可以添加或删除限制 放松 信息在初始的配方发现问题可以用来提炼下一个 解决的方法可分为根据信息的方法在转让 Oracles 解决之前发现的序列CSPs作为启发式方法指导解决当前CSP从零开始 Localrepair 每个CSP计算从解决部分问题之前的修复与Local search 局部搜索不约束 Constraintrecording 新的约束是定义在每一阶段的搜索代表学习群决策不一致 在这些约束进行了新的CSP问题 灵活的CSPs 编辑 经典的CSPs处理约束很严格 意味着强制的 每一解决方案必须满足所有问题 并且刻板的 意味着 以至于他们必须被完全满足 否则他们是完全违反了 灵活的CSPs放宽假设 部分的放宽限制对不遵循的的也一样解决问题 这类似于preference based planning 一些类型的灵活CSPs包括 MAX CSP 在那里有好些约束允许受侵犯的质量 并通过测量方法多少满意的约束 加权CSP 使每一个MAX CSP违反约束加权根据预定义的偏好 因此 更重要的是满足约束的优先考虑 CSP模糊的约束关系 在这种情况下约束满足是变量的连续函数 从完全满足到完全不满足 参见 编辑约束满足 声明式编程 规划约束 分布式约束满足问题 DisCSP 参考文献 编辑 Stuart Jonathan Russell Peter Norvig Artificial Intelligence A Modern Approach Prentice Hall 2010 Chapter 6 ISBN 9780136042594 Bodirsky Manuel Pinsker Michael Schaefer s theorem for graphs CoRR 2010 abs 1011 2894 2894 Bibcode 2010arXiv1011 2894B arXiv 1011 2894 Cai Jin Yi Chen Xi Complexity of Counting CSP with Complex Weights CoRR 2011 abs 1111 2384 2012 04 08 原始内容存档于2017 01 17 Ian Miguel Dynamic Flexible Constraint Satisfaction and its Application to AI Planning 2001 University of Edinburgh School of Informatics 2014 05 04 hdl 1842 326 doi 10 1 1 9 6733 原始内容存档于2016 03 04 英语 Dechter R and Dechter A Belief Maintenance in Dynamic Constraint Networks In Proc of AAAI 88 37 42 PDF 2012 04 08 原始内容 PDF 存档于2012 11 17 Solution reuse in dynamic constraint satisfaction problems 页面存档备份 存于互联网档案馆 Thomas Schiex扩展阅读 编辑Steven Minton Andy Philips Mark D Johnston Philip Laird Minimizing Conflicts A Heuristic Repair Method for Constraint Satisfaction and Scheduling Problems PDF Journal of Artificial Intelligence Research 1993 58 161 205 永久失效連結 超链接 编辑CSPTutorialTsang Edward Foundations of Constraint Satisfaction Academic Press 1993 2012 04 08 原始内容存档于2021 04 23 ISBN 0 12 701610 4 Chen Hubie A Rendezvous of Logic Complexity and Algebra ACM Computing Surveys ACM December 2009 42 1 1 32 doi 10 1145 1592451 1592453 Dechter Rina Constraint processing Morgan Kaufmann 2003 2012 04 08 原始内容存档于2021 04 25 ISBN 1 55860 890 7 Apt Krzysztof Principles of constraint programming Cambridge University Press 2003 ISBN 0 521 82583 0 Lecoutre Christophe Constraint Networks Techniques and Algorithms ISTE Wiley 2009 2012 04 08 原始内容存档于2017 11 07 ISBN 978 1 84821 106 3 TomasFeder Constraintsatisfaction apersonalperspective 页面存档备份 存于互联网档案馆 manuscript Constraintsarchive ForcedSatisfiableCSPBenchmarksofModelRB 页面存档备份 存于互联网档案馆 Benchmarks XMLrepresentationofCSPinstances DynamicFlexibleConstraintSatisfactionandItsApplicationtoAIPlanning IanMiguel slides ConstraintPropagation DissertationbyGuidoTackgivingagoodsurveyoftheoryandimplementationissues 取自 https zh wikipedia org w index php title 約束滿足問題 amp oldid 75741004, 维基百科,wiki,书籍,书籍,图书馆,

    文章

    ,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。