一种基于可编程逻辑的硬件SAT求解器制造技术

技术编号:24169487 阅读:47 留言:0更新日期:2020-05-16 02:29
本发明专利技术提供了一种基于可编程逻辑的硬件SAT求解器,包括预处理模块和FPGA模块。本发明专利技术利用可编程逻辑建立硬件SAT求解器,通过对变元的初始指派进行预处理,提前指导最优真值指派的搜索趋势,以及求解时优先通过查找预存的概率映射表对应的概率对变元进行翻转,既解决了现有软件SAT求解器算法复杂,效率较低,且求解成功率不高的技术问题,又能够减少额外的时间开销,进而加快求解器求解的进程,能够更加高效、便捷地求解相对较大规模的SAT问题。

【技术实现步骤摘要】
一种基于可编程逻辑的硬件SAT求解器
本专利技术属于计算机
,具体涉及一种SAT求解器,尤其涉及一种基于可编程逻辑的硬件SAT求解器。
技术介绍
SAT问题中(satisifiabilityproblem,布尔可满足性问题),给定一组有限变元集合X={x1,x2,…,xn},xn可以被赋值为真(1)或假(0),文字li是变元xi或其否定且有子句C由文字析取(表示“或”的意思)而成,合取范式CNF(conjecturednormalformula)公式由多个子句合取而成,如即是一个有5个变元和4个子句组成的CNF公式。子句中任意文字被赋值为真,则子句为真,或被满足;子句中所有文字同时赋值为假,则称指定赋值使得子句为假,或指定赋值使得子句不被满足,公式为可满足当且仅当所有子句同时被满足。SAT问题是指寻找X上所有变元的一组赋值X′:X→{0,1},使得为真。如果存在这样的赋值,则是可满足的;如果不存在这样的赋值,则是不可满足的。SAT问题被史蒂文·库克(StevenCook)于1971年证明为NP完全问题,这意味着可以在多项式时间内非常快速地本文档来自技高网...

【技术保护点】
1.一种基于可编程逻辑的硬件SAT求解器,其特征在于,/n所述硬件SAT求解器包括:预处理模块和FPGA模块;/n其中,所述预处理模块,用于产生CNF公式各变元的初始指派、当前指派下的不可满足子句以及所述CNF公式的子句和变元信息,并发送给所述FPGA模块;/n所述FPGA模块,用于接收预处理模块发送的CNF公式各变元的初始指派以及不可满足子句,并在指定次数内根据预存的概率分布数据翻转变元,判断CNF公式是否可满足。/n

【技术特征摘要】
1.一种基于可编程逻辑的硬件SAT求解器,其特征在于,
所述硬件SAT求解器包括:预处理模块和FPGA模块;
其中,所述预处理模块,用于产生CNF公式各变元的初始指派、当前指派下的不可满足子句以及所述CNF公式的子句和变元信息,并发送给所述FPGA模块;
所述FPGA模块,用于接收预处理模块发送的CNF公式各变元的初始指派以及不可满足子句,并在指定次数内根据预存的概率分布数据翻转变元,判断CNF公式是否可满足。


2.如权利要求1所述的基于可编程逻辑的硬件SAT求解器,其特征在于,
所述FPGA模块包括第一存储模块;
所述接收预处理模块发送的CNF公式的子句和变元信息,具体包括:
FPGA模块将接收到的所述预处理模块发送的CNF公式的子句和变元信息存储在所述第一存储模块。


3.如权利要求2所述的基于可编程逻辑的硬件SAT求解器,其特征在于,
所述FPGA模块还包括第一评估模块、第二存储模块、计数器模块、变元翻转模块、概率映射表、FIFO树和第二评估模块;
其中,所述第一评估模块,用于存储各变元的初始指派以及计算第一存储模块中存储的子句是否满足,并将不满足子句存储在所述第二存储模块;
所述计数器模块,用于计算所述第二存储模块中各个变元翻转后的break-value值,并将break-value排序;
所述概率映射表,用于预先存储不同翻转概率对应的break-value值;
所述变元翻转模块,用于将子句变元进行翻转;
所述FIFO树,用于存储经变元翻转模块翻转变元后的子句;
所述第二评估模块,用于从FIFO树中读取子句并判断该子句是否是满足。


4.如权利要求3所述的基于可编程逻辑的硬件SAT求解器,其特征在于,
所述FPGA模块还包括缓存模块、随机数产生模块和循环控制模块;
所述FPGA模块在指定次数内根据预存的概率分布数据翻转变元,具体包括:
循环控制模块在指定次数内循环执行下列步骤:
从所述第二存储模块读取不可满足子句,暂存至所述缓存模块;
在所述缓存模块中将不可满足子句的文字进行翻转,所述计数器模块计算各个变元翻转后的break-value值,并将break-value排序;
将各变元排序后的break-value值与所述概率映射表进行比对,如果变元的break...

【专利技术属性】
技术研发人员:肖立权马柯帆张建民赖明澈徐金波黎渊熊泽宇欧洋庞征斌刘路吕方旭
申请(专利权)人:中国人民解放军国防科技大学
类型:发明
国别省市:湖南;43

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1