Problema semelhante ao conjunto de embalagem


7

Chame uma família de conjuntos "diversos" se cada conjunto tiver pelo menos um elemento exclusivo. Quais são as abordagens possíveis para encontrar o maior conjunto diversificado em uma família de conjuntos ?F={S1,…,Sk}Si∈FSF

Uma abordagem é resolver um problema de empacotamento de conjunto modificado. Suponha . Seja um subconjunto de elementos, , e . Então, o conjunto máximo diversificado corresponde ao maior pacote máximo obtido em que é o conjunto de todos os elementos não exclusivos em .F={S1,…,Sk}KK⊂⋃SiF−K={S1∖K,…,Sk∖K}SF−LLF

Mas, qual é uma boa heurística para escolher ? Ou existem abordagens melhores por completo?K


Bem-vinda! A base está definida como finita?
— Raphael

11
Observe que você está solicitando um conjunto mínimo de modo que o resultante seja uma anti-cadeia na relação de subconjunto. SF−S
— Nicholas Mancuso

Respostas:


2

O problema está NP-completo. Isso exclui um algoritmo exato que funciona em todas as circunstâncias, mas não exclui algoritmos heurísticos que funcionam bem na prática ou algoritmo de aproximações com garantias de aproximação prováveis.

A redução é da 3SAT. Dada uma instância 3SAT com as variáveis e cláusulas , construa o sistema de conjunto a seguir. Para cada variável existem dois conjuntos e e define e para cada cláusula existe um conjunto . O conjunto consiste nos seguintes elementos:ϕx1,…,xnϕ1,…,ϕmxiAi,0Ai,1N=n+1Bi,t={βi,t,0,βi,t,1}ϕjCj={γj,1,γj,2,γj,3}Ai,b

  • Os elementos .N+1αi,βi,1,b,…,βi,N,b
  • Para cada cláusula que contém como o ésimo literal e não é satisfeita por , o elemento .ϕjxikxi=bγj,k

Pode-se encontrar conjuntos diversos se e somente se for satisfatório. De fato, dada uma tarefa satisfatória , a família é diverso: pertence apenas a , pertence apenas a e se o ésimo literal de for satisfeito, então pertence apenas a .n(N+1)+mϕx→{Aixi:i∈[n]}∪{Bi,t:i∈[n],t∈[N]}∪{Cj:j∈[m]}αiAixiβi,t,1−xiBi,tkϕjγj,kCj

Para o inverso, suponha que seja uma família diversificada de tamanho pelo menos , particionado de acordo com o tipo do conjunto. Se contiver e para alguns , então . Portanto, , o que é impossível. Portanto, e devem conter todos os conjuntos do tipo correspondente e deve conter conjuntos, que juntos codificam uma atribuiçãoS=A∪B∪Cn(N+1)+mAAi,0Ai,1iBi,1,…,Bi,N∉B|S|≤2n+(n−1)N+m<n(N+1)+mBCAnx→ . Como é diverso, por construção a atribuição atende à cláusula , portanto, é satisfatório.Cj∈Sx→ϕjϕ

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.