Em geral, essa é uma questão de pesquisa muito relevante e interessante. "Uma maneira é executar os solucionadores existentes ..." e o que isso nos diria exatamente? Poderíamos ver empiricamente que uma instância parece difícil para um solucionador específico ou um algoritmo / heurística específico, mas o que isso realmente diz sobre a dureza da instância?
Uma maneira que foi buscada é a identificação de várias propriedades estruturais de instâncias que levam a algoritmos eficientes. De fato, essas propriedades são preferidas por serem "facilmente" identificáveis. Um exemplo é a topologia do gráfico de restrição subjacente, medido usando vários parâmetros de largura do gráfico. Por exemplo, sabe-se que uma instância é solucionável em tempo polinomial se a largura da árvore do gráfico de restrição subjacente estiver limitada por uma constante.
Outra abordagem se concentrou no papel da estrutura oculta das instâncias. Um exemplo é o conjunto de backdoor , significando o conjunto de variáveis que, quando são instanciadas, o problema restante se simplifica para uma classe tratável. Por exemplo, Williams et al., 2003 [1] mostram que, mesmo considerando o custo de pesquisa de variáveis de backdoor, ainda é possível obter uma vantagem computacional geral, concentrando-se em um conjunto de backdoor, desde que o conjunto seja suficientemente pequeno. Além disso, Dilkina et al., 2007 [2] observam que um solucionador chamado Satz-Rand é extraordinariamente bom em encontrar pequenas backdoors fortes em vários domínios experimentais.
Mais recentemente, Ansotegui et al., 2008 [3] propõem o uso da complexidade do espaço em forma de árvore como uma medida para solucionadores baseados em DPLL. Eles provam que também o espaço de contorno constante implica na existência de um algoritmo de decisão de tempo polinomial, com espaço sendo o grau do polinômio (Teorema 6 no artigo). Além disso, eles mostram que o espaço é menor que o tamanho dos conjuntos de ciclos. De fato, sob certas suposições, o espaço também é menor que o tamanho das backdoors.
Eles também formalizam o que eu acho que você procura, ou seja:
Encontre uma medida , e um algoritmo que, dada uma fórmula decida a satisfação no tempo . Quanto menor a medida, melhor ela caracteriza a dureza de uma fórmula .ψΓO(nψ(Γ))
[1] Williams, Ryan, Carla P. Gomes e Bart Selman. "Backdoors para a complexidade típica do caso." Conferência Conjunta Internacional sobre Inteligência Artificial. Vol. 18, 2003.
[2] Dilkina, Bistra, Carla Gomes e Ashish Sabharwal. "Trocas na complexidade da detecção de backdoor". Princípios e Práticas de Programação de Restrições (CP 2007), pp. 256-270, 2007.
[3] Ansótegui, Carlos, Maria Luisa Bonet, Jordi Levy e Felip Manya. "Medindo a dureza de instâncias SAT." Em Anais da 23ª Conferência Nacional de Inteligência Artificial (AAAI'08), pp. 222-228, 2008.