[发明专利]一种基于可编程逻辑的硬件SAT求解器有效
申请号: | 201911416673.4 | 申请日: | 2019-12-31 |
公开(公告)号: | CN111159631B | 公开(公告)日: | 2023-08-11 |
发明(设计)人: | 肖立权;马柯帆;张建民;赖明澈;徐金波;黎渊;熊泽宇;欧洋;庞征斌;刘路;吕方旭 | 申请(专利权)人: | 中国人民解放军国防科技大学 |
主分类号: | G06F17/10 | 分类号: | G06F17/10 |
代理公司: | 北京丰浩知识产权代理事务所(普通合伙) 11781 | 代理人: | 李学康 |
地址: | 410073 湖*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 可编程 逻辑 硬件 sat 求解 | ||
本发明提供了一种基于可编程逻辑的硬件SAT求解器,包括预处理模块和FPGA模块。本发明利用可编程逻辑建立硬件SAT求解器,通过对变元的初始指派进行预处理,提前指导最优真值指派的搜索趋势,以及求解时优先通过查找预存的概率映射表对应的概率对变元进行翻转,既解决了现有软件SAT求解器算法复杂,效率较低,且求解成功率不高的技术问题,又能够减少额外的时间开销,进而加快求解器求解的进程,能够更加高效、便捷地求解相对较大规模的SAT问题。
技术领域
本发明属于计算机技术领域,具体涉及一种SAT求解器,尤其涉及一种基于可编程逻辑的硬件SAT求解器。
背景技术
SAT问题中(satisifiability problem,布尔可满足性问题),给定一组有限变元集合X={x1,x2,…,xn},xn可以被赋值为真(1)或假(0),文字li是变元xi或其否定且有子句C由文字析取(表示“或”的意思)而成,合取范式CNF(conjectured normalformula)公式由多个子句合取而成,如即是一个有5个变元和4个子句组成的CNF公式。子句中任意文字被赋值为真,则子句为真,或被满足;子句中所有文字同时赋值为假,则称指定赋值使得子句为假,或指定赋值使得子句不被满足,公式为可满足当且仅当所有子句同时被满足。SAT问题是指寻找X上所有变元的一组赋值X′:X→{0,1},使得为真。如果存在这样的赋值,则是可满足的;如果不存在这样的赋值,则是不可满足的。
SAT问题被史蒂文·库克(Steven Cook)于1971年证明为NP完全问题,这意味着可以在多项式时间内非常快速地求解,并且在多项式时间内,NP类的所有其他问题都可归结为SAT问题。求解SAT问题最直接、粗暴的办法是枚举法,即尝试输入变元的所有可能赋值,然而,这种算法的求解时间会随着变元数量的增加呈指数增长。
在过去的几十年里,解决SAT问题的算法,也称为SAT求解器,取得了巨大的进步。十多年前认为无法求解的问题,现在可以用先进的SAT求解器在几秒钟内得以解决。现代SAT求解器可以集成更为先进的求解技术,通过这些技术开发的软件求解器甚至能够解决多大数百万个变元的难的SAT问题。
当SAT求解器试图解决一个问题时,它会对变元进行完全或部分赋初值(分别用α和β表示)。对公式完全赋值是对公式中的每一个变元赋0或者1,如α=(x1=1,x2=0,x3=1,x4=1,x5=1)。相反,部分赋值是对公式变元集合的子集赋值,如β=(x1=1,x2=0)。对公式的赋值应遵循布尔逻辑的规则。例如,子句中存在某个或多个文字为真(即值为1),则该子句是可满足的,并可从公式中删除。如果公式是空的(即不再有需要满足的子句),则该公式满足。相反,如果子句中文字为假,则可从子句中删除该文字。因此,如果子句是空的,那么该子句就不能被满足,故简化后的公式也是不可满足的。
传统的SAT求解器都是软件实现的,其求解算法分为完全算法和不完全算法,完全算法穷尽搜索SAT公式的解空间,理论上一定可以得出某个SAT公式的满足性结论,但是SAT问题属于NP问题,其解空间随着公式的变量个数呈指数增长,所以此种算法效率较低,不适用于求解大规模的SAT问题。不完全算法并不搜索整个解空间,而是采用种种办法搜索部分解空间,其求解速度较快,但是并不能保证一定能判断SAT问题的可满足性。随着实际SAT问题规模的急剧增大,软件求解器已经不能快速有效地判定SAT问题的可满足性。
发明内容
本发明要解决的技术问题是针对背景技术中所涉及到的缺陷,提供一种基于可编程逻辑的硬件SAT求解器,用以解决现有技术中软件SAT求解器算法复杂,效率较低,且求解成功率不高的技术问题。
为解决上述技术问题,本发明采用以下技术方案:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科技大学,未经中国人民解放军国防科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911416673.4/2.html,转载请声明来源钻瓜专利网。