Encontrar la solución más escasa para un sistema de ecuaciones lineales

13

¿Qué tan difícil es encontrar la solución más escasa para un sistema de ecuaciones lineales?

Más formalmente, considere el siguiente problema de decisión:

Instancia: Un sistema de ecuaciones lineales con coeficientes enteros y un número C .

Pregunta: ¿Existe una solución para el sistema con al menos C variables asignadas a cero?

También estoy tratando de determinar cuál es la dependencia de C . Es decir, tal vez el problema es FPT con el parámetro C .

Cualquier idea o referencia es realmente apreciada.

Michael Wehar
fuente

Respuestas:

12

Considere el problema de maximizar el número de ecuaciones lineales satisfechas sobre algún anillo R , que a menudo es NP-duro, por ejemplo en el caso R = ZMAX-LIN(R)RR=Z

Tomemos una instancia de este problema, donde A es una matriz n × m . Deje k = m + 1 . Construya un nuevo sistema lineal ˜ A ˜ x = ˜ b , donde ˜ A es una matriz k n × ( k n + m ) , ˜ x es ahora un vector dimensional ( k n + m ) y ˜ bAx=bAn×mk=m+1A~x~=b~A~kn×(kn+m)x~(kn+m)b~es un vector dimensional :kn

dondeInes lamatriz de identidadn×n.

A~=[AInInInInInInIn],b~=[b00]
Inn×n

Tenga en cuenta que este sistema siempre se satisface por el vector . De hecho, los primeros m entradas de ~ x puede ser arbitraria, y hay algo de vector solución con ese prefijo.x~=(0bbb)Tmx~

Ahora afirmo que la fracción de las ecuaciones de A x = b son satisfactorias si existe una solución dispersa de ˜ A ˜ x = ˜ b que tiene al menos δ n k ceros. Esto se debe a que cada fila satisfecha de A x = b produce k ceros potenciales cuando x se extiende a ˜ xδAx=bA~x~=b~δnkAx=bkxx~

Por lo tanto, si encontramos la escasez de la solución más escasa para , también hemos maximizadoδ, dividiendo la escasez pork.A~x~=b~δk

Por lo tanto, creo que su problema es NP-hard.

Joe Bebel
fuente
1
¡Frio! Gracias por compartir. Entonces, ¿cuál crees que es la dependencia de c? ¿Crees que podemos resolverlo en menos de dondenes el tamaño de entrada? poly(n)(nc)n
Michael Wehar
1
Claro: si suponemos que se le da qué elementos de x son cero, simplemente puede eliminar esos elementos de x para obtener una dimensión menor x ' y también eliminar las columnas correspondientes de A para obtener A ' . Luego use la eliminación gaussiana para decidir si el sistema reducido A x = b es factible; si es así, entonces has encontrado una solución escasa. Entonces, intentas todo ( ncxxxAAAx=b posibleAx. (nc)Ax
Joe Bebel
1
@MichaelWehar No sé si este problema es FPT o no
Joe Bebel
6

El problema es NP-completo, por reducción del siguiente problema: Dada una matriz A con entradas enteras y un vector entero b con n entradas, ¿existe un vector x 0-1 con A x = b ?m×nAbnxAx=b

Para cada coordenada xix

  • 100(n+m)xi+yi,k=0k=1,,100(n+m)
  • 100(n+m)xi+zi,k=1k=1,,100(n+m).

Furthermore use the old equation system Ax=b.

There exists a 0-1 solution to the original system Ax=b, if and only if the new system has a solution in which at least 100(n+m)n variables are zero.

Gamow
fuente
4

This problem is hard, in various settings. As stated in the other answers to this question, the problem is NP-complete over the integers.

In signal processing, the matrix and the vectors have rational entries, and this problem is sometimes called the sparse reconstruction problem. In this setting, the problem is NP-complete (see Theorem 1).

In coding theory, the entries are from a finite field, and this problem is sometimes called the maximum-likelihood decoding problem. In this setting, the problem is NP-complete and not in subexponential time, assuming the exponential time hypothesis. Furthermore, according to a previous version of a paper on arXiv (see Lemma C.2 in version 1 of the paper), the problem is W[1]-complete.

argentpepper
fuente
Your reference for W[1]-completeness does not appear to have a "Lemma C.2". ​ ​
@RickyDemer There is a Lemma C.2 in version 1 of the paper that he linked. However, version 2 seems to have a different title and was very recently changed.
Michael Wehar
That lemma uses a different parameterization from the OP. ​ ​
Oh I didn't realize there was an updated version, I'll take a look at it and update my answer accordingly.
argentpepper
As I mentioned in my previous comment, that "lemma uses a different parameterization from the OP", so even if we assume the result is true (despite having been removed from version 2), the OP's question about parameterized complexity would still be open. ​ ​