¿Existe un algoritmo de tiempo polinómico para determinar si el lapso de un conjunto de matrices contiene una matriz de permutación?


30

Me gustaría encontrar un algoritmo de tiempo polinómico que determine si el lapso de un conjunto dado de matrices contiene una matriz de permutación.

Si alguien sabe si este problema es de una clase de complejidad diferente, sería igual de útil.


EDITAR: He etiquetado esta pregunta con la Programación lineal, porque tengo una fuerte sospecha de que si existiera tal solución, sería una especie de algoritmo de programación lineal. La razón por la que creo esto es porque los puntos extremos del politopo de Birkhoff son precisamente las matrices de permutación. Si luego pudiera encontrar una función objetivo que se maximice o minimice solo en los vértices del politopo de Birkhoff, podría restringir su función a la intersección del politopo y su subespacio vectorial, luego maximizarla en tiempo polinómico. Si este valor fuera una matriz de permutación, sabría que el conjunto contiene una permutación. Esos son mis pensamientos sobre el tema.


EDITAR 2: Después de pensar un poco más, me parece que las matrices de permutación son precisamente los elementos del Politopo de Birkhoff con la norma euclidiana , consideramos que el politopo de Birkhoff es el casco convexo de los matrices de permutación. Quizás eso también podría ser significativo.nn×norte


EDITAR 3: agregué la etiqueta de programación semidefinida, porque después de mi comentario anterior, estoy empezando a pensar que una solución de programación semidefinida puede ser posible ya que ahora es un algoritmo de optimización cuadrática con restricciones lineales.


2
¿Qué tipo de entradas tendrían las matrices de entrada?

Las entradas pueden estar en cualquier campo, hay cierta libertad en cómo configurar las matrices; sin embargo, desea un campo suficientemente grande (por lo que un campo de la característica 2 no sería bueno, por ejemplo).
Nick

¿Puede explicar cuál es el lapso de un conjunto de matrices?
Mohammad Al-Turkistany

Mohammad: Creo que es una combinación lineal de un conjunto de matrices.
Vivek Bagaria

44
@DavidRicherby Creo que la confusión de Mohammad proviene del hecho de que usualmente pensamos que las matrices representan mapas lineales, y la extensión del mapa lineal a veces se usa como otro término para su rango. Pero eso no tiene sentido aquí, así que supongo que debemos pensar en las matrices como elementos de un espacio vectorial
Sasho Nikolov

Respuestas:


5

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 ?GT


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×VN+TN+U={u1,,un}V={v1,,vn} , 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}M(ij)R(n+1)×(n+1)Mij(ij)=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.Mn+1,n+1(ij)=w(ui,vj)

{M(ij):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 MR(n+1)×(n+1)Mh,n+1=Mn+1,h=0hnorte

yo=1nortej=1norteMETROyojw(tuyo,vj)=TMETROnorte+1,norte+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 = 1n j = 1 α i j M ( i jMETRO(yoj)METROR(norte+1)×(norte+1)METRO de las matrices, donde α i jM=yo=1nortej=1norteαyojMETRO(yoj) . 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/Mij(ij)=Mij/T Esto prueba el reclamo).

METROnorte+1,norte+1=yojαyojw(tuyo,vj)=yojMETROyojw(tuyo,vj)/ /T=(TMETROnorte+1,norte+1)/ /T=METROnorte+1,norte+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 +solTMETROMETRO{0 0,1}(norte+1)×(norte+1)norte×norteMETROnorte+1,norte+1=1 , n + 1 =1para todohn. Entoncesn i = 1n j = 1 M i j w( u i , v j )es el peso de M , es decir,Ty M n + 1METROh,norte+1=METROnorte+1,h=0 0hnorteyo=1nortej=1norteMETROyojw(tuyo,vj)METROTMETROnorte+1,norte+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 deMETROnorte+1norte+1METROnorte+1,norte+1METROMETROnorte+1,norte+1=1norte×norteMETRO 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 .solnorte×norteMETROyo=1nortej=1norteMETROyojw(tuyo,vj)TMETROnorte+1,norte+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)N+n×N+(G=(U,V,E),T)U={u1,u2,,u2n} , para cada i { 1 , ... , n } , edge ( u i , v i )V={v1,v2,,v2n}yo{1,...,norte}(tuyo,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={yo:(tuyo,vyo)METRO,yonorte}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,...,norte}yoSwyo=T{(tuyo,vyo):yoS}TT

{(tuyo+norte,vyo+norte):yoS}yo{1,...,norte}S{(tuyo,vyo+norte),(tuyo+norte,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.


2
Parece que tomas el casco convexo de las matrices en lugar del tramo. El lapso de las matrices que describió es el espacio completo de las matrices. ¿O me estoy perdiendo algo?
Vanessa

@Squark, tienes razón: malinterpreté "span". Gracias. Corregí la prueba para usar la definición correcta de span (como cualquier combinación lineal de las matrices).
Neal Young

M(ij)w(ui,vj), so that we don't have to divide by something which might be 0? Also, it seems like the proof can be somewhat simplified by combining the two reductions without the intermediate problem.
Vanessa

Buen punto sobre dividir por cero. Lo arreglaré Sin embargo, dejaré las dos reducciones separadas, para mí es más intuitivo de esa manera.
Neal Young

3

Con respecto al problema de calcular el diámetro de un politopo presentado como la intersección de medios espacios, el problema es NP-duro en general, y también NP-difícil de aproximar dentro de cualquier factor constante, vea el artículo de Brieden y las referencias en el mismo. Creo que para politopos simétricos centralmente, un SDP da unO(Iniciar sesiónmetro) aproximación donde metroes el número de desigualdades que definen el politopo. Bosquejo esto debajo de la línea.

En su caso, el politopo de Birkhoff PAGS no es centralmente simétrico, sino que funciona con el casco convexo de PAGS y -PAGSes suficiente para sus propósitos. Creo que este politopo "Birkhoff simétrico" puede representarse como el conjunto de todas las matrices cuadradasMETRO que satisfacen:

yo,j:yoMETROyoj=jMETROyoj=do

yo,j:-1METROyoj1

-1do1

Si esta es una representación correcta (no estoy seguro), puede agregar las restricciones que restringen este politopo a su subespacio dado. No es difícil adaptar el SDP debajo de la línea a esta representación, pero elijo no pasar por él para mantener la notación manejable.

No estoy seguro de qué diámetro aproximado hace para su problema: probablemente le permite decidir si el subespacio dado está cerca de una matriz de permutación o lejos de todos ellos, pero no he calculado los cálculos.


Permítanme terminar con un boceto del redondeo de SDP (que es una tarifa bastante estándar). DejarPAGS={X:-siUNAXsi} ser un politopo centralmente simétrico, donde UNA es metro×norte. Defina el programa vectorial:

α2=maxyo=1nortevyo22

sujeto a:

1yometro:j=1norteUNAyojvj22siyo2

Sobre el vyo ir más allá norte-dimensionales vectores. Esto se puede escribir como un SDP en la forma estándar y es una relajación del diámetro dePAGSes decir α es al menos el diámetro euclidiano de PAGS.

Ahora afirmo que αO(Iniciar sesiónmetro)diam(PAGS). Para mostrar esto, te daré un algoritmo que, dado(vyo)yo=1norte de valor α, salidas XPAGS de longitud al menos αO(Iniciar sesiónmetro). El algoritmo es solo una proyección aleatoria: elija una aleatorianortevector tridimensional sol donde cada solyoEs un gaussiano estándar. ConjuntoX~yo=solTvyo. Por propiedades estándar de gaussianos:

mi X~22=α2
yometro:mi El |(UNAX~)yoEl |2siyo2    mi maxyo=1metroEl |(UNAX~)yoEl |siyodoIniciar sesiónmetro.
donde el último límite es lo suficientemente grande do (este es un hecho estándar sobre el máximo de metro variables aleatorias subguassianas, y pueden probarse utilizando el límite de Chernoff).

Las dos ecuaciones ya implican que existe un X tal que XPAGS y X221doIniciar sesiónmetroα. O, usando límites de concentración, puede mostrar eso con probabilidad constante12doIniciar sesiónmetroX~PAGS y X~212α.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.