Betrachten Sie das folgende Problem,
- Bei einem Satz von positiven Zahlen , in denen eine Konstante ist, wollen wir die Menge in partitionieren Teilmengen der Größe , so dass das Produkt aus der Summe der einzelnen Untergruppe ist maximiert.
Das Problem ist der bekannten Partitionierung von Way-Nummern sehr ähnlich, mit der Ausnahme, dass die Anzahl der Nummern in jeder Partition begrenzt ist. Für k = 2 kann der folgende einfache Polynomalgorithmus vorgeschlagen werden:
- Angenommen, die Zahlen sind sortiert, dh . Dann wird für i ≤ m assign ein i zu der Teilmenge i , für i > m , Zuweisen zu der Teilmenge n - i + 1 .
Es ist nicht schwer zu verstehen, warum der Algorithmus funktioniert. Wählen Sie einfach zwei beliebige Fächer. Durch ein Vertauschen der Zahlen wird die Menge des Produkts nicht erhöht.
Aber für größere frage ich mich, ob das Problem in Polynomzeit gelöst werden kann oder nicht? Ich wäre auch dankbar, wenn jemand seine NP-Härte zeigen könnte.
Hinweis: Ich habe das Problem festgestellt, als ich an einem Planungsproblem in drahtlosen Netzwerken gearbeitet habe. Ich habe einen guten heuristischen Algorithmus gefunden, um das Problem zu lösen. Aber nach einer Weile dachte ich, das Problem könnte theoretisch interessant sein.
Antworten:
(Dies ist eine etwas detailliertere Version meiner Kommentare zu der Frage.)
Wie die Türkei in einem Kommentar zu der Frage angedeutet hat, ist dieses Problem für jede Konstante k ≥3 durch eine Reduktion von dem k- Partitionsproblem NP-hart . Die Reduktion ändert überhaupt keine Instanzen: Man beachte nur, dass das Maximum des Produkts der Summen mindestens (∑ a i / k ) m ist, wenn und nur wenn die Zahlen in m Mengen mit jeweils einer Größe unterteilt werden können k unterteilt werden können, deren Summen jeweils sind alle gleich.
Beachten Sie, dass die Eingabe für das k- Partitionsproblem normalerweise als km- Zahlen definiert wird, die möglicherweise nicht alle eindeutig sind. Dies ist für den Standardnachweis der NP-Vollständigkeit (wie in Garey und Johnson ) von entscheidender Bedeutung. Die obige Reduktion beweist daher nur die NP-Härte einer leichten Verallgemeinerung des aktuellen Problems, bei der die Eingabe ein Multiset anstelle einer Menge sein darf. Diese Lücke kann jedoch gefüllt werden, weil die k Partitionsproblem NP-vollständig bleibt, selbst wenn die Zahlen in der Eingabe alle verschieden sein müssen; siehe [HWW08] für den Fall von k = 3 (siehe auch die Antwort von Serge Gaspers)zu einer anderen Frage), die leicht für größere Werte von k modifiziert werden kann .
Außerdem bleibt alles, was hier angegeben ist, NP-vollständig / NP-hart, auch wenn die Zahlen in der Eingabe unär sind.
[HWW08] Heather Hulett, Todd G. Will und Gerhard J. Woeginger. Multigraph-Realisierungen von Gradfolgen: Maximierung ist einfach, Minimierung ist schwierig. Operations Research Letters , 36 (5): 594–596, Sept. 2008. http://dx.doi.org/10.1016/j.orl.2008.05.004
quelle