We are interested in computing $k$ most preferred models of a given d-DNNF circuit $C$, where the preference relation is based on an algebraic structure called a monotone, totally ordered, semigroup $(K, \otimes, <)$. In our setting, every literal in $C$ has a value in $K$ and the value of an assignment is an element of $K$ obtained by aggregating using $\otimes$ the values of the corresponding literals. We present an algorithm that computes $k$ models of $C$ among those having the largest values w.r.t. $<$, and show that this algorithm runs in time polynomial in $k$ and in the size of $C$. We also present a pseudo polynomial-time algorithm for deriving the top-$k$ values that can be reached, provided that an additional (but not very demanding) requirement on the semigroup is satisfied. Under the same assumption, we present a pseudo polynomial-time algorithm that transforms $C$ into a d-DNNF circuit $C'$ satisfied exactly by the models of $C$ having a value among the top-$k$ ones. Finally, focusing on the semigroup $(\mathbb{N}, +, <)$, we compare on a large number of instances the performances of our compilation-based algorithm for computing $k$ top solutions with those of an algorithm tackling the same problem, but based on a partial weighted MaxSAT solver.
翻译:我们感兴趣的是计算给定的 d-DNNF 电路最偏好的模型,即C美元。 在这种模型中, 偏好关系基于一个叫做单数的代数结构, 叫做单数, 完全订购, 半一组$( K, otime, < ) 美元。 在我们的设置中, 每立方美元中, 每立方美元都有以K美元计值的价值, 而任务的价值是用对准的立方美元计算得出的一个单位为K美元。 我们提出了一个算法, 在具有最大值 w.r. t. { 美元 的代算法中, 计算 美元 美元 美元 的 美元 美元 ; 显示这个算法是按时间计算, 美元 (k) 美元, 美元 美元 美元, 美元 美元, 美元 美元 美元 。 我们用一个假算法计算出一个最高值, 美元 美元, 美元 美元 。