Um esboço de uma possível redução para provar que é NP-completo.
Informalmente, começa com uma fórmula 3SAT modificada usada para mostrar que o 3SAT é completo em ASP (Outro Problema de Solução) e "segue" a cadeia padrão de reduções 3SAT => HAMCYCLE DIRECTED => HAMCYCLE SEM INDICAÇÃO => TSP
- Comece com uma fórmula 3SAT com variáveis e calcule ;n x 1 , . . . x n m C 1 , . . . , C mφnx1, . . . xnmC1, . . . , Cm
- Transforme-o em uma nova fórmula adicionando uma nova variável ...; tφ′t
- ... e expandindo cada cláusula para ;( x i 1 ∨ x i 2 ∨ x i 3 ∨ t )( xEu1∨ xEu2∨ xEu3)( xEu1∨ xEu2∨ xEu3( T )
- A partir de construa o gráfico da estrutura dos diamantes usado para provar que o CICLO HAMILTONIANO DIRECTO é NP-Completo; suponha que cada cláusula corresponda ao nó em ; G = { V , E } C j N j Gφ′G={V,E}CjNjG
- Modifique no gráfico substituindo cada nó por três nós vinculados e modifique as arestas de acordo com a redução padrão usada para provar a completude NP do CICLO HAMILTONIANO NÃO INDICADO de CICLO HAMILTONIAN DIRETO, ou seja, é o nó usado para as arestas de entrada, é o nó usado para as arestas de saída;G ′ = { V ′ , E ′ } u u 1 , u 2 , u 3 u 1 u 3GG′={V′,E′}uu1,u2,u3u1u3
- Converta a instância UNCRECTED HAMILTONIAN CYCLE em em uma instância TSP na qual todas as arestas de têm peso , exceto a aresta (exclusiva) no diamante que vai para a atribuição "positiva" de que tem peso (borda vermelha na figura abaixo); finalmente, as arestas adicionadas para completar têm peso . T G ′ w = 1 t w = 2 G ′ w = 3G′TG′w=1tw=2G′w=3
Claramente, a instância do TSP possui um ciclo simples que visita todos os nós, o que corresponde à atribuição satisfatória de na qual (e esse passeio pode ser facilmente construído em tempo polinomial), mas tem peso total (porque usa a aresta que corresponde à atribuição que tem peso 2). possui outro ciclo simples que visita todos os nós com um peso total menorse e somente se a borda do peso que corresponde à atribuição não for usada; ou equivalentemente se e somente se houver outra atribuição satisfatória deφ ′ t = t r u e | V ' | + 1 t = t r u e T | V ' | 2 t = t r u e φ ' t = f um l s e φTφ′t=true|V′|+1t=trueT|V′|2t=trueφ′em que
; mas isso pode ser verdade se, e somente se, a fórmula original for satisfatória.t=falseφ
Pensarei mais sobre isso e escreverei uma prova formal (se não estiver errada :-). Entre em contato se precisar de mais detalhes sobre uma ou mais das passagens acima.
Como observado por domotorp, uma conseqüência interessante é que o seguinte problema é NP-completo: Dado um gráfico e um caminho hamiltoniano, possui um ciclo hamiltoniano?GGG