第03章约束推理优秀PPT.ppt
《第03章约束推理优秀PPT.ppt》由会员分享,可在线阅读,更多相关《第03章约束推理优秀PPT.ppt(68页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第03章约束推理章约束推理现在学习的是第1页,共68页2023/2/23史忠植 高级人工智能2第三章第三章 约束推理约束推理3.1 概述概述3.2 回溯法回溯法 3.3 约束传播约束传播 3.4 回跳法回跳法 3.5 约束推理系统约束推理系统COPS 3.6 ILOG SOLVER现在学习的是第2页,共68页2023/2/23史忠植 高级人工智能33.1 3.1 概概 述述最优化问题最优化问题 经济学所推崇的经济学所推崇的帕累托帕累托最优最优:几个人拎着水桶在一个水龙头前面排队几个人拎着水桶在一个水龙头前面排队打水,水桶有大有小。他们怎样排队,才能打水,水桶有大有小。他们怎样排队,才能使得总
2、的排队时间最短。这是一个寻求使得总的排队时间最短。这是一个寻求“最最优化优化”的题目,目标是节省总的排队时间,的题目,目标是节省总的排队时间,达到最优。达到最优。现在学习的是第3页,共68页2023/2/23史忠植 高级人工智能43.1 3.1 概概 述述 优化问题优化问题 运筹学 遗传算法 神经网络 约束推理现在学习的是第4页,共68页2023/2/23史忠植 高级人工智能5运筹学的工作步骤运筹学的工作步骤v1)提出和形成问题,)提出和形成问题,v2)建立模型,)建立模型,v3)求解,)求解,v4)解的检验,)解的检验,v5)解的控制,)解的控制,v6)解的实施。)解的实施。现在学习的是第5
3、页,共68页2023/2/23史忠植 高级人工智能6线性规划问题线性规划问题l例例1(广告方式的选择广告方式的选择)中华家电公司推销一中华家电公司推销一种新型洗衣机,有关数据见下表。销售部第种新型洗衣机,有关数据见下表。销售部第一月的广告预算为一月的广告预算为20000元,要求至少有元,要求至少有8个电个电视商业节目,视商业节目,15家报纸广告;电视广告费不得家报纸广告;电视广告费不得超过超过12000元,电台广播至少隔日有一次。现问元,电台广播至少隔日有一次。现问该公司销售部应当采用怎样的广告宣传计划,该公司销售部应当采用怎样的广告宣传计划,才能取得最好的效果才能取得最好的效果?现在学习的是
4、第6页,共68页2023/2/23史忠植 高级人工智能7线性规划问题线性规划问题广告方式广告方式广告费用广告费用(元元/次次)可用最高可用最高次数次数/月月期望的宣传期望的宣传效果效果/单位单位电视台电视台a(白天白天,1分钟分钟)5001650电视台电视台b(晚上晚上,30钞钞)10001080每日晨报每日晨报/(半版半版)1002430星期日报星期日报/(半版半版)300440广播电台广播电台/(1分钟分钟)802515表表1 中华家电公司推销新型洗衣机广告方式选择的数据表中华家电公司推销新型洗衣机广告方式选择的数据表现在学习的是第7页,共68页2023/2/23史忠植 高级人工智能8线性
5、规划问题线性规划问题解:解:设x1,x2,x3,x4,x5分别是第一个月内电视台a,电视台b,每日晨报,星期日报,广播电台进行广告宣传的次数,则其数学模型为 max 50 x1+80 x2+30 x3+40 x4+15x5s.t.50 x1+80 x2+30 x3+40 x4+15x5 20000,x1+x28,x3+x4 15,500 x1+1000 x212000,x116,x210,x3 24,x44,15x525,x1,x2,x3,x4,x5 0。现在学习的是第8页,共68页2023/2/23史忠植 高级人工智能9线性规划问题线性规划问题线性规划问题线性规划问题(LP)的一般形式为:的
6、一般形式为:min(max)z=c1x1+c2x2+cnxns.t.a11x1+a12x2+a1nxn(,)b1 a21x1+a22x2+a2nxn(,)b2 am1x1+am2x2+amnxn(,)bmxj0,j=1,2,n现在学习的是第9页,共68页2023/2/23史忠植 高级人工智能10线性规划问题线性规划问题线性规划问题的标准形式为:线性规划问题的标准形式为:min XCzT=注:任何形式的线性规划问题均可化为标准注:任何形式的线性规划问题均可化为标准型。型。AX=bs.t.X0 (假定b为非负)现在学习的是第10页,共68页2023/2/23史忠植 高级人工智能11求解求解-单纯形
7、法单纯形法l将所给问题化为标准形将所给问题化为标准形l找出一个初始可行基,建立初始单纯形表找出一个初始可行基,建立初始单纯形表l检查所有检验数检查所有检验数(若全为非负,则已得到最优若全为非负,则已得到最优解解,计算停止。否则继续下一步计算停止。否则继续下一步)l考察是否无解考察是否无解(若是,计算停止,否则继续下一步若是,计算停止,否则继续下一步)l确定入基变量,出基变量确定入基变量,出基变量l对初始单纯形表进行单纯形变换对初始单纯形表进行单纯形变换现在学习的是第11页,共68页2023/2/23史忠植 高级人工智能123.1 3.1 概概 述述 一个一个约束约束(Constraint)通常
8、是指一个包含若干变量的通常是指一个包含若干变量的关系表达式,用以表示这些变量所必须满足的问题。关系表达式,用以表示这些变量所必须满足的问题。约束表示广泛地应用于人工智能的各个领域,包括约束表示广泛地应用于人工智能的各个领域,包括定性推理、机械与电子设备的设计与分析等。定性推理、机械与电子设备的设计与分析等。约束满足系统的设计是一项困难而复杂的任务,因约束满足系统的设计是一项困难而复杂的任务,因为约束满足问题在一般情况下是一个为约束满足问题在一般情况下是一个NP(Nonpolynomia)问题,问题,所以必须使用各种策略与启发式信息。所以必须使用各种策略与启发式信息。现在学习的是第12页,共68
9、页2023/2/23史忠植 高级人工智能133.1 3.1 概概 述述 一个约束满足问题一个约束满足问题(Constraint Satisfaction Problem,简称简称CSP)包含一组变量与一组变量间的约束。包含一组变量与一组变量间的约束。变量表示领域参数,每个变量都有一个固定的值域。变量表示领域参数,每个变量都有一个固定的值域。一个变量的值域可能是一个变量的值域可能是有限的有限的,例如一个布尔变量,例如一个布尔变量的值域包含两个值;也可能是的值域包含两个值;也可能是离散无限离散无限的,如整数域;的,如整数域;也可能是连续的,如实数域。也可能是连续的,如实数域。x1,x2,xn,D1
10、,D2,Dn,.4,5,6,7 red,green,blue 现在学习的是第13页,共68页2023/2/23史忠植 高级人工智能143.1 3.1 概概 述述 约束可用于描述领域对象的性质、相互关系、任务要求、目约束可用于描述领域对象的性质、相互关系、任务要求、目标等。约束满足问题的标等。约束满足问题的目标目标就是就是找找到所有变量的一个(或多个)到所有变量的一个(或多个)赋值赋值,使所有约束都得到满足。,使所有约束都得到满足。现有的约束表示可分为几类,现有的约束表示可分为几类,按复杂性的次序列举如下:按复杂性的次序列举如下:一元谓词。一元谓词。序关系语言,只包含偏序关系或实变量上的大小关系
11、。序关系语言,只包含偏序关系或实变量上的大小关系。形如形如“x-y c”或或“x-y c”的方程。的方程。单位系数的线性方程与不等式,即所有的系数为单位系数的线性方程与不等式,即所有的系数为-1,0,1。任意系数的线性方程与不等式。任意系数的线性方程与不等式。约束的布尔组合。约束的布尔组合。代数与三角方程。代数与三角方程。现在学习的是第14页,共68页2023/2/23史忠植 高级人工智能153.1 3.1 概概 述述 约束表示易于理解、编码及有效实现,具有以下约束表示易于理解、编码及有效实现,具有以下优点优点:约束表示允许约束表示允许以说明性的方式以说明性的方式来表达领域知识,表达能力较强,
12、应用来表达领域知识,表达能力较强,应用程序只需指定问题的目标条件及数据间的相互关系。因而具有逻辑表示的程序只需指定问题的目标条件及数据间的相互关系。因而具有逻辑表示的类似性质。类似性质。约束表示允许约束表示允许变量的域包含任意多个值变量的域包含任意多个值,而不像命题只取真假,而不像命题只取真假二值。它保存了问题的一些结构信息,如变量域的大小、变量间二值。它保存了问题的一些结构信息,如变量域的大小、变量间的相关性等,从而为问题求解提供启发式信息。的相关性等,从而为问题求解提供启发式信息。易于并行实现易于并行实现。因为约束网络上的信息传播可以。因为约束网络上的信息传播可以认为是同时的。认为是同时的
13、。适合于适合于递增型系统递增型系统。约束可以递增式地加入到约束网络。约束可以递增式地加入到约束网络。易于易于与领域相关的问题求解模型与领域相关的问题求解模型相衔接。各种数学规划技术,方程相衔接。各种数学规划技术,方程求解技术等求解技术等,都可以自然地嵌入约束系统。都可以自然地嵌入约束系统。现在学习的是第15页,共68页2023/2/23史忠植 高级人工智能163.1 3.1 概概 述述 目前,约束推理的研究主要集中于两个方面:目前,约束推理的研究主要集中于两个方面:约约束搜索束搜索与与约束语言约束语言。约束搜索约束搜索主要研究有限域上的约束满足。对有限主要研究有限域上的约束满足。对有限域而言,
14、约束满足问题一般情况下是一个域而言,约束满足问题一般情况下是一个NP问题。大问题。大体包括下列方法:体包括下列方法:回溯法;回溯法;约束传播;约束传播;智能回溯与真值维护;智能回溯与真值维护;可变次序例示;可变次序例示;局部修正法;局部修正法;现在学习的是第16页,共68页2023/2/23史忠植 高级人工智能173.1 3.1 概概 述述约束推理研究的另一个主要方面是约束推理研究的另一个主要方面是约束语言约束语言。以。以下是几个比较典型的约束语言:下是几个比较典型的约束语言:CONSTRAINTS:面向电路描述的约束表示语言。面向电路描述的约束表示语言。Bertrand:Leler开发的一个
15、高级约束语言。开发的一个高级约束语言。CHIP:约束逻辑程序设计语言。约束逻辑程序设计语言。约束层次与约束层次与HCLP:层次型层次型约束逻辑程序设计语言。约束逻辑程序设计语言。COPS:面向对象的程序设计语言的基本形式。面向对象的程序设计语言的基本形式。ILOG:使用建模语言来表示约束问题。使用建模语言来表示约束问题。现在学习的是第17页,共68页2023/2/23史忠植 高级人工智能18CONSTRAINTSCONSTRAINTS约束语言约束语言 CONSTRAINTS是一个面向电路描述的约束表示语言。是一个面向电路描述的约束表示语言。作为一个约束表示语言,它使用了符号处理技术来求解数学方
16、作为一个约束表示语言,它使用了符号处理技术来求解数学方程。程。在在CONSTRAITS中,物理部件的功能及器件的结构都用中,物理部件的功能及器件的结构都用约束表示。约束表示。这些约束一般是线性方程与不等式这些约束一般是线性方程与不等式,也包括条件表达式。也包括条件表达式。约束变量一般是表示物理量的实变量。也有一些取离散值的变约束变量一般是表示物理量的实变量。也有一些取离散值的变量。如开关的状态、三极管的工作状态等。系统采用表达式推量。如开关的状态、三极管的工作状态等。系统采用表达式推理与值推理。并实现相关制导的回溯。理与值推理。并实现相关制导的回溯。现在学习的是第18页,共68页2023/2/
17、23史忠植 高级人工智能19CONSTRAINTSCONSTRAINTS约束语言约束语言 CONSTRAINTSCONSTRAINTS的一个的一个优点:优点:在类型层次中表示约束,用约束来表示物在类型层次中表示约束,用约束来表示物理对象的功能与结构。理对象的功能与结构。缺点:缺点:是该语言缺乏类似于面向对象语言中的方法那是该语言缺乏类似于面向对象语言中的方法那样的成分,不能定义特定于某个类的概念。样的成分,不能定义特定于某个类的概念。同时,约束传播方法比较单一,既缺乏实同时,约束传播方法比较单一,既缺乏实域上的区间传播机制,也缺乏有限域上的域上的区间传播机制,也缺乏有限域上的 域域传播机制。传
18、播机制。现在学习的是第19页,共68页2023/2/23史忠植 高级人工智能20约束逻辑程序设计语言约束逻辑程序设计语言CHIPCHIP CHIP(Constraint handling in Prolog)就是这样较有影响就是这样较有影响一个约束逻辑程序设计语言,其目的是简便、灵活而有效地解决一个约束逻辑程序设计语言,其目的是简便、灵活而有效地解决一大类组合问题。它通过提供几种新的计算域而增强逻辑程序设一大类组合问题。它通过提供几种新的计算域而增强逻辑程序设计的能力;有限域、布尔项及有理项,对于每个计算域,都提供计的能力;有限域、布尔项及有理项,对于每个计算域,都提供有效的约束求解技术,即有
19、限域上的一致性技术,布尔域的布尔有效的约束求解技术,即有限域上的一致性技术,布尔域的布尔合一技术及有理数域上的单纯型法。除此以外,合一技术及有理数域上的单纯型法。除此以外,CHIP还包含一个还包含一个一般的延迟计算机制。一般的延迟计算机制。CHIP 主要应用于两个领域:运筹学与硬件设计。主要应用于两个领域:运筹学与硬件设计。CHIP 缺乏类型机制,而这种机制对于表达领域概念是缺乏类型机制,而这种机制对于表达领域概念是极其重要的。极其重要的。现在学习的是第20页,共68页2023/2/23史忠植 高级人工智能21面向对象约束语言面向对象约束语言COPSCOPS COPS系统利用面向对象技术,将说
20、明性约系统利用面向对象技术,将说明性约束表达与类型层次结合起来。在形式上吸收了束表达与类型层次结合起来。在形式上吸收了常规语言,主要是面向对象的程序设计语言的常规语言,主要是面向对象的程序设计语言的基本形式。内部求解时采用约束推理机制,使基本形式。内部求解时采用约束推理机制,使说明性约束表达式与类型层次相结合,实现知说明性约束表达式与类型层次相结合,实现知识的结构化封装,充分发挥两者的优点,力图识的结构化封装,充分发挥两者的优点,力图实现一个具有较强表达能力和较高求解效率的实现一个具有较强表达能力和较高求解效率的约束满足系统。约束满足系统。现在学习的是第21页,共68页2023/2/23史忠植
21、 高级人工智能22面向对象约束语言面向对象约束语言COPSCOPS COPS的设计考虑了软件工程的应用要求,尽量将一的设计考虑了软件工程的应用要求,尽量将一个不确定问题确定化:它允许条件语句与循环语句,而个不确定问题确定化:它允许条件语句与循环语句,而不是单纯以递归的形式来实现迭代计算;不是单纯以递归的形式来实现迭代计算;通过类方法的通过类方法的重栽实现同一约束的不同实现,提高了程序的执行效率。重栽实现同一约束的不同实现,提高了程序的执行效率。COPS系统同时是一个渐增式的开放系统,用户能通过类系统同时是一个渐增式的开放系统,用户能通过类型层次定义,实现新的数据类型和新的约束关系。约束型层次定
22、义,实现新的数据类型和新的约束关系。约束语言语言COPS具有许多人工智能程序设计语言的特点,如约束传具有许多人工智能程序设计语言的特点,如约束传播、面向目标和数据驱动的问题求解、有限步的回溯、对象分播、面向目标和数据驱动的问题求解、有限步的回溯、对象分层中的继承等。层中的继承等。现在学习的是第22页,共68页2023/2/23史忠植 高级人工智能23常用的算法常用的算法 在实际应用中,算法的表现形式千变万化,但是算在实际应用中,算法的表现形式千变万化,但是算法的情况也和数据结构类似,许多算法的设计思想具有法的情况也和数据结构类似,许多算法的设计思想具有相似之处,我们可以对它们分类进行学习和研究
23、。相似之处,我们可以对它们分类进行学习和研究。常常用的算法大致有如下一些:用的算法大致有如下一些:贪心法贪心法 分治法(如二分法检索)分治法(如二分法检索)回溯法回溯法 动态规划法动态规划法 局部搜索法局部搜索法 分支限界法分支限界法现在学习的是第23页,共68页2023/2/23史忠植 高级人工智能24算法分析算法分析 评价一个程序优劣的重要依据是看这个程序的执行需要评价一个程序优劣的重要依据是看这个程序的执行需要占用多少机器资源。人们最关心的就是程序所用算法运行时占用多少机器资源。人们最关心的就是程序所用算法运行时所要花费的所要花费的时间代价时间代价和程序中使用的数据结构占有的和程序中使用
24、的数据结构占有的空间空间代价代价。算法的空间代价算法的空间代价(或称或称空间复杂性空间复杂性):当被解决问题的规模:当被解决问题的规模(以某种单位计算以某种单位计算)由由1增至增至n时,解该问题的算法所需占用的空间时,解该问题的算法所需占用的空间也以某种单位由也以某种单位由f(1)增至增至f(n),这时我们称该算法的,这时我们称该算法的空间代价是空间代价是f(n)。算法的时间代价算法的时间代价(或称或称时间复杂性时间复杂性):当问题规模以某种单:当问题规模以某种单位由位由1增至增至n时,对应算法所耗费的时间也以某种单位由时,对应算法所耗费的时间也以某种单位由g(1)增至增至g(n),这时我们称
25、算法的,这时我们称算法的时间代价是时间代价是g(n)。现在学习的是第24页,共68页2023/2/23史忠植 高级人工智能25穷尽搜索方法穷尽搜索方法穷尽搜索方法 即产生所有可能的树,然后根据评价标准选择一棵最优的树。Exhaustive-Search-Top(P)wherePisaCSPoftheform(V,D,C)1.f:=thenullassignment2.returnExhaustive-Search(f,P)现在学习的是第25页,共68页2023/2/23史忠植 高级人工智能26穷尽搜索方法穷尽搜索方法Exhaustive-Search(f,P)1.iffisatotalassi
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 03 约束 推理 优秀 PPT
限制150内