NP-dureté du revêtement avec des pièces rectangulaires (cycle de test Google Hash Code 2015)


11

La ronde de test Google Hash Code 2015 ( énoncé du problème ) a posé une question sur le problème suivant:

  • entrée: une grille avec quelques carrés marqués, un seuil , une aire maximaleT N A NMTNAN
  • sortie: la plus grande surface totale possible d'un ensemble de rectangles disjoints avec des coordonnées entières dans de telle sorte que chaque rectangle comprend au moins carrés marqués et chaque rectangle a une aire au plus .T AMTA

Dans la terminologie de Google, la grille est une pizza, les carrés marqués sont du jambon et les rectangles disjoints sont des tranches.

On peut clairement reformuler ce problème en problème de décision en ajoutant une entrée supplémentaire et laisser la réponse être "existe-t-il un ensemble de rectangles disjoints satisfaisant les conditions dont l'aire totale est au moins carrés". nnNn

Ma question: alors que le problème de Google demandait aux candidats de trouver une solution "aussi bonne que possible" pour le problème de calcul sur une instance spécifique, je pense qu'il est probable que le problème général (dans sa formulation de décision) soit NP-complet. Cependant, je ne trouve pas de réduction pour montrer la dureté NP. (L'adhésion à NP est immédiate.) Comment prouver que ce problème est difficile à NP?

Voici quelques exemples pour vous aider à visualiser le problème. Considérez la grille par , avec des carrés marqués , et , représenté graphiquement par pour indiquer les carrés marqués:4 { 0 , 1 , 2 , 3 } × { 0 , 1 , 2 , 3 } ( 1 , 1 ) ( 0 , 2 ) ( 2 , 2 )44{0,1,2,3}×{0,1,2,3}(1,1)(0,2)(2,2)X

..X.
.X..
..X.
....

Ensemble (rectangles d'au plus carrés) et (au moins un carré marqué par rectangle), une solution optimale (qui couvre toute la grille) est de prendre les rectangles suivants:6 T = 1A=66T=1

aaAa
bBcc
bbCc
bbcc

Sur la grille suivante, avec et :T = 2A=3T=2

XXX
.X.
...

On ne peut faire mieux que de ne couvrir que trois carrés:

AAA
.X.
...

ou

XBX
.B.
.b.

(rappelez-vous que les rectangles de la partition ne peuvent pas se chevaucher).

Avec d'autres personnes qui se sont penchées sur cette question, nous avons essayé de réduire les emballages de bacs, de couvrir les problèmes, les cycles 3-SAT et hamiltoniens, et nous n'avons pas réussi à en faire fonctionner un.

Réponses:


10

Ceci est un croquis d'une réduction de MONOTONE CUBIC PLANAR 1-3 SAT:

Définition [1-3 problème SAT]:
Entrée: Une formule 3-CNF , dans laquelle chaque clause contient exactement trois littéraux: . Question: Existe-t-il une affectation satisfaisante pour telle que chaque clause contient exactement un vrai littéral.φ=C1C2...CmCjCj=(j,1j,2j,3)
φCj

Le problème reste NP-complet même si tous les littéraux des clauses sont positifs (MONOTONE), si le graphe construit des clauses de connexion avec des variables est planaire (PLANAR) et que chaque variable est contenue dans exactement 3 clauses (CUBIC) (C. Moore et JM Robson, Hard tiling problems with simple tiles, Discrete Comput. Geom.26 (2001), 573-590.).

Nous utilisons , et dans les figures, le jambon est représenté avec des boîtes bleues (jambon transgénique?), La pizza avec des boîtes orange.T=3,A=6

L'idée est d'utiliser des traces de jambon qui véhiculent des signaux positifs ou négatifs; la piste est faite avec une alternance de 1 et 2 morceaux de jambons placés assez loin pour qu'ils puissent être recouverts exactement par une tranche de pizza de la zone ; les segments de la piste sont marqués alternativement avec ou , la piste portera un signal positif si des tranches sont coupées sur les segments positifs:A+

entrez la description de l'image ici

Chaque variable , qui est connectée à exactement 3 clauses SAT, est représentée par trois points d'extrémité adjacents de trois pistes de jambon (segment positif), de telle sorte qu'il y a 2 façons distinctes de la couper, l'une "générera" un signal positif sur les 3 pistes (il représente l' affectation ) l'autre sur un signal négatif ( ). Notez que nous pouvons également générer des signaux positifs et négatifs mixtes, mais dans ce cas, au moins un jambon reste découvert .xixi=TRUExi=FALSE

entrez la description de l'image ici

Chaque clause de la formule 1-3 SAT avec 3 littéraux est simplement représentée par un seul jambon avec trois segments positifs entrants de trois pistes de jambon distinctes ; par construction, seule une des trois pistes portant un signal positif peut "recouvrir" la clause jambon.L i , 1 , L i , 2 , L i , 3CjLi,1,Li,2,Li,3

entrez la description de l'image ici

Enfin, nous pouvons créer des gadgets shift et turn pour transporter les signaux en fonction du graphique planaire sous-jacent et ajuster les points de terminaison:

entrez la description de l'image ici

Supposons que le graphique résultant contienne jambons. En construction chaque tranche de pizza doit contenir exactement 3 jambons, et dans tous les cas chaque tranche peut être agrandie jusqu'à la zone .AHA

Si la formule originale 1-3 SAT est satisfaisante, alors par construction, nous pouvons couper morceaux de pizza (avec une superficie totale de ) et aucun jambon ne reste à découvert.A H / 3H/3AH/3

Sur la direction opposée, si nous pouvons couper morceaux de pizza (avec une surface totale ) alors aucun jambon ne reste découvert, et les signaux sur les gadgets variables et sur les clauses sont cohérents: le jambon sur la clause est couvert par exactement une tranche positive provenant d'une variable positive, et chaque variable génère 3 signaux positifs ou 3 signaux négatifs (pas de signaux mixtes); de sorte que les coupures induisent une affectation 1-3 SAT valide.A H / 3H/3AH/3

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.