Estou procurando uma maneira de gerar gráficos para que a cobertura ideal do vértice seja conhecida. Não há restrições quanto ao número de nós ou arestas, apenas que o gráfico esteja completamente conectado.
a idéia é gerar um gráfico que não seja fácil de encontrar a cobertura ideal de vértice, para poder testar diferentes heurísticas nele
Encontrei o artigo Arthur, J. & Frendeway, J. Gerando Problemas de Vendedor-Viajante com Tours Ótimos Conhecidos, The Journal of Operational Research Society, vol. 39, No. 2 (fevereiro de 1988), pp. 153-159 para gerar TSP com o conhecido ideal, infelizmente não posso acessá-lo.
Existe um algoritmo conhecido?
Respostas:
Expandir o comentário do vzn em uma resposta: A redução padrão do CNF-SAT para a cobertura de vértices é bastante fácil: faça um vértice para cada termo (variável ou negação), conecte cada variável à sua negação por uma aresta, faça um clique para cada cláusula e conecte cada vértice na clique ao vértice para um dos termos da cláusula. Se você começar com um problema de satisfação com uma atribuição conhecida satisfatória, isso fornecerá um problema de cobertura de vértice com uma solução ótima conhecida (escolha o termo vértices fornecido pela atribuição e, em cada cláusula, clique em todos, exceto um vértice, para que o A cláusula vértice que não é escolhida é adjacente a um termo que é escolhido).
Portanto, agora você precisa encontrar problemas de satisfação que tenham uma tarefa satisfatória conhecida, mas onde a solução é difícil de encontrar. Existem muitas maneiras conhecidas de gerar problemas difíceis de satisfação (por exemplo, gerar instâncias aleatórias de k-SAT próximas ao limite de satisfação), mas o requisito extra de que você saiba que a atribuição satisfatória restringe as possibilidades. Uma coisa que você pode fazer aqui é passar por outro nível de redução, a partir de um problema criptograficamente difícil, como a fatoração. Ou seja, escolha dois números primos grandes peq, configure um circuito booleano para multiplicar peq como números binários e traduza-o em uma fórmula CNF na qual existe uma variável para cada entrada (peq) e para cada valor intermediário em um fio no circuito, uma cláusula para cada saída, forçando-o a ter o valor certo, e uma cláusula para cada portão forçando as entradas e saídas do portão a serem consistentes entre si. Em seguida, traduza essa fórmula CNF em capa de vértice.
Para uma estratégia mais simples, escolha primeiro a atribuição satisfatória para uma fórmula 3CNF e depois gere cláusulas aleatoriamente, mantendo apenas as cláusulas que são consistentes com a atribuição e, em seguida, converta para a cobertura de vértice. Se as cláusulas tiverem probabilidade uniforme, isso ficará vulnerável a uma heurística baseada em graus (o termo vértices que correspondem à atribuição escolhida terá um grau inferior ao termo que não corresponde a vértices), mas essa falha pode ser evitada ajustando as probabilidades das cláusulas de acordo com quantos termos da cláusula concordam com a tarefa escolhida. Provavelmente, isso é vulnerável a algum tipo de ataque de tempo polinomial, mas pode não ser natural para a cobertura de vértices; portanto, pode criar um bom conjunto de instâncias de teste, apesar de não ter muita garantia de dureza.
fonte
a referência mais próxima que encontrei foi ... Em casos difíceis de cobertura aproximada de vértice por Sundar Vishwanathan. não viu refs para examinar instâncias difíceis do problema exato.
como no meu comentário, há uma enorme quantidade de pesquisas nessa abordagem correspondente para o SAT, que é redutível à cobertura de vértices.
Com relação aos comentários dos DEs, a idéia de gerar instâncias aleatórias e apenas escolher aquelas que são difíceis para um algoritmo padrão me parece totalmente razoável, especialmente com uma abordagem de pesquisa empírica / experimental [1], é um procedimento operacional padrão para pesquisas semelhantes no SAT ponto de transição. [2]
que, a propósito, tem algo a dizer onde a região "difícil" está para qualquer outro problema completo de NP [3,4,5], que se refere aproximadamente a um ponto crítico na "densidade" de 1s em instâncias aleatórias especificadas em binário. para cobertura de vértice, isso provavelmente corresponderia à densidade da aresta.
note que provar que é possível construir um conjunto de instâncias concretas, e apenas instâncias concretas, é basicamente equivalente ao problema P vs NP. uma análise mais formal dessa equivalência está no artigo Razborov / Rudich Natural Proofs.
[1] algoritmos experimentais
[2] Pesquisa de transição de fase SAT
[3] Transições de fase em problemas graves de NP
[4] Transições de fase em problemas NP-completos: um desafio para probabilidade, combinatória e ciência da computação por Moore
[5] Comportamento de transição de fase por Walsh
fonte