Betrachten Sie das Problem, bei dem wir als Eingabe einen gerichteten azyklischen Graphen , eine Markierungsfunktion λ von V bis zu einer Menge L mit einer Gesamtordnung < L (z. B. die ganzen Zahlen) erhalten und dazu aufgefordert werden Berechnen Sie die lexikographisch kleinste topologische Sorte von G in λ . Genauer gesagt ist eine topologische Art von G eine Aufzählung von V als v = v 1 , … , v n so groß , daß für alle , wann immer es einen Pfad von v i nach v j in G gibt , müssen wir i < j haben . DieBezeichnungeiner solchen topologischen Sorte ist die Folge von Elementen von S, die sich ergibt als l = λ ( v 1 ) , … , λ ( v n ) . Die lexikographische Reihenfolge auf solchen Sequenzen (die alle die Länge | V | haben ) ist definiert als l < LEXV zugeordnet werden kann(ansonsten ist das Problem trivial).wenn es eine Position so dass l i < L l ' i und l j = l ' j für alle j < i . Beachten Sie, dass jedes Label in S mehreren Vertices in zugeordnet werden kann
Dieses Problem kann entweder in einer Berechnungsvariante ("Berechnen der lexikografisch minimalen topologischen Sortierung") oder in einer Entscheidungsvariante ("Ist dieses Eingabewort die minimale topologische Sortierung?") Angegeben werden. Meine Frage ist, wie komplex dieses Problem ist . Ist es in PTIME (oder in FP, für die Berechnungsvariante) oder ist es NP-schwer? Wenn das allgemeine Problem NP-schwer ist, interessiert mich auch die Version, bei der die Menge möglicher Etiketten im Voraus festgelegt ist (dh es gibt nur eine konstante Anzahl möglicher Etiketten).
Bemerkungen:
Hier ist ein kleines Beispiel aus der Praxis, um das Problem zu motivieren. Wir können sehen, dass die DAG Aufgaben eines Projekts darstellt (mit einer Abhängigkeitsbeziehung zwischen ihnen), und die Bezeichnungen sind ganze Zahlen, die die Anzahl der Tage darstellen, die jede Aufgabe benötigt. Um das Projekt abzuschließen, benötige ich unabhängig von der Reihenfolge, in der ich die Aufgaben erledige, insgesamt die gleiche Zeit. Ich möchte jedoch meinen Chef beeindrucken, und dazu möchte ich möglichst viele Aufgaben so schnell wie möglich erledigen (auf gierige Weise, auch wenn es am Ende bedeutet, sehr langsam zu sein, weil die schwierigeren Aufgaben bestehen bleiben). Die Auswahl der lexikografisch minimalen Reihenfolge optimiert das folgende Kriterium: Ich möchte eine Reihenfolge so wählen, dass es keine andere Reihenfolge o ' und eine Anzahl von Tagen nach denen Tage hätte ich mit Befehl o ' mehr Aufgaben erledigtals mit Befehl o (dh wenn mein Chef zum Zeitpunkt n schaut, mache ich mit o ' einen besseren Eindruck), aber für alle m < n habe ich nicht weniger Aufgaben erledigt mit Bestellung o ' als bei Bestellung o .
Um einen Einblick in das Problem zu geben: Ich weiß bereits aus früheren Antworten, dass das folgende verwandte Problem schwierig ist: "Gibt es eine topologische Sortierung, die die folgende Reihenfolge erreicht"? Die Tatsache, dass ich hier eine Sequenz wünsche, die für diese lexikografische Reihenfolge minimal ist , scheint jedoch die möglichen topologischen Ordnungen, die dies bewirken könnten, stark einzuschränken (insbesondere scheinen die Verringerungen dieser anderen Antworten nicht mehr zu funktionieren). Intuitiv gibt es viel weniger Situationen, in denen wir eine Wahl treffen müssen.
Beachten Sie, dass es interessante Umformulierungen der Probleme in Bezug auf die Mengenabdeckung zu geben scheint (wenn Sie das Problem auf zweigeteilte DAGs beschränken, dh die Höhe zwei haben): Wenn Sie eine Menge von Mengen haben, listen Sie sie in einer Reihenfolge , das die Sequenz lexikographisch minimiert | S 1 | , | S 2 ∖ S 1 | , | S 3 ≤ ( S 1 ≤ S 2 ) | , … , | S nhatjederzeit per Definition, gierig zu sein von der lexikographischen Ordnung, kann ich nicht bekommen Senkungen (zB von Steiner Baum) anArbeit.. Das Problem kann auch in ungerichteten Diagrammen umformuliert werden (erweitern Sie einen verbundenen Bereich des Diagramms schrittweise in der Reihenfolge, in der die lexikografische Reihenfolge der nicht abgedeckten Beschriftungen minimiert wird). Allerdings wegen der Tatsache, dass die Reihenfolge
Vielen Dank im Voraus für Ihre Ideen!