Teorema. El problema en la publicación es NP-hard, por reducción de Subset-Sum.
Por supuesto, se deduce que es poco probable que el problema tenga un algoritmo de poli-tiempo según lo solicitado por op.
Aquí está la intuición. El problema en la publicación es
- ¿Hay una matriz de permutación en el lapso de un conjunto dado de matrices?
Esto es esencialmente lo mismo que
- ¿Existe una matriz de permutación que (pensando en la matriz como un vector) satisface algunas restricciones lineales dadas?
Esto a su vez es lo mismo que
- ¿Existe una coincidencia perfecta (en un gráfico bipartito completo) cuyo vector de incidencia satisfaga algunas restricciones lineales dadas?
Reducir la suma de subconjuntos al último problema es un ejercicio estándar.
Aquí está la prueba detallada.
Defina el siguiente problema intermedio:
Suma coincidente:
entrada: gráfico completo bipartito con los pesos de borde entero no negativo, y el objetivo entero no negativo T .G = ( U, V, E)T
salida: ¿ contiene una combinación perfecta de peso exactamente T ?solT
Lema 1 . El tiempo polivinílico de Subset-Sum se reduce a Suming-Sum.
Probar esto es un ejercicio de tarea estándar. La prueba está al final.
Lema 2. La coincidencia de tiempos polivinílicos se reduce al problema en la publicación.
Prueba de lema 2. Arregle una entrada de suma de coincidencias: un gráfico bipartito completo con pesos de bordes enteros no negativos w : U × V → N + , y objetivo T ∈ N + , donde U = { u 1 , ... , u n } y V = { v 1 , ... , v n } . Para cada yoG = ( U, V, E)w : U× V→ N+T∈ N+U= { u1, ... , unorte}V= { v1, ... , vnorte} , n + 1 = w ( u , defina M ( i j ) como la matriz en R ( n + 1 ) × ( n + 1 ) donde M ( i j ) i j = T , y M ( i j ) n + 1i , j ∈ { 1 , 2 , ... , n }METRO( i j )R( n + 1 ) × ( n + 1 )METRO( i j )yo j= T , y todas las demás entradas son cero. La reducción genera el siguiente conjunto de matrices:
{ M ( i j ) : i , j ∈ { 1 , ... , n } } .
Esto define la reducción.METRO( i j )n + 1 , n + 1= w ( uyo, vj)
{ M( i j ): i , j ∈ { 1 , ... , n } } .
Reclamación. El lapso de este conjunto de matrices consiste en aquellas matrices satisfacen las restricciones lineales M h , n + 1 = M n + 1 , h = 0 para todo h ≤ n y la restricción lineal METRO∈ R( n + 1 ) × ( n + 1 )METROh , n + 1= Mn + 1 , h=0h≤n
∑ni=1∑nj=1Mijw(ui,vj)=TMn+1,n+1.
( Prueba de reclamación. Al inspeccionar cada matriz en el conjunto satisface estas restricciones, por lo que toda combinación lineal de esas matrices sí. Por el contrario, si M ∈ R ( n + 1 ) × ( n + 1 ) satisface las restricciones , entonces M es igual a la combinación lineal M ′ = ∑ n i = 1 ∑ n j = 1 α i j M ( i jM(ij)M∈R( n + 1 ) × ( n+1)M de las matrices, donde α i jM′=∑ni=1∑nj=1αyojM( i j ) . Tenga en cuenta en particular que, por las diversas definiciones y las restricciones lineales,
M ′ n + 1 , n + 1 = ∑ i j α i j w ( u i , v j i j w ( u i , v jαij=Mij/M(ij)ij=Mij/T
Esto prueba el reclamo).
METRO′n + 1 , n + 1= ∑yo jαyo jw ( uyo, vj) = ∑yo jMETROyo jw ( uyo, vj) / T= ( TMETROn + 1 , n + 1) / T= Mn + 1 , n + 1.
Ahora mostramos que la reducción es correcta. Es decir, el gráfico dado tiene una coincidencia de peso T si y solo si el conjunto de matrices abarca una matriz de permutación.solT
( Solo si ) . Primero suponga que la gráfica dada tiene una ponderación T perfecta que coincide con M ' . Supongamos que M ∈ { 0 , 1 } ( n + 1 ) × ( n + 1 ) sea la matriz de permutación n × n correspondiente , con una fila y columna adicionales agregadas de modo que M n + 1 , n + 1 = 1 y M h , n +solTMETRO′METRO∈ { 0 , 1 }( n + 1 ) × ( n + 1 )n × nMETROn + 1 , n + 1= 1 , n + 1 =1para todoh≤n. Entonces ∑ n i = 1 ∑ n j = 1 M i j w( u i , v j )es el peso de M ′ , es decir,Ty M n + 1METROh , n + 1= Mn + 1 , h= 0h ≤ n∑nortei = 1∑nortej = 1METROyo jw ( uyo, vj)METRO′TMETROn + 1 , n + 1= 1, Por lo que las restricciones lineales en la bodega de la reivindicación, y el lapso de la conjunto dado de matrices contiene la matriz de permutación .METRO
( Si. ) Por el contrario, supongamos que el lapso contiene cualquier matriz de permutación . Según la afirmación, la única entrada distinta de cero en la fila n + 1 o la columna n + 1 es M n + 1 , n + 1 , por lo que (como M es una matriz de permutación) debe ser que M n + 1 , n + 1 = 1 . Entonces, eliminar la última fila y columna da una matriz de permutación n × n . Deje que M ' sea la combinación perfecta deMETROn + 1n + 1METROn + 1 , n + 1METROMETROn + 1 , n + 1= 1n × nMETRO′ correspondiente a esamatriz de permutación n × n . El peso de M ' es Σ n i = 1 Σ n j = 1 M i j w ( u i , v j ) , que (por la demanda) es T M n + 1 , n + 1 = T . Entonces, el gráfico dado tiene unacoincidencia depeso- T , lo que demuestra el Lema 2 .soln × nMETRO′∑nortei = 1∑nortej = 1METROyo jw ( uyo, vj)TMETROn + 1 , n + 1= TT □
Aquí está la prueba retrasada de Lemma 1:
Prueba de lema 1. Dada la instancia de suma de subconjuntos , la reducción genera la instancia de suma de coincidencias ( G = ( U , V , E ) , T ) donde U = { u 1 , u 2 , ... , u 2 n } , V = { v 1 , v 2 ,( w , T) ∈ Nnorte+×N+(G=(U,V,E),T)U={u1,u2,…,u2n} , para cada i ∈ { 1 , ... , n } , edge ( u i , v i )V={v1,v2,…,v2n}i ∈ { 1 , ... , n }( uyo, vyo) tiene un peso , y todos los bordes restantes tienen un peso cero.wyo
Para cualquier coincidencia perfecta con pesos de aristas que sumen , el conjunto S = { i : ( u i , v i ) ∈ M , i ≤ n } es una solución para la instancia de Subset-Sum dada (ya que estos son los únicos no bordes de peso cero en M ).TS= { i : ( uyo, vyo) ∈ M, i ≤ n }METRO
Por el contrario, dada cualquier solución para la instancia de Subconjunto-Suma, diga con ∑ i ∈ S w i = T , el conjunto de aristas { ( u i , v i ) : i ∈ S } es una coincidencia parcial con el peso T , y se extiende fácilmente a una coincidencia perfecta de peso- T agregando, por ejemplo, el siguiente conjunto de bordes (peso cero):S⊆ { 1 , ... , n }∑i ∈ Swyo= T{ ( uyo, vyo) : i ∈ S}TT
{ ( ui + n, vi + n) : i ∈ S} ∪ ⋃i ∈ { 1 , ... , n } ∖ S{ ( uyo, vi + n) , ( ui + n, vyo) } .
Esto prueba el Lema 1. El teorema se desprende de los Lemas 1 y 2. □
ps Como un aparte, de acuerdo con esta respuesta , la restricción de Matching-Sum a instancias con pesos de borde polinomialmente limitados está en P. Pero estoy seguro de que la restricción del problema en la publicación a matrices con polinomialmente acotado (entero ) las entradas siguen siendo NP hard.