Étant donné un sous-ensemble d'un produit cartésien de deux ensembles finis, je souhaite en trouver une couverture minimale par des ensembles qui sont eux-mêmes des produits cartésiens.
Par exemple, étant donné un produit entre et J = { 1 , 2 , 3 } , je peux observer le sous-ensemble { ( A , 2 ) , ( B , 3 ) , ( B , 2 ) } et essayez de le couvrir avec un nombre minimal de produits cartésiens.
Il existe deux façons de procéder: et { A , B } × { 2 } + { B } × { 3 } , les deux nécessitant 2 produits. Une solution sous-optimale peut la diviser en 3 produits triviaux.
Une telle couverture optimale peut-elle être trouvée efficacement (par exemple, en temps polynomial)?
algorithms
set-cover
yuvalm2
la source
la source
Réponses:
NM reformule ce problème dans les commentaires en trouvant le nombre minimum de cliques bipartites (bi-cliques) qui couvrent un graphe bipartite. les deux ensembles que vous mentionnez sont les 2 ensembles de sommets du graphe bipartite. les produits cartésiens des sous-ensembles des deux ensembles de sommets sont bicliques. wikipedia indique qu'il s'agit du problème de dimension bipartite et du problème GT18 à Garey et Johnson , NP complet prouvé sur la base d'une reformulation simple du problème de base d'ensemble SP7.
la source