La détection d'instances faciles de problèmes NP-difficiles est-elle facile?

6

Ma question est la suivante. Supposons que est un problème NP-difficile. Étant donné une instance arbitraire de et supposant qu'un adversaire sait que cette instance est facile à résoudre, est-il possible de trouver un algorithme déterministe en temps polynomial pour résoudre cette instance particulière ?ΠIΠI

Par exemple: Supposons que soit GRAPH COLORING. L'adversaire vous donne un graphe à sommets.ΠGn

  1. L'adversaire sait que est complet mais pas vous. Pouvez-vous trouver un algorithme à temps polynomial qui dit "Ce graphique est colorable avec des couleurs "?GΔ+1
  2. L'adversaire sait que a une propriété mais pas vous. Pouvez-vous trouver un algorithme polynomial qui dit "Ce graphique est colorable avec des couleurs "?GPb
  3. ...
Jarbou
la source
5
Comme mentionné dans la réponse de DW, le problème est qu'il n'y a aucune restriction sur . Par exemple, « est l' un des 42 graphiques que j'arrive d'avoir déjà calculé la solution optimale » est une propriété valide . Pour aller n'importe où dans cette direction, je pense qu'il faudrait restreindre l'ensemble des propriétés possibles - disons, aux propriétés exprimables dans une certaine forme de logique restreinte. PGPP
j_random_hacker

Réponses:

17

Le problème n'est pas vraiment bien posé. Pour tout cas particulier, il y a une seule solution, par exemple . Par conséquent, on peut imaginer un algorithme qui a la réponse définitivement dans: quel que soit l' entrée que vous lui donnez, tout ce qu'il fait est juste imprimer . Cette réponse compte comme un algorithme déterministe polynomial qui permet de résoudre ce cas particulier .SSSI

Par conséquent, la réponse à votre question est "Oui", mais pour des raisons sans intérêt. Il est possible que vous deviez réfléchir davantage à la manière de formuler votre question en fonction de ce que vous voulez vraiment savoir.


La dernière partie de votre question est en fait un peu différente. Il ne s'agit pas d'une seule instance que . Au contraire, il pose des questions sur un cas particulier du problème, c'est-à-dire une famille infinie d'instances qui est un sous-ensemble approprié de toutes les instances possibles pour . Dans ce cas, la réponse est "cela dépend"; certains cas particuliers peuvent rester durs en NP et d'autres peuvent être en P.IΠ

Enfin, je ne sais pas ce que cela signifie de dire "L'adversaire connaît X mais vous ne le savez pas". Je suis libre d'écrire un algorithme qui suppose que X est vrai et ne fonctionne que lorsque X est vrai. La «connaissance» est une chose amusante et mal modélisée par les types d'outils dont vous semblez parler; la théorie de la complexité concerne davantage «l'existence» que la «connaissance».

DW
la source
7

Dans un certain sens, la réponse à votre question est affirmative, en raison de l'algorithme de recherche universel de Levin. Tenez compte de la coloration des graphes de concrétisation et d'une classe particulière d'instances faciles. En tant que témoin que cette classe est facile, vous avez un algorithme qui, étant donné un graphique dans cette classe, produit (en temps polynomial) une coloration légale avec une taille polynomiale prouvant que la coloration est optimale.

L'algorithme de recherche universel de Levin exécute tous les algorithmes de temps polynomiaux sur son instance (ceci est réalisé en essayant toutes les limites de temps polynomiales possibles pour chaque algorithme), en vérifiant s'ils fournissent une coloration légale avec une preuve d'optimalité. Sur n'importe quelle classe d'instances faciles, cet algorithme s'exécute en temps polynomial. Malheureusement, les constantes seront énormes, donc ces algorithmes ne sont pas pratiques.

Yuval Filmus
la source
Notez que la question dit seulement que est NP- dur, il n'est donc pas garanti que les solutions puissent être vérifiées en temps polynomial. Π
David Richerby