Sie sind auf Seite 1von 11

Programacin Matemtica para Economistas

3.- Programacin por metas.


Una vez mencionados algunos de los inconvenientes de las tcnicas generadoras, la incorporacin de informacin se va a traducir en una accin del decisor o centro decisor, emitiendo deseos al analista y ste, en base a estos deseos va a actuar. De esta manera, renunciamos a la optimizacin pero obtenemos una solucin que satisface los deseos manifestados. La tcnica que se emplea al incorporar informacin a priori en el proceso se denomina, Goal Programming, o Programacin por Metas. Veamos en qu consiste. Dado un problema general de programacin multiobjetivo:

Opt ( f 1 (x), f 2 (x),L , f p (x)) s. a x X


donde algunos de los objetivos sern de mximo y otros de mnimo, el decisor acta de la siguiente forma: Primero asignar a cada uno de los objetivos un valor ui que va a representar su nivel de aspiracin, es decir, lo que desea alcanzar como mnimo o bien no desea superar, e incluso, en algunos casos, desea alcanzar exactamente la igualdad, para el correspondiente objetivo. Despus, al conjugar el objetivo y el nivel de aspiracin se obtiene lo que denominamos meta, que expresamos de la siguiente forma: Si estamos maximizando fi(x) al imponer un nivel ui, se desear que: fi(x) ui. Si minimizamos, se desear que fi(x) ui. El caso de igualdad, fi(x) = ui, se puede contemplar tanto si maximizamos como si minimizamos. Posteriormente al establecimiento de las metas, se asignan niveles de prioridad entre los objetivos, es decir, se les ordena atendiendo a las prioridades que manifieste el decisor. Esta asignacin puede ser uno a uno, es decir, en cada nivel un solo objetivo, o pueden aparecer varios compartiendo un mismo nivel; este caso implica una ponderacin entre los objetivos que comparten el nivel. El nmero de niveles de prioridades ser por tanto, s p. As pues, la resolucin se llevar a cabo atendiendo a las metas impuestas y a los niveles de prioridad establecidos, de forma que se preferir una solucin que mejore al primero, una vez conseguida, se pasa al segundo y as sucesivamente. En este sentido, la ordenacin que se utiliza, bajo el enfoque de programacin por metas, es la lexicogrfica
R. Caballero, T. Gmez, M. Gonzlez, M. Hernndez, F. Miguel, J. Molina, M.M. Muoz, L. Rey, F. Ruiz

Programacin Matemtica para Economistas

llevndose a cabo una resolucin por niveles. Esto nos conduce a definir un nuevo orden denominado lexicogrfico, el cual pasamos a definir. Orden Lexicogrfico: Diremos que un punto x es preferido a x si se verifica que: fi(x) = fi(x) i = 1, ..., j - 1 y fj(x) > fj(x).

El orden lexicogrfico es un orden total y es el usado en la ordenacin del diccionario. Con l se establece que para mejorar una combinacin basta con ir mejorando sucesivamente las coordenadas sin tener en cuenta lo que ocurra con las restantes. A las soluciones obtenidas por la tcnica de programacin por metas se las denomina satisfactorias, en el sentido de que verifican evidentemente las restricciones originales del problema y las metas impuestas por el centro decisor. As pues tenemos. Definicin 4. Un punto x* es una solucin satisfactoria si es admisible, y verifica las p-metas impuestas, es decir:

x* X max f i (x* ) ui min f i (x* ) ui max min f (x* ) = u i i


En estas condiciones, es decir, una vez que el decisor ha manifestado sus niveles de aspiracin, construidas las metas y priorizados los objetivos, para la resolucin y aplicacin de la tcnica de programacin por metas se introducen en las metas del problema unas variables (positivas) denominadas de desviacin, y denotadas por n, y p. Dichas variables nos van a representar las diferencias que existen entre los niveles de aspiracin impuestos por el decisor y el resultado que se alcanza en cada objetivo. La introduccin se realiza de la siguiente forma: Si estamos maximizando fi(x) al construir las metas tenemos: fi(x) ui entonces fi(x) + ni - pi = ui y Min ni. Por qu? Porque, si ni = 0 entonces fi(x) - pi = ui y se verifica la meta fi(x) ui. Si estamos minimizamos fi(x) al construir la meta tenemos: fi(x) ui entonces fi(x) + ni - pi = ui y Min pi
R. Caballero, T. Gmez, M. Gonzlez, M. Hernndez, F. Miguel, J. Molina, M.M. Muoz, L. Rey, F. Ruiz

Programacin Matemtica para Economistas

razonando de igual forma, si pi = 0 entonces fi(x) + ni = ui y por tanto se cumple la meta fi(x) ui. En el caso de igualdad, fi(x) = ui, se toma fi(x) + ni - pi = ui y se calcula Min ni + pi, para que se mantenga la meta se tendr que verificar que ni = pi = 0. A la funcin que recoge la minimizacin de la variable no deseada, en el sentido de que queremos que sea nula, se le denomina funcin de realizacin o funcin logro, y las denotaremos por hi(n, p). As pues, dadas las metas, los niveles de prioridad y determinadas las funciones de realizacin, se procede a calcular:

lexmin (h1 (n, p), L , hs (n, p)) s. a x X f i (x) + ni pi = ui i = 1,..., p ni , pi 0


En general, al primer conjunto de restricciones, que son las originales del problema se les denomina restricciones duras o tcnicas, debido a que sern restricciones que se tienen que verificar necesariamente. Al segundo conjunto de restricciones, que son las que se generan de la construccin de las metas, se les denomina restricciones blandas, debido a que no son de obligado cumplimiento. En cualquier problema, una vez planteado, y antes de proceder a la resolucin lexicogrfica, se lleva a cabo la comprobacin, de la existencia de puntos factibles, es decir, que nuestro conjunto de restricciones duras no es vaco, dado que si lo fuera el problema no tendra ningn sentido. Esta comprobacin se realiza en el que denominaremos Nivel 0, en el cual minimizamos cualquier funcin constante sujeta a las restricciones duras del problema. Nivel 0:
M in h ( x ) = cte s. a x X

Una vez comprobado que existen soluciones factibles, se pasa a la resolucin del problema. Para mostrar todo lo comentado vamos a desarrollar un ejemplo terico. Supongamos que nuestro problema esta definido de la siguiente forma:

( Max f 1 , s. a

Min f 2 , x X

Max f 3 ,

Min f 4 )

R. Caballero, T. Gmez, M. Gonzlez, M. Hernndez, F. Miguel, J. Molina, M.M. Muoz, L. Rey, F. Ruiz

Programacin Matemtica para Economistas

por tanto, tenemos un problema de cuatro objetivos, donde dos de ellos corresponden a mximos y dos a mnimos. El siguiente paso es dar los niveles de aspiracin, construir las metas y determinar la variable no deseada, para la determinacin de la correspondiente funcin de realizacin o logro. Sea pues: f1(x) u1 entonces f1(x) + n1 - p1 = u1 y Min n1 f2(x) u2 entonces f2(x) + n2 - p2 = u2 y Min p2 f3(x) u3 entonces f3(x) + n3 - p3 = u3 y Min n3 f4(x) = u4 entonces f4(x) + n4 - p4 = u4 y Min n4 + p4. Vamos a considerar que los niveles de aspiracin se establecen como: Nivel 1: Objetivo 1, entonces la funcin de realizacin es: h(n1, p1) = n1 Nivel 2: Objetivo 2, entonces la funcin de realizacin es: h(n2, p2) = p2 Nivel 3: Objetivos 3 y 4, entonces la funcin de realizacin es, en general de la forma: h(n3, n4, p3, p4) = n3 + (n4 + p4) donde los parmetros y ponderaran a las correspondientes metas. El problema sera:

lexmin (n1 , p2 , n3 + (n4 + p4 )) x X s. a f i (x) + ni pi = ui i = 1, L , p ni , pi 0 i = 1, L , p

Tras realizar el nivel cero, como hemos impuesto tres niveles de prioridad tendremos que resolver a lo sumo tres problemas, correspondientes a: Nivel 1:

Min n1 x X s. a f 1 (x) + n1 p1 = u1 n1 , p1 0

R. Caballero, T. Gmez, M. Gonzlez, M. Hernndez, F. Miguel, J. Molina, M.M. Muoz, L. Rey, F. Ruiz

Programacin Matemtica para Economistas

* * * * Denominamos (x1 ,n1 ,p1 ) a la solucin, si n1 = 0 significa que hemos logrado verificar la meta primera y pasamos al segundo nivel.

Nivel 2:

Min p2 s. a x X f 1 (x) + n1 p1 = u1 n1 = 0 f 2 (x) + n2 p2 = u2 n1 , p1 , n2 , p2 0

La idea es, que se mantenga la meta anterior y se verifique la del nivel * * * correspondiente, as, si volvemos a denominar (x * , n2 , p2 ) a la solucin, si p2 = 0 significa 2 que hemos logrado verificar la meta primera y la segunda y pasamos al tercer nivel. Nivel 3:

Min n3 + (n4 + p4 ) s. a x X f 1 (x) + n1 p1 = u1 n1 = 0 f 2 (x) + n2 p2 = u2 p2 = 0 f 3 (x) + n3 p3 = u3 f 4 (x) + n4 p4 = u4 ni , pi 0 i = 1, L,4

En este nivel como tenemos dos funciones hemos considerado como funcin de realizacin la suma ponderada de las dos y hemos impuesto que se mantengan las dos anteriores y las dos correspondientes al nivel, de forma que, si la solucin obtenida, * * * * * * * * (x * , n3 , p3 , n4 , p4 ) , verifica que n3 = p3 = n4 = p4 = 0, x * ser una solucin 3 3 satisfactoria, puesto que verifica las restricciones duras del problema, y las metas correspondientes. Con este ejemplo terico se ha pretendido ilustrar cmo aplicar la tcnica de programacin por metas, no obstante, quedaran algunas consideraciones, por ejemplo, cmo actuamos si en alguno de los niveles la variable no deseada no es cero?, si esto ocurre la solucin correspondiente no es satisfactoria, puesto que si la variable de desviacin no deseada toma un valor nos indica el incumplimiento de la correspondiente meta. En en estos casos no continuamos con el problema sino que la solucin sera la que nos diera con el valor correspondiente de ni o pi, y la solucin an no siendo satisfactoria
R. Caballero, T. Gmez, M. Gonzlez, M. Hernndez, F. Miguel, J. Molina, M.M. Muoz, L. Rey, F. Ruiz

Programacin Matemtica para Economistas

sera la ms adecuada al cumplimiento de nuestra meta, dado que minimizamos las desviaciones. A partir del incumplimiento de una meta, es decir, la no verificacin del nivel, se puede actuar de varias formas. Una de ellas sera el redefinir la meta correspondiente y otra el intentar hacer una nueva distribucin de funciones y niveles. De hecho, el problema no queda cerrado, sino que sera el decisor, a la vista de los resultados, el encargado de decidir qu hacer con el problema. Volviendo a nuestro ejemplo: Supongamos que la empresa establece que primero quiere maximizar los beneficios, de forma que estos alcancen un nivel de al menos 10 unidades, y que posteriormente, la contaminacin se fija en un mximo de 6 unidades. Con esta informacin se nos genera un problema de programacin por metas, en el cual los niveles corresponden a: Nivel 1: Los beneficios tienen que alcanzar un nivel de al menos 10 unidades, luego la meta es: 4x + 3y 10. Al incorporar las variables de desviacin tenemos: 4x + 3y +n1 - p1 = 10. La variable no deseada es n1 y la funcin de realizacin del primer nivel es: h1(n1, p1) = n1. Nivel 2: El nivel de contaminacin es como mximo de 6 unidades, luego la meta es: 3x + 2y 6. se incorporan las variables de desviacin y: 3x + 2y +n2 - p2 = 6. La variable no deseada en este nivel es p2 y la funcin de realizacin del segundo nivel corresponde a: h2(n2, p2) = p2. Con esta informacin, el problema de programacin por metas a resolver es:

R. Caballero, T. Gmez, M. Gonzlez, M. Hernndez, F. Miguel, J. Molina, M.M. Muoz, L. Rey, F. Ruiz

Programacin Matemtica para Economistas

lexmin (n1 , p2 ) s. a x+ y5 2x + y 8 x 1 4 x + 3y + n1 p1 = 10 3x + 2 y + n2 p2 = 6 x , y , ni , pi 0 i = 1, 2.
Como tenemos asegurada la existencia de soluciones factibles, pasamos a la resolucin por niveles. Nivel 1: Min n1 s.a x+y5 2x + y 8 x1 4x + 3y + n1 - p1 = 10 x, y, n1, p1 0 Aplicando el programa LINDO para programacin lineal obtenemos: LP OPTIMUM FOUND AT STEP OBJECTIVE FUNCTION VALUE 1) .00000000 VALUE .000000 2.500000 .000000 .000000 1 REDUCED COST 1.000000 .000000 .000000 .000000 1

VARIABLE N1 X Y P1

NO. ITERATIONS=

Como el valor de n1 = 0 obtenemos que se ha verificado la primera de las metas y pasamos al nivel 2.

R. Caballero, T. Gmez, M. Gonzlez, M. Hernndez, F. Miguel, J. Molina, M.M. Muoz, L. Rey, F. Ruiz

Programacin Matemtica para Economistas

Nivel 2: Min p2 s.t x+y5 2x + y 8 x1 4x + 3y + n1 - p1 = 10 n1 = 0 3x + 2y + n2 - p2 = 6 x, y, n1, p1, n2, p2 0 LP OPTIMUM FOUND AT STEP OBJECTIVE FUNCTION VALUE 1) 1.0000000 VALUE 1.000000 1.000000 2.000000 .000000 .000000 3 REDUCED COST .000000 .000000 .000000 .666667 1.000000 3

VARIABLE P2 X Y P1 N2

NO. ITERATIONS=

La solucin obtenida es (1, 2) pero p2 = 1, lo cual nos indica que no se verifica la segunda meta, en concreto, segn el resultado, el nivel se contaminacin se superara en una unidad (p2 = 1). En esta primera grfica vamos a ver el efecto de la incorporacin de la primera meta, y en la segunda grfica, tras introducir la segunda meta observamos cmo el conjunto de soluciones satisfactorias es vaco, por tanto nuestro problema no tendra solucin satisfactoria, sin embargo, la solucin obtenenida, an no siendo satisfactoria verifica la primera meta y es la ms cercana al cumplimiento de la segunda, puesto que estamos minimizando la variable no deseada.

R. Caballero, T. Gmez, M. Gonzlez, M. Hernndez, F. Miguel, J. Molina, M.M. Muoz, L. Rey, F. Ruiz

Programacin Matemtica para Economistas

Grfica nivel 1:

R. Caballero, T. Gmez, M. Gonzlez, M. Hernndez, F. Miguel, J. Molina, M.M. Muoz, L. Rey, F. Ruiz

Programacin Matemtica para Economistas

10

Grfica nivel 2:

A la vista del resultado ahora podra actuar de nuevo el decisor, puesto que l ya conoce que la imposicin de 6 unidades para la contaminacin no es factible. De esta forma, si mantiene la primera meta con 10 unidades y relaja la contaminacin a 8, el segundo nivel se modifica y obtenemos: Nivel 2: Reformado Min p2 s.a x+y5 2x + y 8 x1 4x + 3y + n1 - p1 = 10 n1 = 0 3x + 2y + n2 - p2 = 8 x, y, n1, p1, n2, p2 0

R. Caballero, T. Gmez, M. Gonzlez, M. Hernndez, F. Miguel, J. Molina, M.M. Muoz, L. Rey, F. Ruiz

Programacin Matemtica para Economistas

11

LP OPTIMUM FOUND AT STEP OBJECTIVE FUNCTION VALUE 1) .0000000 VALUE 0.000000 2.500000 0.000000 0.000000 0.500000 1

VARIABLE P2 X Y P1 N2

REDUCED COST 1.000000 .000000 .000000 .000000 .000000

NO. ITERATIONS=

Al relajar la meta s obtenemos una solucin satisfactoria (2.5, 0), en la cual los beneficios son exactamente 10 unidades y la contaminacin de 7.5 dado que n2 = 0.5. El conjunto de soluciones satisfactorias asociadas al cumplimiento de las dos metas nos lo muestra la grfica siguiente:

R. Caballero, T. Gmez, M. Gonzlez, M. Hernndez, F. Miguel, J. Molina, M.M. Muoz, L. Rey, F. Ruiz

Das könnte Ihnen auch gefallen