Você está na página 1de 12

La Programacin Lineal es un procedimiento o algoritmo matemtico mediante el cual se resuelve un problema indeterminado, formulado a travs de ecuaciones lineales, optimizando

la funcin objetivo, tambin lineal. Consiste en optimizar (minimizar o maximizar) una funcin lineal, denominada funcin objetivo, de tal forma que las variables de dicha funcin estn sujetas a una serie de restricciones que expresamos mediante un sistema de inecuaciones lineales.

Contenido
[ocultar]

1 Historia de la programacin lineal 2 Variables 3 Restricciones 4 Funcin Objetivo 5 Programacin entera 6 Aplicaciones 7 Ejemplo 8 Vase tambin 9 Referencias 10 Bibliografa

Cronologa1 Ao 1826 Acontecimiento Joseph Fourier anticipa la programacin lineal. Carl Friedrich Gauss resuelve ecuaciones lineales por eliminacin "gaussiana".

1902 Gyula Farkas concibe un mtodo para resolver sistemas de desigualdades. George Dantzig publica el algoritmo simplex y 1947 John von Neumann desarroll la teora de la dualidad. Se sabe que Leonid Kantorvich tambin formul la teora en forma independiente. 1984 Narendra Karmarkar introduce el mtodo del punto interior para resolver problemas de programacin lineal.

[editar] Historia de la programacin lineal


El problema de la resolucin de un sistema lineal de inecuaciones se remonta, al menos, a Joseph Fourier, despus de quien nace el mtodo de eliminacin de Fourier-Motzkin. La

programacin lineal se plantea como un modelo matemtico desarrollado durante la Segunda Guerra Mundial para planificar los gastos y los retornos, a fin de reducir los costos al ejrcito y aumentar las prdidas del enemigo. Se mantuvo en secreto hasta 1947. En la posguerra, muchas industrias lo usaron en su planificacin diaria. Los fundadores de la tcnica son George Dantzig, quien public el algoritmo simplex, en 1947, John von Neumann, que desarroll la teora de la dualidad en el mismo ao, y Leonid Kantorvich, un matemtico ruso, que utiliza tcnicas similares en la economa antes de Dantzig y gan el premio Nobel en economa en 1975. En 1979, otro matemtico ruso, Leonid Khachiyan, dise el llamado Algoritmo del elipsoide, a travs del cual demostr que el problema de la programacin lineal es resoluble de manera eficiente, es decir, en tiempo polinomial.2 Ms tarde, en 1984, Narendra Karmarkar introduce un nuevo mtodo del punto interior para resolver problemas de programacin lineal, lo que constituira un enorme avance en los principios tericos y prcticos en el rea. El ejemplo original de Dantzig de la bsqueda de la mejor asignacin de 70 personas a 70 puestos de trabajo es un ejemplo de la utilidad de la programacin lineal. La potencia de computacin necesaria para examinar todas las permutaciones a fin de seleccionar la mejor asignacin es inmensa (factorial de 70, 70!) ; el nmero de posibles configuraciones excede al nmero de partculas en el universo. Sin embargo, toma slo un momento encontrar la solucin ptima mediante el planteamiento del problema como una programacin lineal y la aplicacin del algoritmo simplex. La teora de la programacin lineal reduce drsticamente el nmero de posibles soluciones ptimas que deben ser revisadas.

[editar] Variables
Las variables son nmeros reales mayores o iguales a cero. En caso que se requiera que el valor resultante de las variables sea un nmero entero, el procedimiento de resolucin se denomina Programacin entera.

[editar] Restricciones
Las restricciones pueden ser de la forma:

Tipo 1:

Tipo 2:

Tipo 3: Donde:

A = valor conocido a ser respetado estrictamente; B = valor conocido que debe ser respetado o puede ser superado; C = valor conocido que no debe ser superado; j = nmero de la ecuacin, variable de 1 a M (nmero total de restricciones); a; b; y, c = coeficientes tcnicos conocidos; X = Incgnitas, de 1 a N; i = nmero de la incgnita, variable de 1 a N.

En general no hay restricciones en cuanto a los valores de N y M. Puede ser N = M; N > M; , N < M. Sin embargo si las restricciones del Tipo 1 son N, el problema puede ser determinado, y puede no tener sentido una optimizacin. Los tres tipos de restricciones pueden darse simultneamente en el mismo problema.

[editar] Funcin Objetivo


La funcin objetivo puede ser:

Donde:

fi = coeficientes son relativamente iguales a cero.

[editar] Programacin entera


En algunos casos se requiere que la solucin ptima se componga de valores enteros para algunas de las variables. La resolucin de este problema se obtiene analizando las posibles alternativas de valores enteros de esas variables en un entorno alrededor de la solucin

obtenida considerando las variables reales. Muchas veces la solucin del programa lineal truncado esta lejos de ser el ptimo entero, por lo que se hace necesario usar algn algoritmo para hallar esta solucin de forma exacta. El ms famoso es el mtodo de 'Ramificar y Acotar' o Branch and Bound por su nombre en ingls. El mtodo de Ramificar y Acotar parte de la adicin de nuevas restricciones para cada variable de decisin (acotar) que al ser evaluado independientemente (ramificar) lleva al ptimo entero.

[editar] Aplicaciones
La programacin lineal constituye un importante campo de la optimizacin por varias razones, muchos problemas prcticos de la investigacin de operaciones pueden plantearse como problemas de programacin lineal. Algunos casos especiales de programacin lineal, tales como los problemas de flujo de redes y problemas de flujo de mercancas se consideraron en el desarrollo de las matemticas lo suficientemente importantes como para generar por si mismos mucha investigacin sobre algoritmos especializados en su solucin. Una serie de algoritmos diseados para resolver otros tipos de problemas de optimizacin constituyen casos particulares de la ms amplia tcnica de la programacin lineal. Histricamente, las ideas de programacin lineal han inspirado muchos de los conceptos centrales de la teora de optimizacin tales como la dualidad, la descomposicin y la importancia de la convexidad y sus generalizaciones. Del mismo modo, la programacin lineal es muy usada en la microeconoma y la administracin de empresas, ya sea para aumentar al mximo los ingresos o reducir al mnimo los costos de un sistema de produccin. Algunos ejemplos son la mezcla de alimentos, la gestin de inventarios, la cartera y la gestin de las finanzas, la asignacin de recursos humanos y recursos de mquinas, la planificacin de campaas de publicidad, etc. Otros son:

Optimizacin de la combinacin de cifras comerciales en una red lineal de distribucin de agua. Aprovechamiento ptimo de los recursos de una cuenca hidrogrfica, para un ao con afluencias caracterizadas por corresponder a una determinada frecuencia. Soporte para toma de decisin en tiempo real, para operacin de un sistema de obras hidrulicas; Solucin de problemas de transporte.

[editar] Ejemplo

ste es un caso curioso, con solo 6 variables (un caso real de problema de transporte puede tener fcilmente ms de 1.000 variables) en el cual se aprecia la utilidad de este procedimiento de clculo. Existen tres minas de carbn cuya produccin diaria es:

La mina "a" produce 40 toneladas de carbn por da; La mina "b" otras 40 t/da; y, La Mina "c" produce 20 t/da.

En la zona hay dos centrales termoelctricas que consumen:


La central "d" consume 40 t/da de carbn; y, La central "e" consume 60 t/da

Los costos de mercado, de transporte por tonelada son:


De "a" a "d" = 2 monedas De "a" a "e" = 11 monedas De "b" a "d" = 12 monedas De "b" a "e" = 24 monedas De "c" a "d" = 13 monedas De "c" a "e" = 18 monedas

Si se preguntase a los pobladores de la zona cmo organizar el transporte, tal vez la mayora opinara que debe aprovecharse el precio ofrecido por el transportista que va de "a" a "d", porque es ms conveniente que los otros, debido a que es el de ms bajo precio. En este caso, el costo total del transporte es:

Transporte de 40 t de "a" a "d" = 80 monedas Transporte de 20 t de "c" a "e" = 360 monedas Transporte de 40 t de "b" a "e" = 960 monedas Total 1.400 monedas.

Sin embargo, formulando el problema para ser resuelto por la programacin lineal se tienen las siguientes ecuaciones:

Restricciones de la produccin:

Restricciones del consumo:

La funcin objetivo ser:

La solucin de costo mnimo de transporte diario resulta ser:


Xb-d = 40 resultando un costo de 12 x 40 = 480 monedas Xa-e = 40 resultando un costo de 11 x 40 = 440 monedas Xc-e = 20 resultando un costo de 18 x 20 = 360 monedas Total 1.280 monedas.

120 monedas menos que antes.

[editar] Vase tambin


Poliedro convexo Algoritmo simplex Conjetura de Hirsch Leonid Kantorvich

EL METODO SIMPLEX PARA SOLUCIN DE PROBLEMAS DE PROGRAMACIN LINEAL Es un procedimiento iterativo que permite ir mejorando la solucin a cada paso. El proceso concluye cuando no es posible seguir mejorando ms dicha solucin. Partiendo del valor de la funcin objetivo en un vrtice cualquiera, el mtodo consiste en buscar sucesivamente otro vrtice que mejore al anterior. La bsqueda se hace
El mtodo del simplex fue creado en 1947 por el matemtico George Dantzig . El mtodo del simplex se utiliza, sobre todo, para resolver problemas de

siempre a travs de los lados del polgono (o de las aristas programacin lineal en los del poliedro, si el nmero de variables es mayor). Cmo el que intervienen tres o ms variables. nmero de vrtices (y de aristas) es finito, siempre se podr encontrar la solucin. El lgebra matricial y el El mtodo del simplex se basa en la siguiente propiedad: si la funcin objetivo, f, no toma su valor mximo en el vrtice A, entonces hay una arista que parte de A, a lo largo de la cual f aumenta.
proceso de eliminacin de Gauss-Jordan para resolver un sistema de ecuaciones lineales constituyen la base del mtodo simplex.

Con miras a conocer la metodologa que se aplica en el Mtodo SIMPLEX, vamos a resolver el siguiente problema: Maximizar Z= f(x,y)= 3x + 2y sujeto a: 2x + y 18 2x + 3y 42 3x + y 24 x 0,y 0 Se consideran las siguientes fases: 1. Convertir las desigualdades en igualdades Se introduce una variable de holgura por cada una de las restricciones, para convertirlas en igualdades, resultando el sistema de ecuaciones lineales: 2x + y + h = 18 2x + 3y + s = 42 3x +y + d = 24 2. Igualar la funcin objetivo a cero - 3x - 2y + Z = 0 3. Escribir la tabla inicial simplex En las columnas aparecern todas las variables del problema y, en las filas, los coeficientes de las igualdades obtenidas, una fila para cada restriccin y la ltima fila con los coeficientes de la funcin objetivo: Tabla I . Iteracin n 1 Base Variable de decisin Variable de holgura Valores solucin x y h s d h 2 1 1 0 0 18

s d Z

2 3 -3

3 1 -2

0 0 0

1 0 0

0 1 0

42 24 0

4. Encontrar la variable de decisin que entra en la base y la variable de holgura que sale de la base A. Para escoger la variable de decisin que entra en la base, nos fijamos en la ltima fila, la de los coeficientes de la funcin objetivo y escogemos la variable con el coeficiente negativo mayor (en valor absoluto). En nuestro caso, la variable x de coeficiente - 3. Si existiesen dos o ms coeficientes iguales que cumplan la condicin anterior, entonces se elige uno cualquiera de ellos. Si en la ltima fila no existiese ningn coeficiente negativo, significa que se ha alcanzado la solucin ptima. Por tanto, lo que va a determinar el final del proceso de aplicacin del mtodo del simplex, es que en la ltima fila no haya elementos negativos. La columna de la variable que entra en la base se llama columna pivote (En color azulado).

B. Para encontrar la variable de holgura que tiene que salir de la base, se divide cada trmino de la ltima columna (valores solucin) por el trmino correspondiente de la columna pivote, siempre que estos ltimos sean mayores que cero. En nuestro caso: 18/2 [=9] , 42/2 [=21] y 24/3 [=8] Si hubiese algn elemento menor o igual que cero no se hace dicho cociente. En el caso de que todos los elementos fuesen menores o iguales a cero, entonces tendramos una solucin no acotada y no se puede seguir. El trmino de la columna pivote que en la divisin anterior d lugar al menor cociente positivo, el 3, ya 8 es el menor, indica la fila de la variable de holgura que sale de la base, d. Esta fila se llama fila pivote (En color azulado). Si al calcular los cocientes, dos o ms son iguales, indica que cualquiera de las variables correspondientes pueden salir de la base.

C. En la interseccin de la fila pivote y columna pivote tenemos el elemento pivote operacional, 3.

5. Encontrar los coeficientes de la nueva tabla. Los nuevos coeficientes de x se obtienen dividiendo todos los coeficientes de la fila d por el pivote operacional, 3, que es el que hay que convertir en 1. A continuacin mediante la reduccin gaussiana hacemos ceros los restantes trminos de su columna, con lo que obtenemos los nuevos coeficientes de las otras filas incluyendo los de la funcin objetivo Z. Tambin se puede hacer utilizando el siguiente esquema: Fila del pivote: Nueva fila del pivote= (Vieja fila del pivote) : (Pivote) Resto de las filas: Nueva fila= (Vieja fila) - (Coeficiente de la vieja fila en la columna de la variable entrante) X (Nueva fila del pivote) Vemoslo con un ejemplo una vez calculada la fila del pivote (fila de x en la Tabla II): Vieja fila de s Coeficiente 2 3 - 2 2 x x = = Nueva fila de s 0 1 0 - - 2 2 2 x x x = = = 42 2 x =

Nueva fila pivote 1 1/3 0 0 1/3 8 0 7/3 0 1 -2/3 26

Tabla II . Iteracin n 2 Base Variable de decisin Variable de holgura Valores solucin x y h s d h 0 1/3 1 0 -2/3 2 s 0 7/3 0 1 -2/3 26 x 1 1/3 0 0 1/3 8 Z 0 -1 0 0 1 24

Como en los elementos de la ltima fila hay uno negativo, -1, significa que no hemos llegado todava a la solucin ptima. Hay que repetir el proceso: A. La variable que entra en la base es y, por ser la variable que corresponde al coeficiente -1 B. Para calcular la variable que sale, dividimos los trminos de la ltima columna entre los trminos correspondientes de la nueva columna pivote: 2:1/3 [=6] , 26:7/3 [=78/7] y 8:1/3 [=8] y como el menor cociente positivo es 6, tenemos que la variable de holgura que sale es h. C. El elemento pivote, que ahora hay que hacer 1, es 1/3. Operando de forma anloga a la anterior obtenemos la tabla: Tabla III . Iteracin n 3 Base Variable de decisin Variable de holgura Valores solucin x y h s d y 0 1 3 0 -2 6 s 0 0 -7 0 4 12 x 1 0 -1 0 1 6 Z 0 0 3 0 -1 30 Como en los elementos de la ltima fila hay uno negativo, -1, significa que no hemos llegado todava a la solucin ptima. Hay que repetir el proceso: A. La variable que entra en la base es d, por ser la variable que corresponde al coeficiente -1 B. Para calcular la variable que sale, dividimos los trminos de la ltima columna entre los trminos correspondientes de la nueva columna pivote: 6/(-2) [=-3] , 12/4 [=3], y 6:1 [=6] y como el menor cociente positivo es 3, tenemos que la variable de holgura que sale es s. C. El elemento pivote, que ahora hay que hacer 1, es 4. Obtenemos la tabla: Tabla IV . Final del proceso Base Variable de decisin Variable de holgura Valores solucin x y h s d y 0 1 -1/2 0 0 12 d 0 0 -7/4 0 1 3 x 1 0 -3/4 0 0 3

5/4

33

Como todos los coeficientes de la fila de la funcin objetivo son positivos, hemos llegado a la solucin ptima. Los solucin ptima viene dada por el valor de Z en la columna de los valores solucin, en nuestro caso: 33. En la misma columna se puede observar el vrtice donde se alcanza, observando las filas correspondientes a las variables de decisin que han entrado en la base: D(3,12) * Si en el problema de maximizar apareciesen como restricciones inecuaciones de la forma: ax + by c; multiplicndolas por - 1 se transforman en inecuaciones de la forma - ax - by - c y estamos en el caso anterior * Si en lugar de maximizar se trata de un problema de minimizar se sigue el mismo proceso, pero cambiando el sentido del criterio, es decir, para entrar en la base se elige la variable cuyo valor, en la fila de la funcin objetivo, sea el mayor de los positivos y se finalizan las iteraciones cuando todos los coeficientes de la fila de la funcin objetivo son negativos

Interpretacin geomtrica del mtodo del simplex Las sucesivas tablas que hemos construido van proporcionando el valor de la funcin objetivo en los distintos vrtices, ajustndose, a la vez, los coeficientes de las variables iniciales y de holgura. En la primera iteracin (Tabla I) han permanecido todos los coeficientes iguales, se ha calculado el valor de la funcin objetivo en el vrtice A(0,0), siendo este 0. A continuacin se desplaza por la arista AB, calculando el valor de f , hasta llegar a B. Este paso aporta la Tabla II. En esta segunda iteracin se ha calculado el valor que corresponde al vrtice B(8,0): Z=f(8,0) = 24 Sigue por la arista BC, hasta llegar a C, donde se para y despliega los datos de la Tabla III. En esta tercera iteracin se ha calculado el valor que corresponde al vrtice C(6,6) : Z=f(6,6)=30. Continua haciendo clculos a travs de la arista CD, hasta llegar al vrtice D. Los datos que se reflejan son los de la Tabla IV. Concluye con esta tabla, advirtiendo que ha terminado (antes ha comprobado que

la solucin no mejora al desplazarse por la arista DE) El valor mximo de la funcin objetivo es 33, y corresponde a x = 3 e y = 12 (vrtice D). Si calculas el valor de la funcin objetivo en el vrtice E(0,14), su valor

Você também pode gostar