[go: up one dir, main page]

0% encontró este documento útil (0 votos)
187 vistas43 páginas

Programacion Lineal Entera

Este documento presenta una guía sobre programación lineal entera. Explica que la programación lineal entera es similar a la programación lineal estándar, pero con la restricción adicional de que las variables de decisión deben tomar valores enteros. También describe diferentes tipos de problemas de programación lineal entera como la programación entera pura, la programación entera mixta y la programación entera binaria. Finalmente, presenta ejemplos de formulación de modelos matemáticos para problemas que incluyen alternativas mutuamente excluyentes y decisiones contingentes
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
187 vistas43 páginas

Programacion Lineal Entera

Este documento presenta una guía sobre programación lineal entera. Explica que la programación lineal entera es similar a la programación lineal estándar, pero con la restricción adicional de que las variables de decisión deben tomar valores enteros. También describe diferentes tipos de problemas de programación lineal entera como la programación entera pura, la programación entera mixta y la programación entera binaria. Finalmente, presenta ejemplos de formulación de modelos matemáticos para problemas que incluyen alternativas mutuamente excluyentes y decisiones contingentes
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 43

GUIA DE CLASE

DOCENTE CESAR AUGUSTO PINEDA PEREZ

PROGRAMACION LINEAL ENTERA

En los modelos clásicos se estudiaron varias aplicaciones de la programación lineal. No obstante,


una limitación importante que impide muchas otras aplicaciones es el supuesto de divisibilidad, que
requiere que las variables de decisión puedan tomar valores no enteros. En varios problemas
prácticos, las variables de decisión sólo tienen sentido real si su valor es entero. Por ejemplo, hay
casos en los que es necesario asignar a las actividades cantidades enteras de personas, máquinas o
vehículos o cualquier otro ítem que requiera ser entero. Si el hecho de exigir valores enteros es la
única diferencia que tiene un problema con la formulación de programación lineal, entonces se trata
de un problema de programación entera (PE), o también la denominaremos programación lineal
entera, pero, por lo general, el adjetivo lineal se omite, excepto cuando se hace una comparación
con el problema más esotérico de programación no lineal entera.

El modelo matemático para programación entera es sencillamente el modelo de programación


lineal con la restricción adicional de que las variables deben tener valores enteros.

Si sólo es necesario que algunas de las variables tengan valores enteros y el supuesto de divisibilidad
se cumple para el resto, el modelo matemático se conoce como de programación entera mixta
(PEM). Cuando se hace la distinción entre un problema con todas las variables enteras y este caso
mixto, el primero se llama de programación entera pura.

Se realizan numerosas aplicaciones de programación entera que involucran una extensión directa
de programación lineal en la que debe eliminarse el supuesto de divisibilidad. Sin embargo, existe
otra área de aplicación que puede ser mucho más importante, como el problema que incluye cierto
número de “decisiones tipo: sí o no”. En situaciones de este tipo, las únicas dos elecciones posibles
son sí y no. Por ejemplo, ¿debe emprenderse un proyecto específico? ¿Debe hacerse cierta inversión
fija? ¿Debe localizarse una instalación en un sitio en particular? Debido a que estos problemas
involucran sólo dos posibilidades, este tipo de decisiones se puede representar mediante variables
de decisión restringidas a sólo dos valores, por ejemplo, 0 y 1. De esta forma, la j-ésima decisión sí
o no se puede representar por 𝑋𝑗 , tal que

1 𝑠𝑖 𝑙𝑎 𝑑𝑒𝑐𝑖𝑠𝑖𝑜𝑛 𝑒𝑠 𝑠𝑖
𝑋𝑗 = {
0 𝑠𝑖 𝑙𝑎 𝑑𝑒𝑐𝑖𝑠𝑖𝑜𝑛 𝑒𝑠 𝑛𝑜
Las variables de este tipo se llaman binarias (o variables 0-1). En consecuencia, algunas veces se
hace referencia a los problemas de programación entera que contienen sólo variables binarias como
problemas de programación entera binaria (PEB) (o problemas 0-1 de programación entera).

En resumen, si el modelo matemático:

• Solo tiene variables de decisión continuas, entonces sencillamente es un modelo de


programación lineal (PL).

• Solo requiere que todas las variables de decisión sean enteras, entonces es un modelo
matemático de programación entera (PE) o programación lineal entera (PLE).
• Solo requiere que algunas variables de decisión sean enteras, entonces es un modelo
matemático de programación entera mixta (PEM) o programación lineal entera mixta (PLEM).

• Solo requiere que todas las variables de decisión sean binarias, entonces es un modelo
matemático de programación entera binaria (PEB) o programación lineal entera binaria (PLEB).

FORMULACION DE MODELOS MATEMATICOS DE PROGRAMACION ENTERA


1. PROBLEMA INCLUYENDO ALTERNATIVAS MUTUAMENTE EXCLUYENTES Y DECISIONES CONTINGENTES
O CONDICIONALES

Ejemplo 1. Problema de localización de fábricas. El gerente de operaciones de una compañía


pretende construir nuevas fábricas en las ciudades A y B. Desea, además, construir a lo sumo un
nuevo almacén, pero este deberá hacerse en una de las ciudades donde se construya la fábrica. La
tabla proporciona el valor actual neto, el costo de la inversión, ambos en millones de dólares.

Construccion Valor presente neto Costo de inversión


(millones de (millones de
dólares) dólares)
Fabrica en A 10 7
Fabrica en B 6 4
Almacen en A 7 6
Almacen en B 5 3

El presupuesto de la inversión es de 11 millones de dólares. Se pide formular el modelo PLE binario


que proporcione la inversión del máximo valor presente neto.

Solución a) Maximizar el valor presente neto

Indices

𝑗 𝑇𝑖𝑝𝑜 𝑑𝑒 𝑑𝑒𝑐𝑖𝑠𝑖𝑜𝑛, 𝑗 = 1,2,3,4


Variable de decisión
1 𝑠𝑖 𝑙𝑎 𝑑𝑒𝑐𝑖𝑠𝑖𝑜𝑛 𝑒𝑠 𝑠𝑖
𝑉𝑎𝑟𝑖𝑎𝑏𝑙𝑒 𝑏𝑖𝑛𝑎𝑟𝑖𝑎: 𝑋𝑗 = {
0 𝑠𝑖 𝑙𝑎 𝑑𝑒𝑐𝑖𝑠𝑖𝑜𝑛 𝑒𝑠 𝑛𝑜
𝑋𝑗 = 𝐷𝑒𝑐𝑖𝑠𝑖𝑜𝑛 𝑑𝑒 𝑐𝑜𝑛𝑠𝑡𝑟𝑢𝑖𝑟 𝑙𝑎 𝑓𝑎𝑏𝑟𝑖𝑐𝑎 𝑜 𝑎𝑙𝑚𝑎𝑐𝑒𝑛 𝑒𝑛 𝑙𝑎 𝑙𝑜𝑐𝑎𝑐𝑖𝑜𝑛 𝐴 𝑜 𝐵

𝑋1 = 𝐷𝑒𝑐𝑖𝑠𝑖𝑜𝑛 𝑐𝑜𝑛𝑠𝑡𝑟𝑢𝑖𝑟 𝑙𝑎 𝑓𝑎𝑏𝑟𝑖𝑐𝑎 𝑒𝑛 𝑙𝑎 𝑐𝑖𝑢𝑑𝑎𝑑 𝐴


𝑋2 = 𝐷𝑒𝑐𝑖𝑠𝑖𝑜𝑛 𝑐𝑜𝑛𝑠𝑡𝑟𝑢𝑖𝑟 𝑙𝑎 𝑓𝑎𝑏𝑟𝑖𝑐𝑎 𝑒𝑛 𝑙𝑎 𝑐𝑖𝑢𝑑𝑎𝑑 𝐵
𝑋3 = 𝐷𝑒𝑐𝑖𝑠𝑖𝑜𝑛 𝑐𝑜𝑛𝑠𝑡𝑟𝑢𝑖𝑟 𝑒𝑙 𝑎𝑙𝑚𝑎𝑐𝑒𝑛 𝑒𝑛 𝑙𝑎 𝑐𝑖𝑢𝑑𝑎𝑑 𝐴
𝑋4 = 𝐷𝑒𝑐𝑖𝑠𝑖𝑜𝑛 𝑐𝑜𝑛𝑠𝑡𝑟𝑢𝑖𝑟 𝑒𝑙 𝑎𝑙𝑚𝑎𝑐𝑒𝑛 𝑒𝑛 𝑙𝑎 𝑐𝑖𝑢𝑑𝑎𝑑 𝐵
Función objetivo
𝑀𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑒𝑙 𝑣𝑎𝑙𝑜𝑟 𝑝𝑟𝑒𝑠𝑒𝑛𝑡𝑒 𝑛𝑒𝑡𝑜 𝑍 = 10𝑋1 + 6𝑋2 + 7𝑋3 + 5𝑋4
𝑆𝑢𝑗𝑒𝑡𝑜 𝑎:
a) Restricción de presupuesto para inversión.

7𝑋1 + 4𝑋2 + 6𝑋3 + 3𝑋4 ≤ 11


b) Restricción de alternativas mutuamente excluyentes (la compañía quiere construir a lo
sumo un almacén nuevo).

𝑋3 + 𝑋4 ≤ 1
c) Restricción de decisiones contingentes o condicionales (la compañía consideraría la
construcción de un almacén si y solo si, la fabrica y el almacén se construyen en la misma
ciudad).

𝑐𝑖𝑢𝑑𝑎𝑑 𝐴: 𝑋3 ≤ 𝑋1
𝑐𝑖𝑢𝑑𝑎𝑑 𝐵: 𝑋4 ≤ 𝑋2
d) Restricción condición binaria.

𝑋𝑗 𝑒𝑠 𝑏𝑖𝑛𝑎𝑟𝑖𝑎 𝑝𝑎𝑟𝑎 𝑗 = 1,2,3,4

El código gams es
$ontext
PROBLEMA INCLUYENDO ALTERNATIVAS MUTUAMENTE EXCLUYENTES Y DECISIONES
CONTINGENTES O CONDICIONALES

Ejemplo 1. Problema de localización de fábricas. El gerente de operaciones de


una compañía pretende construir nuevas fábricas en las ciudades A y B.
Desea, además, construir a lo sumo un nuevo almacén, pero este deberá hacerse en
una de las ciudades donde se construya la fábrica. La tabla proporciona el
valor actual neto, el costo de la inversión, ambos en millones de dólares.

Construccion VPN Costo Inv

Fabrica en A 10 7
Fabrica en B 6 4
Almacen en A 7 6
Almacen en B 5 3

El presupuesto de la inversión es de 11 millones de dólares. Se pide:


a) formular el modelo PLE binario que proporcione la inversión del máximo valor
presente neto.

$offtext

BINARY VARIABLES
X1 Decision de construir fabrica en la ciudad A
X2 Decision de construir fabrica en la ciudad B
X3 Decision de construir almacen en la ciudad A
X4 Decision de construir almacen en la ciudad B;

FREE VARIABLES
Z valor maximo presente neto;

EQUATIONS
Presupuesto Maximizar el valor presente neta
Excluyente Restriccion excluyente maximo se construye un almacen
condicionalA Restriccion condicional almacen se construye en la misma ciudad A
condicionalB restriccion condicional almacen se construye en la misma ciudad B;
Presupuesto.. Z =E= 10*X1 + 6*X2 + 7*X3 + 5*X4;
Excluyente.. X3 + X4 =L= 1;
condicionalA.. X3 =L= X1;
condicionalB.. X4 =L= X2;

MODEL LOCALIZACION /ALL/


SOLVE LOCALIZACION USING MIP MAXIMIZING Z;

DISPLAY Z.L;
DISPLAY X1.L, X2.L, X3.L, X4.L;

Cuyos resultados son:

Variable de decisión Binaria Descripcion Valor Binario


𝑋1 𝐷𝑒𝑐𝑖𝑠𝑖𝑜𝑛 𝑐𝑜𝑛𝑠𝑡𝑟𝑢𝑖𝑟 𝑙𝑎 𝑓𝑎𝑏𝑟𝑖𝑐𝑎 𝑒𝑛 𝑙𝑎 𝑐𝑖𝑢𝑑𝑎𝑑 𝐴 1
𝑋2 𝐷𝑒𝑐𝑖𝑠𝑖𝑜𝑛 𝑐𝑜𝑛𝑠𝑡𝑟𝑢𝑖𝑟 𝑙𝑎 𝑓𝑎𝑏𝑟𝑖𝑐𝑎 𝑒𝑛 𝑙𝑎 𝑐𝑖𝑢𝑑𝑎𝑑 𝐵 1
𝑋3 𝐷𝑒𝑐𝑖𝑠𝑖𝑜𝑛 𝑐𝑜𝑛𝑠𝑡𝑟𝑢𝑖𝑟 𝑒𝑙 𝑎𝑙𝑚𝑎𝑐𝑒𝑛 𝑒𝑛 𝑙𝑎 𝑐𝑖𝑢𝑑𝑎𝑑 𝐴 1
𝑋4 𝐷𝑒𝑐𝑖𝑠𝑖𝑜𝑛 𝑐𝑜𝑛𝑠𝑡𝑟𝑢𝑖𝑟 𝑒𝑙 𝑎𝑙𝑚𝑎𝑐𝑒𝑛 𝑒𝑛 𝑙𝑎 𝑐𝑖𝑢𝑑𝑎𝑑 𝐵 0
Valor de la función objetivo Z = 23 millones de dolares

2. PROBLEMA INCLUYENDO RESTRICCIONES DE TIPO UNA U OTRA O RESTRICCIONES


DISYUNTIVAS

Esta situación se refiere al caso en el que se deben elegir entre dos restricciones, de manera que
solo una (cualquiera de las dos restricciones) se tiene que cumplir, mientras que la otra restricción
se puede cumplir, pero no es imprescindible que lo haga.

Por ejemplo, puede existir la opción de usar uno de dos tipos de recursos para un propósito especial,
de tal manera que solo es necesario que una de las dos restricciones de disponibilidad de estos
recursos se cumpla en forma matemática. La ilustración del ejemplo es la siguiente:

Se cumple la restricción 1 o se cumple la restricción 2:

Se cumple 4𝑋1 + 2𝑋2 ≤ 20


ó 2𝑋1 + 5𝑋2 ≤ 18

Para formular esta restricciones disyuntivas, se utiliza el valor M (valor numérico positivo muy
grande) , que se puede escribir así:

4𝑋1 + 2𝑋2 ≤ 20
𝑠𝑒 𝑐𝑢𝑚𝑝𝑙𝑒 {
2𝑋1 + 5𝑋2 ≤ 18 + 𝑀

4𝑋 + 2𝑋2 ≤ 20 + 𝑀
𝑜 { 1
2𝑋1 + 5𝑋2 ≤ 18

El efecto es que al agregar M al lado derecho de una restricción es posible eliminarla, para ello
debemos multiplicar M por una variable binaria “Y” y las restricciones disyuntivas quedarían así:
𝑅𝑒𝑠𝑡𝑟𝑖𝑐𝑐𝑖𝑜𝑛 1: 4𝑋1 + 2𝑋2 ≤ 20 + 𝑀𝑌
𝑅𝑒𝑠𝑡𝑟𝑖𝑐𝑐𝑖𝑜𝑛 2: 2𝑋1 + 5𝑋2 ≤ 18 + 𝑀(1 − 𝑌)

Si la variable binaria Y = 0, se activa la restricción 1 y la restricción 2 se vuelve redundante (o se


elimina). Si la variable binaria Y = 1, la restricción 1 se vuelve redundante (o se elimina) y la
restricción 2 se activa.

Ejemplo 2. Considere el siguiente problema de programación Job-shop de tres trabajos y tres


máquinas que se presenta a continuación. Formule el modelo lineal de programación entera mixta
que minimice el Makespan y resuélvalo con el software GAMS.

Maquina 1 Maquina 2 Maquina 3 Orden de ejecución


(𝑀1 ) (𝑀2 ) (𝑀3 ) de los trabajos
Job 1 12 11 9 M3 → M1 → M2
Job 2 8 13 10 M2 → M3 → M1
Job 3 15 7 13 M1 → M2 → M3

a) Formulación y parametrización del modelo de programación entera binaria

Indices
i = 1,2,3 trabajos
J = 1,2,3 maquinas

Minimizar Z = MS

Sujeto a:

1) Restricción de terminación del trabajo tipo i

𝑋𝑖𝑔 + 𝑡𝑖𝑔 ≤ 𝑀𝑆 ∀𝑖, 𝑖 = 1,2, . . . . . 𝑛 𝑦 𝑔 ∈ 𝑗

Job 1: 𝑋12 + 11 ≤ 𝑀𝑆
Job 2: 𝑋21 + 8 ≤ 𝑀𝑆
Job 3: 𝑋33 + 13 ≤ 𝑀𝑆

Nota: El trabajo 1 (Job 1) termina en la maquina 2, El trabajo 2 (Job 2) termina en la maquina 1


El trabajo 3 (Job 3) termina en la maquina 3.

2) Restricción de secuencia de ejecución de los trabajos

𝑋𝑖𝑟 + 𝑡𝑖𝑟 ≤ 𝑋𝑖𝑠 ∀𝑖 𝑦 𝑟, 𝑠 ∈ 𝑗


𝑋13 + 9 ≤ 𝑋11
𝐽𝑜𝑏 1: {
𝑋11 + 12 ≤ 𝑋12
𝑋22 + 13 ≤ 𝑋23
𝐽𝑜𝑏 2: {
𝑋23 + 10 ≤ 𝑋21

𝑋31 + 15 ≤ 𝑋32
𝐽𝑜𝑏 3: {
𝑋32 + 7 ≤ 𝑋33

Nota: las secuencias de los trabajos son:


Job 1: M3 → M1 → M2
Job 2: M2 → M3 → M1
Job 3: M1 → M2 → M3

3) Restricción de interferencia en las maquinas

𝑋𝑝𝑗 + 𝑡𝑝𝑗 ≤ 𝑋𝑞𝑗 + 𝑀𝑌𝑘 ∀𝑗 𝑦 p, 𝑞 ∈ 𝑖


𝑋𝑞𝑗 + 𝑡𝑞𝑗 ≤ 𝑋𝑝𝑗 + 𝑀(1 − 𝑌𝑘 ) ∀𝑗 𝑦 p, 𝑞 ∈ 𝑖
p y q son trabajos que llegan simultáneamente a la maquina i

𝑋11 + 12 ≤ 𝑋21 + 𝑀𝑌1


𝐽𝑜𝑏 1 − 𝐽𝑜𝑏 2 {
𝑋21 + 8 ≤ 𝑋11 + 𝑀(1 − 𝑌1 )
𝑋11 + 12 ≤ 𝑋31 + 𝑀𝑌2
𝑀𝑎𝑞𝑢𝑖𝑛𝑎 1 𝐽𝑜𝑏 1 − 𝐽𝑜𝑏 3 {
𝑋31 + 15 ≤ 𝑋11 + 𝑀(1 − 𝑌2 )
𝑋21 + 8 ≤ 𝑋31 + 𝑀𝑌3
𝐽𝑜𝑏 2 − 𝐽𝑜𝑏 3 {
{ 𝑋31 + 15 ≤ 𝑋21 + 𝑀(1 − 𝑌3 )

𝑋12 + 11 ≤ 𝑋22 + 𝑀𝑌4


𝐽𝑜𝑏 1 − 𝐽𝑜𝑏 2 {
𝑋22 + 13 ≤ 𝑋12 + 𝑀(1 − 𝑌4 )
𝑋12 + 11 ≤ 𝑋32 + 𝑀𝑌5
𝑀𝑎𝑞𝑢𝑖𝑛𝑎 2 𝐽𝑜𝑏 1 − 𝐽𝑜𝑏 3 {
𝑋32 + 7 ≤ 𝑋12 + 𝑀(1 − 𝑌5 )
𝑋22 + 13 ≤ 𝑋32 + 𝑀𝑌6
𝐽𝑜𝑏 2 − 𝐽𝑜𝑏 3 {
{ 𝑋32 + 7 ≤ 𝑋22 + 𝑀(1 − 𝑌6 )

𝑋13 + 9 ≤ 𝑋23 + 𝑀𝑌7


𝐽𝑜𝑏 1 − 𝐽𝑜𝑏 2 {
𝑋23 + 10 ≤ 𝑋13 + 𝑀(1 − 𝑌7 )
𝑋13 + 9 ≤ 𝑋33 + 𝑀𝑌8
𝑀𝑎𝑞𝑢𝑖𝑛𝑎 3 𝐽𝑜𝑏 1 − 𝐽𝑜𝑏 3 {
𝑋33 + 13 ≤ 𝑋13 + 𝑀(1 − 𝑌8 )
𝑋23 + 10 ≤ 𝑋33 + 𝑀𝑌9
𝐽𝑜𝑏 2 − 𝐽𝑜𝑏 3 {
{ 𝑋33 + 13 ≤ 𝑋23 + 𝑀(1 − 𝑌9 )

4) Restricciones de no negatividad

𝑋11 ≥ 0, 𝑋12 ≥ 0, 𝑋13 ≥ 0, 𝑋21 ≥ 0, 𝑋22 ≥ 0, 𝑋23 ≥ 0, 𝑋31 ≥ 0, 𝑋32 ≥ 0, 𝑋33 ≥ 0,


SET
i tipo de trabajo /j1,j2,j3/
j tipo de maquina /m1,m2,m3/;

TABLE T(i,j) TIEMPOS DE PROCESAMIENTO

m1 m2 m3
j1 12 11 9
j2 8 13 10
j3 15 7 13;

FREE VARIABLES
Z VARIABLE VALOR DE LA FUNCION OBJETIVO
MS MAKESPAN ;

POSITIVE VARIABLES
X(i,j) INSTANTE DE INICIO TRABAJO I EN MAQUINA J;

BINARY VARIABLES
Y1
Y2
Y3
Y4
Y5
Y6
Y7
Y8
Y9
;

SCALAR
M /1000000000000000000000/;

EQUATIONS
MAKESPAN funcion objetivo minimizar el makespan

final1(i) restriccion terminacion trabajo 1


final2(i) restriccion terminacion trabajo 2
final3(i) restriccion terminacion trabajo 3

job1r1(i) restriccion1 secuencia1 trabajo j1


job1r2(i) restriccion2 secuencia2 trabajo j1

job2r1(i) restriccion1 secuencia1 trabajo j21


job2r2(i) restriccion2 secuencia2 trabajo j21

job3r1(i) restriccion1 secuencia1 trabajo j31


job3r2(i) restriccion2 secuencia2 trabajo j31

Maquina1j1j2r1(j) restriccion no simultaneidad en una maquina


Maquina1j1j2r2(j) restriccion no simultaneidad en una maquina
Maquina1j1j3r1(j) restriccion no simultaneidad en una maquina
Maquina1j1j3r2(j) restriccion no simultaneidad en una maquina
Maquina1j2j3r1(j) restriccion no simultaneidad en una maquina
Maquina1j2j3r2(j) restriccion no simultaneidad en una maquina

Maquina2j1j2r1(j) restriccion no simultaneidad en una maquina


Maquina2j1j2r2(j) restriccion no simultaneidad en una maquina
Maquina2j1j3r1(j) restriccion no simultaneidad en una maquina
Maquina2j1j3r2(j) restriccion no simultaneidad en una maquina
Maquina2j2j3r1(j) restriccion no simultaneidad en una maquina
Maquina2j2j3r2(j) restriccion no simultaneidad en una maquina

Maquina3j1j2r1(j) restriccion no simultaneidad en una maquina


Maquina3j1j2r2(j) restriccion no simultaneidad en una maquina
Maquina3j1j3r1(j) restriccion no simultaneidad en una maquina
Maquina3j1j3r2(j) restriccion no simultaneidad en una maquina
Maquina3j2j3r1(j) restriccion no simultaneidad en una maquina
Maquina3j2j3r2(j) restriccion no simultaneidad en una maquina
;

MAKESPAN..Z=E=MS;

*RESTRICCIONES DE TERMINACION PARA CADA TRABAJO


Final1("j1")..X("j1","m2")+ T("j1","m2")=L=MS;
Final2("j2")..X("j2","m1")+ T("j2","m1")=L=MS;
final3("j3")..X("j3","m3")+ T("j3","m3")=L=MS;

*RESTRICCIONES DE SECUENCIA JOB 1


job1r1("j1")..X("j1","m3") + T("j1","m3") =l= X("j1","m1");
job1r2("j1")..X("j1","m1") + T("j1","m1") =l= X("j1","m2");

*RESTRICCIONES DE SECUENCIA JOB 2


job2r1("j2")..X("j2","m2") + T("j2","m2") =l= X("j2","m3");
job2r2("j2")..X("j2","m3") + T("j2","m3") =l= X("j2","m1");

*RESTRICCIONES DE SECUENCIA JOB 3


job3r1("j3")..X("j3","m1") + T("j3","m1") =l= X("j3","m2");
job3r2("j3")..X("j3","m2") + T("j3","m2") =l= X("j3","m3");

*RESTRICCIONES DE INTERFERENCIA MAQUINA 1


Maquina1j1j2r1("m1")..X("j1","m1") + T("j1","m1") - X("j2","m1") =L= M*(1-Y1);
Maquina1j1j2r2("m1")..X("j2","m1") + T("j2","m1") - X("j1","m1") =L= M*Y1;

Maquina1j1j3r1("m1")..X("j1","m1") + T("j1","m1") - X("j3","m1") =L= M*(1-Y2);


Maquina1j1j3r2("m1")..X("j3","m1") + T("j3","m1") - X("j1","m1") =L= M*Y2;

Maquina1j2j3r1("m1")..X("j2","m1") + T("j2","m1") - X("j3","m1") =L= M*(1-Y3);


Maquina1j2j3r2("m1")..X("j3","m1") + T("j3","m1") - X("j2","m1") =L= M*Y3;

*RESTRICCIONES DE INTERFERENCIA MAQUINA 2


Maquina2j1j2r1("m2")..X("j1","m2") + T("j1","m2") - X("j2","m2") =L= M*(1-Y4);
Maquina2j1j2r2("m2")..X("j2","m2") + T("j2","m2") - X("j1","m2") =L= M*Y4;

Maquina2j1j3r1("m2")..X("j1","m2") + T("j1","m2") - X("j3","m2") =L= M*(1-Y5);


Maquina2j1j3r2("m2")..X("j3","m2") + T("j3","m2") - X("j1","m2") =L= M*Y5;

Maquina2j2j3r1("m2")..X("j2","m2") + T("j2","m2") - X("j3","m2") =L= M*(1-Y6);


Maquina2j2j3r2("m2")..X("j3","m2") + T("j3","m2") - X("j2","m2") =L= M*Y6;

*RESTRICCIONES DE INTERFERENCIA MAQUINA 3


Maquina3j1j2r1("m3")..X("j1","m3") + T("j1","m3") - X("j2","m3") =L= M*(1-Y7);
Maquina3j1j2r2("m3")..X("j2","m3") + T("j2","m3") - X("j1","m3") =L= M*Y7;

Maquina3j1j3r1("m3")..X("j1","m3") + T("j1","m3") - X("j3","m3") =L= M*(1-Y8);


Maquina3j1j3r2("m3")..X("j3","m3") + T("j3","m3") - X("j1","m3") =L= M*Y8;

Maquina3j2j3r1("m3")..X("j2","m3") + T("j2","m3") - X("j3","m3") =L= M*(1-Y9);


Maquina3j2j3r2("m3")..X("j3","m3") + T("j3","m3") - X("j2","m3") =L= M*Y9;

MODEL JOBSHOP /ALL/;


SOLVE JOBSHOP using mip MINIMIZING Z;
display ms.l;
display X.l;

Corriendo GAMS con MIP (programación entera) y compilador CPLEX, arrojo los siguientes
resultados:
---- 127 VARIABLE MS.L = 77.000 MAKESPAN

---- 128 VARIABLE X.L INSTANTE DE INICIO TRABAJO I EN MAQUINA J

m1 m2 m3

j1 54.000 66.000 45.000


j2 45.000 22.000 35.000
j3 0.000 15.000 22.000

De acuerdo a los resultados el Makespan (o tiempo mínimo de ejecución de todos los trabajos) es
de 77 unidades de tiempo. El diagrama GANTT de acuerdo a los instantes de inicio de cada trabajo
en cada maquina y el orden de ejecución se muestran en la grafica.

Gantt ejemplo 2. Secuencia J3 → J2 → J1 y Makespan = 77

3. DEBEN CUMPLIRSE K DE N RESTRICCIONES.

Este caso se refiere a un modelo matemático que incluye un conjunto de N restricciones posibles
entre las que solo K de ellas se deben cumplir (suponemos que K<N). El proceso de optimización es
elegir la combinación de K restricciones que permitan que la función objetivo adquiera el mejor
valor posible. Para este caso, las 𝑁 − 𝐾 restricciones que no son elegidas son eliminadas del
problema, aun cuando por coincidencia las soluciones factibles pueden satisfacer algunas de ellas.

Denotamos las N restricciones posibles por

𝑓1 (𝑋1 , 𝑋2 , … , 𝑋𝑛 ) ≤ 𝑑1
𝑓2 (𝑋1 , 𝑋2 , … , 𝑋𝑛 ) ≤ 𝑑2
… … … … … … … … … ..
… … … … … … … … … ..
𝑓𝑁 (𝑋1 , 𝑋2 , … , 𝑋𝑛 ) ≤ 𝑑𝑁

Aplicamos la misma lógica que en caso de las restricciones disyuntivas, y encontramos que una
formulación equivalente del requerimiento de que K de estas restricciones se deben cumplir es

𝑓1 (𝑋1 , 𝑋2 , … , 𝑋𝑛 ) ≤ 𝑑1 + 𝑀𝑦1
𝑓2 (𝑋1 , 𝑋2 , … , 𝑋𝑛 ) ≤ 𝑑2 + 𝑀𝑦2
… … … … … … … … … ..
… … … … … … … … … ..
𝑓𝑁 (𝑋1 , 𝑋2 , … , 𝑋𝑛 ) ≤ 𝑑𝑁 + 𝑀𝑦𝑁
𝑁

∑ 𝑦𝑖 = 𝑁 − 𝐾
𝑖=1

𝑦𝑖 𝑒𝑠 𝑏𝑖𝑛𝑎𝑟𝑖𝑎, 𝑝𝑎𝑟𝑎 𝑖 = 1,2, … , 𝑁

M es un numero positivo muy grande. Para cada variable binaria 𝑦𝑖 (𝑖 = 1,2, … , 𝑁), observamos que
𝑦𝑖 = 0 hace que 𝑀𝑦𝑖 = 0, lo que reduce la nueva restriccion a la restriccion original i. De otro lado,
𝑦𝑖 = 1 hace que (𝑑𝑖 + 𝑀𝑦1 ) sea tan grande que —si otra vez se supone una región factible
acotada—cualquier solución que satisfaga las otras nuevas restricciones satisface de manera
automática la nueva restricción i, lo cual tiene el efecto de eliminar la restricción original i. Por tanto,
debido a que las restricciones sobre las variables 𝑦𝑖 garantizan que K de estas variables serán iguales
a 0 y las restantes serán iguales a 1, K de las restricciones originales quedarán sin cambio y (𝑁 − 𝐾)
de ellas serán eliminadas. La elección de cuáles K de estas restricciones debe conservarse se hace
mediante la aplicación del algoritmo apropiado al problema completo para encontrar una solución
óptima para todas las variables de manera simultánea.

4. FUNCIONES CON N VALORES POSIBLES.

Este caso considera la situación en la que se requiere que una función dada tome cualquiera de N
valores dados. Denotamos este requisito por

𝑓(𝑋1 , 𝑋2 , … , 𝑋𝑛 ) = 𝑑1 𝑜 𝑑2 𝑜 𝑑3 , … , 𝑜 𝑑𝑁

Un caso especial es aquel en el que esta función es


𝑛

𝑓(𝑋1 , 𝑋2 , … , 𝑋𝑛 ) = ∑ 𝑎𝑗 𝑋𝑗
𝑗=1

Otro caso especial es en el que 𝑓(𝑋1 , 𝑋2 , … , 𝑋𝑛 ) = 𝑋𝑗 para un valor dado de j, de manera que el
requerimiento es que 𝑋𝑗 debe tomar cualquiera de los N valores dados. La formulación de
programación entera para este requerimiento es la siguiente:

𝑓(𝑋1 , 𝑋2 , … , 𝑋𝑛 ) = ∑ 𝑑𝑖 𝑦𝑖
𝑖=1

∑ 𝑦𝑖 = 1
𝑖=1

𝑦𝑖 𝑒𝑠 𝑏𝑖𝑛𝑎𝑟𝑖𝑎, 𝑝𝑎𝑟𝑎 𝑖 = 1,2, … , 𝑁

con este nuevo conjunto de restricciones se sustituye el requerimiento que se hizo al establecer el
problema completo. Este conjunto proporciona una formulación equivalente puesto que
exactamente una de las 𝑦𝑖 debe ser igual a 1 y las otras deben ser iguales a 0, así que se escoge una
𝑑𝑖 como el valor de la función. En este caso existen N preguntas con respuesta sí o no, que son:
¿debe ser 𝑑𝑖 el valor escogido ( 𝑖 = 1,2, … , 𝑁)? Como las 𝑦𝑖 respectiva representa estas decisiones
sí o no, la segunda restricción las hace alternativas mutuamente excluyentes.

Ejemplo 2. La empresa conalvidrios produce artículos de vidrio de alta calidad, entre ellos ventanas
y puertas de vidrio. Dispone de 3 plantas de produccion. Los marcos y molduras de aluminio se
hacen en la planta 1, los de madera en la planta 2 y la planta 3 produce el vidrio y ensambla los
productos. Debido a una reducción de las ganancias, la gerencia ha decidido reorganizar la línea de
producción de la compañía. Se discontinuarán varios productos no rentables y se dejará libre una
parte de la capacidad de producción para emprender la fabricación de dos productos nuevos cuyas
ventas potenciales son muy prometedoras:

Producto 1: una puerta de vidrio de 8 pies con marco de aluminio


Producto 2: una ventana corrediza con marco de madera de 4 por 6 pies

El producto 1 requiere parte de la capacidad de producción en las plantas 1 y 3 y nada en la planta


2. El producto 2 sólo necesita trabajo en las plantas 2 y 3. La división de ventas ha concluido que la
compañía puede vender todos los productos que se puedan fabricar en las plantas. Sin embargo,
como ambos productos competirían por la misma capacidad de producción en la planta 3, no está
claro cuál mezcla de productos sería la más rentable. La definición del problema planteado indica
que las decisiones que deben tomarse son el número de lotes de los productos que se fabricarán
semanalmente, de manera que se maximice su ganancia total.

Para formular el modelo matemático de programación lineal de este problema se define

𝑋1 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑙𝑜𝑡𝑒𝑠 𝑑𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑡𝑜 1 𝑞𝑢𝑒 𝑠𝑒 𝑓𝑎𝑏𝑟𝑖𝑐𝑎𝑛 𝑝𝑜𝑟 𝑠𝑒𝑚𝑎𝑛𝑎


𝑋2 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑙𝑜𝑡𝑒𝑠 𝑑𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑡𝑜 2 𝑞𝑢𝑒 𝑠𝑒 𝑓𝑎𝑏𝑟𝑖𝑐𝑎𝑛 𝑝𝑜𝑟 𝑠𝑒𝑚𝑎𝑛𝑎
𝑍 = 𝑔𝑎𝑛𝑎𝑛𝑐𝑖𝑎 𝑠𝑒𝑚𝑎𝑛𝑎𝑙 𝑒𝑛 𝑒𝑢𝑟𝑜𝑠

Datos del problema de conalvidrios


Tiempo de producción por lote Tiempo de
(horas) producción
Producto disponible a la
Planta 1 2 semana (horas)
1 1 0 4
2 0 2 12
3 3 2 18
Ganancia por
$3000 $5000
lote

Una primera formulacion del problema es:

𝑀𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = 3000𝑋1 + 5000𝑋2

Sujeto a

𝑃𝑙𝑎𝑛𝑡𝑎 1: 𝑋1 ≤ 4
𝑃𝑙𝑎𝑛𝑡𝑎 2: 2𝑋2 ≤ 12

𝑃𝑙𝑎𝑛𝑡𝑎 3: 3𝑋1 + 2𝑋2 ≤ 18

Cuya solución en primera instancia es: 𝑋1 = 2, 𝑋2 = 6 𝑐𝑜𝑛 𝑍 = 36000

Para aplicar el caso de función con N valores posibles, reconsideramos el problema de conalvidrios.
Con el fin de dejar cualquier capacidad restante en forma de bloques utilizables para estos
productos, la gerencia desea imponer la restricción de que el tiempo de producción que se empleará
en los dos nuevos productos actuales sea 12 o 18 o 24 horas semanales en la planta 3. Entonces, la
tercera restricción del modelo original (3𝑋1 + 2𝑋2 ≤ 18) se convierte en

3𝑋1 + 2𝑋2 = 12 o 18 o 24

Según la notación, N = 3 con 𝑑1 = 12, 𝑑2 = 18 𝑦 𝑑3 = 24. Por lo tanto el nuevo requerimiento de


la gerencia se formula así:

3𝑋1 + 2𝑋2 = 12𝑦1 + 18𝑦2 + 24𝑦3

Añadiendo la restricción excluyente

𝑦1 + 𝑦2 + 𝑦3 = 1

Con 𝑦1 , 𝑦2 , 𝑦3 binarias. Entonces el modelo completo queda así:

𝑀𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = 3000𝑋1 + 5000𝑋2

Sujeto a

𝑃𝑙𝑎𝑛𝑡𝑎 1: 𝑋1 ≤ 4

𝑃𝑙𝑎𝑛𝑡𝑎 2: 2𝑋2 ≤ 12

𝑃𝑙𝑎𝑛𝑡𝑎 3: 3𝑋1 + 2𝑋2 = 12𝑦1 + 18𝑦2 + 24𝑦3

𝑦1 + 𝑦2 + 𝑦3 = 1

𝑦1 , 𝑦2 , 𝑦3 binarias

El código gams es:


free variables
z valor de la funcion objetivo;

positive variables
x1 numero de lotes de producto 1 que se fabrican por semana
x2 numero de lotes de producto 2 que se fabrican por semana;

binary variables
y1 activar o no la capacidad disponible de 6 horas
y2 activar o no la capacidad disponible de 12 horas
y3 activar o no la capacidad disponible de 18 horas;
equation

utilidad maximizar la utilidad


planta1 restriccion capacidad en planta 1
planta2 restriccion capacidad en planta 2
planta3 restriccion capacidad en planta 3
excluyente restriccion excluyente;

utilidad.. Z =E= 3000*x1 + 5000*x2;


planta1.. x1 =L= 4;
planta2.. 2*x2 =L= 12;
planta3.. 3*x1 + 2*x2 =E= 12*y1 + 18*y2 + 24*y3;
excluyente.. y1 + y2 + y3 =E= 1;

model ejemplo2 /all/


solve ejemplo2 using mip maximizing z;

display z.L;
display x1.L,x2.L;
display y1.L,y2.L,y3.L;

Cuyos resultados son: 𝑋1 = 4, 𝑋2 = 6, 𝑦1 = 0, 𝑦2 = 0, 𝑦3 = 1 𝑐𝑜𝑛 𝑍 = 42000

5. PROBLEMA DE COSTO O CARGO FIJO.

El problema de cargo fijo tiene que ver con situaciones en que la actividad económica incurre en
dos tipos de costos: un costo fijo necesario para iniciar la actividad y un costo variable proporcional
al nivel de la actividad. Por ejemplo, el herramental inicial de una máquina antes de iniciar la
producción incurre en un costo de preparación fijo independientemente de cuántas unidades se
fabriquen. Una vez completa la preparación de la máquina, el costo de la mano de obra y del
material es proporcional a la cantidad producida. Dado que F es el cargo fijo, c es el costo unitario
variable, y x es el nivel de producción, la función de costo se expresa como

𝐹 + 𝑐𝑥, 𝑠𝑖 𝑥 > 0
𝐶(𝑥) = {
0, 𝑒𝑛 𝑐𝑎𝑠𝑜 𝑐𝑜𝑛𝑡𝑟𝑎𝑟𝑖𝑜

La función C(x) es analíticamente insoluble porque implica una discontinuidad en x = 0. El siguiente


ejemplo demuestra cómo se utilizan las variables binarias para volver el modelo analíticamente
soluble.

Ejemplo 3. Tres compañías telefónicas (Claro, Movistar y ETB) ofrecen a Peter suscribirse a su
servicio de larga distancia en Colombia. Claro cobra una cuota fija de $ 18 dólares por mes más $0.28
dólares por minuto. Movistar cobra $27 dólares el mes pero reduce el costo por minuto a $0. 24.
En cuanto a ETB, la cuota fija mensual es de $19 dolares y el costo por minuto es de $0.26.
Regularmente, Peter consume un promedio de 200 minutos de llamadas de larga distancia al mes.
Suponiendo que no tenga que pagar la cuota fija mensual a menos que realice llamadas y que puede
repartirlas entre las 3 compañias como el desee, ¿ cómo debería Peter utilizar las 3 compañias para
minimizar el costo de su recibo telefónico mensual? Formule el modelo de programación lineal
entera mixta.

Variables de decisión:

𝑋1 = 𝑀𝑖𝑛𝑢𝑡𝑜𝑠 𝑑𝑒 𝑙𝑎𝑟𝑔𝑎 𝑑𝑖𝑠𝑡𝑎𝑛𝑐𝑖𝑎 𝑑𝑒 𝐶𝑙𝑎𝑟𝑜 𝑝𝑜𝑟 𝑚𝑒𝑠


𝑋2 = 𝑀𝑖𝑛𝑢𝑡𝑜𝑠 𝑑𝑒 𝑙𝑎𝑟𝑔𝑎 𝑑𝑖𝑠𝑡𝑎𝑛𝑐𝑖𝑎 𝑑𝑒 𝑀𝑜𝑣𝑖𝑠𝑡𝑎𝑟 𝑝𝑜𝑟 𝑚𝑒𝑠
𝑋3 = 𝑀𝑖𝑛𝑢𝑡𝑜𝑠 𝑑𝑒 𝑙𝑎𝑟𝑔𝑎 𝑑𝑖𝑠𝑡𝑎𝑛𝑐𝑖𝑎 𝑑𝑒 𝐸𝑇𝐵 𝑝𝑜𝑟 𝑚𝑒𝑠

𝑦1 = 1 𝑠𝑖 𝑋1 > 0 𝑦 0 𝑠𝑖 𝑋1 = 0

𝑦2 = 1 𝑠𝑖 𝑋2 > 0 𝑦 0 𝑠𝑖 𝑋2 = 0

𝑦3 = 1 𝑠𝑖 𝑋3 > 0 𝑦 0 𝑠𝑖 𝑋3 = 0

Podemos asegurar que 𝑦𝑗 es igual a 1 cuando 𝑋𝑗 es positiva por medio de la restricción

𝑋𝑗 ≤ 𝑀𝑦𝑗 , 𝑗 = 1,2,3

El valor de M debe seleccionarse lo bastante grande como para no restringir artificialmente la


Variable 𝑋𝑗 . Como Peter ocupa aproximadamente 200 minutos de llamadas al mes, entonces

𝑋𝑗 ≤ 200 𝑝𝑎𝑟𝑎 𝑡𝑜𝑑𝑎𝑠 𝑙𝑎𝑠 𝑗

Por lo tanto, es seguro seleccionar M = 200.

El modelo completo de programación lineal entera es

𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = 0.28𝑋1 + 0.24𝑋2 + 0.26𝑋3 + 18𝑦1 + 27𝑦2 + 19𝑦3

𝑆𝑢𝑗𝑒𝑡𝑜 𝑎

𝑋1 + 𝑋2 + 𝑋3 = 200

𝑋1 ≤ 200𝑦1

𝑋2 ≤ 200𝑦2

𝑋3 ≤ 200𝑦3

𝑋1 , 𝑋2 , 𝑋3 ≥ 0

𝑦1 , 𝑦2 , 𝑦3 = (0,1)

El código gams es

free variables
z;

positive variables
x1 minutos de larga distancia de claro por mes
x2 minutos de larga distancia de movistar por mes
x3 minutos de larga distancia de etb por mes;

binary variables
y1 variable binaria que activa el costo fijo claro si x1>0
y2 variable binaria que activa el costo fijo movistar si x2>0
y3 variable binaria que activa el costo fijo etb si x3>0;
equations
costo funcion objetivo minimizar costos fijos y variables
rest1 restriccion consumo 200 minutos mes
rest2 restriccion maximo consumo claro
rest3 restriccion maximo consumo movistar
rest4 restriccion maximo consumo etb;

costo.. z =e= 0.28*x1 + 0.24*x2 + 0.26*x3 + 18*y1 + 27*y2 + 19*y3;


rest1.. x1 + x2 + x3 =e= 200;
rest2.. x1 =L= 200*y1;
rest3.. x2 =L= 200*y2;
rest4.. x3 =L= 200*y3;

model ejemplo3 /all/;


solve ejemplo3 using mip minimizing z;

display z.L;
display x1.L,x2.L,x3.L;
display y1.L,y2.L,y3.L;

Cuyos resultados son: 𝑋1 = 0, 𝑋2 = 0, 𝑋3 = 200, 𝑦1 = 0, 𝑦2 = 0, 𝑦3 = 1 𝑐𝑜𝑛 𝑍 = 71

6. PROBLEMA DE COBERTURA DE CONJUNTO

En esta clase de problemas, varias plantas ofrecen servicios que se traslapan a varias instalaciones.
El objetivo es determinar la cantidad mínima de plantas que cubren (es decir, que satisfacen las
necesidades de servicio de) cada instalación. Por ejemplo, se pueden construir plantas de
tratamiento de agua en varios lugares, y cada planta sirve a un grupo de ciudades. El traslape ocurre
cuando a una ciudad dada le da servicio más de una planta.

Ejemplo 4. Para promover la seguridad en el campus de la universidad estatal, el departamento de


seguridad ha propuesto la instalación de teléfonos de emergencia en lugares seleccionados. El
departamento de seguridad desea instalar una cantidad mínima de teléfonos que presten servicio
a cada una de las calles principales del campus. La siguiente figura es un mapa de dichas calles.
Como se puede observar en la figura, existen 8 lugares (que son las intersecciones de las calles)

donde se podrían ubicar estos teléfonos, a fin de maximizar su uso. De este modo un teléfono puede
prestar servicio al menos a dos calles. Formule el modelo de programación entera binaria que
determine la cantidad mínima de teléfonos que cubra todas las calles.

1, 𝑠𝑖 𝑠𝑒 𝑖𝑛𝑠𝑡𝑎𝑙𝑎 𝑢𝑛 𝑡𝑒𝑙𝑒𝑓𝑜𝑛𝑜 𝑒𝑛 𝑒𝑙 𝑙𝑢𝑔𝑎𝑟 𝑜 𝑒𝑠𝑞𝑢𝑖𝑛𝑎 𝑗, 𝑗 = 1,2, … .8


𝑋𝑗 = {
0, 𝑛𝑜 𝑠𝑒 𝑖𝑛𝑠𝑡𝑙𝑎 𝑒𝑙 𝑡𝑒𝑙𝑒𝑓𝑜𝑛𝑜 𝑒𝑛 𝑙𝑎 𝑒𝑠𝑞𝑢𝑖𝑛𝑎 𝑗

1, 𝑠𝑖 𝑠𝑒 𝑖𝑛𝑠𝑡𝑎𝑙𝑎 𝑢𝑛 𝑡𝑒𝑙𝑒𝑓𝑜𝑛𝑜 𝑒𝑛 𝑙𝑎 𝑒𝑠𝑞𝑢𝑖𝑛𝑎 1


𝑋1 = {
0, 𝑛𝑜 𝑠𝑒 𝑖𝑛𝑠𝑡𝑙𝑎 𝑒𝑙 𝑡𝑒𝑙𝑒𝑓𝑜𝑛𝑜 𝑒𝑛 𝑙𝑎 𝑒𝑠𝑞𝑢𝑖𝑛𝑎 1

1, 𝑠𝑖 𝑠𝑒 𝑖𝑛𝑠𝑡𝑎𝑙𝑎 𝑢𝑛 𝑡𝑒𝑙𝑒𝑓𝑜𝑛𝑜 𝑒𝑛 𝑙𝑎 𝑒𝑠𝑞𝑢𝑖𝑛𝑎 2


𝑋2 = {
0, 𝑛𝑜 𝑠𝑒 𝑖𝑛𝑠𝑡𝑙𝑎 𝑒𝑙 𝑡𝑒𝑙𝑒𝑓𝑜𝑛𝑜 𝑒𝑛 𝑙𝑎 𝑒𝑠𝑞𝑢𝑖𝑛𝑎 2

1, 𝑠𝑖 𝑠𝑒 𝑖𝑛𝑠𝑡𝑎𝑙𝑎 𝑢𝑛 𝑡𝑒𝑙𝑒𝑓𝑜𝑛𝑜 𝑒𝑛 𝑙𝑎 𝑒𝑠𝑞𝑢𝑖𝑛𝑎 3


𝑋3 = {
0, 𝑛𝑜 𝑠𝑒 𝑖𝑛𝑠𝑡𝑙𝑎 𝑒𝑙 𝑡𝑒𝑙𝑒𝑓𝑜𝑛𝑜 𝑒𝑛 𝑙𝑎 𝑒𝑠𝑞𝑢𝑖𝑛𝑎 3

1, 𝑠𝑖 𝑠𝑒 𝑖𝑛𝑠𝑡𝑎𝑙𝑎 𝑢𝑛 𝑡𝑒𝑙𝑒𝑓𝑜𝑛𝑜 𝑒𝑛 𝑙𝑎 𝑒𝑠𝑞𝑢𝑖𝑛𝑎 4


𝑋4 = {
0, 𝑛𝑜 𝑠𝑒 𝑖𝑛𝑠𝑡𝑙𝑎 𝑒𝑙 𝑡𝑒𝑙𝑒𝑓𝑜𝑛𝑜 𝑒𝑛 𝑙𝑎 𝑒𝑠𝑞𝑢𝑖𝑛𝑎 4

1, 𝑠𝑖 𝑠𝑒 𝑖𝑛𝑠𝑡𝑎𝑙𝑎 𝑢𝑛 𝑡𝑒𝑙𝑒𝑓𝑜𝑛𝑜 𝑒𝑛 𝑙𝑎 𝑒𝑠𝑞𝑢𝑖𝑛𝑎 5


𝑋5 = {
0, 𝑛𝑜 𝑠𝑒 𝑖𝑛𝑠𝑡𝑙𝑎 𝑒𝑙 𝑡𝑒𝑙𝑒𝑓𝑜𝑛𝑜 𝑒𝑛 𝑙𝑎 𝑒𝑠𝑞𝑢𝑖𝑛𝑎 5

1, 𝑠𝑖 𝑠𝑒 𝑖𝑛𝑠𝑡𝑎𝑙𝑎 𝑢𝑛 𝑡𝑒𝑙𝑒𝑓𝑜𝑛𝑜 𝑒𝑛 𝑙𝑎 𝑒𝑠𝑞𝑢𝑖𝑛𝑎 6


𝑋6 = {
0, 𝑛𝑜 𝑠𝑒 𝑖𝑛𝑠𝑡𝑙𝑎 𝑒𝑙 𝑡𝑒𝑙𝑒𝑓𝑜𝑛𝑜 𝑒𝑛 𝑙𝑎 𝑒𝑠𝑞𝑢𝑖𝑛𝑎 6

1, 𝑠𝑖 𝑠𝑒 𝑖𝑛𝑠𝑡𝑎𝑙𝑎 𝑢𝑛 𝑡𝑒𝑙𝑒𝑓𝑜𝑛𝑜 𝑒𝑛 𝑙𝑎 𝑒𝑠𝑞𝑢𝑖𝑛𝑎 7


𝑋7 = {
0, 𝑛𝑜 𝑠𝑒 𝑖𝑛𝑠𝑡𝑙𝑎 𝑒𝑙 𝑡𝑒𝑙𝑒𝑓𝑜𝑛𝑜 𝑒𝑛 𝑙𝑎 𝑒𝑠𝑞𝑢𝑖𝑛𝑎 7

1, 𝑠𝑖 𝑠𝑒 𝑖𝑛𝑠𝑡𝑎𝑙𝑎 𝑢𝑛 𝑡𝑒𝑙𝑒𝑓𝑜𝑛𝑜 𝑒𝑛 𝑙𝑎 𝑒𝑠𝑞𝑢𝑖𝑛𝑎 8


𝑋8 = {
0, 𝑛𝑜 𝑠𝑒 𝑖𝑛𝑠𝑡𝑙𝑎 𝑒𝑙 𝑡𝑒𝑙𝑒𝑓𝑜𝑛𝑜 𝑒𝑛 𝑙𝑎 𝑒𝑠𝑞𝑢𝑖𝑛𝑎 8

Tabla de cubrimiento de calles si se instala el teléfono en la esquina j


VARIABLES DE DECISION
CALLES
𝑋1 𝑋2 𝑋3 𝑋4 𝑋5 𝑋6 𝑋7 𝑋8
Calle A x x
Calle B x x
Calle C x x
Calle D x x
Calle E x x
Calle F x x
Calle G x x
Calle H x x
Calle I x x
Calle J x x
Calle K x x

Las restricciones del problema requieren que se instale al menos un teléfono en cada una de las 11
calles (A a K). El objetivo es minimizar el número de teléfonos a instalar de tal manera que cubra
todas las calles. El modelo matemático completo es:
𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = 𝑋1 + 𝑋2 + 𝑋3 + 𝑋4 + 𝑋5 + 𝑋6 + 𝑋7 + 𝑋8

𝑆𝑢𝑗𝑒𝑡𝑜 𝑎:

𝐶𝑎𝑙𝑙𝑒 𝐴: 𝑋1 + 𝑋2 ≥ 1

𝐶𝑎𝑙𝑙𝑒 𝐵: 𝑋2 + 𝑋3 ≥ 1

𝐶𝑎𝑙𝑙𝑒 𝐶: 𝑋4 + 𝑋5 ≥ 1

𝐶𝑎𝑙𝑙𝑒 𝐷: 𝑋7 + 𝑋8 ≥ 1

𝐶𝑎𝑙𝑙𝑒 𝐸: 𝑋6 + 𝑋7 ≥ 1

𝐶𝑎𝑙𝑙𝑒 𝐹: 𝑋2 + 𝑋6 ≥ 1

𝐶𝑎𝑙𝑙𝑒 𝐺: 𝑋1 + 𝑋6 ≥ 1

𝐶𝑎𝑙𝑙𝑒 𝐻: 𝑋4 + 𝑋7 ≥ 1

𝐶𝑎𝑙𝑙𝑒 𝐼: 𝑋2 + 𝑋4 ≥ 1

𝐶𝑎𝑙𝑙𝑒 𝐽: 𝑋5 + 𝑋8 ≥ 1

𝐶𝑎𝑙𝑙𝑒 𝐾: 𝑋3 + 𝑋5 ≥ 1

𝑋1 , 𝑋2 , 𝑋3 , 𝑋4 , 𝑋5 , 𝑋6 , 𝑋7 , 𝑋8 𝑏𝑖𝑛𝑎𝑟𝑖𝑎𝑠

Código gams

free variables
z minimo el numero de telefonos a instalar

binary variables
x1 instalar o no el telefono en la esquina 1
x2 instalar o no el telefono en la esquina 2
x3 instalar o no el telefono en la esquina 3
x4 instalar o no el telefono en la esquina 4
x5 instalar o no el telefono en la esquina 5
x6 instalar o no el telefono en la esquina 6
x7 instalar o no el telefono en la esquina 7
x8 instalar o no el telefono en la esquina 8;

equations
objetivo minimizar el numero de telefonos a instalar cubrimiento total
calleA restriccion cubrimiento de variables en calle A
calleB restriccion cubrimiento de variables en calle B
calleC restriccion cubrimiento de variables en calle C
calleD restriccion cubrimiento de variables en calle D
calleE restriccion cubrimiento de variables en calle E
calleF restriccion cubrimiento de variables en calle F
calleG restriccion cubrimiento de variables en calle G
calleH restriccion cubrimiento de variables en calle H
calleI restriccion cubrimiento de variables en calle I
calleJ restriccion cubrimiento de variables en calle J
calleK restriccion cubrimiento de variables en calle K;
objetivo.. z =e= x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8;
calleA.. x1 + x2 =G= 1;
calleB.. x2 + x3 =G= 1;
calleC.. x4 + x5 =G= 1;
calleD.. x7 + x8 =G= 1;
calleE.. x6 + x7 =G= 1;
calleF.. x2 + x6 =G= 1;
calleG.. x1 + x6 =G= 1;
calleH.. x4 + x7 =G= 1;
calleI.. x2 + x4 =G= 1;
calleJ.. x5 + x8 =G= 1;
calleK.. x3 + x5 =G= 1;

model ejemplo4 /all/;


solve ejemplo4 using mip minimizing z;

display z.L;
display x1.L,x2.L,x3.L,x4.L,x5.L,x6.L,x7.L,x8.L;

La solución óptima de este problema requiere que se instalen 4 teléfonos en las intersecciones o
esquinas 1,2,5 y 7 (𝑋1 = 1, 𝑋2 = 1, 𝑋5 = 1, 𝑋7 = 1 𝑐𝑜𝑛 𝑢𝑛 𝑍 = 4 𝑡𝑒𝑙𝑒𝑓𝑜𝑛𝑜𝑠).

Cubrimiento de calles
Esquinas Calle A Calle B Calle C Calle D Calle E Calle F Calle G Calle H Calle I Calle J Calle K
𝑋1 x x
𝑋2 x x x x
𝑋5 x x x
𝑋7 x x x

PROBLEMAS DE PROGRAMACION ENTERA

Ejemplo 5. MODELO CONSIDERANDO LA APERTURA O CIERRES DE PLANTAS

Consideremos el siguiente problema de transporte: el Gerente de una multinacional esta


considerando la apertura o cierre de plantas debido al exceso de capacidad disponible, esto debido
a la baja demanda del producto. El objetivo de Gerente es operar al menor costo posible. Se
considera en este problema los costos de operación de las plantas de producción (en dólares). Los
datos del problema son:

Costos de envio ($/unidad)


Costo operar
Almacen Almacen Almacen Almacen Capacidad
planta
1 2 3 4 (unidades/mes)
($/mes)
Planta 1 12 17 19 16 10000 3500000
Planta 2 15 12 11 20 8000 2700000
Planta 3 11 16 15 10 11500 5800000
Planta 4 12 14 19 11 9800 4780000
Planta 5 15 18 21 9 12000 6000000
Demanda
7500 8000 6300 5800
(unidades/mes
El modelo matemático asociado a este problema es:

Indices
i Plantas
j Almacenes
Parámetros
𝑎𝑖 = Capacidad planta i (unidades/mes)
𝑏𝑗 = Demanda almacén j (unidades/mes)
𝐶𝑖𝑗 = Costo de enviar una unidad desde planta i al almacén j ($/unidad)
𝐶𝑃𝑖 = Costo de operar la planta i (unidades/mes)
Variables de decision
Z Valor de la función objetivo
𝑋𝑖𝑗 = Cantidad a enviar desde planta i hacia al almacén j (unidades/mes)
𝑊𝑖 = Variable binaria que expresa la condición de operar o no la planta de producción i (1 opera
planta; 0 no opera la planta i)

𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = ∑𝑚 𝑚 𝑛
𝑖=1 𝐶𝑃𝑖 𝑊𝑖 + ∑𝑖=1 ∑𝑗=1 𝐶𝑖𝑗 𝑋𝑖𝑗

𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = 3500000𝑊1 + 2700000𝑊2 + ⋯ . .6000000𝑊5 + 12𝑋11 + ⋯ .9𝑋54


Sujeto a:

a) Restricción de capacidad de las plantas


∑𝑛𝑗=1 𝑋𝑖𝑗 ≤ 𝑎𝑖 𝑊𝑖 ∀𝑖

𝑃𝑙𝑎𝑛𝑡𝑎 1: 𝑋11 + 𝑋12 + 𝑋13 + 𝑋14 ≤ 10000𝑊1


………….

𝑃𝑙𝑎𝑛𝑡𝑎 5: 𝑋51 + 𝑋52 + 𝑋53 + 𝑋54 ≤ 12000𝑊5


b) Restricción de demanda de los almacenes
∑𝑚
𝑖=1 𝑋𝑖𝑗 = 𝑏𝑗 ∀𝑗

𝐴𝑙𝑚𝑎𝑐𝑒𝑛 1: 𝑋11 + 𝑋21 + 𝑋31 + 𝑋41 + 𝑋51 = 7500


…….

𝐴𝑙𝑚𝑎𝑐𝑒𝑛 4: 𝑋14 + 𝑋24 + 𝑋34 + 𝑋44 + 𝑋54 = 5800

c) Restricciones de variables

𝑋𝑖𝑗 ≥ 0, 𝑊𝑖 𝑣𝑎𝑟𝑖𝑎𝑏𝑙𝑒 𝑏𝑖𝑛𝑎𝑟𝑖𝑎


Codigo GAMS
SET
i PLANTAS DE PRODUCCION /P1*P5/
j ALMACENES /A1*A4/;
PARAMETERS
CP(i) COSTO OPERACION PLANTA I
/P1 3500000
P2 2700000
P3 5800000
P4 4780000
P5 6000000/

a(i) CAPACIDAD DE PRODUCCION PLANTA I


/P1 10000
P2 8000
P3 11500
P4 9800
P5 12000/

b(j) DEMANDA DE LOS ALMACENES J


/A1 7500
A2 8000
A3 6300
A4 5800/;

TABLE
C(i,j) COSTOS DE ENVIO DE PLANTA I AL ALMACEN J
A1 A2 A3 A4
P1 12 17 19 16
P2 15 12 11 20
P3 11 16 15 10
P4 12 14 19 11
P5 15 18 21 9;

FREE VARIABLES
Z VALOR DE LA FUNCION OBJETIVO ;

POSITIVE VARIABLES
X(i,j) CANTIDAD A ENVIAR DESDE PLANTA I AL ALMACEN J;

BINARY VARIABLES
W(i) VARIABLE BINARIA INDICA SI LA PLANTA I ABRE O NO;

EQUATION
COSTO MINIMIZAR COSTOS
CAPACIDAD(i) RESTRICCION DE CAPACIDAD PLANTAS
DEMANDA(j) RESTRICCION DE DEMANDA ALMACENES;

COSTO.. Z =E= SUM(i,CP(i)*W(i)) + SUM((i,j),C(i,j)*X(i,j));


CAPACIDAD(i).. SUM(j,X(i,j)) =L= a(i)*W(i);
DEMANDA(j).. SUM(i,X(i,j)) =E= b(j);

MODEL TRANSPORTE /ALL/


SOLVE TRANSPORTE USING MIP MINIMIZING Z;

DISPLAY Z.L;
DISPLAY X.L;
DISPLAY W.L;

Solucion GAMS
Como se observa en los resultados, las plantas de producción 3 y 5 no operaran.

Ejemplo 6. PROBLEMA DE TRANSBORDO

Formule el modelo matemático con los datos dados en el problema y resuélvalo en gams. Defina
en forma de notación los parámetros y las variables del modelo. Considere i plantas de producción,
j ensambladoras y k centros de consumo. Una empresa fabrica máquinas de un modelo
determinado, a partir de una estructura principal. Las estructuras principales son fabricadas en las
Plantas de Producción y estas luego son enviadas a las ensambladoras, las cuales terminan por
construir las máquinas, que son enviadas a los centros de consumo.

PLANTAS DE ENSAMBLADORAS CENTROS DE


PRODUCCION CONSUMO

CC1
A1 B1

CC2

A2 B2

CC3
Los datos de costos de envío, costos de producción , costos de ensamble y capacidades se dan en
las siguientes tablas.

PLANTA DE PRODUCCION COSTOS DE PRODUCCION POR CAPACIDADES (UNIDADES)


UNIDAD
A1 533 150
A2 530 170

ENSAMBLADORAS COSTO ENSAMBLE POR CAPACIDADES (UNIDADES)


UNIDAD
B1 2256 1000
B2 2239 1000

CENTROS DE CONSUMO DEMANDA (UNIDADES)


CC1 75
CC2 60
CC3 80

COSTOS DE ENVIO POR UNIDAD DESDE LAS PLANTAS A LAS ENSAMBLADORAS


B1 B2
A1 45 59
A2 65 52

COSTOS DE ENVIO POR UNIDAD DESDE LAS ENSAMBLADORAS A LOS CENTROS DE CONSUMO
CC1 CC2 CC3
B1 75 65 79
B2 81 74 63

El modelo matemático asociado a este problema es:

Indices
i Plantas
j Ensambladoras
k Centros de consumo

Parámetros
𝑎𝑖 = Capacidad planta i (unidades/mes)
𝑏𝑗 = capacidad de produccion de los centros de ensamble tipo j (unidades/mes)
𝑑𝑘 = Demanda de loscentros de consumo tipo k (unidades/mes)
𝐶𝑃𝑖 = Costo de producción en la planta i ($/unidad)
𝐶𝐸𝑗 = Costo de ensamble en la ensambladora j ($/ unidad)
𝐶𝑃𝐸𝑖𝑗 = Costo de enviar una unidad desde planta i a ensambladora j ($/ unidad)
𝐶𝐸𝐶𝑖𝑗 = Costo de enviar una unidad desde ensambladora j a centro de consumo j ($/ unidad)

Variables de decision
Z Valor de la función objetivo
𝑋𝑖𝑗 = Cantidad a enviar desde planta i hacia al almacén j (unidades/mes)
𝑌𝑗𝑘 = Cantidad a enviar desde la ensambladora j hacia el centro de consumo k (unidades/mes)

𝑝
𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = ∑𝑚 𝑛 𝑛
𝑖=1 ∑𝑗=1(𝐶𝑃𝐸𝑖𝑗 + 𝐶𝑃𝑖 )𝑋𝑖𝑗 + ∑𝑗=1 ∑𝑘=1(𝐶𝐸𝐶𝑖𝑗 + 𝐶𝐸𝑗 )𝑌𝑗𝑘
Sujeto a:
a) Restricción de capacidad de las plantas
∑𝑛𝑗=1 𝑋𝑖𝑗 ≤ 𝑎𝑖 ∀𝑖
b) Restricción de capacidad de las ensambladoras
∑𝑝𝑘=1 𝑌𝑗𝑘 ≤ 𝑏𝑗 ∀𝑗
c) Restricción de demanda de los centros de consumo
∑𝑛𝑗=1 𝑌𝑗𝑘 = 𝑑𝑘 ∀k
d) Restricción de conservación de flujo
𝑝
∑𝑚𝑖=1 𝑋𝑖𝑗 = ∑𝑘=1 𝑌𝑗𝑘 ∀𝑗
e) Restricciones de no negatividad
𝑋𝑖𝑗 , 𝑌𝑗𝑘 ≥ 0

Codigo GAMS
*MODELO 2 RESOLVER PROBLEMA DE TRANSBORDO

SET
I PLANTAS /P1,P2/
J ENSAMBLADORAS /E1,E2/
K CENTROS CONSUMO /CC1,CC2,CC3/;

PARAMETERS

A(I) CAPACIDAD DE PRODUCCION


/P1 150
P2 170/

B(J) CAPACIDAD DE PRODUCCION DE LOS CENTROS DE ENSAMBLE


/E1 1000000
E2 1000000/

D(K) DEMANDA DE LOS CENTROS DE CONSUMO


/CC1 75
CC2 60
CC3 80/

CP(I) COSTO DE PRODUCIR UNA ESTRUCTURA EN LA PLANTA I


/P1 533
P2 530/

CE(J) COSTO DE ENSAMBLAR UN PRODUCTO EN LA ENSAMBLADORA J


/E1 2256
E2 2239/;
TABLE CPE(I,J) COSTO DE ENVIAR UNA ESTRUCTURA DESDE LAS PLANTAS A LAS ENSAMBLADORAS

E1 E2
P1 45 59
P2 65 52;

TABLE CEC(J,K) COSTO DE ENVIAR UNA ESTRUCTURA DESDE LAS ENSAMBLADORAS A LOS CENTROS DE
CONSUMO

CC1 CC2 CC3


E1 75 65 79
E2 81 74 63;

FREE VARIABLES
Z;

POSITIVE VARIABLES
X(I,J) CANTIDAD DE ESTRUCTURAS A ENVIAR DESDE LAS PLANTAS A LAS ENSAMBLADORAS
Y(J,K) CANTIDAD DE PRODUCTOS ENSAMBLADOS A ENVIAR DESDE ENSAMBLADORAS A CENTROS DE
CONSUMO ;

EQUATIONS
COSTO FUNCION OBJETIVO
CAPOFER(I) RESTRICCION CAPACIDAD OFERTA PLANTAS
CAPENSAM(J)
BALANCE(J)
DEMANDA(K) RESTRICCION DEMANDA CENTROS DE CONSUMO ;

COSTO..Z=E= SUM((I,J), (CPE(I,J)+ CP(I))*X(I,J)) + SUM((J,K), (CEC(J,K)+ CE(J))*Y(J,K));


CAPOFER(I)..SUM(J,X(I,J)) =L= A(I);
CAPENSAM(J)..SUM(K,Y(J,K)) =L= B(J);
BALANCE(J)..SUM(I,X(I,J)) =E= SUM(K,Y(J,K));
DEMANDA(K)..SUM(J,Y(J,K)) =E= D(K);

MODEL TRANSBORDO /ALL/;


SOLVE TRANSBORDO USING LP MINIMIZING Z;

DISPLAY Z.L;
DISPLAY X.L;
DISPLAY Y.L;

Solucion GAMS
Ejemplo 7. PROBLEMA DE DISTRIBUCION MULTIPRODUCTO

La Gestión logística se apoya en gran medida con la programación matemática, para efectos de
obtener resultados óptimos o las mejores soluciones de un problema específico. Se plantea un
modelo de Distribución Multiproducto, se aplica un ejemplo y se obtiene su solución con la
herramienta computacional GAMS. Un problema de localización de almacenes se describe de la
siguiente manera: hay varias mercancías o productos elaborados en diferentes plantas con
capacidades de producción conocidas. Se conoce la demanda para cada mercancía en cada punto
de consumo. La demanda de los puntos de consumo es abastecida por cada almacén, cuyas
capacidades también son conocidas. Cada planta de consumo tiene asignado exclusivamente un
almacén. Los costos asociados son: costos de transporte o de envío (planta-almacén-punto de
consumo), costos de producción y costos de manejo del producto.

El problema es determinar cual almacén debe ser utilizado, que puntos de consumo deben ser
servidos por cada almacén y que modelo de flujo de transporte debe usarse para todos los productos.

En resumen un problema de distribución multiproducto debe ser expresado de la siguiente forma:

❖ La capacidad disponible de las plantas no puede ser excedida para cada producto.
❖ La demanda para todos los productos debe ser conocida.
❖ Las unidades vendibles de cada almacén no pueden exceder la capacidad.
❖ Todos los productos para el mismo cliente deben ser servidos de un mismo almacén.

(Modelo de distribución multiproducto)

DEFINICIÓN DE SUBÍNDICES, PARÁMETROS Y VARIABLES


❖ Subíndices
i = subíndice que identifica los tipos de productos i {i =1,…, m}

j = subíndice que identifica las plantas de producción j {j = 1,…, n}

k = subíndice que identifica los posibles almacenes k que se abrirán en la red de


abastecimiento {k =1,…, K}

w = subíndice que define las zonas de consumo w {w = 1,…, W}

❖ Parámetros
𝑺𝒊𝒋 = capacidad de producción o de suministro de producto tipo i en la planta j

𝑫𝒊𝒘 = demanda del producto tipo i en la zona de consumo w

𝑽𝒌 = capacidad máxima del almacén u operador tipo k

𝑭𝒌 = costo fijo por el almacenamiento y operación del almacén u operador tipo k

𝑽𝑴𝒌 = costo unitario de manejo del producto en transito en el almacén u operador tipo k

𝑪𝒊𝒋𝒌𝒘 = costo unitario promedio por concepto de producción, transporte y empaque de un


producto tipo i, fabricado en la planta j, enviado a través del almacén k, a la zona de
consumo w
❖ Variables
𝑿𝒊𝒋𝒌𝒘= variable que determina la cantidad de producto i fabricado en la planta j, enviado a
través del almacén tipo k, a la zona de consumo w

𝒀𝒌𝒘 = variable binaria que determina la apertura (1) o no (0) del almacén tipo k, para servir
a la zona de consumo w

𝑨𝒌 = variable binaria que determina la apertura (1) o no (0) del almacén tipo k y dispara el
costo fijo correspondiente

ESTRUCTURA GENERAL DEL MODELO

a. Función objetivo
𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = ∑𝑚 𝑛 𝐾 𝑊 𝐾 𝑊 𝑛
𝑖=1 ∑𝑗=1 ∑𝑘=1 ∑𝑤=1 𝐶𝑖𝑗𝑘𝑤 𝑋𝑖𝑗𝑘𝑤 + ∑𝑘=1[𝐹𝑘 𝐴𝑘 + 𝑉𝑀𝑘 ∑𝑤=1(∑𝑖=1 𝐷𝑖𝑤 )𝑌𝑘𝑤 ]
Sujeto a:
b. Restricciones de capacidad

∑𝐾 𝑊
𝑘=1 ∑𝑤=1 𝑋𝑖𝑗𝑘𝑤 ≤ 𝑆𝑖𝑗 ∀𝑖, 𝑗

c. Restricciones de satisfacción de la demanda

∑𝑛𝑗=1 𝑋𝑖𝑗𝑘𝑤 = 𝐷𝑖𝑤 𝑌𝑘𝑤 ∀𝑖, 𝑘, 𝑤

d. Restricciones de capacidad de manejo y envió de los almacenes

∑𝑊 𝑛
𝑤=1[∑𝑖=1 𝐷𝑖𝑤 ]𝑌𝑘𝑤 ≤ 𝑉𝑘 ∀𝑘

e. Restricciones de apertura de los almacenes

∑𝐾
𝑘=1 𝑌𝑘𝑤 = 1 ∀𝑤

f. Restricciones que disparan la generación de costo fijo en los almacenes abiertos

𝑌𝑘𝑤 = 𝐴𝑘 ∀𝑘, 𝑤

g. Restricciones de variables

𝑋𝑖𝑗𝑘𝑤 ≥ 0, 𝑌𝑘𝑤 𝑦 𝐴𝑘 𝑣𝑎𝑟𝑖𝑎𝑏𝑙𝑒𝑠 𝑏𝑖𝑛𝑎𝑟𝑖𝑎𝑠


Problema de aplicación con programación lineal entera mixta.
Codigo GAMS
SET
i producto /prod1,prod2/
j planta /p1,p2/
k almacen /a1,a2/
w cliente /c1,c2,c3/;

PARAMETERS
V(k) capacidad del almacen tipo k
/a1 110000
a2 1000000/

F(k) costo fijo almacen tipo k


/a1 100000
a2 500000/

VM(k) costo de manejo del almacen tipo k


/a1 2
a2 1/;

TABLE D(i,w) demanda de producto tipo i por el cliente en centro de consumo tipo l

c1 c2 c3
prod1 50000 100000 50000
prod2 20000 30000 60000;

TABLE S(i,j) capacidad de la planta tipo j de producto tipo i

p1 p2
prod1 60000 1000000
prod2 50000 1000000;

TABLE C(i,j,k,w) costo de produccion mas envio


c1 c2 c3
prod1.p1.a1 8 7 9
prod1.p1.a2 11 10 11
prod1.p2.a1 12 11 13
prod1.p2.a2 8 7 8
prod2.p1.a1 6 5 7
prod2.p1.a2 11 10 11
prod2.p2.a1 9 8 10
prod2.p2.a2 7 6 7;

BINARY VARIABLES
Y(k,w) variable binaria de servicio del almacen tipo k al cliente tipo l
A(k) variable binaria de apertura del almacen tipo k;

FREE VARIABLES
Z valor de la funcion objetivo;

POSITIVE VARIABLES
X(i,j,k,w) variable de decision - cantidad de producto tipo i a enviar desde planta j a
almacen k con destino a cliente l;

EQUATIONS

COSTO Funcion objetivo


CAPLAN(i,j) Restriccion de capacidades de planta
DEMANDA(i,k,w) Restriccion de demanda de los clientes
CAPBOD(k) Restriccion de capacidad de las bodegas
CLIENTE(w) Restriccion de asignacion almacen a cliente
APERTURA(k,w) Restriccion de apertura de almacenes;

COSTO..Z=E=SUM((i,j,k,w),C(i,j,k,w)*X(i,j,k,w))+
SUM(k,F(k)*A(k)+VM(k)*sum((w,i),D(i,w)*Y(k,w)));
CAPLAN(i,j)..SUM((k,w),X(i,j,k,w))=L=S(i,j);
DEMANDA(i,k,w)..SUM(j,X(i,j,k,w))=E=D(i,w)*Y(k,w);
CAPBOD(k)..SUM((w,i),D(i,w)*Y(k,w))=L=V(k);
CLIENTE(w)..SUM(k,Y(k,w))=E=1;
APERTURA(k,w)..Y(k,w)=E=A(k);

MODEL MULTIPRODUCTO /ALL/;


SOLVE MULTIPRODUCTO using mip minimizing Z;

DISPLAY Z.L;
DISPLAY X.L;
DISPLAY Y.L;
DISPLAY A.L;

Solucion GAMS

Ejemplo 8. La empresa MARGIE fabricante de muñecas, está desarrollando tres nuevas muñecas
que son: JULIA, BERTHA y GINA. Cada muñeca tiene funcionalidades diferentes lo que hace que su
proceso de producción sea asimismo diferente. El diseño e implementación de su proceso de
producción para la fabricación de estas muñecas, es decir, sus costos de fabricación, cuestan 30000,
40000 y 35000 pesos respectivamente. Las ganancias o ingresos unitarios son de 120000, 150000 y
130000 pesos respectivamente. La empresa dispone de 3 plantas de producción para la fabricación
de estas muñecas. No obstante, la empresa, para minimizar costos de operación de fabricación,
desea que las 3 muñecas se elaboren en una sola planta, atendiendo obviamente a maximizar sus
utilidades.

Los tiempos de producción (Horas/unidad) que se precisa para producir cada muñeca en cada planta
es:

Horas / unidad
Muñeca 1 (Julia) Muñeca 2 (Bertha) Muñeca 3 (Gina)
Planta 1 6 5 7
Planta 2 5 3 3
Planta 3 4 4 3

La capacidad disponible de las plantas es: 660, 850 y 740 horas/día respectivamente. El gerente de
operaciones ha decidido desarrollar al menos una de las tres muñecas.

a) Formule el modelo de programación lineal entera para maximizar las utilidades.

b) El gerente de operaciones decide producir únicamente la muñeca 3, pero se debe tener en


cuenta que, si produce más de 60 unidades de este tipo de muñeca, implicaría que su costo de
fabricación cambiara a 45000 dólares y debe producirse en la planta 3. Formule el modelo de
programación lineal entera.

SOLUCION:

a) Formule el modelo de programación lineal entera para maximizar las utilidades.

Indices

𝑖 𝑡𝑖𝑝𝑜 𝑑𝑒 𝑚𝑢ñ𝑒𝑐𝑎
𝑗 𝑡𝑖𝑝𝑜 𝑝𝑙𝑎𝑛𝑡𝑎
Variables de decisión

𝑋𝑖 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑚𝑢ñ𝑒𝑐𝑎𝑠 𝑝𝑟𝑜𝑑𝑢𝑐𝑖𝑑𝑎𝑠 𝑑𝑖𝑎𝑟𝑖𝑎𝑚𝑒𝑛𝑡𝑒 𝑑𝑒𝑙 𝑡𝑖𝑝𝑜 𝑖


𝑋1 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑚𝑢ñ𝑒𝑐𝑎𝑠 𝑝𝑟𝑜𝑑𝑢𝑐𝑖𝑑𝑎𝑠 𝑑𝑖𝑎𝑟𝑖𝑎𝑚𝑒𝑛𝑡𝑒 𝑑𝑒𝑙 𝑡𝑖𝑝𝑜 𝑗𝑢𝑙𝑖𝑎
𝑋2 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑚𝑢ñ𝑒𝑐𝑎𝑠 𝑝𝑟𝑜𝑑𝑢𝑐𝑖𝑑𝑎𝑠 𝑑𝑖𝑎𝑟𝑖𝑎𝑚𝑒𝑛𝑡𝑒 𝑑𝑒𝑙 𝑡𝑖𝑝𝑜 𝑏𝑒𝑟𝑡ℎ𝑎
𝑋3 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑚𝑢ñ𝑒𝑐𝑎𝑠 𝑝𝑟𝑜𝑑𝑢𝑐𝑖𝑑𝑎𝑠 𝑑𝑖𝑎𝑟𝑖𝑎𝑚𝑒𝑛𝑡𝑒 𝑑𝑒𝑙 𝑡𝑖𝑝𝑜 𝑔𝑖𝑛𝑎
1 𝑠𝑖 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑙𝑎 𝑚𝑢ñ𝑒𝑐𝑎 𝑡𝑖𝑝𝑜 𝑖
𝑌𝑖 = {
0 𝑠𝑖 𝑛𝑜 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑙𝑎 𝑚𝑢ñ𝑒𝑐𝑎 𝑡𝑖𝑝𝑜 𝑖
1 𝑠𝑖 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑙𝑎 𝑚𝑢ñ𝑒𝑐𝑎 𝑡𝑖𝑝𝑜 𝑗𝑢𝑙𝑖𝑎
𝑌1 = {
0 𝑠𝑖 𝑛𝑜 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑙𝑎 𝑚𝑢ñ𝑒𝑐𝑎 𝑡𝑖𝑝𝑜 𝑗𝑢𝑙𝑖𝑎
1 𝑠𝑖 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑙𝑎 𝑚𝑢ñ𝑒𝑐𝑎 𝑡𝑖𝑝𝑜 𝑏𝑒𝑟𝑡ℎ𝑎
𝑌2 = {
0 𝑠𝑖 𝑛𝑜 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑙𝑎 𝑚𝑢ñ𝑒𝑐𝑎 𝑡𝑖𝑝𝑜 𝑏𝑒𝑟𝑡ℎ𝑎
1 𝑠𝑖 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑙𝑎 𝑚𝑢ñ𝑒𝑐𝑎 𝑡𝑖𝑝𝑜 𝑔𝑖𝑛𝑎
𝑌3 = {
0 𝑠𝑖 𝑛𝑜 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑙𝑎 𝑚𝑢ñ𝑒𝑐𝑎 𝑡𝑖𝑝𝑜 𝑔𝑖𝑛𝑎
1 𝑠𝑖 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑝𝑙𝑎𝑛𝑡𝑎 𝑡𝑖𝑝𝑜 𝑗
𝑍𝑗 = {
0 𝑠𝑖 𝑛𝑜 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑝𝑙𝑎𝑛𝑡𝑎 𝑡𝑖𝑝𝑜 𝑗
1 𝑠𝑖 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑝𝑙𝑎𝑛𝑡𝑎 𝑡𝑖𝑝𝑜 1
𝑍1 = {
0 𝑠𝑖 𝑛𝑜 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑝𝑙𝑎𝑛𝑡𝑎 𝑡𝑖𝑝𝑜 1
1 𝑠𝑖 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑝𝑙𝑎𝑛𝑡𝑎 𝑡𝑖𝑝𝑜 2
𝑍2 = {
0 𝑠𝑖 𝑛𝑜 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑝𝑙𝑎𝑛𝑡𝑎 𝑡𝑖𝑝𝑜 2
1 𝑠𝑖 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑝𝑙𝑎𝑛𝑡𝑎 𝑡𝑖𝑝𝑜 3
𝑍3 = {
0 𝑠𝑖 𝑛𝑜 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑝𝑙𝑎𝑛𝑡𝑎 𝑡𝑖𝑝𝑜 3
El modelo de PLEM es:

𝑀𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑊 = 120000𝑋1 − 30000𝑌1 + 150000𝑋2 − 40000𝑌2 + 130000𝑋3 − 35000𝑌3


𝑆𝑢𝑗𝑒𝑡𝑜 𝑎:
1) Restricción de fabricación de muñecas (al menos fabricar una de las tres muñecas)

𝑌1 + 𝑌2 + 𝑌3 ≥ 1
2) Restricción activación fabricar muñecas

𝑋𝑖 ≤ 𝑀𝑌𝑖, ∀𝑖

𝑋1 ≤ 𝑀𝑌1,

𝑋2 ≤ 𝑀𝑌2,

𝑋3 ≤ 𝑀𝑌3,

3) Restricción de capacidades plantas

𝑃𝑙𝑎𝑛𝑡𝑎 1: 6𝑋1 + 5𝑋2 + 7𝑋3 ≤ 660 + 𝑀(1 − 𝑍1 )


𝑃𝑙𝑎𝑛𝑡𝑎 2: 5𝑋1 + 3𝑋2 + 3𝑋3 ≤ 850 + 𝑀(1 − 𝑍2 )
𝑃𝑙𝑎𝑛𝑡𝑎 3: 4𝑋1 + 4𝑋2 + 3𝑋3 ≤ 740 + 𝑀(1 − 𝑍3 )

4) Restricción de exclusividad fabricar en una planta

𝑍1 + 𝑍2 + 𝑍3 = 1

5) Restricciones lógicas

𝑋𝑖 ≥ 0 𝑦 𝑒𝑛𝑡𝑒𝑟𝑎𝑠 , ∀𝑖 = 1,2,3
𝑌𝑖 𝑏𝑖𝑛𝑎𝑟𝑖𝑎, 𝑌𝑖 = 0,1, ∀𝑖 = 1,2,3
𝑍𝑗 𝑏𝑖𝑛𝑎𝑟𝑖𝑎, 𝑍𝑗 = 0,1, ∀𝑗 = 1,2,3

𝑀 𝑣𝑎𝑙𝑜𝑟 𝑔𝑟𝑎𝑛𝑑𝑒 𝑝𝑜𝑠𝑖𝑡𝑖𝑣𝑜 (𝑠𝑢𝑓𝑖𝑐𝑖𝑒𝑛𝑡𝑒𝑚𝑒𝑛𝑡𝑒 𝑔𝑟𝑎𝑛𝑑𝑒)

b) El gerente de operaciones, decide producir únicamente la muñeca 3, pero se debe tener en


cuenta que, si produce más de 60 unidades de este tipo de muñeca, implicaría que su costo de
fabricación cambiara a 45000 dólares y debe producirse en la planta 3. Formule el modelo de
programación lineal entera.

1 𝑠𝑖 𝑋3 ≥ 61
𝑃={
0 𝑠𝑖 𝑛𝑜
El modelo de PLEM es:

𝑀𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑊 = 130000𝑋3 − 35000(1 − 𝑃) − 45000𝑃


𝑆𝑢𝑗𝑒𝑡𝑜 𝑎:
1) Restricción limite producción de 𝑋3

61𝑃 ≤ 𝑋3 ≤ 60(1 − 𝑃) + 𝑀𝑃
Si P = 0 se activa 𝑋3 ≤ 60, si P = 1 entonces 61𝑃 ≤ 𝑋3 o 𝑋3 ≥ 61

2) Restricción planta 3

𝑃 ≤ 𝑍3
3) Restricción de capacidades plantas

𝑃𝑙𝑎𝑛𝑡𝑎 1: 7𝑋3 ≤ 660 + 𝑀(1 − 𝑍1 )


𝑃𝑙𝑎𝑛𝑡𝑎 2: 3𝑋3 ≤ 850 + 𝑀(1 − 𝑍2 )
𝑃𝑙𝑎𝑛𝑡𝑎 3: 3𝑋3 ≤ 740 + 𝑀(1 − 𝑍3 )

4) Restricción de exclusividad fabricar en una planta

𝑍1 + 𝑍2 + 𝑍3 = 1

5) Restricciones lógicas

𝑋3 ≥ 0 𝑦 𝑒𝑛𝑡𝑒𝑟𝑎
𝑃 = 0,1
𝑍𝑗 𝑏𝑖𝑛𝑎𝑟𝑖𝑎, 𝑍𝑗 = 0,1, ∀𝑗 = 1,2,3
𝑀 𝑣𝑎𝑙𝑜𝑟 𝑔𝑟𝑎𝑛𝑑𝑒 𝑝𝑜𝑠𝑖𝑡𝑖𝑣𝑜 (𝑠𝑢𝑓𝑖𝑐𝑖𝑒𝑛𝑡𝑒𝑚𝑒𝑛𝑡𝑒 𝑔𝑟𝑎𝑛𝑑𝑒)
Ejemplo 9. La universidad Graham está en el proceso de formar un comité asesor para mejorar la
prestación de servicios de Bienestar Universitario. Diez personas han sido nominadas para
conformar este comité. El reglamento interno de la universidad obliga a que sean incluidos en dicho
comité por lo menos: una mujer, un hombre, un estudiante, un psicólogo/a y un docente. La
selección inicial de personas en dichas categorías es:

CATEGORIA PERSONAL ESCOGIDO


Mujer A, B, C, D, E, F
Hombre G, H, I, J
Estudiante A, B, C, J
Psicólogo E, F
Docente D, G, H, I

Además, el número de mujeres debe ser igual al de los hombres y el número de profesores no debe
ser inferior al de los administrativos. Formular el modelo de programación lineal entera, con el
objeto de que el comité sea lo más reducido posible.

Solución:

Indice

𝑖 = 𝑝𝑒𝑟𝑠𝑜𝑛𝑎𝑙 𝑒𝑠𝑐𝑜𝑔𝑖𝑑𝑜 𝑡𝑖𝑝𝑜 𝑖, 𝑖 = 𝐴, 𝐵, 𝐶, 𝐷, 𝐸, 𝐹, 𝐺, 𝐻, 𝐼, 𝐽


Variable de decisión
1 𝑠𝑖 𝑠𝑒 𝑖𝑛𝑐𝑙𝑢𝑦𝑒 𝑝𝑒𝑟𝑠𝑜𝑛𝑎 𝑖 𝑒𝑛 𝑙𝑎 𝑐𝑜𝑚𝑖𝑠𝑖𝑜𝑛
𝑋𝑖 = {
0 𝑛𝑜 𝑠𝑒 𝑖𝑛𝑐𝑙𝑢𝑦𝑒 𝑝𝑒𝑟𝑠𝑜𝑛𝑎 𝑖 𝑒𝑛 𝑙𝑎 𝑐𝑜𝑚𝑖𝑠𝑖𝑜𝑛
1 𝑠𝑖 𝑠𝑒 𝑖𝑛𝑐𝑙𝑢𝑦𝑒 𝑝𝑒𝑟𝑠𝑜𝑛𝑎 𝐴 𝑒𝑛 𝑙𝑎 𝑐𝑜𝑚𝑖𝑠𝑖𝑜𝑛
𝑋𝐴 = {
0 𝑛𝑜 𝑠𝑒 𝑖𝑛𝑐𝑙𝑢𝑦𝑒 𝑝𝑒𝑟𝑠𝑜𝑛𝑎 𝐴 𝑒𝑛 𝑙𝑎 𝑐𝑜𝑚𝑖𝑠𝑖𝑜𝑛
1 𝑠𝑖 𝑠𝑒 𝑖𝑛𝑐𝑙𝑢𝑦𝑒 𝑝𝑒𝑟𝑠𝑜𝑛𝑎 𝐵 𝑒𝑛 𝑙𝑎 𝑐𝑜𝑚𝑖𝑠𝑖𝑜𝑛
𝑋𝐵 = {
0 𝑛𝑜 𝑠𝑒 𝑖𝑛𝑐𝑙𝑢𝑦𝑒 𝑝𝑒𝑟𝑠𝑜𝑛𝑎 𝐵 𝑒𝑛 𝑙𝑎 𝑐𝑜𝑚𝑖𝑠𝑖𝑜𝑛
1 𝑠𝑖 𝑠𝑒 𝑖𝑛𝑐𝑙𝑢𝑦𝑒 𝑝𝑒𝑟𝑠𝑜𝑛𝑎 𝐶 𝑒𝑛 𝑙𝑎 𝑐𝑜𝑚𝑖𝑠𝑖𝑜𝑛
𝑋𝐶 = {
0 𝑛𝑜 𝑠𝑒 𝑖𝑛𝑐𝑙𝑢𝑦𝑒 𝑝𝑒𝑟𝑠𝑜𝑛𝑎 𝐶 𝑒𝑛 𝑙𝑎 𝑐𝑜𝑚𝑖𝑠𝑖𝑜𝑛
1 𝑠𝑖 𝑠𝑒 𝑖𝑛𝑐𝑙𝑢𝑦𝑒 𝑝𝑒𝑟𝑠𝑜𝑛𝑎 𝐷 𝑒𝑛 𝑙𝑎 𝑐𝑜𝑚𝑖𝑠𝑖𝑜𝑛
𝑋𝐷 = {
0 𝑛𝑜 𝑠𝑒 𝑖𝑛𝑐𝑙𝑢𝑦𝑒 𝑝𝑒𝑟𝑠𝑜𝑛𝑎 𝐷 𝑒𝑛 𝑙𝑎 𝑐𝑜𝑚𝑖𝑠𝑖𝑜𝑛
1 𝑠𝑖 𝑠𝑒 𝑖𝑛𝑐𝑙𝑢𝑦𝑒 𝑝𝑒𝑟𝑠𝑜𝑛𝑎 𝐸 𝑒𝑛 𝑙𝑎 𝑐𝑜𝑚𝑖𝑠𝑖𝑜𝑛
𝑋𝐸 = {
0 𝑛𝑜 𝑠𝑒 𝑖𝑛𝑐𝑙𝑢𝑦𝑒 𝑝𝑒𝑟𝑠𝑜𝑛𝑎 𝐸 𝑒𝑛 𝑙𝑎 𝑐𝑜𝑚𝑖𝑠𝑖𝑜𝑛
1 𝑠𝑖 𝑠𝑒 𝑖𝑛𝑐𝑙𝑢𝑦𝑒 𝑝𝑒𝑟𝑠𝑜𝑛𝑎 𝐹 𝑒𝑛 𝑙𝑎 𝑐𝑜𝑚𝑖𝑠𝑖𝑜𝑛
𝑋𝐹 = {
0 𝑛𝑜 𝑠𝑒 𝑖𝑛𝑐𝑙𝑢𝑦𝑒 𝑝𝑒𝑟𝑠𝑜𝑛𝑎 𝐹 𝑒𝑛 𝑙𝑎 𝑐𝑜𝑚𝑖𝑠𝑖𝑜𝑛
1 𝑠𝑖 𝑠𝑒 𝑖𝑛𝑐𝑙𝑢𝑦𝑒 𝑝𝑒𝑟𝑠𝑜𝑛𝑎 𝐺 𝑒𝑛 𝑙𝑎 𝑐𝑜𝑚𝑖𝑠𝑖𝑜𝑛
𝑋𝐺 = {
0 𝑛𝑜 𝑠𝑒 𝑖𝑛𝑐𝑙𝑢𝑦𝑒 𝑝𝑒𝑟𝑠𝑜𝑛𝑎 𝐺 𝑒𝑛 𝑙𝑎 𝑐𝑜𝑚𝑖𝑠𝑖𝑜𝑛
1 𝑠𝑖 𝑠𝑒 𝑖𝑛𝑐𝑙𝑢𝑦𝑒 𝑝𝑒𝑟𝑠𝑜𝑛𝑎 𝐻 𝑒𝑛 𝑙𝑎 𝑐𝑜𝑚𝑖𝑠𝑖𝑜𝑛
𝑋𝐻 = {
0 𝑛𝑜 𝑠𝑒 𝑖𝑛𝑐𝑙𝑢𝑦𝑒 𝑝𝑒𝑟𝑠𝑜𝑛𝑎 𝐻 𝑒𝑛 𝑙𝑎 𝑐𝑜𝑚𝑖𝑠𝑖𝑜𝑛
1 𝑠𝑖 𝑠𝑒 𝑖𝑛𝑐𝑙𝑢𝑦𝑒 𝑝𝑒𝑟𝑠𝑜𝑛𝑎 𝐼 𝑒𝑛 𝑙𝑎 𝑐𝑜𝑚𝑖𝑠𝑖𝑜𝑛
𝑋𝐼 = {
0 𝑛𝑜 𝑠𝑒 𝑖𝑛𝑐𝑙𝑢𝑦𝑒 𝑝𝑒𝑟𝑠𝑜𝑛𝑎 𝐼 𝑒𝑛 𝑙𝑎 𝑐𝑜𝑚𝑖𝑠𝑖𝑜𝑛
1 𝑠𝑖 𝑠𝑒 𝑖𝑛𝑐𝑙𝑢𝑦𝑒 𝑝𝑒𝑟𝑠𝑜𝑛𝑎 𝐽 𝑒𝑛 𝑙𝑎 𝑐𝑜𝑚𝑖𝑠𝑖𝑜𝑛
𝑋𝐽 = {
0 𝑛𝑜 𝑠𝑒 𝑖𝑛𝑐𝑙𝑢𝑦𝑒 𝑝𝑒𝑟𝑠𝑜𝑛𝑎 𝐽 𝑒𝑛 𝑙𝑎 𝑐𝑜𝑚𝑖𝑠𝑖𝑜𝑛
La formulación del modelo PEB o PLEB es:

𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝑍 = 𝑋𝐴 + 𝑋𝐵 + 𝑋𝐶 + 𝑋𝐷 + 𝑋𝐸 + 𝑋𝐹 + 𝑋𝐺 + 𝑋𝐻 + 𝑋𝐼 + 𝑋𝐽

𝑆𝑢𝑗𝑒𝑡𝑜 𝑎:
1) Por lo menos se debe elegir una mujer en el comité

𝑋𝐴 + 𝑋𝐵 + 𝑋𝐶 + 𝑋𝐷 + 𝑋𝐸 + 𝑋𝐹 ≥ 1
2) Por lo menos se debe elegir un hombre en el comité

𝑋𝐺 + 𝑋𝐻 + 𝑋𝐼 + 𝑋𝐽 ≥ 1

3) Por lo menos se debe elegir un estudiante

𝑋𝐴 + 𝑋𝐵 + 𝑋𝐶 + 𝑋𝐽 ≥ 1

4) Por lo menos se debe elegir un psicólogo

𝑋𝐸 + 𝑋𝐹 ≥ 1
5) Por lo menos se debe elegir un docente

𝑋𝐷 + 𝑋𝐺 + 𝑋𝐻 + 𝑋𝐼 ≥ 1
6) El numero de mujeres debe ser igual al numero de hombres

𝑋𝐴 + 𝑋𝐵 + 𝑋𝐶 + 𝑋𝐷 + 𝑋𝐸 + 𝑋𝐹 = 𝑋𝐺 + 𝑋𝐻 + 𝑋𝐼 + 𝑋𝐽

7) el número de profesores no debe ser inferior al de los administrativos

𝑋𝐷 + 𝑋𝐺 + 𝑋𝐻 + 𝑋𝐼 ≥ 𝑋𝐸 + 𝑋𝐹
8) Restricciones lógicas

𝑋𝐴 , 𝑋𝐵 , 𝑋𝐶 , 𝑋𝐷 , 𝑋𝐸 , 𝑋𝐹 , 𝑋𝐺 , 𝑋𝐻 , 𝑋𝐼 , 𝑋𝐽 𝑏𝑖𝑛𝑎𝑟𝑖𝑎𝑠

Ejemplo 10. La empresa LG fabricante de electrodomésticos está proyectando abrir una nueva
fábrica para producir 3 modelos de Televisores: modelo de gama alta, media y baja. Tiene 2 posibles
ubicaciones: 1 y 2. La inversión necesaria para construir la fábrica en la ubicación 1 es de 3000000
de dólares y de 2800000 dólares en la ubicación 2. Los costos unitarios de producción son 800, 650
y 400 dólares, respectivamente para gama alta, media y baja en la ubicación 1; en la ubicación 2 los
costos son 900, 600 y 350 dólares, respectivamente. De la gama alta se deben producir al menos
80000 unidades anuales, 110000 unidades de la gama media y 220000 unidades de la gama baja.
a) Formule el modelo de programación lineal entera, con el objeto de minimizar costos, si solo se
va a construir una fabrica.

b) Formule el modelo de programación lineal entera, con el objeto de minimizar costos, si se


incluye la posibilidad de construir dos fábricas (ubicación 1 y 2), bajo las siguientes restricciones:
en caso de producirse televisores de gama baja en la ubicación 1 se recibirá un auxilio por parte
del gobierno de 1100000 dólares y la gama alta se producirá únicamente en una de las dos
ubicaciones.

Solución:

a) Formule el modelo de programación lineal entera, con el objeto de minimizar costos, si solo
se va a construir una fábrica.

𝑖 = 𝑡𝑖𝑝𝑜 𝑑𝑒 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 , 𝑖 = 1,2


𝑗 = 𝑡𝑖𝑝𝑜 𝑑𝑒 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟, 𝑗 = 𝑎, 𝑚, 𝑏

Variables de decisión

𝑋𝑖𝑗 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟𝑒𝑠 𝑑𝑒 𝑙𝑎 𝑔𝑎𝑚𝑎 𝑡𝑖𝑝𝑜 𝑗 𝑝𝑟𝑜𝑑𝑢𝑐𝑖𝑑𝑎𝑠 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 𝑖 𝑎𝑙 𝑎ñ𝑜


𝑋1𝑎 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟𝑒𝑠 𝑑𝑒 𝑙𝑎 𝑔𝑎𝑚𝑎 𝑎𝑙𝑡𝑎 𝑝𝑟𝑜𝑑𝑢𝑐𝑖𝑑𝑎𝑠 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 1 𝑎𝑙 𝑎ñ𝑜
𝑋1𝑚 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟𝑒𝑠 𝑑𝑒 𝑙𝑎 𝑔𝑎𝑚𝑎 𝑚𝑒𝑑𝑖𝑎 𝑝𝑟𝑜𝑑𝑢𝑐𝑖𝑑𝑎𝑠 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 1 𝑎𝑙 𝑎ñ𝑜
𝑋1𝑏 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟𝑒𝑠 𝑑𝑒 𝑙𝑎 𝑔𝑎𝑚𝑎 𝑏𝑎𝑗𝑎 𝑝𝑟𝑜𝑑𝑢𝑐𝑖𝑑𝑎𝑠 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 1 𝑎𝑙 𝑎ñ𝑜
𝑋2𝑎 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟𝑒𝑠 𝑑𝑒 𝑙𝑎 𝑔𝑎𝑚𝑎 𝑎𝑙𝑡𝑎 𝑝𝑟𝑜𝑑𝑢𝑐𝑖𝑑𝑎𝑠 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 2 𝑎𝑙 𝑎ñ𝑜
𝑋2𝑚 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟𝑒𝑠 𝑑𝑒 𝑙𝑎 𝑔𝑎𝑚𝑎 𝑚𝑒𝑑𝑖𝑎 𝑝𝑟𝑜𝑑𝑢𝑐𝑖𝑑𝑎𝑠 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 2 𝑎𝑙 𝑎ñ𝑜
𝑋2𝑏 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟𝑒𝑠 𝑑𝑒 𝑙𝑎 𝑔𝑎𝑚𝑎 𝑏𝑎𝑗𝑎 𝑝𝑟𝑜𝑑𝑢𝑐𝑖𝑑𝑎𝑠 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 2 𝑎𝑙 𝑎ñ𝑜

1 𝑠𝑖 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 𝑖
𝑌𝑖 = {
0 𝑛𝑜 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 𝑖

1 𝑠𝑖 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 1
𝑌1 = {
0 𝑛𝑜 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 1
1 𝑠𝑖 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 2
𝑌2 = {
0 𝑛𝑜 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 2
El modelo de PLEM es:

𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝑊 = 800𝑋1𝑎 + 650𝑋1𝑚 + 400𝑋1𝑏 + 900𝑋2𝑎 + 600𝑋2𝑚 + 350𝑋2𝑏 + 3000000𝑌1


+ 2800000𝑌2
𝑆𝑢𝑗𝑒𝑡𝑜 𝑎:
1) Restricciones de producción

𝐺𝑎𝑚𝑎 𝑎𝑙𝑡𝑎: 𝑋1𝑎 + 𝑋2𝑎 ≥ 80000


𝐺𝑎𝑚𝑎 𝑚𝑒𝑑𝑖𝑎: 𝑋1𝑚 + 𝑋2𝑚 ≥ 110000
𝐺𝑎𝑚𝑎 𝑏𝑎𝑗𝑎: 𝑋1𝑏 + 𝑋2𝑏 ≥ 220000
1) Construir la fabrica en una sola ubicacion

𝑌1 + 𝑌2 = 1
2) Restricción de activación producción en fabricas o plantas

𝑋1𝑎 ≤ 𝑀𝑌1
𝑋2𝑎 ≤ 𝑀𝑌2
𝑋1𝑚 ≤ 𝑀𝑌1
𝑋2𝑚 ≤ 𝑀𝑌2
𝑋1𝑏 ≤ 𝑀𝑌1
𝑋2𝑏 ≤ 𝑀𝑌2
3) Restricciones lógicas

𝑋1𝑎 , 𝑋1𝑚 , 𝑋1𝑏 , 𝑋2𝑎 , 𝑋2𝑚 , 𝑋2𝑏 ≥ 0 𝑦 𝑒𝑛𝑡𝑒𝑟𝑎


𝑌𝑖 𝑏𝑖𝑛𝑎𝑟𝑖𝑎, 𝑌𝑖 = 0,1, ∀𝑖 = 1,2
𝑀 𝑣𝑎𝑙𝑜𝑟 𝑔𝑟𝑎𝑛𝑑𝑒 𝑝𝑜𝑠𝑖𝑡𝑖𝑣𝑜 (𝑠𝑢𝑓𝑖𝑐𝑖𝑒𝑛𝑡𝑒𝑚𝑒𝑛𝑡𝑒 𝑔𝑟𝑎𝑛𝑑𝑒

b) Formule el modelo de programación lineal entera, con el objeto de minimizar costos, si se


incluye la posibilidad de construir dos fábricas (ubicación 1 y 2), bajo las siguientes
restricciones: en caso de producirse televisores de gama baja en la ubicación 1 se recibirá un
auxilio por parte del gobierno de 1100000 dólares y la gama alta se producirá únicamente en
una de las dos ubicaciones.

𝑖 = 𝑡𝑖𝑝𝑜 𝑑𝑒 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 , 𝑖 = 1,2


𝑗 = 𝑡𝑖𝑝𝑜 𝑑𝑒 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟, 𝑗 = 𝑎, 𝑚, 𝑏

Variables de decisión

𝑋𝑖𝑗 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟𝑒𝑠 𝑑𝑒 𝑙𝑎 𝑔𝑎𝑚𝑎 𝑡𝑖𝑝𝑜 𝑗 𝑝𝑟𝑜𝑑𝑢𝑐𝑖𝑑𝑎𝑠 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 𝑖 𝑎𝑙 𝑎ñ𝑜


𝑋1𝑎 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟𝑒𝑠 𝑑𝑒 𝑙𝑎 𝑔𝑎𝑚𝑎 𝑎𝑙𝑡𝑎 𝑝𝑟𝑜𝑑𝑢𝑐𝑖𝑑𝑎𝑠 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 1 𝑎𝑙 𝑎ñ𝑜
𝑋1𝑚 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟𝑒𝑠 𝑑𝑒 𝑙𝑎 𝑔𝑎𝑚𝑎 𝑚𝑒𝑑𝑖𝑎 𝑝𝑟𝑜𝑑𝑢𝑐𝑖𝑑𝑎𝑠 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 1 𝑎𝑙 𝑎ñ𝑜
𝑋1𝑏 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟𝑒𝑠 𝑑𝑒 𝑙𝑎 𝑔𝑎𝑚𝑎 𝑏𝑎𝑗𝑎 𝑝𝑟𝑜𝑑𝑢𝑐𝑖𝑑𝑎𝑠 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 1 𝑎𝑙 𝑎ñ𝑜
𝑋2𝑎 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟𝑒𝑠 𝑑𝑒 𝑙𝑎 𝑔𝑎𝑚𝑎 𝑎𝑙𝑡𝑎 𝑝𝑟𝑜𝑑𝑢𝑐𝑖𝑑𝑎𝑠 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 2 𝑎𝑙 𝑎ñ𝑜
𝑋2𝑚 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟𝑒𝑠 𝑑𝑒 𝑙𝑎 𝑔𝑎𝑚𝑎 𝑚𝑒𝑑𝑖𝑎 𝑝𝑟𝑜𝑑𝑢𝑐𝑖𝑑𝑎𝑠 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 2 𝑎𝑙 𝑎ñ𝑜
𝑋2𝑏 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟𝑒𝑠 𝑑𝑒 𝑙𝑎 𝑔𝑎𝑚𝑎 𝑏𝑎𝑗𝑎 𝑝𝑟𝑜𝑑𝑢𝑐𝑖𝑑𝑎𝑠 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 2 𝑎𝑙 𝑎ñ𝑜

1 𝑠𝑖 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 𝑖 𝑒𝑙 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟 𝑡𝑖𝑝𝑜 𝑗


𝑍𝑖𝑗 = {
0 𝑛𝑜 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 𝑖 𝑒𝑙 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟 𝑡𝑖𝑝𝑜 𝑗
1 𝑠𝑖 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 1 𝑒𝑙 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟 𝑡𝑖𝑝𝑜 𝑎
𝑍1𝑎 = {
0 𝑛𝑜 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 1 𝑒𝑙 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟 𝑡𝑖𝑝𝑜 𝑎
1 𝑠𝑖 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 1 𝑒𝑙 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟 𝑡𝑖𝑝𝑜 𝑚
𝑍1𝑚 = {
0 𝑛𝑜 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 1 𝑒𝑙 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟 𝑡𝑖𝑝𝑜 𝑚
1 𝑠𝑖 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 1 𝑒𝑙 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟 𝑡𝑖𝑝𝑜 𝑏
𝑍1𝑏 = {
0 𝑛𝑜 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 1 𝑒𝑙 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟 𝑡𝑖𝑝𝑜 𝑏
1 𝑠𝑖 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 2 𝑒𝑙 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟 𝑡𝑖𝑝𝑜 𝑎
𝑍2𝑎 = {
0 𝑛𝑜 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 2 𝑒𝑙 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟 𝑡𝑖𝑝𝑜 𝑎
1 𝑠𝑖 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 2 𝑒𝑙 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟 𝑡𝑖𝑝𝑜 𝑚
𝑍2𝑚 = {
0 𝑛𝑜 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 2 𝑒𝑙 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟 𝑡𝑖𝑝𝑜 𝑚
1 𝑠𝑖 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 2 𝑒𝑙 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟 𝑡𝑖𝑝𝑜 𝑎
𝑍2𝑏 = {
0 𝑛𝑜 𝑠𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑒 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 2 𝑒𝑙 𝑡𝑒𝑙𝑒𝑣𝑖𝑠𝑜𝑟 𝑡𝑖𝑝𝑜 𝑎
1 𝑠𝑖 𝑠𝑒 𝑐𝑜𝑛𝑠𝑡𝑟𝑢𝑦𝑒 𝑙𝑎 𝑓𝑎𝑏𝑟𝑖𝑐𝑎 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 𝑖
𝑌𝑖 = {
0 𝑛𝑜 𝑠𝑒 𝑐𝑜𝑛𝑠𝑡𝑟𝑢𝑦𝑒 𝑙𝑎 𝑓𝑎𝑏𝑟𝑖𝑐𝑎 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 𝑖

1 𝑠𝑖 𝑠𝑒 𝑐𝑜𝑛𝑠𝑡𝑟𝑢𝑦𝑒 𝑙𝑎 𝑓𝑎𝑏𝑟𝑖𝑐𝑎 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 1


𝑌1 = {
0 𝑛𝑜 𝑠𝑒 𝑐𝑜𝑛𝑠𝑡𝑟𝑢𝑦𝑒 𝑙𝑎 𝑓𝑎𝑏𝑟𝑖𝑐𝑎 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 1
1 𝑠𝑖 𝑠𝑒 𝑐𝑜𝑛𝑠𝑡𝑟𝑢𝑦𝑒 𝑙𝑎 𝑓𝑎𝑏𝑟𝑖𝑐𝑎 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 1
𝑌2 = {
0 𝑛𝑜 𝑠𝑒 𝑐𝑜𝑛𝑠𝑡𝑟𝑢𝑦𝑒 𝑙𝑎 𝑓𝑎𝑏𝑟𝑖𝑐𝑎 𝑒𝑛 𝑙𝑎 𝑢𝑏𝑖𝑐𝑎𝑐𝑖𝑜𝑛 1
El modelo de PLEM es:

𝑀𝑖𝑛𝑖𝑚𝑖𝑧𝑎𝑟 𝑊 = 800𝑋1𝑎 + 650𝑋1𝑚 + 400𝑋1𝑏 + 900𝑋2𝑎 + 600𝑋2𝑚 + 350𝑋2𝑏 + 3000000𝑌1


+ 2800000𝑌2 − 1100000𝑍1𝑏
𝑆𝑢𝑗𝑒𝑡𝑜 𝑎:
1) Restricciones de producción

𝐺𝑎𝑚𝑎 𝑎𝑙𝑡𝑎: 𝑋1𝑎 + 𝑋2𝑎 ≥ 80000


𝐺𝑎𝑚𝑎 𝑚𝑒𝑑𝑖𝑎: 𝑋1𝑚 + 𝑋2𝑚 ≥ 110000
𝐺𝑎𝑚𝑎 𝑏𝑎𝑗𝑎: 𝑋1𝑏 + 𝑋2𝑏 ≥ 220000
2) Fabricar gama alta en una de las dos fabricas

𝑍1𝑎 + 𝑍2𝑎 = 1
3) Posibilidad de construir en las dos fabricas

𝑌1 + 𝑌2 ≥ 1
4) Asignación gama (a,m,b) a ubicación 1 o ubicación 2

𝑍1𝑎 ≤ 𝑌1
𝑍1𝑚 ≤ 𝑌1
𝑍1𝑏 ≤ 𝑌1
𝑍2𝑎 ≤ 𝑌2
𝑍2𝑎 ≤ 𝑌2
𝑍2𝑎 ≤ 𝑌2
5) Restricción de activación o no de producción en fábricas o plantas

𝑋1𝑎 ≤ 𝑀𝑍1𝑎
𝑋2𝑎 ≤ 𝑀𝑍2𝑎
𝑋1𝑚 ≤ 𝑀𝑍1𝑚
𝑋2𝑚 ≤ 𝑀𝑍2𝑚
𝑋1𝑏 ≤ 𝑀𝑍1𝑏
𝑋2𝑏 ≤ 𝑀𝑍2𝑏
6) Restricciones lógicas

𝑋1𝑎 , 𝑋1𝑚 , 𝑋1𝑏 , 𝑋2𝑎 , 𝑋2𝑚 , 𝑋2𝑏 ≥ 0 𝑦 𝑒𝑛𝑡𝑒𝑟𝑎


𝑌𝑖 𝑏𝑖𝑛𝑎𝑟𝑖𝑎, 𝑌𝑖 = 0,1, ∀𝑖 = 1,2
𝑍𝑖𝑗 𝑏𝑖𝑛𝑎𝑟𝑖𝑎, 𝑍𝑖𝑗 = 0,1, ∀𝑖 = 1,2

𝑀 𝑣𝑎𝑙𝑜𝑟 𝑔𝑟𝑎𝑛𝑑𝑒 𝑝𝑜𝑠𝑖𝑡𝑖𝑣𝑜 (𝑠𝑢𝑓𝑖𝑐𝑖𝑒𝑛𝑡𝑒𝑚𝑒𝑛𝑡𝑒 𝑔𝑟𝑎𝑛𝑑𝑒


Ejemplo 11. Induacoples, pequeña empresa metalmecánica, fabrica 3 productos que son: acople de
pasadores, acople de cruceta y rotores. Su objetivo es determinar la producción optima que
maximice sus beneficios. Los productos son procesados en dos de las 4 máquinas de las que dispone
la empresa, es decir, manufactura en la maquinas A y B, o manufactura en las maquinas C y D. Los
costos fijos diarios de poner en operación estas máquinas son 220, 270, 380 y 190 dólares
respectivamente para las maquinas A,B,C,D. El ingreso unitario es de 18 para el acople de
pasadores, 20 para el acople de cruceta y 30 dólares para el rotor. Los tiempos de procesamiento
(Horas/unidad) en cada máquina son:

HORAS / UNIDAD
Maquina A Maquina B Maquina C Maquina D
Acople de
2 2 3 2
pasador
Acople de
2 2 2 4
cruceta
Rotor 3 2 2 2
La capacidad disponible en la maquina A es de 240 horas/día, en la maquina B es de 260 horas/día,
en la maquina C es de 220 horas/día y en la maquina D es de 250 horas/día. a) Formule el modelo
de programación lineal entera para maximizar el beneficio total diario. b) Formule el modelo de
programación lineal entera, teniendo en cuenta que, si se fabrica el acople de pasadores, se debe
producir al menos 15 unidades y no más de 25 de acoples de cruceta y al menos 10 acoples de
pasadores.

Solución:

a) Formule el modelo de programación lineal entera para maximizar el beneficio total diario

Indices

𝒊 = 𝑡𝑖𝑝𝑜 𝑑𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑡𝑜 𝑎 𝑓𝑎𝑏𝑟𝑖𝑐𝑎𝑟, 𝑖 = 1,2,3


𝑗 = 𝑔𝑟𝑢𝑝𝑜 𝑑𝑒 𝑚𝑎𝑞𝑢𝑖𝑛𝑎𝑠 𝑡𝑖𝑝𝑜 𝑗, 𝑗 = 1,2
Variables de decision

𝑋𝑖 = 𝑢𝑛𝑖𝑑𝑎𝑑𝑒𝑠 𝑑𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑡𝑜 𝑖 𝑎 𝑓𝑎𝑏𝑟𝑖𝑐𝑎𝑟, 𝑖 = 1,2,3


𝑋1 = 𝑁𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑎𝑐𝑜𝑝𝑙𝑒𝑠 𝑑𝑒 𝑝𝑎𝑠𝑎𝑑𝑜𝑟𝑒𝑠 𝑎 𝑓𝑎𝑏𝑟𝑖𝑐𝑎𝑟 𝑝𝑜𝑟 𝑑𝑖𝑎
𝑋2 = 𝑁𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑎𝑐𝑜𝑝𝑙𝑒𝑠 𝑑𝑒 𝑐𝑟𝑢𝑐𝑒𝑡𝑎 𝑎 𝑓𝑎𝑏𝑟𝑖𝑐𝑎𝑟 𝑝𝑜𝑟 𝑑𝑖𝑎
𝑋3 = 𝑁𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑟𝑜𝑡𝑜𝑟𝑒𝑠 𝑎 𝑓𝑎𝑏𝑟𝑖𝑐𝑎𝑟 𝑝𝑜𝑟 𝑑𝑖𝑎
1 𝑠𝑖 𝑠𝑒 𝑢𝑡𝑖𝑙𝑖𝑧𝑎 𝑒𝑙 𝑔𝑟𝑢𝑝𝑜 𝑑𝑒 𝑚𝑎𝑞𝑢𝑖𝑛𝑎𝑠 𝑡𝑖𝑝𝑜 𝑗
𝑌𝑗 = {
0 𝑛𝑜 𝑠𝑒 𝑢𝑡𝑖𝑙𝑖𝑧𝑎 𝑒𝑙 𝑔𝑟𝑢𝑝𝑜 𝑑𝑒 𝑚𝑎𝑞𝑢𝑖𝑛𝑎𝑠 𝑡𝑖𝑝𝑜 𝑗

1 𝑠𝑖 𝑠𝑒 𝑢𝑡𝑖𝑙𝑖𝑧𝑎 𝑒𝑙 𝑔𝑟𝑢𝑝𝑜 𝑑𝑒 𝑚𝑎𝑞𝑢𝑖𝑛𝑎𝑠 𝐴 𝑦 𝐵


𝑌1 = {
0 𝑛𝑜 𝑠𝑒 𝑢𝑡𝑖𝑙𝑖𝑧𝑎 𝑒𝑙 𝑔𝑟𝑢𝑝𝑜 𝑑𝑒 𝑚𝑎𝑞𝑢𝑖𝑛𝑎𝑠 𝐴 𝑦 𝐵
1 𝑠𝑖 𝑠𝑒 𝑢𝑡𝑖𝑙𝑖𝑧𝑎 𝑒𝑙 𝑔𝑟𝑢𝑝𝑜 𝑑𝑒 𝑚𝑎𝑞𝑢𝑖𝑛𝑎𝑠 𝐶 𝑦 𝐷
𝑌2 = {
0 𝑛𝑜 𝑠𝑒 𝑢𝑡𝑖𝑙𝑖𝑧𝑎 𝑒𝑙 𝑔𝑟𝑢𝑝𝑜 𝑑𝑒 𝑚𝑎𝑞𝑢𝑖𝑛𝑎𝑠 𝐶 𝑦 𝐷

La formulación del modelo es:

𝑀𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑊 = 18𝑋1 + 20𝑋2 + 30𝑋3 − [(220 + 270)𝑌1 + (380 + 190)𝑌2 ]

𝑆𝑢𝑗𝑒𝑡𝑜 𝑎:
1) Restricción de capacidad disponible maquinas

𝑀𝑎𝑞𝑢𝑖𝑛𝑎 𝐴: 2𝑋1 + 2𝑋2 + 3𝑋3 ≤ 240 + 𝑀(1 − 𝑌1 )


𝑀𝑎𝑞𝑢𝑖𝑛𝑎 𝐵: 2𝑋1 + 2𝑋2 + 2𝑋3 ≤ 260 + 𝑀(1 − 𝑌1 )
𝑀𝑎𝑞𝑢𝑖𝑛𝑎 𝐶: 3𝑋1 + 2𝑋2 + 2𝑋3 ≤ 220 + 𝑀(1 − 𝑌2 )
𝑀𝑎𝑞𝑢𝑖𝑛𝑎 𝐷: 3𝑋1 + 2𝑋2 + 2𝑋3 ≤ 250 + 𝑀(1 − 𝑌2 )
2) Restricciones de exclusividad – Maquinas A y B o Maquinas C y D
𝑌1 + 𝑌2 = 1
3) Restricciones lógicas

𝑋𝑖 ≥ 0 𝑦 𝑒𝑛𝑡𝑒𝑟𝑎
𝑌𝑖 𝑏𝑖𝑛𝑎𝑟𝑖𝑎, 𝑌𝑖 = 0,1, ∀𝑖 = 1,2
b) Formule el modelo de programación lineal entera, teniendo en cuenta que, si se fabrica el
acople de pasadores, se debe producir al menos 15 unidades y no más de 25 de acoples de
cruceta y al menos 10 acoples de pasadores.

Indices

𝒊 = 𝑡𝑖𝑝𝑜 𝑑𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑡𝑜 𝑎 𝑓𝑎𝑏𝑟𝑖𝑐𝑎𝑟, 𝑖 = 1(𝑎𝑐𝑜𝑝𝑙𝑒 𝑑𝑒 𝑝𝑎𝑠𝑎𝑑𝑜𝑟𝑒𝑠, 2(𝑎𝑐𝑜𝑝𝑙𝑒 𝑑𝑒 𝑐𝑟𝑢𝑐𝑒𝑟𝑎, 3(𝑟𝑜𝑡𝑜𝑟)


𝑗 = 𝑔𝑟𝑢𝑝𝑜 𝑑𝑒 𝑚𝑎𝑞𝑢𝑖𝑛𝑎𝑠 𝑡𝑖𝑝𝑜 𝑗, 𝑗 = 1,2
Variables de decision

𝑋𝑖 = 𝑢𝑛𝑖𝑑𝑎𝑑𝑒𝑠 𝑑𝑒 𝑝𝑟𝑜𝑑𝑢𝑐𝑡𝑜 𝑖 𝑎 𝑓𝑎𝑏𝑟𝑖𝑐𝑎𝑟, 𝑖 = 1,2,3


𝑋1 = 𝑁𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑎𝑐𝑜𝑝𝑙𝑒𝑠 𝑑𝑒 𝑝𝑎𝑠𝑎𝑑𝑜𝑟𝑒𝑠 𝑎 𝑓𝑎𝑏𝑟𝑖𝑐𝑎𝑟 𝑝𝑜𝑟 𝑑𝑖𝑎
𝑋2 = 𝑁𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑎𝑐𝑜𝑝𝑙𝑒𝑠 𝑑𝑒 𝑐𝑟𝑢𝑐𝑒𝑡𝑎 𝑎 𝑓𝑎𝑏𝑟𝑖𝑐𝑎𝑟 𝑝𝑜𝑟 𝑑𝑖𝑎
𝑋3 = 𝑁𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑟𝑜𝑡𝑜𝑟𝑒𝑠 𝑎 𝑓𝑎𝑏𝑟𝑖𝑐𝑎𝑟 𝑝𝑜𝑟 𝑑𝑖𝑎
1 𝑠𝑖 𝑠𝑒 𝑢𝑡𝑖𝑙𝑖𝑧𝑎 𝑒𝑙 𝑔𝑟𝑢𝑝𝑜 𝑑𝑒 𝑚𝑎𝑞𝑢𝑖𝑛𝑎𝑠 𝑡𝑖𝑝𝑜 𝑗
𝑌𝑗 = {
0 𝑛𝑜 𝑠𝑒 𝑢𝑡𝑖𝑙𝑖𝑧𝑎 𝑒𝑙 𝑔𝑟𝑢𝑝𝑜 𝑑𝑒 𝑚𝑎𝑞𝑢𝑖𝑛𝑎𝑠 𝑡𝑖𝑝𝑜 𝑗

1 𝑠𝑖 𝑠𝑒 𝑢𝑡𝑖𝑙𝑖𝑧𝑎 𝑒𝑙 𝑔𝑟𝑢𝑝𝑜 𝑑𝑒 𝑚𝑎𝑞𝑢𝑖𝑛𝑎𝑠 𝐴 𝑦 𝐵


𝑌1 = {
0 𝑛𝑜 𝑠𝑒 𝑢𝑡𝑖𝑙𝑖𝑧𝑎 𝑒𝑙 𝑔𝑟𝑢𝑝𝑜 𝑑𝑒 𝑚𝑎𝑞𝑢𝑖𝑛𝑎𝑠 𝐴 𝑦 𝐵
1 𝑠𝑖 𝑠𝑒 𝑢𝑡𝑖𝑙𝑖𝑧𝑎 𝑒𝑙 𝑔𝑟𝑢𝑝𝑜 𝑑𝑒 𝑚𝑎𝑞𝑢𝑖𝑛𝑎𝑠 𝐶 𝑦 𝐷
𝑌2 = {
0 𝑛𝑜 𝑠𝑒 𝑢𝑡𝑖𝑙𝑖𝑧𝑎 𝑒𝑙 𝑔𝑟𝑢𝑝𝑜 𝑑𝑒 𝑚𝑎𝑞𝑢𝑖𝑛𝑎𝑠 𝐶 𝑦 𝐷

1 𝑠𝑖 𝑠𝑒 𝑓𝑎𝑏𝑟𝑖𝑐𝑎 𝑎𝑐𝑜𝑝𝑙𝑒 𝑑𝑒 𝑝𝑎𝑠𝑎𝑑𝑜𝑟𝑒𝑠


𝑍={
0 𝑛𝑜 𝑠𝑒 𝑓𝑎𝑏𝑟𝑖𝑐𝑎 𝑎𝑐𝑜𝑝𝑙𝑒 𝑑𝑒 𝑝𝑎𝑠𝑎𝑑𝑜𝑟𝑒𝑠
La formulación del modelo es:

𝑀𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑊 = 18𝑋1 + 20𝑋2 + 30𝑋3 − [(220 + 270)𝑌1 + (380 + 190)𝑌2 ]

𝑆𝑢𝑗𝑒𝑡𝑜 𝑎:
1) Restricción de capacidad disponible maquinas

𝑀𝑎𝑞𝑢𝑖𝑛𝑎 𝐴: 2𝑋1 + 2𝑋2 + 3𝑋3 ≤ 240 + 𝑀(1 − 𝑌1 )


𝑀𝑎𝑞𝑢𝑖𝑛𝑎 𝐵: 2𝑋1 + 2𝑋2 + 2𝑋3 ≤ 260 + 𝑀(1 − 𝑌1 )
𝑀𝑎𝑞𝑢𝑖𝑛𝑎 𝐶: 3𝑋1 + 2𝑋2 + 2𝑋3 ≤ 220 + 𝑀(1 − 𝑌2 )
𝑀𝑎𝑞𝑢𝑖𝑛𝑎 𝐷: 3𝑋1 + 2𝑋2 + 2𝑋3 ≤ 250 + 𝑀(1 − 𝑌2 )
2) Restricciones de exclusividad – Maquinas A y B o Maquinas C y D

𝑌1 + 𝑌2 = 1
3) Restricción adicional que tiene en cuenta que, si se fabrica el acople de pasadores, se debe
producir al menos 15 unidades y no más de 25 de acoples de cruceta y al menos 10 acoples de
pasadores por dia.

15𝑍 ≤ 𝑋2 ≤ 25 + 𝑀(1 − 𝑍)
10𝑍 ≤ 𝑋1 ≤ 𝑀𝑍
4) Restricciones lógicas

𝑋𝑖 ≥ 0 𝑦 𝑒𝑛𝑡𝑒𝑟𝑎
𝑌𝑖 𝑏𝑖𝑛𝑎𝑟𝑖𝑎, 𝑌𝑖 = 0,1, ∀𝑖 = 1,2
𝑍 𝑏𝑖𝑛𝑎𝑟𝑖𝑎, 𝑍 = 0,1
Ejemplo 12. MEDICENTER, empresa prestadora de servicios de salud, quiere maximizar la cobertura
de atención de pacientes en 3 modalidades de servicio. Los servicios médicos mencionados constan
de 12, 8 y 6 médicos respectivamente; cada médico atiende como máximo a 12 pacientes. El costo
de cada paciente en el servicio 1 es de 45000 pesos/día, en el servicio 2 es de 75000 pesos/día y en
el servicio 3 es de 90000 pesos/día. El presupuesto total diario asignados a los tres servicios es de
9000000 (9 millones de pesos). Además, los servicios 1 y 2 deben atender como mínimo el doble de
pacientes que atiende el servicio 3. a) Formule un modelo de programación lineal entera, para
encontrar cuantos pacientes deben ser atendidos diariamente en cada servicio, con el objeto de
maximizar el número total de personas atendidas. b) Formule un modelo de programación lineal
entera con el objeto de maximizar el número total de personas atendidas, de acuerdo al siguiente
escenario: MEDICENTER ha aumentado el presupuesto diario a 11400000 (11 millones cuatrocientos
mil pesos). MEDICENTER tiene que decidir entre abrir un cuarto servicio médico con 7 médicos y
con un costo por paciente de 81000 pesos/día, o aumentar en tres médicos cada uno de los servicios
ya existentes.

Solución:

1) Formule un modelo de programación lineal entera, para encontrar cuantos pacientes deben
ser atendidos diariamente en cada servicio, con el objeto de maximizar el número total de
personas atendidas.

Índice

𝑖 𝑡𝑖𝑝𝑜 𝑑𝑒 𝑠𝑒𝑟𝑣𝑖𝑐𝑖𝑜, 𝑖 = 1, 2, 3
Variables de decisión

𝑋𝑖 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑝𝑎𝑐𝑖𝑒𝑛𝑡𝑒𝑠 𝑎𝑡𝑒𝑛𝑑𝑖𝑑𝑜𝑠 𝑝𝑜𝑟 𝑒𝑙 𝑠𝑒𝑟𝑣𝑖𝑐𝑖𝑜 𝑖 (variable de tipo entera)

𝑋1 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑝𝑎𝑐𝑖𝑒𝑛𝑡𝑒𝑠 𝑎𝑡𝑒𝑛𝑑𝑖𝑑𝑜𝑠 𝑝𝑜𝑟 𝑒𝑙 𝑠𝑒𝑟𝑣𝑖𝑐𝑖𝑜 𝑡𝑖𝑝𝑜 1


𝑋2 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑝𝑎𝑐𝑖𝑒𝑛𝑡𝑒𝑠 𝑎𝑡𝑒𝑛𝑑𝑖𝑑𝑜𝑠 𝑝𝑜𝑟 𝑒𝑙 𝑠𝑒𝑟𝑣𝑖𝑐𝑖𝑜 𝑡𝑖𝑝𝑜 2
𝑋3 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑝𝑎𝑐𝑖𝑒𝑛𝑡𝑒𝑠 𝑎𝑡𝑒𝑛𝑑𝑖𝑑𝑜𝑠 𝑝𝑜𝑟 𝑒𝑙 𝑠𝑒𝑟𝑣𝑖𝑐𝑖𝑜 𝑡𝑖𝑝𝑜 3
El modelo de PLE es:

𝑀𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑊 = 𝑋1 + 𝑋2 + 𝑋3
𝑠𝑢𝑗𝑒𝑡𝑜 𝑎:
1) Restricción de atención pacientes por disponibilidad del servicio
12 𝑝𝑎𝑐𝑖𝑒𝑛𝑡𝑒𝑠
𝑆𝑒𝑟𝑣𝑖𝑐𝑖𝑜 1: 𝑋1 ≤ 144 , (12 𝑚𝑒𝑑𝑖𝑐𝑜𝑠 ∗ )
𝑚𝑒𝑑𝑖𝑐𝑜
12 𝑝𝑎𝑐𝑖𝑒𝑛𝑡𝑒𝑠
𝑆𝑒𝑟𝑣𝑖𝑐𝑖𝑜 2: 𝑋2 ≤ 96 , (8 𝑚𝑒𝑑𝑖𝑐𝑜𝑠 ∗ )
𝑚𝑒𝑑𝑖𝑐𝑜
12 𝑝𝑎𝑐𝑖𝑒𝑛𝑡𝑒𝑠
𝑆𝑒𝑟𝑣𝑖𝑐𝑖𝑜 3: 𝑋3 ≤ 72 , (6 𝑚𝑒𝑑𝑖𝑐𝑜𝑠 ∗ )
𝑚𝑒𝑑𝑖𝑐𝑜
2) Restricción de presupuesto

45000𝑋1 + 75000𝑋2 + 90000𝑋3 ≤ 9000000


3) Además, los servicios 1 y 2 deben atender como mínimo el doble de pacientes que atiende el
servicio 3

𝑋1 + 𝑋2 ≥ 2𝑋3
4) Restricciones lógicas

𝑋1 ≥ 0, 𝑋2 ≥ 0, 𝑋3 ≥ 0 𝑦 𝑒𝑛𝑡𝑒𝑟𝑎𝑠
b) Formule un modelo de programación lineal entera con el objeto de maximizar el número total
de personas atendidas, de acuerdo con el siguiente escenario: MEDICENTER ha aumentado el
presupuesto diario a 11400000 (11 millones cuatrocientos mil pesos). MEDICENTER tiene que
decidir entre abrir un cuarto servicio médico con 7 médicos y con un costo por paciente de
81000 pesos/día, o aumentar en tres médicos cada uno de los servicios ya existentes.

Índice

𝑖 𝑡𝑖𝑝𝑜 𝑑𝑒 𝑠𝑒𝑟𝑣𝑖𝑐𝑖𝑜, 𝑖 = 1, 2, 3
Variables de decisión

𝑋𝑖 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑝𝑎𝑐𝑖𝑒𝑛𝑡𝑒𝑠 𝑎𝑡𝑒𝑛𝑑𝑖𝑑𝑜𝑠 𝑝𝑜𝑟 𝑒𝑙 𝑠𝑒𝑟𝑣𝑖𝑐𝑖𝑜 𝑖 (variable de tipo entera)

𝑋1 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑝𝑎𝑐𝑖𝑒𝑛𝑡𝑒𝑠 𝑎𝑡𝑒𝑛𝑑𝑖𝑑𝑜𝑠 𝑝𝑜𝑟 𝑒𝑙 𝑠𝑒𝑟𝑣𝑖𝑐𝑖𝑜 𝑡𝑖𝑝𝑜 1


𝑋2 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑝𝑎𝑐𝑖𝑒𝑛𝑡𝑒𝑠 𝑎𝑡𝑒𝑛𝑑𝑖𝑑𝑜𝑠 𝑝𝑜𝑟 𝑒𝑙 𝑠𝑒𝑟𝑣𝑖𝑐𝑖𝑜 𝑡𝑖𝑝𝑜 2
𝑋3 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑝𝑎𝑐𝑖𝑒𝑛𝑡𝑒𝑠 𝑎𝑡𝑒𝑛𝑑𝑖𝑑𝑜𝑠 𝑝𝑜𝑟 𝑒𝑙 𝑠𝑒𝑟𝑣𝑖𝑐𝑖𝑜 𝑡𝑖𝑝𝑜 3
𝑋4 = 𝑛𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑝𝑎𝑐𝑖𝑒𝑛𝑡𝑒𝑠 𝑎𝑡𝑒𝑛𝑑𝑖𝑑𝑜𝑠 𝑝𝑜𝑟 𝑒𝑙 𝑠𝑒𝑟𝑣𝑖𝑐𝑖𝑜 𝑡𝑖𝑝𝑜 4
1 𝑠𝑖 𝑠𝑒 𝑎𝑏𝑟𝑒 𝑒𝑙 𝑠𝑒𝑟𝑣𝑖𝑐𝑖𝑜 4
𝑍={
0 𝑛𝑜 𝑠𝑒 𝑎𝑏𝑟𝑒 𝑒𝑙 𝑠𝑒𝑟𝑣𝑖𝑐𝑖𝑜 4
El modelo de PELM es:

𝑀𝑎𝑥𝑖𝑚𝑖𝑧𝑎𝑟 𝑊 = 𝑋1 + 𝑋2 + 𝑋3
𝑠𝑢𝑗𝑒𝑡𝑜 𝑎:
1) Restricción de atención pacientes por disponibilidad del servicio

𝑆𝑒𝑟𝑣𝑖𝑐𝑖𝑜 1: 𝑋1 ≤ 144 + 36(1 − 𝑍)


𝑆𝑒𝑟𝑣𝑖𝑐𝑖𝑜 2: 𝑋2 ≤ 96 + 36(1 − 𝑍)
𝑆𝑒𝑟𝑣𝑖𝑐𝑖𝑜 3: 𝑋3 ≤ 72 + 36(1 − 𝑍)
12 𝑝𝑎𝑐𝑖𝑒𝑛𝑡𝑒𝑠
𝑆𝑒𝑟𝑣𝑖𝑐𝑖𝑜 4: 𝑋4 ≤ 84𝑍, (7 𝑚𝑒𝑑𝑖𝑐𝑜𝑠 ∗ )
𝑚𝑒𝑑𝑖𝑐𝑜
Nota: Aumentar 3 médicos implicar aumentar la capacidad de atención en (3)(12) = 36

2) Restricción de presupuesto

45000𝑋1 + 75000𝑋2 + 90000𝑋3 + 81000𝑋4 ≤ 11400000


3) Además, los servicios 1 y 2 deben atender como mínimo el doble de pacientes que atiende el
servicio 3

𝑋1 + 𝑋2 ≥ 2𝑋3
4) Restricciones lógicas

𝑋1 ≥ 0, 𝑋2 ≥ 0, 𝑋3 ≥ 0 𝑦 𝑒𝑛𝑡𝑒𝑟𝑎𝑠
𝑍 𝑏𝑖𝑛𝑎𝑟𝑖𝑎, 𝑍 = 0,1

También podría gustarte