Est-il difficile de compter le nombre d'optima locaux pour un problème dans PLS?

11

Pour un problème de recherche locale polynomiale , on sait qu'au moins une solution (optimum local) doit exister. Cependant, de nombreuses autres solutions pourraient exister, est-il difficile de compter le nombre de solutions pour un problème PLS complet? Je suis particulièrement intéressé par le problème de décision: cette instance de problème PLS complet a-t-elle deux solutions ou plus?

La complexité dépend-elle du problème PLS complet que nous choisissons? Si c'est le cas, je serais particulièrement intéressé par le 2SAT pondéré (tel que défini dans [SY91] et [Rou10]). Je sais que compter le nombre de solutions satisfaisantes pour 2SAT est # P-complet, mais à première vue, il semble que les optima locaux de 2SAT pondérés et les solutions pour 2SAT n'aient pas grand-chose en commun.

Je sais aussi que pour le cousin PPS de PLS, [CS02] montre que compter le nombre d'équilibres de Nash est # P-difficile. Cela suggère que des problèmes PLS similaires, comme le comptage du nombre d'équilibres de stratégie pure dans les jeux de congestion, seraient également difficiles.

Références

[CS02] Conitzer, V. et Sandholm, T. (2002). Résultats de complexité sur les équilibres de Nash. IJCAI-03 . cs / 0205074 .

[Rou10] T. Roughgarden. (2010). Équilibres informatiques: une perspective de complexité informatique. Théorie économique , 42: 193-236.

[SY91] AA Schaeffer et M. Yannakakis. (1991). Problèmes de recherche locale simples et difficiles à résoudre. SIAM Journal on Computing , 20 (1): 56-87.

Artem Kaznatcheev
la source

Réponses:

7

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,zy1,(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

Andy Drucker
la source
Que toi, Andy! C'est très utile. Je devrai le lire quelques fois de plus pour m'assurer de tout suivre.
Artem Kaznatcheev
7

Considérez le problème de correspondance maximale dans les graphiques bipartites. La famille de solutions réalisables comprend toutes les correspondances, et la recherche locale est effectuée via la recherche de chemins d'augmentation. Le problème appartient à PLS puisqu'un chemin d'augmentation peut être trouvé en temps polynomial si une correspondance de courant n'est pas maximale, et la maximalité peut être vérifiée en temps polynomial. Tout optimum local est un maximum d'appariement (c'est-à-dire un optimum global). Cependant, il est difficile de calculer le nombre de correspondances maximales dans un graphe biparti.

Puisqu'un optimum local peut être trouvé en temps polynomial, il est peu probable que le problème soit complet en PLS. Donc, je crains que ce ne soit pas une réponse voulue (votre question se limite aux problèmes PLS complets). Cependant, je dois souligner que le comptage du nombre d'optima local peut être difficile même si un optimum local peut être trouvé efficacement.

Yoshio Okamoto
la source
Merci! C'est un bon point général à savoir sur la dureté # P en général (et pourquoi j'ai mentionné 2SAT). Je garderai la question ouverte dans l'espoir d'obtenir des réponses aux problèmes PLS, et j'insisterai également davantage sur la distinction entre une solution unique et deux ou plusieurs solutions existantes (c'est le cas qui m'intéresse le plus).
Artem Kaznatcheev
1
Étant donné que l'unicité d'une correspondance maximale peut être vérifiée efficacement, ma réponse n'est pas satisfaisante pour la question qui vous intéresse le plus. Merci.
Yoshio Okamoto