Contando en el caso general
2
Los métodos de conteo exactos a menudo se basan en una búsqueda exhaustiva de estilo DPLL o en algún tipo de compilación de conocimiento. Los métodos aproximados generalmente se clasifican como métodos que ofrecen estimaciones rápidas sin garantías y métodos que proporcionan límites inferiores o superiores con una garantía de corrección. También hay otros métodos que podrían no ajustarse a las categorías, como descubrir puertas traseras, o métodos que insisten en ciertas propiedades estructurales para mantener las fórmulas (o su gráfico de restricción).
Hay implementaciones prácticas por ahí. Algunos contadores de modelos exactos son CDP, Relsat, Cachet, sharpSAT y c2d. El tipo de técnicas principales utilizadas por los solucionadores exactos son conteos parciales, análisis de componentes (del gráfico de restricción subyacente), almacenamiento en caché de fórmulas y componentes, y razonamiento inteligente en cada nodo. Otro método basado en la compilación de conocimiento convierte la fórmula CNF de entrada en otra forma lógica. De esta forma, el recuento del modelo se puede deducir fácilmente (tiempo polinómico en el tamaño de la fórmula recién producida). Por ejemplo, uno podría convertir la fórmula en un diagrama de decisión binario (BDD). Entonces se podría atravesar el BDD desde la hoja "1" hasta la raíz. O para otro ejemplo, el c2d emplea un compilador que convierte las fórmulas CNF en una forma normal de negación determinista descomponible (d-DNNF).
ϕϕ
Gogate y Dechter [3] usan una técnica de conteo modelo conocida como SampleMinisat. Se basa en el muestreo del espacio de búsqueda sin retroceso de una fórmula booleana. La técnica se basa en la idea de volver a muestrear la importancia, utilizando solucionadores SAT basados en DPLL para construir el espacio de búsqueda sin retroceso. Esto puede hacerse completamente o hasta una aproximación. También es posible el muestreo de estimaciones con garantías. Sobre la base de [2], Gomes et al. [4] mostró que usando el muestreo con una estrategia aleatoria modificada, uno puede obtener límites inferiores demostrables en el recuento total del modelo con altas garantías de corrección probabilística.
También hay trabajo que se basa en la propagación de creencias (BP). Ver Kroc et al. [5] y el BPCount que presentan. En el mismo documento, los autores dan un segundo método llamado MiniCount, para proporcionar límites superiores en el recuento de modelos. También hay un marco estadístico que permite calcular los límites superiores bajo ciertas suposiciones estadísticas.
Algoritmos para # 2-SAT y # 3-SAT
O ( 1.3247norte)O ( 1.6894norte)O ( 1,6423norte)
Como está en la naturaleza del problema, si desea resolver instancias en la práctica, mucho depende del tamaño y la estructura de sus instancias. Cuanto más sepa, más capaz será para elegir el método correcto.
[1] Vilhelm Dahllöf, Peter Jonsson y Magnus Wahlström. Contando asignaciones satisfactorias en 2-SAT y 3-SAT. En Actas de la VIII Conferencia Anual Internacional de Computación y Combinatoria (COCOON-2002), 535-543, 2002.
[2] W. Wei y B. Selman. Un nuevo enfoque para el conteo de modelos. En Proceedings of SAT05: 8th International Conference on Theory and Applications of Satisfiability Testing, volumen 3569 de Lecture Notes in Computer Science, 324-339, 2005.
[3] R. Gogate y R. Dechter. Recuento aproximado mediante el muestreo del espacio de búsqueda sin retroceso. En Actas de AAAI-07: 22ª Conferencia Nacional sobre Inteligencia Artificial, 198–203, Vancouver, 2007.
[4] CP Gomes, J. Hoffmann, A. Sabharwal y B. Selman. Del muestreo al conteo de modelos. En Actas de IJCAI-07: XX Conferencia Internacional Conjunta sobre Inteligencia Artificial, 2293–2299, 2007.
[5] L. Kroc, A. Sabharwal y B. Selman. Aprovechar la propagación de creencias, la búsqueda de retroceso y las estadísticas para el conteo de modelos. En CPAIOR-08: 5ª Conferencia internacional sobre integración de técnicas de IA y OR en la programación de restricciones, volumen 5015 de Lecture Notes in Computer Science, 127–141, 2008.
[6] K. Kutzkov. Nuevo límite superior para el problema # 3-SAT. Information Processing Letters 105 (1), 1-5, 2007.