Considérez le problème suivant,
- Étant donné un ensemble de nombres positifs { a 1 , … , a n } dans lesquels k ≥ 3 est une constante, nous voulons partitionner l'ensemble en m sous-ensembles de taille k de sorte que le produit de la somme de chaque sous-ensemble est maximisé.
Le problème est assez similaire au partitionnement de numéros -way bien connu, sauf que nous avons une limite sur le nombre de numéros dans chaque partition. Pour k = 2, l'algorithme polynomial simple suivant peut être proposé,
- supposons que les nombres sont triés, c'est dire a 1 < a 2 < . . . < a n . Ensuite, pour i ≤ m, affectez a i au sous-ensemble i , pour i > m , affectez-le au sous-ensemble n - i + 1 .
Il n'est pas difficile de voir pourquoi l'algorithme fonctionne. Choisissez simplement deux bacs arbitraires. Tout échange de chiffres n'augmentera pas la quantité du produit.
Mais pour les plus grands , je me demande si le problème peut être résolu en temps polynomial ou non? Je serais également reconnaissant si quelqu'un pouvait montrer sa dureté np.
Remarque: J'ai rencontré le problème alors que je travaillais sur un problème de planification dans les réseaux sans fil. J'ai trouvé un bon algorithme heuristique pour résoudre le problème. Mais après un certain temps, j'ai pensé que le problème pourrait être théoriquement intéressant.
Réponses:
(Ceci est une version un peu plus détaillée de mes commentaires sur la question.)
Comme la Turquie l'a suggéré dans un commentaire sur la question, ce problème est NP-difficile pour chaque constante k ≥3 par une réduction du problème de la partition k . La réduction ne change pas du tout les instances: il suffit de noter que le maximum du produit des sommes est au moins (∑ a i / k ) m si et seulement si les nombres peuvent être partitionnés en m ensembles chacun de taille k dont les sommes sont Tous égaux.
Notez que l'entrée du problème de partition k est généralement définie comme étant des nombres de km qui peuvent ne pas être tous distincts , et cela est essentiel dans la preuve standard de son exhaustivité NP (comme celle de Garey et Johnson ). Par conséquent, la réduction ci-dessus prouve seulement la dureté NP d'une légère généralisation du problème actuel où l'entrée peut être un multiset au lieu d'un ensemble. Cependant, cet écart peut être comblé car le problème de la partition k reste NP-complet même si les nombres dans l'entrée doivent être tous distincts; voir [HWW08] pour le cas de k = 3 (voir aussi la réponse de Serge Gaspersà une autre question), qui peut être modifiée facilement pour des valeurs plus grandes de k .
De plus, tout ce qui est indiqué ici reste NP-complet / NP-dur même lorsque les nombres dans l'entrée sont donnés en unaire.
[HWW08] Heather Hulett, Todd G. Will, Gerhard J. Woeginger. Réalisations multigraphiques de séquences de degrés: la maximisation est facile, la minimisation est difficile. Lettres de recherche opérationnelle , 36 (5): 594–596, septembre 2008. http://dx.doi.org/10.1016/j.orl.2008.05.004
la source