Sunteți pe pagina 1din 56

Optimizacin lineal

Ezequiel Lpez Rubio


Departamento de Lenguajes y
Ciencias de la Computacin
Universidad de Mlaga
Sumario
El modelo de programacin lineal
Formulacin de modelos
Mtodo grfico

El modelo de
programacin lineal
Introduccin
Definicin: Se dice que una funcin f: R
n
R es lineal sii
para algn conjunto de constantes {c
1
,c
2
,...,c
n
} se tiene
que:
( )
n n n
x c x c x c x x x f + + + = ... ,..., ,
2 2 1 1 2 1
Ejemplos: f(x,y)=x2y es lineal, pero f(x,y)=x
2
+2y no es
lineal.
Definicin: Sea f: R
n
R una funcin lineal, y beR una
constante. Entonces se dice que las desigualdades
f(x
1
,...,x
n
)>b, f(x
1
,...,x
n
)sb, son desigualdades lineales, y
que la igualdad f(x
1
,...,x
n
)=b es una igualdad lineal. En
general nos referiremos a las tres con el nombre de
restricciones lineales
Concepto de problema de
programacin lineal
Definicin: Un problema de programacin lineal es
un problema de optimizacin en el que:
Se debe maximizar (o minimizar) una funcin lineal de las
variables de decisin que se llama funcin objetivo
Los valores de las variables deben satisfacer un conjunto
de restricciones lineales
Frecuentemente nos encontraremos que en el
problema de programacin lineal aparecen tambin
restricciones de signo para las variables, del tipo
x
i
>0. En realidad estas restricciones son un tipo de
restricciones lineales.
Supuestos de la PL
Continuidad
Se permiten valores fraccionarios de las variables de
decisin
Proporcionalidad
Relaciones de proporcionalidad lineal
Aditividad
la contribucin de cada variable es independiente de los
valores de las otras. El total de todas las actividades es la
suma de cada actividad individual
No negatividad de las variables
Determinismo
Los coeficientes son conocidos con exactitud
Forma general de un problema
de programacin lineal
La forma ms general de un problema de
programacin lineal ser:
no) o aparecer pueden (que 0 ,...,
~ ...
...
~ ...
: a Sujeto
... minimizar) (o Maximizar
1
1 1
1 1 1 11
1 1
>
+ +
+ +
+ +
n
m n mn m
n n
n n
x x
b x a x a
b x a x a
x c x c
donde el smbolo ~ puede denotar a >, s o =.
Forma matricial
A los coeficientes de la funcin objetivo (c
i
) se les llama
costes. A los trminos independientes de las
restricciones (b
i
), recursos. A los elementos de la matriz
de coeficientes que define las restricciones (a
ij
),
coeficientes tcnicos. Para simplificar la notacin, si
llamamos c al vector de costes, b al vector de recursos,
y A a la matriz de coeficientes tcnicos, podemos
escribir el problema en la llamada forma matricial:
no) o aparecer (puede 0
~
: a Sujeto
minimizar) (o Maximizar
> x
b x
x c
A
T
Regin factible
Mientras no se indique lo contrario, consideraremos que
las restricciones del tipo x
i
>0 se incluyen (si aparecen en
el problema) dentro del conjunto de restricciones Ax ~ b,
con lo cual el problema quedara:
b x
x c
~ a Sujeto
minimizar) (o Maximizar
A
T
Definicin: Dado un problema de programacin lineal,
llamaremos regin factible del problema y la
denotaremos por S al conjunto de puntos que cumplen
todas las restricciones del problema, es decir:
} ~ | { b x R x A S
n
e =
Soluciones ptimas
Definicin: Dado un problema de programacin lineal,
diremos que un punto x
0
eS es una solucin ptima sii
se cumple que f(x
0
)sf(x) xeS (para el caso de
minimizar) o bien f(x
0
)>f(x) xeS (para el caso de
maximizar). En tal caso, a f(x
0
) se le llamar valor
ptimo de la funcin objetivo.
Si existe una sola solucin ptima, diremos que el
problema tiene solucin nica. Si no existe solucin
ptima, pero S=C, diremos que el problema tiene
solucin ilimitada. Si S=C, diremos que el problema no
tiene solucin.
Formulacin de
modelos
Introduccin
Cuando se desea resolver un problema del
mundo real, se formula en primer lugar un
modelo
Un modelo es una simplificacin de la
realidad que se intenta que sea lo
suficientemente exacta como para poder
extraer de l conclusiones tiles
En particular nos interesan los modelos
cuantitativos, en los que la realidad es
modelada mediante nmeros
Modelos cuantitativos
En los modelos cuantitativos para problemas de
optimizacin intervienen:
Variables de decisin, cuyos valores numricos
finales nos proporcionan la solucin
La funcin objetivo, que es una cantidad que se
desea maximizar (beneficio, rendimiento, etc.) o
minimizar (coste, tiempo,...). En el caso de minimizar
costes, hay que tener en cuenta que los costos fijos
no se incluyen, ya que no dependen de la decisin
que se tome
Un conjunto de restricciones, las cuales definen qu
soluciones son posibles (factibles)
Gua para la formulacin de
modelos
Seguiremos estos pasos:
Expresar cada restriccin verbalmente, poniendo especial
cuidado en distinguir entre requerimientos (>), limitaciones
(s) o exigencias de igualdad (=).
Expresar el objetivo verbalmente
Identificar verbalmente las variables de decisin
Expresar las restricciones mediante smbolos, es decir, en
trminos de las variables de decisin
Expresar la funcin objetivo simblicamente
Comprobar la coherencia de las unidades en las
restricciones y la funcin objetivo
Ejemplo
Ejemplo: Una empresa dedicada a la
fabricacin de juguetes de madera produce
dos tipos de juguetes: coches y trenes
Los coches se venden a 27 y usan 10 de
materiales. Por cada coche hay un coste de
mano de obra de 14
Los trenes se venden a 21 , usan 9 de
material y el coste de mano de obra es 10

Ejemplo
La produccin de ambos juguetes necesita dos
tipos de trabajo: carpintera y acabado
Coche: 2 horas acabado, 1 hora carpintera
Tren: 1 hora acabado, 1 hora carpintera
La empresa dispone de un mximo de 80 horas
semanales de carpintera y 100 horas semanales de
acabado.
La demanda de trenes es ilimitada, pero la de
coches est limitada a 40 unidades a la semana
La empresa desea maximizar el beneficio
Ejemplo
Solucin:
Variables de decisin (deben describir las
decisiones que se van a tomar):
x
C
=n de coches producidos cada semana
x
T
=n de trenes producidos cada semana
Funcin objetivo:
Ganancias semanales: 27x
C
+21x
T

Costes semanales:
Materiales: 10x
C
+9x
T

Mano de obra: 14x
C
+10x
T

Ejemplo
Funcin objetivo (hay que maximizarla):
( )
T C T C T C T C
x x x x x x x x f 10 14 9 10 21 27 , + =
( )
T C T C
x x x x f 2 3 , + =
Restricciones:
Cada semana no se pueden usar ms de 100 horas de
acabado: 2x
C
+x
T
s100
Cada semana no se pueden usar ms de 80 horas de
carpintera: x
C
+x
T
s80
La demanda de coches est limitada: x
C
s40
La produccin no puede ser negativa: x
C
>0, x
T
>0
Ejemplo
Coherencia de unidades:
Las variables de decisin x
c
, x
T
estn en
horas/semana
La funcin objetivo est en /semana
Las restricciones estn expresadas en horas
Se observa que estamos usando coherentemente
las unidades
Mtodo grfico
Introduccin
Un primer intento de resolucin de los problemas de
programacin lineal es el mtodo grfico. Su inters
es limitado, ya que con l slo podemos resolver
problemas de dos variables (a lo sumo tres)
Definicin: Sea una funcin f: R
n
R. Llamamos
contorno k-simo de f y denotamos C
k
al conjunto
de puntos tales que f(x)=k, donde keR
Para el caso de una funcin lineal de dos variables,
los contornos que se generan variando k forman un
haz de rectas paralelas
Algoritmo
El mtodo grfico consta de los siguientes pasos:
Dibujar la regin factible, S
Dibujar un contorno de la funcin objetivo
Determinar la direccin de crecimiento de los contornos
Una vez determinada la direccin de crecimiento de
los contornos, la solucin estar en el ltimo punto
de la regin factible que toquen los contornos antes
de abandonarla, siguiendo la direccin y sentido de
crecimiento o decrecimiento segn si nuestro
objetivo es maximizar o minimizar, respectivamente
Determinacin del crecimiento
Para determinar la direccin de crecimiento
de los contornos, lo podemos hacer de dos
formas:
Dibujando dos contornos
Dibujando el vector gradiente, que como
sabemos marca siempre la direccin y sentido de
crecimiento de la funcin:
|
|
.
|

\
|
c
c
c
c
=
y
f
x
f
f grad ,
Ejemplo
Vamos a resolver este problema:
Maximizar f(x,y)=x

+ 6y sujeto a:
2 x

+ y

s 6
-x

+ y

s 0
x, y > 0
Si dibujamos la regin factible S, el contorno
0 y la direccin de crecimiento de la funcin
objetivo obtenemos la siguiente grfica
Ejemplo
0 1 2 3 4 5
0
1
2
3
4
5
y

S
(2,2)
C
0

grad f
x

Ejemplo
En la grfica podemos ver que la funcin objetivo
aumenta su valor hacia arriba. La solucin del
problema de minimizar estar en el primer punto de
S que toquen los contornos al aumentar el valor (en
este caso, el origen de coordenadas), mientras que
la solucin del problema de maximizar estar en el
ltimo punto que toquen, en este caso el (2,2).
Por tanto, la solucin ptima de este problema es el
punto (2,2) y el valor ptimo de la funcin objetivo
es f(2,2)=14. En este caso la solucin ptima es
nica y adems S tiene rea finita (est acotado),
pero hay otros casos, como se ve a continuacin
Solucin ilimitada, S no
acotado
S
Solucin nica, S no acotado
S
Infinitas soluciones, S no
acotado
S
Infinitas soluciones, S
acotado
S
Sin solucin (S=C)
Ejemplo
Problema:
Maximizar x
1
+ 2x
2
sujeto a:
-1/2 x
1
+ x
2
s 1
x
1
+ x
2
s 2
x
1
, x
2
> 0



Representacin grfica
0 1 2 3 4 5
0
1
2
3
4
5
x1
x2
A
C
D
E
F
Puntos extremos
Punto x1 x2 S1 S2 Z
A 0.0 0.0 1.0 2.0 0.0
B inf inf 0.0 -inf inf
C 0.0 1.0 0.0 1.0 2.0
D 2.0 0.0 2.0 0.0 2.0
E 0.0 2.0 -1.0 0.0 4.0
F 0.7 1.3 0.0 0.0 3.3
Ejemplo
Problema:
Maximizar x
1
+ 6x
2
sujeto a:
-2x
1
+ x
2
s 4
-x
1
+ x
2
s 1
2x
1
+ x
2
s 6
x
1
, x
2
> 0


Representacin grfica
0 1 2 3 4 5 6 7 8 9 10
0
1
2
3
4
5
6
7
8
9
10
x1
x2
A
C
E
F
G
I
J
Puntos extremos
Punto x1 x2 S1 S2 S3 Z
A 0.0 0.0 4.0 1.0 6.0 0.0
B inf inf 0.0 -inf -inf inf
C 0.0 4.0 0.0 -3.0 2.0 24.0
D inf inf inf 0.0 -inf inf
E 0.0 1.0 3.0 0.0 5.0 6.0
F 3.0 0.0 10.0 4.0 0.0 3.0
G 0.0 6.0 -2.0 -5.0 0.0 36.0
H -3.0 -2.0 0.0 0.0 14.0 -15.0
I 0.5 5.0 0.0 -3.5 0.0 30.5
J 1.7 2.7 4.7 0.0 0.0 17.7
Ejemplo
Problema:
Maximizar 5x
1
+ 4x
2
sujeto a:
3x
1
+ 3x
2
s

10
12x
1
+ 6x
2
s 24
x
1
, x
2
> 0



Representacin grfica
0 1 2 3 4 5
0
1
2
3
4
5
x1
x2
A B
C
D
E
F
Puntos extremos
Punto x1 x2 S1 S2 Z
A 0.0 0.0 10.0 24.0 0.0
B 3.3 0.0 0.0 -16.0 16.7
C 0.0 3.3 0.0 4.0 13.3
D 2.0 0.0 4.0 0.0 10.0
E 0.0 4.0 -2.0 0.0 16.0
F 0.7 2.7 0.0 0.0 14.0
Ejemplo
Problema:
Maximizar 20x
1
+ 24x
2
sujeto a:
3x
1
+ 6x
2
s

60
4x
1
+ 2x
2
s 32
x
1
+ 2x
2
s 16
x
1
, x
2
> 0


Representacin grfica
x2
0 2 4 6 8 10 12 14 16 18 20
0
2
4
6
8
10
12
14
16
18
20
x1
A B
C
D
E
F
G H
J
Puntos extremos
Punto x1 x2 S1 S2 S3 Z
A 0.0 0.0 60.0 32.0 16.0 0.0
B 20.0 0.0 0.0 -48.0 -4.0 400.0
C 0.0 10.0 0.0 12.0 -4.0 240.0
D 8.0 0.0 36.0 0.0 8.0 160.0
E 0.0 16.0 -36.0 0.0 -16.0 384.0
F 16.0 0.0 12.0 -32.0 0.0 320.0
G 0.0 8.0 12.0 16.0 0.0 192.0
H 4.0 8.0 0.0 0.0 -4.0 272.0
I inf -inf inf -inf inf -inf
J 5.3 5.3 12.0 0.0 0.0 234.7
Ejemplo
Problema:
Maximizar 6x
1
+ 3x
2
sujeto a:
-x
1
+ x
2
s 1
2x
1
+ x
2
s 6
x
1
, x
2
> 0



Representacin grfica
0 1 2 3 4 5 6 7 8 9 10
0
1
2
3
4
5
6
7
8
9
10
x1
x2
A
C
D
E
F
Puntos extremos
Punto x1 x2 S1 S2 Z
A 0.0 0.0 1.0 6.0 0.0
B inf inf 0.0 -inf inf
C 0.0 1.0 0.0 5.0 3.0
D 3.0 0.0 4.0 0.0 18.0
E 0.0 6.0 -5.0 0.0 18.0
F 1.7 2.7 0.0 0.0 18.0
Ejemplo
Problema:
Maximizar x
1
+ x
2
sujeto a:
5x
1
- x
2
> 0
x
1
- 4 x
2
s 0
x
1
, x
2
> 0



Representacin grfica
0 1 2 3 4 5 6 7 8 9 10
0
1
2
3
4
5
6
7
8
9
10
x1
x2
A=B=D=F
Puntos extremos
Punto x1 x2 S1 S2 Z
A 0.0 0.0 0.0 0.0 0.0
B 0.0 0.0 0.0 0.0 0.0
C inf inf 0.0 inf inf
D 0.0 0.0 0.0 0.0 0.0
E inf inf inf 0.0 inf
F 0.0 0.0 0.0 0.0 0.0
Ejemplo
Problema:
Maximizar 6x
1
+ x
2
sujeto a:
-x
1
+ x
2
> 1
2x
1
+ x
2
s 6
x
1
, x
2
> 0



Representacin grfica
0 1 2 3 4 5 6 7 8 9 10
0
1
2
3
4
5
6
7
8
9
10
x1
x2
A
C
D
E
F
Puntos extremos
Punto x1 x2 S1 S2 Z
A 0.0 0.0 -1.0 6.0 0.0
B inf inf 0.0 -inf inf
C 0.0 1.0 0.0 5.0 1.0
D 3.0 0.0 -4.0 0.0 18.0
E 0.0 6.0 5.0 0.0 6.0
F 1.7 2.7 0.0 0.0 12.7
Ejemplo
Problema:
Maximizar x
1
+ x
2
sujeto a:
x
1
- x
2
> 6
2x
1
- 2 x
2
s 10
x
1
, x
2
> 0



Representacin grfica
0 1 2 3 4 5 6 7 8 9 10
0
1
2
3
4
5
6
7
8
9
10
x1
x2
A B D
Puntos extremos
Punto x1 x2 S1 S2 Z
A 0.0 0.0 -6.0 10.0 0.0
B 6.0 0.0 0.0 -2.0 6.0
C inf inf 0.0 -2.0 inf
D 5.0 0.0 -1.0 0.0 5.0
E inf inf -1.0 0.0 inf
F inf inf -6.0 10.0 inf
Lectura complementaria
http://www.angelfire.com/ak5/invo1_escom/5_optimizaci
on_lineal.pdf
http://www.angelfire.com/ak5/invo1_escom/6_Planteami
entos.pdf
http://www.angelfire.com/ak5/invo1_escom/clase7.pdf
http://www.angelfire.com/ak5/invo1_escom/clase8.pdf
http://www.angelfire.com/ak5/invo1_escom/clase9.pdf
http://www.angelfire.com/ak5/invo1_escom/clase10.pdf
http://www.angelfire.com/ak5/invo1_escom/clase11.pdf

S-ar putea să vă placă și