Fonctions intéressantes sur les graphiques qui peuvent être efficacement maximisées.

10

Disons que j'ai un graphique pondéré g=(V,E,w) tel que w:E[-1,1] est la fonction de pondération - notez que les poids négatifs sont autorisés.

Dire que F:2VR définit une propriété d'un sous - ensemble de sommets SV .

Question: Quels sont quelques exemples intéressants de F s pour lesquels le problème de maximisation: argmaxSVF(S) peut être effectué en temps polynomial?

Par exemple, la fonction de coupe graphique

F(S)=(u,v)E:uS,vSw((u,v))
est une propriété intéressante des sous-ensembles des sommets, mais ne peut pas être maximisé efficacement. La fonction de densité de bord est un autre exemple d'une propriété intéressante qui, hélas, ne peut pas être efficacement maximisée. Je suis à la recherche des fonctions qui sont tout aussi intéressantes, mais peut être efficacement maximisé.

Je vais laisser la définition de "intéressant" être quelque peu vague, mais je veux que le problème de maximisation ne soit pas trivial. Par exemple, il ne devrait pas être possible de déterminer la réponse sans examiner les bords du graphique (les fonctions constantes et la fonction de cardinalité ne sont donc pas intéressantes). Cela ne devrait pas non plus être le cas si F est vraiment juste en train d'encoder une autre fonction avec un domaine de taille polynomiale en le remplissant dans le domaine 2V (c'est-à-dire que je ne veux pas qu'il y ait un petit domaine X et une fonction m:2SX connu avant de regarder le graphique, de sorte que la fonction d'intérêt est vraiment g:XR , et F(S)=g(m(S)) Si tel est le cas, le problème de "maximisation" n'est en réalité qu'une question d'évaluation de la fonction sur toutes les entrées.)

Edit: Il est vrai que parfois les problèmes de minimisation sont faciles si vous ignorez les poids de bord (bien que vous ne minimisiez pas la fonction de coupe, car j'autorise les poids de bord négatifs). Mais je suis explicitement intéressé par les problèmes de maximisation. Cela ne devient pas un problème dans les problèmes pondérés naturels dans ce contexte.

Aaron Roth
la source
Avez-vous un exemple d'une telle fonction?
Yaroslav Bulatov
Non, d'où la question. :-)
Aaron Roth
Ah ok. Mon impression qu'une fonction qui peut être efficacement maximisée pour tous les graphiques doit être sans intérêt. Mais il peut y avoir des fonctions intéressantes qui peuvent être efficacement maximisées pour des ensembles restreints de graphiques. Par exemple, pour les graphiques planaires, certaines fonctions intéressantes peuvent être efficacement maximisées, tandis que d'autres fonctions intéressantes n'ont pas encore d'algorithme efficace
Yaroslav Bulatov
Je serais heureux de voir des réponses sur les résultats des classes restreintes de graphiques si nous ne pouvons penser à aucune fonction intéressante pouvant être maximisée sur tous les graphiques.
Aaron Roth
Cela ne devrait-il pas être CW? Nous pouvons générer arbitrairement de nombreux exemples, et leur caractère "intéressant" est subjectif.
Jukka Suomela

Réponses:

5

Chaque fois que compte le nombre d'arêtes ( u , v ) satisfaisant un prédicat booléen défini en termes de u S et v S , alors ce que vous avez écrit n'est qu'un booléen 2-CSP. La fonction objectif demande de maximiser le nombre de clauses satisfaites sur toutes les affectations aux variables. Ceci est connu pour être NP-dur et le seuil de dureté exact est également connu en supposant UGC (voir Raghavendra'08).F(S)(u,v)uSvS

Il existe de nombreux exemples positifs naturels lorsque vous souhaitez maximiser des sous-ensembles d'arêtes, par exemple, la correspondance maximale est un exemple d'un problème de temps polynomial dans ce cas.

Moritz
la source
C'est une belle observation qui exclut de nombreux problèmes naturels de ce type.
Aaron Roth
2

Partition domatique / faible coloration 2.

(Dans ce cas si chaque v S a un voisin dans V S et vice versa. Sinon f ( S ) = 0. Une solution avec f ( S ) = 1 existe toujours s'il n'y a pas d'isolement nœuds, et il peut être trouvé facilement en temps polynomial.)F(S)=1vSVSF(S)=0F(S)=1

Jukka Suomela
la source
1

Coupe minimale (spécifiquement, coupe du sommet).

(Dans ce cas, serait quelque chose comme ceci: 0 si la suppression des nœuds dans l'ensemble S ne partitionne pas G en au moins deux composants, et | V | - | S | sinon. Maximiser f équivaut à trouver une coupe minimale , ce qui peut être fait en temps polynomial.)FSg|V|-|S|F

Vous pouvez également définir une fonction similaire qui correspond à des coupes de bord minimales.

(Par exemple, vaut 0 si S = ou S = V ; sinon c'est | E | - | X | , où X est l'ensemble des bords qui ont un point d'extrémité dans S et l'autre point d'extrémité dans V S. )F(S)S=S=V|E|-|X|XSVS

Jukka Suomela
la source
D'accord, mais c'est un problème de minimisation déguisé, qui a tendance à être plus facile lorsque vous ignorez les poids des bords. (Notez que si vous tenez compte des poids des bords, puisque je précise que nous avons peut-être des poids négatifs, la coupe minimale est également un problème difficile). Je vais essayer de modifier la question pour souligner ce point.
Aaron Roth du
1

Ensemble indépendant maximal.

(Ici = nombre de nœuds dans S qui ne sont adjacents à aucun autre nœud dans S + nombre de nœuds dans V S qui sont adjacents à un nœud dans S. Iff S est un ensemble indépendant maximal que nous avons f ( S ) = | V | .)F(S)SSVSSSF(S)=|V|

Jukka Suomela
la source
Comment trouvez-vous un ensemble indépendant maximal en temps polynomial?
Yaroslav Bulatov
1
@Yaroslav: avidement.
Jukka Suomela
@Yaroslav: Astuce - la différence entre le maximum et le maximum est énorme. ;-)
Ross Snider