Universidad Nacional Mayor de San MarcosFacultad de Ingeniería de Sistemas e Informáticag
Investigación de Operaciones I
óProgramación Lineal
Docente : Lic. Gabriel Solari Carbajal
Programación Lineal
INTRODUCCION
Programación Lineal
INTRODUCCION.-Es considerado uno de los avances científicos másimportante de mediados del siglo XX S impacto haimportante de mediados del siglo XX. Su impacto hasido extraordinario.
L ió li l (PL) h i tLa programación lineal (PL) es una herramienta pararesolver problemas de optimización utilizando modelosmatemáticos donde las restricciones y función objetivomatemáticos donde las restricciones y función objetivoson funciones lineales.
Los problemas que se ajustan al modelo de la PL seLos problemas que se ajustan al modelo de la PL seconocen como problemas de programación lineal(PPL). La PL es una técnica poderosa para resolver
2
( ) p pPPL.
Programación Lineal
DEFINICION
Programación Lineal
DEFINICION.-La PL es una técnica que consiste en optimizar(ma imi ar o minimi ar) na f nción lineal llamada(maximizar o minimizar) una función lineal llamadafunción objetivo.
E tié d ti i l bú d dEntiéndase por optimizar como la búsqueda de unasolución (un valor máximo o mínimo) dentro de unaregión factible (conjunto de soluciones) delimitada porregión factible (conjunto de soluciones) delimitada porun conjunto de restricciones también lineales.
3
Programación Lineal
RESTRICCIONES
Programación Lineal
RESTRICCIONES.-1) Son funciones lineales de la forma:
inin22i11i b),,(xaxaxa ≥=≤+++ L
por ejemplo:por ejemplo:800x48x40 21 ≤+
2) Conforman el conjunto de soluciones factibles.
4
Programación Lineal
FUNCION OBJETIVO
Programación Lineal
FUNCION OBJETIVO.-1) Es una función lineal de la forma:
por ejemplo:nn2211 xcxcxcZOptimizar +++= L
por ejemplo:
21 x480x400ZMax +=
2) Permite localizar en el conjunto de solucionesfactibles, la solución óptima.
5
Programación Lineal
DEFINICION
Programación Lineal
DEFINICION.-
SOLUCIONREGION
FACTIBLE
SOLUCIONOPTIMA
FACTIBLE
6
Programación Lineal
PRINCIPIOS BÁSICOS DE LA PL
Programación Lineal
PRINCIPIOS BÁSICOS DE LA PL.-1) Proporcionalidad.-
Cada variable de decisión participa en formaproporcional sobre la función objetivo y las
t i irestricciones.a) Si un producto A ocupa 3 m3 de espacio de
almacenamiento entonces x productos ocupanalmacenamiento, entonces x productos ocupan3x m3. (Proporcionalidad).
7
Programación Lineal
PRINCIPIOS BÁSICOS DE LA PL
Programación Lineal
b) Si un producto A ocupa 3 m3 de espacio dealmacenamiento entonces prod ctos oc pan
PRINCIPIOS BÁSICOS DE LA PL.-
almacenamiento, entonces x productos ocupan3x m3, pero para cada 10 productosalmacenados se debe dejar un espacio de 0.5almacenados se debe dejar un espacio de 0.5m. (No hay proporcionalidad).
8
Programación Lineal
PRINCIPIOS BÁSICOS DE LA PL
Programación Lineal
2) Aditividad.-PRINCIPIOS BÁSICOS DE LA PL.-
Las variables de decisión en forma conjunta,participan aditivamente sobre la función objetivo yl t i ilas restricciones.a) Si un producto A ocupa 3 m3 de espacio de
almacenamiento y un producto B ocupa 5 m3almacenamiento y un producto B ocupa 5 m3,entonces x productos de A y y productos de Bocupan 3x + 5y m3. (Aditividad).p y ( )
9
Programación Lineal
PRINCIPIOS BÁSICOS DE LA PL
Programación Lineal
b) La combinación de 3 m3 de un producto A y 5 m3
de n prod cto B reaccionan q ímicamente
PRINCIPIOS BÁSICOS DE LA PL.-
de un producto B reaccionan químicamenteobteniéndose 4 m3 de un producto C. (No esaditivo)aditivo).
10
Programación Lineal
PRINCIPIOS BÁSICOS DE LA PL
Programación Lineal
3) Divisibilidad.-PRINCIPIOS BÁSICOS DE LA PL.-
Los valores de las variables de decisión puedendividirse en cualquier fracción tomando cualquier
l l tivalor real no negativo.a) X = cantidad de galones a producir de gasolina.
(Valor real ≥ 0) (Divisibilidad)(Valor real ≥ 0). (Divisibilidad).
11
Programación Lineal
PRINCIPIOS BÁSICOS DE LA PL
Programación Lineal
b) Y = número de camiones que se utilizan paratransportar gasolina (Programación entera) (La
PRINCIPIOS BÁSICOS DE LA PL.-
transportar gasolina. (Programación entera). (Lavariable no es divisible).
12
Programación Lineal
PRINCIPIOS BÁSICOS DE LA PL
Programación Lineal
4) Certidumbre.-PRINCIPIOS BÁSICOS DE LA PL.-
Los valores de los parámetros del modelo sonconstantes conocidas. Los parámetros permanecen
t l l d lcomo tal en el modelo.a) El precio unitario de un producto es c u.m. El
valor de c es constante para este modelovalor de c es constante para este modelo.(Certidumbre).
13
Programación Lineal
PRINCIPIOS BÁSICOS DE LA PL
Programación Lineal
b) El precio unitario de un producto no es un valorconocido ni predecible (Condición de
PRINCIPIOS BÁSICOS DE LA PL.-
conocido ni predecible. (Condición deincertidumbre o riesgo).
14
Programación Lineal
REPRESENTACIÓN MATEMÁTICA DE UN P P L
Programación Lineal
REPRESENTACIÓN MATEMÁTICA DE UN P.P.L..-1) Representación algebraica desarrollada.-
nn2211 xcxcxcZOptimizar +++= L
sujeto asujeto a
1nn1212111 b),,(xaxaxa ≥=≤+++ L
M2nn2222121 b),,(xaxaxa ≥=≤+++ L
mnmn22m11m b),,(xaxaxa ≥=≤+++ LM
15i0xi ∀≥
Programación Lineal
REPRESENTACIÓN MATEMÁTICA DE UN P P L
Programación Lineal
REPRESENTACIÓN MATEMÁTICA DE UN P.P.L..-2) Representación algebraica compacta.-
n
∑=
=n
1iiixcZOptimizar
sujeto asujeto a
j
m n
iji b),,(xa ≥=≤∑∑ j1j 1i
iji ),,(∑∑= =
i0xi ∀≥ 0i
16
Programación Lineal
REPRESENTACIÓN MATEMÁTICA DE UN P P L
Programación Lineal
REPRESENTACIÓN MATEMÁTICA DE UN P.P.L..-3) Representación matricial desarrollada.-
[ ] ⎥⎤
⎢⎡ 1xx
[ ]⎥⎥⎥
⎦⎢⎢⎢
⎣
=
n
2n21
x
xcccZOptimizarM
L
⎦⎣ nx
17
Programación Lineal
REPRESENTACIÓN MATEMÁTICA DE UN P P L
Programación Lineal
REPRESENTACIÓN MATEMÁTICA DE UN P.P.L..-sujeto a
⎥⎥⎤
⎢⎢⎡
≥≤⎥⎥⎤
⎢⎢⎡
⎥⎥⎤
⎢⎢⎡
2
1
2
1
n22221
n11211
bb
)(xx
aaaaaa
LL
⎥⎥
⎦⎢⎢
⎣
≥=≤⎥⎥
⎦⎢⎢
⎣⎥⎥
⎦⎢⎢
⎣ m
2
n
2
mn2m1m
n22221
b
),,(
xaaaMM
LMMM
⎦⎣
⎥⎤
⎢⎡
⎥⎤
⎢⎡ 0x1
⎥⎥⎥
⎦⎢⎢⎢
⎣
≥⎥⎥⎥
⎦⎢⎢⎢
⎣ 0
0x2MM
18
⎥⎦⎢⎣⎥⎦
⎢⎣ 0xn
Programación Lineal
REPRESENTACIÓN MATEMÁTICA DE UN P P L
Programación Lineal
REPRESENTACIÓN MATEMÁTICA DE UN P.P.L..-4) Representación matricial compacta.-
XcZOptimizar =sujeto asujeto a
b),,(XA ≥=≤
0X ≥
19
Programación Lineal
FORMAS DE UN P P L
Programación Lineal
FORMAS DE UN P.P.L..-1) Forma canónica de maximización.-
XcZMax =sujeto asujeto a
bXA ≤
0X ≥
20
Programación Lineal
FORMAS DE UN P P L
Programación Lineal
FORMAS DE UN P.P.L..-2) Forma estándar de maximización.-
XcZMax =sujeto asujeto a
bXA =
0X ≥
21
Programación Lineal
FORMAS DE UN P P L
Programación Lineal
FORMAS DE UN P.P.L..-3) Forma canónica de minimización.-
XcZMin =sujeto asujeto a
bXA ≤
0X ≥
22
Programación Lineal
FORMAS DE UN P P L
Programación Lineal
FORMAS DE UN P.P.L..-4) Forma estándar de minimización.-
XcZMin =sujeto asujeto a
bXA =
0X ≥
23
Programación Lineal
REGLAS DE EQUIVALENCIA
Programación Lineal
REGLAS DE EQUIVALENCIA.-Regla 1.-
a) Max Z = cX es equivalente a Min -Z = -cX.
ejemplo xx3x2ZMax +−=ejemplo 321 xx3x2ZMax +=
321 xx3x2ZMin −+−=−es equivalente a
b) Min Z = cX es equivalente a Max -Z = -cX.
iejemplo
es equivalente a321 x6x5x4ZMin −+=
321 x6x5x4ZMax +−−=−24
q 321
Programación Lineal
REGLAS DE EQUIVALENCIA
Programación Lineal
REGLAS DE EQUIVALENCIA.-Regla 2.-
a) La restricción j-ésima de la forma ∑cjixi ≤ bj esequivalente a la restricción -∑cjixi ≥ -bj.
ejemploes equivalente a
55x3x6x4 321 ≤−+55x3x6x4 −≥+−−es equivalente a
b) La restricción j-ésima de la forma ∑cjixi ≥ bj esequivalente a la restricción -∑cjixi ≤ -bj
55x3x6x4 321 ≥+
equivalente a la restricción ∑cjixi ≤ -bj.
ejemplo 31x7x2x3 321 ≥+−
25es equivalente a 31x7x2x3 321 −≤−+−
Programación Lineal
REGLAS DE EQUIVALENCIA
Programación Lineal
REGLAS DE EQUIVALENCIA.-Regla 3.-
La restricción j-ésima de la forma ∑cjixi = bj puededescomponerse como la intersección de dosrestricciones ∑cjixi ≤ bj y ∑cjixi ≥ bj.
ejemplo65119
j p
es equivalente a
6x5x11x9 321 =+−
q
6x5x11x9 321 ≤+−
6x5x11x9 ≥+26
6x5x11x9 321 ≥+−
Programación Lineal
REGLAS DE EQUIVALENCIA
Programación Lineal
REGLAS DE EQUIVALENCIA.-Regla 4.-
a) Si se tiene m restricciones de la forma AX ≤ b,pueden convertirse en igualdad mediante la adiciónde un vector Y, llamado vector de variables deholgura. El vector Y tiene m componentes nonegativasnegativas.ejemplo 15x5x6 21 ≤+
19x7x3 ≤se convierte a
19x7x3 21 ≤−
15xx5x6 321 =++27
321
19xx7x3 421 =+−
Programación Lineal
REGLAS DE EQUIVALENCIA
Programación Lineal
REGLAS DE EQUIVALENCIA.-b) Si se tiene m restricciones de la forma AX ≥ b,
p eden con ertirse en ig aldad mediante la resta depueden convertirse en igualdad mediante la resta deun vector Y’, llamado vector de variables de exceso.El vector Y’ tiene m componentes no negativasEl vector Y tiene m componentes no negativas.
ejemplo35x2x7 21 ≥+
se convierte a
21
21x9x8 21 ≥+se convierte a
35xx2x7 321 =−+21xx9x8 421 =−+
28
421
Programación Lineal
REGLAS DE EQUIVALENCIA
Programación Lineal
REGLAS DE EQUIVALENCIA.-Regla 5.-
Una variable no restringida xi, (xi ∈ ⟨-∞, +∞⟩), puedeescribirse como la diferencia de dos variables nonegativas. Sea xi una variable no restringida, luego
kji xxx −=
donde xj ≥ 0 y xk ≥ 0. Se cumple que:Si xi > 0 entonces xj > xki j k
Si xi = 0 entonces xj = xk
Si 0 t29
Si xi < 0 entonces xj < xk
Programación LinealProgramación Lineal
FORMULACION DE PROBLEMAS DEPROBLEMAS DE PROGRAMACION
LINEALLINEAL
30
Programación Lineal
PROBLEMA 01
Programación Lineal
PROBLEMA 01.-Se tiene que abastecer urgentemente una zonadeclarada en emergencia se disponen de dos tipos dedeclarada en emergencia, se disponen de dos tipos deaviones, el A y el B.
C t í ti f t l d b tiblCaracterísticas referente al consumo de combustible,aceite, carga útil y tiempo que demora de ida y vueltaestán en la tabla adjunta igualmente están en ella laestán en la tabla adjunta, igualmente están en ella ladisponibilidad de aceite y combustible de la base,plantear el problema con miras a que se transporte lamáxima carga posible con la gasolina y el aceitedisponible.
31
Programación LinealProgramación Lineal
A B DisponibilidadTIPO DE AVION
A B DisponibilidadGasolina/hora 8 12 800 galonesAceite/hora 0.25 0.2 40 galonesg
Horas de viaje 5 4Carga útil (kg) 400 480
32
Programación Lineal
SOLUCION
Programación Lineal
SOLUCION.-Variables de decisiónA : número de viajes del avión tipo A a la zona en
emergencia.B : número de viajes del avión tipo B a la zona en
emergencia.
33
Programación Lineal
Restricciones
Programación Lineal
Restricción por disponibilidad de gasolina:Restricciones
800B)12()4(A)8()5( ≤+
800B48A40 ≤+
Restricción por disponibilidad de aceite:40B)200()4(A)250()5( 40B)20.0()4(A)25.0()5( ≤+
40B80.0A25.1 ≤+
Restricciones de no negatividad:
0BA ≥34
0B,A ≥
Programación Lineal
Función objetivo
Programación Lineal
B480A400ZMax +=
Función objetivo
B480A400ZMax +
35
Programación Lineal
El programa queda:
Programación Lineal
B480A400ZMax +=
El programa queda:
B480A400ZMax +
sujeto a800B48A40 ≤ 800B48A40 ≤+
40B80.0A25.1 ≤+
0B,A ≥
36
Programación Lineal
PROBLEMA 02
Programación Lineal
PROBLEMA 02.-Se desea averiguar las cantidades de ciertos alimentosq e deben comerse para satisfacer ciertosque deben comerse para satisfacer ciertosrequerimientos nutritivos a un costo mínimo.Supongamos que las consideraciones se limitan aSupongamos que las consideraciones se limitan aleche, carne, huevos y a las vitaminas A, C y D.
Supongamos que el número de miligramos deSupongamos que el número de miligramos devitaminas contenidas en cada unidad de alimentos seda en la tabla siguiente:
37
Programación LinealProgramación Lineal
VITAMINAMínimo
requerido a Galón de
l hLibra de Docena de
h
A 1 1 10 1C 100 10 10 50
qdiario (mg)
leche carne huevos
C 100 10 10 50D 10 100 10 10
Costo en soles 40 44 20
38
Programación Lineal
SOLUCION
Programación Lineal
SOLUCION.-
Variables de decisiónL : cantidad de leche en galonesC : cantidad de carne en librasH : cantidad de huevos por docena
39
Programación Lineal
Restricciones
Programación Lineal
Restricción por requerimiento mínimo de vitamina A:Restricciones
1H10CL ≥++
Restricción por requerimiento mínimo de vitamina C:Restricción por requerimiento mínimo de vitamina C:50H10C10L100 ≥++
Restricción por requerimiento mínimo de vitamina D:10H10C100L10 ≥++
Restricciones de no negatividad:
0HCL ≥40
0H,C,L ≥
Programación Lineal
Función objetivo
Programación Lineal
H20C44L40ZMin ++=
Función objetivo
H20C44L40ZMin ++
41
Programación Lineal
El programa queda:
Programación Lineal
El programa queda:
H20C44L40ZMin ++=
sujeto a
H20C44L40ZMin ++
110C 1H10CL ≥++50H10C10L100 ≥++
0HCL ≥
10H10C100L10 ≥++
0H,C,L ≥
42
Programación Lineal
PROBLEMA 03
Programación Lineal
PROBLEMA 03.-La compañía Mauser, fabricante de fusiles automáticos,ti 3 d t t l l f ttiene 3 departamentos en los cuales se manufacturansus modelos S-1000 y S-2000, las capacidadesmensuales son las siguientes:
Requerimientos unitarios de tiempo (en horas)
mensuales son las siguientes:
de tiempo (en horas)
DepartamentosHoras disponibles en el siguiente mes
Modelo S-2000
Modelo S-1000
Departamento 1 4 2 1,600Departamento 2 2.5 1 1,200
43Departamento 3 4.5 1.5 1,600
Programación Lineal
La utilidad del modelo S 1000 es de 40 dólares por
Programación Lineal
La utilidad del modelo S-1000 es de 40 dólares porunidad y la del modelo S-2000 es de 10 dólares porunidad; suponiendo que la compañía puede venderunidad; suponiendo que la compañía puede vendercualquier cantidad de estos productos, debido acondiciones favorables de mercado.
Determinar el número de unidades de cada modelo quese debe de fabricar de manera que se maximice lautilidad total.
44
Programación Lineal
PROBLEMA 04
Programación Lineal
Un barco tiene tres bodegas: en la proa, en el centro yen la popa Los límites de capacidad son:
PROBLEMA 04.-
en la popa. Los límites de capacidad son:
C id dCapacidadPeso Volumen(Ton) (Pi 3)
Bodega(Ton) (Pies3)
Proa 2,000 100,000Centro 3 000 135 000Centro 3,000 135,000Popa 1,500 30,000
45
Programación Lineal
Se ofrecen los siguientes cargamentos y los dueños de
Programación Lineal
Se ofrecen los siguientes cargamentos y los dueños delos barcos pueden aceptar el total o una porcióncualquiera de cada artículo.cualquiera de cada artículo.
Cantidad GanaciaPeso Vol/Ton por Ton(Ton) (Pies3) ($)
Artículo( )
A 6,000 60 6B 4,000 50 8C 2,000 25 5
46
Programación Lineal
Para preservar el equilibrio de barco el peso en cada
Programación Lineal
Para preservar el equilibrio de barco, el peso en cadabodega debe ser proporcional a la capacidad entoneladas.toneladas.
¿Cómo debe distribuirse la carga para hacer máxima laganancia?ganancia?
47
Programación Lineal
La siguiente gráfica permite visualizar el problema e
Programación Lineal
La siguiente gráfica permite visualizar el problema eidentificar las variables de decisión.
PROA
A xA1
xA2xA3 PROA
B
A2A3
xB1xB2
CENTRO
B xB2xB3
xC1 x
CC1 xC2
xC3
48POPA
Programación Lineal
SOLUCION
Programación Lineal
SOLUCION.-Variables de decisiónxij : cantidad en toneladas del artículo i que se
transporta en la bodega j.i = A, B y Cj = 1 (Proa), 2 (Centro) y 3 (Popa)
EjemploxC2 : cantidad de toneladas del artículo C que sexC2 : cantidad de toneladas del artículo C que se
transporta en la bodega 2 (Centro)
49
Programación Lineal
Restricciones
Programación Lineal
Restricciones por límite de cantidad de artículos:0006
Restricciones
000,6xxx 3A2A1A ≤++000,4xxx 3B2B1B ≤++ 3B2B1B
000,2xxx 3C2C1C ≤++
Restricciones por límite de capacidad de peso delbarco:
000,2xxx 1C1B1A ≤++ 000,2xxx 1C1B1A ≤++000,3xxx 2C2B2A ≤++5001
50500,1xxx 3C3B3A ≤++
Programación Lineal
Restricciones por límite de capacidad de volumen del
Programación Lineal
Restricciones por límite de capacidad de volumen delbarco:
000,100x25x50x60 1C1B1A ≤++ ,1C1B1A
000,135x25x50x60 2C2B2A ≤++00030255060 ≤++ 000,30x25x50x60 3C3B3A ≤++
Restricción para preservar el equilibrio del barco:
500,1xxx
000,3xxx
000,2xxx 3C3B3A2C2B2A1C1B1A ++
=++
=++
,,,Restricciones de no negatividad:
0≥ i∀ j∀51
0xij ≥ i∀ j∀
Top Related