J'ai rencontré le problème suivant:
Étant donné un graphique acyclique dirigé avec des poids de bord réels et deux sommets s et t, calculez la coupe minimale st.
Pour les graphiques généraux, c'est NP-difficile, car on peut réduire trivialement la coupe maximale en inversant simplement les poids des bords (corrigez-moi si je me trompe).
Quelle est la situation avec les DAG? La coupe minimale (ou maximale) peut-elle être résolue en temps polynomial? Est-ce NP-difficile et, si oui, existe-t-il des algorithmes d'approximation connus?
J'ai essayé de trouver du travail là-dessus, mais je n'y suis pas parvenu (peut-être que j'utilise simplement des mots clés incorrects dans mes recherches), alors j'espérais que quelqu'un pourrait savoir (ou trouver) quelque chose à ce sujet.
Réponses:
Vous avez affiné votre problème un peu plus dans les commentaires. Pour être plus précis, vous avez un DAG avec tous les bords s'écoulant loin de la source et vers le puits (c'est-à-dire que tous les bords sont sur un chemin de à ). Vous voulez trouver la coupe minimale entre deux pièces du DAG, où la première pièce est connectée à et la seconde connectée à . Pour ce problème, une variation de l'algorithme de programmation linéaire standard pour MIN-CUT fonctionne, même avec des poids de bord négatifs.s t s t s t
Nous utilisons la même notation que dans Wikipedia . Le coût de l'arête est . Nous mettons une fonction potentielle sur chaque nœud, et laissons . Le LP est(i,j) cij pi dij=pi−pj
Ces équations garantissent que , puisque chaque sommet est sur un chemin - . De même, puisque est non négatif, les potentiels sur n'importe quel chemin de à diminuent. Nous devons encore montrer qu'il existe une solution optimale au LP avec tous les soit soit . Cela découle du fait que la valeur d'une solution de la LP ci-dessus est la valeur attendue de la coupe , où est choisi au hasard dans , et où la coupe est obtenue en mettant tous les sommets0≤pi≤1 s t dij=pi−pj s t pi 0 1 Cw w [0,1] Cw i avec dans le premier ensemble de sommets, et tous les sommets avec dans le deuxième ensemble.pi≥w pi<w
la source