基于集合理论的SAT算法的设计与实现

来源 :电子科技大学 | 被引量 : 0次 | 上传用户:xiade522
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
SAT是理论计算机科学中的一个经典问题,也是被发现的第一个NP完全问题。SAT问题是对于给定的一个布尔逻辑表达式在SAT问题可满足的情况下给出一组解,使得该布尔逻辑表达式为“真”;在给定问题不可满足的情况下给出证明。比较著名的高效SAT求解算法有MiNiSat、zchaff、Grasp等。SAT求解算法广泛应用于实际生活中的各种领域,如电路设计的形式化验证、人工智能、资源调度等。虽然SAT求解算法的研究已经相当成熟,但它仍然是实际应用领域中必须打破的一个瓶颈。例如在电路设计的形式化验证中,将电路中的变量转化为布尔逻辑的合取范式形式(Conjunctive Normal Form简称CNF),再应用SAT求解来检测电路故障,传统算法往往要占用很长时间和大量的内存,而最后往往还不能得到满意的结果。所以到目前为止,众多国内外学者层出不穷的推出新型算法来提高计算效率,以便高效地应用于各行各业。虽然命题逻辑的理论研究已经相当成熟,但是在SAT问题及其算法被越来越多地应用到现实世界的生产和生活中的今天,探寻命题逻辑可满足性判定的高效算法仍然是一个令人兴奋的方向。SAT问题的解决方法一般分为两类:完备算法和不完备算法,它们的典型代表是Davis-Putnam提出的基于回溯搜索的DPLL算法和本地启发式搜索。当今流行的SAT算法主要是完备算法或在DPLL算法基础上的改进和衍生。本文在对现有的SAT问题相关理论的研究以及算法分析的基础上,基于DPLL算法结合集合理论提出了一种新型的SAT算法。具有高效的计算性能和空间利用率。主要内容包括对合取范式中布尔变量的集合划分,分支决策变量的选择策略,BCP过程的改进,冲突检测和回溯机制。在本课题中,作者参与了课题的理论研究与分析工作,并在老师的指导下完成了整体算法的设计与实现,并且进行了算法的对比测试以及在实际问题中的应用。
其他文献
21世纪,是知识和信息的时代,人们渴求各种有用的信息来获得美好的生活。学习机的诞生和普及,改变了人们传统的获取信息的方式,尤其改变了从纸质的书本获取知识的方式。一台便
本文给出了动态模糊逻辑(DFL)程序设计语言的基本数据类型及其抽象语法结构。在此基础上,根据范畴论和指称语义的原理,给出了动态模糊逻辑程序设计语言的范畴描述,定义了它的
二值图像在现实生活中被广泛的应用,对此进行产权保护和信息安全显得尤为重要。目前提出了大量的水印嵌入算法,但是大都是对于灰度图像或者音频、视频多媒体,不能直接应用到
伴随着大数据时代的到来,各类组织机构积累了海量数据。数据挖掘就是从海量的、不完备的、随机的用户数据中依据某种算法提取蕴含在其中的先前未知的、潜在的、有价值的信息和
功能性磁共振(fMRI)已经成为脑科学研究的重要手段和工具。它具有其无损性、高速性、高分辨率、可同时获得结构与功能图像等一系列优秀性能,被广泛应用于脑的实验及临床研究。
氧化沟系统是活性污泥工艺的一种实现方式。对氧化沟系统水质参数相关性的正确模拟是实现水质参数在线实时控制的重要课题。人工神经网络具有自组织、自适应、容错性、并行性
随着Intemet的普及和电子商务的发展,推荐技术已逐渐成为信息检索平和信息过滤领域的研究热点。现有的推荐系统一定程度上满足了人们获取信息的需求,但在许多应用中,仅仅考虑
功耗感知数据库管理系统是绿色计算中的一个研究热点。连接操作是直接影响数据库系统整体性能、功率的一类核心操作,针对连接操作的功率控制成为当今数据中心面临的关键问题。
在软件开发中,确保软件质量是一项既消耗资源又费时的过程:包括手工代码审查,技术评审会议和密集的软件测试等活动。软件缺陷预测是软件工程中的一个重要的研究课题,它可以帮助我
随着社会经济的发展,电机已成为广泛应用于国民经济中各行各业的重要动力设备。电机的安全运转对于这些企业的安全生产、经济效益提高有着至关重要的作用。其中,电枢作为电机的