第三章约束推理()PPT课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2021/3/14
2021
10
约束语言
CONSTRAINTS CHIP COPS ILOG
2021/3/14
2021
11
CONSTRAINTS约束语言
CONSTRAINTS是一个面向电路描述的约束表示语言。 作为一个约束表示语言, 它使用了符号处理技术来求解数 学方程。在CONSTRAITS中,物理部件的功能及器件的结构都 用约束表示。这些约束一般是线性方程与不等式, 也包括条 件表达式。约束变量一般是表示物理量的实变量。也有一些 取离散值的变量。如开关的状态、三极管的工作状态等。系 统采用表达式推理与值推理。并实现相关制导的回溯。
-1,0,1。
•任意系数的线性方程与不等式。
•约束的布尔组合。
20•21代/3/14 数与三角方程。
பைடு நூலகம்
2021
7
概述
约束表示易于理解、编码及有效实现,它具有以下优点:
• 约束表示允许以说明性的方式来表达领域知识,表达
能力较强,应用程序只需指定问题的目标条件及数据间
的相互关系。因而具有逻辑表示的类似性质。
vs. Q1 in (2,7), Q2 in (1,3) …
2021
4
概述
一个约束满足问题(Constraint Satisfaction
Problem, 简称CSP) 包含一组变量与一组变量间的约
束。
▪变量表示领域参数,每个变量都有一个固定的值
域。一个变量的值域可能是有限的,例如一个布尔变
量的值域包含两个值;也可能是离散无限的,如整数
CHIP 主要应用于两个领域: 运筹学与硬件设计。 CHIP 缺乏类型机制,而这种机制对于表达领域概念是极其重
要的。 2021/3/14
2021
14
面向对象约束语言COPS
COPS系统利用面向对象技术,将说明性约束表达与类型层次 结合起来。在形式上吸收了常规语言,主要是面向对象的程序设 计语言的基本形式。内部求解时采用约束推理机制,使说明性约 束表达式与类型层次相结合,实现知识的结构化封装,充分发挥 两者的优点,力图实现一个具有较强表达能力和较高求解效率的 约束满足系统。
2021/3/14
2021
13
约束逻辑程序设计语言CHIP
CHIP(Constraint handling in Prolog) 就是这样较有影响 一个约束逻辑程序设计语言,其目的是简便、灵活而有效地解决 一大类组合问题。它通过提供几种新的计算域而增强逻辑程序设 计的能力;有限域、布尔项及有理项,对于每个计算域,都提供 有效的约束求解技术,即有限域上的一致性技术,布尔域的布尔 合一技术及有理数域上的单纯型法。除此以外,CHIP还包含一个 一般的延迟计算机制。
高级人工智能
第三章
约束推理
史忠植
中国科学院计算技术研究所
2021
1
第三章 约束推理
3.1 概述
3.2 回溯法
3.3 约束传播
3.4 回跳法
3.5 约束推理系统COPS
3.6 ILOG SOLVER
3.7 约束逻辑程序设计
2021/3/14
2021
2
八皇后问题
在八皇后问题中,处理过程不是根 据某种确定的计算法则,而是利用 试探和回溯的探索技术求解。为了 求得合法布局,在计算机中要存储 布局的当前状态。从最初的布局状 态开始,一步步地进行试探, 每试 探一步形成一个新的状态, 整个试 探过程形成了一棵隐含的状态树。
术,方程求解技术等, 都可以自然地嵌入约束系统。
2021/3/14
2021
8
约束推理
• 约束搜索 约束搜索主要研究有限域上的约束满足。对有限域而言, 约束满足问题一般情况下是 一个 NP 问题。
• 约束语言
2021/3/14
2021
9
约束搜索
• 回溯法。 • 约束传播。 • 智能回溯与真值维护。 • 可变次序例示。 • 局部修正法。
2021/3/14
2021
12
CONSTRAINTS约束语言
CONSTRAINTS 的一个优点是在类型层次中表示约束,用约束 来表示物理对象的功能与结构。其缺点是该语言缺乏类似于面向 对象语言中的方法那样的成分,不能定义特定于某个类的概念。 同时,约束传播方法比较单一,既缺乏实域上的区间传播机制, 也缺乏有限域上的 域传播机制。
2021
7 6 5 4 3 2 1 0
012 34567
3
采用DFS/BFS搜索策略
The DFS/BFS tree will enumerate up to
648 combinations (assume limit depth to 8).
64^8 = 2^48 = 2.8 x 10^14
Note redundancy: Q1 in (1,3), Q2 in (2,7) …
• 约束表示允许变量的域包含任意多个值,而不像命题
只取真假二值。所以它保存了问题的一些结构信息,如
变量域的大小、变量间的相关性等,从而为问题求解提供
启发式信息。
• 易于并行实现。因为约束网络上的信息传播可以认为是
同时的。
• 适合于递增型系统。约束可以递增式地加入到约束网络。
• 易于与领域相关的问题求解模型相衔接。各种数学规划技
域;也可能是连续的,如实数域。
{x1,x2,…xn},
{D1,D2,…Dn}, .
{4,5,6,7}
{red, 2021/3/14 green,blue}
2021
5
约束满足问题CSP
▪ Given: (1) set of variables, (2) domains of the variables (3) constraints that the variables have to satisfy
▪ Find: An assignment of values to the variables, so that these values satisfy all the given constraints.
▪ In optimisation problems, also specify optimisation
criterion
2021/3/14
2021
6
概述
▪约束可用于描述领域对象的性质、相互关系、任务
要求、目标等。约束 满足问题 的目标就是找到所有
变量的一个(或多个)赋值,使所有约束都得到满足。
•一元谓词。
•序关系语言,只包含偏序关系或实变量上的大小关
系。
•形如“x - y > c” 的方程。
•单位系数的线性方程与不等式,即所有的系数为