NP-Härte eines Optimierungsproblems

8

Während ich ein Problem in der algorithmischen Spieltheorie studierte, interessierte ich mich für die Komplexität der folgenden Optimierungsfrage:

Problem

Gegeben:

  • Bodenmenge gegeben durch ,nU=[n]={1,,n}n
  • m Ranglisten als Gesamtbestellungen wobei ( ),S iU 1 i mSi,σiSiU1im
  • Gewichtsvektor für gegeben durch .w R nUwRn

Ziel: Finden Sie eine Teilmenge die folgende Summe maximiert: wobei ist der am höchsten bewertete Gegenstand in gemäß .r ( L ) = Σ i [ m ] , S iL & ne; w ( t i ( L ) ) t i ( L ) L S i σ iLU

r(L)=i[m], SiLw(ti(L))
ti(L)LSiσi

Ich vermute, dass das Problem -hard ist. Tatsächlich scheint das Problem schwierig zu sein, selbst wenn alle die Größe . Dies konnte ich jedoch nicht beweisen.S i 2NPSi2

Was ich weiß

Es ist leicht zu erkennen, dass die folgenden Einschränkungen das Problem leicht machen:

  • Alle Gewichte sind einheitlich: Die Auswahl aller Elemente ist eindeutig optimal.
  • Alle Ranglisten sind vollständige Ranglisten über : Die beste Lösung wird erhalten, indem das Element mit dem maximalen Gewicht genommen wird.U
  • Die Gewichte sind nur binär ( ), dann ist die Auswahl aller Wiegeelemente optimal. 1w{0,1}n1

Ich konnte jedoch keinen Polynomzeitalgorithmus für den allgemeinen Fall finden (zum Beispiel mit LP). Andererseits sieht es nicht einfach aus, das Problem als -hard zu beweisen . Die Struktur der Probleminstanzen ermöglicht keine einfache Codierung anderer Probleme. (Beachten Sie, dass die Härte des Problems von der Verwendung des gleichen für alle Teilaufträge herrührt. Die Verwendung des gleichen Gewichtsvektors für alle von ihnen macht es jedoch nicht einfach, die Härte zu beweisen.) Ich habe erfolglos versucht, einige -harte Probleme wie Subset-Sum, NAND-Circuit-SAT usw. auf die Entscheidungsversion dieses Problems zu reduzieren (gibt es eine Subset wie ). L N P r ( L ) kNPLNPr(L)k

Eine übereinstimmende IP kann für eine bestimmte Instanz des Problems problemlos leise erstellt werden, aber ich sehe keine ausreichende Ähnlichkeit mit einem mir bekannten Problem.

Frage

Kennen Sie die Komplexität dieses Problems? Gibt es Referenzen, die die Komplexität ähnlicher Optimierungsprobleme untersuchen? Wie würden Sie beweisen, dass dieses Optimierungsproblem -hard ist? (wenn es wirklich schwer ist).NP

JoelO
quelle
2
Ich denke, Ihre Lösung ist richtig und wenn Sie einen ähnlichen Trick für die Klauseln verwenden, können Sie sogar jedes Si auf 2 Elemente beschränken.
Domotorp

Antworten:

8

Hier ist eine mögliche Lösung:

Die Ermäßigung erfolgt ab 3SAT.

Eingabe: DNF-Klauseln über Variablen .( φ 1 , , φ m ) n ( x 1 , , x n )m(φ1,,φm)n(x1,,xn)

Reduktion: Erstellen Sie für jede Variable eine Reihe von Elementen, die aus zwei Elementen bestehen: , entsprechend einer Zuordnung entweder zur Variablen oder ihrer Negation, plus einem Hilfselement . Der Preis aller Artikel sei und der Preis von sei . T r u e x i t { x i , ¯ x i } i = 1 , ... , n 1 t 1,5xi,x¯iTruexit{xi,x¯i}i=1,,n1t1.5

Erstellen Sie zwei Gruppen von Verbrauchern:

Satz 1: Gültigkeitsrangfolge: Diese Gruppe von Verbrauchern codiert die Gültigkeitsbeschränkungen für die Zuweisungen zu . Das heißt, dass genau einer von jedem auf (dh vom Algorithmus übernommen wird). Für jedes vier Teilrankings erstellt: { x i , ¯ x i } T r u e i = 1 , , nx1,,xn{xi,x¯i}Truei=1,,n

σi1:xitσi2:x¯itσi3:xix¯iσi4:xix¯i

Die Einnahme von kann niemals schaden, daher gehen wir davon aus, dass es immer gewählt wird. Wenn sowohl als auch ausgewählt sind, erhalten wir eine Auszahlung . Wenn keiner von ihnen ausgewählt ist, erhalten wir eine Auszahlung von . Wenn einer von ihnen ausgewählt wird, erhalten wir eine Auszahlung von .x i ¯ x i 4 3 4.5txix¯i434.5

Set 2: Klausel-Rangliste. Für jede Klausel der Form erstellen wir eine Rangfolge: . Wenn erfüllt ist, bedeutet dies , dass zumindest eines der Elemente zu entsprechenden und ausgewählt ist, die eine zusätzliche Auszahlung gibt aus Ranking . σ j : l j 1 > l j 2 > l j 3 φ j l j 1 , l j 2 l j 3 1 σ jφj=j1i2j3σj:j1>j2>j3φjj1,j2j31σj

Jetzt ist die 3CNF-Formel genau dann erfüllbar, wenn es eine Reihe von Elementen gibt, die eine Auszahlung von .m+4.5n

JoelO
quelle