Está en la página 1de 9

Optimització Curs 2006/2007

Assignatura d’Estadística, UAB
LI!O " #art$ %
Intr&ducción a LI!O
Una de las características más potentes de LI!O, es el lenguaje de modelación matemática. Este
lenguaje permite expresar el problema de una manera natural, similar a la notación matemática
standard. Además de poder ingresar cada término de cada restricción explícitamente, LIN!
permite expresar una serie de restricciones similares en una sola sentencia compacta.
E'$mp(& %
Una "ábrica #ue tiene dos plantas locali$adas en las ciudades A % &, necesita suministrar un
determinado producto a tres almacenes situados en las ciudades ', ( % E. Las plantas A % & pueden
suministrar semanalmente )* % +* unidades del producto, respecti,amente. Los almacenes
necesitan semanalmente -*, .* % )* unidades del producto para satis"acer su demanda. Los costes
de transporte por unidad de producto se recogen en la tabla siguiente/
Ciuda
d
' ( E
A . 0 -
B 1 2 3
El problema consiste en determinar cuántas unidades del producto se deberán transportar desde
cada planta a cada almacén, de "orma #ue se minimice el coste total de transporte.
(enotando por A', A(, AE las unidades en,iadas de la planta A 4acia los almacenes ', ( % E,
respecti,amente, % por &', &(, &E las unidades en,iadas de la planta & 4acia los almacenes ', ( %
E, respecti,amente, la "ormulación del problema de programación lineal asociado es la siguiente/
5inimi$ar .A'60A(6-AE61&'62&(63&E
7ujeto a/
A'6A(6AE89 )*
&'6&(6&E89+*
A'6&':9-*
A(6&(:9.*
AE6&E:9)*
A', A(, AE, &', &(, &E:9*
Las dos primeras restricciones imponen #ue la cantidad suministrada en las plantas A
% & no supere su disponibilidad semanal, mientras #ue las tres siguientes imponen #ue
se cubra el re#uerimiento mínimo en los almacenes ', ( % E.
;
)&d$(& $n LI!O
La escritura del modelo en LIN! se basa en las siguientes reglas/
a< La "unción objeti,o ,a precedida de *ma+,- o *min,- % "inali$a en *.- al igual #ue cada
una de las restricciones.
b< Las desigualdades pueden escribirse de "orma estricta, aun#ue LIN! las interpreta siempre
como <= o >=, seg=n el caso.
c< No es necesario introducir las restricciones de no negati,idad, si las 4ubiera, %a #ue LIN!
las considera por de"ecto.
d< Es necesario indicar el producto con */-0
e< LIN! no distingue entre ma%=sculas % min=sculas, por lo #ue es lo mismo E7>A(I7>I'A
#ue estadística % #ue Es>A(ísti'A.
"< Los nombres de las ,ariables deben comen$ar con un carácter al"abético ?A@A<, los
siguientes caracteres pueden ser al"abéticos, numéricos o subra%ado ?B<. Los nombres
pueden ser de 4asta 03 caracteres de longitud.
E'$rcici& %
Abra el editor del LIN! % escriba el modelo matemático del problema del ejemplo ;, teniendo en
cuenta las reglas del LIN!.
El modelo puede escribirse como sigue/
MIN = 5*AC+3*AD+4*AE+6*BC+7*BD+2*BE;
AC+AD+AE<80;
BC+BD+BE<90;
AC+BC>40;
AD+BD>50;
AE+BE>80;
Nota/
a< 'ada línea en LIN! "inali$a con un punto % coma. Los punto % coma son re#ueridos. El
modelo no se resol,erá si "alta alg=n punto % coma.
b< Una expresión puede abarcar mas de una línea, por ejemplo/
MIN = 5*AC+3*AD+4*AE
+6*BC+7*BD+2*BE;
7e pueden introducir comentarios, #ue serán ignorados por LIN!, c&m$nzand& c&n un sign& d$
$+c(amación 1 2 t$rminand& c&n un punt& 2 c&ma0
Los comentarios también pueden ocupar ,arias líneas.
Cor ejemplo/
AC+AD+AE<80; 1 Est& $s
Un c&m$ntari&.
AC+AD 1 Est& $s un c&m$ntari& $n $( m$di& d$ una r$stricción. +AE<80 ;
3
Además se puede asignar un nombre a cada restricción, como en el LIN(!.
Cor ejemplo, escribiendo
34%5 A'6A(6AE89 )*
3425 &'6&(6&E89+*
La primera restricción de nuestro ejemplo tiene %a el nombre D; % la segunda el nombre D3.

El siguiente paso es pedirle a LIN! #ue resuel,a el problema. Cara ello es su"iciente con 4acer
clic sobre el botón 7ol,e ?el #ue tiene "orma de diana, como en el LIN(!<, o bien seleccionar esta
opción en la barra de men=s/
LINGO intentará primero compilar el modelo formulado (para determinar si está bien planteado o no) y, en el caso
de que la formulacin sea incorrecta (ya sea desde un punto de !ista matemático o de sinta"is), nos de!ol!erá una
!entana con la si#uiente mensa$e%
LINGO error message
&
7i no 4a% errores en la "ormulación del problema durante la etapa de compilación, LIN! in,ocará
al módulo de resolución adecuado para buscar la solución óptima.
En la ,entana E7>A>U7F de LIN! ?,entana de estado< se puede monitorear el proceso de
resolución % las dimensiones del modelo/
El recuadro 67aria8($sG muestra $( num$r& t&ta( d$ 9aria8($s del modelo, las ,ariables #ue son
no lineales % las enteras. Una ,ariable es considerada no lineal si es parte de una restricción no
0
lineal en el modelo. 5ientras mas ,ariables no lineales % enteras contenga el modelo, mas di"ícil
será resol,erlo de "orma óptima en un tiempo ra$onable. Los modelos lineales puros sin ,ariables
enteras tienden a resol,erse mas rápidamente.
La cuenta de !ariables no incluye las que LINGO determina como de !alor fi$o, por e$emplo% dadas
las restricciones
' ( )*
' + , ( -*
LINGO determina por la primera restriccin que ' está fi$a en ), y, usando esta informacin,
deduce que , está fi$a en .& ' e , serán entonces e"cluidas del modelo&
En el recuadro 6C&nstraintsG se muestra la cantidad t&ta( d$ r$stricci&n$s % el n=mero de éstos
#ue son no lineales. Una restricción es considerada no lineal si una o mas ,ariables aparecen de
"orma no lineal en la restricción.
El recuadro 6&nz$r&sG muestra $( t&ta( d$ c&$:ici$nt$s distint&s d$ c$r& #ue aparecen en el
modelo % el n=mero de estos #ue aparecen en ,ariables no lineales.
El recuadro 6!$n$rat&r )$m&r2 Us$d6 muestra (a cantidad d$ m$m&ria ;u$ $st< uti(izand&
LI!O para r$s&(9$r $( m&d$(&.
El recuadro GE(aps$d 4untim$G muestra $( ti$mp& t&ta( uti(izad& para generar % resol,er el
modelo.
El recuadro 6Optiniz$r =tatus6 muestra $( $stad& actua( d$( &ptimizad&r/
Camp& >$scripción
7tate Estado de la solución actual, puede ser
Global optimumG, GLocal optimumG,
GHeesibleG, GUnboundedG, GInterruptedG,
GUndeterminedG
Iterations Numero de iteraciones
In"easibilit% 'antidad de ,eces #ue es ,iolada una
restricción
!bjeti,e Ialor actual de la "unción objeti,o
&est IC Ialor de la "unción objeti,o de la mejor
solución entera encontrada ?solo en
modelos de programación entera<
IC &ound Límite teórico de la "unción objeti,o para
modelos de programación entera.
-
'uando LIN! termine de resol,er el modelo, creará una nue,a ,entana con el título Solution
Report (Informe de la solución), conteniendo (&s d$ta(($s d$ (a s&(ución?
Costo /educido%
En el in"orme de la solución se encuentra un ,alor de costo reducido para cada ,ariable. 'omo
4emos ,isto en LIN(!, 4a% dos interpretaciones ,álidas % e#ui,alentes para el costo reducido.
a< Crimero se puede interpretar como el monto por el cual el coe"iciente objeti,o de la ,ariable
se debería incrementar antes de 4acerse pro,ec4oso darle a la ,ariable en cuestión un ,alor
positi,o en la solución óptima. Cor ejemplo, si la ,ariable tu,iera un costo reducido de ;*,
el coe"iciente objeti,o de esta ,ariable deberá incrementarse en ;* unidades en un problema
de maximi$ación o disminuirse en ;* unidades en un problema de minimi$ación para
con,ertirse en una alternati,a atracti,a. Una ,ariable en la solución óptima
automáticamente tiene un costo reducido de *.
b< 7egundo, el costo reducido de una ,ariable se puede interpretar como el monto de
penali$ación #ue 4abrá #ue pagar por introducir una unidad de esa ,ariable en la solución.
'omo antes, si la ,ariable tu,iera un costo reducido de ;*, 4abrá #ue pagar una penali$ación
de ;* unidades para introducir la ,ariable en la solución. En otras palabras, el ,alor objeti,o
caerá en ;* unidades en un modelo de maximi$ación, o se incrementará ;* unidades en un
problema de minimi$ación.
Los costos reducidos son ,álidos sólo dentro de un rango de ,alores.
.
0ol#ura o e"cedente
La columna 1lac2 or 1urplus en el in"orme de la solución de LIN! ?como en LIN(!< muestra
#ue tan cerca se está de satis"acer una restricción como una igualdad. Esta cantidad, en
restricciones de menor o igual, se denomina generalmente 4olgura. En restricciones de ma%or o
igual se la llama excedente.
7i una restricción es exactamente satis"ec4a como una igualdad, la 4olgura o excedente ,aldrá cero.
7i una restricción es ,iolada, este ,alor será negati,o. Esto a%uda a encontrar las restricciones
,ioladas cuando en el modelo no existe un conjunto de ,alores para las ,ariables #ue satis"acen
simultáneamente todas las restricciones.
3recio 4ual&
El in"orme de la solución de LIN! también da un ,alor de precio dual para cada restricción. El
precio dual se puede interpretar como el monto en #ue la "unción objeti,o mejorará si el segundo
miembro de la restricción se incrementase una unidad.
Al igual #ue los costos reducidos, los precios duales son ,álidos sólo dentro de un rango de ,alores.
'omo puede obser,arse en la ,entana de estado del LIN!, para minimi$ar los costes de transporte
4an de en,iarse 0* unidades de la planta A al almacén ' % el resto, es decir .*, al almacén (.
En la planta & se 4a de asignar ;* unidades al almacén ' % el resto ?)*< al E.
El coste de transporte mínimo es .3*.
'omo puede obser,arse, todas las 4olguras son nulas.
1
An<(isis d$ s$nsi8i(idad
Cara 4acer un análisis de sensibilidad de nuestro ejemplo 4a% #ue seleccionar el comando /an#e del
men= del LIN!
Aparece la ,entana siguiente/
7e puede obser,ar
a< el rango de ,ariación permitido de cada coe"iciente ?tolerancia< en la "unción objeti,o
?Eobjecti,e coe""icient rangesF< para #ue, permaneciendo inalterados el resto de ellos, la
solución del problema primal no cambie.
b< el rango de ,ariación permitido ?tolerancia< en el término independiente de cada
restricciones ?Erig4t4and side c4angesJ< para #ue, permaneciendo inalterados el resto, la
solución siga siendo la misma.
Cor ejemplo, el coste unitario de transporte entre las ciudades A % ' puede ,ariar en el inter,alo
K3,1L sin #ue la solución del problema cambie.
?Cara la ,ariable A'9..* en el óptimo, EAlloMable 'oe""icient IncreaseF9;.* % EAlloMable
'oe""icient (ecreaseF 90.*<
(e "orma similar, la producción en la planta A puede ,ariar en el inter,alo K)*,+*L % los precios
duales seguirían siendo los mismos.
?EDN7F ,alor en el lado derec4o de la primera restricción9 )*, EAlloMable DN7 IncreaseF9;*.*
% EAlloMable DN7 (ecreaseF 9*.*<
2
E'$rcici& 2
Una empresa de re"rescos produce dos tipos de bebidas con sabor de naranja/ de bajo contenido en
a$=car % de contenido normal, denominadas naranjada ligera % naranjada extra, respecti,amente.
Cara su "abricación se emplean tres procesos producti,os ?designados como C;, C3 % C0< siendo, en
cada uno de ellos, el n=mero de 4oras empleado por unidad de bebida producida los #ue "iguran en
la tabla, en la cual se recogen también los bene"icios unitarios por unidad ,endida de re"resco.
Croceso Naranjada ligera Naranjada extra
C; 1 )
C3 - 0
C0 . -
&ene"icio unitario 1.. )
Las características del proceso de producción dan lugar a #ue por cada unidad de naranjada ligera se
generen 0 unidades de residuo #ue deben eliminarse, con un coste unitario de *.3. euros.
Análogamente, por cada unidad de naranjada extra se obtienen ;.. unidades de cierto subproducto,
#ue puede ,enderse con un bene"icio unitario de ;.. euros. 7in embargo, la cantidad sobrante de
subproducto #ue no 4a%a podido colocarse en el mercado debe eliminarse, con un coste unitario de
*.2. euro.
La demanda pre,ista de subproducto es, como muc4o, de ;. unidades % #ue los tiempos de
producción disponibles son de 0.* 4oras para C;, 0** 4oras para C3 % 03* 4oras para C0.
a< Hormular un problema lineal #ue proporcione el plan de producción con máximo bene"icio.
7upongamos #ue
NL / unidades de naranjada ligera #ue se ,an a "abricar
NE / unidades de naranjada extra #ue se ,an a "abricar
DE / unidades de residuo #ue se deben eliminar
7& / unidades de subproducto ?de naranjada extra< #ue se ,an a producir
7E / unidades de subproducto #ue no 4a%a podido colocarse en el mercado
El bene"icio de la compaOía ?"unción objeti,o< es 1..PNL6)PNE6;..P7&
@*.3.PDE@*.2.P7E
Q las restricciones del problema son/
1PNL6)PNE890.* ?4oras disponibles para C;<
-PNL60PNE890** ?4oras disponibles para C3<
.PNL6-PNE8903* ?4oras disponibles para C0<
7&89;. ?demanda pre,ista de subproducto<
DE90PNL ?por cada unidad de naranjada ligera se generen 0 unidades de residuo #ue deben eliminarse<
7&67E9;..PNE ?por cada unidad de naranjada extra se obtienen ;.. unidades de subproducto<
)
b< Escribir el problema en LIN!
c< Desol,er el problema usando LIN!. R 'uál es el máximo bene"icioS ?-5)&.6 euros<
d< R'uáles son los ,alores óptimos de las ,ariables NL, NE, DE, 7&, 7ES ?76, )8 , )-6, )6, 8<
e< R'uáles son las restricciones acti,as en el óptimoS (restricciones% de las 9oras disponibles
para 3), de la demanda pre!ista de subproducto, y las dos i#ualdades<
"< R'uánto se debería bajar el coste unitario de la cantidad sobrante de subproducto #ue no
4a%a podido colocarse en el mercado % #ue debe eliminarseS ?precio dual de 1: apro"& 8&6-
euros)
No!iembre .885 ; <aria
=a2ynt9ina2i
+