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 indexvivification 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策略好。

posted @ 2024-12-05 13:41  seonwee  阅读(28)  评论(0)    收藏  举报