Le plus petit ensemble non inclus dans une collection d'ensembles


14

Etant donné que l' entrée d' un nombre entier et un ensemble S d'ensembles d'éléments de { 1 , . . . , N } , quelle est la complexité de trouver un ensemble T d'éléments de { 1 , . . . , n } tel que T a une cardinalité minimale et T n'est inclus dans aucun des ensembles de S ?nS{1,...,n}T{1,...,n}TTS


Jusqu'à présent, les deux réponses mentionnent des sets de frappe. notez que les ensembles de frappes apparaissent également dans les hypergraphes, appelés conversion transversale , et CNF DNF des formules booléennes monotones.
vzn

Réponses:


16

Soit , et que F = { S 1 , S 2 , , S m } 2 [ n ] soit la famille d'ensemble d'entrée. Sauf si j'ai mal compris la formulation de votre problème, nous voulons trouver un ensemble de taille minimale T [ n ] tel que T S i pour tout i = 1 , 2[n]={1,2,,n}F={S1,S2,,Sm}2[n]T[n]TSi .i=1,2,,m

Pour répondre à votre question, notez que si et seulement si T ( [ n ] S i ) . C'est,TSiT([n]Si) doit couper le complément de chaque S i . Mais cela signifie que votre problème est, pour l'essentiel, équivalent au problème de l'ensemble de frappe (considérez l'ensemble de frappe avec l'entrée G = { [ n ] S i : i = 1 , 2 , , m } ):TSiG={[n]Si : i=1,2,,m}

Jeu de frappe. Étant donné une famille définie F2[n] et un entier , existe-t-il un ensemble T [ n ] avec | T | k et T S pour tout S F ?kT[n]|T|kTSSF

Le jeu de frappe est connu pour être NP-complet et ne peut pas, en gros, être résolu plus rapidement qu'en temps moins que l'hypothèse de temps exponentiel fort échoue.O(2n)


Ah, j'ai pensé à frapper le set, mais je n'avais pas vu la réduction. Merci!
a3nm

11

Le problème est équivalent au problème de jeu de couverture / problème de jeu de frappe:

Étant donné une famille F de sous - ensembles de , trouver un ensemble T { 1 , ... , n } de la taille minimale possible qui coupe tout ensemble dans la famille F .{1,,n}T{1,,n}F

Votre problème est équivalent au problème de l'ensemble de frappes puisque ne se trouve dans aucun ensemble de S si et seulement s'il recoupe chaque ensemble de F = { ˉ A : A S } . (Donc, pour résoudre une instance du problème Hitting Set, il suffit de résoudre l'instance de votre problème avec S = { ˉ A : A F } .)TSF={A¯:AS}S={A¯:AF}

Le problème Hitting Set est NP-hard [Karp '72]. Il existe un algorithme d'approximation et une dureté de résultat d'approximation correspondante [Lund, Yannakakis '94, Feige '98].O(logn)

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.