Algoritmos matemáticos para
:
sistemas de ecuaciones lineales,
sistemas de ecuaciones lineales,
inversión de matrices y mínimos
cuadrados
Inversión de matrices
Definición (Inversa de una matriz): Sea A una matriz nxn. Una matriz C de nxn es una inversa de A si CA=AC=I.
Para la matriz no es difícil verificar que la matriz satisface que − − = 2 1 9 4 A = 4 1 9 2 C = − − 1 0 0 1 2 1 9 4 4 1 9 2
Se dice entonces que la matriz C es una inversa de la matriz A. Esto se define enseguida:
Teorema:
Sea A una matriz nxn con inversa C tal que CA=AC=I. Si D es otra matriz nxn tal que AD=I, entonces C=D.Demostración: Como la multiplicación de matrices es asociativa, se tiene que C(AD)=(CA)D, de donde, como AD=I y CA=I, se tiene que
Se denotará la inversa de una matriz A, cuando exista, como A-1. Entonces A
A-1 = A-1 A = I. Nótese que no se debe expresar A-1 como 1/A.
Definición: Una matriz cuadrada que tiene inversa se llama invertible. Una matriz cuadrada que no tiene inversa se llama singular.
Teorema:
La matriz = d c b a AInversión de matrices
es invertible si ad - bc ≠0, en cuyo caso la inversa está dada por la fórmula
Teorema:
Sean A y B matrices invertibles nxn. Entonces: a) AB es invertible b) (AB)-1 = B-1 A-1 c d − − − − − = − − − = − bc ad a bc ad c ad bc b bc ad d a c b d bc ad A 1 1inversión de matrices
Propiedades de la inversión de matrices
La matriz inversa, si existe, es única
A
-1·A = A·A
-1= I
(A
t)
–1= (A
-1)
t(A·B)
-1= B
-1·A
-1(A
-1)
-1= A
inversión de matrices
Observación:
Podemos encontrar matrices que cumplen A·B = I, pero que B·A ≠ I, en tal
caso, podemos decir que A es la inversa de B "por la izquierda" o que B es la inversa de A "por la derecha".
Por el método de Gauss-Jordan
Usando determinantes
Directamente
Hay varios métodos para calcular la matriz inversa de una matriz dada:
inversión de matrices
Dada la matriz buscamos una matriz que cumpla A·A-1 = I, es decir
Cálculo Directo de la Matriz Inversa
La matriz que se ha calculado realmente sería la inversa por la "derecha", pero es fácil comprobar que también cumple A-1 · A = I, con lo cual es realmente la inversa de A.
Cálculo de las inversas:
Sea A={aij}una matriz nxn. Para hallar A-1 si es que existe, se debe encontrar
una matriz X={xij} nxn tal que AX=I, esto es, tal que
= 1 0 0 0 1 0 0 0 1 2 1 2 22 21 1 12 11 2 1 2 22 21 1 12 11 ⋯ ⋮ ⋱ ⋮ ⋮ ⋯ ⋯ ⋯ ⋮ ⋱ ⋮ ⋮ ⋯ ⋯ ⋯ ⋮ ⋱ ⋮ ⋮ ⋯ ⋯ nn n n n n nn n n n n x x x x x x x x x a a a a a a a a a
Inversión de matrices
Esto es un sistema de ecuaciones con n vectores de incógnitas, y entonces es posible aplicar el Método de Gauss-Jordan para encontrar la inversa de A. La idea es transformar, por medio de operaciones elementales por filas, la matriz aumentada del sistema (A,I) a un sistema (I, A-1)
Sistema de ecuaciones lineales
a
11x
1+a
12x
2+...+a
1nx
n=b
1.
.
.
a
n1x
1+a
n2x
2+...+a
nnx
n=b
nSISTEMA DE ECUACIONES
SISTEMA DE ECUACIONES
LINEALES
LINEALES
sistema de ecuaciones lineales, por ejemplo 2x1- 3x2=7 3x1- x2=2,
tiene asociado una matriz A correspondiente a las incógnitas, y un vector b correspondiente a los términos independientes, es decir,
= 2 7 b − − = 1 3 3 2 A
Si ahora se escriben las incógnitas como un vector se puede denotar el sistema de ecuaciones lineales como Ax=b, es decir
Esta última ecuación sugiere la noción de multiplicación de una matriz A por un vector columna x. 2 − = 1 3 A = 2 1 x x x = − − 2 7 1 3 3 2 2 1 x x
Métodos directos e iterativos
Métodos directos e iterativos
DIRECTOS
DIRECTOS
•
Ax =b
ITERATIVOS
ITERATIVOS
•
x = Cx + d
•
Ax =b
•
x = A
-1b
•
Tamaño pequeño
•
x
(k+1)= Cx
(k)+ d
•
Tamaño grande
x=A
-1b
Lim
x->∞=Cx+d
Sistema de ecuaciones lineales
2x
1+3x
2=2
x
1+x
2=3
x
2=2/3-(2/3)x
1x
2=3-x
13-x
1=2/3-(2/3)x
13-2/3 =x
1-(2/3)x
12.333=0.333x
1x
1=7
Método de Jacobi
Método de Jacobi
A
L
D
U
x
(k 1)
D (b (L
1
U)x )
(k)
= + +
=
−
+
+
−
- U=triang. sup; L=triang. Inf.
- D=diag(A);
La ecuación A x = b se transforma en (D - L - U) x = b
Algoritmo Método de Jacobi
Algoritmo Método de Jacobi
función
Jacobi (A,)
//
x
0es una aproximación inicial a la solución//
K=0
Mientras
no convergencia
para
i=1
hasta
n
para
i=1
hasta
n
y=0
para
j=1
hasta
n
si
j
≠
i
entonces
y=y+a
ijx
jkx
i k+1= (b
i-y)/a
ii K=K+1Método de Gauss-Seidel
Método de Gauss-Seidel
x
(b
x
(b
a x
a x
a x )/ a
a x
a x
a x )/ a
1 (k+1) 1 (k+1) 12 2 (k) 13 3 (k) 1n n (k) 11 (k+1) (k) (k)= −
=
−
−
−
−
−
⋯
⋯
x
(b
x
(b
x
(b
a x
a x
a x )/ a
a x
a x
a x )/ a
a x
a x
a
x
)/ a
2 (k+1) 2 3 (k+1) 3 n (k+1) n 21 1 (k+1) 23 3 (k) 2n n (k) 22 31 1 (k+1) 32 2 (k+1) 3n n (k) 33 n1 1 (k+1) n2 2 (k+1) n,n 1 n 1 (k+1) nn=
−
=
−
=
−
−
−
−
−
−
−
− −⋮
⋯
⋯
⋮
⋮
⋱
⋮
⋯
Modelo matricial
Modelo matricial
A
L
D
U
(L
D)x
b Ux
x
(L
D) (b Ux )
(k 1) (k) (k 1) 1 (k)= + +
+
= −
=
+
−
+ + −- D = diag(A)
Algoritmo Método de Gauss-Seidel
Algoritmo Método de Gauss-Seidel
función
Gaussi (A, x, b)
//
x
0
es una aproximación inicial a la solución//
para
k=1
hasta
convergencia
para
i=1
hasta
n
para
i=1
hasta
n
y=0
para
j=1
hasta
n
si
j
≠
i
entonces
y=y+a
ij
x
j
APROXIMACIÓN DE MÍNIMOS
APROXIMACIÓN DE MÍNIMOS
Modelado de datos
•
El modelado de datos se puede expresar de la
siguiente forma:
•
Dadas:
(x , y )
–
Una colección finita de datos
–
Una forma funcional
•
Hallar los parámetros de la función
–
que mejor representen la relación entre los datos
(x
i, y
i)
y = f (x)
Para comprender datos experimentales, deseamos determinar una recta o una curva que “encaje” o “se ajuste” más (o describa mejor) estos datos
Imaginemos la siguiente tabla con los pasados de un curso en semestres pasados.
Curso 1 2 3 4 5 6
Ejemplo
Si quisiéramos trazar una recta que acerque a los puntos en la tabla hay muchas opciones. Sin embargo, hay una que se ajusta mejor a estos datos, bajo cierto criterio.
Caso anterior es y = 0.13333 + 0.05 x Curso Porcentaje de pasados 1 0.70 0.75 0.80 0.80 0.85 0.80 2 3 4 5 6
La
relación
entre
dos
variables
métricas
puede
ser
representada mediante la línea de mejor ajuste a los datos.
Esta recta se le denomina recta
recta de
de regresión,
regresión, ypuede ser
negativa o positiva, la primera con tendencia decreciente y la
segunda creciente.
Para el cálculo de la recta de regresión se aplica el método de
mínimos cuadrados entre dos variables.
Esta línea es la que hace mínima la suma de los cuadrados de
los residuos.
GRÁFICOS DE DISPERSIÓN / RECTA DE REGRESIÓN
y = a + bx
y = a + bx
Modelado de datos
•
Se busca minimizar unos residuos
( )
( )
( )
ik
y k
if x
iε
=
−
f (x) = ax+b
Un ejemplo (x (x11,y,y11)) (x (x22,y,y22)) (x (x33,y,y33)) (x (x44,y,y44)) (x (x55,y,y55)) (x (x66,y,y66)) (x (x77,y,y77))f (x) = ax+b
Un ejemploCriterio de los minimos cuadrados
•
Formulacion del ajuste por Minimos
cuadrados:
( )
2( )
1,
N kJ a b
=
∑
=ε
k
( ) ( )
k
y k
f x k
(
( )
)
ε
=
−
donde N es el numero de datos entrada-salida dado
( ) ( )
k
y k
f x k
(
( )
)
Llamemos a “u” perturbación o error, siendo la diferencia que hay entre el valor observado de la variable exógena (y) y el valor estimado que
obtendremos a través de la recta de regresión .
La metodología para la obtención de la recta será hacer MÍNIMA la suma de los CUADRADOS de las perturbaciones. ¿Por qué se elevan al cuadrado?
ˆi y
i
i
a
bx
y
=
+
∧
los CUADRADOS de las perturbaciones. ¿Por qué se elevan al cuadrado?
2 2
ˆ
(
)
i i iu
=
y
−
y
2 2 1 1ˆ
(
)
n n i i i i iu
y
y
= ==
−
∑
∑
(
)
2 2 2 , 1 1 1ˆ
(
)
min
n n n i i i i i q p i i ix
p
u
y
y
y
q
= = =
=
−
=
− +
∑
∑
∑
a
b
Un problema de optimizacion
•
Aproximaciones computacionales:
–
Algoritmos numéricos generales para la minimización de
una función
• Basados en el gradiente; algoritmos numéricos generales para
• Basados en el gradiente; algoritmos numéricos generales para hallar raíces; algoritmos que aprovechan la forma de la función
–
Algoritmos con una aproximación basada en la inteligencia
artificial: algoritmos genéticos
La aproximacion de funciones
•
Al realizar la aproximacion de una funcion,
sólo están disponibles un número finito de
muestras
( ) ( )
(
)
(
( ) ( )
)
(
( ) ( )
)
{
1 ,
ˆ
1 ,
,
,
ˆ
,
,
ˆ
}
NZ
=
u
y
⋯
u k
y k
⋯
u N
y N
Ejemplo: una entrada, una salida
8 10 12 14 16 Y 0 2 4 6 0 1 2 3 4 5 6 7 8 9 10 XEjemplo: dos entradas, una salida
0
2
3
,1
,5
,6
2
4
6
TZ
=
Modelos lineales vs . No lineales
•
Es común asumir que
f
(
u
) pertenece a una
familia de funciones que comparten la misma
estructura
y difieren por los valores tomados
por ciertos
parámetros
θ
.
por ciertos
parámetros
θ
.
( )
,
El modelo lineal
•
Un modelo lineal asume que la función es
lineal respecto a los
parámetros
θ
( )
,
( )
( )
( )
f u
( )
,
θ
=
θ
1 1f u
( )
+
θ
2f
2( )
u
+ +
⋯
θ
qf
q( )
u
f u
θ
=
θ
f u
+
θ
f
u
+ +
⋯
θ
f
u
Aquí, la linealidad se refiera a “con respecto a los parametros”
Modelos no-lineales
•
En los modelos lineales la función es
no-lineal respecto a los
paramétros
θ
( )
,
exp
(
)
f u
( )
,
θ
=
exp
(
−
u
θ
)
f u
θ
=
−
u
θ
Estimación de Mínimos Cuadrados
Lineal
Dada una colección finita de observaciones
ZN = {u(0), y(0), u(1), y(1), ..., u(N), y(N)}
Y U U Y
( )
ˆy
=
g u
t t Y U Proceso Modelo Regresor lineal( )
ˆy
=
g u
•
El método de regresión de mínimos cuadrados
consiste en encontrar la curva o función que mejor se
ajuste a una serie de puntos (Xi,Yi), obtenidos
generalmente a partir de un experimento.
•
La estrategia consiste en minimizar las diferencias
Mínimos Cuadrados
•
La estrategia consiste en minimizar las diferencias
entre la función y los datos observados.
•
El caso o ejemplo más sencillo es el ajuste de una
función lineal a la serie de puntos.
Regresión lineal
Se asume que la relación entrada-salida puede ser
descrita por una estructura de
regresor lineal
f(u,θ) es denominada la funcion de ajuste. Las f
i(u) son
denominadas las funciones base
( )
,
1 1( )
2 2( )
q q( )
Algunas funciones base
•
Funciones polinomiales
•
Funciones base Gausianas
( )
j jf u
=
u
(
)
2µ
− •
Funciones base Gausianas
•
Funciones base Sigmoidales
•
Fourier
wavelets
( )
(
)
2 2 exp 2 j j u f uµ
σ
− = − 1 ( ) 1 exp( ) j f u a = + −Regresión
Regresión Lineal
Lineal
La gráfica muestra el
ajuste de la nube de
puntos a una línea recta
e
BX
A
Y
=
+
+
Como los datos X, Y
son conocidos, el
son conocidos, el
objetivo es entonces
encontrar los mejores
valores para los
coeficientes A, B, tal
que
e
0.
e representa las diferencias entre el modelo lineal y las observaciones
Los errores cometidos
•
Dados unos datos y el modelo
lineal, deseamos calcular los
“mejores” parámetros.
•
Queremos minimizar los
•
Queremos minimizar los
errores.
Error en la aproximación
Y
(
e
i
= Yi
– A - B*Xi
) El objetivo es minimizarel error cometido con la aproximación
X
Xi Éste se representa como
la distancia entre el valor real y el aproximado
Los residuos
•
El ajuste de minimos cuadrados halla el vector
de parametros
θ
tal que se minimiza
( )
2
1
N
J
=
∑
ε
k
( ) ( )
k
y k
ˆ
f u k
(
( )
,
)
ε
=
−
θ
( )
2
1
1
N
k
J
k
N
=
ε
=
∑
residuos
= erroresCriterio para el mejor ajuste
•
Como se tiene una serie de n puntos (Xi, Yi)
(i=1,…,n), la acumulación de los errores será:
∑
∑
n
e
i
=
n
(
Y
i
−
A
−
BX
i
)
•
Para que los valores de error positivos y negativos
no se cancelen entre sí, éstos se deben elevar al
cuadrado
∑
∑
=
=
−
−
=
i
i
i
i
i
Y
A
BX
e
1
1
)
(
Cancelación de errores…
•
Para este ejemplo de
dos puntos, los errores
e
1y e
2se cancelan.
•
La suma de los errores =
0
Y0
X1 X2 2 1 1 2)
(
∑
∑
= =−
−
=
n i i i n i iY
A
BX
e
∑
∑
=
=
−
−
=
=
n
i
i
i
n
i
i
Y
A
BX
e
S
1
2
1
2
)
(
Regresión Lineal
Regresión Lineal
•
Sea:
•
Como el objetivo es encontrar
A
y
B,
tal que
S
sea mínimo, para esto se deriva
S
parcialmente con respecto a
A
y
B
Sistema de ecuaciones para encontrar A y B
•
Las derivadas parciales de
S
con respecto a
A
y
a
B
se hacen cero, así:
∑
−
−
−
=
=
∂
0
)
1
)(
(
2
Y
A
BX
S
(1)∑
−
−
−
=
=
∂
∂
∑
−
−
−
=
=
∂
∂
0
)
)(
(
2
0
)
1
)(
(
2
X
BX
A
Y
B
S
BX
A
Y
A
S
(1) (2)En resumen las fórmulas para calcular los coeficientes A y B de una función lineal de regresión con sólo dos tipos de variables X y Y son:
Regresión Lineal
Regresión Lineal -- Fórmulas
Fórmulas
∑
N(
X
−
X
)(
Y
−
Y
)
X
B
Y
A
=
−
∑
∑
∑
∑
= = = ==
=
−
−
−
=
N i N i i i N i i i i iY
N
Y
X
N
X
X
X
Y
Y
X
X
B
1 1 1 2 1;
1
;
1
)
(
)
)(
(
Regresión Lineal
Regresión Lineal -- Algoritmo
Algoritmo
Entrada: Número de datos
n
, datos
(x,y)
sumx
,
sumy
,
sumxy
,
sumx2
= 0
i=0
Mientras
i<=n-1
sumx=sumx+x(i)
sumx=sumx+x(i)
sumy=sumy+y(i)
sumx2=sumx2+(x(i)*x(i))
sumxy=sumxy+(x(i)*y(i))
i=i+1
Denominador
=sumx*sumy-n*sumx2
a=(sumx*sumy-n*sumxy)/Denominador
b
=(sumx*sumxy-sumx2*sumy)/Denominador
Imprimir a y b
:
:
Ae
Y
l
Exponencia
AX
Y
Potencia
BX B=
=
Regresión No Lineal
Regresión No Lineal
Hay ocasiones en las cuales la relación existente entre X y Y no es lineal, sin embargo ésta puede ser descrita por algún otro tipo de función. EJ:
2 2 2 1 0
:
...
:
)
(
)
(
)
(
)
(
);
(
:
:
CX
BX
A
Y
Parabólica
X
A
X
A
X
A
A
Y
Polinómica
A
Log
BX
Y
Log
A
Log
X
BLog
Y
X
BLog
A
Y
a
Logarítmic
Ae
Y
l
Exponencia
N N e e BX+
+
=
+
+
+
+
=
+
=
+
=
+
=
=
• Relación
no-lineal entre las
variables X y Y.
3. Regresión No Lineal
3. Regresión No Lineal
Y•
Posiblemente
parabólica???
XRegresión
Regresión no
no--lineal:
lineal: Potencia
Potencia
:B
AX
Y
=
(
)
N
X
Log
X
Log
N
Y
Log
X
Log
Y
Log
X
Log
B
N i i N i i N i N i i N i i i i 2 1 1 2 1 1 1)
(
)
(
)
(
)
(
)
(
*
)
(
∑
−
∑
∑
∑
∑
−
=
= = = = = ;;N
i 1 i∑
=
∑
−
∑
=
= =N
X
Log
B
N
Y
Log
A
N i i N i 1 i 1)
(
)
(
exp
Regresión
Regresión no
no--lineal:
lineal: Exponencial
Exponencial
:BX