[发明专利]一种多线程并行执行的硬件SAT求解器有效
申请号: | 201911408984.6 | 申请日: | 2019-12-31 |
公开(公告)号: | CN111159628B | 公开(公告)日: | 2022-09-13 |
发明(设计)人: | 黎铁军;马柯帆;张建民;常俊胜;孙岩;翦杰;王强;熊泽宇;肖灿文;徐佳庆 | 申请(专利权)人: | 中国人民解放军国防科技大学 |
主分类号: | G06F17/10 | 分类号: | G06F17/10 |
代理公司: | 北京丰浩知识产权代理事务所(普通合伙) 11781 | 代理人: | 李学康 |
地址: | 410073 湖*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 多线程 并行 执行 硬件 sat 求解 | ||
本发明提供了一种多线程并行执行的硬件SAT求解器,包括第一寄存器模块、第一评估模块组、缓存器模块组、计数器模块、变元翻转模块、概率映射表、FIFO树组、第二寄存器模块组、第二评估模块和第三寄存器模块。本发明提供的一种多线程并行执行的硬件SAT求解器,所有的数据都存储在FPGA的片上存储器中,避免了因为读取片外数据带来的时间开销,同时利用多线程策略,不同线程均对同一地址映射表和子句映射表进行交互,大幅度的减少片上存储器的资源开销,并且由于使用多线程策略,每秒总翻转量将会成倍的增加,更可能在规定的时间内找到问题的解,能够更加高效、便捷地求解相对较大规模的SAT问题。
技术领域
本发明属于计算机技术领域,具体涉及一种SAT求解器,尤其涉及一种多线程并行执行的硬件SAT求解器。
背景技术
SAT问题中(satisifiability problem,布尔可满足性问题),给定一组有限变元集合X={x1,x2,…,xn},xn可以被赋值为真(1)或假(0),文字li是变元xi或其否定且有子句C由文字析取(表示“或”的意思)而成,合取范式CNF(conjecturednormal formula)公式由多个子句合取而成,如即是一个有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求解器通常采用以下策略之一:
(1)将SAT问题等价为多个包含n个变元的子问题,并将所有的子问题分配给不同的线程处理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科技大学,未经中国人民解放军国防科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911408984.6/2.html,转载请声明来源钻瓜专利网。