Programacón Matemátca para Economstas 1 3.- Programacón por metas. Una vez menconados algunos de los nconvenentes de las técncas generadoras, la ncorporacón de nformacón se va a traducr en una accón del decsor o centro decsor, emtendo deseos al analsta y éste, en base a estos deseos va a actuar. De esta manera, renuncamos a la optmzacón pero obtenemos una solucón que satsface los deseos manfestados. La técnca que se emplea al ncorporar nformacón a pror en el proceso se denomna, Goal Programmng, o Programacón por Metas. Veamos en qué consste. Dado un problema general de programacón multobjetvo: Opt ( f ( x), f ( x), L, f ( x)) sa. 1 2 x X donde algunos de los objetvos serán de máxmo y otros de mínmo, el decsor actúa de la sguente forma: Prmero asgnará a cada uno de los objetvos un valor u que va a representar su nvel de aspracón, es decr, lo que desea alcanzar como mínmo o ben no desea superar, e ncluso, en algunos casos, desea alcanzar exactamente la gualdad, para el correspondente objetvo. Después, al conjugar el objetvo y el nvel de aspracón se obtene lo que denomnamos meta, que expresamos de la sguente forma: S estamos maxmzando f (x) al mponer un nvel u, se deseará que: f (x) u. S mnmzamos, se deseará que f (x) u. El caso de gualdad, f (x) = u, se puede contemplar tanto s maxmzamos como s mnmzamos. Posterormente al establecmento de las metas, se asgnan nveles de prordad entre los objetvos, es decr, se les ordena atendendo a las prordades que manfeste el decsor. Esta asgnacón puede ser uno a uno, es decr, en cada nvel un solo objetvo, o pueden aparecer varos compartendo un msmo nvel; este caso mplca una ponderacón entre los objetvos que comparten el nvel. El número de nveles de prordades será por tanto, s p. Así pues, la resolucón se llevará a cabo atendendo a las metas mpuestas y a los nveles de prordad establecdos, de forma que se preferrá una solucón que mejore al prmero, una vez conseguda, se pasa al segundo y así sucesvamente. En este sentdo, la ordenacón que se utlza, bajo el enfoque de programacón por metas, es la lexcográfca p
Programacón Matemátca para Economstas 2 llevándose a cabo una resolucón por nveles. Esto nos conduce a defnr un nuevo orden denomnado lexcográfco, el cual pasamos a defnr. Orden Lexcográfco: Dremos que un punto x es preferdo a x s se verfca que: f (x) = f (x ) = 1,..., j - 1 y f j (x) > f j (x ). El orden lexcográfco es un orden total y es el usado en la ordenacón del dcconaro. Con él se establece que para mejorar una combnacón basta con r mejorando sucesvamente las coordenadas sn tener en cuenta lo que ocurra con las restantes. A las solucones obtendas por la técnca de programacón por metas se las denomna satsfactoras, en el sentdo de que verfcan evdentemente las restrccones orgnales del problema y las metas mpuestas por el centro decsor. Así pues tenemos. Defncón 4. Un punto x es una solucón satsfactora s es admsble, y verfca las p-metas mpuestas, es decr: x X max f ( x ) u mn f ( x ) u max mn f ( x ) = u En estas condcones, es decr, una vez que el decsor ha manfestado sus nveles de aspracón, construdas las metas y prorzados los objetvos, para la resolucón y aplcacón de la técnca de programacón por metas se ntroducen en las metas del problema unas varables (postvas) denomnadas de desvacón, y denotadas por n, y p. Dchas varables nos van a representar las dferencas que exsten entre los nveles de aspracón mpuestos por el decsor y el resultado que se alcanza en cada objetvo. La ntroduccón se realza de la sguente forma: S estamos maxmzando f (x) al construr las metas tenemos: f (x) u entonces f (x) + n - p = u y Mn n. Por qué? Porque, s n = 0 entonces f (x) - p = u y se verfca la meta f (x) u. S estamos mnmzamos f (x) al construr la meta tenemos: f (x) u entonces f (x) + n - p = u y Mn p
Programacón Matemátca para Economstas 3 razonando de gual forma, s p = 0 entonces f (x) + n = u y por tanto se cumple la meta f (x) u. En el caso de gualdad, f (x) = u, se toma f (x) + n - p = u y se calcula Mn n + p, para que se mantenga la meta se tendrá que verfcar que n = p = 0. A la funcón que recoge la mnmzacón de la varable no deseada, en el sentdo de que queremos que sea nula, se le denomna funcón de realzacón o funcón logro, y las denotaremos por h (n, p). Así pues, dadas las metas, los nveles de prordad y determnadas las funcones de realzacón, se procede a calcular: lexmn ( h1 ( np, ), L, hs ( np, )) f( x) + n p = u = 1,..., p n, p 0 En general, al prmer conjunto de restrccones, que son las orgnales del problema se les denomna restrccones duras o técncas, debdo a que serán restrccones que se tenen que verfcar necesaramente. Al segundo conjunto de restrccones, que son las que se generan de la construccón de las metas, se les denomna restrccones blandas, debdo a que no son de oblgado cumplmento. En cualquer problema, una vez planteado, y antes de proceder a la resolucón lexcográfca, se lleva a cabo la comprobacón, de la exstenca de puntos factbles, es decr, que nuestro conjunto de restrccones duras no es vacío, dado que s lo fuera el problema no tendría nngún sentdo. Esta comprobacón se realza en el que denomnaremos Nvel 0, en el cual mnmzamos cualquer funcón constante sujeta a las restrccones duras del problema. Nvel 0: M n h ( x) = cte Una vez comprobado que exsten solucones factbles, se pasa a la resolucón del problema. Para mostrar todo lo comentado vamos a desarrollar un ejemplo teórco. Supongamos que nuestro problema esta defndo de la sguente forma: ( Max f 1, Mn f 2, Max f 3, Mn f 4 )
Programacón Matemátca para Economstas 4 por tanto, tenemos un problema de cuatro objetvos, donde dos de ellos corresponden a máxmos y dos a mínmos. El sguente paso es dar los nveles de aspracón, construr las metas y determnar la varable no deseada, para la determnacón de la correspondente funcón de realzacón o logro. Sea pues: f 1 (x) u 1 entonces f 1 (x) + n 1 - p 1 = u 1 y Mn n 1 f 2 (x) u 2 entonces f 2 (x) + n 2 - p 2 = u 2 y Mn p 2 f 3 (x) u 3 entonces f 3 (x) + n 3 - p 3 = u 3 y Mn n 3 f 4 (x) = u 4 entonces f 4 (x) + n 4 - p 4 = u 4 y Mn n 4 + p 4. Vamos a consderar que los nveles de aspracón se establecen como: Nvel 1: Objetvo 1, entonces la funcón de realzacón es: h(n 1, p 1 ) = n 1 Nvel 2: Objetvo 2, entonces la funcón de realzacón es: h(n 2, p 2 ) = p 2 Nvel 3: Objetvos 3 y 4, entonces la funcón de realzacón es, en general de la forma: h(n 3, n 4, p 3, p 4 ) = αn 3 + β(n 4 + p 4 ) donde los parámetros α y β ponderarían a las correspondentes metas. El problema sería: lexmn ( n1, p2, αn3 + β ( n4 + p4)) f( x) + n p = u = 1, L, p n, p 0 = 1, L, p Tras realzar el nvel cero, como hemos mpuesto tres nveles de prordad tendremos que resolver a lo sumo tres problemas, correspondentes a: Nvel 1: Mn n1 f ( x) + n p = u n, p 0 1 1 1 1 1 1
Programacón Matemátca para Economstas 5 Denomnamos ( x 1, n1, p1) a la solucón, s n 1 = 0 sgnfca que hemos logrado verfcar la meta prmera y pasamos al segundo nvel. Nvel 2: Mn p2 f1( x) + n1 p1 = u1 n1 = 0 f2( x) + n2 p2 = u2 n, p, n, p 0 1 1 2 2 La dea es, que se mantenga la meta anteror y se verfque la del nvel correspondente, así, s volvemos a denomnar ( x, n, p ) a la solucón, s p 2 2 2 2 = 0 sgnfca que hemos logrado verfcar la meta prmera y la segunda y pasamos al tercer nvel. Nvel 3: Mn α n3 + β ( n4 + p4) f1( x) + n1 p1 = u1 n1 = 0 f2( x) + n2 p2 = u2 p2 = 0 f3( x) + n3 p3 = u3 f4( x) + n4 p4 = u4 n, p 0 = 1, L, 4 En este nvel como tenemos dos funcones hemos consderado como funcón de realzacón la suma ponderada de las dos y hemos mpuesto que se mantengan las dos anterores y las dos correspondentes al nvel, de forma que, s la solucón obtenda, ( x 3, n3, p3, n4, p 4 ), verfca que n3 = p3 = n4 = p4 = 0, x 3 será una solucón satsfactora, puesto que verfca las restrccones duras del problema, y las metas correspondentes. Con este ejemplo teórco se ha pretenddo lustrar cómo aplcar la técnca de programacón por metas, no obstante, quedarían algunas consderacones, por ejemplo, cómo actuamos s en alguno de los nveles la varable no deseada no es cero?, s esto ocurre la solucón correspondente no es satsfactora, puesto que s la varable de desvacón no deseada toma un valor nos ndca el ncumplmento de la correspondente meta. En en estos casos no contnuamos con el problema sno que la solucón sería la que nos dera con el valor correspondente de n o p, y la solucón aún no sendo satsfactora
Programacón Matemátca para Economstas 6 sería la más adecuada al cumplmento de nuestra meta, dado que mnmzamos las desvacones. A partr del ncumplmento de una meta, es decr, la no verfcacón del nvel, se puede actuar de varas formas. Una de ellas sería el redefnr la meta correspondente y otra el ntentar hacer una nueva dstrbucón de funcones y nveles. De hecho, el problema no queda cerrado, sno que sería el decsor, a la vsta de los resultados, el encargado de decdr qué hacer con el problema. Volvendo a nuestro ejemplo: Supongamos que la empresa establece que prmero quere maxmzar los benefcos, de forma que estos alcancen un nvel de al menos 10 undades, y que posterormente, la contamnacón se fja en un máxmo de 6 undades. Con esta nformacón se nos genera un problema de programacón por metas, en el cual los nveles corresponden a: Nvel 1: Los benefcos tenen que alcanzar un nvel de al menos 10 undades, luego la meta es: 4x + 3y 10. Al ncorporar las varables de desvacón tenemos: 4x + 3y +n 1 - p 1 = 10. La varable no deseada es n 1 y la funcón de realzacón del prmer nvel es: h 1 (n 1, p 1 ) = n 1. Nvel 2: El nvel de contamnacón es como máxmo de 6 undades, luego la meta es: se ncorporan las varables de desvacón y: 3x + 2y 6. 3x + 2y +n 2 - p 2 = 6. La varable no deseada en este nvel es p 2 y la funcón de realzacón del segundo nvel corresponde a: h 2 (n 2, p 2 ) = p 2. Con esta nformacón, el problema de programacón por metas a resolver es:
Programacón Matemátca para Economstas 7 lexmn ( n1, p2) sa. x+ y 5 2x+ y 8 x 1 4x+ 3y+ n1 p1 = 10 3x+ 2y+ n2 p2 = 6 xyn,,, p 0 = 1, 2. Como tenemos asegurada la exstenca de solucones factbles, pasamos a la resolucón por nveles. Nvel 1: Mn n 1 s.a x + y 5 2x + y 8 x 1 4x + 3y + n 1 - p 1 = 10 x, y, n 1, p 1 0 Aplcando el programa LINDO para programacón lneal obtenemos: LP OPTIMUM FOUND AT STEP 1 OBJECTIVE FUNCTION VALUE 1).00000000 VARIABLE VALUE REDUCED COST N1.000000 1.000000 X 2.500000.000000 Y.000000.000000 P1.000000.000000 NO. ITERATIONS= 1 Como el valor de n 1 = 0 obtenemos que se ha verfcado la prmera de las metas y pasamos al nvel 2.
Programacón Matemátca para Economstas 8 Nvel 2: LP OPTIMUM FOUND AT STEP 3 OBJECTIVE FUNCTION VALUE 1) 1.0000000 Mn p 2 s.t x + y 5 2x + y 8 x 1 4x + 3y + n 1 - p 1 = 10 n 1 = 0 3x + 2y + n 2 - p 2 = 6 x, y, n 1, p 1, n 2, p 2 0 VARIABLE VALUE REDUCED COST P2 1.000000.000000 X 1.000000.000000 Y 2.000000.000000 P1.000000.666667 N2.000000 1.000000 NO. ITERATIONS= 3 La solucón obtenda es (1, 2) pero p 2 = 1, lo cual nos ndca que no se verfca la segunda meta, en concreto, según el resultado, el nvel se contamnacón se superaría en una undad (p 2 = 1). En esta prmera gráfca vamos a ver el efecto de la ncorporacón de la prmera meta, y en la segunda gráfca, tras ntroducr la segunda meta observamos cómo el conjunto de solucones satsfactoras es vacío, por tanto nuestro problema no tendría solucón satsfactora, sn embargo, la solucón obtenenda, aún no sendo satsfactora verfca la prmera meta y es la más cercana al cumplmento de la segunda, puesto que estamos mnmzando la varable no deseada.
Programacón Matemátca para Economstas 9 Gráfca nvel 1:
Programacón Matemátca para Economstas 10 Gráfca nvel 2: A la vsta del resultado ahora podría actuar de nuevo el decsor, puesto que él ya conoce que la mposcón de 6 undades para la contamnacón no es factble. De esta forma, s mantene la prmera meta con 10 undades y relaja la contamnacón a 8, el segundo nvel se modfca y obtenemos: Nvel 2: Reformado Mn p 2 s.a x + y 5 2x + y 8 x 1 4x + 3y + n 1 - p 1 = 10 n 1 = 0 3x + 2y + n 2 - p 2 = 8 x, y, n 1, p 1, n 2, p 2 0
Programacón Matemátca para Economstas 11 LP OPTIMUM FOUND AT STEP 1 OBJECTIVE FUNCTION VALUE 1).0000000 VARIABLE VALUE REDUCED COST P2 0.000000 1.000000 X 2.500000.000000 Y 0.000000.000000 P1 0.000000.000000 N2 0.500000.000000 NO. ITERATIONS= 1 Al relajar la meta sí obtenemos una solucón satsfactora (2.5, 0), en la cual los benefcos son exactamente 10 undades y la contamnacón de 7.5 dado que n 2 = 0.5. El conjunto de solucones satsfactoras asocadas al cumplmento de las dos metas nos lo muestra la gráfca sguente: