约束推理PPT课程学习.pptx
《约束推理PPT课程学习.pptx》由会员分享,可在线阅读,更多相关《约束推理PPT课程学习.pptx(79页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、会计学1约束推理约束推理ppt第一页,共79页。2023/2/8史忠植 约束推理2第三章第三章 约束推理约束推理3.1 3.1 概述概述3.2 3.2 回溯法回溯法 3.3 3.3 约束约束(yush)(yush)传播传播 3.4 3.4 回跳法回跳法 3.5 3.5 约束约束(yush)(yush)推理系统推理系统COPS COPS 3.6 ILOG SOLVER3.6 ILOG SOLVER3.7 3.7 约束约束(yush)(yush)逻辑程序设计逻辑程序设计第1页/共79页第二页,共79页。在八皇后问题中,处理过程不是根据某种确定的计算法则,而是利用试探和回溯的探索(tn su)技术求
2、解。为了求得合法布局,在计算机中要存储布局的当前状态。从最初的布局状态开始,一步步地进行试探,每试探一步形成一个新的状态,整个试探过程形成了一棵隐含的状态树。八皇后八皇后(hunghu)(hunghu)问题问题765432100 1 23 4 5 6 7第2页/共79页第三页,共79页。采用采用DFS/BFSDFS/BFS搜索搜索(su su)(su su)策略策略The DFS/BFS tree will enumerate up to 648 combinations(assume limit depth to 8).648=248=2.8 x 1014Note redundancy:Q1
3、 in(1,3),Q2 in(2,7)vs.Q1 in(2,7),Q2 in(1,3)第3页/共79页第四页,共79页。2023/2/8史忠植 约束推理5概概 述述一个约束满足问题一个约束满足问题(Constraint Satisfaction Problem,(Constraint Satisfaction Problem,简称简称CSP)CSP)包含一组变量与一组变量间的约束。包含一组变量与一组变量间的约束。变量表示领域参数,每个变量都有一个固定的值域。一个变量表示领域参数,每个变量都有一个固定的值域。一个变量的值域可能是有限的,例如一个布尔变量的值域包含两个变量的值域可能是有限的,例如一
4、个布尔变量的值域包含两个值;也可能是离散无限的,如整数值;也可能是离散无限的,如整数(zhngsh)(zhngsh)域;也可能是连域;也可能是连续的,如实数域。续的,如实数域。x1,x2,xn,x1,x2,xn,D1,D2,Dn,.D1,D2,Dn,.4,5,6,7 4,5,6,7 red,green,blue red,green,blue 第4页/共79页第五页,共79页。约束约束(yush)(yush)满足问题满足问题CSPCSP GivenGiven:(1)set of (1)set of variablesvariables,(2)(2)domainsdomains of the va
5、riables of the variables (3)(3)constraints constraints that the variables have to satisfythat the variables have to satisfy FindFind:An assignment of values to the variables,An assignment of values to the variables,so that these values satisfy all the given constraints.so that these values satisfy a
6、ll the given constraints.In optimisation problems,also specify optimisation criterion In optimisation problems,also specify optimisation criterion 2023/2/86史忠植 约束推理第5页/共79页第六页,共79页。2023/2/8史忠植 约束推理7概概 述述 约束(yush)可用于描述领域对象的性质、相互关系、任务要求、目标等。约束(yush)满足问题 的目标就是找到所有变量的一个(或多个)赋值,使所有约束(yush)都得到满足。一元谓词。序关系语
7、言,只包含偏序关系或实变量上的大小关系。形如“x-y c”的方程。单位系数的线性方程与不等式,即所有的系数为 -1,0,1。任意系数的线性方程与不等式。约束(yush)的布尔组合。代数与三角方程。第6页/共79页第七页,共79页。2023/2/8史忠植 约束推理8概概 述述约束表示易于理解、编码及有效实现,它具有以下优点约束表示易于理解、编码及有效实现,它具有以下优点:约束表示允许以说明性的方式来表达领域知识,表达约束表示允许以说明性的方式来表达领域知识,表达能力较强,应用程序只需指定问题的目标条件及数据间能力较强,应用程序只需指定问题的目标条件及数据间的相互关系。因而具有逻辑表示的类似性质。
8、的相互关系。因而具有逻辑表示的类似性质。约束表示允许变量的域包含任意多个值,而不像命题约束表示允许变量的域包含任意多个值,而不像命题 只取真假二值。所以它保存了问题的一些结构只取真假二值。所以它保存了问题的一些结构(jigu)(jigu)信息,如信息,如变量域的大小、变量间的相关性等,从而为问题求解提供变量域的大小、变量间的相关性等,从而为问题求解提供启发式信息。启发式信息。易于并行实现。因为约束网络上的信息传播可以认为是易于并行实现。因为约束网络上的信息传播可以认为是同时的。同时的。适合于递增型系统。约束可以递增式地加入到约束网络。适合于递增型系统。约束可以递增式地加入到约束网络。易于与领域
9、相关的问题求解模型相衔接。各种数学规划技易于与领域相关的问题求解模型相衔接。各种数学规划技术,方程求解技术等术,方程求解技术等,都可以自然地嵌入约束系统。都可以自然地嵌入约束系统。第7页/共79页第八页,共79页。2023/2/8史忠植 约束推理9约束推理约束推理 约束搜索约束搜索主要研究有限域上的约束满足。对有限域而言,约束满足问题一般情况下是 一个(y)NP 问题。约束语言第8页/共79页第九页,共79页。2023/2/8史忠植 约束推理10约束约束(yush)(yush)搜索搜索 回溯法。约束传播。智能回溯与真值维护。可变次序(cx)例示。局部修正法。第9页/共79页第十页,共79页。2
10、023/2/8史忠植 约束推理11约束约束(yush)(yush)语言语言CONSTRAINTSCHIPCOPSILOG第10页/共79页第十一页,共79页。2023/2/8史忠植 约束推理12CONSTRAINTSCONSTRAINTS约束约束(yush)(yush)语言语言 CONSTRAINTS是一个面向电路描述的约束表示语言。作为一个约束表示语言,它使用了符号处理技术来求解数学方程。在CONSTRAITS中,物理部件的功能及器件的结构都用约束表示。这些约束一般是线性方程与不等式,也包括条件表达式。约束变量一般是表示物理量的实变量。也有一些取离散值的变量。如开关的状态、三极管的工作状态等
11、。系统采用表达式推理与值推理。并实现(shxin)相关制导的回溯。第11页/共79页第十二页,共79页。2023/2/8史忠植 约束推理13CONSTRAINTSCONSTRAINTS约束约束(yush)(yush)语言语言 CONSTRAINTS 的一个优点是在类型层次中表示约束,用约束来表示物理对象的功能与结构。其缺点是该语言缺乏类似于面向(min xin)对象语言中的方法那样的成分,不能定义特定于某个类的概念。同时,约束传播方法比较单一,既缺乏实域上的区间传播机制,也缺乏有限域上的 域传播机制。第12页/共79页第十三页,共79页。2023/2/8史忠植 约束推理14约束逻辑约束逻辑(l
12、u j)(lu j)程序设计语言程序设计语言CHIPCHIP CHIP(Constraint handling in Prolog)就是这样较有影响一个约束逻辑程序设计语言,其目的是简便、灵活而有效地解决一大类组合问题。它通过提供(tgng)几种新的计算域而增强逻辑程序设计的能力;有限域、布尔项及有理项,对于每个计算域,都提供(tgng)有效的约束求解技术,即有限域上的一致性技术,布尔域的布尔合一技术及有理数域上的单纯型法。除此以外,CHIP还包含一个一般的延迟计算机制。CHIP 主要应用于两个领域:运筹学与硬件设计。CHIP 缺乏类型机制,而这种机制对于表达领域概念是极其重要的。第13页/共
13、79页第十四页,共79页。2023/2/8史忠植 约束推理15面向对象约束面向对象约束(yush)(yush)语言语言COPSCOPS COPS系统利用面向对象技术,将说明性约束表达与类型层次结合起来。在形式上吸收了常规(chnggu)语言,主要是面向对象的程序设计语言的基本形式。内部求解时采用约束推理机制,使说明性约束表达式与类型层次相结合,实现知识的结构化封装,充分发挥两者的优点,力图实现一个具有较强表达能力和较高求解效率的约束满足系统。第14页/共79页第十五页,共79页。2023/2/8史忠植 约束推理16面向对象约束面向对象约束(yush)(yush)语言语言COPSCOPSCOPS
14、COPS的设计考虑了软件工程的应用要求,尽量将一个不确定问的设计考虑了软件工程的应用要求,尽量将一个不确定问题确定化:它允许条件语句与循环语句,而不是单题确定化:它允许条件语句与循环语句,而不是单纯以递归的形式来实现迭代计算;纯以递归的形式来实现迭代计算;通过类方法的重栽实现同一通过类方法的重栽实现同一约束的不同实现,提高了程序的执行效率。约束的不同实现,提高了程序的执行效率。COPSCOPS系统同时是一个系统同时是一个渐增式的开放系统,用户能通过类型层次定义,实现新的数据类渐增式的开放系统,用户能通过类型层次定义,实现新的数据类型和新的约束关系。约束语言型和新的约束关系。约束语言COPSCO
15、PS具有许多人工智能程序设计语具有许多人工智能程序设计语言的特点,如约束传播、面向目标和数据驱动的问题求解、有限言的特点,如约束传播、面向目标和数据驱动的问题求解、有限(yuxin)(yuxin)步的回溯、对象分层中的继承等。步的回溯、对象分层中的继承等。第15页/共79页第十六页,共79页。2023/2/8史忠植 约束推理17 在实际应用中,算法的表现形式千变万化,但是算法的情况也和数据结构类似(li s),许多算法的设计思想具有相似之处,我们可以对它们分类进行学习和研究。常用的算法大致有如下一些:贪心法分治法:如二分法检索回溯法动态规划法局部搜索法分支限界法常用常用(chn yn)的算法的
16、算法第16页/共79页第十七页,共79页。2023/2/8史忠植 约束推理18 评价(pngji)一个程序优劣的重要依据是看这个程序的执行需要占用多少机器资源。人们最关心的就是程序所用算法运行时所要花费的时间代价和程序中使用的数据结构占有的空间代价。算法的空间代价(或称空间复杂性):当被解决问题的规模(以某种单位计算)由1增至n时,解该问题的算法所需占用的空间也以某种单位由f(1)增至f(n),这时我们称该算法的空间代价是f(n)。算法的时间代价(或称时间复杂性):当问题规模以某种单位由1增至n时,对应算法所耗费的时间也以某种单位由g(1)增至g(n),这时我们称算法的时间代价是g(n)。算法
17、算法(sun f)分析分析第17页/共79页第十八页,共79页。2023/2/8史忠植 约束推理19穷尽搜索穷尽搜索(su su)方法方法穷尽穷尽(qingjn)搜索方法搜索方法 即产生所有可能的树,然后根据评价标即产生所有可能的树,然后根据评价标准选择一棵最优的树。准选择一棵最优的树。Exhaustive-Search-Top(P)where P is a CSP of the form(V,D,C)1.f:=the null assignment2.return Exhaustive-Search(f,P)第18页/共79页第十九页,共79页。2023/2/8史忠植 约束推理20穷尽穷尽(
18、qingjn)搜索方法搜索方法 Exhaustive-Search(f,P)1.if f is a total assignment of the variables in P2.if f satisfies the constraints in P3.answer:=f4.else 5.answer:=Unsat6.else 7.v:=some variable in P that is not yet assigned a value by f8.answer:=Unsat9.for each value while answer=Unsat10.f(v):=11.answer:=Exha
19、ustive-Search(f,P)12.return answer第19页/共79页第二十页,共79页。2023/2/8史忠植 约束推理21贪心贪心(tnxn)法法贪心法把构造可行解的工作分阶段来完成。在各个贪心法把构造可行解的工作分阶段来完成。在各个贪心法把构造可行解的工作分阶段来完成。在各个贪心法把构造可行解的工作分阶段来完成。在各个阶段,选择那些阶段,选择那些阶段,选择那些阶段,选择那些(nxi)(nxi)在某些意义下是局部最优的方案,在某些意义下是局部最优的方案,在某些意义下是局部最优的方案,在某些意义下是局部最优的方案,期望各阶段的局部最优的选择带来整体最优。期望各阶段的局部最优的
20、选择带来整体最优。期望各阶段的局部最优的选择带来整体最优。期望各阶段的局部最优的选择带来整体最优。例:例:例:例:DijkstraDijkstra的最短路径算法、的最短路径算法、的最短路径算法、的最短路径算法、KruskalKruskal的求最小生成的求最小生成的求最小生成的求最小生成树算法、信号灯问题树算法、信号灯问题树算法、信号灯问题树算法、信号灯问题第20页/共79页第二十一页,共79页。2023/2/8史忠植 约束推理22回溯回溯(hu s)算法算法有些问题需要彻底的搜索才有些问题需要彻底的搜索才能解决问题,然而能解决问题,然而(rn r),彻,彻底的搜索要以大量的运算时间底的搜索要以
21、大量的运算时间为代价,对于这种情况可以通为代价,对于这种情况可以通过回溯法来去掉一些分支,从过回溯法来去掉一些分支,从而大大减少搜索的次数。而大大减少搜索的次数。八皇后问题八皇后问题迷宫问题迷宫问题深度优先周游树或图深度优先周游树或图约束推理 ppt第21页/共79页第二十二页,共79页。四皇后问题中隐含(yn hn)的状态树 四皇后四皇后(hunghu)(hunghu)问题问题第22页/共79页第二十三页,共79页。2023/2/8史忠植 约束推理244-Queens Puzzle第23页/共79页第二十四页,共79页。2023/2/8史忠植 约束推理254-Queens Tree第24页/
22、共79页第二十五页,共79页。回溯回溯(hu s)算法算法Backtrack Searchempty assignment1st variable2nd variable3rd variableAssignment=第25页/共79页第二十六页,共79页。回溯回溯(hu s)算法算法Backtrack Searchempty assignment1st variable2nd variable3rd variableAssignment=(var1=v11)第26页/共79页第二十七页,共79页。回溯回溯(hu s)算法算法Backtrack Searchempty assignment1st
23、 variable2nd variable3rd variableAssignment=(var1=v11),(var2=v21)第27页/共79页第二十八页,共79页。回溯回溯(hu s)算法算法Backtrack Searchempty assignment1st variable2nd variable3rd variableAssignment=(var1=v11),(var2=v21),(var3=v31)第28页/共79页第二十九页,共79页。回溯回溯(hu s)算法算法Backtrack Searchempty assignment1st variable2nd variable
24、3rd variableAssignment=(var1=v11),(var2=v21),(var3=v32)第29页/共79页第三十页,共79页。回溯回溯(hu s)算法算法Backtrack Searchempty assignment1st variable2nd variable3rd variableAssignment=(var1=v11),(var2=v22)第30页/共79页第三十一页,共79页。回溯回溯(hu s)算法算法Backtrack Searchempty assignment1st variable2nd variable3rd variableAssignment
25、=(var1=v11),(var2=v22),(var3=v31)第31页/共79页第三十二页,共79页。2023/2/8史忠植 约束推理33回溯回溯(hu s)算法算法 Backtracking-Top(P)1 f:=the null assignment2 return Backtracking(f,P)第32页/共79页第三十三页,共79页。2023/2/8史忠植 约束推理34回溯回溯(hu s)算法算法 Backtracking(f,P)1 if f is a total assignment of the variables in P2 answer:=f3 else 4 v:=so
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 约束 推理 PPT 课程 学习
限制150内