Está en la página 1de 60

CAPITULO 1 Programacin Lineal

1.1 INTRODUCCIN La investigacin de operaciones (IDO) tiene sus inicios ms considerables a partir de los aos cuarenta, durante la segunda guerra mundial, debido a la necesidad de herramientas para la toma de decisiones en ese mbito. En la actualidad la IDO, se utiliza en cientos de reas de la ingeniera, humanidades, gentica y administracin, entre otros. La investigacin de operaciones (IDO) aspira a determinar el mejor curso de accin (ptimo) de un problema de toma de decisin con la restriccin de tener recursos limitados y/o capacidades limitadas, como pueden ser las limitaciones fsicas de fuentes de suministro y redes de transporte. El trmino de investigacin de operaciones muy a menudo est relacionado con tcnicas matemticas, para representar por medio de un modelo y analizar problemas de decisin. Aunque las matemticas y modelos matemticos representan la base fundamental de la IDO, la labor consiste ms en resolver un problema que en construir y resolver modelos matemticos. Especficamente, los problemas de decisin suele incluir importantes factores intangibles que no son representables directamente en trminos de modelos matemticos. Entre estos factores, el principal es la presencia del elemento humano en la toma de decisiones. Existen problemas en donde la conducta humana ha sido factor decisivo en la toma de decisiones y en donde el modelo matemtico se considera imprctico. Como tcnica para la toma de decisiones, la IDO se debe de considerar como una ciencia y como un arte. El aspecto de la ciencia radica en ofrecer tcnicas y algoritmos matemticos para la solucin de problemas. El aspecto de arte radica en que el xito que se alcanza al plantear y resolver el modelo matemtico, depende de la creatividad y la habilidad de los analistas encargados de la toma de decisiones. Por tanto, la obtencin de datos y conocimientos del sistema a resolver, para la construccin del modelo, su validacin y la implantacin de la solucin obtenida dependern de la habilidad del equipo de IDO. La optimizacin (IDO) tiene gran variedad de aplicaciones en la industria elctrica, tales como los que son mencionados a continuacin. Estudios de planificacin de sistemas elctricos de potencia: - Expansin de redes. - Programacin de mantenimientos. - Evaluacin de alternativas de expansin. En la operacin de sistemas elctricos de potencia: - Estudios de operacin a largo, corto plazo y de operacin en tiempo real. - Coordinacin hidroelctrica. - Asignacin de unidades. - Flujos ptimos. - Diferentes modelos de despacho.

Matemticas Avanzadas Captulo 1

Programacin Lineal

En ambientes de mercado de energa elctrica: - Modelos para ejecutar mercados mayoristas. - Modelos para mercados de reserva y otros servicios auxiliares. - Modelos de subastas parta asignar derechos financieros de transmisin. - Modelos para toma de decisiones de distribuidores, comercializadores. - Modelos para disear subastas de generacin. Como se puede observar, un ingeniero dedicado a la toma de decisiones antes mencionadas, debe de tener amplio conocimiento en lo que respecta a la operacin de los sistemas elctricos, modelacin y anlisis de sistemas elctricos, sus limitaciones fsicas como son limitaciones de generacin, transmisin, estabilidad entre otras. As mismo tener conocimientos de tcnicas de optimizacin para la solucin de problemas en donde el conocimiento del sistema elctrico y su experiencia se puede reflejar grandemente en la simplificacin de los modelos matemticos utilizados en la IDO. La investigacin de operaciones, desde un punto de vista de formulacin de problemas y su solucin, puede clasificarse en trminos de lo que se conoce como programacin lineal o programacin no lineal. El trmino programacin no significa programacin en computadora, sino que ms bien denota programar o establecer una agenda, lo cual est asociado con la toma de decisin en cada etapa en que se resuelve el problema. Entonces, los mtodos de programacin lineal o no lineal son tcnicas matemticas para establecer un orden de operaciones que resuelven sistemticamente problemas muy grandes de variables y restricciones. En particular, la programacin lineal (PL) es un procedimiento de optimizacin que trata de cumplir con un objetivo como maximizar las utilidades de una empresa o la minimizacin de costos, en presencia de restricciones, las cuales son de diversa ndole. El trmino lineal indica que las funciones matemticas que representan al objetivo y a las restricciones son expresiones algebraicas lineales. Por ejemplo, el modelo utilizado para la solucin del mercado mayorista centralizado de energa elctrica es un modelo lineal de asignacin de unidades de manera tal que los precios de la energa sean los menores posibles. Por lo tanto, este modelo se resuelve con algn mtodo que solucione problemas de programacin lineal (PL). Existen varias formas para formular y resolver un problema de PL, desde el mtodo grfico o geomtrico, hasta soluciones algebraicas que dan origen a algoritmos como el de la fuerza bruta, el algoritmo simplex y el simplex de las dos fases, slo por mencionar algunos. La PL busca maximizar o minimizar una funcin objetivo lineal sujeta a restricciones lineales. Las restricciones lineales de un problema de programacin lineal pueden ser de tres tipos: de igualdad, de desigualdad o bien tanto de igualdad como de desigualdad. Aunque el economista sovitico L.V. Kantorovich, en el ao de 1939 y algunos cientficos britnicos, durante la segunda guerra mundial, trabajaron sobre algunos problemas de optimizacin, se puede decir que el problema de programacin lineal fue planteado por primera
Maestra en Ciencias en Ingeniera Elctrica ITM-CFE G. Gutirrez-H. Tovar2013

Matemticas Avanzadas Captulo 1

Programacin Lineal

vez en el ao de 1947 por George B. Dantzing, quien trabaj como consejero matemtico para la Fuerza Area de los Estados Unidos. Algunos aos despus, en 1949, George B. Dantzing public su formulacin para resolver problemas lineales: el Mtodo Simplex. 1.2 CONCEPTOS DE ALGEBRA LINEAL Se define a una matriz como un conjunto de nmeros (reales o complejos) ordenados en arreglos rectangulares. Por ejemplo:

1 x a 2 , 2

4+b 3y

1 , 4

[2

b],

[6]

En el primer caso, se tiene una matriz columna de orden 2x1, enseguida se tiene una matriz de orden 2x3, en tercer caso se tiene una matriz rengln de orden 1x2 y el cuarto caso se refiere a una matriz de orden 1 (o 1x1). A las matrices rengln y columna tambin se les conoce como vector rengln o vector columna, respectivamente. La forma general de una matriz consiste de mn nmeros arreglados en m renglones y n columnas, dando el siguiente arreglo de orden mn:

a11 a12 L a1n a a22 L a2n 21 A = aij = M M M am1 am 2 L a mn


donde i = 1, , m y j = 1, , n. Definicin 1. Las matrices A y B son iguales si y slo si: (a) A y B tienen el mismo nmero de renglones y el mismo nmero de columnas. (b) aij = bij para i = 1, , m y j = 1, , n.

(1.1)

Definicin 2. Dos matrices pueden sumarse si y slo si tienen el mismo nmero de renglones y el mismo nmero de columnas. En este caso, las matrices A y B de orden mn, al sumarse, resulta la matriz C del mismo orden. Es decir,

cij = aij + bij

para i = 1, , m y j = 1, , n.

o en notacin matricial:

A + B = aij + bij = cij

[ ] [ ] [ ]

=C

(1.2)

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

Matemticas Avanzadas Captulo 1

Programacin Lineal

Por ejemplo:

a 1 x + 1 1 1 a x = + 2 y 1 b 1 b + 2 y
Adems, se cumple con las leyes de adicin de los nmeros:

(aij + bij ) + cij = aij + (bij + cij )


aij + bij = bij + aij
Tambin, en notacin matricial:

(1.3) (1.4)

( A + B ) + C = A + (B + C )
A+ B=B+ A
Ejemplo:

(1.5) (1.6)

1 2 2 6 1 8 1 2 2 6 3 4 + 1 2 = 2 6 = 1 2 + 3 4
Es natural definir A , cuyos elementos son aij , de modo que:

A + ( A) = aij + aij = [0] = 0


Donde [0] 0 es la matriz nula, la cual cumple con:

[ ] [ ]

aij = 0 para i = 1, , m y j = 1, , n. Si m = 1 o n = 1, entonces se trata de un vector nulo.


Entonces, la sustraccin de matrices se define como:

B A = B + ( A) = bij + aij = bij aij

[ ] [ ] [

Por otra parte, A + A = 2 A , de modo que, en trminos generales, se cumple con lo siguiente:

ka11 ka12 L ka1n ka ka22 L ka2n 21 kA = kaij = M M M kam1 kam2 L kamn


donde k es cualquier nmero real o complejo.

(1.7)

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

Matemticas Avanzadas Captulo 1

Programacin Lineal

Ejemplo.

1 3 2 x

x 1 4

3 3 3x 3 9 = 1 6 x 12 3

1.2.1 Multiplicacin de Matrices Definicin 3. Una matriz rengln puede multiplicarse por una matriz columna, en ese orden, si y solo si cada una de ellas tiene un nmero de elementos igual. Por ejemplo, si

U = [u1 u 2 L u m ]

v1 v V = 2, M v m

(1.8)

entonces, UV se define como la matriz de orden 1 (o de 11) siguiente:

m U = [u1v1 + u 2 v2 + L + u m vm ] = u j v j j =1
Ejemplo. Efectuar el producto matricial siguiente:

(1.9)

3 [1 0 2 ] 2 =[1 ( 3 ) + 0 ( 2 ) + 2 ( 4 ) ]=[11 ] 4 Definicin 4. Dos matrices A y B pueden multiplicarse en el orden AB si y solo si el nmero de columnas de A es igual al nmero de reglones de B. En este caso, el elemento (i,k) del producto AB es el elemento de la matriz de orden 11 obtenida mediante la multiplicacin del i-simo rengln de A por la k-sima columna de B. Si A = aij es de orden mn, y B = bij es de orden np, entonces, las dos matrices pueden multiplicarse como AB y, si el resultado es la matriz C, entonces, C es de orden mp, donde:

[ ]

[ ]

cik = aij b jk
j =1

(1.10)

Ejemplos.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

Matemticas Avanzadas Captulo 1

Programacin Lineal

1 5 4 3 4 8 = 2 1 0 1 8 5 a 11 a 21 a 12 x 1 a 11 x 1 + a 12 x 2 = a 22 x 2 a 21 x 1 + a 22 x 2 , B =[ b1 b 2 ] , entonces, se puede tener los productos matriciales siguientes:

a1 Si A= a2

a 1 b1 AB = a 2 b1

a1 b 2 a 2 b2

BA =[ a 1 b1 + a 2 b 2 ]
donde se nota que AB BA. En trminos ms generales, si AB existe, donde el orden de A es mn, y el orden de B es np, entonces, el producto BA no existe, a menos que m = p. Para el caso especial en que AB = BA, se dice que las matrices A y B son permutables. Debido a que, en general, no hay permutatividad en el producto matricial, se dice que en el producto AB, la matriz A premultiplica a la matriz B, mientras que la matriz B postmultiplica a la matriz A. Definicin 5. La transpuesta de la matriz A de orden mn, es una matriz de nm, denotada como A T , obtenida mediante el intercambio de renglones y columnas de A:

a 11 a 12 A T = M a1n

a 21 a 22
M

L a m1 L am2 L
a mn

(1.11)

a2n

Las matrices transpuestas poseen las siguientes propiedades: (a) (b) (c)
( A+ B ) T = A T + B T

( A T )T = A

( AB ) T = B T A T

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

Matemticas Avanzadas Captulo 1

Programacin Lineal

1 2 2 1 Ejercicio. Con las matrices A = y B = , demostrar las propiedades anteriores. 2 3 1 1


Definicin 6. Se dice que la matriz A de orden n ( nn), es una matriz simtrica si se cumple que aij = a ji para ij, i = 1, ,n y j = 1, , n. De hecho, las matrices A y B del ejercicio anterior son matrices simtricas. Definicin 7. Para cualquier matriz A cuadrada de orden n, es posible calcular su determinante y su traza, los cuales estn denotados como det(A) y tr(A), respectivamente. A su vez, la traza est definida como la suma de sus elementos diagonales: tr(A) = a 11 + a 22 +L+ a nn En el caso del determinante existe una variedad de mtodos para calcularlo.

1.2.2 Dependencia e Independencia Lineal


Definicin 8. Un vector x r +1 se dice ser linealmente dependiente sobre un conjunto de vectores x 1 , x 2 , , x r , si x r +1 puede escribirse como una combinacin lineal de este conjunto de vectores, es decir,

x r +1 = a 1 x 1 + a 2 x 2 + ... + a r x r donde a 1 , a 2 , ..., a r son escalares. Por ejemplo, el vector 15 x 1 = 30 2


es una combinacin lineal de

(1.12)

3 x2 = 6 y 2

1 x3 = 2 2

debido a que x 1 = 4 x 2 + 3 x 3 . Consecuentemente, x 1 es linealmente dependiente sobre el conjunto de vectores x 2 y x 3 .

Alternativamente, un conjunto de vectores, por ejemplo, x 1 , x 2 , , x r , se dice que es linealmente dependiente si una combinacin lineal no trivial de los vectores pueden ser forzados a resultar en un vector nulo. Para el caso anterior, debido a que
Maestra en Ciencias en Ingeniera Elctrica ITM-CFE G. Gutirrez-H. Tovar2013

Matemticas Avanzadas Captulo 1

Programacin Lineal

4 x 2 + 3 x 3 x1 = 0 los vectores x 1 , x 2 y x 3 son linealmente dependientes. Una definicin correspondiente indica la situacin opuesta de independencia lineal, cuando un vector x r +1 no puede ser escrito como una combinacin lineal de un conjunto de vectores x 1 , x 2 , , x r . Definicin 9. Un conjunto de vectores es linealmente independiente solamente si una combinacin lineal trivial de los vectores puede resultar en un vector nulo. Por ejemplo, un vector

1 x4 = 2 3
no puede ser escrito como una combinacin lineal de los vectores x 1 y x 2 . Entonces, x 1 , x 2 y x 4 son linealmente independientes. Si las columnas de una matriz A son linealmente independientes, se dice que A tiene un rango completo por columnas. Similarmente, se dice que A tiene rango completo por renglones si sus renglones son linealmente independientes. Si las columnas de A son independientes, la relacin Av = 0 indica un conjunto de ecuaciones lineales que requieren que v = 0, debido a que, por la definicin de independencia lineal, una combinacin lineal no trivial de las columnas no puede ser igual a 0.
1.2.3 Espacios Vectoriales

Para la combinacin lineal siguiente:


y = a 1 x 1 + a 2 x 2 + ... + a n x n

(1.13)

se tiene que el vector y es una combinacin lineal de los vectores x. Si

a i = 1,
i =1

se dice que la

combinacin lineal es convexa. Por ejemplo, con a 1 = 0.2 y a 2 = 0.8, se obtiene la combinacin lineal convexa de los vectores:

1 ( 0.2 ) + 3 ( 0.8 ) 1 3 x 1 = 2 y x 2 = 4 con y = 2 ( 0.2 ) + 4 ( 0.8 ) = 3 ( 0.2 ) + 5 ( 0.8 ) 3 5

2.6 3.6 4.6

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

Matemticas Avanzadas Captulo 1

Programacin Lineal

La significancia de la combinacin lineal convexa es que el vector y termina sobre la lnea uniendo a los vectores x 1 y x 2 . En estos trminos, una combinacin lineal de columnas puede ser expresada como un producto de una matriz por un vector, tal como la expresin que ya se haba escrito anteriormente:

a 11 a 21

a 12 x 1 a 11 x 1 + a 12 x 2 a 11 a 21 y 1 = = x1 + x2 = a 22 x 2 a 21 x 1 + a 22 x 2 a 21 a 22 y 2

(1.14)

donde y 1 y y 2 son elementos del vector y. De una coleccin de todos los posibles vectores de dimensin n, considere cualquier vector x. Entonces, ax tambin es un vector de dimensin n, donde a es un escalar; adems z = x + y es un vector de dimensin n donde y es un vector de la misma dimensin. Similarmente, una combinacin lineal w = a 1 x + a 2 y es un vector de dimensin n. Debido a estas propiedades, se dice que el conjunto de vectores de dimensin n forma un espacio vectorial lineal de dimensin n, designado como R n o E n . Varias combinaciones lineales de dos vectores de dimensin 2 (de orden 2) generan la totalidad del espacio vectorial de dos dimensiones R 2 . Se dice que cualquier par de vectores linealmente independientes u y v generan al espacio vectorial entero R 2 . Alternativamente, considere a los vectores unitarios [1 0] y [0 1] los cuales son linealmente independientes. Una combinacin lineal de estos cubre el espacio vectorial de dos dimensiones. Es decir, cualquier par de vectores linealmente independientes forman una base del espacio vectorial de dos dimensiones. Una extensin anloga para el espacio vectorial de tres dimensiones es obvia. Por ejemplo, los vectores unitarios y linealmente independientes:
1 e1 = 0 , 0 0 e2 = 1 , 0 0 e3 = 0 1

cubren el espacio vectorial de tres dimensiones. Consecuentemente, el espacio de tres dimensiones puede ser generado a partir de estos vectores unitarios que forman una base de R 3 . Por ejemplo, el vector
1 z= 2 2

es una combinacin lineal de e 1 + 2 e 2 2 e 3 . La extensin para el espacio vectorial de n dimensiones es directa.


Maestra en Ciencias en Ingeniera Elctrica ITM-CFE G. Gutirrez-H. Tovar2013

Matemticas Avanzadas Captulo 1

Programacin Lineal

Definicin 9. Los vectores linealmente independientes que forman una base cubren el espacio vectorial de n dimensiones, al cual se le conoce como espacio Euclidiano de n dimensiones. Los n vectores son de orden n (de n elementos) expresados como una eneada ordenada que representa un punto en el espacio de n dimensiones, o una flecha partiendo del origen hacia dicho punto. Para explicar el concepto de espacio Euclidiano, considere la distancia entre dos vectores a y b. La distancia es una funcin real definida como d = d(a,b) con las siguientes propiedades: 1. Cuando a y b coinciden, d = 0. Es decir, d(a,b) = 0, para a = b. 2. Cuando a y b son distintos, la distancia entre a y b es la misma que aquella entre b y a y son nmeros reales positivos. Esto es, d(a,b) = d(b,a) > 0, para a b. 3. La distancia entre a y b es menor que la distancia entre a y c (un punto distinto de a o b) ms la distancia de c a b. Matemticamente, d(a,b) d(a,c) + d(b,c), para c a,b. Si los vectores x, y son de orden n, con las coordenadas ( x 1 , x 2 , ..., x n ) y ( y 1 , y 2 , ..., y n ), la distancia Euclidiana entre estos vectores est dada por:
d ( x, y) =

( x 1 + y 1 ) 2 + ( x 2 + y 2 ) 2 + ... + ( x n + y n ) 2

(1.15)

siendo este resultado una generalizacin del Teorema de Pitgoras. La distancia Euclidiana es utilizada como una medida de convergencia de algoritmos y mtodos de optimizacin.
1.2.4 La Matriz Inversa

Considere el siguiente conjunto de n ecuaciones algebraicas lineales:


a 11 x 1 + a 12 x 2 +L+ a 1 n x n = b1 a 21 x 1 + a 22 x 2 +L+ a 2 n x n = b 2

M M M M a n 1 x 1 + a n 2 x 2 +L+ a nn x n = b n

(1.16)

el cual, en trminos matriciales, puede escribirse como sigue:

a 11 a 21 M a n1

a 12 a 22 M a2n

L a 1 n x1 L a2 n x2 M M L a nn xn

b1 b2 = M b n

(1.17)

o en forma compacta como:

Ax =b

(1.18)

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

10

Matemticas Avanzadas Captulo 1

Programacin Lineal

En el caso de escalares, para resolver ax = b, puede multiplicarse por 1/a a ambos lados de la igualdad, de modo que x = b/a, lo cual puede escribirse como x = a 1 b , donde a 1 es el inverso de a. Con respecto a la forma de obtener la solucin de A x = b, el problema es encontrar una matriz, por ejemplo G, tal que se tenga lo siguiente:

G Ax = Gb

(1.19)

En caso de que el producto matricial GA pueda corresponder a una matriz I de orden n con las caractersticas siguientes:

1 0 I = M 0

0 L 0 1 L 0 M M 0 L 1

entonces, I es una matriz diagonal, puesto que aii 0 y aij = 0 , para ij, e i=1, , n y j =1, , n. Adems, I es una matriz unitaria o identidad, debido a que aii =1 . Definicin 11. Si existe una matriz G tal que GA = I, entonces, G es llamada la inversa de A, la cual se denota como A . Por otra parte, se cumple que AI = IA = A. Entonces, para el conjunto de ecuaciones:
1

GA x = G b
Si G = A , entonces,
1

Ax = A b

I x = A 1 b
y, finalmente,

x=A b
1

(1.20)

De este resultado, se desprende el hecho que la solucin de A x = b puede obtenerse si existe y se encuentra la inversa de A, y se realiza el producto A b = x . Entonces, el problema principal es encontrar A .
1

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

11

Matemticas Avanzadas Captulo 1

Programacin Lineal

Definicin 12. Una matriz (cuadrada) de orden n que tiene inversa, se dice que es una matriz no singular. Por el contrario, si una matriz de orden n no tiene inversa, entonces, se dice que es una matriz singular. Ejemplos. La matriz:

2 3 A= tiene inversa: 1 4 2 3 B= no tiene inversa. 4 6

1 4 3 A 1 = . Por otra parte, la matriz: 11 1 2

En el primer caso, el determinante de A, denotado como det(A), es diferente de cero: det(A) = 2(4) (1)(-3) = 11 En el segundo caso, det(B) = 2(-6) 4(-3) = -12 + 12 = 0. Este resultado es general para todas las matrices de orden n: (a) Si A tiene inversa, entonces, det(A) 0. (b) Si A no tiene inversa, entonces, det(A) = 0. Por otra parte, se puede demostrar que la matriz inversa de A es nica, lo cual tambin se cumple con un escalar, cuyo inverso es nico.
1.2.5 Solucin de Ecuaciones Algebraicas Lineales

Sea el conjunto de ecuaciones algebraicas lineales siguiente:


a 11 x 1 + a 12 x 2 + a 13 x 3 = b 1 a 21 x 1 + a 22 x 2 + a 23 x 3 = b 2 a 31 x 1 + a 32 x 2 + a 33 x 3 = b 3

Para resolver estas ecuaciones, la manera natural de hacerlo es despejar de la primera ecuacin a x 1 y substituirla en la segunda y tercera ecuaciones. Posteriormente, de la segunda ecuacin se despeja a x 2 y se substituye en la tercera ecuacin. De este resultado, se puede obtener el valor de x 3 , el cual se substituye en la expresin donde x 2 est despejada, y se calcula el valor de esta. Finalmente, se substituye los valores de x 2 y x 3 en la expresin donde x1 est despejada y, as, se obtiene la solucin del problema.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

12

Matemticas Avanzadas Captulo 1

Programacin Lineal

Un mtodo anlogo es aplicar operaciones elementales de rengln al conjunto de ecuaciones original, a fin de ir obteniendo una matriz escalonada o triangular superior, de modo que, al final, se obtenga el valor de la ltima incgnita del problema y, a travs de una substitucin regresiva, se ir obteniendo los valores de las incgnitas restantes. Las operaciones elementales de rengln pueden resumirse en dos: multiplicacin del rengln (ecuacin) por un escalar y resta (suma) entre renglones (ecuaciones). A continuacin, se ilustra este proceso.
1.2.6 Eliminacin Gaussiana

El proceso de eliminacin Gaussiana consiste en aplicar operaciones elementales de rengln a las ecuaciones a resolver, a fin de obtener en forma recursiva la solucin del problema. Para el conjunto anterior de tres ecuaciones, se realiza el proceso de eliminacin Gaussiana. Paso 1. Se divide entre a 11 la primera ecuacin:

x1 +

a 12 a 11

x2 +

a 13 a 11

x3 =

b1 a 11

a 21 x 1 + a 22 x 2 + a 23 x 3 = b 2 a 31 x 1 + a 32 x 2 + a 33 x 3 = b 3
Paso 2. A la segunda ecuacin se le resta la primera ecuacin multiplicada por a 21 :

x1 +

a 12 a 11

x2 +

a 13 a 11

x3 =

b1 a 11

a 21 a 13 a 21 a 12 a 21 b 1 a 23 x 3 =b 2 a 22 x2 + a 11 a 11 a 11 a 31 x 1 + a 32 x 2 + a 33 x 3 = b 3
Paso 3. A la tercera ecuacin se le resta la primera ecuacin multiplicada por a 31 :
x1 + a 12 a 11 x2 x2 + a 13 a 11 x3 = b1 a 11

a 21 a 12 a 22 a 11 a 31 a 12 a 32 a 11

a 21 a 13 + a 23 a 11 a 31 a 13 a 33 a x 2 + 11

a 21 b 1 x 3 =b 2 a 11 a 31 b 1 x 3 =b 3 a 11

El conjunto de ecuaciones anterior, puede escribirse de manera simplificada como:

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

13

Matemticas Avanzadas Captulo 1

Programacin Lineal

x 1 + a 12 x 2 + a 13 x 3 = b 1
(1) (1) (1) (1)

(1)

(1)

(1)

a 22 x 2 + a 23 x 3 = b 2 a 32 x 2 + a 33 x 3 = b 3

(1) (1)

Paso 4. La segunda ecuacin se divide entre a 22 :


x 1 + a 12 x 2 + a 13 x 3 = b 1 x2 +
(1) (1) (1) (1)

(1)

a 23 a 22

(1) (1) (1)

x3 =

b2

(1) (1)

a 22

a 32 x 2 + a 33 x 3 = b 3

(1)

Paso 5. A la tercera ecuacin se le resta la segunda ecuacin multiplicada por a 32 :


x 1 + a 12 x 2 + x2 +
(1) a 33 (1)

(1)

a 13 x 3 = b 1 x (1) 3 a 22 (1) (1) a 32 a 23 a 22


(1)

(1)

(1)

a 23

(1)

b2

(1) (1)

a 22

(1) x 3 =b3

a 32 b 2 a 22
(1)

(1)

(1)

Estas ltimas ecuaciones pueden escribirse en la forma siguiente:


x 1 + a 12 x 2 + a 13 x 3 = b 1
(2) (1) (1) (1)

x 2 + a 23 x 3 = b 2 a 33 x 3 = b 3
(2)

(2)

(2)

Paso 6. De la ltima de estas ecuaciones se divide entre a33 :


x3 = b3
(2) (2)

( 2)

a 33

de modo que se ha encontrado el valor de la tercera incgnita del problema. Con esta incgnita calculada, se substituye en la segunda ecuacin, para obtener x 2 :

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

14

Matemticas Avanzadas Captulo 1

Programacin Lineal

x 2 =b2

(2)

a 23 x 3

(2)

y ya conocidas x 2 y x 3 , se substituyen en la primera ecuacin para obtener x1 :


x 1 = b1
(1)

a 12 x 2 a 13 x 3

(1)

(1)

Ejercicio. Encontrar la solucin del problema siguiente, mediante el proceso de eliminacin Gaussiana: 10 x 1 + 6 x 2 3 x 3 = 5 6 x1 + 8 x 2 + 4 x 3 + x 4 = 1
3 x 1 + 4 x 2 + 9 x 3 + 5 x 4 = 0

x 2 + 5 x 3 +10 x 4 =13

1.2.7 Existencia de Soluciones

Considere primeramente la ecuacin con escalares ax=b. En este caso, se obtiene de manera directa que la solucin es x=b/a, pero de hecho hay tres posibilidades: (a) Si a0, entonces, existe x=b/a, siendo esta la nica solucin de la ecuacin, cualquiera que sea el valor de b, incluyendo b=0. (b) Si a=0, entonces hay dos posibilidades, dependiendo del valor de b: Si b0, entonces, la ecuacin es 0x = b 0, para la cual no existe solucin finita posible. En este caso, se dice que no hay solucin o que el problema es inconsistente, debido a que se tiene en 0 = b 0 una contradiccin. Si b = 0, entonces cualquier nmero de soluciones existe a la ecuacin, debido a que se tiene que 0x = 0.

Estos resultados tambin se aplican al caso de cuando se tiene un conjunto de dos ecuaciones con dos incgnitas. El conjunto de ecuaciones:
x1 + x 2 = 2 x1 x 2 =0 tiene una solucin nica. Por otra parte, el siguiente conjunto de ecuaciones es inconsistente: x1 + x 2 = 2 x 1 + x 2 =1 y, por ltimo, el siguiente conjunto de ecuaciones tiene un nmero infinito de soluciones:

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

15

Matemticas Avanzadas Captulo 1

Programacin Lineal

x1 + x 2 = 2 2 x1 + 2 x 2 = 4 Los dos primeros casos son obvios: en el primero, la solucin nica es x 1 = x 2 =1 , mientras que en el segundo la inconsistencia radica en que los lados izquierdos de las ecuaciones son idnticos, de modo que los lados derechos tambin deben serlo, pero no es el caso, por lo cual hay inconsistencia. La manera de identificar de que el conjunto de ecuaciones tiene un nmero infinito de soluciones es ejecutando el proceso de eliminacin Gaussiana. La primera ecuacin est puesta de tal forma que no hay que ejecutar operacin alguna sobre ella: x1 + x 2 = 2 La segunda ecuacin se modifica restndole la primera multiplicada por 2: 2 x1 + 2 x 2 =4 2 x1 +2 x 2 =4 0 x1 +0 x 2 = 0 de donde se observa que alguna de las dos variables puede tomar cualquier valor, de modo que la igualdad se sigue cumpliendo con la segunda ecuacin. Sea x2 = k , de modo que, substituyendo en la primera ecuacin: x 1 = 2 k Definicin 13. Un conjunto de ecuaciones algebraicas lineales se dice que es homogneo, cuando todos sus trminos independientes b i = 0 , para i = 1, ..., n. En este caso, se tiene como solucin
nica la trivial, es decir que x i = 0 , para i = 1, .., n, o se tiene un nmero infinito de soluciones. Ejemplo del primer caso es el conjunto de ecuaciones homogneo siguiente:

x1 + x 2 =0 x1 x 2 =0
donde se observa que las igualdades se cumplen de manera simultnea nicamente cuando x 1 = x 2 = 0 . Un ejemplo del segundo caso es el conjunto de ecuaciones:

x1 + x 2 =0
2 x1 + 2 x 2 =0 de donde se observa que, al aplicar el mtodo de eliminacin Gaussiana, se tiene las ecuaciones:

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

16

Matemticas Avanzadas Captulo 1

Programacin Lineal

x1 + x 2 = 0
0 x 2 =0 notndose que x 2 puede tomar cualquier valor y x 1 se calcular con la relacin:

x1 = x 2
Sea el conjunto de ecuaciones siguiente:

x1 + 2 x 2 5 x 3 = 2

2 x1 3 x 2 + 4 x 3 = 4 4 x1 + x 2 6 x 3 = 8 El proceso de eliminacin Gaussiana se puede ejecutar en trminos de la matriz de coeficientes aumentada:


1 2 5 2 2 3 4 4 4 1 6 8

donde la ltima columna corresponde a los trminos independientes de las ecuaciones. Al aplicar operaciones elementales de rengln, esta matriz se modifica a la siguiente:
1 2 5 2 0 1 2 0 0 0 0 0

de modo que este es un conjunto de ecuaciones con un nmero infinito de soluciones, debido a que la variable x3 puede tomar cualquier valor.

1.2.8 Transformaciones Lineales


En general, una transformacin lineal permite trasladar un conjunto de ecuaciones definido en un marco de referencia a otro. A manera de ilustracin, en ingeniera elctrica, a travs de una transformacin lineal, es posible pasar de: (a) El marco de referencia de ecuaciones de rama al marco de referencia de ecuaciones nodales. (b) El marco de referencia de circuitos trifsicos al marco de referencia de circuitos de secuencia.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

17

Matemticas Avanzadas Captulo 1

Programacin Lineal

Supngase que A y B son matrices cuadradas para las cuales existe una matriz T invertible, tal que B =T 1 AT . Entonces, B se dice similar a A o que B es obtenida de A. Por ejemplo, en el marco de referencia trifsico, el modelo matricial que relaciona voltajes y corrientes es:
Vabc = Z abc I abc

(1.21)

El cual puede trasladarse al marco de referencia de las componentes simtricas, aplicando la transformacin lineal siguiente:

Vabc = Ts V012 = Z abc I abc = Z abc Ts I 012


o tambin,
TsV012 = Z abc Ts I 012

Premultiplicando ambos miembros por Ts1 :

V012 = Ts1 Z abc Ts I 012


y de aqu, se obtiene que:

V012 = Z 012 I 012


donde:
Z 012 = Ts1 Z abc Ts

(1.22)

(1.23)

De acuerdo a los conceptos anteriores, se dice que Z 012 es similar a Z abc . Las propiedades que tienen estas matrices son las siguientes: (a) Las trazas de ambas matrices son iguales, es decir, tr( Z abc ) = tr( Z 012 ). (b) Los determinantes de ambas matrices son iguales, esto es, Det( Z abc ) = Det( Z 012 ). Entonces, el problema para pasar de un marco de referencia a otro consiste en encontrar la matriz de transformacin, de modo que se obtenga alguna ventaja con respecto al marco de referencia original, ya sea en cuestin de conceptos o de simplificacin de la resolucin de problemas de redes elctricas.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

18

Matemticas Avanzadas Captulo 1

Programacin Lineal

Obtencin de la Matriz de Transformacin de Componentes Simtricas


Se conoce que dos matrices, A y B, estn relacionadas por medio de la transformacin lineal siguiente:
A =T 1 BT

(1.22)

o viceversa, y tambin se conoce que los valores propios o eigenvalores de ambas matrices sern los mismos. Por esta razn, se dice que A y B son semejantes y que (1.22) se conoce como transformacin de similaridad o semejanza. Si la matriz A, por ejemplo, es de la forma diagonal:
a 11 0 A= M 0 0 a 22 M 0 0 L 0 O M L a nn L

Entonces, el determinante caracterstico es el siguiente:

a 11 U A =
0 M 0

L L O

0 0 M

a 22
M 0

L a nn

el cual, al desarrollarlo, resulta en:

U A = ( a11 ) ( a22 )L ( ann )


donde U es la matriz identidad o unitaria. Si se iguala a cero este determinante caracterstico, se obtiene el polinomio caracterstico del arreglo matricial que, al resolverlo, se obtendr los valores propios correspondientes. Es decir, si

( a11 )( a22 ) L ( ann ) = 0


entonces, se tiene:

1 = a11 , 2 = a22 ,L , n = ann


Puede concluirse que los valores propios de una matriz completamente diagonal son precisamente sus correspondientes elementos diagonales.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

19

Matemticas Avanzadas Captulo 1

Programacin Lineal

Ahora bien, si se requiere substituir una red trifsica por un sistema equivalente de redes desacopladas, entonces, se deber obtener una matriz completamente diagonal, a partir de una matriz original Z abc , utilizando la transformacin lineal (1.22). Esto obliga a pensar en obtener una matriz de transformacin T de modo que la matriz semejante a Z abc , llamada matriz de componentes simtricas, denotada como Z 012 , sea completamente diagonal. En trminos generales, un circuito trifsico puede representarse matricialmente como: z aa Z abc = z ba z ca z ab z bb z cb z ac z bc z cc

donde los elementos no diagonales representan los acoplamientos mutuos entre fases y los diagonales son las impedancias propias de cada una de las fases. Si se supone que el circuito trifsico est perfectamente balanceado, entonces Z abc se simplifica a la matriz:

Z Z abc = M M

M Z M

M M Z

El correspondiente determinante caracterstico de este modelo matricial ser el siguiente:

Z U Z abc = M
M

M M =0

Z
M

Al desarrollar este determinante e igualarlo a cero, se obtiene el polinomio caracterstico correspondiente y cuyas soluciones son:

1 = Z + 2M 2 =Z M 3 =Z M
Para determinar la matriz de transformacin lineal, Ts, debe calcularse los eigenvectores o vectores propios, los cuales representarn cada columna de la misma. Cada vector propio es la solucin de un sistema de ecuaciones homogneo [iU Z abc ]=0, donde U es la matriz identidad del mismo orden que Z abc . En este caso, se tienen tres valores propios, de modo que se resolver tres sistemas de ecuaciones de este tipo. (1.23)

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

20

Matemticas Avanzadas Captulo 1

Programacin Lineal

Para cuando se aplica 1 = Z + 2 M , se tiene el sistema de ecuaciones homogneo siguiente:

Z + 2 M Z M M 2M M M M
2M

M Z + 2 M Z M M x 11 M x 21 2M x 31

x 11 M x 21 Z +2 M Z x 31 0 =0 0

0 = 0 0

Dividiendo el conjunto de ecuaciones entre M :

2 1 1 x 11 1 2 1 x 21 1 1 2 x 31

0 = 0 0

Al aplicar operaciones elementales de rengln, se reducir este conjunto de ecuaciones a uno triangular superior:

2 1 1 x 11 0 1 1 x 21 0 0 0 x 31

0 = 0 0

el cual tiene un nmero infinito de soluciones, incluyendo la trivial, donde cada una cumple que x11 = x21 = x31, de donde se obtiene que este vector propio ser:

x 11 k x 21 = k x 31 k
y se podr observar que un caso particular es el siguiente:

x 11 1 x 21 = 1 x 31 1
Repitiendo el proceso para 2 = Z M , se obtiene el conjunto de ecuaciones homogneo:

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

21

Matemticas Avanzadas Captulo 1

Programacin Lineal

Z M Z M M M M M M M M

M Z M Z M

x 12 M x 22 Z M Z x 32 0 = 0 0

0 = 0 0

M x 12 M x 22 M x 32

Dividiendo entre M y aplicando operaciones elementales de rengln, el conjunto de ecuaciones anterior se reduce a:

1 1 1 x 12 0 0 0 x 22 0 0 0 x 32

0 =0 0

El conjunto de ecuaciones anterior tiene un nmero infinito de soluciones, donde cada una de ellas estar definida por una combinacin que cumpla con la igualdad x12 + x 22 + x 32 = 0 . Por ejemplo, este vector propio podra ser:

x 12 x 22 x 32

1 1 1 o = 1/ 4 = 1/ 2 = 1 120 o 3/ 4 1/ 2 1 240

1 o = 1 240 o 1 120

, etc.

Debe mencionarse que una caracterstica que debe tener la matriz de transformacin es que sea invertible, de modo que los vectores propios que la conforman deben ser linealmente independientes. Normalmente, para que esto ocurra, los valores propios deben ser distintos entre s. Si esto no se cumple, no ser posible obtener una matriz semejante diagonal. Sin embargo, en este caso en particular, aunque 2 = 3, y debido a que se tiene dos grados de libertad para seleccionar valores, es posible definir dos vectores propios linealmente independientes. Para el modelo trifsico balanceado, se define la matriz de transformacin lineal:
1 1 Ts = 1 a 2 1 a 1 a a2

(1.24)

donde a = 1120o y a 2 = 1240o . La inversa de Ts ser:

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

22

Matemticas Avanzadas Captulo 1

Programacin Lineal

1 1 1 Ts 1 = 1 a 3 2 1 a

1 a2 a

(1.25)

Anteriormente, se mencion que el objetivo era encontrar una matriz diagonal representativa del sistema trifsico original mediante tres circuitos monofsicos independientes o desacoplados entre s. Entonces, puede formalmente plantearse el problema de pasar de un sistema de coordenadas de fase (abc) al sistema de coordenadas de secuencia (012). Para esto, se parte de la relacin lineal: Vabc = Z abc I abc a la cual se le aplica la regla de transformacin lineal, usando como matriz de transformacin a la matriz de componentes simtricas Ts: Ts V012 = Z abc Ts I 012 Premultiplicando ambos lados de la expresin anterior por Ts 1 : V012 = Ts 1 Z abc Ts I 012 y en trminos de las coordenadas de secuencia:

V 012 = Z 012 I 012


donde: Z 012 = Ts 1 Z abc Ts (1.26)

Es fcilmente demostrable que realizando el producto matricial anterior, se obtiene una matriz diagonal de la forma:

Z + 2M Z 012 =

Z M

Z M

(1.27)

donde se nota que los elementos diagonales son exactamente los valores propios de Z abc . La matriz (1.27) representar tres circuitos monofsicos desacoplados electromagnticamente entre s. Adicionalmente, debe hacerse notar que las trazas y los determinantes de Z abc y Z 012 son iguales entre s.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

23

Matemticas Avanzadas Captulo 1

Programacin Lineal

Valores propios de matrices simtricas

En el caso de matrices simtricas, sus valores propios sern reales. Esta propiedad es importante, ya que permite analizar muchos problemas asociados a este tipo de matrices en forma relativamente ms simple. En el caso de este curso, la aplicacin del concepto de valores propios se observar en el captulo asociado a la programacin no lineal.
Definicin de matrices en trminos de sus valores propios

Definicin 14. En trminos de los valores propios que tiene un matriz, esta puede definirse de la manera siguiente: (a) (b) (c) (d) Una matriz A de orden n es definida positiva si i > 0 , para i = 1, , n. Una matriz A de orden n es definida semi-positiva si i 0 , para i = 1, , n. Una matriz A de orden n es definida negativa si i < 0 , para i = 1, , n. Una matriz A de orden n es definida semi-negativa si i 0 , para i = 1, , n.

Posteriormente, se habr de observar que estas propiedades son importantes para las formulaciones de problemas de programacin no lineal.
1.3 FORMULACIN GRFICA DEL PROBLEMA DE PROGRAMACION LINEAL

Existen varias maneras para formular y resolver un problema de PL, desde el mtodo grfico o geomtrico, hasta soluciones algebraicas que dan origen a algoritmos como el de la fuerza bruta, el algoritmo simplex y el simplex de las dos fases, slo por mencionar algunos. La PL busca maximizar o minimizar una funcin objetivo lineal sujeta a restricciones lineales. Las restricciones lineales de un problema de programacin lineal pueden ser de tres tipos: de igualdad, de desigualdad o bien de ambos tipos. Para problemas de PL grandes ms de tres dimensiones y varias restricciones, una de las tcnicas menos eficientes para plantear y resolver el problema es la formulacin grfica. Sin embargo, esta formulacin es til para establecer las bases que explican cmo solucionar dichos problemas. En esta seccin, se presenta tambin las bases matemticas para poder comprender los problemas de PL. El modelo utilizado para la solucin del mercado mayorista centralizado de energa elctrica es un modelo lineal de asignacin de unidades. Por lo tanto, este modelo se resuelve con algn mtodo que solucione problemas de programacin lineal (PL). Cualquier problema de PL puede ser representado de forma cannica utilizando notacin matricial. Se tiene un conjunto de variables x de tal forma que minimicen la siguiente funcin objetivo lineal: Z = c1 x1 + c 2 x 2 + L + c n x n (1.28)

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

24

Matemticas Avanzadas Captulo 1

Programacin Lineal

Sujeta al conjunto de restricciones lineales: a11 x1 + a12 x2 + L + a1n xn b1


a21 x1 + a22 x2 + L + a2 n xn b2 M am1 x1 + am 2 x2 + L + amn xn bm x1 , x2 ,L, xn 0 Este problema puede expresarse en notacin matricial de la manera siguiente: Minimizar:
x1 x L cn ] 2 M xn

(1.29)

[c1
Sujeto a:

c2

(1.30)

a11 a 21 M a m1

a12 a 22 M am2

L a1n x1 b1 L a2n x 2 b2 M M M M L a mn x n bm x1 0 x 0 2 M M xn 0

(1.31)

(1.32)

Estas ecuaciones matriciales pueden ser escritas en forma abreviada de la manera siguiente: Minimizar: Sujeto a: cT x (1.33) (1.34) (1.35)

Axb x0

donde el vector columna c de dimensin n se llama vector de costos; el vector columna x de dimensin n se llama vector de variables; la matriz A, de dimensin m filas de restricciones por n columnas de variables se llama matriz de restricciones; y, por ltimo, el vector columna b de dimensin m filas de restricciones se llama vector de recursos. El superndice T en (1.33) indica transpuesto.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

25

Matemticas Avanzadas Captulo 1

Programacin Lineal

Un problema de PL de dos variables puede representarse grficamente en dos dimensiones si fueran tres variables sera en el espacio de tres dimensiones. Para el caso de dos dimensiones, se grafica cada una de las restricciones en el plano bidimensional, lo cual define una regin factible cualquier punto dentro o en la periferia de esta regin puede llegar a ser una solucin aunque no sea ptima y, a su vez, tambin se grafica la funcin objetivo o funcin de costos; al estar el problema definido en el espacio bidimensional, la funcin objetivo es una recta, si fueran tres dimensiones, sera un plano. Si el problema es minimizar (maximizar) la funcin de costos, el punto ptimo se encuentra avanzando en sentido contrario a donde crece la funcin de costos (beneficios) y de manera perpendicular a esta. Cada punto donde se interceptan un nmero igual de semiespacios rectas en el espacio de dos dimensiones o planos en el espacio de tres dimensiones y as sucesivamente al nmero de variables del problema dos variables en el espacio de dos dimensiones o tres variables en el espacio de tres dimensiones y as sucesivamente se llama a este punto un punto extremo. Si se interceptan ms semiespacios que variables se llama a este punto un punto extremo degenerado. A un conjunto de intersecciones de semiespacios se le llama conjunto polidrico que en caso de ser acotado se le llama politopo. Para que la solucin al problema sea ptima, esta tiene que ser el punto extremo ms alejado del vector de costos o beneficios, pero que siga dentro de la regin factible1. Antes de observar las situaciones posibles que pueden presentarse cuando se formula un problema de programacin lineal, se presenta un ejemplo de aplicacin del mtodo grfico.

Ejemplo 1.1 Primera ilustracin de la aplicacin del Mtodo Grfico


Suponga que existe un fabricante de dos productos A y B. La produccin de cada producto requiere de su procesamiento en dos departamentos 1 y 2. El departamento 1 tiene hasta 32 horas disponibles, mientras que el departamento 2 puede con hasta 34 horas de trabajo. La manufactura del producto A requiere de pasar tres horas a travs del departamento 1 y de una hora en el departamento 2. Cada unidad de producto B requiere de dos horas en el departamento 1 y de cuatro horas en el departamento 2. La utilidad de vender el producto A es de $5 y, cuando se vende el producto B, esta es de $6. El problema del fabricante es determinar la mejor combinacin posible de productos A y B a fabricarse con el objeto de maximizar sus beneficios. Sea x 1 el nmero ptimo de productos A y x 2 el nmero ptimo de productos B a ser producidos. Entonces, el problema puede ser formulado en la forma siguiente: Maximizar: P = 5x1 + 6 x 2 (e.1) (e.2) (e.3) (e.4)

Sujeto a: 3 x 1 + 2 x 2 32 x 1 + 4 x 2 34 x1 0 x2 0
1

Para una demostracin matemtica rigurosa ver [18].

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

26

Matemticas Avanzadas Captulo 1

Programacin Lineal

La restriccin (e.1) puede ser graficada como sigue: Se encuentra dos puntos en el eje cartesiano, correspondientes a los caso particulares en los que x 1 = 0 y x 2 = 0, de manera que: 3 x 1 + 2 x 2 = 32 3 ( 0 ) + 2 x 2 = 32 x 2 = 16 unidades del producto B. 3 x 1 + 2 x 2 = 32 3 x 1 + 2 ( 0 ) = 32 x 1 = 10.6666 unidades del producto A. Entonces, los puntos (0,16) y (10.666666,0) son unidos a travs de una lnea recta, tal como es mostrado en la Figura 1.1, la cual define un rea triangular delimitada por los puntos 0, a y b. La restriccin de desigualdad (e.1) indica que el rea 0ab est sobre o a la izquierda de la lnea ab. Es decir, desde el punto de vista grfico, el rea en amarillo representa la igualdad, mientras que las lneas en negro que la delimitan representan a la desigualdad de (e.1) sobre los valores que toman x 1 y x 2 definiendo puntos sobre la recta ab. x2
16 a (0,16) 14 12 10 8 6 4 2 0 4 8 b (10.6666, 0) 12 16 20 24 28 32

3 x 1 + 2 x 2 32

x1

Figura 1.1 rea definida por la restriccin (e.1).

Suponga ahora que se puede definir cualesquiera combinaciones de los productos A y B, las cuales estn representadas grficamente en la Figura 1.2, por los puntos (10,10), (2,6) y (8,4). Cualquier combinacin de unidades de A y B que se site sobre la recta ab, har uso de las 32 horas disponibles en el departamento 1. Por ejemplo, si se produce 8 unidades del producto A y 4 unidades de B, se tendr 8(3 horas) + 4(2 horas) = 32 horas. Cualquier punto a la izquierda de la recta ab resultar en capacidad no utilizada, es decir, horas en las cuales en que el departamento 1 no estar trabajando. Por ejemplo, si se produce 2 unidades de A y 6 de B, definido por el punto

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

27

Matemticas Avanzadas Captulo 1

Programacin Lineal

(2,6), se tendr 2(3 horas) + 6(2 horas) = 18 horas, de modo que habr 32 18 = 14 horas sin utilizar la capacidad del departamento 1. x2
16 a (0,16) 14 12 10 8 6 4 2 0 4 8 (2,6) (8,4) b (10.6666, 0) 12 16 20 24 28 32 (10,10)

x1

Figura 1.2 Combinaciones de unidades de los productos A y B.

Por otra parte, para producir 10 unidades de los productos A y B, punto (10,10), se requiere de 10(3 horas) + 10(2 horas) = 50 horas, lo cual es imposible debido a que el departamento 1 tiene disponibles 32 horas nicamente. Una explicacin similar es aplicada para la grfica de la segunda restriccin para el departamento 2, representada por la desigualdad x 1 + 4 x 2 34 . Usando el mismo procedimiento, se dibuja el rea correspondiente, donde los puntos que la delimitan son: x 1 + 4 x 2 = 34 ( 0 ) + 4 x 2 = 34 x 2 = 8.5 unidades del producto B. Primer punto: (0, 8.5) x 1 + 4 x 2 = 34 x 1 + 4 ( 0 ) = 34 x 1 =34 unidades del producto A. Segundo punto: (34, 0) La grfica correspondiente a esta restriccin es mostrada en la Figura 1.3, donde los puntos e y f corresponden al primero y al segundo puntos definidos arriba.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

28

Matemticas Avanzadas Captulo 1

Programacin Lineal

x2
16 14 12 10 8 6 4 2 0 4 8 12 16 20 24 28 f (34, 0) 32 34 e (0, 8.5)

x 1 + 4 x 2 34

x1

Figura 1.3 rea definida por la restriccin de capacidad (e.2).

Ahora, en la Figura 1.4 es presentada la grfica en la cual se incluye las restricciones (1) y (2), de manera que ahora la regin factible es la interseccin de las reas definidas en las figuras 1.1 y 1.3, la cual est delimitada por los puntos 0edb. x2
16 a (0, 16) 14 12 10 8 6 4 2 0 4 8 b (8.6666, 0) 12 16 20 24 28 f (34, 0) 32 34 e (0,8.5) d

Departamento 1

Departamento 2

x1

Figura 1.4 Representacin grfica de las restricciones del problema.

Para ilustrar la forma en que se puede encontrar el ptimo de la funcin objetivo, considere los puntos presentados en la Figura 1.5.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

29

Matemticas Avanzadas Captulo 1

Programacin Lineal

x2
16 a 14 12 10 8 6 4 2 0 4 (4, 3) b 8 12 (2, 10) e d

(14, 2) 16 20 24 28 32 34

x1

Figura 1.5 Puntos dentro de las tres regiones.

Ejemplo (a). Cuatro unidades del producto A y tres del producto B Departamento 1: 3 x 1 + 2 x 2 = 32 3(4) + 2(3) = 18 horas requeridas. x 1 + 4 x 2 = 34 1(4) + 4(3) = 16 horas requeridas.

Departamento 2:

El tiempo requerido para fabricar 4 unidades del producto A y 3 del producto B se sita dentro del tiempo disponible en ambos departamentos. Ejemplo (b). Dos unidades del producto A y 10 del producto B Departamento 1: Departamento 2: 3 x 1 + 2 x 2 = 32 3(2) + 2(10) = 26 horas requeridas.
x 1 + 4 x 2 = 34 1(2) + 4(10) = 42 horas requeridas.

En este caso, se encuentra que el tiempo requerido, para hacer 2 unidades de A y 10 de B, est dentro del tiempo disponible en el departamento 1, pero excede el tiempo disponible en el departamento 2. Por tanto, esta combinacin no es factible, debido a que cae fuera del rea de las soluciones factibles. Esto ocurrir tambin con la combinacin definida por el punto (14, 2). Entonces, de los ejemplos anteriores, puede observarse que ahora se deber encontrar una combinacin tal que se encuentre dentro de la regin factible marcada por 0edb. Sin embargo, ahora se puede obtener una combinacin que se encuentre sobre el segmento de recta ed, o bien dentro del segmento de recta db. De cualquier forma, entonces, la pregunta es cul combinacin ser la que maximice el beneficio (ptima)?

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

30

Matemticas Avanzadas Captulo 1

Programacin Lineal

Por razones que se habrn de explicar posteriormente, para cualquier problema de programacin lineal, la solucin grfica para encontrar el punto ptimo ser encontrada en uno de los puntos extremos del rea de la regin de soluciones factibles, es decir, el rea 0edb. Para este problema, ya se tiene localizados los puntos (0, 0), (0, 8.5) y (10.6666, 0). Entonces, se procede a calcular las coordenadas del punto d. Para esto, se plantea el conjunto de ecuaciones algebraicas lineales siguiente y se resuelve: 3 x 1 + 2 x 2 = 32 x 1 + 4 x 2 = 34 a) Se multiplica la primera ecuacin por (2): (2)( 3 x 1 + 2 x 2 = 32 ) = 6 x 1 4 x 2 = 64 x 1 + 4 x 2 = 34 Se le suma la segunda ecuacin: 5x1 x1 = 30 =6

b) Ahora, se substituye este resultado en la segunda ecuacin: x 1 + 4 x 2 = 34 6 + 4 x 2 = 34 4 x 2 = 28 x2 = 7 Entonces, el punto d est definido como (6,7). Ahora, con este resultado, se puede calcular el valor de la funcin objetivo para cada uno de los puntos extremos de la regin factible de soluciones, es decir, para P = 5 x 1 + 6 x 2 . Punto 0 Punto e Punto b Punto d (0, 0): (0, 8.5): (10.6666, 0): (6,7): 5(0) + 6(0) = 0. 5(0) + 6(8.5) = 51. 5(10.6666) + 6(0) = 53.3333 5(6) + 6(7) = 72.

Como puede observarse, la combinacin de producir 6 unidades de A y 7 unidades de B conduce a obtener el mximo valor de la funcin objetivo que es $72. Puede observarse, adems, de que en este caso, toda la capacidad de horas disponibles de los departamentos es utilizada: Departamento 1: Departamento 2: 3 x 1 + 2 x 2 = 32 3(6) + 2(7) = 32 horas requeridas. x 1 + 4 x 2 = 34 1(6) + 4(7) = 34 horas requeridas.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

31

Matemticas Avanzadas Captulo 1

Programacin Lineal

Ahora, se puede analizar el hecho de porqu la solucin con el punto d (6,7) es la ptima. Para esto, se puede suponer valores menores a los de la solucin, de manera que se grafica la funcin de la funcin objetivo para cada valor dado y considerando que no se debe violar restriccin alguna dentro de la regin factible. Por ejemplo, para un valor de P = 30, se tiene:
30 = 5 x 1 + 6 x 2

Si se supone x 1 = 0, entonces, x 2 = 30/6 = 5. Por otro lado, si se supone x 2 = 0, entonces, x 1 = 30/5 = 6. Con este resultado se tiene dos puntos (0,5) y (6,0) con los cuales se puede graficar la recta para cuando P = 30, tal como lo muestra la Figura 1.6, donde se observa que P puede tener este valor para diferentes valores de x 1 y x 2 que se desplacen sobre esta recta. x2
16 14 12 10 8 6 4 2 0 4 8 b 12 16 20 24 28 32 34 e d

P = 72 P = 51 P = 40 P = 30 x1

Figura 1.6 Regin factible de soluciones con la funcin objetivo evaluada en P = 30, 40, 51 y 72.

Ahora, para P = 40, se tiene los puntos (0,6.6666) y (8,0), tambin mostrados en la Figura 1.6. Continuando de esta forma, con x 1 = 0 y x 2 = 8.5 (punto e), el valor de P = 51, de manera que cuando x 2 = 0, x 1 = 51/5 = 10.2. As, se puede repetir este proceso de observar el valor de P en forma creciente, hasta llegar al punto extremo d, donde P = 72. El resultado anterior puede ser generalizado de acuerdo a la Figura 1.7, donde se presenta el caso de una regin factible para una funcin objetivo a minimizar. Note que ahora se tiene el valor ptimo de la funcin objetivo localizado en el punto ms alejado del vector de costos, dentro de la regin factible. Este vector de costos tiene su origen en el valor de x 1 = x 2 = 0.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

32

Matemticas Avanzadas Captulo 1

Programacin Lineal

Figura 1.7 Solucin Grfica para el caso de minimizar una funcin objetivo.

La solucin grfica da informacin en cuanto a las diversas soluciones que se pueden presentar al resolver problemas de PL. Existen cuatro tipos de soluciones: 1) solucin ptima nica y finita, 2) mltiples soluciones ptimas y finitas, 3) solucin ptima no acotada y, 4) solucin infactible. Estas son descritas enseguida. 1. Solucin ptima nica y finita: Sin importar que el conjunto polidrico est acotado o no, slo un punto extremo es el que da la solucin, como se ilustra en la Figura 1.8.

Figura 1.8 Solucin ptima nica finita acotada y no acotada.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

33

Matemticas Avanzadas Captulo 1

Programacin Lineal

2. Mltiples soluciones ptimas y finitas: Igualmente, sin importar que el conjunto polidrico sea politopo o no, varios puntos, extremos o no, cumplen con la solucin. Esto es, cualquiera de estos puntos da el mismo valor de la funcin objetivo. Otra manera de definir este caso es cuando una de las lneas de isocosto mismo costo coincide con una de las restricciones. Esto se ilustra en la Figura 1.9.

Figura 1.9 Mltiples soluciones ptimas finitas acotada y no acotada.

3. Solucin ptima no acotada: En este caso, el conjunto polidrico no tiene restriccin que lo acote. Entonces, puede presentarse la situacin de que las lneas de isocosto avancen en direccin a la regin no acotada; por tanto, pueden desplazarse de manera infinita en direccin opuesta y perpendicular al vector de costos. La Figura 1.10 muestra un ejemplo.

Figura 1.4 Solucin ptima no acotada.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

34

Matemticas Avanzadas Captulo 1

Programacin Lineal

4. Solucin infactible: Aqu, el conjunto de restricciones es inconsistente, es decir, no forman ninguna regin factible; por lo tanto, no tiene solucin el problema. En la Figura 1.11 se ilustra este caso.

Figura 1.11 Solucin Infactible.

Para terminar con la formulacin grfica, se presenta un ejemplo numrico donde se puede observar los pasos antes descritos, obtenindose una solucin nica finita y acotada.

Ejemplo 1.2. Segunda ilustracin del mtodo grfico


Minimizar: 3 x1 5 x 2 Sujeto a: x1 + 2 x2 4 x1 + 5 x 2 6 x1 , x 2 0 Se grafica el problema en el plano bidimensional, resultando la Figura 1.12.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

35

Matemticas Avanzadas Captulo 1

Programacin Lineal

Figura 1.12 Mtodo grfico del problema del ejemplo 1.2.

Como se observa en esta figura, se grafica a las dos restricciones del problema, as como a las dos restricciones de positividad de las variables; tambin, se dibuja el vector de costos y se avanza perpendicularmente en sentido contrario al que crece dicho vector, hasta que se encontr el punto extremo ms alejado. Si se sustituye el punto ptimo en la funcin objetivo, se obtiene el mnimo valor posible que cumple todas las restricciones, es decir, 3x1 5 x 2 3(4) 5(0) = 12 Para demostrarlo, se sustituye el punto extremo que se toca justo antes de llegar al punto extremo 8 10 y x2 = : ptimo, con x1 = 7 7
74 8 10 3 5 = = 10.5714 7 7 7 10.5714 > 12 Este resultado muestra que el valor de la funcin objetivo es mayor en este punto. Por lo tanto, la solucin es Z*= 12, en el punto ptimo x*= [4,0]. Despus de ilustrar el mtodo grfico para la solucin de problemas de programacin lineal, ahora se procede a hacer el planteamiento de la formulacin algebraica del mtodo simplex.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

36

Matemticas Avanzadas Captulo 1

Programacin Lineal

1.4 FORMULACIN DEL PROBLEMA DE PL: MTODO SIMPLEX


Es muy imprctico y adems imposible resolver problemas grandes con el mtodo grfico. Por ejemplo, un sistema elctrico de potencia hipottico con slo 2 nodos, 3 generadores, 2 cargas e interconectados a travs de una sola lnea de transmisin, puede arrojar un problema de PL con 20 variables 20 dimensiones y 14 restricciones. Para resolver problemas grandes se utiliza la formulacin algebraica. Como se estableci previamente, para que pueda existir una solucin ptima, debe existir un punto extremo ptimo. Puesto que el concepto de punto extremo es meramente geomtrico, es necesario entonces trasladar este concepto a una forma algebraica. Antes de hacer este traslado de conceptos, debe pasarse de la formulacin de un problema de PL en forma cannica a forma estndar. La diferencia entre la forma cannica y la estndar estriba en que en la forma cannica pueden existir restricciones de desigualdad as como de igualdad, y en la estndar existen slo restricciones de igualdad. Esto implica que, para pasar de la forma cannica a la forma estndar, se tiene que transformar las restricciones de desigualdad a restricciones de igualdad, ya que las restricciones de igualdad permanecen sin cambio alguno. Esto se logra agregando variables de holgura. Si las restricciones de desigualdad son menores o iguales a cero, se agregan variables de holgura positivas. Si las restricciones de desigualdad son mayores o iguales a cero, se agrega variables de holgura negativas. La razn de los signos de las variables de holgura se basa en lo siguiente: para que el signo pase a ser un signo =, y cumplirse, entonces, la ecuacin con igualdad, es necesario sumar algn nmero positivo. Similarmente, para que el signo pase a ser un signo =, y cumplirse entonces la ecuacin con igualdad, es necesario restar algn nmero positivo. Esto se muestra en la ecuacin siguiente: Forma Cannica

Forma Estndar

cT x Ax b x0 O bien: cT x Ax b x 0

cT x Ax + S = b x, S 0 (1.36) cT x Ax S = b x, S 0

Si en un problema se tiene presentes restricciones de desigualdad, tanto con como con , se cambia a restricciones de igualdad restando o sumando variables de holgura, respectivamente. Estas variables de holgura (S, en ingls slack) estn sujetas a las restricciones de positividad. Como se plante anteriormente, ahora se procede a formular el concepto de punto extremo de manera algebraica. Ntese que se parte con la forma estndar. Se tiene las siguientes particiones matriciales:

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

37

Matemticas Avanzadas Captulo 1

Programacin Lineal

A m , n = [ B m , m N m , nm
x Bm , 1 x n , 1 = x Nn m , 1

(1.37)

(1.38)

En notacin matricial compacta:

A x =b
Substituyendo las ecuaciones (1.37) y (1.38) en (1.39):

(1.39)

[B

m, m

m , nm

] xx

Bm , 1

Nn m , 1

= b

(1.40)

o tambin,

B xB + N xN = b
Suponiendo que la matriz B es invertible y que x N = 0 , la ecuacin (1.41) se simplifica a:

(1.41)

B xB = b
y de aqu, se obtiene la solucin:
x B = B 1 b

(1.42)

(1.43)

Si el resultado de (1.43) es que x B 0 , entonces, x es una solucin bsica factible. Para demostrar que las soluciones bsicas factibles son precisamente los puntos extremos del problema, se resolver de nuevo el Ejemplo 1.2.

Ejemplo 1.3. Obtencin de soluciones bsicas factibles


Minimizar: 3x1 5 x2 Sujeto a: x1 + 2 x2 4

x1 + 5 x2 6 x1 , x2 0
En la Figura 1.13, aparece la grfica del problema, as como los puntos extremos.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

38

Matemticas Avanzadas Captulo 1

Programacin Lineal

Figura 1.13 Puntos extremos del ejemplo 1.2.

Al transformar el problema de forma cannica a forma estndar, mediante la adicin de las variables de holgura x3 y x4, se tiene: Minimizar: 3x1 5 x2 Sujeto a:

x1 + 2 x2 + x3 = 4 x1 + 5 x2 + x4 = 6 x1, x2 , x3 , x4 0
La matriz de restricciones y el vector de recursos son:

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

39

Matemticas Avanzadas Captulo 1


4 1 2 1 0 A= , b = 6 1 5 0 1 1) 1 2 B = [ a 1 a 2 ]= 1 5 8 7 x1 x3 0 1 xB = = B b = 10 , x N = = 0 x2 x4 7 2) 1 0 a4 ] = 1 1 x1 4 1 xB = = B b = , 10 x4 3) B = [ a1 2 1 a3 ] = 5 0 6 5 x2 1 xB = = B b = 8, x3 5 4) B = [a 2 B = [a 2 2 0 a4 ] = 5 1 x1 0 xN = = x3 0

Programacin Lineal

(1.44) (1.45) (1.46)

(1.47)
x2 0 xN = = x3 0

(1.48)

(1.49)
x1 0 xN = = x4 0

(1.50)

(1.51) (1.52) (1.53)


x1 0 xN = = x2 0

x2 2 1 xB = = B b = , 4 x4 5) B = [a3 1 0 a4 ] = 0 1 x3 4 1 xB = = B b = , 6 x4

(1.54)

De las ecuaciones (1.46), (1.48), (1.50) y (1.54), se observa que los puntos 1, 2, 3 y 5 son mayores que cero, por lo que son una solucin bsica factible. De la ecuacin (1.52) se observa que el punto 4 no cumple con esta condicin, de modo que no es una solucin bsica factible. Estos puntos pertenecen al espacio euclidiano de 4 dimensiones E4 puesto que se agregaron dos variables de holgura. Si estos puntos se proyectan al espacio E2, se obtiene los siguientes puntos: empezando desde el origen y en sentido de las manecillas del reloj, [0,0], [0,6/5], [8/7,10/7] y [4,0]. Con esto, queda demostrado que las soluciones que son bsicas factibles son los puntos extremos del conjunto polidrico. El mtodo de la fuerza bruta para resolver el problema de PL, tiene que recorrer todos los puntos extremos del conjunto polidrico, para as escoger el que d el menor valor de la funcin objetivo; sin embargo, este mtodo es inadecuado e ineficiente. El mtodo Simplex, a diferencia del mtodo de la fuerza bruta, reconoce la optimalidad de un punto extremo solucin dado,
Maestra en Ciencias en Ingeniera Elctrica ITM-CFE G. Gutirrez-H. Tovar2013

40

Matemticas Avanzadas Captulo 1

Programacin Lineal

con base a consideraciones locales, sin tener que enumerar (globalmente) todos los puntos extremos o las soluciones bsicas factibles, lo cual lo hace ms eficiente. Es decir, el mtodo Simplex evala de manera individual cada punto y puede decidir si es el ptimo o no, sin necesidad de evaluar los puntos restantes. Si encuentra que el punto actual no es ptimo, se mueve al prximo punto extremo y lo examina. La ruta que recorre al pasar por los puntos extremos se llama ruta Simplex. Puesto que el mtodo Simplex es un proceso iterativo, necesita un punto de arranque, es decir, escoger variables base y variables no base. A continuacin, se describe el algoritmo del mtodo Simplex. 1. Formular el problema de PL en forma estndar. 2. Especificar variables base y no base de arranque. 3. Obtener la solucin bsica factible con las variables base y no base actuales mediante:
x B = B 1 b

(1.55)

4. Calcular variables duales:

= cT B 1 B

(1.56)

5. Calcular costos reducidos, los cuales permiten conocer qu variable entrar a la base en el proceso de moverse a la siguiente solucin bsica factible, o bien determinar si se ha encontrado un ptimo mediante:

cr = N cT N
6. Probar lo siguiente:

(1.57)

a. Si todos los elementos en los costos reducidos son 0, se termina el proceso, se ha obtenido el ptimo. b. Si por lo menos uno de los elementos de los costos reducidos es 0, esto es suficiente para que el problema tenga mltiples soluciones. Se contina con el proceso slo en caso que no se haya cumplido ya el inciso a). c. Se escoge de los elementos del costo reducido como variable para entrar a la base al que tenga el valor ms positivo. Se contina con el proceso. Si en algn momento del proceso resulta que en el vector de costos reducidos todas las variables tienen iguales valores, o bien dos o ms tienen el mismo valor, pero que este sea el ms positivo, se toma cualquier variable de las que tengan el valor ms positivo. 7. Evaluar la siguiente ecuacin: Y = B 1 N (1.58)

8. A la solucin bsica factible calculada en el punto 3, se le resta la columna de Y del paso 7 correspondiente a la variable que entrar a la base. Se selecciona como variable a salir de la base a la que se acerque ms rpido a cero. Si en alguna parte de este proceso, el vector de la matriz Y, que corresponde a la variable que va a entrar a la base, contiene slo elementos 0, entonces, el problema tiene una solucin no acotada. Se termina el proceso. 9. Hasta este punto, se ha obtenido una nueva base y no base. Volver al paso 3.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

41

Matemticas Avanzadas Captulo 1

Programacin Lineal

A continuacin, se resuelve algunos problemas de PL paso a paso, a fin de ilustrar todas las posibles soluciones descritas en el algoritmo Simplex descrito anteriormente.

Ejemplo 1.4. Aplicacin del Mtodo Simplex: solucin nica


Minimizar: 3 x 1 + x 2 Sujeto a: x1 + 2 x 2 + x 3 = 4

x1 + x 2 + x 4 = 1 x1 , x 2 , x 3 , x 4 0 B = [ x1 , x 2 ] N = [ x3 , x4 ]
En este caso, el problema ya se presenta en forma estndar, por lo que se contina y se resuelve directamente sin hacer ninguna modificacin:
3 4 1 2 1 0 1 A= , c = , b = 1 1 1 0 1 0 0 2) x B = [ x 1 , x 2 ], x N = [ x 3 , x 4 ]

3) Iteracin 1:

xB = B

1 1 2 b= 1 1

4 0.6667 = 1 1.6667

4) =

cT B

1 1 2 = [ 3 1 ] = [ 0.6667 2.3333 ] 1 1

5)

1 0 0 . 6667 2 . 3333 cr = N cT [ ] = [ 0 0 ] = [ 0.6667 2.3333 ] N 0 1

6) Entra a la base la variable x 4 por ser la ms positiva. 7) Y = B


1 1 1 2 1 0 0.3333 0.6667 N= = 1 1 0 1 0.3333 0.3333

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

42

Matemticas Avanzadas Captulo 1

Programacin Lineal

0.6667 0.6667 1.3333 8) = 1.6667 0.3333 1.3333


La variable x 1 se incrementa de valor, mientras que x 2 disminuye. Por tanto, sale la variable x 2 por ser la que tiende a cero ms rpidamente, de manera que ahora se tiene que los conjuntos de variables bsicas y no bsicas son: 9) B = [ x 1 , x 4 ], N = [ x 3 , x 2 ] 3) Iteracin 2:
1 1 0 b= 1 1

xB = B

4 4 = 1 5

4) =

cT B

1 1 0 = [ 3 0 ] = [ 3 0 ] 1 1

1 2 5) c r = N c T [ 3 0 ] = [ 0 1 ] = [ 3 7 ] N 0 1
6) Puesto que todos los elementos de c r 0 , se ha encontrado el ptimo:

4 0 * x = , 0 5

z * = 3 ( 4 ) + 0 = 12

Ejemplo 1.5. Aplicacin del Mtodo Simplex: mltiples soluciones


Minimizar: 2 x1 4 x2 Sujeto a: x1 + 2 x 2 + x 3 = 4

x1 + x 2 + x 4 = 1 x1 , x 2 , x 3 , x 4 0 B = [ x1 , x 2 ] N = [ x3 , x4 ]

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

43

Matemticas Avanzadas Captulo 1

Programacin Lineal

Al igual que en el Ejemplo 1.4, este problema tambin se presenta en forma estndar, el cual se resuelve directamente y sin hacer ninguna modificacin. En este caso:

1 2 1 0 A= , 1 1 0 1

2 4 c = , 0 0 N = [ x3 , x4 ]

4 b= 1

2) B = [ x 1 , x 2 ], 3) Iteracin 1:

xB = B

1 1 2 b= 1 1

4 0.6667 = 1 1.6667

4) =

cT B

1 1 2 = [ 2 4 ] = [ 2 0 ] 1 1

1 0 5) c r = N c T [ ] = 2 0 [ 0 0 ] = [ 2 0 ] N 0 1

6) Puesto que por lo menos hay un cero, entonces, el problema tiene mltiples soluciones. Se termina el proceso, debido a que los elementos de c r 0 .

0.6667 1.6667 * x = , 0 0

z * = 2 ( 0.6667 ) 4 ( 1.6667 ) = 8 .

Ejemplo 1.6. Aplicacin del Mtodo Simplex: Solucin no acotada.

Minimizar: x1 3x2 Sujeto a: x1 2 x2 4

x1 + x2 3 x1, x2 0

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

44

Matemticas Avanzadas Captulo 1

Programacin Lineal

Puesto que el problema est en forma cannica, es necesario plantearlo en forma estndar. Esto se logra agregando dos variables de holgura: Minimizar: x1 3x2 Sujeto a: x1 2 x2 + x3 = 4

x1 + x2 + x4 = 3 x1, x2 , x3 , x4 0
Ahora, se tiene lo siguiente:

1 2 1 0 A= , 1 1 0 1

1 3 c = , 0 0

4 b= 3

2) Las variables base y no base de arranque son:

B = [ x 3 ,x 2 ] N = [ x 1 ,x 4 ]
3) Iteracin 1:
1 1 2 4 10 x B =B b= = 0 1 3 3
-1

4) =

cT B

1 1 2 = [ 0 3 ] = [ 0 3 ] 0 1

1 0 5) c r = N c T = [ 0 3 ] [ 1 0 ] = [ 4 3 ] N 1 1
6) Entra la variable x 1 por ser ms positiva. 7) Y = B
1 1 1 2 1 0 1 2 N = = 0 1 1 1 1 1

10 1 8) x 1 3 1

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

45

Matemticas Avanzadas Captulo 1

Programacin Lineal

Puesto que el vector de la variable que entra a la base tiene solo elementos menores o iguales a cero, el problema es no acotado y se termina el proceso de solucin.

1.5 DUALIDAD
Esta seccin trata la dualidad en programacin lineal, su concepto y significado. Tras formular el problema dual de un problema de programacin lineal, se establece la relacin matemtica entre ambos. Se emplea diversos ejemplos para ilustrar el importante concepto de la dualidad. Dado un problema de programacin lineal, denominado problema primal, existe otro problema de programacin lineal, denominado problema dual, ntimamente relacionado con l. Se dice que ambos problemas son mutuamente duales. Bajo ciertas hiptesis, los problemas primal y dual dan lugar al mismo valor ptimo de la funcin objetivo y, por tanto, se puede resolver indirectamente el problema primal resolviendo el problema dual. Esto puede suponer una ventaja computacional relevante. Definicin 15 (Problema Dual). Dado el problema de programacin lineal: Minimizar: Z = c T x Sujeto a: Ax b x 0 su problema dual es Maximizar: Z = b T y Sujeto a: AT y c y0 donde y = ( y 1 , ..., y m ) T se denomina vector de variables duales.

(1.59)

(1.60)

Al problema (1.59) se le denomina problema primal, mientras que su problema dual est definido por (1.60). Obsrvese que los mismos elementos (la matriz A, y los vectores b y c) configuran ambos problemas. El problema primal no se ha escrito en forma estndar, sino en una forma que permite apreciar la simetra entre ambos problemas, y mostrar que el dual del dual es el primal. Nota 1.1 La dualidad es una relacin simtrica, esto es, si el problema D es el dual del problema P, entonces P es el dual de D. Para comprobar lo anterior, se escribe el problema dual anterior como un problema de minimizacin con restricciones de la forma , tal como es mostrado a continuacin: Maximizar:
Z = bT y

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

46

Matemticas Avanzadas Captulo 1

Programacin Lineal

Sujeto a: AT y c y0 Entonces, su dual es: Maximizar: Z = c T x Sujeto a: AT x b x 0 que es equivalente al problema primal original. Nota 1.2 Como puede observarse, cada restriccin del problema primal tiene asociada una variable del problema dual; los coeficientes de la funcin objetivo del problema primal son los trminos independientes de las restricciones del problema dual y viceversa; y la matriz de restricciones del problema dual es la transpuesta de la matriz de restricciones del problema primal. Adems, el problema primal es de minimizacin y el dual de maximizacin.
1.5.1 Obtencin del Dual a Partir del Primal en Forma Estndar

A continuacin, se obtiene el problema dual a partir del problema primal en forma estndar. Para hacer esto basta con aplicar las relaciones primal-dual. Considere el problema de PL siguiente: Minimizar: Z = c T x Sujeto a: Ax = b x 0
La igualdad A x = b puede reemplazarse por las desigualdades A x b y A x b . Entonces, el problema puede escribirse como: Minimizar: Z = cT x Sujeto a: A b x A b x 0 El dual de este problema es Maximizar: Sujeto a: Z = b T y ( 1 ) b y ( 2 ) = b T y , donde y = y ( 1 ) y ( 2 ) no est restringida en signo.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

47

Matemticas Avanzadas Captulo 1

Programacin Lineal

(A

y (1) ) y (2)

= AT y c

Esta es la forma del problema dual cuando el problema primal se expresa en forma estndar.

1.5.2 Obtencin del Problema Dual


Un problema de programacin lineal de la forma (1.36) tiene asociado un problema dual que puede formularse segn las reglas siguientes: Regla 1. Una restriccin de igualdad en el primal (dual) hace que la correspondiente variable dual (primal) no est restringida en signo. Regla 2. Una restriccin de desigualdad () en el primal (dual) da lugar a una variable dual (primal) no negativa. Regla 3. Una restriccin de desigualdad < (>) en el primal (dual) da lugar a una variable dual (primal) no positiva. Regla 4. Una variable no negativa primal (dual) da lugar a una restriccin de desigualdad () en el problema dual (primal). Regla 5. Una variable primal (dual) no positiva da lugar a una restriccin de desigualdad () en el problema dual (primal). Regla 6. Una variable no restringida en signo del problema primal (dual) da lugar a una restriccin de igualdad en el dual (primal).

Ejemplo 1.7. Problema dual


El dual del problema de programacin lineal Minimizar: Z = x1 + x 2 x 3 Sujeto a: 3 2 x1 + x 2 x1 x3 = 2 x3 0 Es el siguiente: Maximizar: Z = 3 y 1 + 2 y 2 Sujeto a: 2 y1 + y 2 = 1 y1 =1 y 2 1 y1 1
Maestra en Ciencias en Ingeniera Elctrica ITM-CFE G. Gutirrez-H. Tovar2013

(1.61)

(1.62)

48

Matemticas Avanzadas Captulo 1

Programacin Lineal

Para obtenerlo se aplican las reglas anteriores de la forma siguiente: Regla 1. Puesto que la segunda restriccin del problema primal es de igualdad, la segunda variable dual y2 no est restringida en signo. Regla 2. Puesto que la primera restriccin del problema primal es de desigualdad , la primera variable dual y1 es no negativa. Regla 3. Puesto que la tercera variable primal, x3 , est restringida en signo, la tercera restriccin dual es de desigualdad . Regla 4. Puesto que las variables primales primera y segunda, x1 y x2 , no estn restringidas en signo, las restricciones duales primera y segunda son de igualdad. Aplicando las mismas reglas, se puede obtener el problema primal del dual, lo que se muestra a continuacin: Regla 1. Dado que las restricciones primera y segunda del problema dual son de igualdad, las variables primales primera y segunda, x1 y x2 , no estn restringidas en signo. Regla 2. Dado que la tercera restriccin del problema dual es de desigualdad , la tercera variable primal x3 es no negativa. Regla 3. Dado que la primera variable dual y1 est restringida en signo, la primera restriccin primal es de desigualdad . Regla 4. Puesto que la segunda variable dual y2 no esta restringida en signo, la segunda restriccin primal es de igualdad.

1.5.3 Teoremas de Dualidad


La importancia del problema dual se establece en los siguientes teoremas. Lema 1.1 (lema de dualidad dbil) Sea P un problema de PL, y D su dual. Sea x una solucin factible de P e y una solucin factible de D. Entonces,
bT y cT x

Demostracin. La demostracin es sencilla. Si x e y son factibles respectivamente para P y D, entonces,

Ax = b ,

x 0 ,

AT y c

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

49

Matemticas Avanzadas Captulo 1

Programacin Lineal

Obsrvese que, debido a la no negatividad de x,


bT y = x T AT y xT c = cT x

x y ~ y =c T ~ x , para dos vectores ~ y , factibles en P y D, respectivamente, Corolario 1.1 Si b T ~ entonces,


cT ~ x = bT ~ y max b T y A T y c min c T x A x = b , x 0 c T ~ x =bT ~ y
y x

Demostracin. La demostracin es simple si se comprueba que max b T y A T y c min c T x Ax = b , x 0


y x

Por tanto, todas las desigualdades son de hecho igualdades y deben ser soluciones ptimas de P y D, respectivamente, tal como estableca la hiptesis inicial. El teorema de dualidad fuerte establece que los problemas P y D tienen, en general, soluciones ptimas simultneamente. Teorema 1.3 (Teorema de Dualidad). Si ~ x es una solucin ptima de P, existe una solucin ~ ptima y para D, y el mnimo de P y el mximo de D presentan el mismo valor de la funcin objetivo b T ~ y=cT ~ x . Recprocamente, si ~ y es una solucin ptima de D, existe una solucin ~ ptima de P, x , y nuevamente los valores mnimo y mximo de P y D dan lugar a un valor comn de la funcin objetivo b T ~ y =cT ~ x . En otro caso, o un conjunto factible est vaco o lo estn los dos.

En resumen, si P es un problema de PL y D es su dual, una de las siguientes afirmaciones es cierta: 1. Ambos problemas tienen solucin ptima y los valores ptimos de las funciones objetivo respectivas coinciden. 2. Uno de los problemas no est acotado y el otro tiene una regin factible vaca.

Ejemplo 1.8. Problemas primal y dual del carpintero.


Un carpintero fabrica dos tipos de mesas de madera. Cada mesa del tipo 1 necesita 4 horas de mecanizado primario (preparacin de piezas) y 4 horas de mecanizado secundario (ensamblado y barnizado). Anlogamente, cada mesa del tipo 2 necesita 3 horas de mecanizado primario y 7 horas de mecanizado secundario. Las disponibilidades diarias de mecanizados primario y secundario son respectivamente de 40 y 56 horas-mquina. La venta de una mesa del tipo 1 reporta un beneficio de 70 dlares, mientras que la venta de una mesa del tipo 2 de 90 dlares. Estos datos se resumen en la Tabla 1.1.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

50

Matemticas Avanzadas Captulo 1

Programacin Lineal

Tabla 1.1. Datos para el problema del carpintero Disponibilidad de Tipo de mesa horas mquina por da 1 2 Mecanismo primario 4 3 40 Mecanismo secundario 4 7 56 Beneficio (dlares) 70 90 El objeto de este problema es determinar el nmero de mesas de cada tipo que han de producirse diariamente para maximizar el beneficio obtenido. Este problema puede formularse como un problema de programacin lineal: Maximizar: Z = 70 x 1 + 90 x 2 Sujeto a: 4 x 1 + 3 x 2 40 4 x 1 + 7 x 2 56 x1 , x 2 0

(1.63)

donde x 1 y x 2 son las cantidades diarias de mesas a fabricar de los tipos 1 y 2 respectivamente. La solucin ptima de este problema, como se observa en la Figura 1.14, establece que han de producirse diariamente 7 y 4 sillas de los tipos 1 y 2, respectivamente, lo que da lugar a un beneficio de 850 dlares. Este resultado indica que ambos recursos de mecanizado (primario y secundario) estn plenamente utilizados porque las restricciones relacionadas con ellos estn ambas activas.

Figura 1.14 Anlisis grfico del problema del carpintero.

Por otra parte, considere que desea aumentarse el beneficio diario. Para ello, es necesario aumentar la capacidad productiva. Suponga que la capacidad de mecanizado secundario puede aumentarse cada da de 56 a 72 horas de mquina. Cmo afecta esta ampliacin de capacidad a los beneficios diarios? La solucin puede obtenerse resolviendo el siguiente problema: Maximizar:
Z = 70 x 1 + 90 x 2
ITM-CFE G. Gutirrez-H. Tovar2013

Maestra en Ciencias en Ingeniera Elctrica

51

Matemticas Avanzadas Captulo 1

Programacin Lineal

Sujeto a: 4 x 1 + 3 x 2 40 4 x 1 + 7 x 2 72 x1 , x 2 0

(1.64)

En este caso, la solucin ptima es x1 = 4 y x2 = 8 , con un beneficio mximo diario de 1000 dlares. Esta solucin indica que el beneficio diario se incrementa en 150 dlares y la capacidad de mecanizado secundario en 7256=16 horas-mquina. La relacin (1000-850)/16=150/16=75/8 dlares, a la cual la funcin objetivo crece al incrementarse la capacidad de mecanizado secundario 1 hora, se denomina sensibilidad o precio sombra (tambin precio dual) de la capacidad de mecanizado secundario (vase la siguiente seccin). En general, el precio sombra de una restriccin proporciona el cambio en el valor de la funcin objetivo como resultado de un cambio unitario en el trmino independiente de la restriccin, suponiendo que el resto de parmetros del problema permanecen inalterados. En muchos problemas de programacin lineal los precios sombra son tan importantes como la solucin del problema, ya que proporcionan informacin sobre el efecto en la funcin objetivo de cambios en los recursos disponibles. Los precios sombra pueden obtenerse resolviendo el problema dual. El problema dual del problema del carpintero (1.63) se formula a continuacin. Minimizar: Z = 40 y 1 + 56 y 2 Sujeto a: 4 y 1 + 4 y 2 70 3 y 1 + 7 y 2 90 y1 , y 2 0

(1.65)

La solucin ptima de este problema es y 1 = 65 8 y y 2 = 75 8 , mientras que el valor ptimo de la funcin objetivo es 850. Obsrvese que y 1 y y 2 son los precios sombra de las capacidades de mecanizado primario y secundario, respectivamente, y que los valores ptimos de la funcin objetivo de (1.63) y (1.65) coinciden. El problema dual (1.65) puede interpretarse de la siguiente manera. Considere que el objetivo es vender tiempo de mecanizado primario y secundario y suponga que, de esta forma, se obtiene al menos el mismo nivel de beneficios que haciendo mesas. En esta situacin, vender tiempo de mecanizado y hacer mesas han de ser actividades igualmente lucrativas. Las variables y 1 y y 2 representan los precios de venta de una hora de mecanizados primario y secundario respectivamente. Para preservar la competitividad del negocio, el beneficio diario ha de minimizarse, esto es minimizar la funcin Z = 40 y 1 + 56 y 2 , donde 40 y 56 representan la disponibilidad diaria en horas de mecanizado primario y secundario, respectivamente. Las restricciones (1.65) establecen que el coste de las horas de mecanizado primario y secundario para producir una mesa de cada tipo no debe superar el beneficio que se obtiene por venta de la misma; y que los precios son cantidades no negativas.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

52

Matemticas Avanzadas Captulo 1

Programacin Lineal

1.5.4 Sensibilidades
A partir de la solucin de un problema de PL se puede extraer informacin muy relevante sobre sensibilidades. Esto se pone de manifiesto en lo que sigue. Sea la base optima; entonces
* x* B = (B ) b 1 * z * = cT Bx B

(1.66)

Considrese un cambio marginal (es decir, un cambio que no modifica la base) en el vector de trminos independientes b : b* b* + b Este cambio en el vector de trminos independientes da lugar a cambios en el minimizador y en el valor ptimo de la funcin objetivo:
* x* B x B + x B

z * z * + z Puesto que las ecuaciones (1.66) son lineales, se puede escribir x B = ( B * ) b


1

z = c T B x B Combinando las ecuaciones anteriores, se obtiene


* T z = c T B x B = c B ( B ) b 1

Definiendo:
* *T = cT B (B ) 1

la ecuacin anterior puede reescribirse como:

z = *T b
y para una coordenada arbitraria j, la expresin anterior tiene la forma:

* j =

b z

que indica que * j proporciona el cambio en el valor ptimo de la funcin objetivo como resultado de un cambio marginal en la componente j del vector de recursos. Estos parmetros de sensibilidad juegan un papel fundamental en aplicaciones de ingeniera y cientficas. Como se ver en las secciones siguientes, los parmetros de sensibilidad son de hecho variables duales.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

53

Matemticas Avanzadas Captulo 1

Programacin Lineal

1.6 LA PLATAFORMA COMPUTACIONAL GAMS 1.6.1 Introduccin


GAMS (General Algebraic Modeling System) es un lenguaje de programacin que permite el modelado, anlisis y resolucin de diversos problemas de optimizacin. Aunque inicialmente el manejo y comprensin de sus estructuras requiere de cierto esfuerzo, una vez entendidas se dispone de una herramienta muy verstil capaz de resolver problemas de programacin matemtica. A pesar de ser una magnifica herramienta, el lector debe estar consciente de las limitaciones impuestas por el estado del arte existente en programacin matemtica. Otros lenguajes similares a GAMS son AMPL y AIMMS. Todos ellos presentan caractersticas anlogas y, en general, no hay razn alguna para elegir uno u otro. Entre las caractersticas ms importantes de GAMS cabe destacar: 1. Su capacidad para pasar de resolver problemas de pequea dimensin (docenas de variables y restricciones) a problemas mayores (miles de variables y restricciones) sin variar el cdigo sustancialmente. El manejo eficiente de sus ndices permite escribir de manera compacta restricciones similares mediante una sola restriccin. 2. Separa el proceso de modelado del proceso de resolucin del problema. As, el usuario de GAMS debe ser capaz de conseguir una formulacin consistente del problema, y una que vez la expresa en la notacin de GAMS, este lenguaje hace uso de alguno de los optimizadores disponibles para obtener su solucin. De esta manera, el usuario solo ha de centrarse en obtener un modelo del problema y puede ignorar el funcionamiento interno del algoritmo para resolverlo. La separacin de estas dos tareas permite cambiar el modelo para mejorarlo o completarlo cmodamente. 3. La forma en que GAMS representa un problema de optimizacin coincide, prcticamente, con la descripcin matemtica de ese problema. Por tanto, el cdigo GAMS es sencillo de comprender para aquellos lectores familiarizados con la optimizacin. 4. Adems, GAMS proporciona los mecanismos necesarios para resolver problemas de optimizacin con estructuras similares, como son aquellos que se derivan de las tcnicas de descomposicin. El usuario de GAMS debe ser cuidadoso con sus reglas gramaticales. El incumplimiento de una sola de ellas puede provocar muchos errores de compilacin. En lo que sigue, se analizar un ejemplo para mostrar las caractersticas bsicas de este lenguaje.

1.6.2 Ejemplo Ilustrativo


Se ha elegido el problema del transporte para resaltar las caractersticas principales de GAMS. Este problema se describe a continuacin. Considere un conjunto de consumidores y productores. Conocida (1) la demanda de cada consumidor, (2) la produccin mxima de los productores, y (3) el coste del transporte de productos desde los productores hasta los consumidores, el problema del transporte consiste en determinar la cantidad de producto a transportar de forma que el costo sea mnimo.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

54

Matemticas Avanzadas Captulo 1

Programacin Lineal

La formulacin del problema anterior de programacin matemtica es como sigue.

Minimizar Sujeto a

c x
i j

ij ij

x
j j

ij

ai , i b j , j i, j

ij

xij 0,

donde los subndices i son para los productores y los subndices j para los consumidores. Adems, los datos son: ai : Produccin mxima del productor i en toneladas. b j : Demanda del consumidor j en toneladas. cij : Costo de transporte desde el productor i al consumidor j en euros por tonelada y kilmetro. Las variables de decisin son xij , las cuales representan la cantidad de producto que se transporta desde el productor i hasta el consumidor j, en toneladas. Suponga dos productores y dos consumidores. Las producciones mximas son 300 y 500 toneladas. Las demandas son de 100, 200 y 300 toneladas. Las distancias en kilmetros entre productores y consumidores vienen dadas en la Tabla 1.2. Tabla 1.2 Distancias en kilmetros entre productores y consumidores. Consumidores Productores m1 m2 m3 p1 2.0 1.6 1.8 p2 2.5 1.2 1.4 El coste de transporte en euros es de 0.09 por tonelada y kilmetro. En GAMS, el problema anterior se codifica y almacena en un fichero cuya extensin por defecto es .gms. El contenido de este fichero es el siguiente (el lector no debe tratar de comprender todo el cdigo en esta primera aproximacin, ya que a travs de este Captulo se explicar en detalle las reglas del lenguaje; basta con adquirir una visin global de este fichero de entrada GAMS):
$Title El Problema de Transporte * Un ejemplo de transporte sencillo Sets i productores / p1, p2 / j consumidores / m1*m3 /; Table d(i,j)distancia en kilmetros m1 m2 m3 p1 2.0 1.6 1.8 p2 2.5 1.2 1.4;

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

55

Matemticas Avanzadas Captulo 1

Programacin Lineal

Scalar f coste del transporte (euros por tonelada y km)/0.09/; Parameters a(i)produccion maxima del productor i en toneladas / p1 300 p2 500 / b(j)demanda del consumidor j en toneladas / m1 100 m2 200 m3 300 / c(i,j)= f * d(i,j); Variables x(i,j)cantidad de producto transportada entre i y j en toneladas z coste total del transporte en euros; Positive Variable x; Equations coste funcion objetivo maximo(i)cumplimiento de maxima produccion del productor i demanda(j)cumplimiento de la demanda del consumidor j; costo .. z =e= sum((i,j), c(i,j)*x(i,j)); maximo(i) .. sum(j, x(i,j)) =l= a(i); demanda(j) .. sum(i, x(i,j)) =g= b(j); Model transporte /all/; Solve transporte using lp minimizing z; Display x.l;

El lector puede comprobar con este ejemplo la similitud entre la formulacin matemtica y el cdigo GAMS; concretamente, en la parte donde se definen las restricciones (la definicin comienza en coste ..). En la primera lnea del cdigo anterior se da nombre al problema, y en la segunda se escribe un texto a modo de comentario. En GAMS, cualquier lnea que comienza con el smbolo (asterisco) se interpreta como un comentario. El comando Sets se emplea para definir dos estructuras tpicas de GAMS: Los ndices, usados posteriormente para recorrer los vectores del problema, y los rangos de valores entre los que pueden variar estos ndices. En el ejemplo propuesto, el ndice i se refiere a los posibles productores p1 y p2. De igual manera, el ndice j se refiere a los posibles consumidores de m1 a (representado por un asterisco) m3. El comando Table permite definir matrices de datos (como puede ser la matriz de la Tabla 1.2 en el ejemplo). Obsrvese la facilidad con que se puede representar las tablas en GAMS. El comando Scalar es necesario en la declaracin y asignacin de escalares (como el escalar f en el ejemplo).

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

56

Matemticas Avanzadas Captulo 1

Programacin Lineal

El comando Parameters se utiliza para declaracin y asignacin de vectores de datos. En este ejemplo, se emplea dos vectores: a(i) y b(j), que se refieren a la produccin mxima, y a la demanda, respectivamente. La asignacin mediante este comando se realiza para cada elemento del vector, por lo que es necesario especificar, en primer lugar, la posicin del vector y en segundo, el valor a asignar. Para declarar la matriz correspondiente al costo de transporte, c(i,j), tambin se utiliza el comando parameter; sin embargo, la asignacin de los elementos se realiza posteriormente como funcin de otros datos. Las variables del problema de optimizacin son declaradas mediante el comando Variables. Slo cuando se completa la ejecucin del cdigo GAMS el optimizador determina el valor de estas variables. En GAMS se debe especificar el carcter de las variables; en este caso, se indica que x(i,j) es una variable positiva (no negativa). El comando Equations permite indicar el nombre con que se referenciar a las restricciones del problema, incluida la funcin objetivo. Tras el comando, aparece el nombre en primer lugar; si es necesario indicar que existen varias restricciones con la misma estructura, se indica seguidamente mediante el ndice correspondiente entre parntesis. Una vez declaradas las restricciones con este comando, se pasa a su definicin colocando el smbolo .. y su formulacin correspondiente en formato GAMS tras el nombre con el que se han declarado. Muchas funciones matemticas pueden ser empleadas en la definicin de las restricciones, como suma y multiplicacin, entre otras. El siguiente paso consiste en asociar un nombre al modelo y especificar qu conjunto de restricciones lo forman mediante el comando Model. En el ejemplo, el modelo se denomina transporte, y est formado por todas las restricciones previamente definidas (lo indica la palabra all). Por ltimo, se emplea el comando Solve para que GAMS llame al optimizador pertinente que finalmente resuelve el problema (en el ejemplo, la palabra lp indica que se debe usar un optimizador para programacin lineal). De manera opcional, se puede ordenar a GAMS que muestre el valor de los resultados de inters en un fichero de salida. Aqu, por ejemplo, el comando Display x.l tiene como objetivo mostrar el valor obtenido para el vector de variables x(i,j). Una vez que se ha escrito el cdigo GAMS en el fichero de entrada, se compila; si no existen errores de sintaxis se resolver el problema mediante el optimizador correspondiente y se escribir la solucin en un fichero de salida con extensin .lst. En este fichero, aquellos valores de la solucin que son cercanos a cero se representan mediante EPS, y aquellos que son cero se denotan mediante un punto. Puesto que en el cdigo del ejemplo propuesto se ha evitado cometer errores, en el fichero de salida se escribe la solucin que ofrece el optimizador. Algunas de las partes que componen este fichero son mostradas a continuacin.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

57

Matemticas Avanzadas Captulo 1

Programacin Lineal

---- EQU MAXIMO cumplimiento de maxima produccion del productor i LOWER LEVEL UPPER MARGINAL p1 -INF 100.000 300.000 . p2 -INF 500.000 500.000 -0.036 ---- EQU DEMANDA cumplimiento de la demanda del consumidor j LOWER LEVEL UPPER MARGINAL m1 100.000 100.000 +INF 0.180 m2 200.000 200.000 +INF 0.144 m3 300.000 300.000 +INF 0.162

En esta parte del fichero se muestran los valores mnimo (LOWER), optimo (LEVEL), mximo (UPPER), y el coste marginal (MARGINAL) asociado a las restricciones denominadas MAXIMO y DEMANDA. Los valores mximos y mnimos asociados a una restriccin dependen de su carcter. As, si la restriccin es del tipo mayor o igual que (como son las restricciones SUPPLY), el valor mnimo es (-INF en el fichero de salida GAMS), y el valor mximo es el trmino independiente de esa restriccin. Por otro lado, si la restriccin es de menor o igual que (como son las restricciones DEMANDA), el valor mnimo es su trmino independiente, y el mximo es + (+INF en el fichero de salida GAMS). Si se tiene una restriccin de igualdad, los valores mximo y mnimo coinciden con el valor de su trmino independiente. El valor ptimo de una restriccin se obtiene al evaluar su trmino dependiente, una vez que se ha resuelto el problema. Al igual que el valor ptimo, el coste marginal se obtiene como resultado de la optimizacin. Este valor representa la variacin que experimenta el valor de la funcin objetivo frente a un cambio en el trmino independiente de la restriccin (valor de su variable dual). En el fichero de salida de GAMS tambin se presenta los valores que toman las variables de optimizacin tras la resolucin del problema. A continuacin, se muestra esta informacin.
---- VAR X cantidad de producto transportada entre i y j en toneladas LOWER LEVEL UPPER MARGINAL p1.m1 . 100.000 +INF . p1.m2 . . +INF EPS p1.m3 . . +INF . p2.m1 . . +INF 0.081 p2.m2 . 200.000 +INF . p2.m3 . 300.000 +INF . LOWER LEVEL UPPER MARGINAL ---- VAR Z -INF 77.400 +INF . Z coste total de transporte en euros

Se observa como para cada variable se obtiene su valor mnimo, ptimo, mximo y marginal. Si en el fichero de entrada no se especifico el limite inferior (superior) de la variable, entonces se considera que este valor es (+). Los valores ptimo y marginal de una variable se determinan una vez resuelto el problema.

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

58

Matemticas Avanzadas Captulo 1

Programacin Lineal

1.6.3 Despacho Econmico de Generacin sin Prdidas de Transmisin

Esta es la formulacin ms simple de despacho econmico. Al no incluir el efecto de las prdidas por transmisin, puede considerarse que tanto la carga como el conjunto de generadores despachables estn conectados a un mismo nodo. El problema se formula como sigue: Minimizar: Z=
NG

C i ( PG
i =1 NG

Sujeto a:

PD =

PG
i =1

donde C i ( PG i ) es el costo de produccin del generador i, N G es el nmero de generadores despachables y PD es la potencia de carga (demandada). Podr notarse que este es un problema de optimizacin con restricciones, por el momento, slo una de igualdad. La restriccin de no negatividad se omite.
Ejemplo 1.9. Despacho de Generacin de tres unidades de generacin.

Sea el conjunto de tres unidades siguientes: C 1 ( PG1 ) = 561 + 7.92 PG1


C 2 ( PG 2 ) = 310 + 7.85 PG 2

$/h $/h $/h

150 PG1 600 MW 100 PG 2 400 MW 50 PG 3 200 MW

C 3 ( PG 3 ) = 78 + 7.97 PG 3

Supngase que se desea determinar el punto de operacin econmico de estas tres unidades para una demanda de 850 MW. Minimizar: Sujeto a: Z = 561 + 7.92 PG1 +310 + 7.85 PG 2 + 78 + 7.97 PG 3
PG1 + PG 2 + PG 3 = 850

Las variables a optimizar son: PG1 , PG 2 y PG 3 . La solucin ptima para este problema de despacho econmico es: PG1 = 400 MW
PG 2 = 400 MW

PG 3 = 50 MW

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

59

Matemticas Avanzadas Captulo 1

Programacin Lineal

Cdigo en GAMS

A continuacin, se presenta el cdigo desarrollado en la plataforma computacional GAMS, donde es resuelto este problema. $title 'Despacho Economico Sin Perdidas' $Ontext Este programa resuleve el problema de despacho economico sin perdidas El problema considera 3 unidades de generacion: G1 a G3. La informacion de las 3 unidades se presenta en la Tabla "GenData". La demanda a suministrar es de 850 MW especificada en la ecuacin demanda. $Offtext SETS G Generadores / G1*G3/; TABLE GenData(G,*) a b PGMin PGMax G1 561 7.92 150.0 600.0 G2 310 7.85 100.0 400.0 G3 78 7.97 50.0 200.0; VARIABLES PG(G) TotCost Total cost; EQUATIONS MaxLim(G) MinLim(G) Demanda TotalCost Total cost of generation; TotalCost.. TotCost =E= SUM(G, GenData(G,'a') + GenData(G,'b')*PG(G)); Demanda.. SUM(G,PG(G)) =E= 850; MaxLim(G).. PG(G) =L= GenData(G,'PGMax'); MinLim(G).. PG(G) =G= GenData(G,'PGMin'); MODEL EDC /all/; Solve EDC USING LP MINIMIZING TotCost; display PG.l;

Maestra en Ciencias en Ingeniera Elctrica

ITM-CFE

G. Gutirrez-H. Tovar2013

60

También podría gustarte