Je peux partiellement répondre à votre question: compter les optima locaux d'un problème de recherche PLS complet peut en effet être difficile.
Premièrement, comme Yoshio le fait remarquer, il existe un problème de recherche dans PLS dont le problème de comptage associé est # P-complet. ( Cependant, nous ne savons pas si est PLS complet.) Soit un problème PLS complet. Définissez ensuite qui, à l'entrée pour , demande un optimum local pour l'entrée par rapport à . Ce problème hérite de l'appartenance PLS de , hérite de l'exhaustivité PLS de et pour le problème de comptage hérite de l'exhaustivité # P de .P1P1P2P′(x,i)i∈{1,2}xPiP1,P2P2P1
De même, on peut construire un problème PLS (artificiel) complet pour lequel il est NP-complet de décider s'il y a plus d'un optimum local. Comme dans l'argument précédent, on "agrafe ensemble" un problème PLS complet comme précédemment, avec un problème PLS qui, en entrée une formule booléenne , a plus d'un optimum local associé si siff est satisfaisable.P1P2ψψ
Ces types de constructions sont quelque peu insatisfaisants car nous essayons de construire un problème de recherche qui a deux propriétés de dureté, mais le domaine de "se divise" en deux morceaux, chacun pouvant ne posséder qu'une seule des deux propriétés. Ci-dessous, je vais montrer comment, étant donné un problème de recherche dans PLS dont le problème de comptage associé est # P-complet, et étant donné un problème PLS-complet , on peut définir un problème PLS qui est aussi difficile que de compter pour et recherchez de façon "instance par instance".QQP1P2QP1P2
A savoir, nous montrerons telle sorte que la résolution du problème de comptage pour sur l'entrée réduit efficacement à la résolution du problème de comptage pour sur l'entrée , et le problème de recherche pour sur l'entrée réduit au problème de recherche pour sur l'entrée .QP1xQxP2xQx
Pour simplifier la présentation, nous supposons que sont tels que sur toute entrée de longueur , l'espace candidat-solution associé à est sur les chaînes de bits de longueur pour certains (mais avec des structures de voisinage différentes pour ). Soit la fonction de fitness associée à .P1,P2xnxynccP1,P2Fi(x,y)Pi
À l'entrée , l'espace de recherche pour est sur des tuples où chaque est dans , , et . Comme la fonction de fitness pour , nous définissonsx∈{0,1}nQ(y1,y2,z,b)yi{0,1}ncz∈{0,1}nc+1b∈{0,1}F(x,(y1,y2,z,b))Q
F(x,(y1,y2,z,b)):=F1(x,y1)+F2(x,y2) si , b=1
F(x,(y1,y2,z,b)):=||y1||+||z||+F2(x,y2) si .b=0
(C'est le poids de Hamming ci-dessus.)
Pour la structure de voisinage de , nous connectons chaque tuple (avec ) à tous les tuples tels queQ(x,(y1,y2,z,1))b=1(x,((y′)1,(y′)2,z′,1))
(A) est connecté à selon pour , ET(x,yi)(x,(y′)i)Pii=1,2
(B) diffèrent par au plus 1 coordonnée.z,z′
Pour les tuples avec , nous connectons à tous les tuples tel queb=0(x,(y1,y2,z,0))(x,((y′)1,(y′)2,z′,0))
(A ') est connecté à selon , ET(x,y2)(x,(y′)2)P2
(B ') diffèrent par au plus 1 coordonnée, tout comme .z,z′y1,(y′)1
(Notez que les tuples avec sont déconnectés de ceux avec )b=0b=1
Voilà la définition de . Les quartiers sont de taille polynomiale selon les besoins, donc est en PLS. QQ
Affirmation: Les optima locaux pour la longueur entrée selon sont exactement les deux ensembles disjoints suivants:nxQ
(1) tous les tuples , où est un optimum local de(x,(y1,y2,z,1))(x,yi)Pii=1,2zb=1
(x,1nc,y2,1n,0))(x,y2)P2z,y1b=0
Q(x,(y1,y2,z,b))Qx(x,y2)P2xP2
N(x)xQ(2nc+1N1(x)+1)⋅N2(x)Ni(x)xPiN2(x)[1,2nc]
N2(x)=N2(x) mod mod mod .2nc+1=(2nc+1N1(x)+1)⋅N2(x)2nc+1=N(x)2nc+1
Nous pouvons donc obtenir étant donné . On peut alors aussi obtenir , par simple algèbre:
. Comme est # P-complet à calculer, . Ainsi, il est # P-complet de compter les optima locaux pour (et compter pour réduit à compter pour sur la même instance). N2(x)N(x)N1(x)N1(x)=(N(x)N2(x)−1)/2nc+1N1(x)N(x)QP1Q
Je ne sais pas comment donner une telle réduction pour combiner la dureté PLS avec la dureté NP pour décider de l'unicité des optima locaux d'une manière "instance par instance".
Quant à savoir si chaque problème de recherche PLS complet génère un problème de comptage # P-complet, je ne le sais pas non plus. Il semble lié à la question de savoir si, pour chaque problème de décision NP-complet L et pour chaque vérificateur de polytemps pour , le problème de comptage des témoins associé est # P-complet. # La complétude P est valable dans tous les cas spécifiques que les gens ont envisagés, et dans certaines conditions raisonnablement douces, mais elle est ouverte en général. Voir cette discussion .V(x,y)L
QQ