Álgebra matricial y programación lineal

22
TEMA 1. ´ Algebra matricial y programaci´on lineal Muchos problemas en las matem´aticas y sus aplicaciones conducen asistemas de ecuaciones lineales, del tipo: a 11 x 1 + a 12 x 2 + ··· + a 1n x n = b 1 a 21 x 1 + a 22 x 2 + ··· + a 2n x n = b 2 ··························· a m1 x 1 + a m2 x 2 + ··· + a mn x n = b m , donde a ij , b i son n´ umeros reales. Una forma satisfactoria de discutir estos sistemas (y de resolverlos) es introduciendo las matrices y reescribi´ endolos en la llamada forma matricial. En este tema estudiaremos las matrices y sus propiedades, as´ ı como la discusi´on y resoluci´on de sistemas. 1.1. Matrices Una matriz real de tama˜ no m × n es un conjunto de mn elementos distribuidos en m filas y n columnas. Cada fila tiene n elementos, mientras que cada columna tiene m: A = a 11 a 12 ··· a 1n a 21 a 22 ··· a 2n . . . . . . . . . . . . a m1 a m2 ··· a mn . Normalmente, las matrices siempre se denotan con letras may´ usculas, y se suelen abreviar as´ ı: A = {a ij } i=1,··· ,m j=1,··· ,n . Observemos que en el elemento a ij el sub´ ındice i hace alusi´on a la fila y el j a la columna. El conjunto de las matrices m × n con elementos reales se suele denotar por M m×n (R). 1

Upload: dangdiep

Post on 12-Feb-2017

223 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Álgebra matricial y programación lineal

TEMA 1. Algebra matricial y programacion lineal

Muchos problemas en las matematicas y sus aplicaciones conducen a sistemas deecuaciones lineales, del tipo:8>><>>: a11x1 + a12x2 + · · ·+ a1nxn = b1

a21x1 + a22x2 + · · ·+ a2nxn = b2

· · · · · · · · · · · · · · · · · · · · · · · · · · ·am1x1 + am2x2 + · · · + amnxn = bm,

donde aij, bi son numeros reales. Una forma satisfactoria de discutir estos sistemas (yde resolverlos) es introduciendo las matrices y reescribiendolos en la llamada formamatricial. En este tema estudiaremos las matrices y sus propiedades, ası como ladiscusion y resolucion de sistemas.

1.1. Matrices

Una matriz real de tamano m × n es un conjunto de mn elementos distribuidosen m filas y n columnas. Cada fila tiene n elementos, mientras que cada columnatiene m:

A =

�a11 a12 · · · a1n

a21 a22 · · · a2n

......

. . ....

am1 am2 · · · amn

�.

Normalmente, las matrices siempre se denotan con letras mayusculas, y se suelenabreviar ası:

A = {aij} i=1,··· ,m

j=1,··· ,n

.

Observemos que en el elemento aij el subındice i hace alusion a la fila y el j a lacolumna. El conjunto de las matrices m × n con elementos reales se suele denotarpor Mm×n(R).

1

Page 2: Álgebra matricial y programación lineal

2

Por su especial relevancia en las aplicaciones, destaquemos algunos tipos parti-culares de matrices:

Matriz fila (vector fila):�

a1 a2 · · · an

�1 × n

Matriz columna (vector columna):

�a1

a2...

am

�m × 1

Matriz cuadrada:

�a11 a12 · · · a1n

a21 a22 · · · a2n

......

. . ....

an1 an2 · · · ann

�n × n

Ejemplo 1. Veamos algunos ejemplos de matrices, en particular de los tipos espe-ciales anteriores:

Matriz 2 × 3 : A =

�1 3 40 −1 1

�Matriz 2 × 2 (cuadrada) : A =

�1 −10 0

�Matriz 3 × 3 (cuadrada) : A =

�1 0 −1

3√

2 71 0 0

ǑMatriz 1 × 3 (fila) : A =

�1 0 3

�Matriz 3 × 1 (columna) : A =

�−14

5/3

Ǒ.

Las matrices cuadradas suelen ser las mas usadas en la practica. Veamos a con-tinuacion algunos tipos especiales de estas. Para ello, consideramos en primer lugarlas llamadas diagonales principal y secundaria de una matriz:

Page 3: Álgebra matricial y programación lineal

3

Matriz identidad. Es una matriz cuadrada de orden n que tiene unos en ladiagonal principal y ceros en todos los demas lugares. La denotaremos por In:

In =

�1 0 · · · 00 1 · · · 0...

... . . ....

0 0 · · · 1

�.

Por ejemplo:

I2 =

�1 00 1

�, I3 =

�1 0 00 1 00 0 1

Ǒ.

Matriz diagonal. Los elementos que estan fuera de la diagonal principal sonnulos:

D =

�a11 0 · · · 00 a22 · · · 0· · · · · · · · · · · ·0 0 · · · ann

�.

Por ejemplo: �1 0 00 3 00 0 −5

Ǒ.

Matriz triangular. Es la que tiene todos los elementos por debajo o por encimade la diagonal principal nulos. En el primer caso se llama triangular superiory en el segundo triangular inferior.

Por ejemplo: �1 3 70 −1 −40 0 2

Ǒy

� −3 0 03 1 0

0 1√

5

Ǒson triangulares superior e inferior, respectivamente.

1.2. Operaciones con matrices

Veamos las propiedades basicas con matrices reales.

Suma y resta. Dadas dos matrices A = {aij} i=1,··· ,m

j=1,··· ,n

y B = {bij} i=1,··· ,m

j=1,··· ,n

del mismo

tamano m × n, su suma es una matriz C = {cij} i=1,··· ,m

j=1,··· ,n

, que se obtiene sumando

los terminos que ocupan el mismo lugar. Es decir, cij = aij + bij . Analogamente se

Page 4: Álgebra matricial y programación lineal

4

define la resta de matrices.

A ± B =

�a11 a12 · · · a1n

a21 a22 · · · a2n

......

. . ....

am1 am2 · · · amn

�±

�b11 b12 · · · b1n

b21 b22 · · · b2n

......

. . ....

bm1 bm2 · · · bmn

�=

�a11 ± b11 a12 ± b12 · · · a1n ± b1n

a21 ± b21 a22 ± b22 · · · a2n ± b2n

......

. . ....

am1 ± bm1 am2 ± bm2 · · · amn ± bmn

�= C.

Producto por un escalar. El producto de un escalar (i. e. un numero) λ ∈ R

por una matriz A = {aij} i=1,··· ,m

j=1,··· ,n

da lugar a una nueva matriz λA, que se obtiene

multiplicando todos los elementos de la matriz A por λ, es decir, λA = {λaij} i=1,··· ,m

j=1,··· ,n

:

λA = λ

�a11 a12 · · · a1n

a21 a22 · · · a2n

......

. . ....

am1 am2 · · · amn

�=

�λa11 λa12 · · · λa1n

λa21 λa22 · · · λa2n

......

. . ....

λam1 λam2 · · · λamn

�.

Ejemplo 2. (a) Dadas las matrices

A =

�2 1 34 0 5

�, B =

�0 −1 11 0 0

�,

podemos calcular 2A − 3B, como sigue:

2A − 3B = 2

�2 1 34 0 5

�− 3

�0 −1 11 0 0

�=

�4 2 68 0 10

�−�

0 −3 33 0 0

�=

�4 5 35 0 10

�.

(b) Las matrices

A =

�2 10 0

�y B =

�1 3 00 1 4

�no se pueden sumar.

Producto de matrices. Para que dos matrices se puedan multiplicar, el numerode columnas de la primera tiene que coincidir con el numero de filas de la segunda.Sean pues A ∈ Mm×n(R) y B ∈ Mn×p(R). El producto A · B es otra matriz C deorden m × p, dada por C = {cij} i=1,··· ,m

j=1,··· ,n

, siendo

cij =nX

k=1

aikbkj , 1 ≤ i ≤ m, 1 ≤ j ≤ p.

Page 5: Álgebra matricial y programación lineal

5

Ejemplo 3. (a) Las matrices�1 30 7

�y B =

�3 1 30 1 1

−2 1 4

Ǒno se pueden multiplicar.

(b) Dadas las matrices

Q =

�1 3 50 0 14 1 2

Ǒy W =

�1 3 4 00 −8 9 17 5 5 1

Ǒsu producto P = Q · W es una matriz 3 × 4, dada por:

P = QW =

�1 3 50 0 14 1 2

Ǒ�1 3 4 00 −8 9 17 5 5 1

Ǒ=

�36 4 56 87 5 5 1

18 14 35 3

Ǒ.

Para obtener este producto, basta observar que el elemento que ocupa la fila i,columna j en la matriz P se obtiene multiplicando la fila i de la matriz Q por lacolumna j de la matriz W , como muestra la siguiente figura:

(c) Si las matrices A y B estan dadas por�2 34 5

�y

�1 −12 −2

�,

respectivamente, tenemos

A · B =

�2 34 5

��1 −12 −2

�=

�2 · 1 + 3 · 2 2 · (−1) + 3 · (−2)4 · 1 + 5 · 2 4 · (−1) + 5 · (−2)

�=

�8 −8

14 −14

�,

Page 6: Álgebra matricial y programación lineal

6

mientras que

B · A =

�1 −12 −2

��2 34 5

�=

�1 · 2 + (−1) · 4 1 · 3 + (−1) · 52 · 2 + (−2) · 4 2 · 3 + (−2) · 5

�=

� −2 −2−4 −4

�,

Obtenemos ası una importante conclusion: A · B 6= B · A, es decir, el producto dematrices no es conmutativo.

(d) Si

A =

�3 6

−2 −4

�y B =

�6 0

−3 0

�,

tenemos

A · B =

�3 6

−2 −4

��6 0

−3 0

�=

�0 00 0

�.

Es decir, A · B = 0, pero A 6= 0, B 6= 0. Por tanto, a diferencia de lo que ocurrecon los numeros reales, el producto de dos matrices no nulas puede dar lugar a unamatriz nula.

(e) Tomemos una matriz 3 × 3 arbitaria: A = {aij}i,j=1,2,3. Se tiene:

AI3 =

�a11 a12 a13

a21 a22 a23

a31 a32 a33

Ǒ�1 0 00 1 00 0 1

Ǒ=

�a11 a12 a13

a21 a22 a23

a31 a32 a33

Ǒ= A,

I3A =

�1 0 00 1 00 0 1

Ǒ�a11 a12 a13

a21 a22 a23

a31 a32 a33

Ǒ=

�a11 a12 a13

a21 a22 a23

a31 a32 a33

Ǒ= A.

Por tanto la matriz identidad I3 hace las veces de elemento neutro para el productoentre matrices 3 × 3. Lo mismo ocurre en el caso general de matrices n × n con In.

1.3. Determinantes

En esta seccion introducimos el concepto importante de determinante de unamatriz cuadrada. Ası que en todo lo que sigue pensaremos siempre en matricescuadradas.

Un determinante es un numero real que se asocia a una matriz cuadrada, querefleja ciertas propiedades de la matriz. Comencemos considerando el caso de unamatriz 2 × 2, A ∈ M2×2(R). Definimos su determinante como:

det A = |A| =

����� a11 a12

a21 a22

����� = a11a22 − a12a21.

Para definir el determinante de matrices de orden superior, necesitamos introducirpreviamente dos conceptos: los de menor y adjunto de una matriz.

Page 7: Álgebra matricial y programación lineal

7

Dada una matriz cuadrada A = {aij}i,j=1,...,n, llamamos menor (complementario)correspondiente al elemento aij al determinante de la matriz de orden n − 1 que seobtiene al eliminar la fila i-esima y la columna j-esima. Lo denotaremos Mij . Cuandodotamos al menor de un signo, obtenemos el adjunto correspondiente al elementoaij :

Aij = (−1)i+j|Mij |.Una forma util de recordar como adjudicar los signos es la siguiente: a los elementosde la diagonal principal siempre les corresponde un signo +, y luego el signo vaalternandose.

Ası, para matrices 3 × 3: �+ − +− + −+ − +

Ǒy para 4 × 4: �

+ − + −− + − ++ − + −− + − +

�.

Ejemplo 4. La matriz

A =

�1 0 3

−1 1 42 1 3

Ǒtiene nueve adjuntos:

A11 = +

����� 1 41 3

����� = −1 A12 = −����� −1 4

2 3

����� = 11 A13 = +

����� −1 12 1

����� = −3

A21 = −����� 0 3

1 3

����� = 3 A22 = +

����� 1 32 3

����� = −3 A23 = −����� 1 0

2 1

����� = −1

A31 = +

����� 0 31 4

����� = −3 A32 = −����� 1 3−1 4

����� = −7 A33 = +

����� 1 0−1 1

����� = 1.

Ahora podemos definir el determinante para una matriz de orden n × n conn ≥ 3: si A = {aij}i,j=1,...,n, definimos

det A = |A| =nX

j=1

a1jA1j .

Esta es una definicion por recurrencia, porque nos permite calcular determinantesde un cierto orden en terminos de determinantes de ordenes inferiores. Ası, paracalcular el determinante de una matriz 4 × 4 necesitamos calcular 4 determinantesde orden 3 × 3, y para evaluar cada uno de estos, hay que calcular 3 determinantesde orden 2 × 2.

Page 8: Álgebra matricial y programación lineal

8

Ejemplo 5. Para la matriz A del ejemplo anterior:

|A| = 1 · A11 + 0 · A12 + 3 · A13 = 1 · (−1) + 0 · 11 + 3 · (−3) = −10.

En el caso particular de una matriz 3 × 3 tenemos:������� a11 a12 a13

a21 a22 a23

a31 a32 a33

������� = a11

����� a22 a23

a32 a33

�����− a12

����� a21 a23

a31 a33

�����+ a13

����� a21 a22

a31 a32

�����= a11(a22a33 − a23a32) − a12(a21a33 − a23a31)

+a13(a21a32 − a22a31)

= a11a22a33 + a12a23a31 + a13a21a32

−a11a23a32 − a12a21a33 − a13a22a31.

Observemos que se trata de una suma de seis terminos, tres de ellos con signopositivo y los otros tres con signo negativo. Una forma util de recordar el valor deeste determinante es la llamada regla de Sarrus, que se puede recordar de la siguienteforma:

Los productos de las diagonales principales (la lınea continua) van con signo masy los de las diagonales secundarias (lınea discontinua) con signo menos.

Ejemplo 6. Siguiendo con la matriz A de los ejemplos anteriores, si aplicamos laregla de Sarrus para calcular su determinante,������� 1 0 3

−1 1 42 1 3

������� = 3 − 3 + 0 − 6 − 4 − 0 = −10,

valor que, por supuesto, coincide con el obtenido anterioremente.

1.4. Propiedades de los determinantes

Veamos a continuacion algunas propiedades de los determinantes. Muchas deellas son importantes porque nos permiten simplificar su calculo. Pero primero in-troduzcamos el concepto de combinacion lineal: dados los vectores (fila o columna)v1, . . . , vk, una combinacion lineal de ellos es una expresion de la forma:

λ1v1 + λ2v2 + · · · + λkvk,

donde λ1, λ2, · · · , λk son numeros reales.

Page 9: Álgebra matricial y programación lineal

9

Las propiedades en las que estaremos interesados son las siguientes:

(i) Un determinante se puede desarrollar por una fila o columna cualquiera. Esdecir, para cualquier i ∈ {1, · · · , n}:

|A| =nX

j=1

aijAij.

Y tambien

|A| =nX

i=1

aijAij ,

para cualquier j ∈ {1, · · · , n}.

(ii) Si en un determinante:

hay una fila o columna de ceros;

dos filas o columnas son iguales o proporcionales;

una fila o columna es combinacion lineal de otras;

entonces su valor es cero.

(iii) Al intercambiar dos filas o columnas de un determinante, este cambia de signo.

(iv) Si todos los elementos de una fila o columna tienen un factor comun, estepuede sacarse fuera del determinante.

(v) Si a los elementos de una fila o columna se les suma una combinacion linealde otras, el valor del determinante no cambia.

Estas propiedades, sobre todo la ultima, son importantes a la hora de simplificarlos calculos en determinantes de matrices grandes.

Ejemplo 7. (a) Tenemos el determinante:������� 0 1 11 0 11 1 0

������� = 2.

Si intercambiamos dos de sus filas:������� 1 0 10 1 11 1 0

������� = −2.

Intercambiando dos columnas: ������� 1 1 01 0 10 1 1

������� = −2.

Page 10: Álgebra matricial y programación lineal

10

(b) ������� 5 1 210 0 −315 7 4

������� = 5

������� 1 1 22 0 −33 7 4

������� = 5 · 32 = 160.

(c) El determinante ������� 1 3 11 3 10 1 −2

�������es nulo, pues tiene dos filas iguales.

(d) Veamos como calcular un determinante de una matriz grande, por ejemplo, 4×4.La idea es desarrollar el determinante por una fila o columna, pero antes de hacerlosimplificar al maximo para que en el desarrollo aparezca el mayor numero de cerosposible. Esto se hace principalmente con ayuda de la propiedad (v) anterior.��������� 1 2 2 3

4 0 −1 51 3 1 22 −1 3 1

��������� =

��������� 1 2 2 30 −8 −9 −70 1 −1 −10 −5 −1 −5

��������� = ������� −8 −9 −71 −1 −1

−5 −1 −5

������� = ������� 8 9 71 −1 −15 1 5

�������= −

������� 1 −1 −18 9 75 1 5

������� = −

������� 1 −1 −10 17 150 6 10

������� = −����� 17 15

6 10

�����= −(170 − 90) = −80.

1.5. Rango de una matriz

Antes de definir el rango de una matriz, necesitamos el concepto de independencialineal de vectores. Dado un conjunto de vectores (fila o columna) v1, . . . , vk, decimosque son linealmente dependientes si existen numeros reales no todos nulos λ1, . . . , λk

tales queλ1v1 + λ2v2 + · · · + λkvk = 0.

En caso contrario, se dira que son linealmente independientes. Observemos que unconjunto de vectores sera linealmente dependiente cuando alguno de ellos se puedaponer como combinacion de los otros.

Ejemplo 8. (a) Los vectores columna�100

Ǒ,

�010

Ǒy

�001

Ǒson linealmente independientes. En efecto, si tuvieramos

λ1

�100

Ǒ+ λ2

�010

Ǒ+ λ3

�001

Ǒ=

�000

Ǒ,

Page 11: Álgebra matricial y programación lineal

11

deducirıamos que �λ1

λ2

λ3

Ǒ=

�000

Ǒy por tanto λ1 = λ2 = λ3 = 0.

(b) Los vectores v1 = (0 1) y v2 = (0 3) son linealmente dependientes, puesv2 = 3v1. Entonces 3v1 − v2 = 0, es decir, podemos tomar λ1 = 3, λ2 = −1.

Dada una matriz A ∈ Mm×n(R), la consideraremos formada por m vectores filao n vectores columna. Llamaremos rango de la matriz A, denotado por rango(A),al numero maximo de filas linealmente independientes. Este valor coincide con elnumero maximo de columnas linealmente independientes. En particular, siempretenemos que rango(A) ≤ mın{m, n}.

Ejemplo 9. Segun el ejemplo anterior, la matriz I3 tiene rango 3, mientras que lamatriz �

0 10 3

�tiene rango 1.

Una forma util de calcular el rango de una matriz es mediante el uso de determi-nantes (aunque veremos mas adelante una manera alternativa de hacerlo): el rangocoincide con el orden del mayor menor no nulo que podemos extraer de la matriz.

Ejemplo 10. (a) Consideremos la matriz 5 × 6:0BBBBBB� 1 2 −1 0 3 12 1 2 0 6 30 0 −1 0 0 −13 1 3 0 9 41 1 4 0 3 5

1CCCCCCA .

Tenemos que rango(A) ≤ 5. Observemos que hay una columna de ceros y que laprimera columna y la quinta son proporcionales. Por otro lado, la sexta columnaes la suma de la segunda y la tercera. Esto quiere decir que, en cuanto al rango serefiere, podemos olvidarnos de las columnas cuarta, quinta y sexta. Ası que el rangosera como mucho tres. Ademas:������� 1 2 −1

2 1 20 0 −1

������� = −����� 1 2

2 1

����� = 3 6= 0.

Por tanto deducimos que rango(A) = 3.

(b) Sea

A =

�1 2 80 1 3

−1 4 10

Ǒ

Page 12: Álgebra matricial y programación lineal

12

En este caso no es tan obvio que alguna fila o columna sea combinacion lineal deotras. Calculemos el determinante:������� 1 2 8

0 1 3−1 4 10

������� = 10 − 6 + 8 − 12 = 0.

Esto implica que el rango es como mucho 2. Pero como����� 1 20 1

����� = 1 6= 0,

el rango es exactamente 2.

1.6. Operaciones elementales

Veremos para finalizar las llamadas operaciones elementales que nos permiten,entre otras cosas, calcular facilmente el rango de una matriz cualquiera. Seran utilesasimismo para resolver sistemas de ecuaciones lineales.

Llamamos operaciones elementales sobre una matriz a las siguientes:

Intercambiar dos filas o columnas.

Sumar a una fila o columna otra fila o columna multiplicada por un escalar.

Multiplicar una fila o columna por un escalar no nulo.

Una de las propiedades importantes de las operaciones elementales es que estasno cambian el rango de una matriz. Ası, para calcular el rango de una matriz dadapodemos efectuar operaciones elementales sobre ella hasta obtener una matriz massencilla y calcular el rango de esta ultima. Normalmente, el procedimiento a seguir esobtener una matriz triangular, para la que la determinacion del rango es inmediata.

Ejemplo 11. Para calcular el rango de la matriz

A =

�−2 1 0 3 2

0 1 2 4 51 1 1 2 3

Ǒ,

realizamos operaciones elementales sobre sus filas:�−2 1 0 3 2

0 1 2 4 51 1 1 2 3

Ǒ−→

�1 1 1 2 30 1 2 4 5

−2 1 0 3 2

Ǒ−→

�1 1 1 2 30 1 2 4 50 3 2 7 8

Ǒ−→

�1 1 1 2 30 1 2 4 50 0 −4 −5 −7

Ǒ.

Page 13: Álgebra matricial y programación lineal

13

Las operaciones que hemos efectuado son las siguientes: intercambiar la primeray tercera filas, sumar a la tercera fila la primera multiplicada por 2 y restar a latercera fila la segunda multiplicada por 3. Estas operaciones no alteran el rango dela matriz, y para esta ultima, el rango es claramente 3, pues������� 1 1 1

0 1 20 0 −4

������� = 1 · 1 · (−4) 6= 0

Por tanto, rango(A) = 3.

1.7. Sistemas de ecuaciones lineales

A continuacion nos ocuparemos de la discusion y resolucion de sistemas de ecua-ciones lineales, del tipo8>><>>: a11x1 + a12x2 + · · ·+ a1nxn = b1

a21x1 + a22x2 + · · ·+ a2nxn = b2

· · · · · · · · · · · · · · · · · · · · · · · · · · ·am1x1 + am2x2 + · · ·+ amnxn = bm,

donde aij, bi son numeros reales. Observemos que el primer ındice del coeficienteaij hace mencion a la ecuacion en la que aparece, mientras que el segundo indica laincognita a la que acompana.

Las primeras cuestiones importantes a tratar en relacion con este sistema son:¿existen soluciones? En tal caso, ¿cuantas? Por eso, haremos algunas definicionespreliminares.

Un sistema se llama compatible cuando tiene solucion. En caso contrario, se diceque es incompatible. Cuando un sistema compatible tiene una unica solucion, se diceque es determinado. Si tiene mas de una, se llama indeterminado. Una propiedadimportante de los sistemas lineales es que, si tienen mas de una solucion, automatica-mente tienen infinitas.

Por tanto, para un sistema dado tenemos tres posibilidades.

Compatible determinado (solucion unica).

Compatible indeterminado (infinitas soluciones).

Incompatible (sin soluciones).

Ejemplo 12. (a) El sistema ¨x + y = 1x + y = 2

es claramente incompatible.

(b) El sistema ¨x + y = 12x + 2y = 2

Page 14: Álgebra matricial y programación lineal

14

es compatible e indeterminado. De hecho, tiene infinitas soluciones, dadas por

x = ty = 1 − t

t ∈ R.

(c) El sistema ¨x + y = 12x + y = 1

tiene una unica solucion, dada por x = 0, y = 1.

1.8. El teorema de Rouche-Frobenius

Nuestro proximo objetivo es encontrar un metodo para decidir si un sistema dadoes compatible o incompatible, determinado o indeterminado. Para ello, escribimosel sistema en forma matricial:�

a11 a12 · · · a1n

a21 a22 · · · a2n

......

. . ....

am1 am2 · · · amn

��x1

x2...

xn

�=

�b1

b2...

bm

�.

Resulta que la resolubilidad del sistema queda caracterizada en terminos de dosmatrices:

matriz del sistema: A =

�a11 a12 · · · a1n

a21 a22 · · · a2n

......

. . ....

am1 am2 · · · amn

�matriz ampliada: A∗ =

�a11 a12 · · · a1n

a21 a22 · · · a2n

......

. . ....

am1 am2 · · · amn

���������� b1

b2...

bm

�.

Concretamente, la resolubilidad depende de la relacion entre el rango de estas dosmatrices. La conexion entre estos rangos y la resolubilidad del sistema la proporcionael teorema de Rouche-Frobenius.

Teorema 13 (Rouche-Frobenius). Sean A ∈ Mm×n(R) y A∗ ∈ Mm×(n+1)(R) lamatriz del sistema y matriz ampliada, respectivamente. Entonces:

(a) Si rango(A) 6= rango(A∗), el sistema es incompatible.

(b) Si rango(A) = rango(A∗), el sistema es compatible. Ademas:

Si rango(A) = rango(A∗) = n, es determinado.

Page 15: Álgebra matricial y programación lineal

15

Si rango(A) = rango(A∗) < n, es indeterminado. El sistema admite in-finitas soluciones que dependen de n − rango(A) parametros.

Observemos que, puesto que A es una submatriz de A∗, siempre se tiene querango(A) ≤ rango(A∗). Tambien es inmediato que rango(A) ≤ mın{m, n} y querango(A∗) ≤ mın{m, n + 1}.

Ejemplo 14. (a) Para el sistema8><>: x + y − z = 1x − y − z = 22x − 2z = 1,

tenemos

A =

�1 1 −11 −1 −12 0 −2

ǑA∗ =

�1 1 −11 −1 −12 0 −2

������� 121

Ǒ.

Como det (A) = 0 y

����� 1 11 −1

����� = −2 6= 0, resulta que rango(A) = 2.

Para calcular el rango de A∗, tomamos el determinante:������� 1 1 −11 −1 22 0 1

������� = −1 + 4 + 2 − 1 = 4 6= 0.

Entonces rango(A∗) = 3 > rango(A), con lo que el sistema es incompatible, es decir,no tiene solucion.

(b) Para el sistema 8><>: x − 3y + 4z = −133x − y + 2z = −3

−3x + 5y − z = 9

tenemos que det(A) = 48 6= 0. Esto quiere decir que la matriz del sistema A tienerango 3, y por tanto A∗ tambien ha de tener rango 3. Como el rango de ambas ma-trices coincide con el numero de incognitas, el sistema es compatible y determinado:existe una unica solucion del mismo.

(c) Para el sistema 8><>: x + 2y − 3z − 16u = 4y + 2z − 3u = 6

−x − y + z + 9u = −2

tenemos que rango(A) = 3, puesto que������� 1 2 −30 1 2

−1 −1 1

������� = 1 − 4 − 3 + 2 = −4 6= 0.

Esto implica que tambien rango(A∗) = 3, con lo que el sistema es compatible, peroindeterminado. Hay infinitas soluciones, que dependen de un parametro.

Page 16: Álgebra matricial y programación lineal

16

1.9. Resolucion de sistemas

Nos dedicaremos a continuacion a resolver sistemas lineales, por supuesto soloen el caso de que sean compatibles.

Decimos que un sistema es de Cramer si tiene el mismo numero de ecuacionesque de incognitas y el determinante de la matriz del sistema es no nulo, es decir:8>><>>: a11x1 + a12x2 + · · ·+ a1nxn = b1

a21x1 + a22x2 + · · ·+ a2nxn = b2

· · · · · · · · · · · · · · · · · · · · · · · · · · ·an1x1 + an2x2 + · · ·+ annxn = bn,

y det(A) 6= 0, con A = {aij}i,j=1,··· ,n. La unica solucion de un sistema de Cramerviene dada por:

xi =1

|A|

���������� a11 · · · a1,i−1 b1 a1,i+1 · · · a1n

a21 · · · a2,i−1 b2 a2,i+1 · · · a2n

.... . .

......

.... . .

...an1 · · · an,i−1 bn an,i+1 · · · ann

���������� ,para i = 1, · · · , n. Observemos que cada uno de estos determinantes se obtienesustituyendo en el determinante de la matriz del sistema A la columna i−esima porel termino independiente.

Ejemplo 15. (a) Consideremos un sistema que ya analizamos en un ejemplo ante-rior: 8><>: x − 3y + 4z = −13

3x − y + 2z = −3−3x + 5y − z = 9,

para el que ya vimos que det(A) = 48 6= 0, ası que se trata de un sistema de Cramer.La unica solucion viene dada por:

x =1

48

������� −13 −3 4−3 −1 2

9 5 −1

������� = 48

48= 1,

y =1

48

������� 1 −13 43 −3 2

−3 9 −1

������� = 96

48= 2,

z =1

48

������� 1 −3 −133 −1 −3

−3 −5 9

������� = −96

48= −2.

Ası pues, la unica solucion es (x, y, z) = (1, 2,−2).

Page 17: Álgebra matricial y programación lineal

17

(b) Tambien hemos analizado anteriormente el sistema8><>: x + 2y − 3z − 16u = 4y + 2z − 3u = 6

−x − y + z + 9u = −2

que es compatible e indeterminado, con rango(A) = 3. Deducimos que existen in-finitas soluciones que dependen de un parametro. A la hora de resolverlo, tratamosuna de las incognitas como un parametro y resolvemos en terminos de las otras.

Por ejemplo, tomamos u = t, t ∈ R un parametro. El sistema se convierte en8><>: x + 2y − 3z = 4 + 16ty + 2z = 6 + 3t

−x − y + z = −2 − 9t

Puesto que ������� 1 2 −30 1 2

−1 −1 1

������� = −4 6= 0,

se trata de un sistema de Cramer. La solucion viene dada por:

x = −1

4

������� 4 + 16t 2 −36 + 3t 1 2

−2 − 9t −1 1

������� = −1 + 3t,

y = −1

4

������� 1 4 + 16t −30 6 + 3t 2

−1 −2 − 9t 1

������� = 4 + 5t,

z = −1

4

������� 1 2 4 + 16t0 1 6 + 3t

−1 −1 −2 − 9t

������� = 1 − t.

Ası, las infinitas soluciones vienen dadas por (x, y, z, u) = (−1 + 3t, 4 + 5t, 1 − t, t),con t ∈ R arbitrario.

Finalizamos este apartado viendo un metodo alternativo para resolver sistemas.Se trata del metodo de Gauss (o de eliminacion gaussiana). Consiste en hacer opera-ciones por fila en la matriz ampliada hasta llegar a una matriz triangular superior.De esta forma, el sistema se transforma en uno equivalente pero mas sencillo deresolver.

Ejemplo 16. Consideramos de nuevo el sistema8><>: x − 3y + 4z = −133x − y + 2z = −3−3x + 5y − z = 9,

Page 18: Álgebra matricial y programación lineal

18

cuya matriz ampliada es

A∗ =

�1 −3 43 −1 2

−3 5 −1

������� −13−3

9

Ǒ.

Hacemos operaciones por filas para lograr una matriz triangular superior:�1 −3 4 −133 −1 2 −3

−3 5 −1 9

Ǒ−→

�1 −3 4 −130 4 1 60 −4 11 −30

Ǒ−→

�1 −3 4 −130 4 1 60 0 12 −24

Ǒ.

El sistema original es entonces equivalente a8><>: x − 3y + 4z = −134y + z = 6

12z = −24,

que se resuelve “de abajo hacia arriba”:

z = −24

12= −2

y =6 − z

4= 2

x = 3y − 4z − 13 = 1,

obteniendo la solucion (x, y, z) = (1, 2,−2), que coincide con la hallada anterior-mente por el metodo de Cramer.

1.10. Programacion lineal

La programacion lineal es una tecnica matematica muy util, que permite resolverproblemas de optimizacion en los cuales todas las expresiones involucradas son linea-les. En esta seccion analizaremos como se aplica cuando se trabaja solamente condos variables.

A modo de introduccion a esta clase de problemas, consideremos el siguienteejemplo:

Una fabrica de muebles fabrica dos tipos de sillones, S1 y S2. Lafabrica cuenta con una seccion de carpinterıa y otra de tapicerıa. Hacerun sillon de tipo S1 requiere una hora de carpinterıa y dos de tapicerıa,mientras que uno de tipo S2 requiere tres horas de carpinterıa y unade tapicerıa. El personal de tapicerıa trabaja un total de 80 horas y elde carpinterıa 90 horas. Las ganancias por las ventas de los sillones sonde 60 euros para los de tipo S1 y 40 euros para los de tipo S2. Se pidecalcular cuantos sillones de cada tipo hay que hacer para maximizar lasganancias.

Page 19: Álgebra matricial y programación lineal

19

Denotemos por x e y la cantidad de sillones de los tipos S1 y S2, respectivamente,que se van a fabricar. Puesto que la ganancia es de 60 euros por cada sillon de tipoS1 y 40 euros por cada uno de tipo S2, la ganancia total sera

G(x, y) = 60x + 40y.

Observemos que se trata de maximizar esta funcion, sujeta a ciertas restriccionessobre x e y. La primera restriccion natural es x, y ≥ 0, puesto que el numero desillones no puede ser negativo. Ahora veamos cuantas horas de carpinterıa son nece-sarias para construir ambos sillones. Puesto que los de tipo S1 necesitan una horay los de tipo S2 tres horas, la cantidad total sera x + 3y. Esta cantidad no puedesuperar las 90 horas, es decir, debe tenerse

x + 3y ≤ 90.

De la misma forma, la cantidad de horas de tapicerıa necesarias para ambos silloneses 2x + y, y por eso

2x + y ≤ 80,

ya que no se deben superar las 80 horas de tapicerıa.

El problema anterior se puede resumir entonces en lo siguiente: maximizar lafuncion G(x, y) = 60x + 40y sujeta a las restricciones:8>><>>: x ≥ 0

y ≥ 0x + 3y ≤ 902x + y ≤ 80.

El ejemplo anterior es un tıpico problema de programacion lineal en dos variables.Estos problemas en general consisten en maximizar (o minimizar) una funcion linealde dos variables

F (x, y) = Ax + By,

con A, B ∈ R, bajo las m restricciones adicionales8>>><>>>: a1x + b1y ≤ c1

a2x + b2y ≤ c1...

amx + bmy ≤ cm,

(1)

siendo todos los coeficientes ai, bi, ci, i = 1, . . . , m numeros reales. Destaquemos quelos coeficientes ai, bi pueden tener signo arbitrario, con lo cual es posible cambiarlos signos ≤ por ≥.

La primera observacion importante es que las desigualdades (1) determinan unaregion en el plano, delimitada por segmentos de recta. En el contexto de la progra-macion lineal, esta region se llama region factible. Veamos un ejemplo.

Page 20: Álgebra matricial y programación lineal

20

Ejemplo 17. Representar la region determinada por las desigualdades8><>: 2x + 3y ≥ −32x − y ≤ 9

2x − 5y ≥ 5.

Representamos en primer lugar las tres rectas:8><>: 2x + 3y = −32x − y = 9

2x − 5y = 5.

A continuacion, observamos que las desigualdades se pueden escribir como y ≥−2x−3

3, y ≥ 2x−9, y ≤ 2x−5

5. Por tanto, hay que tomar la region que esta por encima

de las dos primeras rectas y por debajo de la tercera. Se trata de la region triangularrepresentada en la figura.

2x − y = 9

2x + 3y = −3

2x − 5y = 5

Nuestro objetivo es maximizar o minimizar la funcion F (x, y) sobre una regionfactible. Los puntos de una region factible se llaman soluciones factibles. De todosellos, los que hacen optima la funcion F (x, y) (maxima o mınima) se llaman solu-ciones optimas. Destaquemos que en general un problema de programacion linealpuede tener una unica solucion optima, ninguna o infinitas. Pero se da la siguientepropiedad fundamental:

Si hay una unica solucion optima, esta se encuentra en un vertice dela region factible y si hay infinitas soluciones optimas se encontraran enuno de los lados que delimita la region factible.

Esta propiedad nos da un metodo para calcular la solucion optima: calculamoslos vertices de la region factible y evaluamos la funcion F (x, y) en cada uno de lospuntos, tomando el valor optimo.

Page 21: Álgebra matricial y programación lineal

21

Ejemplo 18. Maximizar la funcion F (x, y) = 2000x + 5000y sujeta a las restric-ciones: 8><>: 2x + 3y ≥ −3

2x − y ≤ 92x − 5y ≥ 5.

La region factible es la misma que en el ejemplo anterior. Para calcular los vertices,hallamos los puntos de corte de cada par de rectas que delimitan la region. Esto sereduce a resolver tres sistemas de ecuaciones. El primero de ellos:¨

2x + 3y = −32x − y = 9

tiene como solucion x = 3, y = −3. La solucion del segundo:¨2x + 3y = −32x − 5y = 5

es x = 0, y = −1 y la del tercero: ¨2x − y = 92x − 5y = 5

viene dada por x = 5, y = 1. Por tanto, los tres puntos de corte son (3,−3), (0,−1)y (5, 1). Evaluemos la funcion F en cada uno de los puntos:

F (3,−3) = 2000 · 3 + 5000 · (−3) = −9000

F (0,−1) = 2000 · 0 + 5000 · (−1) = −5000

F (5, 1) = 2000 · 5 + 5000 · 1 = 15000.

Puesto que el valor maximo se obtiene en el punto (5, 1), obtenemos que este es unasolucion optima. Por tanto, el maximo de la funcion F (x, y) con las restriccionesadicionales se obtiene cuando x = 5, y = 1, y es igual a 15000.

Hay un metodo alternativo, de naturaleza grafica, para resolver estos problemas.Consiste en lo siguiente: tomamos el vector director de la recta Ax+By = 0, dado por(−B, A) (o cualquier vector proporcional a el). Por los vertices de la region factibletrazamos rectas con este vector director y comprobamos cual de ellas intersecta aleje OY con una coordenada mas grande. En ese vertice se alcanzara el maximo dela funcion.

Ejemplo 19. Retomemos el ejemplo con el que abrıamos la seccion. Se trata demaximizar la funcion G(x, y) = 60x + 40y en la region factible8>><>>: x ≥ 0

y ≥ 0x + 3y ≤ 902x + y ≤ 80.

Tomemos el vector director de la recta 60x + 40y = 0, que es (−40, 60). Por como-didad, seleccionamos uno proporcional a el, como el (−2, 3). Ahora trazamos rectascon vector director (−2, 3) por los vertices de la region factible:

Page 22: Álgebra matricial y programación lineal

22

x + 3y = 90

2x + y = 80

Vemos claramente que el maximo debe alcanzarse en la interseccion de las rectasx + 3y = 90, 2x + y = 80, es decir, en el punto (30, 20). Como ademas G(30, 20) =2600, vemos que hay que fabricar 30 sillones de tipo S1 y 20 sillones de tipo S2,siendo el beneficio total de 2600 euros.