Branching Strategy Selection Approach Based on Vivification Ratio
1. 结论
学习子句中含有比较多的冗余子句时,即vivification ratio高时采用vsids分支策略要比LRB好。
2. 相关内容
2.1 两种典型不同类别的算例
2.1.1 HWMCC instances
HWMCC instances generated from real-world EDA applications.
算例的特点:
- 原始子句中包含比较多的冗余文字
- 搜索过程中的学习子句LBD值比PoNo instances要低
- 学习子句的化简要比P算例更容易
算例满足性代表的意义:
- UNSAT: 代表两个电路是等价的
- SAT: 即两个电路是不等价的
2.1.2 PoNo instances
PoNo instances crafted from the reduction of the multiplication of two polynomials.
该算例意义是:两个\(n-1\)次多项式的乘积是否能够用\(t(t \le n^2)\)个不同的系数表示出来。
算例的特点:
- 原始子句中冗余文字比较少
- UNSAT算例的
vivification ratio要比SAT算例高 - UNSAT算例的
vivification ratio会随着\(t\)的减小而变高 - 在\(n\)值一样时,
vivification ratio会随着\(t\)的增大而变小 - 搜索过程中的学习子句LBD值比HWMCC instances要高
算例满足性代表的意义:
- UNSAT: \(t\)个不同的系数不能够表达这两个多项式的乘积,需要\(\gt t\)个不同的系数才能表达
- SAT: 可以用\(t\)个不同的系数表示出来
2.2 区分上述两种类型算例的方法
三个衡量指标:
- Conflict Index: It is the average number of conflict level literals involved in a conflict, that is, the number of active literals.
- UP Index: It is the average number of literals propagated by UP after branching on a decision literal.
- Vivification Ratio
其中
conflict index与vivification ratio有着一致性的关系。即conflict index值高时,vivification ratio值也会高;conflict index值低时,vivification ratio值也会低。
规律:
- H算例的
conflict index以及UP index要比P算例高,原因:H算例的学习子句的LBD值比P算例低,说明H算例需要比P算例少的决策变元就能导出冲突。 - H算例学习子句的
vivification ratio要比P算例高 VSIDS更适用于H算例,LRB更适用于P算例。即一般来说vivification ratio高时,VSIDS策略更合适;vivification ratio低时,LRB策略更合适。
有特殊的算例
vivification ratio高,但其实是P算例(crafted instances)。对于这种算例采用LRB策略要比VSIDS策略好。
本文来自博客园,作者:seonwee,转载请注明原文链接:https://www.cnblogs.com/seonwee/p/18588371

浙公网安备 33010602011771号