Beruflich Dokumente
Kultur Dokumente
Con el mtodo smplex se obtiene una solucin optima siguiendo una ruta de
puntos extremos adyacentes, a lo largo de las orillas del espacio de soluciones.
Aunque en la prctica el mtodo smplex ha funcionado bien para resolver
problemas grandes, la cantidad de iteraciones necesarias para llegar a la solucin
optima puede crecer en forma exponencial, tericamente. De hecho, los
investigadores han construido una clase de programas lineales en los que todos
los puntos extremos factibles se visitan antes de llegar al optimo (ver ejemplo del
9/8/06 en los apuntes). N. Karmarkar desarrollo en 1984 un algoritmo polinomio en
el tiempo, que cruza el interior del espacio de soluciones. Este algoritmo es eficaz
para programas lineales extremadamente grandes. Comenzaremos presentando
la idea principal del mtodo de Karmarkar, para despus describir los detalles de
cmputo del algoritmo.
Para que el nuevo punto de solucin sea estrictamente interior, no debe estar
en los lmites del simplex. (En trminos de la figura 2, se deben excluir los
puntos A y B en tres dimensiones, y las rectas AB, BC y AC en cuatro
dimensiones.) Para garantizar este resultado se inscribe una esfera con su
centro coincidente con el del simplex, en forma justa, dentro del simplex. En el
caso n dimensional, el radio r de esta esfera es igual a 1/ p n(n 1). Una esfera
menor con radio r (0 < < 1) ser a un subconjunto de la esfera, y cualquier
punto en la interseccin de la esfera menor con el sistema homogneo AX = 0
ser a un punto interior, con coordenadas estrictamente positivas. Entonces, se
puede uno mover todo lo posible en este espacio restringido (interseccin de
AX = 0 con la esfera r a lo largo del gradiente proyectado, para determinar el
nuevo punto de solucin, que por necesidad estar a mejorado. El nuevo punto
de solucin ya no estar a en el centro del simplex. Para que el procedimiento
sea iterativo se necesita llevar al nuevo punto de solucin al centro de un
El problema transformado tiene el mismo formato que el problema original.
Entonces se puede comenzar con el centro del smplex Y = ( 1 n , 1 n , . . . , 1 n
) y repetir el paso iterativo. Despus de cada iteracin se pueden calcular los
valores de las variables originales X a partir de la solucin. Ahora se indicara
como se puede determinar el nuevo punto de solucin para el problema
transformado. En cualquier iteracin k, el problema es
La seleccin de es crucial para ampliar la eficiencia del algoritmo. En el caso
normal se selecciona tan grande como sea posible, para ir hacia la solucin
en grandes saltos. Sin embargo, si se escoge demasiado grande, se puede
uno acercar demasiado a los lmites prohibidos del smplex. No hay respuesta
general a este problema, pero Karmarkar sugiere usar = (n 1)/3n.