Beruflich Dokumente
Kultur Dokumente
Introduccin
En 1984 Narendra Karmarkar, un matemtico hind de 28 aos, egresado del Instituto de Tecnologa en Bombay, del Instituto de Tecnologa de California y de la Universidad de California en Berkeley, investigador de los laboratorios AT&T Bell, public el artculo A New Polynomial-Time Algorithm for Linear Programming, que marc un hito en la Optimizacin Lineal, OL, tambin conocida como Programacin Lineal. A partir del trabajo de Karmarkar se reactiv la investigacin en OL, en especial en mtodos de barrera y de punto interior (tambin para Optimizacin No Lineal). En la base de datos Math Sci, una de las ms completas sobre publicaciones matemticas internacionales, aparecen por lo menos 593 tems relacionados con el mtodo de Karmarkar o con mtodos de punto interior.
han realizado estudios que cotejan el mtodo de Karmarkar con un paquete informtico estndar del mtodo simplex llamado MINOS. Para problemas de tamao grande (a partir de varios miles de restricciones) las mejoras en tiempo de clculo del mtodo de Karmarkar sobre el simplex son notables (factores entre 10 y 50 son comunes). No obstante, esta situacin no supone la supremaca del mtodo de Karmarkar en todo tipo de problemas. No hay que olvidar que para problemas de dimensin pequea, el mtodo simplex es ms intuitivo y fcil de aplicar. Tambin es posible realizar algunos comentarios acerca de la complejidad computacional de cada uno de los mtodos. El mtodo de Karmarkar es un algoritmo de tiempo polinomial, mientras que el simplex no goza de esta propiedad, sino que es de tiempo exponencial. De esta forma, tenemos explicada la razn por la cual el mtodo de Karmarkar obtiene mejores resultados para problemas de gran dimensin. Es llamativo que los problemas que hasta hace unos aos necesitaban de computadoras de tamao medio, ahora sean resolubles mediante ordenadores personales. En la actualidad, prcticamente cualquier usuario de la Investigacin Operativa puede resolver problemas lineales mediante LINDO (u otro paquete informtico semejante) en un ordenador porttil. De esta manera, mediante LINDO se pueden manejar problemas con hasta 50.000 restricciones y 200.000 variables. De igual modo, se desarroll el paquete MINOS (empleando para programacin lineal el mtodo simplex) en el Systems Optimization Laboratory del Departamento de Investigacin Operativa de la Universidad de Stanford, que ha sido usado ms frecuentemente como herramienta optimizadora en programacin no lineal. Otros lenguajes de modelizacin se han desarrollado para ordenadores personales. As, ha aparecido GAMS/MINOS que es una combinacin de los dos programas bien conocidos con objeto de construir un lenguaje de modelizacin algebraica implementado por IBM. De la misma forma, ha aparecido el paquete XPRESS-LP; y el lenguaje MPL (Mathematical Programming Language) desarrollado por Maximal Software en Islandia. Esta misma casa produjo la utilidad Turbo-Simplex. En los aos noventa fueron apareciendo otras utilidades informticas, como son las hojas de clculo y sus complementos asociados, capaces de resolver programas lineales. Entre algunos de estos complementos se pueden citar los siguientes: Solver, VINO, Whats Best? y XA. Casi todas estas utilidades fueron construidas por IBM para sus propias computadoras, sin embargo, poco a poco, se van obteniendo versiones para Macintosh.
Aunque estas son las ms recientes aplicaciones informticas de los ltimos cinco aos, en los prximos aos se mejorarn, a la vez que se extendern los lenguajes y paquetes informticos que permitirn resolver con relativa facilidad problemas de programacin lineal complejos.
programa lineal dado en la forma estandar Maximizar { z = cx : Ax b, x 0 } , a la forma estndar de Karmarkar (FEK): Minimizar : z = cx, sujeta a: Ax = 0, Unx = 1, x 0, (2) donde A es m n de rango m, n 2, c y A estan compuestos por numeros enteros, Un es un vector con n unos, y cumple las siguientes condiciones (S1) el punto x0 = (1/n, ,1/n), es factible, y (S2) el valor objetivo ptimo del problema es cero. Al convertir (1) a la (FEK) obtenemos: (1)
2.
El siguiente es el resumen del algoritmo de Karmarkar que aplica solo para programas lineales que estan bajo la (FEK).
(1)
sujeta a: Ax = 0, Unx = 1, x 0,
(2)
donde A es m n de rango m, n 2, c y A estan compuestos por numeros enteros, Un es un vector con n unos, y cumple las siguientes condiciones (S1) el punto x0 = (1/n, ,1/n), es factible, y (S2) el valor objetivo ptimo del problema es cero. Al convertir (1) a la (FEK) obtenemos: