Saltar al contenido principal
LibreTexts Español

41.3: Sistemas sobredeterminados

  • Page ID
    115014
  • \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \) \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)\(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\) \(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\)\(\newcommand{\AA}{\unicode[.8,0]{x212B}}\)

    import numpy as np
    import sympy as sym

    Cuando tenemos más ecuaciones que incógnitas, tenemos el sistema sobredeterminado\(Ax=b\). En esta asignación, asumimos que la matriz\(A\) tiene rango de columna completo. Por lo tanto, el sistema puede no ser factible, es decir, no podemos encontrar\(x\) tal que\(Ax=b\). Entonces queremos encontrar el\(x\) para minimizar\(\|Ax-b\|^2\), que es el problema de mínimos cuadrados. Mencionamos en asignaciones anteriores que podemos resolver este problema de mínimos cuadrados encontrando el inverso izquierdo de la matriz\(A\). Eso es\(x=(A^\top A)^{-1}A^\top b\).

    En esta tarea, mostramos que podemos resolverlo por QR decomposion.

    Considere el siguiente sistema de ecuaciones:

    \[\begin{split}\begin{bmatrix}5&-2&2 \\ 4 & -3 &4 \\ 4& -6 &7 \\ 6 & 3 & -3\end{bmatrix}\begin{bmatrix}x_1\\x_2\\x_3\end{bmatrix}=\begin{bmatrix}1\\2\\3\\-1\end{bmatrix}\end{split} \nonumber \]

    Hacer esto

    Resolvemos el problema de mínimos cuadrados en los siguientes pasos

    • Encuentra la descomposición QR de la matriz\(A\) tal que\(R\) sea una matriz cuadrada superior triangular. (\(Q\)ya no es una matriz cuadrada)
    • Usa la función back_subst que definimos antes para resolver\(Rx=Q^{\top}b\)
    A = np.matrix([[5, -2, 2], [4, -3, 4], [4,-6,7], [6,3,-3]])
    b = np.matrix([[1],[2],[3],[-1]])
    display(sym.Matrix(A))
    display(sym.Matrix(b))
    ## Your code starts ##
    x =  
    ## Your code ends ##
    print(type(x))   # x is a column vector in the np.matrix type
    print(x)

    No podemos usar el np.linalg.solve porque la matriz no\(A\) es una matriz cuadrada (puedes probar si no lo crees). Sin embargo, podemos usar la función np.linalg.lstsq para encontrar la solución de mínimos cuadrados para minimizar\(\|Ax-b\|^2\). La siguiente celda compara el resultado de lstsq y nuestro resultado de la descomposición QR. (Si todo es correcto, esperarás un resultado True.)

    np.allclose(x, np.linalg.lstsq(A,b)[0])
    Hacer esto

    Explique por qué podemos usar la descomposición QR para resolver el problema de mínimos cuadrados.


    This page titled 41.3: Sistemas sobredeterminados is shared under a CC BY-NC 4.0 license and was authored, remixed, and/or curated by Dirk Colbry via source content that was edited to the style and standards of the LibreTexts platform; a detailed edit history is available upon request.