Programación Lineal

Page 1

INGENIERIA EN SISTEMAS

Programacioó n Lineal Conozcamos mas de ella Nathasha Hernández

¿Qué es? Historia y Cronologíóa

Restricciones Variables


Programación Lineal Es un procedimiento o algoritmo matemático mediante el cual se resuelve un problema indeterminado, formulado a través de ecuaciones lineales, optimizando la función objetivo, también lineal. Consiste en optimizar (minimizar o maximizar) una función lineal, denominada función objetivo, de tal forma que las variables de dicha función estén sujetas a una serie de restricciones que expresamos mediante un sistema de inecuaciones lineales.

Historia Programación en Línea El problema de la resolución de un sistema lineal de inecuaciones se remonta, al menos, a Joseph Fourier, después de quien nace el método de eliminación de Fourier-Motzkin. La programación lineal se plantea como un modelo matemático desarrollado durante la Segunda Guerra Mundial para planificar los gastos y los retornos, a fin de reducir los costos al ejército y aumentar las pérdidas del enemigo. Se mantuvo en secreto hasta 1947.

En la posguerra, muchas industrias lo usaron en su planificación diaria.Los fundadores de la técnica son George Dantzig, quien publicó el algoritmo simplex, en 1947, John von Neumann, que desarrolló la teoría de la dualidad en el mismo año, y Leonid


Kantoróvich, un matemático ruso, que utiliza técnicas similares en la economía antes de Dantzig y ganó el premio Nobel en economía en 1975. En 1979, otro matemático ruso, Leonid Khachiyan, diseñó el llamado Algoritmo del elipsoide, a través del cual demostró que el problema de la programación lineal es resoluble de manera eficiente, es decir, en tiempo polinomial. Más tarde, en 1984, Narendra Karmarkar introduce un nuevo método del punto interior para resolver problemas de programación lineal, lo que constituiría un enorme avance en los principios teóricos y prácticos en el área. El ejemplo original de Dantzig de la búsqueda de la mejor asignación de 70 personas a 70 puestos de trabajo es un ejemplo de la utilidad de la programación lineal. La potencia de computación necesaria para examinar todas las permutaciones a fin de seleccionar la mejor asignación es inmensa (factorial de 70, 70!) ; el número de posibles configuraciones excede al número de partículas en el universo. Sin embargo, toma sólo un momento encontrar la solución óptima mediante el planteamiento del problema como una programación

lineal y la aplicación del algoritmo simplex. La teoría de la programación lineal reduce drásticamente el número de posibles soluciones óptimas que deben ser revisadas.

Variables Las variables son números reales mayores o iguales a cero. En caso que se requiera que el valor resultante de las variables sea un número entero, el procedimiento de resolución se denomina Programación entera.


  

a; b; y, c = coeficientes técnicos conocidos; X = Incógnitas, de 1 a N; i = número de la incógnita, 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.

Restricciones Las restricciones pueden ser de la forma:

Sin embargo si las restricciones del Tipo 1 son N, el problema puede ser determinado, y puede no tener sentido una optimización. Los tres tipos de restricciones pueden darse simultáneamente en el mismo problema.

Aplicaciones

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 = número de la ecuación, variable de 1 a M (número total de restricciones);

La programación lineal constituye un importante campo de la optimización por varias razones, muchos problemas prácticos de la investigación de operaciones pueden plantearse como problemas de programación lineal. Algunos casos especiales de programación lineal, tales como los problemas de flujo de redes y problemas de flujo de mercancías se consideraron en el desarrollo de las matemáticas lo suficientemente importantes como para generar por si mismos mucha investigación sobre algoritmos es pecializados en su solución. Una serie de algoritmos diseñados para resolver otros tipos de problemas de optimización constituyen casos particulares de la más amplia técnica de la programación lineal. Históricamente, las ideas de programación lineal han inspirado muchos de los conceptos centrales de la


teoría de optimización tales como la dualidad, la descomposición y la importancia de la convexidad y sus generalizaciones. Del mismo modo, la programación lineal es muy usada en la microeconomía y la administración de empresas, ya sea para aumentar al máximo los ingresos o reducir al mínimo los costos de un sistema de producción. Algunos ejemplos son la mezcla de alimentos, la gestión de inventarios, la cartera y la gestión de las finanzas, la asignación de recursos humanos y recursos de máquinas, la planificación de campañas de publicidad, etc.

Otros son: 

Optimización de la combinación de cifras comerciales en una red lineal de distribución de agua.

Aprovechamiento óptimo de los recursos de una cuenca hidrográfica, para un año con afluencias caracterizadas por corresponder a una determinada frecuencia.

Soporte para toma de decisión en tiempo real, para operación de un sistema de obras hidráulicas; Solución de transporte.

de

problemas

Ejemplo

Éste es un caso curioso, con solo 6 variables (un caso real de problema de transporte puede tener fácilmente más de 1.000 variables) en el cual se aprecia la utilidad de este procedimiento de cálculo. Existen tres minas de carbón cuya producción diaria es: 

La mina "a" produce 40 toneladas de carbón por día;

La mina "b" otras 40 t/día; y,

La Mina "c" produce 20 t/día.

En la zona hay dos centrales termoeléctricas que consumen: 

La central "d" consume 40 t/día de carbón; y,

La central "e" consume 60 t/día

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 cómo organizar el transporte, tal vez la mayoría opinaría que debe aprovecharse el precio ofrecido por el transportista que va de "a" a "d", porque es más conveniente que los otros, debido a que es el de más 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 programación lineal se tienen las siguientes ecuaciones:

Problema de transporte Consiste en decidir que cantidades se enviarán desde cada origen (fuente, oferta) a cada destino (demanda) de modo de minimizar el costo global. Formulación Transporte

del

Problema

de

Xi,j= Unidades a enviar desde la fuente i-ésima (i=1,...,m) al destino j-ésimo (j=1,...,n) Ci,j= Costo de enviar una unidad desde la fuente i-ésima (i=1,...,m) al destino j-ésimo (j=1,...,n)


:

:

:

:

Xm1 +…+ Xmj +…+ Xmn = bn Xij > 0 Si se satisface:

se dice que el problema está balanceado.

Problemas de Transporte no Balanceados ai = Disponibilidad (oferta) en unidades, de la fuente i-ésima (i=1,...,m) bj = Requerimiento (demanda) en unidades, del destino j-ésimo (j=1,...,n) Minimizar Z = C1,1X1,1 +...+ C1,jX1,j +...+ C1,nX1,n +...+ Ci,1Xi,1 +...+ Ci,jXi,j +...+ Ci,nXi,n +...+ Cm,1Xm,1 +...+ Cm,jXm,j +...+ Cm,nXm,n Todo lo disponible es enviado X11 +…+ X1j +…+ X1n = a1 :

:

:

:

Xi1 +…+ Xij +…+ Xin = ai :

:

:

:

Xm1 +…+ Xmj +…+ Xmn = am Todo lo enviado fue requerido X11 +…+ Xij +…+ Xmn = b1 :

:

:

:

X1j +…+ Xij +…+ Xmj = bj

Si la oferta total supera a la demanda total, se puede balancear el problema de transporte incorporando un punto de demanda artificial que tenga como demanda el excedente de oferta del problema. Como las asignaciones al punto artificial no son reales, se le asigna un costo unitario de cero. En general, el costo unitario no necesariamente debe ser igual a cero, basta con que tenga igual valor a todos los puntos de oferta disponibles de forma de no generar preferencias. Por simplicidad, se prefiere emplear cero


Solución Básica Factible NÚMERO DE VARIABLES BÁSICAS = m + n – 1, una solución básica factible no degenerada Los métodos más empleados obtener soluciones iniciales son: 

para

¿El método de la Esquina Noroeste: Proporciona una primera solución no muy cercana a la solución óptima. No tiene en cuenta los costos para hacer las asignaciones y es sencillo y fácil de hacer El método del Costo Mínimo: La aproximación es mejor que en el caso anterior, porque se concentra en las rutas de menor costo y es más elaborado que el método de la esquina noroeste El método de Vogel: Proporciona la mejor solución inicial, es una versión mejorada del método del costo mínimo , aunque es el más tedioso y requiere calcular multas (penalizaciones)

Método de la Esquina Noroeste (ENO) 1. Empezar en la celda situada en la esquina superior izquierda escribimos el número menor entre el correspondiente a la fila o a la columna.

2. Si hemos empleado el número de la fila, debemos tachar dicha fila y restar dicho número del número correspondiente a la columna, y viceversa. 3. Volvemos a situarnos en la esquina superior izquierda y repetimos el procedimiento. 4. Al finalizar, el número de celdas rellenadas debe ser igual al número de filas más el número de columnas menos uno. Construyendo la tabla (omitiendo los costos unitarios), se tiene: Cálculo de una solución inicial: método de la Esquina Noroeste Veamos el siguiente ejemplo


2. Empiece en la casilla que tenga el menor costo de toda la tabla, si hay empate, escoja arbitrariamente (Cualquiera de los empatados). 3. Asigne lo máximo posible entre la oferta y la demanda (El menor de los dos); y escriba el número y tachar la fila o columna correspondiente.

En el tabla se puede verificar las m+n1=6 asignaciones. La solución básica de inicio es la siguiente: x11=2; x12=3

Fíjese que el número de variables básicas es m+n-1=3+4-1=6 X12 = 10 X13 = 25 X21 = 45 X23 = 5 X32 = 10 X34 = 30

x22=1; x32=0 x33=2; x34=1

El resto de las variables vale cero.

El costo es: z=2x8+3x6+1x12+0x9+2x16+1x5=83 El costo total de $83

Método Costo Mínimo 1. Construya disponibilidades, costos

una tabla de requerimientos y

z = 1020


4. Vuelva colocarse en la celda de mínimo coste y continué hasta llegar a la solución. Construyendo la tabla para el ejemplo anterior (caso balanceado), se tiene: Cálculo de una solución inicial: coste mínimo

Problema de transbordo Es una aplicación del problema de transporte donde los orígenes y destinos pueden servir como puntos de transbordo, de tal manera que las unidades de producto se pueden enviar a través de orígenes y destinos intermedios hasta su punto final. Su respresentación es una red de arcos sean las aristas (orígenes entre sí) y los destinos esten unidos por las aristas. Definiremos los puntos de oferta como aquellos puntos desde donde sólo se puede despachar unidades. Similarmente, un punto de demanda es un punto donde sólo se pueden recibir unidades. Un punto de transbordo es punto que puede recibir y enviar unidades a otros puntos.


La fábrica desea satisfacer la demanda minimizando el costo total de envío. En este problema, Memphis y Denver son puntos de Ejemplo: Una fabrica posee dos plantas de manufactura, una en Memphis y otra en Denver. La planta de Memphis puede producir hasta 150 unidades al día, la de Denver hasta 200 unidades al día. Los productos son enviados por avión a Los Angeles y Boston. En ambas ciudades, se requieren 130 unidades diarias. Existe una posibilidad de reducir costos enviando algunos productos en primer lugar a New York o a Chicago y luego a sus destinos finales. Los costos unitarios de cada tramo factible se ilustran en la siguiente tabla:

y Boston son puntos de demanda de 130 unidades cada uno. Aquí representa •Memphis y Denver son ciudades origen. •LA y Boston son ciudades destino. •NY y Chicago son ciudades de trasbordo: son tanto origen como destino. •Como la oferta es superior a la demanda incluimos un demandante ficticio con costes nulos. •La máxima cantidad que puede pasar (entrar o salir) por cada punto de trasbordo es igual a la suma de las ofertas. Construyendo la tabla de transporte

De Denver se enviaron 130 unidades a Boston del total de 200 disponibles, quedando 70 asignadas al punto ficticio. oferta de 150 y 200 unidades respectivamente. New York y Chicago son puntos de transbordo. Los Angeles

Se enviaron desde el punto de transbordo en New York 130 unidades a Los Angeles. La asignación de 220 de


N.Y. a N.Y. significa que del total de unidades en tránsito, Para interpretar la solución anterior, es preciso revisar cuidadosamente las combinaciones asignadas. Vemos que de Memphis sólo se despacharon 130 unidades a New York del total de 150 disponibles, el excedente de 20 unidades está asignado al punto artificial (ficticio).

220 no pasaron por dicho nodo de transbordo, o bien, que no se emplearon 220 unidades de la capacidad del punto. Finalmente, la asignación de 350 del punto de transbordo de Chicago a

Chicago representa simplemente que no se empleó el punto de transbordo.


Universidad Bicentenaria de Aragua Sede San JoaquĂ­n de Turmero


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.