Introducción a la Programación Dinámica

download Introducción a la Programación Dinámica

of 34

description

Se presentan algunos resultados de la teoría matemática de Programación Dinámica y se exponen ejemplos que muestran la gran versatilidad de la técnica. También se muestra un esquema de demostración del principio de optimalidad

Transcript of Introducción a la Programación Dinámica

Conceptos y ejemplos bsicos de Programacin Dinmica Wilson Julin Rodrguez Rojas [email protected] Trabajo de Grado para Optar por el Ttulo de Matemtico Director: Pervys Rengifo Rengifo Ingeniero Universidad Nacional de Colombia Fundacin Universitaria Konrad Lorenz Facultad de Matemticas Bogot D.C.2005 2 Introduccin......................................................................................................................4 Programacin dinmica...................................................................................................5 Ejemplos de funciones recursivas ....................................................................................6 Ejemplo 1.1:...................................................................................................................6 Ejemplo 1.2:...................................................................................................................6 Ejemplos de Programacin Dinmica.............................................................................7 Ejemplo 1.3 (El problema de la diligencia) .....................................................................7 Teorema de optimalidad............................................................................................... 12 Ejemplo 1.4: (Problema de la distribucin de la inversin)........................................... 13 Ejemplo 1.5: (Proble ma de la subdivisin ptima)................................ ........................ 17 Ejemplo 1.6: (Problema de Programacin Lineal)................................ ........................ 23 Ejemplo 1.7: (Problema de Programacin Lineal Entera)............................................ 25 Ejemplo 1.8: (Problema de Programacin no Lineal)................................................... 27 Comparacin entre los mtodos basados en ecuaciones recursivas de avance y los basados en ecuaciones recursivas de retroceso........................................31 Ejemplo 1.9:................................................................................................................. 31 Conclusin......................................................................................................................33 Bibliografa.....................................................................................................................33 3 Resumen Se presentan algunos resultados de la teora matemtica de Programacin Dinmica y se exponenejemplosquemuestranlagranversatilidaddela tcnica.TambinsemuestraunesquemadedemostracindelPrincipio de Optimalidad. Abstract SomeresultsoftheMathematicaltheoryofDynamicProgrammingare presentedandsomeoftheconsequencesoftheseresultsareexposed throughexamplesthatdemonstratethegreatversatilitythistechnique owns;Thereisherealsoincludedademonstrationschemeofthe Optimal Principle. 4 Introduccin Elpresentetrabajocomprendelaexposicindelateorayalgunos ejemplosdeProgramacinDinmica(P.D.).LaP.D.estcomprendida dentrodeunconjuntodetcnicasmatemticasqueasuvezformanparte de unreamsamplia,conocidacomoInvestigacindeOperaciones. Esta ltimapuededefinirsecomounacienciainterdisciplinariaquetiene porobjetolabsquedadeestrategiasquepermitanobtenerresultados ptimoseneldesarrollodeactividadesporpartedesistemashombre-mquina(estossistemaspuedenestarformadosexclusivamentepor hombres, por mquinas o por una combinacin de los dos). Como se ver msadelante,losproblemas propios de la P.D. son aquellos que pueden serdivididosensubproblemas,loscuales,asuvez,tienenunaestructura igual al problema original(enestesentidopodradecirsequetienenuna estructura fractal). Para este propsito,elmtodoconsiste en dividir el problemaenetapas,resolverlaprimeradeestas,utilizarestasolucin pararesolverlaetapasiguienteycontinuarassucesivamentehasta encontrar la solucin del problema en su totalidad. SoncaractersticasesencialesdelaP.D.porunlado,laversatilidadcon respectoalaampliagamadeproblemasquepuedeatacary,porotra parte,quelaP.D.selimitaaaportarunesquemadesolucin(ya mencionado arriba)dejandoalingeniodequienresuelvaelproblemala construccin del modelo matemtico para realizar la optimizacin de cada caso en particular. En este sentido el trabajo en P.D. est ms en relacin directa con la labor del matemtico que del ingeniero, pues este ltimo no necesita comprender la base terica en la cualdescansa el procedimiento, sino nicamente conocer el algoritmo propio del problema particular que pretende resolver. Paralograrlacomprensindelatcnicaeltrabajosehaestructurado sobreejemplosqueilustranlaversatilidaddelaP.D.,conestefnse presentansolucionesdeproblemaspropiosdeltrabajoen Programacin Lineal,ProgramacinLinealEntera,ProgramacinNoLinealetc.El objetivoesmspresentarlapotenciadelaP.D.queproponerlacomola panacea de los mtodos de Investigacin de Operaciones, pues tambin se verqueaunquefunciona,enocasioneslatcnicapuederesultar impractica al momento de resolver problemas de cierta envergadura. 5 Programacin dinmica Las caractersticas propias de la ProgramacinDinmica (PD) como son: el no tener un tipo especfico de problemas sobre el cual operar, el carecer deunalgoritmoestndardesolucin,etc.,hacenqueexistaunagran dificultadenelmomentodeintentardarunadefinicindeella.Sin embargo,paracomenzar,sedebeteneralgunadefinicinque,aunque parcialeincompleta,sirvaparairdemarcandoelterrenoalquese circunscribir este trabajo. Definicin1.0:Laprogramacindinmicaesunprocedimiento matemticodiseadoprincipalmenteparamejorarlaeficienciade clculodeproblemasdeprogramacinmatemticaseleccionados, descomponindolosensubproblemasdemenortamaoypor consiguientemasfcilesdecalcular.LaPDnormalmenteresuelveel problemaenetapas.Losclculosenlasdiferentesetapasseenlazana travsdeclculosrecursivosdemaneraquesegenereunasolucin ptima factible a todo el problema. Paraayudaraaclararalgunosconceptospresentesenladefinicin anterior y en el trabajo posterior se dan las siguientes definiciones: Definicin 1.1 (Mximo): sea{ n k ka,..., 3 , 2 , 1 una sucesin finita, se dice que maes el mximo de{ n k ka,..., 3 , 2 , 1 si k ma a paran k ,..., 3 , 2 , 1 . Definicin 1.2 (Mnimo): sea{ n k ka,..., 3 , 2 , 1 una sucesin finita, se dice que maes el mnimo de{ n k ka,..., 3 , 2 , 1 si k ma a paran k ,..., 3 , 2 , 1 . Definicin1.3(FuncinRecursiva):SeaS N f : , dondeNesel conjuntodelosnmerosnaturalesyScualquierconjunto,aFsele denominaunasucesinenS,ysedenota( )ns n f ,donde ns se denomina el n-simo elemento de la sucesin. A una funcin se le llamafuncinderecurrenciasiesunasucesindondeeln-simoelementose

Tomado de [Tah95] 6 obtieneapartirdeunelementoovarioselementosanterioresdela sucesin. Ejemplos de funciones recursivas Ejemplo 1.1:Inters CompuestoSupngase que se consigna $100 en una cuenta que produce un rendimiento del 5% mensual. Cul ser el monto 4 meses mas tarde?. Se define iMmonto en el i-simo mes. Y entonces se tiene 1000 M1 1 105 . 1 05 . 0 * + i i i iM M M Mi = 1,2, . . . a la pareja( )1 005 . 1 , 100 i iM M M , se le llama frmula de recurrencia. Y esto implica: M1 = 1.05*100 M2 = 1.05*(1.05*100)= 1.052*100 M3 = 1.05*(1.052*100)= 1.053*100 M4 = 1.05*(1.053*100)= 1.054*100= 121.55 Ejemplo 1.2:La sucesin de Fibonaccise define segn la frmula recursiva: 10 s11 s2 1 + n n ns s spara n = 2,3,4, Si se desarrolla laformula de recurrencia general se obtiene

S2 = 2 S3 = 3 S4 = 5 S5 = 8 etc. 7 Ejemplos de Programacin Dinmica ElsiguienteejemplofuedesarrolladoporelprofesorHarveyM.Wagner cuandoestabaenlauniversidaddeStanfordconelfindeilustrarlos elementos y la terminologa propios de la PD. Ejemplo 1.3 (El problema de la diligencia) Una diligencia debe atravesar el oeste estadounidense en plena fiebre del oro.Cadaunodelostramosdesurecorridoestcubiertoporunapliza deseguro,cuyocostoesdirectamenteproporcionalalriesgopresente durante el viaje. El recorrido se inicia en la ciudad A y tiene como destino la ciudad J. La figura 1.1 ilustra la situacin. Losnmerosenlosarcosindicanelcostodelaplizaquecubreelviaje entrelasdosciudades,porejemplo,laplizadelviajeentreAyCtiene un costo de 3. El conductor supone quela ruta ms segura es aquella para la cual la suma total de los costos de las plizas sea mnima. Figura 1.1 D C B G F E I H J A 2 4 3 74 6 3 2 4 4 1 5 1 4 6 3 3 3 3 4 8 Solucin del problema Enprimerlugardebemosnotarquelaestrategiadeescoger,encada etapa,larutaconelcostomnimonoconducealasolucinptima,pues al seguir esta tctica se obtiene la ruta ABFI J la cual tiene un costototalde13.Sinembargounpequeosacrificioenunaetapapuede conduciramejoresresultadosmsadelante.Paraestecasotenemosque A DF ofrece un mejor resultado que ABF. Unprocedimientoquesconduceaencontrarlasolucinptimaesla enumeracin exhaustiva de todas las posibilidades, las cuales en este caso son: 3x3x2 = 18. Se procedera de la siguiente manera: Ruta 1. ABEHJ costo total 13 Ruta 2. ABEI J costo total 17 Ruta 18. ADGI Jcosto total 15 RecurdesequeladefinicindePDhablademejorarlaeficienciade clculo y por lo tanto, se observa que la enumeracin exhaustiva de casos no es eficiente porque, por ejemplo, al calcular los costos de las rutas 1 y 2serepiteeltrabajocorrespondientealsegmentoABEyasu aportealcostototal,queenestecasoesde9.Unprocedimientoms eficiente guarda este resultado intermedio para evitar la redundancia en losclculos,esteesprecisamenteelenfoquedelaPDparaestetipode problemas. Enprimerlugardebenotarsequecualquieraquesealasolucinla diligencia deber realizar 4 etapas de camino. Por lo tanto se resolverel problema para cada una de las etapas , agregando en cada paso una etapa mshastallegaralaprimerayconelloalasolucindelproblema.Sin embargo,antesdecomenzararesolverelproblemaseintroducirn algunosconceptosque,aunqueexcesivosparaesteproblemaen particular,(puesesteproblemapuederesolversedesdeelpuntodevista delaPDperosintantaparafernalia)vanambientandoloselementos propios del enfoque de la PD. Sean nx (n = 1,2,3) las variables de decisin que representan la ciudad por lacualdeberpasarladiligenciaenlaetapan.Porejemplo,elconjunto devaloresquepuedetomar 2x es{E,F,G},loselementosdeeste 9 conjuntosedenominanestadosdelaetapa2.Entonceslaruta seleccionada es Ax1 x2 x3 J. Sea) , (1 n nx s f elcostototaldelamejorpolticaglobalparalasetapas anteriores,dadoqueladiligenciaseencuentraenlaciudads y acaba de llegar de 1 nx . Dadossyn,sea *1 nx elvalorde 1 nx (nonecesariamentenico)que minimiza) , (1 n nx s f ,ysea) (*s fnelvalormnimocorrespondiente de ) , (1 n nx s f . Entonces ) (*s fn = mnnx) , (1 n nx s f =) , (*1 n nx s f (1) en donde ) , (1 n nx s f= costo inmediato (etapa n) + costo mnimo etapas 1,2, . . ., n-1 en otras palabras ) , (1 n nx s f= 1 n sxC +) , (*1 n nx s f (2) Con la notacin introducida se tiene que el objetivo es encontrar) (*4J f . Sialgunadeestasdefinicionesnohalogradoserentendida completamente esto deber lograrse viendo el proceso de solucin, el cual extraelainformacindelafigura1.1ydelastablasquesevayan generando: Para n = 1, 0x= A y no existen opciones de caminos para} , , { D C B s por lo tanto se tienen nicamente soluciones ptimas10 s ) (*1s f*0xB2A C4A D3A Tabla1.1 Para n = 2 se tiene, por ejemplo: ) ( ) , (*1 21B f c B E fEB+ = 7+2 = 9 estaecuacintieneelsiguientesignificado:elcostomnimoparallegara E desde A pasando por B es igual al costo de ir de B a E (EBc ) este dato apareceenlafigura1.1- mselcostomnimodelviajedeAhastaB ( ) (*1B f )-estedatosetomadelatabla1.1,engeneralsetomardela tabla anterior-.Deestaformasecalculantodaslasentradasdelatabla 1.2. La tabla 1.2 nos permite ver ya un resultado interesante: en este momento hemos resuelto el problema si el destino de la diligencia fuera alguna delas ciudades E, F o G. Por ejemplo, el costo mnimo para ir de A a E es de 7 ( ) (*2E f ) y se consigue llegando a E desde C o D (*1x ), si por ejemplo se llegaporDlatabla1.1nosinformaqueaDdebellegarseenlaruta ptimadesdeA,aunqueesteltimoresultadoestriviallaatencinse centraen la lgica que sigue la construccin y lect ura de las tablas. ) ( ) , (1*1 1 21x f c x s fsx+ 1xs BCD ) (*2s f*1xE9777C o D F6644D G8888B o C o DTabla 1.2 11 Para n=3 se tiene ) ( ) , (2*2 2 32x f c x s fsx+ 2xsEFG ) (*3s f*2xH810118E I117117F Tabla 1.3 Y finalmente para n=4 ) ( ) , (3*3 3 43x f c x s fsx+ 2x s HI ) (*4s f*3xJ111111H o I Tabla 1.4 Delatabla1.4seconcluyequeelcostomnimoes11yquepuede llegarse a J tanto de H como de I. Si se escoge la ruta que llega por H de la tabla 1.3 se tiene que la ruta ptima llega a H a travs de E. A su vez la tabla 1.2informaqueexistenrutasptimasquelleganaEatravsdeC tanto como de D. Finalmente,siseescogelarutaquellegaaEporCla tabla 1.1 indica que la ruta optima llega a C a travs de A (trivial). Con la informacin anterior se concluye que una ruta ptima es ACEHJ Anlisis similares arrojan las siguientes rutas ptimas alternativas ADEHJ ADF IJ Obviamente todas tienen un costo total de 11.

Nota: este mismo ejemplo se encuentra resuelto en la pgina 533 de [Hil 02] siguiendo un procedimiento conocido como de retroceso, el cual consiste en atacar el problema de adelantehaciaatrs.Sinembargo,sehaconsideradoqueelprocedimientodeavance, seguido aqu, es mas intuitivo. Ms adelante se discutirn las ventajas de cada uno. 12 Teorema de optimalidad Elejemplo1.3tambinpermiteambientarladiscusindelabase fundamentaldelaPDqueeselllamadoTeorema(oprincipio)de optimalidad,cuyoenunciadoeselsiguiente:Unapolticaptimasolo puede estar formada por subpolticas ptimas. En esencia lo que significa esquelasdiferentesrestriccionesdelasolucinalproblematotal (polticaptima)acadaunodelossubproblemas(subpoltica)es tambin solucin ptima de dicho subproblema. Acudiendo al ejemplo, se tienequelarutaA C EHJesunapolticaptimayque C EHesunasubpolticadeACEHJ.Loqueafirmael teorema es que, en estas condiciones, C EHesasuvezsubpoltica ptima,osea,queessolucinptimadelsubproblemaquesurgeal considerarcomopuntoinicialCycomodestinoH.Lajustificacinesintuitiva: supngasequelaafirmacinesfalsa,existirentoncesunnodo XtalqueCXHesmejorqueCEH,perodeellosurgeuna contradiccin, pues en ese caso se tendra que ACXHJ sera mejorqueACEHJconlocualestaltimanoserapoltica ptima. Conestosetieneunamotivacin,noaunademostracin,sinoaun esquemadedemostracindelprincipiodeoptimalidad.Consisteenuna generalizacin de lo discutido en el prrafo anterior: sea x1, x2, . . . ,xk, . . . ,xk+r, . . . ., xn una sucesin de solucionesptimas a los subproblemas en loscualessehadivididounomayoro,enotraspalabras,unasolucin ptimadelproblemageneral.Supngaseademsquexk,...,xk+r no constituyen una solucin optima al subproblema restringido que las posee como variables de decisin, entonces deben existir xk, . . . ,xk+rtales que constituyenunasolucinptimadelmencionadosubproblema,conlo cual se tendra que x1, x2, . . . ,xk, . . . ,xk+r, . . . ., xn sera una solucin mejorquex1, x2, . . . ,xk, . . . ,xk+r, . . . ., xn y esto contradice el hecho de que esta ltima sea una solucin ptima. Este esquema debe ser adaptado paraqueconstituyaunademostracindecadacasoparticularalcualse estaplicandolaPD.Estoltimonodebeversecomounadificultad gratuita,sinocomounpasoadelanteenelempeoporadquirirel dominiototaldelascaractersticasdelmodelomatemticoparticularque se pretende aplicar. 13 Comoyasedijo, el ejemplo 1.3 fue creado con el propsito de introducir loselementosylaterminologapropiosdelaP.D.Setienenentonceslas siguientes caractersticas: 1.El problema se puede dividir en etapas que requieren unapoltica dedecisinencadaunadeellas.Estaesquizlaprincipal caracterstica de los problemas de P.D. y se ver que la esencia de la solucin ser identificar las etapas, en algunos ejemplos, como elanterior,estassernevidentes,sinembargo,severncasosen los cuales esto no ser siempre as.2.Losestadossonlasdistintascondicionesposiblesenlasquese puede encontrar el sistema en cada etapa del problema. 3.Elprocedimientodesolucinestdiseadoparaencontraruna polticaptimaparaelproblemacompleto,apartirdeun procedimientoqueiniciaanalizandounaetapayqueen cada uno delospasosagregaunanueva,hastaabarcarelproblemaensu totalidad. 4.La decisin inmediata ptima depende slodelestadoactualyno decmosellegah.Enelejemploanterior,estaafirmacinse evidenciaenelhechodequeencadapasonicamentese consultaba la tabla anterior y no el conjunto total de tablas. 5.El procedimiento de solucin emplea unarelacin recursiva que identifica la poltica ptima para la etapa n, dada la poltica ptima para la etapan-1.Paraelcasodelejemploanteriorestarelacin tena la forma: ) , (1 n nx s f= 1 n sxC +) , (*1 n nx s f (3) Conlaayudadeestasnuevasherramientasconceptualesseatacarotro problema tpico de la P.D. Ejemplo 1.4: (Problema de la distribucin de la inversin) Unacorporacinrecibepropuestasdesustresplantasrespectoala posibleexpansindelasinstalaciones.Lacorporacintieneun presupuestode5millonesdedlaresparaasignarloalastresplantas. Cadaplantaexponesuspropuestasindicandoelcostototal(C)yel ingresototal(R)paracadapropuesta.Enlatabla1.5semuestranlos costoseingresos(enmillonesdedlares).Laspropuestasdecostocero 14 indican la posibilidad de no asignar fondo alguno a la planta. El objetivo, obviamente, es maximizar el ingreso total resultante.

Planta 1Planta 2Planta 3 PropuestaC1R1C2R2C3R3 1000000 2152813 32639-- 4--412-- Tabla 1.5 Las plantas definen las etapas. Las variables de decisin 1x , 2xy 3xse definen de la siguiente manera: 1x = monto de capital asignado a la planta 1. 2x= monto de capital asignado a las plantas 1 y 2. 3x= monto de capital asignado a las plantas 1, 2 y 3. Una solucin es una tripla (P1, P2, P3) donde Pi corresponde a la propuesta queseescogedelaplantai,porejemplo(2,3,1)significaescogerla propuesta 2 para la planta 1, la propuesta 3 para la planta 2 y la propuesta 1 para la planta 3; esta solucin tendra un costo de 1 + 3 + 0 = 4 millones yproducirauningresode5+9+0=15millones.Existensolucioneno factiblescomo (3, 4, 2) pues tiene un costo de 7 millones. Solucin del problema Como 1x correspondealmontoqueseasignaralaplanta1,sedeben considerartodaslasposibilidadesdesdehacer 1x =0loquesignificara emplearlos$5millones enlasotrasdosplantas,hastahacer 1x =5en cuyo casoseasignaralatotalidaddelosrecursosalaplanta1(Este ltimocaso,evidentemente,nocorrespondeaunasolucinptima, pues la mximacantidad que puede aprovechar la planta 1 es $2 millones). Se recurre a la siguiente notacin: ) (n nP R= ingreso de la propuesta nPen la etapa n. ) (n nx f= rendimiento ptimo de las etapas 1, 2, . . . , n dado el estado nx . 15 *jP = propuesta ptima asociada a) (n nx f Por lo tanto se tiene ) (1 1x f=1 P factiblespropuestasmx { ) (1 1P R }(4) enestaecuacinserelacionandosvariablesdiferentes:porunlado 1x , quecomoyasedijocorrespondealacantidadasignadaalaplanta1,y porotrolado 1P querepresentalapropuestaqueseeligedelas presentadasporlaplanta1.Dependiendodelvalorde 1x notodaslas propuestas son factibles, por ejemplo para 1x= 1 la propuesta 1P= 3 no esfactiblepuestieneuncostode2.Latabla1.6resumelarelacinde todoslosposiblesvaloresde 1x contodoslosposiblesvaloresde 1P ,los asteriscos representan la no factibilidad de algunos casos. n=1 ) (1 1P R 1x1P= 1 1P= 2 1P= 3) (1 1x f*1P00**01 105*52 205663 305663 405663 505663 Tabla 1.6 Latabla1.5informacualeslapolticaptimaquedebeseguirsepara cadaunodelosposiblesvaloresde 1x .Puedeparecerredundanteensu construccinpuesparacadaestadolapropuestamsaltaquepuede cubrirseeslaquegeneraelmayoringreso,sinembargo,comoocurreen la realidad, no siempre la mayor inversin genera el ms alto beneficio. Ahorasedefinelapartefaltantedelaecuacinrecursivayque corresponde a las etapas 2, 3, . . . 16 ) (n nx f =Pn factiblespropuestasmx { ) (n nP R + ) (1 1 n nx f }(5) pero como) (n nx f esfuncinde nx exclusivamente,elladoderecho tambin debe serlo, esto se consigue teniendo en cuenta que ) (1 n n n nP C x x (6) donde) (n nP Ces el costo de la propuesta nP en la etapa n. Esta ecuacin ilustralaformaenqueoperaelprocedimientorecursivo:deundadonx se asignaunaparte( ) (n nP C) para cubrir la propuesta nP delaetapanyla cantidadrestante( ) (1 n n n nP C x x )sedestinaacubrirlaspropuestas de las etapas 1,2, . . . ,n-1. Se tiene, entonces: ) (n nx f =Pn factiblespropuestasmx { ) (n nP R + )) ( (1 n n n nP C x f } n = 2,3, . . .(7) tabulando para n=2 ) (2 2P R + )) ( (2 2 2 1P C x f 2x2P = 1 2P = 2 2P = 3 2P = 4) (2 2x f*2P00+0=0***01 10+5=5***51 20+6=68+0=8**82 30+6=68+5=139+0=9*132 40+6=68+6=149+5=1412+0=12142 o 3 50+6=68+6=149+6=1512+5=17174 Tabla 1.7 Comoenelejemploanterior,latabla1.5contienelasolucintotaldel problemarestringidoalasdosprimerasetapas,estoes,sielproblema totalselimitaraalasplantas1y2,yaestararesuelto,puesenlafila correspondiente a 2x =5vemosqueseobtieneunagananciamximade 17,siguiendolapropuesta4delaplanta2ycomoporlatabla1.5 sabemos que esta tiene un costo de 4 tenemos 1x= 5 4 = 1 y para 1x= 1 latabla1.6nosdicequesedebeseguirlapropuesta2delaplanta1.Se 17 tendra entonces la solucin al problema reducido (2,4) que tiene un costo de 5 millones y, como ya se dijo, reporta una ganancia de 17 . Latablaparalaltimaetapaposeesolamenteunafila,puesalnohaber etapasrestantesnodebenconsiderarsetodaslasposibilidadesde inversin sino, nicamente, el caso 3x =5. ) (3 3P R + )) ( (3 3 3 2P C x f 3x3P = 1 3P = 2) (3 3x f*3P50 + 17 = 173 + 14 = 17171 o 2 Tabla 1.8 Setiene,porlotanto,delatabla1.8,queelingresomximoesde17 millones,elcualseobtieneimplementandolaspropuestas1o2dela planta 3. En el caso de escogerse la propuesta 1 la cual, segn la tabla 1.5 tiene un costo de 0 se tiene 2x= 5 0 = 5, y en la tabla 1.7 se ve que para estevalorde 2x sedebeimplementarlapropuesta4delaplanta2,la cual, segn la tabla 1.5 tiene un costo de 4, con lo cual se tiene 1x= 5 4 =1,finalmente,latabla1.6indicaqueparaestevalorde 1x el procedimientoptimoesimplementarlapropuesta2delaplanta1. Resumiendoladiscusinanterior, se tiene como una solucin optima (2, 4, 1) . Un procedimientoanlogo permite encontrar otras dos soluciones ptimas: (3, 2, 2) y (2, 3, 2), cada una de las cuales reporta ingresos de 17 millones. Los dosltimos ejemplos comunican la sensacin de quela P.D. consiste enlaresolucindeproblemasqueinvolucranvar iablesdiscretasyque sonsusceptiblesdeunarepresentacintabular,losejemplosquese exponen a continuacin muestran que ese no es el hecho. Ejemplo 1.5: (Problema de la subdivisin ptima)Elproblemaconsisteendividirunacantidadq,mayorquecero,enn partes. El objetivo es determinar la subdivisin ptima de q que maximiza el producto de las n partes. 18 Solucin del problema Sea ix lai-simapartedeq(i=1,2,...,n).Entonceselproblema puede expresarse de la siguiente forma maximizar p = niix1

sujeto aniix1= q, ix> 0 para toda i Se hacen las siguientes definiciones: 1.La etapa i representa lai-sima parte de q. 2.El estadoiyes la parte de q que se asigna a las etapas 1, 2, . . . , i. Es evidente que, segn esta definicin,q yn . 3.La alternativa ixes la parte de q asignada a la etapa i. Sea) (i iy f el valor ptimo de la funcin objetivo para las etapas 1, 2, . . . ,i dado el estado iyy sea *ix el ixasociado con) (i iy f . Por lo tanto las ecuaciones recursivas asumen la siguiente forma ) (1 1y f=} {11 1x mxy x (8) ) (i iy f =)} ( * {11i i i iy xx y f x mxi(9) Para i=1 es evidente que) (1 1y f =} {11 1x mxy x = 1yy por lo tanto*1x = 1y . Para i = 2 se debe calcular)} ( * {2 2 1 22 2x y f x mxy x pero como) (1 1y f= 1yentonces se tiene ) (2 2y f=)} ( * {2 2 22 2x y x mxy x(10) o ) (2 2y f=)} {22 2 22 2x y x mxy x(11) para encontrar este mximoseacudealclculoelementalysesigueel conocidorecursodederivareigualaracero,comolaecuacinesdeuna 19 parbola que abre hacia abajo no deben realizarse ms clculos. Se define la funcin h como: ) (2x h= 22 2 2x y x (12) entonces) ( '2x h =2 22x y (13) se resuelve la ecuacin) ( '2x h= 0 y se tiene 2 /2*2y x (14) como consecuencia de esto se tiene que 2 /2*1y x (15) que es la conocida solucin para el caso n = 2. De donde ) (2 2y f=4 /22y (16) Parai=3sedebecalcular) (3 3y f =)} ( * {3 3 2 33 3x y f x mxy xlocual, aplicando el resultado que se acaba de obtener para la etapa 2, es igual a ) (3 3y f =} 4 / ) ( * {23 3 33 3x y x mxy x(17) o ) (3 3y f =} 4 / ) 2 {(3323 3 3233 3x x y x y mxy x+ (18) Se define) (3x h =4 / ) 2 (3323 3 323x x y x y + yseprocedecomoenelcaso anterior: ) ( '3x h =4 / ) 3 4 (23 3 323x x y y + = 0(19) factorizando y trasponiendo el4 0 ) )( 3 (3 3 3 3 x y x y (20) 20 Setienen,enconsecuencia,dossoluciones:3x3y /3y3x3y . El clculodelasegundaderivadapermitirdeterminarlarazcorrecta aunque el modelo ya insina que se trata de la primera. ) ( ' '3x h =(-43y +63x )/4(21) 0 2 / ) 3 / ( ' '3 3< y y h(22) 0 2 / ) ( ' '3 3> y y h (23) Estosresultadosconfirmanlaprediccinhecha.Setieneelsiguiente conjunto de resultados: *3x3y /3(24) ) (3 3y f= 33y /27(25) Los clculosrealizados con i = 1, 2 y 3 insinan que para cada etapa i los resultados siguen el siguiente patrn: i y xi i/* (26) ii i ii y y f ) / ( ) ( (27) Se recurrir a la induccin matemtica para demostrar este hecho. Para i = 1yasetieneelresultado.Supngasequesecumpleparaiycalclese para i + 1. ) (1 1 + + i iy f =)} ( * {1 1 111 1+ + ++ +i i i iy xx y f x mxi(28) que aplicando la hiptesis de induccin se transforma en ) (1 1 + + i iy f =} ) / ) (( * {1 1 111 1ii i iy xi x y x mxi+ + ++ +(29) definiendoii i i ii x y x x h ) / ) (( * ) (1 1 1 1 + + + + (30) y haciendo los respectivos clculos 0 ) / ) (( ) / ) (( ) ( '11 1 1 1 1 1 + + + + + +ii i iii i ii x y x i x y x h (31) 21 factorizando 0 ) / ) (( ) / ) ((1 1 111 1 + + ++ + i i iii ix i x y i x y (32) elmodelopermitedescartarlaposibilidad 1 1 + +i iy x enconsecuencia solo es necesario resolver 0 / ) (1 1 1 + + + i i ix i x y (33) que da como resultado ) 1 /(1*1+ + +i y xi i(34) con lo cual se tiene ) (1 1 + + i iy f = 1111111*1+++++

,`

.|+

,`

.|++iiiiiiiyiiyyiy (35) conlocualfinalizalademostracin.Esteresultadopermitepasar directamente a la evaluacin de la etapa n. Para i = n se tienen q n y xn n/ /* (36) qnnynnn y y x y yn n n n n n) 1 ( ) 1 (/1 (37) la frmulai y xi i/*permite concluir quen q n y xn n/ ) 1 /(1*1 y por lo tanto qnnnqqnnx y yn n n) 2 ( 11 1 2 (38) 22 de donde,aplicando la misma frmula n q xn/*2 (39) esto permite calcular qnnnqqnnx y yn n n3 2*2 2 3 (40) Continuando estos clculos se ve quen q xi/*para todo i =1,2, . . .,n y con esto se concluye el producto mximo es nn q ) / ( lo cual confirma el resultado anticipado por la frmula (27). Lautilizacindelclculoenlasolucindeesteejemplomuestraquela tcnicadelaP.D.selimitaaladescomposicinenetapasperonodice nadaacercadelaformacomoseoptimizaelproblemaencadaetapa. RefirindoseaestacaractersticadelaP.D.enlapgina533de[Hil02] aparece la siguiente afirmacin:La P.D. se trata de un enfoque de tipo generalparalasolucindeproblemasylasecuacionesespecficasque seusansedebendesarrollarparaquerepresentencadasituacin individual.Entonces,senecesitaciertogradodecreatividadyunbuen conocimientodelaestructurageneraldelosproblemasdeP.D.para reconocer cuando ycomo sepuede resolver un problema por medio de estos procedimientos. Solucin de problemas de Programacin lineal El problema maximizar p px c x c x c z + + + ...2 2 1 1

Nota:esteejemploseencuentraresueltoenlapgina425de[Tah95]siguiendoun procedimientoderetroceso,elprocedimientodeavance,seguidoaqu,simplificalos clculos. 23 sujeto a m p mp m mp pp pb x a x a x ab x a x a x ab x a x a x a + + + + + + + + +.........2 2 1 12 2 2 22 1 211 1 2 12 1 11 0 ,..., ,2 1px x x puede formularse como un problema de P.D. Cada actividad j (j = 1, 2, . . .,p)seconsideracomounaetapa.Elniveldeactividad jx (0) representalaalternativaenlaetapaj.Comoenelejemploanterior,al tratarsedevariablescontinuas,cadaetapaposeeunnmeroinfinitode alternativasdentrodelespaciofactible.Losestadospuedendefinirse comolascantidadesderecursosqueseasignanalaetapaactualyalas anteriores.Unadiferenciaconlosproblemasresueltoshastaelmomento radicaenelhechodequealexistirmrecursoslosestadosdeben representarse con un vector de m dimensiones. Sean) ,..., , (2 1 mj j jv v v losestadosdelsistemaenlaetapaj,osea,las cantidades de los recursos 1, 2, . . . , m, asignadas a las etapas 1, 2, . . . , j.Sea jf ) ,..., , (2 1 mj j jv v v elvalorptimodelafuncinobjetivoparalas etapas 1, 2, . . . ,j dados los estados mj j jv v v ,..., ,2 1. Por lo tanto1f ) ,..., , (1 21 11 mv v v = m iv x ai imx,..., 2 , 101 1 1 {1 1x c }(41) jf ) ,..., , (2 1 mj j jv v v =m iv x aij j ijmx,..., 2 , 10 { ) ,..., (1 1 1 1 mj mj mj j j j j j jx a v x a v f x c +},j = 2, 3, . . . ,p (42) donde i ijb v 0para todas i y j. Ejemplo 1.6: (Problema de Programacin Lineal) Resolver maximizar2 116 20 x x z + 24 sujeto a105 3 52 1 + x x70 4 22 1 + x x0 ,2 1 x x Solucin del problema A partir de (41) se tiene } 20 { ) , (12 05 021 11 121 111 1x mx v v fv xv x Como 11 15 v x y 21 12 v x seconcluyeque ''2,521 111v vmn x pero como se trata de maximizar se tiene ''2,521 111v vmn xy por lo tanto ) , (12 11 1v v f 20 ''2,521 11v vmn(43) Resta hacer los clculos de la segunda etapa: 2f ) , (22 12v v ='''' + 24,5320 162 22 2 2124 03 022 212 2x v x vmn x mxv xv x (44) perosetiene10512 vy7022 v , entonces,105 32 xy 70 42 x lo cual equivale a2 / 352 x . Se tiene 2f ) , (22 12v v ='''' + 24 70,53 10520 162 222 / 35 02x xmn x mxx (45) Para 0= 2 / 352 x esnecesarioresolver 24 7053 1052 2x x quetiene como solucin102 x . Con lo cual se tiene 25 2f ) , (22 12v v =''' +2 / 35 1024 7010 053 10520 1622222xxxxx mx(46) o de forma equivalente 2f ) , (22 12v v ='' +2 / 35 10 24 70010 0 4 4202 22 2x xx xmx (47) Enelintervalo[0,10]lafuncinescrecienteyporlotantotienesu mximoen102 x conunvalorde460;en[10,35/2]lafuncines decreciente de donde el mximo est tambin en102 x y tiene el mismo valor,dedondeseconcluyequeen[0,35]elmximoselocalizaen 102 x y tiene un valor de 460. Para obtener 1xse tiene en cuenta que: 75 30 105 32 12 11 x v vy 30 40 70 42 22 21 x v v pero como ''2,521 111v vmn x entonces151 x . Una leve variacina procedimientoanteriorpermiteresolverproblemas de Programacin Lineal entera, esto se ilustra en el siguiente ejemplo. Ejemplo 1.7: (Problema de Programacin Lineal Entera) Resolver maximizar2 17 8 x x z + 26 sujeto a 8 22 1 + x x15 2 52 1 + x x2 1, x x enteros no negativos Solucin del problema entero x x mx v v fv xv x1 15 02 021 11 1} 8 { ) , (21 111 1 Como 11 12 v x y 21 15 v x seconcluyeque ''5,221 111v vmn x adems tratndosedeunproblemademaximizacinconvaloresenterossetiene ]]]

''5,221 111v vmn x(donde ]x representa la parte entera de x)yporlo tanto ) , (12 11 1v v f 8 ]]]

''5,221 11v vmn (48) Dado que 812 vy1522 vpara la etapa 2 se tiene: 2f ) , (22 12v v ='']]]

'' + 52 15,288 72 2215 2 08 022x xmn x mxxx(49) lasdesigualdades82 xy15 22 x equivalen a72 x ,entoncespara esterangoresolvemosladesigualdad 52 15282 2x x quetienecomo solucin102 xpor lo tanto se tiene 2f ) , (22 12v v ='']]]

+ 52 158 7227 02xx mxx (50) La tabla 1.9 permite encontrar la solucin de (50) 27 2x ]]]

+52 158 722xx024 123 230 329 436 543 642 749 Tabla 1.8 sevequeelmximoseconsiguecon 2x =7yquetieneunvalorde49. Como 1x = ]]]

'' 52 15,282 2x xmn entonces 1x =051,21]]]

''mn . Unprocedimientosimilaralseguidoenlosdosejemplosanteriores sirve tambin para resolver algunos problemas de programacin no lineal como se ver en el siguiente ejemplo. Ejemplo 1.8: (Problema de Programacin no Lineal) Resolver el problema de Programacin no Lineal:

maximizar 22 1215 6 7 x x x z + + sujeto a0 ,9 310 22 12 12 1 +x xx xx x 28 Solucin del problema } 6 7 { ) , (1210021 11 121 111 1x x mx v v fv xv x+ (51) entonces{ 21 11 1,v v mn x . Sea 121 16 7 ) ( x x x h + entonces 6 14 ) ( '1 1+ x x h (52) seresuelveladesigualdad0 ) ( '1 x hy se obtiene 731 xcomo01 xentonces la funcin h es creciente en el rango de inters y por lo tanto { 21 11*1, v v mn x (53) y *12 *1 21 11 16 7 ) , ( x x v v f + (54) Para la etapa 2 se tiene 2f ) , (22 12v v = { 2 2 1229 310 2 03 9 , 2 10 ( 522x x f x mxxx+ + (55) setieneentonces,que 2x estenelrango[0,5]ysobreldebe optimizarse.Seresuelveladesigualdad 2 22 10 3 9 x x + yseobtiene 5 / 12 xcon lo cual (55) se transforma en 2f ) , (22 12v v =' + + + + + + + +5 5 / 1 ) 10 2 ( 6 ) 10 2 ( 7 55 / 1 0 ) 9 3 ( 6 ) 9 3 ( 7 52 222222 22222x x x xx x x xmx(56) que simplificado queda 2f ) , (22 12v v =' + + +5 5 / 1 760 292 335 / 1 0 621 396 682 2222 222x x xx x xmx(57) 29 para resolver esta optimizacin se definen 621 396 68 ) (222 2+ + x x x hy760 292 33 ) (222 2+ x x x gentonces 396 136 ) ( '2 2+ x x hy292 66 ) (2 2 x x g resolviendo0 ) ( '2 x hy0 ) ( '2 x gse obtiene 34992 xy 331462 x = 4.42 con lo cual, en los intervalos que nos ocupan se tiene que h(x) es creciente en [0,1/5] yg(x) tieneunmnimodentrode[1/5,5]porlotantoh(x) tiene mximo en 1/5 y lo tiene en alguno de los extremos de [1/5,5], se calculan entonces: h (1/5) = 702.92 g(1/5) = 702.92 g(5) = 125 de lo cual se concluye que5 / 1*2 x= 0.2 y 2f ) , (22 12v v= 702.92 y como { 2 2*13 9 , 2 10 x x mn x + entonces{ 6 . 9 , 6 . 9*1mn x = 9.6. Este problema de programacinnolinealtambinpuedeserresueltopor unmtodogrficoquesiguelamismaideaqueelempleadoen programacin lineal. La grfica 1 ilustra el procedimiento. 30 Grfica 1. Lapartesombreadacorrespondealareginfactible.Tambinseha graficadolafuncinobjetivocondiferentesvaloresparaz.Esevidente que al aumentar zelgrficodelafuncinobjetivocrecealejndosedel centroyquesultimopuntodecontactoconlareginfactiblecoincide conlainterseccindelasrectasquecorrespondenalasrestriccionesdel problema,enconsecuenciaelpuntosolucinsehallaresolviendoel sistema de ecuaciones que determinan las rectas: 392101 1 x x que tiene como solucin 6 . 91 xde donde 2 . 02 x que coincide con la solucin encontrada empleando P.D. La sencillez de estemtodoparececontradecirladefinicinde P.D.dadaalcomienzo, msadelanteseharnalgunasconclusionesalrespectodeesta observacin. 31 Comparacin entre los mtodos basados en ecuaciones recursivas de avance y los basados en ecuaciones recursivas de retroceso Un aspecto importante de la P.D. es la diferencia en el grado de dificultad que se presenta al resolver un problema empleando ecuaciones recursivas de avance o de retroceso.Enestetrabajosehaoptadoporlasprimerasy se ha indicado adems, para algunos ejemplos, la bibliografa en la cual se puedenconsultarlassolucionesqueempleanecuacionesrecursivasde retroceso.Larazndeelloradicaenqueenlamayoradeloslibrosse sigueunenfoquecontrario,porlocualsehaqueridollamarlaatencin sobrelaotracaradelamoneda.Enalgunoscasos,comoenlosejemplos tratadoshastaahora,elgradodedificultadesigualparaambos enfoques, sinembargoestenoessiempreelcaso,comoseilustraconelsiguiente ejemplo. Ejemplo 1.9:Al comienzo del ao 0 un campesino posee k ovejas. Al final de cada ao decide cuntas debe vender y cuantas conservar. La ganancia obtenida por laventadeunaovejaenelaoies ip .Lasovejasqueconserve duplicarnsunmeroeneltranscursodelao.Elcampesinovender todas sus ovejas al cabo de n aos. Para el ao j se considerarn las siguientes variables: jx : = nmero de ovejas conservadas jy : = nmero de ovejas vendidas j j jy x z + La grfica 2 ilustra la situacin planteada Grfica 2. 32 Se tienek x z 2 20 1 n j x zj j,..., 2 , 1 21 Ecuacin recursiva de retroceso: } { ) (2n nk z yn ny p mx z fnn n ]} [ 2 ( { ) (12j j j j jk z yj jy z f y p mx z fjj j + + ,j = 1,2, . . . ,n-1 Ecuacin recursiva de avance: } { ) (1 121 11 1y p mx x fx k y }2( { ) (12 / ) (2j jj j jentero y xx k yj jy xf y p mx x fj jjjj++ + ,j = 2, 3,. . . ,n Al comparar las formulaciones se ve que el mtodo de avance incluye una condicindeintegridadloqueconstituyeunadificultadadicionalqueno est presente en el mtodo de retroceso. Elejemploanteriorilustraqueenalgunoscasospuederesultar conveniente preferir un mtodo al otro enprodelasimplificacindelos clculos.

Nota:elejemplodelasovejastienemsunpropsitopedaggico que uno prctico, puessetratadeuncasoenelcuallasolucinseencuentradeterminandoelmejor momento para vender las ovejas y venderlas todas en ese instante, para ello se determina el mayor iip 2 .Encasodepresentarseunempate existirn soluciones alternativas a la ventadetodaslasovejasenuninstantedado,perolagananciaserlamisma.Porlo tanto atacar este problema con el enfoque de P.D. resultara sumamente imprctico. 33 Conclusin Las tcnicas de P.D. nos han permitido resolver, entre otros, problemas de ProgramacinLineal,deProgramacinLinealEntera,deProgramacin NoLinealetc.EstonoquieredecirquelaP.D.constituyaunapanacea para la solucin de los problemas de todos estos campos, por dos razones: en primer lugar, porque las tcnicas de P.D. son aplicables nicamente a unconjuntoreducidodeproblemasencadacampo.Yensegundolugar porque, aunque la tcnica sea aplicable, al resolver problemas grandes (de Programacin Lineal por ejemplo) el nmero de evaluaciones de todas las alternativascrecedeformaexagerada(esteproblemaseconocecomola plagadeladimensionalidad)locualhacequeesteenfoquesea imprctico.Sinembargo,elpropsitobuscadoalresolverestetipode problemasnohasidoproponerunaalternativaalosmtodosestndarde solucindetalescampos(comoelmtodosmplexenelcasodela ProgramacinLineal)sinosencillamenteponerenevidenciala versatilidad propia de la P.D. Porotraparte,cuandoenfrentaproblemaspropiosdesucampolaP.D. aporta una marco de procedimiento que ayuda a disminuir enormemente elexcesodetrabajoocasionadoporlaredundanciaenlosclculosala vez que estimula la creatividad al dejar espacios en blanco que deben ser llenados al resolver cada caso en particular. DebeemplearselaP.D.cuandolaformadelproblemapermitadividirlo ensubproblemasquetenganlamismaestructuradelproblema original. Tambinesimportantetenerencuentaqueeltamaodelosclculos tenga proporciones razonables. 34 Bibliografa 1. [Hil02]HillierFrederick,InvestigacindeOperaciones,Mxico,D.F.: McGraw-Hill (2002). 2.[Tah95] Taha Hamdy,Investigacin de Operaciones, Mxico, D.F.: Alfaomega (1995). 3.[Pra00]PrawdaJuan,MtodosymodelosdeInvestigacinde Operaciones, Mxico, D.F.: Limusa (2000).