Como gerar gráficos com a cobertura ótima de vértices conhecida

11

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?

AndresQ
fonte
6
"Não há restrições quanto ao número de nós ou arestas, apenas que o gráfico esteja completamente conectado." Você precisa de mais restrições que isso. Caso contrário, eu gerei o conjunto de gráficos completos e conheço as coberturas ideais de vértices para cada um.
Tyson Williams
3
MeMCCCK3
5
Suponho "gerar um grafo bipartido aleatória e calcular a sua cobertura do vértice" não conta como uma resposta útil ...
David Eppstein
2
existem muitas estratégias para criar instâncias SAT "rígidas" e também repositórios de instâncias "rígidas" arquivadas, se você quiser seguir esse caminho - ou seja, converter uma instância de SAT em cobertura de vértice. Também há muita pesquisa estudando SAT de um pov empírica que se traduz naturalmente em todos os outros NP problemas completos por exemplo, ponto de transição etc. muitos refs sobre tudo isso ...
vzn
2
Ainda mais geralmente do que a solvabilidade no tempo polinomial da cobertura do Vertex nos gráficos de Koning, como observado por David, o seguinte resultado é conhecido da área de complexidade parametrizada: existe uma constante c tal que, para todo número inteiro fixo k, existe um O (n ^ c) algoritmo de tempo para testar se um gráfico possui uma cobertura de vértice que excede seu tamanho máximo de correspondência em no máximo k. Os gráficos Konig são o caso especial quando k = 0.
Bart Jansen

Respostas:

9

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.

David Eppstein
fonte
2
1

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

vzn
fonte