¿Cuál es el algoritmo más rápido para calcular el rango de una matriz rectangular?


15

Dada una matriz m×n (suponiendo que mn ), ¿cuál es el algoritmo más rápido para calcular su rango y base de las columnas?

Soy consciente de que se puede resolver a través de la intersección matroide lineal, lo que implica un algoritmo determinista de tiempo y un algoritmo aleatorio de tiempo O ( m n ω - 1 ) . ¿Existe un algoritmo determinista de tiempo O ( m n ω - 1 ) que reduzca más directamente el problema (o la eliminación gaussiana) a la multiplicación de matrices?O(mn1.62)O(mnω1)O(mnω1)

Respuestas:


9

Puede traer una matriz de en forma escalonada en el tiempo O ( n ω + ϵ ) para cualquier ϵ > 0 . Ver el libro "Teoría de la complejidad algebraica" de Bürgisser, Clausen, Shokrollahi, Sección 16.5.2n×nO(nω+ϵ)ϵ>0

Ahora aplica este procedimiento veces a su matriz m × n . Esto proporciona un algoritmo con operaciones aritméticas O ( m n ω - 1 ) .m/nm×nO(mnω1)

Si trae una matriz de en forma escalonada, entonces contiene una matriz cero de tamaño n × n después. Usted toma la matriz n × n restante, agrega un nuevo bloque n × n de su matriz de entrada y lo lleva a la forma escalonada y así sucesivamente.2n×nn×nn×nn×n


1
¿Te refieres a dividir las filas en m / n grupos? ¿Cómo se combinan los resultados de m / n para obtener el rango? Considere dos filas en forma escalonada de diferentes grupos que tienen 1 en la primera columna, pueden tener rango 2 ¿verdad? mm/nm/n
Ho Yee Cheung

¿Hay un límite inferior para esto? ¿Como en el rango tiene alguna fuerza computacional?
Thomas Ahle

3

Podemos calcular el rango de una m×n matriz A en O~(nnz(A)+rω) tiempo, donde nnz(A) es el número de no-cero entradas en A y r es el rango de A . Esto se desprende del Teorema 1.1 en Cheung et. Alabama. [CKL'13] y búsqueda binaria sobre r . Esto es más rápido que el algoritmo O(mnω1) mencionado anteriormente.


2
Supongo que te refieres a "más rápido que el algoritmo " (no puedo editar la respuesta yo mismo ya que la edición es demasiado pequeña)O(mnω1)
Smaper

1
Gracias por señalar eso. La cita anterior es un documento del OP, por lo que mi respuesta es principalmente para completar.
Ainesh Bakshi
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.