- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CS 问题和传播技术
本次课的内容
? CSP的相关概念
? 解决CSP问题的方法
? 传播技术
? AC、GAC算法
现实中约束(Constraint)的例子
? 会议要在10点之前开始
? 工资大于六千元
? 网络的流量不低于50M
? ……
? 约束无处不在,由此形成的约束可满足问
题也在计算机科学中扮演重要角色
Constraint Satisfaction Problem
? Constraint Satisfaction Problem:中文一
般称为约束可满足问题,简称CSP
? 一个CSP被看做是一个三元组 V,D,C ,
其中:
V是变量的集合
D是每个变量的值域
C是一组约束
? 问题的目标是:求一个对变量的赋值,该
赋值满足C中所有的约束
一个CSP问题的例子
? 课程时间表问题
? 变量:每个课程对应一个变量,例如语文、数学、
外语等
? 值域:每个变量的值域是可能的上课时间,例如:
上午九点、下午三点等
? 约束:对课程做的一些限制。例如:语文课不能
在上午九点上课,两门课不能同时开课等
? 目标:对于每一门课,求一个上课时间,所形成
的上课时间表要满足所有的约束
CSP的描述方式
? Extensional方式:一个约束本质上是一些
变量的值域的笛卡尔集的子集, Extensional方式是将这些子集的元素详细
地写出来。例如变量x、y,他们的值域均
为{1、2、3},表示两个变量相等的约束,要
写作:1,1,2,2,3,3
? Intensional方式:是采用一些符号来描述约
束,上面的例子可以用符号:x==y来表示
该约束。
二元约束和非二元约束
? 二元约束:只包含两个变量的约束,例如
不等于,大于,小于
? 非二元约束:包含三个或三个以上变量的
约束,例如alldifferent(X1,X2,X3)
? 此外还有一元约束,只包含一个变量的约
束,一般这样的约束可以通过给定恰当的
值域来描述。
二元约束和非二元约束
? 二元约束是NP完全问题
? 任何非二元约束都可以转换为二元约束,
例如: alldifferent(X1,X2,X3) 可以转换为
二元约束X1 =/= X2, X1 =/= X3, X2 =/= X3
? 在理论上无需非二元约束
? 在实际应用中需要:非二元约束在描述上
更紧凑,并且在求解中效率更高,有些非
二元约束有其特有的求解算法
CSP问题的求解技术
? 两类主要方式:
? 1. 系统的搜索技术
? 2. 局部搜索技术
? 前者是完全搜索技术,无论是否有解,都
可以知道
? 后者是不完全搜索技术,如果有解,可能
给出结果,也可能不给出结果
? 一般来说,后者的求解效率比前者高
系统的搜索技术
? 目前主要的搜索技术
? 算法框架为:
? 1. 给一个变量进行赋值
? 2. 其他的未被赋值的变量,在值域中可能
有一些值已经不再满足某些约束,删除掉
这些值
? 3. 如果某个变量的值域中所有的值都被删
除,则证明该赋值无法导致问题的解,这
时进行回溯,尝试其他的赋值
局部搜索技术
? 算法的基本框架如下:
? 1. 首先产生一个完全的赋值,如果该赋值
满足了所有的约束,结束搜索,否则:
? 2. 改变某些不被满足中的约束的变量的值
传播技术
? 在前面提到的系统的搜索技术中第二步,根
据已有的赋值来消减未被赋值的变量的值
域,就是传播。当一个变量的值域被消减
后,可能会进一步影响其他变量,导致其
他变量的值域也被消减,所以学术上将其
形象的称为“传播”
? 传播技术在求解CSP问题中占有重要作用
搜索和传播技术示例:六皇后问题
? 皇后问题是计算机领域的经典问题,N皇后
问题是在一个N*N的棋盘上放置N个皇后,
使得每一行、每一列以及每一斜线上不能
有两个以上的皇后。
? 我们用6皇后问题解释一下前文的搜索技术
和传播
? 编码使用六个变量x1,……,x6,每个变量的
值域是{1,2,3,4,5,6}当xn=m的时候,表示在
第n列的第m行放置皇后
搜索和传播技术示例:六皇后问题
? 假设第一步我们给x1赋值为2,表示在第二
行第一列放置一个皇后,这时候,为了使
得约束可以被满足:
? 1. 值1,2,3将会从变量x2中被移除
? 2. 值2,4将会从变量x3中被移除
? 3. 值2,5将会从变量x4中被移除
? 4. 值2,6将会从变量x5中被移除
? 5. 值2将会从变量x6中被移除
搜索和传播技术示例:六皇后问题
? 假第二步给x2赋值为5,这时候,为了使得
约束可以被满足:
? 1. 值5,6将会从变量x3中被移除
? 2. 值3将会从变量x4中被移除
? 3. 值5将会从变量x5中被移除
? 4. 值1将会从变量x6中被移除
搜索和传播
您可能关注的文档
最近下载
- 2025年公安招聘辅警考试笔试题及答案.docx VIP
- (完整word)二次函数练习顶点式基础练习题 .pdf VIP
- 2025年公安局警务辅助人员招聘考试笔试试题(附答案).docx VIP
- 2025-2026学年苏科版劳动五年级上册教学计划及进度表.pdf VIP
- 干式变压器技术规范书.docx VIP
- 2025年西藏自治区昌都市护士基础理论知识考试题库及答案解析.pdf VIP
- 工程建设监理收费标准(发改价格2022670号).docx VIP
- 2025年黑龙江省绥化市辅警招聘考试题库及答案.docx VIP
- 操作手册模板【范本模板】.pdf VIP
- 幼儿园角色扮演的重要性和意义.docx VIP
文档评论(0)