Sei sulla pagina 1di 171

Modelado y Resolucin de Problemas de

Organizacin Industrial mediante


Programacin Matemtica Lineal
(Modelos y Mtodos de Investigacin de Operaciones.
Procedimientos para Pensar)

Mtodos Cuantitativos de Organizacin Industrial

Jos Pedro Garca Sabater, Julien Maheut


Grupo de Investigacin ROGLE
Departamento de Organizacin de Empresas
Curso 2015 / 2016

INTRODUCCIN ................................................................................................................................... 11

MODELOS....................................................................................................................................... 12

1.1

IntroduccinEquation Chapter 2 Section 1 .............................................................................. 12

1.2

Qu es un Modelo? .................................................................................................................. 12

1.3

Para qu sirve un modelo? ..................................................................................................... 14

1.3.1

Aprender / Entender............................................................................................................... 14

1.3.2

Implementar en un ordenador................................................................................................ 15

1.3.3

Tomar decisiones ................................................................................................................... 15

1.4

El Cliente y el Problema ............................................................................................................. 15

1.5

El Problema y el concepto de Solucin ................................................................................... 16

1.6

Ciclo de vida de la construccin de modelos ......................................................................... 17

1.6.1

Etapa 1: Definir el Problema .................................................................................................. 18

1.6.2

Etapa 2: Modelar y Construir la Solucin .............................................................................. 18

1.6.3

Etapa 3: Utilizar la Solucin ................................................................................................... 18

1.7

Algunos principios para tener xito en el modelado .............................................................. 18

1.7.1

Los modelos han de ser simples, su anlisis debe ser complejo .......................................... 19

1.7.2

Ir paso a paso ........................................................................................................................ 19

1.7.3

Usar al mximo metforas, analogas y similitudes............................................................... 19

1.7.4

Los datos disponibles no deben conformar el modelo .......................................................... 20

1.7.5

Principio subyacente: Modelar es Explorar ........................................................................... 20

TIPOS DE MODELOS MATEMTICOS. LOS MODELOS DE PROGRAMACIN

MATEMTICAEQUATION CHAPTER (NEXT) SECTION 1 ..................................................................... 22


2.1

Introduccin ................................................................................................................................ 22

2.2

Clasificacin de modelos matemticos ................................................................................... 22

2.2.1

Modelos normativos y Modelos Descriptivos......................................................................... 22

2.2.2

Modelos matemticos segn variables y parmetros. .......................................................... 23

2.3

Algunas clases de Modelos Matemticos. Otros modos de pensar ..................................... 23

2.3.1

Modelos de optimizacin combinatoria.................................................................................. 24

2.3.2

Teora de grafos de redes................................................................................................... 24

Usando las matemticas para pensar sobre Direccin de operaciones.

2.3.3

Programacin dinmica ......................................................................................................... 25

2.3.4

Teora de colas ...................................................................................................................... 26

2.3.5

Dinmica de sistemas ............................................................................................................ 27

2.3.6

Simulacin.............................................................................................................................. 27

2.3.7

Teora de juegos .................................................................................................................... 28

2.4

Modelos de programacin matemtica .................................................................................... 29

2.4.1

El nombre de programacin matemtica ............................................................................... 29

2.4.2

Una clasificacin de modelos de programacin matemtica ................................................ 30

2.4.3

Los componentes de un modelo de programacin matemtica ............................................ 34

2.5

La construccin de un modelo de programacin matemticaEquation Section (Next) ..... 35

2.6

Implementacin de un modelo de programacin matemtica (Validacin)

Equation Section (Next)............................................................................................................................ 37


2.6.1

Modelo de sintaxis errnea .................................................................................................... 38

2.6.2

Modelo incompatible .............................................................................................................. 39

2.6.3

Modelos no acotados ............................................................................................................. 40

2.6.4

Modelo resoluble .................................................................................................................... 40

2.7

Caractersticas de un buen modelo de programacin matemticaEquation Section (Next)41

2.7.1

Facilidad para entender el modelo ........................................................................................ 41

2.7.2

Facilidad para detectar errores en el modelo ........................................................................ 42

2.7.3

Facilidad para encontrar la solucin ...................................................................................... 42

MODELOS DE PROGRAMACIN LINEALEQUATION CHAPTER (NEXT) SECTION 1 ............ 44

3.1

Introduccin ................................................................................................................................ 44

3.2

Qu es la programacin lineal? Equation Section (Next) .................................................... 44

3.2.1

El problema bsico de minimizacin de costes ..................................................................... 45

3.2.2

El problema bsico de maximizacin de beneficios .............................................................. 45

3.2.3

Caso de aplicacin de un problema tpico de programacin lineal ....................................... 46

3.3

Los parmetrosEquation Section (Next) .................................................................................. 49

3.4

Los ObjetivosEquation Section (Next) ..................................................................................... 50

3.4.1

Problemas mono-objetivo ...................................................................................................... 51

3.4.2

Programacin multiobjetivo.................................................................................................... 51

3.5

Las restriccionesEquation Section (Next) ............................................................................... 57

3.5.1

Tipos bsicos de restricciones en direccin de operaciones ................................................ 57

Pgina 4 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

3.5.2

La relacin de las restricciones con la realidad, con las otras restricciones y con el propio

modo de resolver ..................................................................................................................................... 58

MODELOS DE PROGRAMACIN ENTERAEQUATION CHAPTER (NEXT) SECTION 1 .......... 63

4.1

Introduccin ................................................................................................................................ 63

4.2

Diferentes reas de aplicacin de la programacin enteraEquation Section (Next)........... 63

4.2.1

Problemas con entradas (inputs) o salidas (outputs) discretas ............................................. 63

4.2.2

Problemas con condiciones lgicas ....................................................................................... 63

4.2.3

Problemas de combinatoria ................................................................................................... 64

4.2.4

Problemas no-lineales ........................................................................................................... 64

4.3

Otras condiciones aplicadas a modelos de programacin linealEquation Section (Next) 64

4.3.1

Restricciones disyuntivas....................................................................................................... 64

4.3.2

Regiones no-convexas .......................................................................................................... 65

4.3.3

Limitar el nmero de variables en una solucin .................................................................... 65

4.3.4

Decisiones secuencialmente dependientes........................................................................... 66

4.3.5

Extensiones discretas de capacidad ..................................................................................... 66

4.4

Tipos especiales de modelos de programacin enteraEquation Section (Next)................. 66

4.4.1

El problema de la mochila (Knapsack problem) .................................................................... 67

4.4.2

Problemas de cubrimiento ..................................................................................................... 67

4.4.3

Problemas de empaquetado .................................................................................................. 68

4.4.4

El problema del viajante de comercio (Travelling Salesman Problem) ................................. 69

4.4.5

El problema de asignacin cuadrtica ................................................................................... 70

4.5

Buenas y malas formulaciones de un modelo de programacin

enteraEquation Section (Next) ................................................................................................................. 71


4.6

Simplificacin de un modelo de programacin enteraEquation Section (Next).................. 72

4.6.1

Ms restricciones y ms ajustadas ........................................................................................ 72

4.6.2

Simplificar una restriccin entera con otra restriccin ........................................................... 73

4.6.3

Restricciones discontinuas .................................................................................................... 73

LINEALIZANDO LO NO-LINEALEQUATION CHAPTER (NEXT) SECTION 1 ............................ 74

5.1

Introduccin ................................................................................................................................ 74

5.2

Objetivos no-lineales fcilmente linealizablesEquation Section (Next) ............................... 75

5.2.1

Objetivo Minimizar un valor absoluto .................................................................................. 75

Pgina 5 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

5.2.2

Objetivo Minimizar el Mximo o Maximizar el Mnimo ...................................................... 76

5.2.3

Objetivos de Ratio .................................................................................................................. 77

5.2.4

Objetivos Maximizar el Mximo Minimizar el Mnimo .................................................... 78

5.3

El uso de variables discretas para representar relaciones

condicionalesEquation Section (Next) ................................................................................................... 78


5.3.1

Funciones no continuas ......................................................................................................... 78

5.3.2

Relacin lgica

=1 a j x j b ................................................................................ 79
j

5.3.3

Relacin lgica

xj < b =
1 ................................................................................ 79

xj b =
1 ................................................................................ 79

5.3.4

Relacin lgica

5.3.5

Relacin Lgica

=1 a j x j b ............................................................................... 80
j

5.3.6

Relacin lgica

xj > b =
1 ................................................................................ 80

xj b =
1 ................................................................................ 80

5.3.7

Relacin lgica

5.4

Ms relaciones lgicas y su representacinEquation Section (Next) .................................. 81

5.5

Conjuntos especiales de variables ordenadasEquation Section (Next)............................... 84

5.5.1

Conjuntos SOS1 .................................................................................................................... 84

5.5.2

Conjuntos SOS2 .................................................................................................................... 87

PROGRAMACIN NO-LINEALEQUATION CHAPTER (NEXT) SECTION 1 ............................... 90

6.1

Introduccin ................................................................................................................................ 90

6.2

ptimos locales y globalesEquation Section (Next) .............................................................. 90

6.3

Programacin separableEquation Section (Next) ................................................................... 91

6.4

Cmo convertir un modelo no-separable en un modelo separableEquation Section (Next)93

INCERTIDUMBRE EN LOS DATOS Y LAS RELACIONES: ANLISIS DE SENSIBILIDAD,

PROGRAMACIN FUZZY Y PROGRAMACION ESTOCSTICA


ESTOCSTICAEQUATION CHAPTER (NEXT) SECTION 1.................................................................... 94
7.1

Introduccin ................................................................................................................................ 94

Pgina 6 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

7.2

Anlisis de Sensibilidad ............................................................................................................ 94

7.2.1

Anlisis de resultadosEquation Section (Next) ...................................................................... 94

7.2.2

Informacin econmica y sensibilidad en los modelos de programacin

enteraEquation Section (Next) .............................................................................................................. 100


7.3

Programacin Fuzzy ................................................................................................................ 101

7.4

Formulacin de un problema estocsticoEquation Section (Next) .................................... 101

PROCEDIMIENTOS DE RESOLUCIN DE MODELOS DE PROGRAMACIN

MATEMTICAEQUATION CHAPTER (NEXT) SECTION 1 ................................................................... 102


8.1

Introduccin .............................................................................................................................. 102

8.2

Resolucin de problemas de programacin matemtica mediante el uso de paquetes ya

disponiblesEquation Section (Next) ..................................................................................................... 102


8.2.1

Algoritmos y paquetes ......................................................................................................... 102

8.2.2

El uso de la hoja de clculo Excel..................................................................................... 104

8.2.3

El uso de lenguajes de modelado ........................................................................................ 108

8.3

El uso de paquetes para la resolucin de modelos de programacin

linealEquation Section (Next) ................................................................................................................ 109


8.3.1

Brevsima introduccin al lenguaje MPL.............................................................................. 109

8.3.2

Sistemas de apoyo en la decisin y sistemas expertos ...................................................... 110

8.4

8.4.1

El algoritmo Simplex ............................................................................................................ 111

8.4.2

Los mtodos del punto interior ............................................................................................ 112

8.5

Procedimientos de resolucin en programacin lineal enteraEquation Section (Next) ... 112

8.5.1

Ramificacin y acotacin ..................................................................................................... 112

8.5.2

Enumeracin implcita.......................................................................................................... 114

8.5.3

Mtodos del plano cortante.................................................................................................. 116

8.6

Procedimientos de resolucin de programacin linealEquation Section (Next) ............... 111

Procedimientos de resolucin en programacin 0-1Equation Section (Next) ................... 116

8.6.1

Introduccin.......................................................................................................................... 116

8.6.2

Problemas de optimizacin combinatoriaEquation Section (Next) ...................................... 117

8.6.3

Breve introduccin a los mtodos de resolucin en programacin 0-1 ............................... 119

ALGUNOS PROBLEMAS DE MODELADO MEDIANTE PROGRAMACIN MATEMTICA

EQUATION CHAPTER (NEXT) SECTION 1............................................................................................ 120

Pgina 7 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

9.1

Ejercicio 1: Cunto gana la empresa? Equation Section (Next) ....................................... 120

9.1.1

Descripcin del problema ........................................................ Error! Marcador no definido.

9.1.2

Preguntas ............................................................................................................................. 121

9.2

Ejercicio 14: Carga de avionesEquation Section (Next) ....................................................... 123

9.2.1

Descripcin del problema ........................................................ Error! Marcador no definido.

9.2.2

Preguntas ............................................................................................................................. 123

9.2.3

Resolucin ........................................................................................................................... 124

9.3

Ejercicio 3: Centralita telefnicaEquation Section (Next) .................................................... 127

9.3.1

Enunciado ............................................................................................................................ 127

9.3.2

Resolucin con Excel........................................................................................................... 127

9.4

Ejercicio 2: Problema de corteEquation Section (Next) ....................................................... 128

9.5

Ejercicio 4: Varios turnos Equation Section (Next) .............................................................. 129

9.5.1

Descripcin del problema ........................................................ Error! Marcador no definido.

9.5.2

Preguntas ............................................................................................................................. 129

9.6

Ejercicio 5: Plan de produccinEquation Section (Next) ..................................................... 129

9.6.1

Descripcin del problema .................................................................................................... 129

9.6.2

Preguntas ............................................................................................................................. 129

9.6.3

Modelado ............................................................................................................................. 130

9.7

Ejercicio 6: LocalizacinEquation Section (Next) ................................................................. 133

9.7.1

Descripcin del problema .................................................................................................... 133

9.7.2

Preguntas ............................................................................................................................. 133

9.8

Ejercicio 9: Problema de distribucinEquation Section (Next) ........................................... 133

9.8.1

Descripcin del problema .................................................................................................... 133

9.8.2

Preguntas ............................................................................................................................. 133

9.9

Ejercicio 7: Vinos Don Pepn Equation Section (Next) .................................................... 134

9.9.1

Descripcin del problema ........................................................ Error! Marcador no definido.

9.9.2

Preguntas ............................................................................................................................. 135

9.9.3

Resolucin ........................................................................................................................... 137

9.10

Ejercicio 8: Plan de produccin de zapatillasEquation Section (Next)............................. 141

9.10.1

Descripcin del problema .................................................................................................. 141

9.10.2

Preguntas ........................................................................................................................... 141

9.11

Ejercicio 10: Gestin de stocksEquation Section (Next) ................................................... 142

Pgina 8 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

9.11.1

Descripcin del problema ...................................................... Error! Marcador no definido.

9.11.2

Preguntas ........................................................................................................................... 143

9.11.3

Resolucin ......................................................................................................................... 144

9.12

Ejercicio 11: Equilibrado de lneasEquation Section (Next) .............................................. 145

9.13

Ejercicio 12: Jorge y NuriaEquation Section (Next)............................................................ 146

9.13.1

Descripcin del problema ...................................................... Error! Marcador no definido.

9.13.2

Preguntas ........................................................................................................................... 146

9.13.3

Resolucin ......................................................................................................................... 146

9.14

Ejercicio 13: Operacin BriscaEquation Section (Next) ..................................................... 149

9.14.1

Descripcin del problema .................................................................................................. 149

9.14.2

Preguntas ........................................................................................................................... 149

9.14.3

Resolucin ......................................................................................................................... 150

9.15 ...................................................................................................................................................... 153

10

CASOSEQUATION CHAPTER (NEXT) SECTION 1 ................................................................. 153

10.1

Caso 1: Asignacin de fechas y aulas para exmenes ...................................................... 167

10.2

Caso 2: La Ruta de llanesEquation Section (Next) ............................................................. 153

CREO QUE SERA INTERESANTE PONER EL CASO DEL ARTCULO DE SEGURA Y AS


INTRODUCIMOS EL STROKE ........................................................................ Error! Marcador no definido.
10.3

Caso 3: Red de metro de ValenciaEquation Section (Next) ............................................... 155

10.4

Caso 4: Rutas de distribucinEquation Section (Next) ...................................................... 157

10.5

Caso 5: Fabricacin de zapatillasEquation Section (Next) ................................................ 158

10.6

Caso 6: Las farmacias de Alcudia, Benimodo y CarletEquation Section (Next) ............. 160

10.7

Caso 7: Planificacin agregada en una planta de motoresEquation Section (Next)....... 162

10.8

Caso 8: Karbonatadas JUPE (III) Equation Section (Next) ................................................. 165

10.9

Caso 9: Central pendiente DominicanaEquation Section (Next) ....................................... 166

11

CONCLUSIN.................................................................... ERROR! MARCADOR NO DEFINIDO.

Pgina 9 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

12

BIBLIOGRAFA ........................................................................................................................... 170

Pgina 10 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

INTRODUCCIN
Este es un libro sobre un modo de pensar la realidad que utiliza una herramienta: La programacin
matemtica con relaciones lineales entre sus variables.
Como tcnica de modelado parece muy restrictiva, pero tiene la ventaja de que las tcnicas de
resolucin son muy eficientes. Se puede aducir que la realidad nunca es lineal. Cierto. Pero la realidad
tampoco es en blanco y negro, y sin embargo hay estilos fotogrficos que consideran esa limitacin
como una oportunidad de representar la realidad.
En la mayor parte de los libros de Investigacin Operativa, se sigue la tradicin de explicar modos de
resolver problemas de Programacin Matemtica. Para los autores de este texto, ese es un aspecto
superado. La matemtica y su hija menor, la informtica, nos han proporcionado un buen modo de
resolver: utilizar paquetes de resolucin informatizados. Dichos paquetes, libres y de pago, son cada vez
ms sofisticados y eficientes. Gracias a ellos, el problema ha dejado de ser cmo resolver el modelo, el
problema es modelar la realidad e interpretarla a travs del modelo. Y de eso es de lo que va este libro.
En l propone un mtodo razonablemente sistemtico para llegar a crear el modelo, que es mucho
ms difcil de hacer que replicar el mtodo de resolucin ( si es que hay todava slo uno).
El libro ha sido construido a travs de los aos con el aporte de muchos alumnos y
fundamentalmente sus dudas. Tantos aos que incluso a la RAE le ha dado tiempo a aceptar la palabra
modelizar, aunque los autores prefieren la ms antigua y menos pretenciosa modelar.
El libro est pensado para aprender a modelar eficientemente, y para ello en ocasiones intenta
explicar alguna circunstancia que ayude a entender el porqu de algunas limitaciones, o porqu unas
tcnicas son mejores que otras.
Los modelos no son la realidad, son el atajo que nos permite aprehenderla. Y la programacin
matemtica es una tcnica ms, una tcnica muy potente, pero una ms.
El libro consta de 11 captulos. Los dos ltimos se dedican a problemas. Los 8 primeros plantean
aspectos tericos. La mayor parte de los problemas y los casos estn basados en situaciones reales
que los autores han vivido.

Pgina 11 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

1 MODELOS
1.1

IntroduccinEquation Chapter 2 Section 1


La realidad es multiforme y difcil de capturar. Pero para poder tomar decisiones de manera

racional es necesario conocer las posibilidades que se nos abren y el efecto de las mismas. Esos
clculos los hacemos a travs de modelos que pueden ser ms o menos simples.
El arte de crear modelos requiere mucha experiencia pero tambin tcnica. Y un poco de filosofa
al reconocer que los modelos siempre son representaciones de la realidad, que asumimos que existe, y
es percibida de modo diferente por diferentes actores en funcin de sus necesidades.
El presente captulo aborda algunos conceptos bsicos como la definicin de modelo o su utilidad
y Las diferentes interpretaciones de la palabra Cliente, Problema o Solucin.
Establece tambin el ciclo de vida en la construccin e modelos y algunos principios bsicos que
facilitarn alcanzar con xito los objetivos del modelado.

1.2

Qu es un Modelo?

Una de las definiciones ms simples de modelo es la propuesta por Colin Lee (1973, pg. 7):
Un modelo es una representacin de la realidad
Advierten Box y Draper (1987, pg. 74) de una caracterstica de los modelos.
Bsicamente todos los modelos son errneos, aunque algunos son tiles
Desgraciadamente el ser humano tiende a confundir el modelo con la realidad. En un proceso de
metonimia el ser humano tiende a crear modelos y tergiversar la realidad hasta que esta se adapta a
ellos. Pero eso es un defecto de la mente humana, no del proceso de modelar.
Pidd (2010) propone la siguiente definicin que por su inters se desarrolla posteriormente:
Un modelo es una representacin explcita y externa de parte de la realidad
como la ven las personas que desean usar el modelo para entender, cambiar,
gestionar y controlar dicha parte de la realidad
De esta definicin se pueden extraer muchas reflexiones interesantes sobre los modelos y su uso en
Investigacin de Operaciones (Operation Research (OR) en ingls). Quiz la ms relevante es que los
modelos son representaciones (no son la realidad, que, por cierto, se asume que existe) pero que los
hacemos con un objetivo respecto a la realidad modelada.
Los modelos son explcitos se construyen manejan y modifican como tales. Y aunque no se debe
confundir el modelo con la realidad, el modelo debe tener una imagen fsica sobre la que los diferentes
actores puedan opinar.

Pgina 12 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

Los modelos son externos. Mientras no tienen una representacin externa respecto del modelador
son simplemente una teora mental del mismo. En esa presentacin externa radica una de las grandes
ventajas de los modelos: ponen negro sobre blanco los pensamientos, los datos, las hiptesis y las
intuiciones.
Este esfuerzo es ms que suficiente, en algunas ocasiones, para reconocer que no hay tal modelo, e
incluso que la realidad aparentemente no era la observada sino un conjunto de pre-juicios. En la mayor
parte de las ocasiones la mera representacin explcita y externa de partes del modelo, permite a los
actores del proceso tomar decisiones en beneficio del sistema que alteran sustancialmente el propio
sistema modelado.
Los modelos los realizan los modeladores. Son su esfuerzo y son su resultado. En muchas ocasiones,
al construir modelos, el modelador ha de atender comentarios que le obligan a incorporar uno u otro
aspecto de la realidad. Entonces el modelador es otro. Si a un pintor le dijeran el color con el que ha de
pintar una puesta de sol, no sera su puesta de sol sino la del observador impertinente.
Los modelos representan parte de la realidad. Afortunadamente la realidad es siempre ms compleja
que cualquier modelo por sofisticado que ste sea. El modelador discrimina qu aspectos son relevantes
y cules no, en funcin del objetivo que pretende alcanzar.
La realidad representada se limita a ser la que quiere ver, manejar controlar o cambiar el que dirige el
modelo. En muchas ocasiones una empresa solicita un modelo a un consultor externo para poderlo
utilizar internamente. Es uno de los caminos ms adecuados para que el modelo no se pueda utilizar,
pues siempre habr matices que podran haber sido representados de otra manera y que pueden entrar
en conflicto con las expectativas de lo que tiene que hacer el modelo. Por otro lado la visin de un
espectador externo permite plantear e incluso resolver conflictos que subyacan implcitamente en la
versin que cada actor tena de los hechos.
Los modelos, al representar externa y explcitamente parte de la realidad, permiten fundamentalmente
entender. Una etapa bastante habitual en el ciclo de vida de un modelo exige, tras uno (o varios) intentos
de modelado, cambiar de herramienta de modelado. Este paso (aunque nunca bien entendido) es
natural, puesto que el mejor entendimiento del problema provoca cambios radicales en la percepcin de
la realidad y la supuesta problemtica asociada.
La inteligencia de la realidad a travs del modelo, permitir asesorar sobre la oportunidad de cambios
en la realidad modelada. Dichos cambios sern ms adecuados cuantos ms aspectos de la realidad se
hayan podido modelar.
La gestin de la realidad a travs de los modelos es un hbito comn y necesario, aunque no
percibido. La gestin financiera de una empresa es uno de los modos ms extendidos de uso de un
modelo (la contabilidad) sin una percepcin clara del modelo utilizado (y en demasiadas ni siquiera de la
realidad representada). Pero tambin el uso de las tcnicas de Planificacin de Requerimientos de
Materiales Material Requirements Planning (MRP) en la gestin de materiales responde a la
implementacin informtica de modelos en funcin de los cuales se toman decisiones. Incluso la
Pgina 13 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

implementacin informtica es en ocasiones inadecuada porque no se conoca suficientemente bien la


realidad (o lo que es peor, el modelo que lo representaba).
Por ltimo, aunque es probablemente una de las ventajas ms relevantes, de abordar un problema
mediante su modelado, el modelo permite controlar. El modelo permite anticipar resultados, permite
establecer referencias en funcin de las cuales medir o controlar el rendimiento de un sistema. Con las
evidentes implicaciones que esto tiene en el control y mejora de los procesos.

1.3

Para qu sirve un modelo?

En atencin a lo anterior se pueden definir tres mbitos de utilidad de los modelos en la Investigacin
de operaciones:

1.3.1

Aprender / Entender

Implementar en un ordenador

Tomar decisiones

Aprender / Entender

La experiencia demuestra que el principal beneficio en la generacin de un modelo es el entendimiento


que el modelador adquiere del comportamiento de la realidad. Puede ocurrir, y de hecho ocurre con
frecuencia, que una vez finalizado el modelo, los objetivos perseguidos inicialmente se hayan alcanzado
sin hacer ningn tipo de experimento. Modelar como proceso puede tener ms valor que el modelo en s
mismo
Es habitual que para desarrollar un modelo se tenga que acceder a informacin a la que nunca se le
habra prestado atencin, y el mero acceso a la informacin reduce la incertidumbre, resolviendo el
problema. Asimismo es comn que la generacin de modelo haga aparecer datos reales y
contradictorios entre diferentes elementos de la realidad.
Una vez construido el modelo, se puede utilizar su ejecucin para conocer cmo acta el sistema y
cmo reacciona a los cambios. Es, por ejemplo, el caso de los simuladores de vuelo utilizados para el
entrenamiento de los futuros pilotos.
Adems el modelo, como representacin externa y explcita, puede permitirnos conocer errores y
fundamentalmente (de)mostrarlos. En ese caso el responsable del error puede reconocer su aportacin
sin que nadie tenga que decrselo a la cara pues lo reconoce a travs de una herramienta objetiva.
Por ltimo, aunque no menos importante, dentro de este epgrafe, podemos destacar la utilidad de
los modelos como base de discusin. Si el modelo representa la realidad, los gestores de sta podrn
probar las ventajas de sus opiniones sobre el modelo, centrando de este modo la discusin hacia
aspectos realizables y productivos.

Pgina 14 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

1.3.2

Implementar en un ordenador

La aparicin de los ordenadores es la que le ha dado a la investigacin de operaciones el impulso


necesario. La implementacin y automatizacin de procesos exige el modelado previo del problema
planteado. Si se desea gestionar la informacin que genera una empresa, o implementar un sistema de
gestin de recursos humanos es necesario realizar un modelo de dicha empresa que comprenda de la
manera ms eficiente posible toda la informacin vinculada. Cuanto ms general sea el modelo, mayor
ser la cantidad de empresas a las que se las podr aplicar el mismo programa (software).
Del mismo modo la utilidad de los modelos de programacin de produccin viene justificada, en gran
medida, por la capacidad de stos de ser implementados y resueltos mediante sistemas informticos
que puedan automatizar el proceso de toma de decisin.
1.3.3

Tomar decisiones

Los modelos construidos permiten mediante su resolucin ayudar a la toma de decisiones generando
soluciones ptimas, o suficientemente cercanas al ptimo, dado un objetivo establecido.
Asimismo pueden ser utilizados para evaluar el impacto de tomar decisiones, antes de tomarlas, y de
este modo elegir la que ms se ajuste a la solucin.
Pero adems, desarrollar el modelo, ejecutarlo y analizar las soluciones permite objetivar el proceso
de anlisis, permite pintar una realidad que todos tienen que aceptar, o aportar datos que mejoren el
modelo. De este modo, al objetivar el proceso de anlisis, los participantes en el proceso de toma de
decisiones entran en una dinmica de objetivacin y aporte de datos, que simplifica y favorece el propio
proceso y su resultado.

1.4

El Cliente y el Problema

En general el cliente no conoce suficientemente bien su problema ni su origen (tanto el que solicita
un modelado como el que no lo solicita). Si lo conociera no solicitara ayuda para resolverlo, y por tanto
el problema no existira, porque en muchas ocasiones ser capaz de explicitar el problema es hacer
evidente una solucin.
En general se puede afirmar que el cliente tiene una nebulosa sobre un problema a la que damos
una cierta forma con la construccin del modelo. Es por ello que muchos problemas de organizacin
industrial no se resuelven sino que se disuelven.
Pero adems el nmero de actores implicados en un problema es en general alto y con perfiles muy
diferenciados entre s. En la mayor parte de las ocasiones el conocimiento sobre el problema real y sus
circunstancias, es escaso. Escassimo es el conocimiento sobre las herramientas para resolver dicho
problema. Y ese desconocimiento sobre la herramienta es un factor a tener en cuenta porque permite
vender la solucin, pero impide la compra.

Pgina 15 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

Sin nimo de ser exhaustivo se pueden identificar al menos 4 tipos de implicados en la generacin de
una solucin:

1) El Pagano: Quiz es el principal de los actores. Es el que paga el anlisis, el desarrollo y la


puesta en marcha de la solucin.
2) El Usuario: Es el conjunto de personas cuya vida se ver mejorada por la solucin y
resolucin del problema. Nunca hay que olvidar que el concepto de vida mejor es tambin
relativo.
3) El Sufridor: Toda aproximacin tiene siempre uno o varios sufridores. Son aquellos que se
vern afectada su vida por la modificacin de su entorno y es imposible a priori para
alguien que no sea ellos mismos (e incluso para ellos mismos) saber hasta que punto su
calidad de vida empeorar por la resolucin del problema.
4) El Prescriptor: Existe una tipologa de cliente que recibe el nombre de prescriptor. En
principio este personaje (bsico en el funcionamiento de la economa moderna) no gana
nada con una resolucin adecuada del problema, pero pierde en el caso de que (como
esperan los sufridores) la solucin no sea finalmente adoptada.

1.5

El Problema y el concepto de Solucin

A partir de la descripcin del problema, generamos informacin que podr ser capturada en forma de
datos. Dichos datos son analizables de tal modo que generan unos datos conocidos como variables de
salida. Por lo general, esos datos son intiles salvo que se transformen en informacin, y slo sta
ltima puede ayudar a resolver el problema.
La palabra solucin tiene demasiados significados y es conveniente tratar algunos de ellos aqu.
De modo general una solucin es el efecto de resolver o dar por terminado algo. As que la solucin
de un problema hace que este desaparezca. Es en este sentido en el que antes se ha indicado que la
mayor parte de los problemas de organizacin industrial se disuelven por el mero hecho de modelar.
En matemticas (y este es un libro de investigacin operativa) la solucin tiene otra caracterstica.
Una solucin es un conjunto de valores posibles que adoptan las incgnitas (bonita palabra que ha sido
sustituida por variables). As solucionar un problema expresado de modo matemtico es definir valores a
las variables de manera que su combinacin sea factible.
En determinados ambientes la palabra solucin se encuentra demasiado asociada a la palabra
ptima. Existen ambientes an ms degradados (que los autores recomiendan no frecuentar
excesivamente) dnde se utiliza con total impunidad la expresin una solucin ms ptima. Los
autores de este libro consideran que la palabra optimizar no se debe utilizar en vano, y aunque no es
necesaria la pena de crcel para quien quiere una solucin ms ptima si debera ser escarmentado
en plaza pblica. Una solucin ptima es la que es mejor que todas las dems y adems se puede
demostrar. Por otro lado aunque muchos investigadores consideran que si no es ptimo no es solucin,
cuando la solucin se acerca a la implementacin prctica la optimalidad no es el nico criterio a
considerar al definir un mtodo para alcanzar la solucin.

Pgina 16 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

Ilustracin 1-1: De la definicin del problema a la solucin y vice-versa como proceso de


resolucin
Por ltimo, en los ltimos aos se ha extendido el uso del concepto de solucin informtica. Algo
as como conozco tu problema, olvdate de todo que yo me ocupo con informtica. Algunos de los
modelos de programacin matemtica que en este libro se aprende a desarrollar, podran formar parte
del ncleo de una solucin. Aunque el usuario final se asustara de conocer que unas frmulas que
optimizan una solucin forman parte de su da a da.
As pues existen tres significados para la palabra solucin en nuestro entorno. Una solucin es un
conjunto de variables que han adquirido un determinado valor. Una solucin es tambin el programa que
generar informacin a partir de los datos disponibles (generalmente se le denomina solucin
informtica) Y por ltimo est lo que el cliente considera que es la solucin a su problema, que
bsicamente se da cuando el problema desaparece.

1.6

Ciclo de vida de la construccin de modelos

Afortunadamente no existe un mtodo idneo, nico y estructurado para construir un modelo perfecto
de modo directo. En cualquier caso, se puede decir que en la definicin de cualquier modelo hay tres
etapas o hitos bsicos que se concretan en:
Etapa 1. Definir el Problema. Esta fase incluye entender el problema y acordar con el cliente
los resultados a obtener.
Etapa 2. Modelar y Construir la Solucin. Esta fase incluye definir el tipo de tcnica a utilizar,
generar el modelo (implementarlo informticamente si es el caso) y por ltimo validarlo.
Etapa 3. Utilizar la Solucin. Un modelo perfecto que no se utilice es un modelo
perfectamente intil. Ser capaz de implementar el modelo de tal manera que el cliente lo
utilice, y mantener un sistema de actualizacin son los dos elementos bsicos de esta
fase.

Pgina 17 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

Cualquiera de las etapas citadas exige replantearse siempre la vuelta al principio del proceso. La
mejor comprensin de la realidad puede llevar a cambiar la tcnica a utilizar para alcanzar el objetivo
propuesto.
1.6.1

Etapa 1: Definir el Problema

La definicin del problema tiene dos etapas fundamentales:

1) Entender el problema. Hay que estructurar el problema para entenderlo. Cualquier herramienta
es buena. En ocasiones con esta etapa el problema a resolver queda resuelto. Y en general
tambin ocurre que el primer problema planteado no era el problema real.
2) Acordar con el cliente los resultados a obtener. No significa necesariamente que el cliente deba
definir el resultado concreto del trabajo. Pero es interesante conocer si pretende una respuesta
del tipo booleana s o no o una hoja Excel sobre la que probar alternativas de decisin.
1.6.2

Etapa 2: Modelar y Construir la Solucin

El propio proceso de modelo debe seguir tres etapas fundamentales y cronolgicamente ordenadas.

3) Definir el tipo de tcnica. La decisin del tipo de tcnica que mejor se ajusta al problema puede
ser revocada en cualquier instante, pero da por perdido todo el trabajo anterior. Esto incluye el
anlisis de datos disponibles y resultados requeridos.
4) Generar el modelo. Esta etapa incluye estimar los parmetros para modelar o calcular
resultados, adems de dar forma fsica al modelo. En este punto es de destacar la aplicacin del
principio Ir paso a paso. Esto implica abordar escalonadamente los diferentes aspectos de la
realidad que se pretenden modelar.
5) Validar el modelo. Decidir si el modelo vale para algo, si se puede usar y si el cliente lo
encontrar aceptable. Fundamentalmente esta fase exige comprobar que se comporta como se
pretenda que se comportara.
1.6.3

Etapa 3: Utilizar la Solucin

Una vez que un modelo est validado, los pasos siguientes consisten en:

6) Implementar el modelo. Trabajar con el cliente para poder extraer los mximos beneficios del
trabajo realizado.
7) Actualizar el modelo. Es evidente que la realidad es cambiante, por ello el modelo debe
adaptarse a las nuevas circunstancias de manera continua si se pretende que siga teniendo
utilidad.

1.7

Algunos principios para tener xito en el modelado

Aunque como se ver posteriormente existen mltiples tipos de modelos (y por tanto de procesos de
modelado) se pueden extraer algunos principios generales tiles en cualquier caso:

Los modelos han de ser simples, su anlisis debe ser complejo

Los modelos se deben elaborar paso a paso

Es siempre til usar metforas, analogas y similitudes para hacer el modelado

Pgina 18 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

1.7.1

Los datos disponibles no deben conformar el modelo

Modelar es explorar

Los modelos han de ser simples, su anlisis debe ser complejo

Al modelar se puede tener la tendencia de trasladar toda la complejidad de la realidad al modelo.


Esto, aunque suele agradar al que mira el modelo, no es til para quien lo debe utilizar por dos
motivos: un modelo de este tipo es difcil de construir y tambin es difcil de utilizar.
Antes de comenzar el proceso de modelado se debera responder a la pregunta: Para qu quiero y
necesito el modelo? de un modo concreto. De este modo se puede garantizar que para hacer un
simulador de coches, no se pierde tiempo modelando el funcionamiento del turbo cuando lo que se
pretende es hacer una herramienta para comprender el funcionamiento de los tapones de trfico.
1.7.2

Ir paso a paso

Es habitual observar que se pretende construir un modelo considerando todos los aspectos
simultneamente desde el principio. Los pintores primero hacen bocetos. La ciencia avanza paso a
paso. Los modelos, si pretenden estar dentro de ella, tambin deben ser elaborados paso a paso.
Un corolario de este principio exige Dividir para Vencer. Empezar generando pequeos modelos de
una parte reducida y determinada del proceso para aumentar su mbito (scope) gradualmente.
De este principio se deriva que la estrategia recomendable es evitar tener todos los aspectos en
cuenta desde el principio. El proceso de modelado puede comenzar aislando una pequea parte y
realizando un modelo detallado, que permita su reproduccin en otras secciones. Tambin se puede
realizar al principio un modelo muy general, e ir mejorando etapa a etapa la exactitud del mismo.
1.7.3

Usar al mximo metforas, analogas y similitudes

Un buen modelador, ms que quedar restringido por la realidad tal y como la percibe a primera
vista, la aborda e incluso la modela desde puntos de vista alternativos que le pueden dar una imagen
con otro nivel de detalle, o incluso le facilita herramientas que ya han sido utilizadas en casos similares.
El abandonar de modo explcito la realidad puede simplificar el problema o puede permitir
representarlo de un modo ms sencillo. Cualquier plano de metro de cualquier ciudad no representa
cada lnea y cada estacin tal cual es sino que une mediante lneas, los puntos, que representan
estaciones, que en casi ningn caso pueden superponerse sobre un plano detallado y proporcional de la
ciudad. La representacin exacta de la realidad incrementara la dificultad en la lectura de dichos planos.
Sirva para ilustrarlo un ejemplo sencillo que propone/descubre el Profesor Companys de la
Universidad Politcnica de Catalua: El problema de secuenciacin de unidades en una lnea
multimodelo (planteado en Monden, 1983) persigue la regularidad en la aparicin de opciones
(Heijunka). En su versin PRV (regularidad en la aparicin de productos) se puede abordar
heursticamente mediante tcnicas de reparto de escaos como la denominada Ley DHont. Una vez

Pgina 19 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

dado ese paso, (el de la comprobacin de similitudes) el modelador dispondr de algoritmos y


resultados que fueron desarrollados a finales del siglo XVIII.
1.7.4

Los datos disponibles no deben conformar el modelo

Un fallo comn a la hora de plantear un modelo es retrasar el comienzo del modelado hasta que se
disponga de los datos. El planteamiento debe ser el contrario. El modelo debe requerir datos, no los
datos conformar el modelo.
El analista debe desarrollar las lneas bsicas sobre el modelo y una vez hecho esto, debiera
definirse la estructura de datos necesarios. Si hubiera tiempo lo lgico sera que a la luz de estos
resultados preliminares se redefiniera el modelo y por tanto los datos necesarios, y as sucesivamente.
Se pueden distinguir tres conjuntos bsicos de datos necesarios para crear y validar un modelo:

1) Datos que aportan informacin preliminar y contextual. Permitirn generar el modelo.


2) Datos que se recogen para definir el modelo. Estos datos nos permitirn parametrizar el
modelo.
3) Datos que permiten evaluar la bondad del modelo.
Hay que destacar la importancia de que los datos del segundo y el tercer tipo sean distintos, porque
en caso contrario el modelo realmente no se habr validado.
Una ltima recomendacin respecto a los datos es evitar aquellos que ya estn recogidos. Sirva el
siguiente clsico ejemplo como ilustracin:
Para desarrollar un modelo para la programacin de produccin puede ser necesario
desarrollar submodelos de demandas de los clientes para los productos fabricados. La mayor
parte de las empresas guardan esta informacin en sistemas.
El modo rpido de recoger la informacin de la demanda es acudir a los sistemas informticos
que se usan para introducir rdenes y enviar facturas. Pero no es conveniente tomar ese
camino tan evidente. Los sistemas slo recogen lo que se vende, no lo que el cliente quiere.
Las ventas muchas veces simplemente son un reflejo indirecto del stock disponible, pues se
obliga al cliente a comprar lo que existe.
1.7.5

Principio subyacente: Modelar es Explorar

Dado que un modelo es el resultado de representar objetivamente parte de la realidad para tomar
decisiones, implementar o entender, se podra pensar que el proceso de modelar es un proceso lineal.
Sin embargo, la experiencia muestra que en el proceso de modelar hay muchas vueltas atrs,
cambios de direccin o cambios de perspectiva, incluso es bastante habitual que haya cambios de
herramientas.

Pgina 20 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

Modelar es explorar la realidad, y en especial la realidad desconocida. Por ello siempre aplica el
siguiente corolario de la ley de Murphy: Si se consigue que el modelo funcione a la primera, es que se
ha errado el problema.

Pgina 21 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

2 TIPOS

DE

MODELOS

MATEMTICOS.

LOS

MODELOS

DE

PROGRAMACIN
MATEMTICAEQUATION CHAPTER (NEXT) SECTION 1
2.1

Introduccin

Antes de comenzar a modelar matemticamente es necesario saber para qu modelamos. Se puede


modelar para entender la realidad pero tambin el modelo puede servir obtener resultados que son
realmente decisiones que afectarn esa realidad. En el segundo de los casos los modelos matemticos
son especialmente tiles, y dentro de ellos los modelos de programacin matemtica. El captulo se
cierra con una revisin de otras tcnicas de modelado basadas en las matemticas.

2.2

Clasificacin de modelos matemticos

En Shapiro (2010) se distingue entre teoras y modelos y clasifica estos ltimos, segn el uso que se
d a su resultado en Normativos o Descriptivos.
Son normativos los modelos matemticos cuyos resultados concretos se utilizan explcitamente para
tomar decisiones. Por ejemplo un modelo que calcule un programa de produccin. Los ms importantes
de estos se pueden clasificar en modelos de optimizacin y modelos de resolucin mediante heursticas.
Los modelos descriptivos se utilizan para intentar obtener mejor visin del sistema, la interpretacin
de cuyos resultados conducir generalmente a tomar decisiones. Entre estos modelos se

pueden

destacar Previsin, Data Mining, Simulacin, Dinmica de Sistemas,).


2.2.1

Modelos normativos y Modelos Descriptivos.

Los modelos normativos exigen el planteamiento de un modelo matemtico (probablemente en forma


de funcin objetivo y restricciones). Los modelos cuya estructura se ajusta a algunos de los patrones
clsicos para los que es factible la optimizacin (programacin lineal por ejemplo) forman el subconjunto
de modelos de optimizacin.
En ocasiones la estructura del modelo impide el uso de algn mtodo de optimizacin conocido, es
por ello que se plantean los procedimientos heursticos de resolucin que, si bien no garantizan ptimos,
permiten encontrar soluciones en espacios cortos de tiempo.
Es evidente que el trabajo en el primer caso se debe centrar en el proceso de modelado, mientras
que en el segundo grupo el esfuerzo se hace en la definicin del mtodo heurstico de resolucin.
En este libro se despliega uno de los tipos de modelos normativos, la programacin matemtica
(PM), y ms concretamente la programacin lineal entera (PLE). La programacin matemtica no es el
nico modo de modelar matemticamente, ni el nico modo normativo de hacerlo. Por ello en los puntos
siguientes se har una presentacin de algunos de estos modos.

Pgina 22 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

Los modelos descriptivos abarcan todas aquellas tcnicas de modelado que no comportan la
definicin de estructuras matemticas que definen una solucin como la deseable para ser
implementada.
Entre los modelos descriptivos se pueden citar los modelos de simulacin, la teora de colas e incluso
las tcnicas de previsin entre otras. Algunos de los modelos descriptivos llevan aparejada una carga
matemtica importante, mientras que otros su estructura no es de tipo matemtico. Aunque ello no les
quita ni un pice de formalidad. Por poner un ejemplo los modelos IDEF-0 son altamente formales y
estndar. Aunque tienen aspecto de grafo, no necesariamente debieran ser incluidos entre los que se
denominan Modelos Matemticos.
2.2.2

Modelos matemticos segn variables y parmetros.

Los modelos matemticos son modelos formales que utilizan el lenguaje de las matemticas para
describir un sistema, expresando parmetros, variables y relaciones. El lenguaje matemtico no se limita
a la expresin de nmeros y operadores aritmticos que los relacionan. As por ejemplo la teora de
grafos, ampliamente utilizada en aplicaciones prcticas, es un subconjunto de la ms general teora de
conjuntos.
Los modelos matemticos se pueden clasificar de mltiples maneras. A continuacin se describen
algunas que se consideran relevantes:
1) Los modelos pueden ser estticos o dinmicos. Un modelo esttico no tiene en cuenta el
tiempo, mientras que los modelos dinmicos s. Los modelos dinmicos se suelen representar
con ecuaciones en diferencias o ecuaciones diferenciales.
2) Los modelos pueden ser lineales o no-lineales. Si todos los operadores de un modelo son
lineales el modelo es lineal. Si al menos uno es no-lineal el modelo es no-lineal. Aunque hay
excepciones, los modelos lineales son mucho ms fciles de manejar que los modelos nolineales. En general los modelos no-lineales pueden ser linealizados, pero entonces, es
posible, que se estn perdiendo aspectos relevantes del problema.
3) Un modelo puede ser determinista o estocstico. Un modelo determinista es aquel en que
cada conjunto de variables en un estado est definido por los parmetros del modelo y por los
estados anteriores. Un modelo determinista se comporta siempre igual para un conjunto de
parmetros de entrada. En un modelo estocstico las variables de estado se representan por
distribuciones de probabilidad, y por tanto el modelo es capaz de recoger aleatoriedad o
incertidumbre.

2.3

Algunas clases de Modelos Matemticos. Otros modos de pensar

El resto del libro se dedicar a la Programacin Matemtica, pero se ha considerado interesante


introducir una revisin algunas tcnicas diferentes en el fondo o en la forma. La lista, que no es
exhaustiva ni las agrupaciones consideradas son necesariamente disjuntas, incluye las Teoras de
Redes, de Colas y de Juegos, la Simulacin, la programacin dinmica. No se consideran, aunque son

Pgina 23 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

tambin importantes, modos de modelar como la Previsin (Companys, 1990), la Teora de Decisin
(White, 1972; Raiffa, 1970) o Teora de Juegos (Binmore, 1994), o aplicaciones concretas como
modelos de Inventario (Axster, 2000) o de Reemplazo (Figuera y Figuera, 1979).
2.3.1

Modelos de optimizacin combinatoria

La optimizacin combinatoria es una rama de la Investigacin Operativa que consiste en encontrar la


solucin ptima a un problema en que cada solucin est asociada a un determinado valor (el valor de la
solucin).
El trmino combinatoria hace a la rama de la matemtica que estudia el nmero de posibilidades de
ordenacin, seleccin e intercambio de los elementos (objetos) de un conjunto (o coleccin), es decir las
combinaciones, variaciones y permutaciones. Se ocupa, en particular, del "recuento" de los objetos de
dichas colecciones (combinatoria enumerativa) y del problema de determinar si cierto objeto "ptimo"
existe (combinatoria extremal).
El trmino optimizacin hace referencia a este segundo aspecto de la bsqueda del mejor valor. En
muchos de esos problemas la bsqueda exhaustiva no es factible y por la estructura de los problemas
tanto no es posible.
La optimizacin combinatoria acta en el campo de los problemas de optimizacin en los que el conjunto
de soluciones factibles es discreto (o reducible a discreto). En algunos casos se tiende la tendencia a
asumir que la OC es la programacin lineal entera con variables binarias.
La bsqueda (o la definicin de la existencia) de un ptimo para tipos especficos de problemas ha dado
lugar a una cantidad considerable de algoritmos que son capaces de resolver casos especficos en
tiempo polinomial.
Los problemas de optimizacin combinatoria tratan de encontrar la mejor solucin de entre un conjunto
de objetos discretos y por tanto finitos. En principio cualquier algoritmo constructivo o de bsqueda
podra encontrar la solucin ptima, pero no necesariamente tiene porqu garantizarla.
En aquellos casos en que el problema parece resistirse a ser resuelto se suele abordar el problema de
diferentes maneras:

Algoritmos que funcionan bien generalmente para tamaos pequeos de problemas.

En ocasiones hay problemas cuya versin aplicada no presenta las caractersticas del
peor de los casos (worst-case).

2.3.2

Algoritmos de aproximacin que son capaces de dar soluciones muy cerca del ptimo.

Teora de grafos de redes

Segn Kauffman (1972), la Teora de Redes es una rama de la teora de conjuntos basada en los
trabajos de Kning. En aquel momento, era para el autor, la rama de la teora de conjuntos con ms

Pgina 24 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

futuro. De hecho aporta una ayuda eficaz para modelar y resolver determinados problemas de carcter
combinatorio que aparecen en los ms diversos dominios (Companys, 2005).
La teora de redes, o de grafos, incluye un modo de representar y un soporte matemtico para
resolver. El modo de representar es intuitivo en su forma ms simple, por su relacin con la realidad
fsica, de determinados tipos de problemas. El soporte matemtico es especial para cada tipo de
problema, que suelen ser complejos problemas de combinatoria, permite resolverlo de modo ms simple
que al utilizar la programacin matemtica convencional. Es relativamente sencillo traducir un modelo de
red a un modelo de programacin matemtica, es un poco ms complicado hacer la traduccin a la
inversa. La decisin sobre qu modo de modelar se debe utilizar, debe tomarla el modelador teniendo
en cuenta la necesidad de transmitir el modelo (donde la teora de grafos es claramente superior), la
disponibilidad de herramientas y la realidad concreta a modelar.
En lneas generales se puede decir que los componentes bsicos de la denominada teora de grafos
son los vrtices (o nodos o puntos) y los arcos que los unen. A un conjunto determinado de vrtices y
arcos se le denomina red. A partir de estos conceptos se desarrollan otros como camino, corte, rbol,
etc.
Algunos de los principales modelos que de este modo se plantean son: los problemas de rbol
mnimo, de camino mnimo, de flujo mximo o de permutacin ptima. El poder reducir un problema real
a un problema clsico de grafos implica la posibilidad de conocer mtodos eficaces de resolucin, para
muchos de ellos (siempre dependiendo del tamao y la complejidad). Algunos de los problemas de
Gestin Industrial que se pueden abordar con estos mtodos son la programacin de Proyectos, la
Gestin de Inventarios, el Diseo de Rutas, la Secuenciacin y la Temporizacin, etc.
2.3.3

Programacin dinmica

Si antes se destacaba que el nombre de programacin matemtica no era muy representativo de la


propia tcnica, el de programacin dinmica no lo mejora.
Cuando el nombre programacin matemtica haba adquirido cierto auge, Bellman (1956) plante en
la dcada de los 50 (del siglo XX) la herramienta denominada programacin dinmica, a travs de su
libro del mismo ttulo para la resolucin de problemas de carcter secuencial (inicialmente econmicos
pero tambin fsicos y matemticos).
El fundamento de este procedimiento se encuentra en el principio de optimalidad que Bellman
enunci del siguiente modo:
Una poltica es ptima si en un periodo dado, cualesquiera que sean las decisiones
precedentes, las decisiones que queden por tomar constituyen una poltica ptima teniendo
en cuenta los resultados precedentes
La programacin dinmica es un mtodo de optimizacin de los sistemas o de su representacin
matemtica, sobre la que se opera por fases o secuencias (Kauffman, 1972).

Pgina 25 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

El mtodo de resolucin denominado programacin dinmica consiste en buscar las subpolticas


ptimas que comprendan cada vez ms fases unitivas (Denardo, 1982), hasta encontrar la(s) poltica(s)
ptima(s). En ciertos problemas los clculos se vuelven mucho ms simples cuando se hace la
optimizacin en un cierto sentido privilegiado o a partir de cierta fase (Companys, 2002).
Las variables utilizadas pueden ser discretas o continuas. Adems los parmetros pueden ser
deterministas o estocsticos. Cuando el futuro es aleatorio (parmetros estocsticos), la optimizacin de
la esperanza matemtica del valor total slo puede llevarse a cabo en un sentido, remontndose desde
el futuro hacia el pasado (Kauffman, 1972).
Si al concepto de programacin dinmica se le une la consideracin de los mtodos de ramificacin
y corte, aparece el concepto de programacin dinmica acotada, por el cual se utilizan cotas en un
esquema de programacin dinmica, limitando el nmero de vrtices que se pueden almacenar
(Bautista, Companys y Corominas, 1992).
Por las propias caractersticas de la aproximacin a la resolucin de problemas de programacin
dinmica (analizar el problema desde el final y retroceder por el camino hacia el principio) se puede
compartir la afirmacin de que la programacin matemtica, adems de un modo de modelar es un
modo de vida.
2.3.4

Teora de colas

Se admite como inevitable la existencia de colas en los sistemas en que las entradas y/o el servicio
se producen a intervalos irregulares. La teora de colas es un mtodo de modelado que describe el
comportamiento de las mismas. La primera aplicacin prctica de la que se tiene constancia, y con la
que se inicia la investigacin en este campo es el trabajo de Erlang (1909, 1917) a principios del siglo
XX.
Uno de los resultados ms conocidos de la teora de colas es la denominada frmula de Little (2011)
que relaciona la longitud de la cola con el tiempo de espera y el ritmo de entrada al sistema.
Los resultados ms habituales de la teora de colas se refieren a sistemas de una etapa con entradas
y salidas siguiendo distribuciones exponenciales. Sin embargo ms tiles en mltiples ocasiones son las
redes de colas con tiempos de los procesos no necesariamente exponenciales. Un excelente resumen
de la situacin actual de la teora de colas se puede encontrar en (Gross, Shortle, Thomson y Harris,
2008).
Los desarrollos en teora de colas han ido extendiendo sus soluciones tanto para diferentes tipos de
entradas como para redes de colas.
Es de destacar el especial inters que la teora de colas tiene en el diseo de elementos
estructurales de la denominada Nueva Economa (servidores web, procesadores compartidos...).

Pgina 26 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

2.3.5

Dinmica de sistemas

Se atribuye a Forrester (1997) el inicio del desarrollo de la denominada dinmica de Sistemas. Esta
tiene su relacin directa con el Enfoque de Sistemas visto en el apartado dedicado a los Fundamentos
Organizativos de la Organizacin de Empresas.
Forrester desarroll un conjunto de herramientas y una aproximacin a la simulacin que se ha
llegado a conocer como dinmica de sistemas, mediante la cual se puede llegar a comprender como la
estructura de un sistema humano y sus polticas de control operan. Mostr tambin el valor que tienen
los modelos explcitos que combinan procesos de negocio y estructura organizacional.
En (Pidd, 2010) se sugiere que el precursor de esta idea es Tustin (1957) que public un libro titulado
The Mechanism of Economic Systems: An Approach to the Problem of Economic Stabilization from the
Point of View of Control-System Engineering.
Las herramientas de la dinmica de Sistemas pueden utilizarse de diferentes maneras. La
aproximacin bsica suministra una manera de observar sistemas humanos, haciendo especial hincapi
en la importancia de algunos aspectos estructurales como el control por retroalimentacin. La
consideracin de esta circunstancia aporta interesantes resultados incluso sin el uso de herramientas
informticas. Otro modo de utilizar la dinmica de sistemas es realizando simulaciones mediante
ordenador, que permitan entender mejor el funcionamiento de otro sistema. Por ltimo, la dinmica de
Sistemas se puede utilizar para mejorar el diseo de un sistema, evaluando mediante simulacin su
comportamiento.
2.3.6

Simulacin

Asociada en ocasiones a la teora de colas y heredera de la dinmica de sistemas se encuentra otra


herramienta de los mtodos cuantitativos como es la simulacin. El incremento de la capacidad de
clculo de los ordenadores, as como sus crecientes capacidades grficas hace que esta ltima est
experimentando una aplicacin creciente en el modelado de flujos de materiales, e incluso de
informacin.
Esta aplicacin creciente ha supuesto, en algunos casos, el abandono de las herramientas analticas,
que requiere un esfuerzo conceptual que aparentemente la simulacin no requiere. Hay que destacar,
en contra de esta opinin que la simulacin bien aplicada exige un importante esfuerzo para garantizar
la validez de resultados. De hecho, dado que la simulacin es comparable al anlisis por experimentos,
al hacer una simulacin hay que hacer frente a los mismos problemas que hay que afrontar cuando se
hace experimentacin convencional (incluyendo diseo experimental y anlisis estadstico). De este
modo el uso de la simulacin no reduce el esfuerzo a realizar, sino que resuelve problemas que la teora
de colas analtica no es actualmente capaz de abordar (Gross, Shortle, Thomson y Harris, 2008).
Pero no slo la simulacin de eventos discretos est disponible (aunque es con mucho la ms
utilizada en el terreno prctico) sino que la simulacin basada en agentes y/o la simulacin mediante
dinmica de Sistemas tienen su importante utilidad al modelar otros conceptos.

Pgina 27 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

2.3.7

Teora de juegos

Algunos problemas de toma de decisin se plantean bajo la forma de un juego, donde se trata de
tomar una o varias decisiones, frente a uno o varios decisores cuyas reacciones a las decisiones
tomadas se conocen poco o nada. La teora de juegos trata de establecer como debiera comportarse
racionalmente un individuo ante la ignorancia del comportamiento del adversario cuando se conocen las
reglas de la competencia aceptadas por los participantes (Kauffmann, 1972).
Para Kauffman (1972), la teora de juegos se desarrolla a partir de los trabajos de Borel (1921)
aunque el crdito se suele asociar a Von Neumann (1924). Desde luego el concepto ya haba
preocupado en diferentes formas a Kepler, Huyghens, Pascal, Fermat y Bernouilli entre otros.
Von Neumann y Morguestern (1944) en su primera obra sobre Teora de Juegos, investigaron dos
planteamientos distintos: el estratgico (o no-cooperativo) y el cooperativo. La complejidad del primer
problema planteado hizo que se limitaran a los juegos estrictamente competitivos o de suma nula, donde
los dos jugadores (slo dos) tienen intereses diametralmente opuestos. La segunda parte (el juego
cooperativo) an fue ms complejo y por tanto se limitaron a clasificar los modelos de formacin de
coaliciones (Binmore, 1994).
Nash (1951) afront dos de las barreras que Von Neumann y Morgenstern se haban autoimpuesto.
Sobre los juegos no-cooperativos estableci la idea del equilibrio que aparece cuando la eleccin
estratgica de cada jugador es la respuesta ptima a las elecciones estratgicas de los otros jugadores,
con lo que no es necesario restringirse a los juegos de suma cero. Respecto a los problemas
cooperativos, Nash rompi con la idea de que los problemas de negociacin son indeterminados y
ofreci argumentos para determinarlos (Binmore, 1994).
Actualmente la teora de juegos, lleva aparejado un aparato matemtico cada vez ms complicado.
En cualquier caso su modo de trabajo puede ser, y es, de gran utilidad en el anlisis la toma de
decisiones con la presencia de otros decisores.

Pgina 28 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

2.4

Modelos de programacin matemtica

La caracterstica comn que comparten todos los modos de modelar matemticamente es que
representan la realidad mediante variables (incgnitas) y parmetros (datos). Tambin tenemos en
cuenta algunos otros artefactos como funciones o conjuntos. De este modo la realidad queda
cuantificada. Entre los modelos matemticos estn la programacin dinmica o la teora de grafos.
Los modelos de programacin matemtica se distinguen porque representan la realidad mediante
funciones. Estas son combinacin de variables y parmetros en forma de restricciones y/o funciones
objetivo. En general, las restricciones se deben respetar y las funciones objetivo establecen la diferencia
entre una solucin y otra mejor.
Este tipo de modelos matemticos pertenecen al grupo de los modelos normativos (qu indican el
camino a seguir) frente a la categora de los descriptivos (que describen la situacin actual o futura).
2.4.1

El nombre de programacin matemtica 1

Se podra decir pues que se lo que se conoce como programacin matemtica fue originariamente
un modo de resolver problemas de programacin mediante mtodos matemticos.
Tres cientficos ilustres van asociados al origen del extrao nombre de Programacin Matemtica:
Koopmans, Dantzig y Kantorovich. Los tres parecen haber diseado mtodos de planificacin y
programacin de operaciones (produccin y transporte) utilizando modelos matemticos y dieron lugar
no slo a la disciplina sino tambin al nombre.
Al finalizar el primer tercio del siglo XX, Kantorovich, premio Nobel de Economa en 1975, se enfrenta
al problema de planificacin desde una ptica de Optimizacin matemtica. Kantorovich, que viva en la
Unin Sovitica enfoca cmo combinar la capacidad productiva de una fbrica para maximizar la
produccin. Para ello utiliza un mtodo de anlisis que posteriormente se llam programacin lineal.
Aunque entonces no tena nombre.
En el ao 1951 Koopmans (que fue premiado junto con Kantorovich con el Nobel) edita un libro de
ttulo "Activity Analysis of Production and Allocation: Proceeding of a conference", disponible en
http://cowles.econ.yale.edu/P/cm/m13/. Dicho libro recoge trabajos que sus autores dicen que son
ampliaciones o reduccin de trabajos publicados entre 1947 y 1949.
En un libro que l mismo edita, Koopmans, escribe dos captulos relevantes. El captulo III "Analysis
of production as an efficient combination of activities" donde expone un "problema de produccin" de
manera matemtica, y el captulo XIV de ttulo "A model of transportation" donde plante el problema de
"programar el transporte de barcos" tambin desde una ptica de optimizacin matemtica. Unos aos
antes haba planteado el problema pero de modo terico segn l mismo indica.

Fue el profesor Companys de la Universidad Politcnica de Catalunya quien puso al primer autor del libro detrs de la pista

de esta interesante historia. A l le debe dicho autor muchas cosas interesantes que ha aprendido, y sta es slo una de ellas.

Pgina 29 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

De hecho en los artculos indica que estaba influenciado por una corta entrevista que tuvo con
Dantzig. El propio Dantzig escribe el captulo II del citado libro de ttulo: "The programming of
interdependent activities: Mathematical Model" que indica que es una revisin de un artculo de 1949. En
ese captulo se distingue la palabra programming que hace referencia a la programacin y
Mathematical que hace referencia al modelo. Dantzig se concentra en los modelos donde las
relaciones son lineales pues tienen unas propiedades interesantes, entre otras que no hay ptimos
locales, y de repente en la pgina 30 los problemas de programacin con modelos lineales se convierten
en "problemas de programacin lineal. Aparentemente el nombre de programacin lineal fue sugerido
por Koopmans en 1948 en una reunin que tuvieron Koopmans y Dantzig en RAND Corporation. La nota
de entrada del captulo nos recuerda que est "republicando un trabajo de 1949". Porque ya en 1947
Dantzig haba diseado el algoritmo del Simplex, que es un procedimiento eficaz de resolucin del
problema de programacin lineal.
De hecho los modelos de programacin cuyas variables tenan relaciones lineales, tenan la
interesante propiedad de no tener ptimos locales por lo que la programacin lineal (PL) se convirti
pronto en un lugar comn de encuentro de modeladores y solucionadores.
Segn una historia paralela, el trmino programacin lineal habra surgido porque "programacin" era
a lo que se dedicaba el departamento en la USAF para el que trabajaba Dantzig. El propio Dantzig,
sugiere que inicialmente su mtodo se utiliz para calcular las dietas ptimas.
Y Kantorovich? En su autobiografa para el Premio Nobel, Kantorovich escribe:
"In 1939, the Leningrad University Press printed my booklet called The Mathematical Method of Production
Planning and Organization which was devoted to the formulation of the basic economic problems, their mathematical
form, a sketch of the solution method, and the first discussion of its economic sense. In essence, it contained the
main ideas of the theories and algorithms of linear programming. The work remained unknown for many years to
Western scholars. Later, Tjalling Koopmans, George Dantzing, et al, found these results and, moreover, in their own
way. But their contributions remained unknown to me until the middle of the 50s."

2.4.2

Una clasificacin de modelos de programacin matemtica

Una clasificacin de los modelos de programacin matemtica podra tener en cuenta las siguientes
caractersticas:
- Estructura, objetivos y restricciones (lineales o no-lineales)
- Caractersticas de las Variables (Reales, Discretas -Enteras-, Binarias)
- Certidumbre de los Parmetros (Ciertos e Inciertos)
- Nmero de Objetivos (Ninguno, Uno o ms de Uno)
- Nmero de Restricciones (Ninguna, Ms de Cero)
El objeto de esta descripcin no es establecer una perfecta clasificacin de todos los modelos de
programacin matemtica. Se pretende nicamente fijar un marco que sirva de referencia en el contexto
de este libro.

Pgina 30 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

2.4.2.1

Programacin lineal

Entre los tipos de modelos de uso ms generalizado en programacin matemtica se encuentra la


denominada programacin lineal. sta, en su forma ms bsica, consiste en un conjunto de variables
reales, que mediante combinacin lineal de parmetros ciertos, permite establecer un objetivo y
restricciones lineales.
Los fundamentos matemticos de los modelos lineales se encuentran en la teora de las
desigualdades lineales desarrollada en el siglo XIX como se puede leer en (Poler 2001). Aunque se
encuentran precedentes en distintos campos (teora de juegos, definicin de dietas, problemas de
transporte...), la formulacin y resolucin general de los problemas de programacin lineal fue realizada
en el proyecto SCOOP, lanzado en 1947 por el ejrcito del aire de los Estados Unidos de Norteamrica,
dando lugar al algoritmo denominado Simplex expuesto inicialmente por Dantzig en 1947. En menos de
10 aos la programacin lineal experiment un fuerte desarrollo con trabajos que abordaron, entre otros
temas, la degeneracin, la dualidad y las formas compactas.
Actualmente es posible encontrar en el mercado aplicaciones comerciales para la resolucin eficiente
de problemas de programacin lineal (Gurobi Optimizer 2, IBM ILOG CPLEX Optimizer 3, FICO
XPRESS Optimization Suite 4, LINDO 5, WinQSB,...). Tambin es posible utilizar aplicaciones gratuitas
como Gusek (((PONErLES LINKS))) o LPsolve. Quiz se puede destacar como avance significativo el
desarrollo de paquetes que facilitan la introduccin del modelo, y la integracin de ste con los Sistemas
de Informacin de la empresa, as como el desarrollo de aplicaciones en la nube.

http://www.gurobi.com/

http://www-01.ibm.com/software/integration/optimization/cplex-optimizer/

http://www.fico.com/en/Products/DMTools/Pages/FICO-Xpress-Optimization-Suite.aspx

http://www.lindo.com/

Pgina 31 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

Los tiempos necesarios para resolver los problemas de gran tamao han decrecido de un modo
exponencial. Por una doble razn, por un lado el crecimiento de la velocidad de los ordenadores y por
otro la mejora en las tcnicas matemticas utilizadas.
La mayor parte de estos paquetes utilizan (o han utilizado) el denominado mtodo Simplex. Dicho
mtodo, aunque computacionalmente ineficiente, tiene la ventaja docente de ser metdico y que permite
explicar, mediante el propio mtodo, algunos conceptos como los precios sombra o los costes
reducidos.
Hasta finales de la dcada de los 80 del siglo XX no surgen como alternativa vlida los denominados
mtodos del punto interior. El menor coste computacional de este tipo de algoritmos hace que su
implantacin en los paquetes comerciales sea creciente.
Por ltimo parece necesario destacar que aunque para el observador no experimentado la exigencia
de linealidad puede parecer excesivamente restrictiva, la realidad es que un gran nmero de problemas
reales puedan ser modelados con esa consideracin (Williams, 1999). La ventaja de los programacin
lineal frente a la programacin no-lineal es que para esta no se conocen modelos generales de
resolucin eficientes. Curiosamente el trabajo que se desarrolla en resolucin de programacin no-lineal
est colaborando en mejorar la eficiencia de la programacin lineal.
2.4.2.2

Programacin lineal entera

Si a alguna de las variables de un problema lineal se le impone la condicin de integridad el problema


pasa a ser de programacin lineal entera mixta (PLEM). Si todas son variables enteras, el problema
Pgina 32 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

pasa a ser de programacin lineal entera. La condicin de integridad puede venir impuesta, entre otros
motivos, por el imposible fraccionamiento de determinados recursos. Uno de los procedimientos ms
efectivos para la resolucin de este tipo de problemas se fundamenta en el concepto de ramificacin y
cota. Desgraciadamente aunque la lgica de este procedimiento es eficaz, conduciendo necesariamente
al ptimo, el coste computacional en algunos problemas es, an hoy en da, excesivo. Otro
procedimiento para la resolucin de estos problemas se basa en los mtodos de planos cortantes.
Aunque este mtodo levant grandes expectativas, no han fructificado de modo eficiente por ahora.
Una variante especial de los problemas de programacin lineal entera lo constituyen aquellos donde
algunas variables son bivalentes. El uso de este tipo de variables tiene su origen en la representacin de
aquellas decisiones que slo admiten dos valores, pero tambin aquellos problemas que exigen
restricciones de tipo lgico. La pretensin de resolver estos problemas de modo eficiente ha dado lugar
a mtodos como el de enumeracin implcita o tcnicas ms generales de enumeracin como las
descritas en (Kauffmann y Henry-Labordere, 1976).
Hay que destacar la existencia de algunos tipos especiales de problemas con variables bivalentes,
que se abordan mediante mtodos especficos de resolucin, ptimos en algunos casos y ms eficientes
por haber sido desarrollados ex profeso. Algunos de estos problemas son los de cubrimiento,
asignacin, particin, mochila y rutas (Williams, 1999).
2.4.2.3

Programacin estocstica

Si a los problemas de programacin matemtica (en general) se les incorpora la incertidumbre en los
parmetros, esta incertidumbre se puede abordar mediante la denominada programacin estocstica.
Una variante de la misma especialmente interesante es la programacin lineal estocstica, que puede
ser resuelta de modo ptimo, aunque con un coste computacional elevado.
Uno de los mecanismos para abordar la incertidumbre en los datos es el uso de los denominados
escenarios. Estos constituyen un posible conjunto de valores para los parmetros. Cada uno de estos
escenarios pueden tener una probabilidad asociada aunque no necesariamente (Dembo, 1991).
Existen diferentes modos de formular mediante un problema de programacin lineal un Problema
Estocstico aunque bsicamente consiste en obtener una decisin para el instante actual teniendo en
cuenta los escenarios futuros. De este modo la decisin a tomar no ser ptima, en general, para
ninguno de los escenarios aunque s para el conjunto de ellos. Este modo de plantear y resolver el
problema tiene un elevado coste computacional pero se puede abordado mediante descomposiciones y
computacin en paralelo con ndice de paralelizacin elevado.
Otro modo de abordar la estocasticidad en los parmetros es obtener el ptimo para cada escenario
y comparar el valor que esta decisin tendra para el resto de escenarios, eligiendo como decisin
definitiva la ms buena, o la menos mala o cualquier otro mecanismo que se considere oportuno.

Pgina 33 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

2.4.2.4

Programacin no-lineal

Si a los modelos de programacin lineal se les elimina el requerimiento de que la funcin objetivo o
las restricciones sean lineales, se obtienen modelos de programacin no-lineal. La eliminacin del
requerimiento de linealidad se suele fundamentar en la estructura no-lineal del objeto, o parte de l, a
modelar. En realidad debiera ser planteado al revs, la realidad es generalmente no-lineal y al linealizar
estamos constriendo el modelo.
Sin embargo muchas de las circunstancias aparentemente no-lineales pueden ser linealizadas sin
prdida de su significado. El motivo de la aparente obsesin por la linealidad se basa,
fundamentalmente, en la falta de eficacia en la obtencin de ptimos mediante el uso de los
procedimientos actualmente existentes para la resolucin de problemas no-lineales en general.
De hecho la no-linealidad impide garantizar siempre la deteccin de un ptimo an tras haberlo
encontrado. El teorema de optimalidad de Karush Kuhn y Tucker 6 (ms conocidas por condiciones KKT)
que establecen las condiciones necesarias de optimalidad en problemas no-lineales. Es de destacar que
dichas condiciones no son suficientes sino necesarias.
Una variante de la programacin no-lineal la constituyen aquellos problemas sin restricciones, para
los que el clculo del ptimo tiene su origen en el desarrollo del clculo matemtico del siglo XVIII.
En general se puede admitir que la resolucin de grandes problemas de optimizacin en
programacin no-lineal an hoy no es eficiente. Sin embargo el esfuerzo realizado no es infructuoso. Por
poner un ejemplo algunos de los algoritmos que actualmente permiten que la programacin lineal sea
hoy en da tan rpida en su resolucin fueron desarrollados para buscar soluciones en entornos nolineales. Posteriormente se han revelado eficientes en los problemas de programacin lineal.
2.4.3

Los componentes de un modelo de programacin matemtica

Los modelos matemticos tienen dos componentes bsicos:

Datos: Valores conocidos y constantes.

Variables: Valores que se calculan.

Mediante la combinacin lineal de los mismos se generan:

Funcin Objetivo que debe minimizarse o maximizarse.

Restricciones que establecen lmites al espacio de soluciones.

Para los que tenemos una cierta edad, las condiciones son de Kuhn y Tucker. Kuhn y Tucker

pretendan extender las bondades de la programacin lineal a principios de los 50. Y publicaron sus
condiciones con su nombre. Segn el propio Kuhn explica, cuando las probaron no saban que Karush
las haba desarrollado como tesina fin de master en 1939 pero que nunca las haba publicado, y que se
dieron cuenta de ello 25 aos despus.

Pgina 34 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

Tanto la funcin objetivo como las restricciones se expresan matemticamente mediante el uso de
variables o incgnitas. Se pretende definir unos valores a dichas variables de tal modo que se obtiene la
mejor valoracin de la funcin objetivo mientras se cumplen todas las restricciones.
En su formulacin bsica los modelos matemticos tienen una funcin objetivo y una o ms
restricciones. Sin embargo existen excepciones como:

2.4.3.1

Mltiples objetivos

Objetivos no existentes

No existencia de restricciones

Mltiples objetivos

Un modelo de programacin matemtica exige una nica funcin objetivo que tiene que ser
maximizada o minimizada. Esto sin embargo no implica que no se puedan abordar los problemas con
mltiples funciones objetivo. De hecho, como se ha comentado, existen diferentes mtodos de
modelado y posterior resolucin que se pueden aplicar en estos tipos de problemas.
Numerosos autores relacionan la programacin multiobjetivo con la teora de la decisin que se
aborda ms adelante.
2.4.3.2

Objetivos no existentes

En ocasiones al plantear el problema es difcil establecer un objetivo para el problema, ms all de


encontrar una solucin que satisfaga las restricciones. En ese caso es conveniente fijar un objetivo
sencillo ligado a una nica variable. Aunque la experiencia muestra una y otra vez, que una vez se
obtiene una solucin factible el usuario acaba encontrando un modo de distinguir una solucin de otra
peor.
2.4.3.3

Optimizacin sin restricciones

Los problemas de optimizacin sin restricciones pretenden minimizar (o maximizar) una funcin real
f(x) donde x es un vector de n variables reales. Es decir se buscan un x* tal que f(x*) f(x) para todos los
x cercanos a x*.
En el caso de un problema de optimizacin global, el valor de x* buscado es el que minimiza f para
todo el espacio xRn.

2.5

La

construccin

de

un

modelo

de

programacin

matemticaEquation Section (Next)


Construir un modelo de programacin matemtica es un proceso largo, que se realiza paso a paso.
No existe una metodologa que permita construir a la primera el modelo que corresponda idneamente
al problema que se intenta resolver. Sin embargo, todos los modeladores expertos asumen que el
proceso de construccin de un modelo de PM es un camino de continuas idas y vueltas. Lo normal y

Pgina 35 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

corriente es que una vez terminada una fase haya que volver a una etapa anterior y de este modo volver
a comenzar.
A pesar de no existir una metodologa definida, se propone a continuacin la Ilustracin 2-1 para la
construccin de un modelo:

Ilustracin 2-1 Etapas para la construccin de un modelo de PM


A continuacin, se describe los diferentes pasos:

1)

(Re)Definir los conjuntos de datos, y por tanto de ndices

El conocimiento de los tipos de datos de los que se dispone permite establecer, conjuntos y con ellos
ndices. Muchos de los que se definen en esta fase no son estrictamente necesarios, y otros se
incorporarn en fases siguientes.

2) (Re)Definir los parmetros


Representar los conjuntos de datos mediante smbolos con subndices, permitir comenzar la
conceptualizacin del problema. Generalmente en esta fase aparecen nuevos ndices, o incluso se
establecen parmetros que luego se comprobar que son variables.

3) (Re)Definir el objetivo
Establecer la funcin objetivo en forma de lenguaje natural (Maximizar el beneficio esperado o
minimizar el ratio de aprovechamiento) permite empezar a definir variables que se pueden denominar de
control. No es importante en una primera fase establecer el objetivo de modo lineal, simplemente con

Pgina 36 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

representarlo ya es suficiente. Posteriormente al linealizarlo es posible que haya que incorporar nuevas
variables y parmetros al modelo.

4) (Re)Definir las variables de control


De la etapa anterior se han definido las variables que configurarn la funcin objetivo. Dichas
variables deben ser explcitamente representadas. En general, aunque algunos autores opinan lo
contrario, se puede decir que las variables en la funcin objetivo no son las decisiones que se toman,
sino los efectos de dichas decisiones, es por ello que se ha preferido denominarlas de control.

5) (Re)Definir las restricciones


El modo ms habitual de generar restricciones es expresarlas verbalmente y cuantificarlas
posteriormente. Lo habitual es que surjan nuevos datos, parmetros ndices y variables. En principio tras
fijar las restricciones evidentes se observar que las variables de decisin y las de control no estn
conectadas. Las conexiones darn lugar a nuevas restricciones.

6) (Re)Definir las variables de decisin


En general al plantear la funcin objetivo no se est plasmando las decisiones que en realidad se
quieren tomar. Dichas variables deben ser tambin reflejadas.

7) (Re)Validar el modelo completo


La validacin del modelo exige su formulacin y su resolucin. La importancia de esta etapa exige un
apartado entero (el siguiente). La validacin suele exigir recomenzar el proceso de validacin desde el
principio.
Por ltimo convendra recordar que el buen modelo, su resolucin y el anlisis de los resultados,
generalmente dar una mejor comprensin del problema, cerrando de este modo el crculo, pues
generalmente una mejor compresin del problema, ser de facto un nuevo problema.

2.6

Implementacin de un modelo de programacin matemtica (Validacin)


Equation Section (Next)

Un modelo matemtico sobre el papel es o debiera ser consistente. Ahora bien su introduccin en un
formato que permita resolverlo adecuadamente nos informar de nuevos errores que lleva.
Antes de prestar demasiada atencin a la solucin obtenida tras resolver un modelo que se haya
construido, se debe comprobar que se ha modelado lo que se pretenda. Asumiendo que no hay errores
de tipo sintctico (generalmente los paquetes informticos los detectan) existen tres salidas que en
general se recorrern sucesivamente:

que el modelo sea incompatible


que el modelo no est acotado
que el modelo sea resoluble

An llegado este punto caben dos situaciones:

que el modelo sea resoluble pero sus soluciones no sean coherentes con el problema
Pgina 37 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

que el modelo sea resoluble y sus soluciones sean coherentes

Si se alcanza este punto, el modelo est listo para ser utilizado.


2.6.1

Modelo de sintaxis errnea

El error ms tpico es que la funcin objetivo no sea una frmula sino un conjunto de frmulas. Una
manera de detectarlo es comprobar que ningn ndice en las variables de la funcin objetivo se queda
sin su sumatorio correspondiente.
Otro error tpico se da en las restricciones. Todos los ndices de todas las variables utilizadas deben
estar en la expresin de la restriccin. Ya sea en forma de sumatorios, ya sea en forma del rango en el
que aplica la restriccin (el para todo ).
Utilizar los paquetes de resolucin para detectar problemas es lo ms razonable en tiempo. En
general, los modelos se suelen escribir en un formato compacto como el lenguaje AMPL que se puede
apreciar en la Ilustracin 2-2.

Ilustracin 2-2 Modelo escrito en formato AMPL


A pesar de ser un lenguaje muy til por su flexibilidad y estructura, no es sencillo encontrar errores de
sintaxis en algunos casos. Un modo de encontrar los errores es pedirle al software que escriba el
modelo en formato .lp. 7 El modelo de la Ilustracin 2-2 convertido en el formato lp se presenta en la
Ilustracin 2-3.

Desde Gusek, en Tools, si se pulsa en Build Cplex Lp, se generar el modelo en formato .lp para

encontrar fcilmente errores de sintaxis.

Pgina 38 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

Ilustracin 2-3 Modelo escrito en formato .lp


De este modo es posible visualizar lo que se ha escrito en formato compacto. Y comprobar si se
parece a lo que se pretenda obtener.
2.6.2

Modelo incompatible

Un modelo no tiene solucin si existen restricciones contradictorias. Por ejemplo, las restricciones
(3.3.1)-(3.3.2) haran el modelo irresoluble:
x1 + x2 1

(3.3.1)

x1 + x2 2

(3.3.2)

En la prctica esta situacin no ser tan evidente. El programa intentar resolver hasta que detecte la
incompatibilidad. En algunos casos la indicar, aunque no es lo habitual.
En pocas ocasiones la incompatibilidad ser debida a que el problema real no tiene solucin, aunque
en la mayor parte de casos es debido a que se ha formulado mal el problema.
Un modo lgico de buscar las restricciones que generan la incompatibilidad es ir anulndolas
(anularlas aqu consiste en quitarlas del modelo para que no se tengan en cuenta o simplemente
ponerlas como comentario). Un procedimiento sencillo es convertir las restricciones en comentarios.
Se pueden ir anulando las restricciones hasta encontrar aquella (o aquellas) que al anularlas permiten
que la solucin exista. De este modo se sabr en que parte del modelo hay que concentrar el anlisis.
Hay que tener en cuenta que en general las restricciones son incompatibles a pares, por lo tanto no
necesariamente la restriccin anulada es la que est mal. Podra ser otra restriccin que use las mismas
Pgina 39 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

variables. En pocas ocasiones, las incompatibilidades se producen por triangulacin de restricciones


(aunque en pocas ocasiones, ocurre).
Otro mecanismo para encontrar las incompatibilidades es generar una solucin obvia (o real). Este
mecanismo consiste en asignar valores determinadas a las diferentes variables del modelo. Los valores
introducidas deberan ser aquellas que constituyen una solucin obvia al problema y que no tienen
porqu maximizar o minimizar la funcin objetivo.
Por ltimo un modo muy til de detectar incompatibilidades es forzar el modelo a considerar
restricciones de igualdad en vez de desigualdades. En este caso, el modelo debera soportarlo. Si no lo
hicieran las restricciones violadas sern las incompatibles.
2.6.3

Modelos no acotados

Se dice que un problema no est acotado si su funcin objetivo se optimiza cuando alguna variable
tiende a infinito. La solucin obtenida en este caso, si puede ayudar a reconocer el error de formulacin.
Mientras que en un modelo incompatible el problema es la existencia de demasiadas restricciones,
en un problema no acotado faltan restricciones. Generalmente restricciones fsicas obvias que han sido
olvidadas o relaciones entre variables no consideradas. El ejemplo ms tpico es minimizar costes de
inventarios en un problema de planificacin de produccin y olvidarse de imponer que la variable nivel
de inventario es una variable positiva. Otro ejemplo tpico es pretender maximizar los beneficios dnde
se ha olvidado considerar un lmite a las ventas de productos (que debieran ser iguales o inferiores a la
demanda).
El modo ms formal de encontrar los problemas de no acotacin es que utilizar la propiedad de que
el modelo dual es incompatible, aunque la inversa no es siempre cierta. Por eso muchas herramientas
resuelven inicialmente el dual para facilitar el proceso de depurado.
2.6.4

Modelo resoluble

Cuando un modelo no es incompatible y es acotado se conoce como un modelo resoluble.


El proceso de modelado no ha acabado en ese momento. Generalmente la solucin no corresponde
con la que debiera, y sin embargo es difcil detectar los errores en ese caso.
El primer paso es comprobar que la solucin es lgica. El sentido comn es el mejor aliado en este
caso.
Para comprobar que los resultados son lgicos existen mltiples maneras, y cada modelador tiene su
metodologa para el anlisis de los resultados. Una que da buenos resultados es modificar de manera
sistemtica los costes en la funcin objetivo (o las limitaciones en las restricciones) para comprobar que
se puede modificar la solucin modificando los coeficientes.
Hay que destacar el valor de la optimizacin en la validacin del modelo. Cuando se trata de
maximizar (o minimizar) alguna cantidad, alguna restriccin debe ser utilizada completamente. Es

Pgina 40 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

interesante, cuando se trata de un modelo nuevo, probar con diferentes objetivos, porque dan relevancia
a diferentes restricciones y, por tanto, se pueden ir comprobando todas.
Si el resultado es lgico deberamos compararlo con un resultado real, podra ser que el modelo
fuera demasiado restrictivo (aunque no llegue a ser incompatible) o demasiado laxo (aunque no llegue a
ser no acotado).
En muchos casos, este anlisis ya est conduciendo hacia un mejor entendimiento del problema, y
por tanto, el esfuerzo (aunque sin solucin) ya est siendo eficaz.
De la exposicin anterior se desprende de modo natural que el proceso modelado-validacin debe ir
repitindose hasta converger en un modelo que represente de modo suficientemente acertado la
realidad. Y este proceso es muy til para entender la propia realidad modelada.

2.7

Caractersticas

de

un

buen

modelo

de

programacin

matemticaEquation Section (Next)


Tres son los objetivos bsicos que se deben pretender al construir modelos de programacin
matemtica:

2.7.1

Que sea un modelo fcil de entender

Que sea un modelo cuyos errores sean fciles de detectar

Que sea un modelo de fcil resolucin

Facilidad para entender el modelo

A menudo es posible construir un modelo compacto y realista donde diferentes variables aparezcan
de modo implcito y no de modo explcito. Sin embargo construir este tipo de modelos conduce
habitualmente a soluciones difciles de evaluar y ms an de interpretar. Incluso, aunque los modelos
menos compactos requieren un tiempo ms largo de resolucin, este tiempo compensa el que
posteriormente habra que invertir en la interpretacin de la solucin.
Es til tambin utilizar acrnimos para designar las variables y las restricciones, de tal modo que los
resultados se puedan, posteriormente, interpretar ms fcilmente.
Existe tambin unas normas de estilo que, no siendo obligatorias permiten entender mejor el modelo,
si todo el mundo las utiliza igual. En general se admite que:

las letras minsculas comenzando por la g se suelen referir a ndices


las letras x,y,z,v son variables mientras que a,b,c,d,m,n,p,q suelen utilizarse como parmetros
las letras griegas ,,,,, suelen hacer referencia a variables binarias
Las letras maysculas para los datos (y conjuntos) y las letras en minscula para las variables
(aunque a veces, se hace al revs)

Pgina 41 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

Aunque no existe ninguna norma escrita, el uso de este estilo simplifica el trabajo que supone
entender un modelo.
En cualquier caso es imprescindible que no existan homnimos ni sinnimos, esto es, elementos con
el mismo nombre y significado distinto, o elementos con distinto nombre y el mismo significado. Y por
otra parte, es muy importante usar una escritura estructurada simple para facilitar el entendimiento del
modelo.
2.7.2

Facilidad para detectar errores en el modelo

Este objetivo est claramente unido al anterior. Los errores podran ser de dos tipos: de tecleo
(nmeros errneos o defectos ortogrficos) y de formulacin.
Para evitar los problemas de tecleo es til utilizar programas de generacin de matrices o lenguajes
de modelado. Muchos de estos programas tienen procedimientos que detectan errores adems de otras
funciones relacionadas.
2.7.3

Facilidad para encontrar la solucin

Los modelos de programacin lineal utilizan una gran cantidad de tiempo de computacin (y de
memora), y por tanto sera interesante construir modelos que sean resueltos de modo rpido. Este
objetivo se contrapone en la prctica al primero de los enunciados. En algunos casos es posible reducir
el tamao del modelo mediante procedimientos instalados en el propio editor de modelos. En otros es un
ejercicio que debe realizar el modelador.
A continuacin se presentan tres mtodos que permiten reducir el coste de computacin: Uso de
Cotas, Unidades de Medida apropiadas y uso de formulacin modal.
2.7.3.1

Uso de cotas

Es posible alcanzar reducciones sustanciales en el tiempo de computacin teniendo en cuenta las


cotas globales (Generalized Upper Bounds en ingls, GUB) citadas en el captulo siguiente.
Evidentemente esta reduccin ser efectiva dependiendo de si el paquete lleva o no incorporadas
rutinas que traten estas cotas.
2.7.3.2

Unidades de medida

Cuando se modela una situacin prctica es importante prestar atencin a las unidades en las cuales
se miden las cantidades. Si existe una gran disparidad en los coeficientes de un modelo de
programacin lineal se incrementa sustancialmente el tiempo de computacin.
Es decir, si las restricciones de capacidad se miden en toneladas, los beneficios no se deberan dar
en pesetas por kilo. Idealmente las unidades se deberan plantear de tal manera que los coeficientes no
nulos estn entre 0,1 y 10. Algunos paquetes comerciales tienen procedimientos para escalar
automticamente los coeficientes antes de resolver y despus desescalar tambin de modo
automtico.

Pgina 42 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

2.7.3.3

Formulacin modal

En problemas de programacin lineal grandes, se puede reducir sustancialmente el nmero de


variables utilizando la denominada formulacin modal. Si un conjunto de restricciones se ve afectada por
un reducido nmero de variables, se puede considerar como espacio de soluciones el espacio que
marcan estas variables y sus restricciones. Y, de este espacio, slo seran de inters algunos puntos
(los vrtices).

Pgina 43 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

MODELOS

DE

PROGRAMACIN

LINEALEQUATION CHAPTER (NEXT) SECTION 1


3.1

Introduccin

Con el trabajo de Dantzig (y previamente de Koopmans) citado anteriormente, los modelos de


programacin lineal devinieron en resolubles en un tiempo razonable. El desarrollo del mtodo Simplex
garantizaba encontrar el ptimo, y dado que se dispona de la herramienta para optimizar, se produjo
una natural tendencia a representar la realidad mediante relaciones lineales de los parmetros.
No hay que olvidar que difcilmente la realidad es lineal, pero tampoco hay que obviar que, si el
modelador realiza un buen trabajo, es una aproximacin suficiente para cualquier problema.
En este captulo se describir el concepto de programacin lineal, destacando su importancia y las
situaciones en las que se puede modelar linealmente. A continuacin se analizarn los principales
componentes de un modelo de programacin lineal: los parmetros, los objetivos y las restricciones.

3.2

Qu es la programacin lineal? Equation Section (Next)

Los modelos de programacin lineal exigen que tanto las expresiones de las restricciones como de
los objetivos se hagan de modo lineal. Esto quiere decir que no pueden aparecer expresiones del tipo

x1 x 2 , e x

x13. Para muchos problemas prcticos esta es una consideracin que impide el uso de la

programacin lineal (aunque existen modos de reconvertir modelos de programacin no-Lineal en


modelos de programacin lineal).
La principal razn por la que los modelos de programacin lineal son preferibles es porque son
mucho ms fciles de resolver. Los modelos de programacin lineal son ms fciles de resolver puesto
que en el espacio de soluciones factibles siempre ser posible encontrar una solucin en un vrtice,
reduciendo de este modo el espacio de posibles soluciones ptimas a un nmero finito de las mismas.
Desde luego en cada ocasin hay que comprobar que es posible resolver mediante programacin
lineal, es decir, comprobar que el modelo se ajusta suficientemente a la realidad.
La programacin lineal, pese a sus restricciones evidentes por las caractersticas de las variables y
las funciones, tiene una amplia variedad de aplicaciones. Algunos de los problemas clsicos de
programacin lineal son:

Mezcla (Blending en ingls). Este tipo de problemas considera las decisiones relativas a la
mejor generacin de uno o varios productos resultados de una mezcla. Quiz el problema
ms antiguo se refiere a la generacin de dietas, pero tambin en la industria de elaborados
alimenticios o en la industria petrolera tiene aplicaciones.

Pgina 44 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

Catlogo de Productos (Product Mix en ingls). En su versin ms bsica pretende


establecer la proporcin de productos a fabricar dados unos recursos limitados y unos
beneficios esperados.

Decisin de Inversiones (Investment model). Otro de los problemas clsicos consiste en


seleccionar la mejor cartera de inversiones minimizando riesgos o maximizando beneficios
dado un conjunto de limitaciones en los recursos.

Problema del Transporte (Transport Scheduling and Planning en ingls, TSP??). Consiste
en definir, en una red de suministro, los centros que deben producir, la cantidad a producir y
el destino de esta produccin, teniendo en cuenta costes de transporte y/o de
almacenamiento, adems de beneficios esperados y limitaciones en los recursos disponibles.

3.2.1

El problema bsico de minimizacin de costes

El problema bsico de programacin lineal consiste en minimizar una funcin objetivo lineal de
variables lineales continuas, sujetas a (s.a.) restricciones lineales. Se considera que una funcin es
lineal si es una combinacin lineal de las variables consideradas.
Una expresin estndar de un problema de programacin lineal es:

[ Minimize] Ci xi

(4.2.1)

Sujeto a :

i, j

xi B j

(4.2.2)

xi 0 i

(4.2.3)

La regin de factibilidad es un poliedro y al menos una solucin ptima es un vrtice del citado
poliedro.
3.2.2

El problema bsico de maximizacin de beneficios

Aunque la versin estndar del problema de programacin lineal es de minimizacin, los problemas
pueden ser tambin de maximizacin. Una expresin estndar de un problema maximizacin de
beneficios es:

[ Maximize] PVi xi

(4.2.4)

xi Di i

(4.2.5)

Sujeto a :

Pgina 45 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

i, j

xi B j

(4.2.6)

xi 0 i

(4.2.7)

Que las variables tengan un solo subndice es porque finalmente todo se puede reducir al uso de un
nico subndice, pero la mayor parte de los problemas utilizan variables con ms de un ndice.
3.2.3

Caso de aplicacin de un problema tpico de programacin lineal

3.2.3.1

Descripcin del caso

Una empresa fabrica nicamente dos productos: P y Q.


P se vende a 45 y Q a 50 . La demanda semanal de cada producto es de 200 unidades de P y
100 unidades de Q.
Los dos productos requieren de una misma pieza central, la materia prima de la cual vale 20 por
unidad. Para fabricar la pieza central hacen falta 15 minutos del recurso B y 5 minutos del recurso C.
Para fabricar el componente 1 del producto P hace falta materia prima por valor de 20/unidad, 15
minutos del recurso A y 10 minutos del recurso C. Al ensamblar la pieza central con el componente 1
utilizamos otro componente 3 que se compra al precio de 5/unidad, lo ensambla el recurso D en 15
minutos cada unidad.
El producto Q sigue un procedimiento similar. El componente 2 utiliza Materia Prima por valor de
20/unidad, pasa por el recurso A donde est 10 minutos y luego por el proceso B donde est 15
minutos. Finalmente es ensamblado por el recurso D en 5 minutos. El mes tiene 20 das de 8 horas. Los
gastos totales son 3600 /semana.
Plantee el modelo matemtico completo del problema incluyendo ndices parmetros y dems.
Plantee el tema del poliedro de factibilidad y el lugar del ptimo.
3.2.3.2

El modelo de programacin matemtica asociado

A continuacin, se presenta en la Tabla 3-1 los diferentes ndices y conjuntos de datos, en la Tabla
3-2 los diferentes parmetros utilizados y en la Tabla 3-3 las variables utilizadas.
Tabla 3-1 ndices y Conjuntos de datos
, = {, , 1, 2, 3, }
= {, , , }

ndices de productos
ndice de recurso

Tabla 3-2 Parmetros necesarios

Precio de venta de una unidad de producto i

Pgina 46 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

Coste de consumo de materia prima asociado al consumo de una unidad de producto j

Consumo de capacidad productiva asociado a producir una unidad de producto i en el recurso k

Capacidad productiva disponible del recurso k en minutos


,

Nmero de unidades de producto i necesario para producir una unidad de producto j

Tabla 3-3 Variables asociadas al modelo

Nmero de unidades de producto i vendido


Nmero de unidades de producto i consumido

La formulacin matemtica del problema es el siguiente:

[ Maximize] PVi xi CCi yi

(4.2.8)

Sujeto a :

R
iI

i ,k

xi KAPk

xi Di i
yj =

N
iI

i, j

xi

xi , yi 0 i

(4.2.9)

(4.2.10)

(4.2.11)

(4.2.12)

La funcin objetivo (4.2.8) maximiza los beneficios totales de la empresa. Los beneficios totales es la
suma de los beneficios asociados a la venta de todos los productos menos los costes asociados al
consumo de materia prima.
La restriccin (4.2.9) limita el consumo de capacidad productiva. La restriccin (4.2.10) limita la
produccin de productos. No se puede fabricar ms productos que su demanda asociada. En (4.2.11),
se determina la cantidad de productos consumidos por la generacin de productos. (4.2.12) define el
dominio de definicin de las variables.
3.2.3.3

Implantacin en Gusek del problema

A continuacin, en la Ilustracin 3-1 se presenta el cdigo en Gusek para resolver el problema


considerado en el punto anterior.

Pgina 47 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

Ilustracin 3-1 Cdigo AMPL para resolver el problema en Gusek

Al ejecutar el modelo, el solver encuentra un resultado que se propone en la ventana del programa a
la derecha. La Ilustracin 3-2 que se propone a continuacin es el resultado encontrado:

Pgina 48 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

Ilustracin 3-2 Resultados obtenidos en Gusek


Como se puede observar, la solucin ptima se ha alcanzado. Consiste en fabricar 506,67 unidades
de P y 400 de Q. El coste total de la solucin encontrada es de 4000 (sin considerar los gastos totales
por semana).

3.3

Los parmetrosEquation Section (Next)

Quiz uno de los aspectos ms curiosos para el modelador novel son los parmetros de los modelos.
No se sabe exactamente por qu pero se suele asumir que los parmetros del modelo existen, son
ciertos y son conocidos.
El modelador inexperto suele estar convencido de que los datos estn dados. El modelador quiere
creer que valores como el coste o la duracin de un cambio de partida, el ritmo de produccin o su coste
asociado, la capacidad de la mquina (medida en horas, en unidades?), el precio de los productos, o el
nivel de stock en un momento dado para un determinado producto, son conocidos.
Esto no es as en prcticamente ninguna empresa para casi ningn dato. Por ejemplo, la demanda
siempre es incierta por sus propias caractersticas. Lo mismo ocurre con los costes que dependen del
modo de clculo; suelen ser siempre de oportunidad y por tanto inaprensibles antes de tener la solucin
al problema. Tambin, algunos parmetros que podran ser aparentemente ms objetivos como los
niveles de stock o los ritmos de produccin, en general, ni estn ni se les espera en ningn sistema de
informacin que se precie.

Pgina 49 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

Pero adems, aunque el dato est en el sistema de informacin, una regla bsica es que un dato que
no se utilice para nada en la operativa diaria de la empresa ser errneo con casi toda seguridad. Y
aunque se utilice lo lgico es dudar de su calidad, pues es muy probable que el usuario del dato haya
aceptado el error y lo corrija mentalmente sin prcticamente ser consciente de ello.
Hara bien cualquier modelador en dudar, hasta el ltimo momento e incluso despus, de la calidad
de los datos de partida. Lo que no hara bien es en dudar de la bondad de estimarlos y trabajar como si
existieran. En algunos casos la mera existencia de un sistema que los utilice permitir reducir la
incertidumbre de los mismos. En otros casos el sistema es poco sensible al dato concreto, y un ajuste
(tuning) de la primera aproximacin permitir obtener resultados ms que suficientes.
Por ltimo, si sigue persistiendo la duda respecto a la validez de los datos es en ese momento
cuando el modelado matemtico ms sentido adquiere. Pues permite, mediante la resolucin iterativa de
problemas, hacer un anlisis de sensibilidad que mejore (y mejora) la percepcin que se tiene del
problema.
Pero tambin hay mtodos de considerar explcitamente la incertidumbre en los parmetros como la
programacin estocstica o el uso de programacin Fuzzy.

3.4

Los ObjetivosEquation Section (Next)

Dado un conjunto de restricciones, diferentes funciones objetivo conducirn a diferentes soluciones.


Si diferentes funciones objetivo dan lugar a la misma solucin es conveniente analizar la estructura del
modelo puesto que puede aportar un mejor entendimiento del problema.
Algunos de los objetivos que se pueden definir son:

Maximizar beneficio
Minimizar costes
Maximizar rentabilidad
Maximizar el nmero de empleados
Minimizar el nmero de empleados
Maximizar la satisfaccin del cliente
Maximizar la probabilidad de sobrevivir
Etc.

Podran definirse muchos otros objetivos. Pero tambin podra ocurrir que no se quisiera optimizar
nada o que se quieran optimizar diferentes objetivos de modo simultneo, teniendo estos objetivos
direcciones conflictivas. En cualquiera de estos casos la programacin matemtica es interesante y
debe ser utilizada.

Pgina 50 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

3.4.1

Problemas mono-objetivo

El caso de los objetivos simples es el caso ms sencillo, generalmente se pretenden maximizar


beneficios o minimizar costes. La principal ventaja de estos objetivos es que los diferentes factores se
ven reducidos a una unidad comn: la monetaria.
Si se pretende minimizar costes es importante fijar restricciones adecuadas, puesto que en ocasiones
minimizar costes supone no hacer nada. Tambin hay que distinguir de manera adecuada los costes
fijos y los costes variables.
Si se pretende maximizar beneficios hay que tener en cuenta que estos se pueden obtener a lo largo
del tiempo. Incorporar el concepto de tiempo en la evaluacin del beneficio se puede hacer de mltiples
maneras entre las que destaca el Valor Actual Neto (VAN).
3.4.2

Programacin multiobjetivo

La programacin multiobjetivo es programacin matemtica, puesto que conceptualmente pertenece


a ella con la caracterstica de la existencia de ms de un objetivo (lo que por otro lado es ms habitual
en la realidad que el caso de un solo objetivo).
La optimizacin multiobjetivo tiene sus races en los trabajos sobre economa de Edgeworth (1881) y
Pareto (1906) realizados a finales del siglo XIX y principios del siglo XX.
El concepto escalar de optimalidad no es aplicable en la programacin multiobjetivo, dando lugar al
concepto de solucin no dominada u ptimo de Pareto (recibe tambin otros nombres). Este concepto
permite la existencia de mltiples soluciones ptimas.
3.4.2.1

Frontera de Pareto

Es posible abordar el problema multiobjetivo encontrando las superficies que forman los puntos no
dominados, siendo el decisor el que selecciona su opcin. Una solucin no-dominada es aquella que al
compararse con cualquier otra solucin factible tiene al menos uno de los objetivos mejor.
Una primera aproximacin consistir en resolver el problema tantas veces como objetivos tenga el
resultado, utilizando en cada ocasin un objetivo distinto. La comparacin de los diferentes resultados
puede dar una idea de qu solucin es mejor. En este caso se puede utilizar la solucin para un objetivo
como la solucin inicial.
Existen algunos procedimientos eficaces como el simplex multiobjetivo, pero slo son tiles para
problemas de reducidas dimensiones. Pero en general se utilizan los mtodos siguientes.
3.4.2.2

Mtodo lexicogrfico

Un modo intuitivo de resolver el problema multiobjetivo, aplicable cuando se pueden ordenar los
objetivos por orden de importancia es el denominado mtodo lexicogrfico. Bsicamente consiste en
resolver el problema de optimizacin para cada uno de los objetivos ordenados de mayor a menor
importancia. Una vez se resuelve el problema para el primer objetivo, se incorpora en el conjunto de las

Pgina 51 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

restricciones una nueva restriccin que obliga a que la funcin que representa el primero de los objetivos
tenga un valor igual al ptimo calculado en la iteracin anterior. Este proceso se repite para cada uno de
los objetivos.
3.4.2.3

Mtodo de las ponderaciones

Sin embargo el modo ms habitual de abordar este tipo de problemas es optimizar la suma
ponderada de los valores de cada objetivo. Para algunos autores esto no es posible salvo que se
encuentre un factor comn como podra ser el coste monetario, aunque esto no es siempre posible. Los
pesos deben ser relativos (o valores monetarios o similares) y deben tener en cuenta el rango de accin
de cada variable.
Al sumar diferentes objetivos, aunque sean ponderados, se est introduciendo un cierto grado de
arbitrariedad por lo que ser necesario comprobar que el resultado se ajusta a nuestros requerimientos.
Uno de los pesos que se pueden utilizar inicialmente son los precios sombra 8 que en cada resolucin
dan las restricciones, para un modelo en que todos los objetivos menos uno se han convertido en
restricciones.
Para que la resolucin sea eficiente las ponderaciones deben ser todas positivas o todas negativas.
El modo de ajustar los pesos (parameter tuning) puede alcanzar niveles de sofisticacin muy elevados,
aunque tambin se pueden ajustar manualmente.
3.4.2.4

Mtodo de las restricciones (Constraint Programming)

Otro modo interesante de abordar estos problemas es el denominado mtodo de restricciones. En


ella los objetivos se ordenan por importancia y se van tratando de optimizar uno detrs de otro, fijando
en cada caso como restriccin que el valor de las funciones objetivos ms importantes ha de ser igual
al ptimo encontrado. Cohon (1978) demostr que si existe sin embargo que si existen ptimos
alternativos, este mtodo puede no ser eficiente.
3.4.2.5

Programacin por metas (Goal programming)

La programacin por metas fue inicialmente introducido por Charnes, Cooper y Ferguson (1955) en
los aos 50 aunque el nombre actual de programacin por metas apareci unos aos ms tarde en el
articulo (1957) Management models and industrial applications of linear programming.
En la resolucin de muchos problemas industriales, el modo ms habitual de abordar los problemas.
Esta tcnica es una variante relajada de la anterior donde para cada objetivo se establece un valor
suficiente (o valor meta), se fija tambin una penalizacin para el caso de que no se alcance dicho valor
meta, y cada uno de los objetivos pasa al conjunto de restricciones pasando a formar parte de las

El concepto de precio-sombra aparece al realizar la denominada interpretacin econmica de las soluciones y se presenta

ms adelante.

Pgina 52 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

restricciones. De este modo, al igual que en los casos anteriores el problema pasa a tener un solo
objetivo, que es minimizar las penalizaciones ligadas a no alcanzar las metas fijadas.
3.4.2.6

Programacin lineal fuzzy multiobjetivo

Existe otro modo de resolver el problema de programacin multiobjetivo por la va de reducirlo a un


problema mono objetivo apoyndose en la denominada lgica fuzzy.
Bsicamente se trata de fijar para cada objetivo el valor ptimo que se puede obtener y tambin un
valor por encima del cual (por debajo del cual) no se est dispuesto a aceptar que suba (que baje). Se
asume entonces que cada objetivo tiene una funcin de pertenencia triangular, a partir de las cuales se
intenta maximizar el mnimo nivel de aspiracin. Sea obj1, el objetivo presentado en (4.4.1) y obj2 el
segundo objetivo ilustrado en (4.4.2). La restriccin que se considera es (4.4.3).

obj=
1: [ Minimize ] z

[ Minimize] ci xi

(4.4.1)

[ Maximize] di xi

(4.4.2)

obj=
2 : [ Maximize ] w

Sujeto a :

xi bi

ij

(4.4.3)

Sea z0 el ptimo para la funcin obj1, y z1 un valor por encima del cual no sera aceptable la solucin.
Sea w0 el ptimo para la funcin obj2, y w1 un valor por debajo del cual no sera aceptable la
solucin.
EXPLICAR EL MODELO por DEBAJO

[ Maximize] L

(4.4.4)

Sujeto a :

c x z
i

(4.4.5)

z1 z0
w0 ci xi

(4.4.6)

w1 z0

ij

xi bi

(4.4.7)

En ocasiones no existe ningn objetivo real, lo nico que se pretende es encontrar una solucin
vlida. En otras ocasiones el objetivo a perseguir no es optimizable (por ejemplo el objetivo sobrevivir).

Pgina 53 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

El uso de los modelos matemticos nos puede permitir encontrar soluciones factibles (que cumplen las
restricciones si stas existen).
3.4.2.7

Metodos de Generacin o a posteriori

Los mtodso Se presenta por ltimo un mtodo (entre los diferentes que podran haberse incluido en
estos apuntes) que recoge dos mtodos complementarios. Por un lado AUGMECON generar un
conjunto de soluciones que constituyen una frontera de Pareto. A partir de este conjunto de soluciones
se debe elegir una solucin como la ideal, para ello se propone el uso de la tcnica TOPSIS.

El mtodo TOPSIS (Technique for Order of Preference to Ideal Solutions) es un mtodo de para la
toma de decisiones de multicriterio, originalmente desarrollado por Hwang and Yoon in 1981. Se basa

en el concepto de elegir la alternativa que tiene la distancia geomtrica ms corta hasta la solucin
positiva ideal y la distancia ms larga a la solucin negativa ideal. Es un mtodo de agregacin que
compara un conjunto de alternativas identificando pesos que normalizan para cada criterio. La
normalizacin es necesaria porque los criterios son generalmente de dimensiones diferentes.
Una hiptesis previa de TOPSIS es que los criterios deben ser incrementales (o decrementales)
montonas.
Sea A una matriz donde cada elemento a(i,j) contiene la valoracin para el criterio j-simo de la
alternativa i-sima.
Sea R una matriz donde cada elemento r(i,j) se calcula con la siguiente funcin , =

2
,

Como cada criterio debe tener un peso diferente se w(j) el peso de cada criterio en la valoracin de la
solucin. Se define v(i,j)=w(j)*r(i,j).
Buscar lo que pone en la wikipedia... porque all est bien definido

La nica posicin
Sacado de Mavrotas Generation (or a posteriori) methods in Multi-Objective Mathematical Programming
(MOMP) is the most computationally demanding category among the MOMP approaches. Due to the
dramatic increase in computational speed and the improvement of Mathematical Programming algorithms
the generation methods become all the more attractive among todays decision makers. In the current
paper we present the generation method AUGMECON2 which is an improvement of our development,
AUGMECON. Although AUGMECON2 is a general purpose method, we will demonstrate that
AUGMECON2 is especially suitable for Multi-Objective Integer Programming (MOIP) problems.
Specifically, AUGMECON2 is capable of producing the exact Pareto set in MOIP problems by
appropriately tuning its running parameters. In this context, we compare the previous and the new version
in a series of new and old benchmarks found in the literature. We also compare AUGMECON2s
Pgina 54 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

performance in the generation of the exact Pareto sets with established methods and algorithms based
on specific MOIP problems (knapsack, set packing) and on published results. Except from other
Mathematical Programming methods, AUGMECON2 is found to be competitive also with Multi-Objective
Meta-Heuristics (MOMH) in producing adequate approximations of the Pareto set in Multi-Objective
Combinatorial Optimization (MOCO) problems.

Pgina 55 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

Pgina 56 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

3.5
3.5.1

Las restriccionesEquation Section (Next)


Tipos bsicos de restricciones en direccin de operaciones

Las restricciones son expresiones de relaciones entre variables entre variables y parmetros.
Dichas relaciones se representan mediante restricciones en la programacin matemtica, y tienen la
formulacin de una combinacin lineal de variables limitada por un determinado valor.
Las restricciones se pueden clasificar en funcin de la realidad que pretenden representar, o en
funcin de su relacin con el resto del modelo matemtico.

Pgina 57 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

Segn su relacin con la realidad que pretenden representar se pueden encontrar las siguientes:

Restricciones de capacidad. Se limita el consumo de capacidad productiva de un conjunto


de recursos/productos/operaciones.

Disponibilidad de materia prima. Se limita el consumo de un determinado conjunto de


productos (y en consecuencia la produccin de un conjunto de productos) segn la
cantidad de materia prima disponible en cada momento.

Limitaciones en la demanda del mercado. Se limita la produccin de un producto en


funcin de la venta estimada de ste.

Restricciones de continuidad o Balance de materiales o energa. En programacin


multiperiodo, los productos que quedan al final de un periodo son las que hay al principio
del siguiente. Tambin si un producto se descompone en otras unidades la suma de las
cantidades descompuestas es igual a la cantidad original (o con un factor de rendimiento).
Son tambin restricciones de continuidad las que conectan los diferentes arcos que entran
o salen de un nodo (por ejemplo en problemas de distribucin de energa).

Estipulaciones de calidad. Al planificar la produccin de productos, se pueden establecer


restricciones en funcin de las caractersticas de calidad de la mezcla y de las materias
primas.

Relaciones de tipo lgico. En ocasiones las restricciones tienen forma de expresin lgica,
si consumes ms de 40kw, hay que activar un segundo generador.

3.5.2 La relacin de las restricciones con la realidad, con las otras restricciones y con el propio
modo de resolver
Las anteriores restricciones forman parte de las relaciones concretas entre las variables de los
problemas. Tambin se podran clasificar las restricciones en funcin de su comportamiento en el resto
del modelo.

3.5.2.1

Restricciones duras y restricciones blandas

Restricciones conflictivas

Restricciones redundantes

Cotas simples y cotas generalizadas

Restricciones de rango
Restricciones duras y restricciones blandas

Una restriccin del tipo (4.5.1) elimina cualquier solucin para la que la suma sobre j del producto entre
la variable y el parmetro exceda el valor de b.
Pgina 58 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

xj b

(4.5.1)

Esto puede ser considerado como poco realista en algunas ocasiones. Por ejemplo, si b representa
el nmero de horas disponibles quiz, si interesara, habra que contratar algunas horas extras. En este
caso la restriccin se denomina blanda. Son duras aquellas restricciones que no se pueden violar de
algn modo.
Un mecanismo para modelar las restricciones blandas podra ser (4.5.2) donde u es una variable
positiva que aparecera en la funcin objetivo con un coste Cu asociado a u.

xj u b

(4.5.2)

De este modo en caso de ser necesario la restriccin sera violada aunque penalizando la funcin
objetivo. A la variable u se le puede incorporar un lmite de tal manera que no exceda un cierto valor.
Si la restriccin blanda es una desigualdad del tipo mayor o igual como en (4.5.3), se puede aplicar
el mismo esquema:

xj b

(4.5.3)

Si la restriccin es una igualdad, la restriccin debe sustituirse por la restriccin (4.5.4).

xj + u v =
b

(4.5.4)

En (4.5.4), tanto u como v (variables positivas) se vern penalizados en la funcin objetivo y en la


solucin uno de los dos valores debe ser cero.
3.5.2.2

Restricciones conflictivas

En ocasiones ocurre que un problema incorpora un conjunto de restricciones que no siempre pueden
satisfacer al mximo cada una de las restricciones. En este caso los objetivos seran tambin
conflictivos.
El tipo de modelo a que da lugar esta situacin es de los que se llaman modelos de coordinacin de
objetivos. Cada restriccin es, en este caso un objetivo, que debe cumplirse tanto como sea posible.
Por ejemplo, si se pretendiera imponer el siguiente conjunto de restricciones:

x
a =
ij

bi

(4.5.5)

Y se deseara admitir que no todas se cumplen, se podra modelar del siguiente modo:

ij

x j + ui =
vi bi

(4.5.6)

Pgina 59 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

El objetivo sera asegurar que cada restriccin se cumple lo mximo posible. Este objetivo se puede
modelar, entre otros modos de estas dos maneras:

Minimizando la suma de todas las desviaciones como en (4.5.7)

[ Minimize] ( ui + vi )

(4.5.7)

Minimizando la mxima desviacin z como en la funcin objetivo (4.5.8) considerando las


restricciones (4.5.9) y (4.5.10)

[ Minimize]

(4.5.8)

z ui 0

(4.5.9)

z vi 0

(4.5.10)

Sujeto a :

Sea cual sea el mtodo elegido podra a su vez ser ponderado si alguna de las restricciones parece
ms importante.
3.5.2.3

Restricciones redundantes

En el caso en que se tenga una restriccin del tipo (4.5.11) y que y la evaluacin sea en

cualquier caso inferior a b, se puede decir que la restriccin es redundante, o que su precio sombra es
nulo. Esto significa que la restriccin no tiene influencia sobre la funcin objetivo.

xj b

(4.5.11)

Una restriccin redundante puede ser eliminada sin afectar al ptimo. Generalmente no es posible
eliminar las restricciones redundantes a priori. Adems, si el modelo se va a usar de modo continuado,
la restriccin no se puede eliminar por si nuevos valores de los coeficientes convierten a la restriccin en
relevante.
Hay que tener en cuenta que en la programacin entera la redundancia no es tan fcil de considerar
como en la programacin lineal, ms an en ocasiones las restricciones redundantes facilitan la
bsqueda del ptimo.
3.5.2.4

Cotas simples y cotas generalizadas

Las cotas simples se pueden manejar de manera mucho ms eficiente definindolas como tales. El
motivo, que ya se ha indicado anteriormente es la existencia de una versin revisada del Simplex que
maneja de manera especial estas cotas y reduciendo el tiempo total de computacin.
Las cotas simples tienen la formulacin (4.5.12) (4.5.13):
x U

Pgina 60 de 171

(4.5.12)

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

xL

(4.5.13)

Las otras cotas que algunos paquetes de resolucin consideran son las denominadas cotas
generalizadas (GUB):

(4.5.14)

3.5.2.5

Restricciones de rango

En ocasiones las restricciones pertenecen a un rango de valor (b1 y b2 siendo dos parmetros tal
2 1 ) adquieren el formato de las restricciones (4.5.15).

b2 ( a j x j ) b1

(4.5.15)

Estas restricciones (ya que en realidad son dos) pueden expresarse como tales, pero existe un modo
ms compacto y que est disponible en muchos paquetes comerciales. Consiste en definir nicamente
la restriccin:

x j b1

(4.5.16)

con un rango de (b1-b2)


Otro modo de expresarlas consiste en transformar las restricciones en otras como en (4.5.17)-(4.5.18)
siendo estas restricciones ms fciles de manejar por la mayor parte de paquetes y, por tanto, el tiempo
de computacin para obtener la solucin se ver reducido.

(a

xj ) + u =
b1

(4.5.17)

0 u b1 b2

(4.5.18)

Pgina 61 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

Pgina 62 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

4 MODELOS

DE

PROGRAMACIN

ENTERAEQUATION CHAPTER (NEXT) SECTION 1


4.1

Introduccin

Una de las limitaciones fundamentales de la Programacin Lineal es que no siempre las variables
son nmeros reales, sino que son nmeros enteros. Dicha integridad de las variables impedira
utilizarlas en un sistema denominado lineal. Para ello surge la denominada Programacin Lineal Entera
(PLE).
Mediante un sencillo procedimiento matemtico (sencillo aunque costoso computacionalmente) es
posible resolver los problemas de PLE garantizando su optimalidad. Es por ello que la Programacin
Lineal Entera es sin ms una rama de la Programacin Matemtica muy utilizada.
En algunos caso los valores que pueden adoptar las variables enteras son 0-1. Tales valores se
utilizan para modelar decisiones si o no. Como se ver en los siguientes apartados, es posible
establecer relaciones lgicas entre restricciones, usando este tipo de variables y manteniendo la
linealidad.
Antes de abordar la linealizacin mediante programacin entera, hay que destacar la problemtica de
la resolucin de estos modelos. Los tiempos de computacin para resolver un problema de
programacin entera son mucho ms largos que para un problema de programacin lineal de similares
caractersticas.
Existe un peligro evidente de invertir gran cantidad de recursos en modelar, slo para descubrir al
final que el problema no era resoluble en un tiempo razonable, por ello en los ltimos apartados del
presente captulo se abordar el problema de reducir el tamao de los modelos.

4.2

Diferentes

reas

de

aplicacin

de

la

programacin

enteraEquation Section (Next)


En el presente apartado se tratan diferentes reas donde la programacin entera resulta de inters.
4.2.1

Problemas con entradas (inputs) o salidas (outputs) discretas

Este es el caso ms obvio: si fabricamos aviones o coches no es posible fabricar 2,33 unidades. Por
tanto la solucin debe ser entera. En realidad en estos casos es especialmente relevante la PE slo si
los valores resultado son de un dgito. En otros casos basta resolver como si fuera programacin lineal y
posteriormente redondear.
4.2.2

Problemas con condiciones lgicas

Suele ocurrir que en algunas de las restricciones que se deseen imponer son de tipo lgico.

Pgina 63 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

si se abre fbrica en Valencia, no se debe abrir en Madrid


Este tipo de condiciones lgicas pueden ser modeladas mediante programacin entera, simplemente
introduciendo nuevas variables como se ver en un apartado posterior.
4.2.3

Problemas de combinatoria

Muchos de los problemas prcticos de Investigacin Operativa tienen como caracterstica bsica la
existencia de un extremadamente largo nmero de soluciones posibles. Dichas soluciones aparecen a
partir de diferentes mtodos de ordenar actividades y/o asignar recursos.
Estos tipos de problemas se denominan Combinatorios. Los problemas de tipo combinatorio se
pueden clasificar a su vez en problemas de Secuencia o de Reparto. Estos ltimos se clasifican a su
vez en problemas de asignacin, donde existen tantos trabajos como recursos, y cada trabajo exige slo
un recurso, y los problemas de transporte donde cada trabajo requiere varios recursos. Algunos
problemas de Reparto no requieren PE, aunque la mayora s.
4.2.4

Problemas no-lineales

Como ya se ha comentado en el captulo anterior los problemas no-lineales se pueden atacar


mediante modelos de PE. Para ello se han mostrado diferentes tcnicas en el captulo anterior.

4.3

Otras

condiciones

aplicadas

modelos

de

programacin

linealEquation Section (Next)


La mayor parte de los modelos de programacin entera mixta (PEM) aparecen desde
programacin lineal en la que hay que aplicar unas restricciones extraordinarias. En este apartado se
observan las ms comunes de estas restricciones.
4.3.1

Restricciones disyuntivas
En ciertos problemas de secuenciacin de operaciones, los modelos de programacin matemtica

necesitan formular restricciones que no se satisfacen simultneamente. En otras palabras, existen


problemas en los cuales no todas las restricciones se pueden considerar a la vez pero que la inclusin
de todas es imprescindible ya que es imposible conocer a priori cual de ellas ser satisfecha. En
dichos casos, se necesita usar las denominadas restricciones disyuntivas.
Un conjunto de restricciones disyuntivas es aquel conjunto de restricciones en un problema de
programacin lineal dnde no todas las restricciones acten simultneamente sino una de ellas. Por

ejemplo, si en un problema puede estar sujeto a N restricciones que no tienen que actuar todas
simultneamente
donde

R1 R2 R3 ... R N

. Si se introduce un conjunto de variables = 1

i = 1 si se ha de cumplir .Esta relacin lgica se puede representar como en (5.3.1). Para que

la condicin sobre las restricciones, se usa entonces la desigualdad (5.3.2).

Pgina 64 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

1 Ri
i =

1...N
i=

i =1

=1

(5.3.1)

(5.3.2)

Ejemplo 1
Sea un conjunto de restricciones disyuntivas que sigue la condicin 1 2 3 . Si cada es

de tipo , entonces el problema consiste en las restricciones (5.3.3) a (5.3.7) .

x j + M 1 1 M 1 + b1

(5.3.3)

x j + M 2 2 M 2 + b2

(5.3.4)

x j + M 3 3 M 3 + b3

(5.3.5)

1j

2j

3j

i =1

=1

1, 2,3
i {0,1} i =
4.3.2

(5.3.6)

(5.3.7)

Regiones no-convexas

En algunos problemas, el valor de las variables de decisin se puede obtener de regiones de


admisibilidad diferentes. En dichos casos, es necesario incluir variables binarias auxiliares para
considerar conjuntos de diferentes restricciones que no se pueden satisfacer de forma conjunto. Este
problema debe usar una formulacin similar a la formulacin de las restricciones disyuntivas pero no se
abordar dentro de este libro.
4.3.3

Limitar el nmero de variables en una solucin


Limitar el nmero de variables es otra aplicacin de restricciones disyuntivas. Como ya se ha

comentado en cualquier problema de programacin lineal, no habr ms variables no-nulas que


restricciones. Sin embargo es posible que nos interese reducir este nmero de variables no-nulas. Para
hacer esto se necesita la programacin entera. Para ello se incorporan nuevas variables

en la

relacin lgica (5.3.8). Esta ltima relacin es equivalente a la restriccin (5.3.9) con la condicin
(5.3.10).
xi 0 i =
1

(5.3.8)

xi M i 0

(5.3.9)

Pgina 65 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

(5.3.10)

En este caso, se reducir a k el nmero de variables no-nulas.


4.3.4

Decisiones secuencialmente dependientes


A menudo ocurre que se pretende que una decisin se prolongue en el tiempo. Por ejemplo si

representa si una instalacin est abierta o cerrada, y se pretende que una vez cerrada ya no se vuelva
a abrir, la relacin lgica que representa esta caso es (5.3.11).

i = 0 ( i +1 = 0) ( i + 2 = 0) ... ( n = 0)

(5.3.11)

Esta relacin lgica se puede representar como el conjunto de restricciones (5.3.12).


2 1 + 2

2 2 + 3

4.3.5

0
0

(5.3.12)

....
-2 n 1 + n 0

Extensiones discretas de capacidad


A menudo no es realista suponer que determinadas restricciones no pueden ser violadas. As por

ejemplo una mquina podra aumentar su nmero de horas disponibles sin ms que duplicar (o triplicar)
el nmero de turnos que trabaja (A este aumento de capacidad productiva, se le asociar evidentemente
un coste en la funcin objetivo). Suponga que la restriccin se puede expresar como (5.3.13) donde bj es
variable y tiene un coste asociado de cj (independiente para cada bj) con

a x
i

0 < co < c1 < ... < c n .

bj

(5.3.13)

Esta situacin se puede modelar considerando la restriccin (5.3.14) y sumando en la funcin


objetivo (0 0 ). Tambin, habra que declarar que el conjunto de variables ( 0 , 1 ,..., n ) sea de tipo
SOS1 y fijndole una cota de 1 no es siquiera necesario establecer condiciones de integralidad.
n

ai xi b j j 0
4.4

Tipos

especiales

(5.3.14)

j =1

de

modelos

de

programacin

enteraEquation Section (Next)


En estos subapartados a continuacin se presentan algunos problemas clsicos de programacin
entera. La importancia de estos problemas radica en el hecho de que los problemas complejos se
suelen poder reducir a combinaciones de stos.

Pgina 66 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

4.4.1

El problema de la mochila (Knapsack problem)


Un problema de programacin entera con una nica restriccin se denomina Problema de

Mochila. Sea tipos de productos, sea el valor de cada producto y su peso y el peso mximo

soportado por la mochila. Su forma ms genrica consiste en una funcin objetivo de tipo (5.4.1) y una
restriccin (5.4.2) dnde vale 1 si el producto de tipo entra en la mochila (0 en caso contrario).

[ Maximize] ci i

(5.4.1)

Sujeto a :

i b

(5.4.2)

i {0,1} i

(5.4.3)

El problema de la mochila se da pocas veces de modo independiente (seleccin de proyectos o


decisin de inversin). El problema de la mochila es, comparativamente, fcil de resolver. El mejor modo
de resolverlo es mediante programacin dinmica, y no mediante ramificacin y corte que explora de
manera demasiado amplia.
4.4.2

Problemas de cubrimiento
Estos problemas derivan de un tipo de problema abstracto que puede ser enunciado del siguiente

modo:
Ejemplo 2
Dado un conjunto de objetos que podemos numerar = (1,2, , ) y dada una clase de

subconjuntos de , teniendo cada clase un coste el problema es cubrir todos los miembros de
utilizando miembros de .

Sea = (1,2, ,6), sea = (1,2), (1,3,4), (5,6), (4,6), (3,4,5). Se producira cubrimiento con

(1,2), (1,3,4), (5,6) o con (1,2), (5,6), (3,4,5).

Para modelarlo, se debe considerar el coste de usar el i-simo elemento de y una variable

binaria que vale 1 si el i-simo elemento de es seleccionado (0 en caso contrario). El modelo de


programacin consiste en la funcin objetivo (5.4.4) sujeto al conjunto de restricciones (5.4.5).

[ Minimize]

c
i

(5.4.4)

Sujeto a :

Pgina 67 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

1 + 2 1
1
1
2 + 5 1

2 + 4 + 5 1
3 + 5 1

3 + 4 1

(5.4.5)

Este problema de cubrimiento tiene 3 propiedades bsicas:


1. El problema es de minimizacin y las restricciones son 1
2. Todos los coeficientes del lado derecho llamado RHS (Right Hand Side) son 1
3. Todos los dems coeficientes de la matriz son 0 o 1
Si se relaja la propiedad 2 (se obliga a que algunos elementos de sean cubiertos en un mayor

nmero de ocasiones) se tiene un tipo de problema de cubrimiento ponderado. Y si adems se permite


que los dems coeficientes de la matriz puedan valer 0 y 1 (propiedad 3) tenemos lo que se denomina
un problema de cubrimiento generalizado.
4.4.3

Problemas de empaquetado
Otro tipo clsico de problemas son los de empaquetado, que se pueden enunciar como en el

ejemplo que viene a continuacin.


Ejemplo 3
Dado un conjunto de objetos que podemos enumerar = (1,2, , ) y dada una clase de

subconjuntos de , teniendo cada subconjunto un valor asociado, se trata de relacionar miembros de


que maximicen el valor pero que no se superpongan.

Con el conjunto y la clase del ejemplo anterior el problema queda (incorporando un valor a

cada miembro de ) en la funcin objetivo (5.4.6) sujeto a las restricciones (5.4.7).

[ Maximize]

v
i

(5.4.6)

Sujeto a :
1 + 2 1
1
1
2 + 5 1

2 + 4 + 5 1
3 + 5 1

3 + 4 1

Pgina 68 de 171

(5.4.7)

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

Las mismas generalizaciones de los problemas de cubrimiento se pueden aplicar en los


problemas de empaquetado dando lugar al problema de empaquetado ponderado y al problema de
empaquetado generalizado.
4.4.4

El problema del viajante de comercio (Travelling Salesman Problem)

El problema del viajante de comercio (o problema TSP por Travelling Salesman Problem en ingls) es
un problema muy habitual y de simple formulacin aunque de resolucin muy complicada en
circunstancias reales.
El problema consiste en establecer un circuito que recorra todos los destinos pasando una solo vez
por cada uno de ellos. Existen muchas situaciones reales asociadas a este problema de rutas, con
diferentes variantes, e incluso se da en otras situaciones como por ejemplo en la reduccin de costes de
cambio de partida.
Su formulacin evidente consiste en la minimizacin de la funcin objetivo (5.4.8) que consiste en los
costes de juntar nodos. En aquel caso, es el coste de juntar dos nodos y consecutivos y es
una variable binaria que vale 1 si se visita el nodo de destino viniendo del nodo origen . Las
restricciones (5.4.9) y (5.4.10) aseguran que cada nodo es origen y destino una vez.

[ Minimize]

c
i

ij

ij

(5.4.8)

Sujeto a :

1 j

(5.4.9)

1 i

(5.4.10)

ij

ij

En una situacin cualquiera (con 6 ciudades) la solucin ptima podra ser la Ilustracin 4-1.

4
6

1
3

Ilustracin 4-1 Solucin optima de un problema TSP sin limitaciones de viajantes


Evidentemente, esta solucin no es satisfactoria si nicamente hay un viajante. Para eliminar esta
circunstancia se puede aadir el conjunto de restricciones (5.4.11) donde la variable representa el
orden en el que el punto ser visitado, siendo 1 = 1. En este caso, se incorpora ( 1) restricciones
al problema.

Pgina 69 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

ui u j + n ij n 1 i, j

(5.4.11)

Si el nmero de restricciones incorporado es excesivo (lo que puede ocurrir) existe un


procedimiento alternativo para resolver el problema de las subciclos. Consistira en incorporar la
restriccin (5.4.12) en el programa para eliminar la solucin planteada anteriormente de entre las
posibles. En definitiva ste es un modo de buscar el ptimo mediante el sucesivo refinamiento del
modelo.

12 + 23 + 31 2

(5.4.12)

En cualquier caso hay que destacar el elevadsimo coste computacional de la resolucin de este
problema mediante programacin entera mixta. Cuando las dimensiones no son pequeas, por ello, lo
habitual es plantear mecanismos de resolucin especiales.
4.4.5

El problema de asignacin cuadrtica


Esta es una generalizacin del problema de asignacin descrita en un captulo anterior. Aunque el

problema de asignacin es un problema de programacin lineal fcil de resolver, el problema de


asignacin cuadrtica es un problema de programacin entera y generalmente muy difcil de resolver.
El problema consiste en:
Dado un conjunto con elementos y un conjunto con el mismo nmero de elementos, el

problema consiste en asignar exactamente un elemento de a y viceversa.

Para ello se define la variable binaria que vale 1 si se asigna a (0 en caso contrario).

La restriccin que se debe considerar es que cada elemento debe tener un nico origen y un nico
destino. Esta restriccin se representa mediante (5.4.13) y (5.4.14) .
n

ij 1=i 1,2,...,n
=

(5.4.13)

j =1

=
ij 1=j 1,2,...,n

(5.4.14)

i =1

La diferencia con el problema de asignacin normal radica en la funcin objetivo. En ella (5.4.15),
las variables se multiplican, para valorar la asignacin combinada. Es decir, se asigna un coste si al
mismo tiempo que se asigna a , se asigna a .
n

c
i

k >i

ijkl

ij kl

(5.4.15)

Este problema se puede abordar como un problema de programacin entera clsico con 4

variables binarias. Tambin existen procedimientos especficos de resolucin.

Pgina 70 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

4.5

Buenas

malas

formulaciones

de

un

modelo

de

programacin

enteraEquation Section (Next)


La mayor parte de las consideraciones realizadas en apartados anteriores para la programacin
lineal sirven para la programacin entera. Adems nuevas consideraciones se convierten en importantes
en el momento que el problema tiene variables enteras.
La primera y ms importante de las razones es que la resolucin de un modelo de programacin
entera es mucho ms complicada que uno de programacin lineal de parecidas dimensiones.
El nmero de variables no es un buen indicador para saber si un modelo est bien o mal
construido. De hecho en ocasiones es interesante introducir nuevas variables siempre que faciliten el
proceso de resolucin.
El nmero de restricciones afecta, generalmente, en un sentido contrario que a los modelos de
programacin lineal, es decir, un mayor nmero de restricciones facilita el proceso de resolucin. El
motivo es que aumenta la posibilidad de que el ptimo del modelo de programacin lineal asociado sea
a su vez entero.
El uso de los conjuntos ordenados de variables, si el paquete puede trabajar con ellos, facilita la
resolucin.
PONER AQU LOS PECADOS CAPITALES DE LA PROGRAMACIN LINEAL ENTERA MIXTA

1.No poner variables en la funcin objetivo


2.No definir variables
3.Poner expresiones no lineales en la funcin objetivo: la funcin mximo no es
lineal, la funcin absoluto no es lineal, multiplicar dos variables entre s no es
lineal.
4.Confundir el concepto coste variable con el concepto variable.
5.Que el objetivo sea un vector. Que alguno de los ndices se quede volando
6.Que en las restricciones las dos partes no sean coherentes entre s y con el (para
todo) que define el domino.
7.Que el objetivo contenga variables que no estn en las restricciones.
8.Que en una restriccin no haya variables
9.Que el objetivo sea de minimizar costes y las restricciones no obliguen a
producir/vender/consumir una cierta cantidad.
10.
Que las restricciones no tengan definido el dominio de actuacin. Que alguno
de los ndices en una restriccin no est definido.
11.
Que el recorrido de los indices no est declarado.
12.
Que el dominio de las variables no est definido.
13.

Pgina 71 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

4.6

Simplificacin

de

un

modelo

de

programacin

enteraEquation Section (Next)


En este apartado se proponen cuatro procedimientos que permiten mejorar el tiempo de
resolucin de modelos de programacin entera. La mayor parte de estos procedimientos parten del
anlisis concreto de cada problema.
4.6.1

Ms restricciones y ms ajustadas
En programacin lineal es habitual pretender reducir el nmero de restricciones como un modo de

facilitar la resolucin. En programacin entera el efecto deseado es el mismo, aunque el mtodo es el


contrario. Mediante el anlisis directo de diferentes restricciones es posible encontrar restricciones
combinadas que reducen el mbito de variacin de diferentes variables, haciendo que el ptimo del
problema de programacin lineal est muy cerca del ptimo del programacin entera.

Ejemplo 4

[ Minimize]

51 + 7 2 + 10 3 + 3 4 + 5

(5.6.1)

Sujeto a :
1 3 2 + 5 3 + 4 5 2

(5.6.2)

21 + 6 2 3 3 2 4 + 2 5 0

(5.6.3)

2 + 2 3 2 4 2 5 1

(5.6.4)

i {0,1} i

(5.6.5)

De la restriccin (5.6.4) se puede sacar la siguiente relacin:

2 3 1 + 2 + 2 4 + 2 5 1

3 12

3 = 1

De la restriccin (5.6.3), y realizando operaciones parecidas, se puede sacar la siguiente relacin:

6 2 2 1 + 3 + 2 4 2 5 1

3 12

Y nuevamente de la restriccin (5.6.4), se puede deducir la siguiente relacin:

4 5 0

4 0

=
=
0
4
5

De donde 1 = 0 y el valor de la funcin objetivo es 0.

Pgina 72 de 171

JPGS-JM-2015

3 = 1

Modelos y Mtodos de Investigacin de Operaciones

Bsicamente se puede admitir que el mtodo consiste en analizar la configuracin del problema,
para encontrar relaciones, ms o menos evidentes, que reducen el nmero de variables al asignarles
valores.
4.6.2

Simplificar una restriccin entera con otra restriccin


Dada la restriccin entera (5.6.6) donde 1 , 2 son variables enteras.
4 1 + 6 2 9

(5.6.6)

A efectos de la resolucin, la restriccin (5.6.6) es equivalente a la restriccin (5.6.7) como se


puede apreciar en la Ilustracin 4-2. Adems, es mucho ms adecuada porque los enteros ms
prximos estn en ella considerados.
1 + 2 2 2

(5.6.7)

Ilustracin 4-2 Representacin grafica de las restricciones (5.6.6) y (5.6.7)


El procedimiento consiste en encontrar para cada restriccin de tipo (5.6.8) una restriccin de tipo
(5.6.9) que no reduzca el espacio de enteros posibles pero s el del problema de programacin lineal
asociado.

a1 1 + a2 2 + ... + an n ao

(5.6.8)

b1 1 + b2 2 + ... + bn n bo

(5.6.9)

Aunque es un mtodo muy efectivo, realmente el clculo de las restricciones citadas a menudo
consume excesivos recursos.
4.6.3

Restricciones discontinuas
En ocasiones hay que restringir una variable continua a segmentos o puntos, por ejemplo

=
x 0 a x b =
x c . Esta circunstancia puede ser representada por un conjunto de
restricciones disyuntivas, pero tambin existe un procedimiento alternativo para representarla. Consiste
en usar las restricciones (5.6.10) y (5.6.11) donde 1 , 2 son dos variables binarias y 1 , 2 son dos
variables continuas positivas.

x = a z1 + b z2 + c 2

(5.6.10)

Pgina 73 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

1
1 + 2 + z1 + z2 =

(5.6.11)

Un caso comn pero especial es cuando la variable sigue las condiciones siguientes:
x=
0

xa

con

a > 0 . En este caso, las restricciones a considerar son (5.6.12)-(5.6.13) donde

es una variable binaria.

5 LINEALIZANDO

x = a z1 + M z2

(5.6.12)

+ z1 + z2 =
1

(5.6.13)

LO

NO-

LINEALEQUATION CHAPTER (NEXT) SECTION 1


5.1

Introduccin

Cuando se trata de un modelo lineal los beneficios (o costes) son proporcionales a la cantidad
vendida o fabricada. El uso de un recurso limitado depende linealmente de la cantidad fabricada y el uso
total de un recurso. Este uso de un recurso es la suma de los consumos parciales del conjunto de
actividades que se ejecutan en l. Todas estas expresiones configuran un modelo lineal. Sin embargo
en realidad se dan, en ocasiones, circunstancias no-lineales (ver Ilustracin 5-1).
Es fcil encontrar ejemplos sencillos de expresiones que, siendo aparentemente lineales, en el fondo
no lo son, como por ejemplo el objetivo de minimizar el valor absoluto de una diferencia.
Tambin es habitual encontrar relaciones entre variables cuya aproximacin es difcilmente
aproximable a un caso lineal.

Ilustracin 5-1 Casos de relaciones no-lineales entre variables


As por ejemplo los beneficios asociados a la venta de un producto pueden depender de la cantidad
vendida.
Ejemplo 5

Pgina 74 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

Un modo bastante acertado de representar esta relacin entre el precio de venta y la cantidad pedida es
la denominada elasticidad de precios (la inelasticidad supone que un incremento en el precio supone
incremento en los beneficios). El grado de elasticidad Ex de un producto se define en la ecuacin (6.1.1).
De este modo, asumiendo que Ex es constante dentro de un rango, se puede calcular el precio p(x)
asociado a cada producto como en (6.1.2) donde k es el precio sobre el cual la demanda es unitaria. Por
tanto los beneficios esperados para una venta de x se pueden deducir con la ecuacin (6.1.3).

Ex =

porcentaje de cambio en la cantidad x demandada


porcentaje de cambio en el precio

p( x) =

(6.1.1)

(6.1.2)

Ex

p( x) x = k x

(1 1

Ex

(6.1.3)

Esto es un ejemplo tpico de relacin no-lineal que conducira a un objetivo no-lineal. Existen tambin
ejemplos de restricciones no-lineales. Por ejemplo en la mezcla de componentes cuyas caractersticas
mezcladas no tengan un comportamiento lineal o cuando se vean afectadas por un producto de
variables (por ejemplo, mantener la presin de un gas por debajo de ciertos niveles, pudiendo alterar
volumen y temperatura).
Ms habituales an son las restricciones de tipo lgico, que por su propia estructura no son lineales.
Los modelos de programacin no-lineal son mucho ms complejos de resolver que sus anlogos
lineales. Adems en muchos paquetes aunque se encuentra una solucin sta no es necesariamente
ptima. Sin embargo es posible convertir relaciones no-lineales en aproximaciones lineales. Y ese es el
objeto de este captulo.

5.2

Objetivos no-lineales fcilmente linealizablesEquation Section (Next)

En los siguientes apartados se relacionan algunos de los objetivos que ms comnmente se


encuentran en la construccin de modelos pero que no son lineales en su definicin. Dichos objetivos
son:

5.2.1

Minimizar un valor absoluto

Minimizar el mximo

Minimizar un ratio

Objetivo Minimizar un valor absoluto

Esta situacin se da cuando se pretende minimizar una cierta discrepancia entre dos valores (x e y
por ejemplo). La funcin objetivo (6.2.1) es un ejemplo.

[ Minimize]

x y

(6.2.1)

Pgina 75 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

La funcin absoluto no es una funcin lineal. Para convertirla en lineal es necesario establecer una
tercera variable z, remplazar la funcin objetivo por (6.2.2) e incorporar las restricciones (6.2.3)-(6.2.4)
en el modelo.

[ Minimize]

(6.2.2)

Sujeto a :

5.2.2

z x y

(6.2.3)

z yx

(6.2.4)

Objetivo Minimizar el Mximo o Maximizar el Mnimo

En ocasiones el objetivo que se persigue consiste en minimizar un mximo (ver (6.2.5)) o consiste en
maximizar un mnimo como en la funcin objetivo (6.2.6):

[ Minimize] Max
a j xij
i

[ Maximize] Min
a j xij
i

(6.2.5)

(6.2.6)

Las funciones max{ } y min{ } no son funciones lineales y por tanto deben ser linealizada. El
i

objetivo (6.2.5) se puede convertir en un objetivo lineal introduciendo una variable z que lo representa.
La nueva formulacin consiste en la funcin objetivo (6.2.7) y la restriccin (6.2.8) que garantiza que z
sea siempre superior a cualquier valor del sumatorio en j para todo i.

[ Minimize] z

(6.2.7)

Sujeto a :

xij z 0

(6.2.8)

Evidentemente, la funcin objetivo (6.2.6) se puede representar tambin de un modo similar.


Sin embargo los objetivos maximizar el mximo (ver (6.2.9)) y minimizar el mnimo (ver (6.2.10))
no se pueden representar mediante programacin lineal, sino segn programacin entera (y se
presentan en un apartado posterior).

[ Maximize] Max
a j xij
i

Pgina 76 de 171

(6.2.9)

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

[ Minimize] Min
a j xij
i

5.2.3
En

(6.2.10)

Objetivos de Ratio
ocasiones

aparecen

objetivos

de

ratio

como

por

ejemplo

maximizar

la

relacin

beneficios/inversin. Una funcin objetivo de ratio genrica es (6.2.11). Ese tipo de objetivo tampoco es
lineal.

a
[ Maximize]
b

xj

xj

(6.2.11)

Es posible transformar la funcin objetivo (6.2.11) de forma que se convierta en un objetivo lineal.
Para ello hay que establecer una transformacin de variables como en las restricciones (6.2.12) y
(6.2.13) representadas a continuacin.

w=
xj t
j

(6.2.12)

1
bj x j

(6.2.13)

t=

Con esta transformacin el objetivo pasa a ser lineal y se transforma en (6.2.14). Para garantizar la
transformacin hay que incorporar la restriccin (6.2.15).

[ Maximize] a j w j

(6.2.14)

wj =
1

(6.2.15)

Y adems hay que convertir las restricciones originales de tipo (6.2.16) que utilizan las variables xj
que han sido transformadas en nuevas restricciones de tipo (6.2.17) que usan la variable wj.

d
j

d
j

xj

wj e t

(6.2.16)

(6.2.17)

Hay que destacar que esta transformacin es vlida si es siempre del mismo signo y no

nula.

Pgina 77 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

5.2.4

Objetivos Maximizar el Mximo Minimizar el Mnimo

Si el objetivo fuera del tipo (6.2.18) y que est sujeto a restricciones lineales convencionales, se
puede modelar el problema considerando una nueva funcin objetivo (6.2.19) y unas restricciones del
tipo (6.2.20).

[ Maximize] Max
aij x j
i

(6.2.18)

[ Maximize]

(6.2.19)

( a1 j x j z = 0) ( a2 j x j z = 0) ...
j

(6.2.20)

Pero eso exige el uso de restricciones de tipo lgico que se analizarn ms adelante a partir del
apartado 5.4.

5.3

El

uso

de

variables

discretas

para

representar

relaciones

condicionalesEquation Section (Next)


El uso de variables enteras en el proceso de modelado puede servir a diferentes propsitos como se
ha indicado anteriormente. Pueden representar cantidades indivisibles y tambin variables de decisin.
Estas indican la decisin a tomar. Suelen ser variables de tipo binario {0; 1} (por ejemplo: = 1 abrir

un nuevo centro de distribucin y = 0 no abrir). Aunque nada impide que adopten ms valores ( = 0
no abrir, = 1 abrir el centro en Valencia, = 2 abrir el centro en Alicante).
Sin embargo, en este apartado, se pretende establecer la utilidad de las variables enteras para
establecer relaciones entre restricciones basadas en condiciones.
5.3.1

Funciones no continuas

La suposicin de que la produccin de un determinado artculo supone un coste fijo C1 adems de un


coste variable C2 que depende de la cantidad x, y que el coste fijo no se paga si la cantidad fabricada es
0 se puede representar con el valor de CT como en (6.3.1).

C + C2 x
CT = 1
0

x > 0

x = 0

(6.3.1)

Sera interesante conocer, mediante una variable si x es mayor que 0 o es nulo (=1 o =0
respectivamente). De este modo, la funcin de costes totales sera la ecuacin (6.3.2) asumiendo la
restriccin (6.3.3) dnde M es una cota superior conocida de x.

Pgina 78 de 171

CT = C1 + C2 x

(6.3.2)

x M 0

(6.3.3)
JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

5.3.2

Relacin lgica

=1 a j x j b
j

Tambin se pueden utilizar estas variables indicadoras para conocer si una restriccin es violada o
no. Sea la restriccin (6.3.4). Supngase que se desea que = 1 represente que la restriccin (6.3.4)se
cumple. Esto se puede expresar como en la relacin lgica (6.3.5).

xj b

(6.3.4)

=1 a j x j b

(6.3.5)

Se puede mostrar que sta condicin se puede representar mediante la desigualdad lineal (6.3.6)

a
que se presenta a continuacin donde M es tal que

xj b M

en cualquier circunstancia.

x j + M M + b

(6.3.6)

5.3.3

Relacin lgica

1
xj < b =

En algunos casos, puede resultar interesante representar la condicin (6.3.7).

1
xj < b =

(6.3.7)

Esta condicin se representa mediante la desigualdad lineal (6.3.8) considerando que m es una cota
inferior de

xj b .

x j + m b

(6.3.8)

5.3.4

Relacin lgica

xj b =
1

Podra interesar representar la condicin (6.3.9).

xj b =
1

(6.3.9)

Esta condicin se representa como en la ecuacin (6.3.10) donde m es una cota inferior de

x j b y es la tolerancia a partir de la cual consideramos que

xj > b .

x j (m ) b +

(6.3.10)

Pgina 79 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

5.3.5

Relacin Lgica

=1 a j x j b
j

Sea ahora la restriccin (6.3.11). Supngase que se desea que =1 represente que la restriccin
(6.3.11) se cumple.

xj b

(6.3.11)

Esta condicin se puede expresar con la relacin lgica (6.3.12).

=1 a j x j b

(6.3.12)

Se puede mostrar que la relacin lgica (6.3.12) se puede representar mediante la desigualdad lineal

(6.3.13) donde m es una cota inferior de

xj b .

x j + m m + b

(6.3.13)

5.3.6

Relacin lgica

xj > b =
1

Podra interesar representar la condicin (6.3.14).

1
xj > b =

(6.3.14)

Esta condicin se representa mediante la ecuacin (6.3.15) donde M es de nuevo una cota superior
de

xj b .

x j M b

(6.3.15)

5.3.7

Relacin lgica

xj b =
1

Asimismo, podra interesar representar la condicin (6.3.16).

xj b =
1

(6.3.16)

Esta condicin se representa mediante la ecuacin (6.3.17) donde M es de nuevo una cota superior
de

x j b y es la tolerancia a partir de la cual se considera que

xj < b .

x j (M + ) b

(6.3.17)

Pgina 80 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

5.4

Ms relaciones lgicas y su representacinEquation Section (Next)

Para poder abordar este apartado es necesario establecer una cierta notacin del Algebra Booleana
bsica. En la Tabla 5-1, se presenta la nomenclatura usada a lo largo de este libro.
Tabla 5-1 Notacin del Algebra Booleana usado en este libro
Smbolo

Sentido en ingls

Sentido en castellano

OR

O INCLUSIVO: A, B, o ambos

AND

NO

NO

IMPLIES

IMPLIES

IF AND ONLY IF

SI Y SOLO SI

Estos elementos se denominan operadores y unen proposiciones como P,Q,R... x>0, =1, etc.
El par de operadores { , } sirve para representar cualquier combinacin posible (lo que es

especialmente interesante). Asumiremos que los smbolos por orden de importancia son , , y
, lo cual evita el uso de excesivos parntesis.
As por ejemplo:

( P Q ) R se puede escribir como P Q R


P ( Q R ) se puede escribir como P Q R
P se puede escribir como P
P Q se puede escribir como P Q
P Q R se puede escribir como ( P Q ) ( P R )
P Q R se puede escribir como ( P Q ) ( P R )
P Q R se puede escribir como ( P R ) ( Q R )
P Q R se puede escribir como ( P R ) ( Q R )
( P Q ) se puede escribir como P Q
( P Q ) se puede escribir como P Q

Mediante estas reglas bsicas es posible construir casi cualquier expresin y reducirla a otra que
utilice distintos operadores.
As por ejemplo si Xi es la proposicin i=1, se puede decir que:
X 1 X 2 es equivalente a 1 + 2 1
X 1 X 2 es equivalente a 1 =
1, 2 =
1
X 1 es equivalente a 1-1 =
1 1 =
0
X 1 X 2 es equivalente a 1 2 0
X 1 X 2 es equivalente a 1 2 =
0

Pgina 81 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

Ejemplo 6
Suponga que se quiere garantizar que si = 1 entonces = 0, siendo ambas variables binarias. Este
caso se puede representar considerando las dos restricciones.
x, y {0,1}

(6.4.1)

x + y 1

(6.4.2)

HAY QUE VERIFICAR EL EJEMPLO 5, PUEDE QUE HAYAN FALTAS


Ejemplo 7
Suponga que se quiere garantizar que si y 1 entonces = + 1. Siendo x, y, z variables
enteras. La expresin buscada es (5.4.3)

( x b ) ( x 1) ( y =z + 1)

(6.4.3)

( x b ) ( x 1) ( =1) ( y =z + 1)

(6.4.4)

Que puede ser escrita como:

Si se descompone (6.4.4) puede ser substituida por (6.4.7) y (6.4.8).

1)
( x b ) ( =

(6.4.5)

1)
( x 1) ( =

(6.4.6)

( =1) ( =1) (
(

=1)

= 1) ( y z + 1)

(6.4.7)
(6.4.8)

La relacin lgica (6.4.5) se puede escribir como (6.4.9).


x m b

(6.4.9)

La relacin lgica (6.4.6), por consecuencia, se puede escribir como (6.4.10).

x M 1

(6.4.10)

La relacin lgica (6.4.7) se puede escribir como (6.4.11).

+ 1

(6.4.11)

La relacin lgica (6.4.8) se puede escribir como (6.4.12).

y z + m m +1

(6.4.12)

La relacin lgica (5.4.3) , por consecuencia, se puede escribir como (6.4.13).

Pgina 82 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

y z + M M +1

(6.4.13)

Donde m es una cota inferior de 1 y M es una cota superior de + 1.


Ejemplo 8
En un caso de programacin de produccin, si cualquiera de los productos A o B se fabrican,
entonces hay que fabricar C, D o E.
Sea la cantidad de producto de tipo i que se fabrica. Esta condicin se puede representar como en

la relacin (6.4.14).

(X A X B ) (XC X D X E )

(6.4.14)

Sea = 1 . Sea una variable auxiliar tal que se respecta la condicin

(6.4.15). Por consecuencia, se puede considerar tambin la relacin (6.4.16).


1
A + B 1 =

(6.4.15)

1 C + D + E 1
=

(6.4.16)

Se puede transformar las dos relaciones lgicas anteriores para obtener las desigualdades (6.4.17) y
(6.4.18). As pues el ejemplo se puede representar como este par de restricciones.
A + B + 2 0

(6.4.17)

C D E 0

(6.4.18)

Ejemplo 9
En ocasiones se admite como til el uso de polinomios de variables indicadoras. Estas expresiones
pueden ser siempre sustituidas por expresiones lineales. As, por ejemplo, (6.4.19) es equivalente a
(6.4.20) as como (6.4.21) es equivalente a (6.4.22).
1 2 =
0

(6.4.19)

1 + 2 1

(6.4.20)

1 2 =
1

(6.4.21)

1 + 2 =
2

(6.4.22)

De modo ms general si el trmino 1 2 ha de aparecer siempre podr ser sustituido por una variable
3 = 1 2 que tiene la siguiente condicin 3 = 1 (1 = 1 2 = 1). Lo cual se puede expresar
mediante les restricciones (6.4.23)-(6.4.24)-(6.4.25).

1 + 3 0

(6.4.23)

2 + 3 0

(6.4.24)

1 + 2 3 1

(6.4.25)

Pgina 83 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

Es incluso posible linealizar trminos en los que se multiplica el valor de una variable binaria con una
variable real positiva . Sea = . Entonces, se asumen las relaciones (6.4.26) y (6.4.27).

=0 y =0

(6.4.26)

=1 y = x

(6.4.27)

La relacin (6.4.26) es equivalente a una nica restriccin como (6.4.28). Por otra parte, la relacin
(6.4.27) es equivalente a las restricciones (6.4.29) y (6.4.30).

5.5

y M 0

(6.4.28)

y-x0

(6.4.29)

x y + M M

(6.4.30)

Conjuntos especiales de variables ordenadasEquation Section (Next)

Existen dos tipos de restricciones cuya presencia en problemas reales es habitual y que, adems,
estn implementadas en mltiples paquetes porque facilitan la resolucin. Estas son conjuntos de
variables en que slo una de entre todas puede adoptar un valor no nulo.
Estas variables se denominan:

Conjuntos SOS1 (Special Order Set 1 en ingls)


Conjuntos SOS2 (Special Order Set 2 en ingls)

El uso de estos dos tipos de conjuntos de variables es considerado explcitamente por algunos
motores de resolucin y facilita enormemente el proceso de ramificacin y corte, y por tanto reduce el
coste computacional.
5.5.1

Conjuntos SOS1

Un conjunto SOS1 es un conjunto de variables binarias dnde una y solamente una de estas
variables debe valer 1. Una de las principales ventajas de los conjuntos SOS1 es que permite discretizar
funciones no-lineales considerando solamente un nmero limitado de puntos. El tiempo de CPU que se
ahorra con este tratamiento especial es importante.
Para definir los conjuntos SOS1, se propone a continuacin un ejemplo.
Ejemplo 10

x [0,4]
2 x

El modelado de una funcin y(x) tal que: y = x + 4 x [4,6]


3 x 8 x [6,10]

La representacin grfica del espacio de soluciones de este modelo se presenta en la Ilustracin 5-2.

Pgina 84 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

Ilustracin 5-2 Representacin de la funcin y=f(x)


Si se decide discretizar la funcin en cada uno de los vrtices, se debe considerar 4 puntos. Sea un
punto de coordenada y .

Los puntos que se considerarn son los siguientes:


1 = (0; 0); 2 = (4; 8); 3 = (6; 10); 4 = (10; 22).

Usando estos 4 puntos, se puede escribir un modelo de programacin lineal usando un conjunto
SOS1.
Sea la variable binaria asociada al cada punto . = 1 si el punto es activo, 0 en caso

contrario. A partir de esto, se puede definir el modelo con las restricciones (6.5.1)-(6.5.2)-(6.5.3)-(6.5.4).

= 42 + 63 + 104

(6.5.1)

= 82 + 103 + 224

(6.5.2)

x=

y=

= 1 + 2 + 3 + 4 = 1

(6.5.3)

i {0,1} i

(6.5.4)

Otro ejemplo de uso de estas variables es la denominada formulacin modal, citada en un apartado
anterior.
Ejemplo 11

Pgina 85 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

Sea el siguiente conjunto de 3 restricciones que se presentan a continuacin:

x A + xB 7

(6.5.5)

3xA + xB 15

(6.5.6)

xB 5

(6.5.7)

Con la representacin grfica del espacio de soluciones de este modelo que se aprecia en la
Ilustracin 5-3, se puede observar que el espacio de solucin tiene 5 vrtices. Una posible
discretizacin consistira en considerar cada uno de ellos asocindole a cada uno una variable binaria .
El conjunto de forma entonces un conjunto SOS1.
(0,5)

(2,5)
(4,3)

xB

0
(0,0)

(5,0)
4

xA

Ilustracin 5-3 Representacin grfica del espacio de soluciones


Esta situacin se puede modelar representando exclusivamente los vrtices o tambin se podra
considerar ms puntos. Usando por tanto ms variables aunque menos restricciones (concretamente
una), el modelo de programacin matemtica considerara las restricciones (6.5.8)-(6.5.9)-(6.5.10)(6.5.11).
0 + 1 + 2 + 3 + 4 =
1

(6.5.8)

x A = 22 + 43 + 54

(6.5.9)

xB = 51 + 52 + 33

(6.5.10)

i {0,1} i =
1...4

(6.5.11)

Donde los coeficientes son las coordenadas e de cada uno de los puntos. Este tipo de

formulacin puede ahorrar gran cantidad de tiempo en la resolucin del problema.

Si se necesita considerar ms puntos, se podra discretizar con ms puntos. En programacin lineal,


esto no tendra mucho sentido pero en programacin entera, esto podra resultar til. Se propone en la
Ilustracin 5-4 considerar puntos intermedios entre los vrtices.

Pgina 86 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

Ilustracin 5-4 Representacin grafica del espacio de soluciones con ms puntos


En este caso, el modelo de programacin matemtica considerara las restricciones (6.5.12)-(6.5.12)(6.5.14)-(6.5.15).

0 + 1 + 2 + 3 + 4 + 5 + 6 + 7 =
1

(6.5.12)

x A = 22 + 43 + 54 + 15 + 36 + 4.57

(6.5.13)

xB = 51 + 52 + 33 + 55 + 46 + 1.57

(6.5.14)

i {0,1} i =
1...7

(6.5.15)

Esta formulacin tendra un tiempo de resolucin ms importante al incorporar ms variables binarias


en el modelo. Es importante destacar que a ms puntos (ms variables dentro del conjunto SOS1), ms
precisa ser la solucin si el optimo no se encuentra en un vrtice pero ms complejo ser el modelo.
5.5.2

Conjuntos SOS2
Cuando existen funciones separables convexas (y no-convezas) y se puede realizar otro tipo de

discretizacin gracias a los denominados conjuntos SOS2. En ellos slo dos variables binarias
consecutivas pueden tener un valor no-nulo y la suma del conjunto tiene que ser unitario. El uso de los
conjuntos SOS2 es til para aproximar trminos no-lineales por tramos (piecewise en ingls). Los
conjuntos SOS2 se usan cuando es til.

Ejemplo 12
Supngase que la regin de factibilidad de una variable es la OABCDEFG regin no-convexa
presente en la Ilustracin 5-5.

Pgina 87 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

D
A

B
C
E

Ilustracin 5-5 Regin de factibilidad del conjunto de variables x1 y x2


Esta regin se puede representar mediante relaciones lgicas considerando las variables binarias
1 , 2 , 3 . Las relaciones que se deben considerar son (6.5.16)-(6.5.17)-(6.5.18).
1 =1 ( x2 3) ( x1 + x2 4)

(6.5.16)

2 = 1 ( x1 + x2 0) (3 x1 x2 8)

(6.5.17)

3 =1 ( x2 1) ( x1 5)

(6.5.18)

Las tres relaciones lgicas anteriores equivalen a imponer las restricciones (6.5.19) a (6.5.27).
x2 + 1 4

(6.5.19)

x1 + x2 + 51 9

(6.5.20)

x1 + x2 + 4 2 4

(6.5.21)

3 x1 x2 + 7 2 15

(6.5.22)

x2 + 3 3 4

(6.5.23)

x1 5

(6.5.24)

1 + 2 + 3 1

(6.5.25)

0 i 1 i =
1, 2,3

(6.5.26)

i + i =
1, 2,3

(6.5.27)

Sin embargo, esto no es suficiente para que el modelo sea bueno. Por definicin, en un conjuntos
SOS2, solamente dos variables adyacentes +1 pueden ser distintas de cero. En la mayora de los
programa existen (de pago o no), sobra con definir el conjunto {1 , 2 , 3 } 2. Sin embargo, la

restriccin SOS2 se puede implementar directamente con la ayuda de variables binarias en caso de no
disponer de ella en el programa de optimizacin.

(1 + 2 =1) ( 2 + 3 =1)

(6.5.28)

Existe una formulacin alternativa para una regin no-convexa y conectada. En este caso, el
conjunto ( A , B , C , D , E , F ) sera SOS2 y se considerara las restricciones (6.5.29) a (6.5.31).

Pgina 88 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

x1 B 2C 4D 3E 5F 5G =
0

(6.5.29)

x2 3 A 3b 2C 4D E F =
0

(6.5.30)

A + B + C + D + E + F 1

(6.5.31)

Pgina 89 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

6 PROGRAMACIN

NO-

LINEALEQUATION CHAPTER (NEXT) SECTION 1


6.1

Introduccin

Los modelos de programacin no-lineal son mucho ms complejos de resolver que sus anlogos
lineales. Adems en muchos paquetes aunque se encuentra una solucin sta no es necesariamente
ptima. Sin embargo es posible convertir relaciones no-lineales en aproximaciones lineales. Para poder
tomar la decisin acerca de qu mtodo de resolucin es ms apropiado es importante conocer si el
problema es convexo o no-convexo.

6.2

ptimos locales y globalesEquation Section (Next)

El problema ms grave de la denominada programacin no-lineal es la dificultad de garantizar que un


ptimo local (es decir un punto que es objetivamente mejor que todos sus vecinos) sea el ptimo global.
Mucha investigacin se dedica a este problema, y estos apuntes no pretenden ni de lejos reflejarla.
Pero s que hay que entender determinados conceptos que ayudan a comprender la complejidad del
problema. Para ello es necesario recordar tres definiciones:
1. Definicin de regin convexa: Se dice que una regin del espacio es convexa si el segmento que
une dos puntos cualesquiera de la regin est ntegramente en la regin.
2. Definicin de funcin convexa: Se dice que una funcin es convexa si el conjunto de los puntos
(, ) donde = () forma un regin convexa.
3. Definicin de un modelo de programacin matemtica convexo: Se dice que un modelo de
programacin matemtica es convexo si implica la minimizacin de una funcin convexa sobre
una regin convexa.

Ejemplo 13
Un modelo de programacin matemtica convexo es el siguiente:

[ Minimize]

x12 4 x1 2 x2

(7.2.1)

Sujeto a :

x1 + x2 4
2x + x 5
1 2

-x1 + 4 x2 2
x1 , x2 0

(7.2.2)

Ejemplo 14

Pgina 90 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

Un modelo de programacin matemtica No-Convexo es el siguiente:

[ Minimize]

-4x13 + 3x1 6 x2

(7.2.3)

Sujeto a :

x1 + x2 4
2x + x 5
1 2

x1 + 4 x2 2
x1 , x2 0

(7.2.4)

En el ltimo ejemplo, la regin de factibilidad es convexa, aunque la funcin objetivo no lo es, por lo
que es modelo no es convexo. La no-convexidad conduce a una situacin en la que aparecen ptimos
locales lejos del ptimo global.
La posibilidad de que ptimos locales aparezcan como ptimos propiamente dichos, cuando el
modelo es no-convexo, es lo que convierte estos problemas en muy difciles de resolver.
Si el problema es convexo cualquier ptimo que se encuentre es ptimo global. Sin embargo
encontrar un ptimo global en un problema no-convexo requiere algoritmos ms sofisticados. Por
ejemplo el uso de la programacin separable que se explica en la siguiente seccin.

6.3

Programacin separableEquation Section (Next)

Se dice que una funcin es separable si puede ser expresada como la suma de funciones de una
variable nica.
Por ejemplo, la funcin (7.3.1) se puede denominar separable mientras que la funcin (7.3.2) no es
funcin separable.

x13 +

1
+ log( x3 )
x2

x1 x2 +

x3
x1 + x2

(7.3.1)

(7.3.2)

La importancia de que una funcin sea separable para la programacin matemtica radica en el
hecho de que una vez separada la mayor parte de las funciones se pueden aproximar a funciones
definidas por tramos que sean lineales. A partir de aqu ser posible encontrar un ptimo global para una
funcin convexa, o al menos un ptimo local si es no-convexa.
Aunque puede parecer que la clase de funciones separables es muy restrictiva, en realidad es
posible convertir en separables muchas funciones objetivo aparentemente no separables.

Pgina 91 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

Una vez las variables han sido separadas, la funcin resultante se puede aproximar a una funcin por
tramos lineal. No importa donde est la no-linealidad, pues el procedimiento es el mismo tanto se es en
la funcin objetivo como si es en las restricciones.
Ejemplo 15
Para convertir en lineal la funcin objetivo (7.2.1) solo es necesario convertir la funcin 1 2 . A partir

de la segunda restriccin del ejemplo es evidente que no es posible que 1 sea mayor que 2,5. En este
caso, la funcin = 1 2 se puede nicamente definir para [0,2.5] y puede ser sustituida por: la
funcin (7.3.3).

y=
3x 2
2.25

x5
0.5

x [ 0,1]
x [ 0, 2]

(7.3.3)

x [ 2,2.5]

Esta representacin es equivalente a al conjunto de restricciones (7.3.4).


x1 = 01 + 12 + 23 + 2.54

y = 01 + 12 + 43 + 6.254

1
1 + 2 + 3 + 4 =

i 0 i

(7.3.4)

Por tanto el modelo del ejemplo considerado se puede reformular usando la funcin objetivo (7.3.5) y
el conjunto de restricciones (7.3.6).

[ Minimize]

y 4 x1 2 x2

(7.3.5)

Sujeto a :

x1 + x2 4
2x + x 5
1 2
-x1 + 4 x2 2

0
-x1 + 2 + 23 + 2.54 =

0
-y + 2 + 43 + 6.254 =
4
i = 1
i =1

y, x1 , x2 0
i 0 i

(7.3.6)

Dado que la funcin es convexa no es necesario aadir ninguna restriccin ms. Si la funcin fuera
no-convexa sera necesario aadir una restriccin que tuviera en cuenta que

Pgina 92 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

como mximo 2 i adyacentes pueden ser no nulos


Esta restriccin slo se puede modelar mediante programacin entera, como se vio en un apartado
anterior. Lo destacable es que existen implementaciones que la consideran de manera eficiente.
En cualquier caso la separacin de variables para generar problemas no convexos conduce con
demasiada frecuencia a ptimos locales.
Para resolver este problema a menudo es posible resolver el mismo modelo mediante diferentes
estrategias, lo que da lugar a diferentes ptimos locales y, con suerte, algunos de ellos es ptimo global.
Existe un modo ms eficiente de convertir una funcin no-lineal en una funcin lineal. Este modo
alternativo conduce a la siguiente formulacin del ejemplo considerado.

x1 = 1 + 2 + 0.5 3
y = 1 + 3 2 + 2.25 3

) (

i > 0 j = 1 j < i j > 0 j > i


Aunque en tiempo de computacin es ms eficiente, este sistema es ms difcil de modelar y
requiere necesariamente del uso de programacin entera. Y en cualquier caso el problema de ptimos
locales permanece.

6.4

Cmo

convertir

un

modelo

no-separable

en

un

modelo

separableEquation Section (Next)


Considerar la no-linealidad slo si el modelo es separable puede parecer demasiado restrictivo. Sin
embargo, es posible convertir casi cualquier funcin de dos o ms variables en una funcin separable.
Una de las funciones no-separables ms comunes es el producto de dos o ms variables. Si se
observa en una funcin objetivo una expresin de tipo 1 2 , sta puede ser sustituida por una funcin
1 2 2 2 donde 1 = 12 (1 + 2 ) y 2 = 12 (1 2 ).

La funcin 1 2 2 2 es una funcin separable, donde los trminos pueden ser linealizados de modo

aproximado como se explica en el apartado anterior. Hay que destacar que 2 es un variable libre, es
decir, puede adoptar valores negativos.

Otro mtodo de separacin es el uso de logaritmos. La anterior funcin 1 2 puede ser

representada por donde log = log 1 + log 2 , restriccin que puede tener variables separadas. Y

donde la funcin logaritmo puede ser linealizada.

Un tercer modo de separacin es el uso de funciones lineales definidas por tramos de ms de una
dimensin. Aunque este modo obliga a la aparicin de un gran nmero de variables y restricciones
auxiliares.

Pgina 93 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

INCERTIDUMBRE
ANLISIS

DE

EN

LOS

DATOS

SENSIBILIDAD,

LAS

RELACIONES:

PROGRAMACIN

PROGRAMACION

FUZZY

ESTOCSTICA

ESTOCSTICAEQUATION CHAPTER (NEXT) SECTION 1


7.1

Introduccin

Hasta este momento todas las formulaciones que se han presentado de programacin matemtica
asumen que los datos son conocidos, ciertos y exactos. Sin embargo, en muchos problemas reales los
datos no pueden ser conocidos con exactitud. En ocasiones por errores de medida, pero ms
generalmente porque son datos sobre circunstancias que se darn en el futuro, y simplemente no
pueden ser conocidos con anticipacin.
Este tipo de problemas se dan con mucha frecuencia, puesto que en muchas ocasiones las
decisiones se toman de modo recurrente.
Por ejemplo el departamento de compras de una empresa toma la decisin de adquirir cierta cantidad
de materia prima atendiendo a una demanda conocida para el presente pero estimada para el futuro. Y
cuando ese futuro sea presente se tomar una nueva decisin.
El anterior es un ejemplo de recursividad. sta es, bsicamente, la capacidad de emprender acciones
correctivas despus de que la situacin incierta ocurra.
Hay que destacar tambin la propiedad de no-anticipacin que se exige a la programacin
estocstica. Se puede definir esta como la imposibilidad de vincular la decisin en el primer periodo no
depende de lo que de hecho ocurra en el segundo periodo. La decisin de hoy para hoy no puede ser
modificada maana.

7.2

Anlisis de Sensibilidad

7.2.1

Anlisis de resultadosEquation Section (Next)

7.2.1.1

Interpretaciones econmicas

Para avanzar en esta seccin es conveniente plantear un problema de mezcla de productos que sirva
como ejemplo.
7.2.1.1.1

Un problema de mezcla de productos


Ejemplo 16

Una empresa fabrica 5 tipos de productos (P1, P2,, P5) utilizando fundamentalmente 2 tipos de
recursos (3 tornos similares y 2 fresas similares). Tras deducir el coste de la materia prima cada

Pgina 94 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

producto aporta el beneficio expresado en la Tabla 7-1. En la misma tabla se representa los tiempos de
operacin necesarios para hacer cada producto en cada mquina.
Tabla 7-1 Tiempo de Operacin de cada producto en cada recurso y beneficios asociados

La semana tiene 6 das de 16 horas.


Al acabar el proceso de fabricacin es necesario proceder al montaje final de cada producto que
exige 20 horas de operario. La empresa dispone de 8 operarios trabajando en cada uno de los dos
turnos.
El modelo de programacin matemtica se propone a continuacin

[ Maximize] z =

550 x1 + 600 x2 + 350 x3 + 400 x4 + 200 x5

(8.2.1)

Sujeto a :
12 x 1 +20 x 2 +25 x 4 +15 x 5 288

(8.2.2)

10 x 1 +8 x 2 +16 x 3 192

(8.2.3)

20 ( x 1 + x 2 + x 3 + x 4 + x 5 ) 384

(8.2.4)

La funcin objetivo (8.2.1) pretende maximizar los beneficios totales de la empresa considerando los
beneficios asociados a la venta de cada producto. La restriccin (8.2.2) limita el consumo de la
capacidad productiva disponible en los tornos. De forma similar, la restriccin (8.2.3) limita el consumo
de la capacidad productiva disponible en las fresas y (8.2.4) en el proceso de montaje.
La solucin ptima del problema es la siguiente:

x1 = 12
x2 = 7, 2
0
x=
x=
x=
3
4
5
z = 10920
De la observacin de los resultados (ver Ilustracin 7-3) se conoce que tanto la restriccin de tornos
como la de Montaje estn al lmite, mientras que fresas tiene an capacidad. En la Ilustracin 7-1 se
propone la implantacin del modelo en Gusek.

Pgina 95 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

Ilustracin 7-1 Modelo Gusek asociado al Ejemplo1


En la Ilustracin 7-2 se propone el informe de los resultados despus de la ejecucin del modelo.

Ilustracin 7-2 Informe de resultados obtenidos despus de la ejecucin en Gusek


Pero adems existe informacin de inters que puede salir del modelo.
Pgina 96 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

a)

Cunto debieran incrementar su precio los productos P3,P4,P5 para que fueran

rentable fabricarlos (coste reducido)?


b)

Cunto vale una hora extra de cada recurso (precio sombra)?

Estos resultados pueden obtenerse del anlisis de los resultados que ofrece el simplex si este
mtodo ha sido utilizado como el de resolucin. Tambin pueden obtenerse de la resolucin del dual, y
en cualquier caso cualquier herramienta de resolucin actual ofrece incorpora un anlisis de sensibilidad
ms que suficiente para conocer tanto los costes reducidos y los precios sombra, como los rangos en
los que se deben mover las variables para no cambiar de solucin bsica.

7.2.1.1.2

Precios sombra

El precio sombra es el precio mximo que se debera pagar por una unidad extra de un
determinado recurso. Estas variaciones son siempre marginales y tienen un cierto lmite (incorporar
10000 horas de montaje sera absurdo). Estos lmites (rangos) se establecen en la siguiente seccin.
Los precios sombra de varias restricciones no pueden utilizarse simultneamente pues las
variaciones en los trminos independientes de varias restricciones simultneamente, no suponen la
suma de los precios sombra en la funcin objetivo. Los precios sombra son un claro ejemplo de costes
de oportunidad, concretamente del coste de la oportunidad perdida.
En la Ilustracin 7-3, se propone el informe del anlisis de sensibilidad de las restricciones de
Ejemplo1.

Ilustracin 7-3 Informe del anlisis de sensibilidad de las restricciones de Ejemplo1


Como se puede observar, los tornos y el montaje estn saturados ya que su actividad es igual a su
cota superior. Segn se puede ver en la Ilustracin 7-3, el precio sombra para los tornos es de 6,25
mientras que para montaje es de 23,75.

Pgina 97 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

7.2.1.1.3

Costes reducidos

Los costes reducidos asociado a una variable son el valor que habra que subir el precio (o la
contribucin marginal) para cada valor de sus ndices correspondientes para que la variable que lo
representa no fuera nula. Tambin este incremento en precio tiene un lmite por encima del cual no se
van a establecer ms variaciones. Otra manera de observar los costes reducidos es como el dinero que
se dejara de ganar si se obliga al sistema a producir al menos un producto del tipo en cuestin.
En la Ilustracin 7-4, se propone el informe del anlisis de sensibilidad de las variables de Ejemplo1.

Ilustracin 7-4 Informe del anlisis de sensibilidad de las variables de Ejemplo1


Con la ilustracin anterior, vemos que los productos:

7.2.1.2

P3 debera aumentar su beneficio en 125 para que sea rentable fabricarlo.


P4 debera aumentar su beneficio en 231,25 para que sea rentable fabricarlo.
P5 debera aumentar su beneficio en 368,75 para que sea rentable fabricarlo.
Anlisis de sensibilidad

Como se ha comentado anteriormente los parmetros de los modelos no tienen porqu ser
conocidos y ciertos. Es por ello que al obtener una solucin interesa saber cmo se hubiera comportado
la solucin en caso de que los datos hubieran sido ligeramente diferentes. Ese anlisis (fruto
fundamental de cualquier resolucin) se puede realizar resolviendo una y otra vez el mismo modelo,
pero tambin se puede obtener analizando ligeramente algunos datos ms que suelen obtenerse al
resolver otros modelos
Al resolver un modelo lo importante generalmente no es conocer los valores solucin de cada una de
las variables, o el valor de la funcin objetivo sino la poltica a la que conduce el modelo. As en el
modelo de ejemplo (ejemplo 1) lo que importa es que se fabrican productos de tipo 1 y tipo 2 de tal
manera que utilizan a plena capacidad los recursos torno y mano de obra. Si un modelo es estable

Pgina 98 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

ligeras variaciones de los coeficientes no variarn esta poltica, sino nicamente las cantidades
concretas.
7.2.1.2.1

Rangos en las restricciones

En el apartado anterior se han descrito los precios sombra como tiles para predecir el efecto de
pequeos cambios en el valor de la restriccin. Se ha indicado tambin que estos cambios son as
interpretables dentro de un determinado rango.
Conocer los rangos en los que se puede mover una restriccin sin alterar gravemente la solucin,
sirve para realizar anlisis de sensibilidad. En ocasiones los valores de las restricciones (y otros
coeficientes) no son estrictamente conocidos, pero si la solucin no variara (conceptualmente) con
variaciones en los coeficientes dentro del rango, es til conocer ste para saber si hay que invertir un
mayor esfuerzo en conocer exactamente el dato.
Cuando los rangos son amplios se puede asumir que un modelo es estable.
7.2.1.2.2

Rangos en el objetivo

A menudo es til conocer los efectos de cambios en los coeficientes de la funcin objetivo en la
solucin ptima (para ello se han definido los costes reducidos). Anlogamente a las restricciones se
pueden definir rangos de variacin donde no existirn variaciones en la estructura de la solucin.
La misma aplicacin en anlisis de sensibilidad que los rangos en las restricciones pueden tener los
rangos en los objetivos. Adems de que aqu no solo variar la poltica de la solucin sino tampoco la
cantidad exacta.
7.2.1.3

El modelo dual

El modelo dual se genera al convertir los objetivos en restricciones y las restricciones en objetivos.
Bsicamente se trata de crear tantas variables como restricciones se encuentran, y combinarlas
linealmente con el trmino independiente de cada restriccin para generar la funcin objetivo. Al mismo
tiempo los coeficientes de la funcin objetivo pasan a ser los trminos independientes de las
restricciones, cuya matriz tecnolgica es la transpuesta de la original.
De este modo el problema del ejemplo 1 queda de la forma siguiente:
Ejemplo 17

[ Minimize] z* =

288 y1 + 192 y2 + 384 y3

(8.2.5)

Sujeto a :
12 y1 + 10 y2 + 20 y3 550

(8.2.6)

20 y1 + 8 y2 + 20 y3 600

(8.2.7)

16 y2 + 20 y3 350

(8.2.8)

Pgina 99 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

25 y1 + 20 y3 400

(8.2.9)

15 y1 + 1 y3 200

(8.2.10)

Al resolver el modelo dual se obtiene la siguiente solucin para las variables:


y1 = 6, 25
y2 = 0
y3 = 23, 75

Esto significa que si aumentramos en una unidad el nmero de horas disponibles de torno el
incremento en el beneficio de la empresa sera de 6,25 , mientras que sera nulo si aumentramos las
horas de fresa. Este concepto es el denominado Precio Sombra.
7.2.1.4

Modelos estables

En muchas ocasiones es ms interesante encontrar soluciones estables que soluciones ptimas. Las
soluciones estables son aquellas en las que pequeas variaciones de los coeficientes no alteran la
solucin final. Esto se da en una gran proporcin de casos en los que no se puede cambiar la poltica de
una empresa debido a pequeas variaciones en los datos de entrada.
De algn modo este tipo de situacin puede ser modelado relajando algunas restricciones, es decir,
suponer que se va a poder violar la restriccin (8.2.11). Para ello resulta de inters que se pueda
establecer modificar la restriccin para obtener (8.2.12) penalizando en la funcin objetivo los valores de
u.

xj b

(8.2.11)

xj u =
b

(8.2.12)

7.2.2

Informacin

econmica

sensibilidad

en

los

modelos

de

programacin

enteraEquation Section (Next)


Por las propias restricciones de los modelos de programacin entera no es posible extraer de la
resolucin (o del dual) informacin estricta sobre los precios sombra o los costes reducidos, de las
restricciones o de los coeficientes.
Las restricciones no completamente utilizadas no implican, necesariamente que no tengan precio
sombra, puesto que es posible que una ligera ampliacin introduzca (o saque) de la regin de
factibilidad un punto que cumpla las condiciones de integralidad y mejore el valor de la funcin objetivo.
El nico modo de conocer tanto la informacin econmica prevista como de hacer un anlisis de
sensibilidad adecuado consistira en resolver una y otra vez el mismo modelo cambiando coeficientes.

Pgina 100 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

7.3

Programacin Fuzzy

7.4

Formulacin de un problema estocsticoEquation Section (Next)

Una posible formulacin del Problema lineal Estocstico es la siguiente:

[ Minimize]

cT x + pe d eT ye

(8.4.1)

A x b

(8.4.2)

Te x + We ye he e

(8.4.3)

x0

(8.4.4)

ye 0 e

(8.4.5)

Sujeto a :

Donde:

Coste de la decisin inmediata


Coste de la mejor decisin en el escenario e

Probabilidad del escenario e

Matriz tecnolgica con incertidumbre para las variables que corresponden a la decisin a tomar

Matriz tecnolgica sin incertidumbre

Matriz tecnolgica con incertidumbre para las variables que corresponden al futuro

Los problemas estocsticos son especialmente complicados debido a su tamao, que crece con el

nmero de escenarios. Pero adems la propia generacin de los escenarios y la definicin de


probabilidades a los mismos es un problema complicado.

Una de las principales ventajas de la programacin estocstica es que las soluciones que obtiene

para los periodos congelados son estables ante los diferentes escenarios.
Existen paquetes informticos especficamente dedicados a la resolucin de problemas con
escenarios, pero tambin se pueden utilizar paquetes estndares, aunque la complejidad anteriormente
aludida es una limitacin evidente en su uso.

Pgina 101 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

8 PROCEDIMIENTOS

DE

RESOLUCIN

DE

MODELOS

DE

PROGRAMACIN
MATEMTICAEQUATION CHAPTER (NEXT) SECTION 1
8.1

Introduccin

Hasta el momento se han planteado procedimientos de Modelado, dando por supuesto que el modelo
en s mismo podra ser resuelto. En el presente apartado se pretenden mostrar cmo se resuelven
problemas de programacin matemtica.
Pero existen en el mercado, disponibles para su adquisicin, procedimientos generales de resolucin
capaces de resolver en tiempos adecuados problemas cada vez ms complicados.
Aunque en la prctica es posible que sea ms rentable disear el propio procedimiento de resolucin.
Por ello se abordan en la fase final del captulo mtodos para disear procedimientos de resolucin para
los problemas que ya han sido modelados

8.2

Resolucin de problemas de programacin matemtica mediante el uso de


paquetes ya disponiblesEquation Section (Next)

8.2.1

Algoritmos y paquetes

Algoritmo es una palabra de origen rabe, concretamente, Al-jwarizmi. Era el apodo de un


matemtico cordobs de nombre Mohamed ibn Musa. Una definicin de algoritmo es la siguiente:
Un algoritmo es un conjunto finito y ordenado de operaciones cuya aplicacin permite resolver un
problema.
Un algoritmo puede ser programado como un conjunto de rutinas de ordenador para resolver
problemas que tienen que estar expresados en un tipo particular de formato. Cuando los algoritmos
resuelven problemas suficientemente generales se suelen agrupar en paquetes que posteriormente se
comercializan.
Estos paquetes comerciales contienen habitualmente algoritmos para resolver modelos de
programacin lineal y de programacin entera mixta. Cuatro son los tipos de algoritmos que se pueden
encontrar generalmente en un paquete comercial:

1.
2.
3.
4.

Versiones revisadas del Simplex


Extensiones del Simplex para modelos separables
Algoritmos de ramificacin y corte para modelos de programacin entera
Algoritmos del punto interior

En cualquier caso otros hacen un uso cruzado de los diferentes mtodos. As la estrategia que
parece ms adecuada para problemas de muy grandes dimensiones es utilizar algoritmos genricos que

Pgina 102 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

rpidamente nos conduzcan al entorno del ptimo y finalizar la exploracin del espacio de soluciones
con un Simplex que buscar el ptimo global del problema.
Una de las mayores ventajas del uso de paquetes comerciales es que son muy flexibles en su uso.
Adems suelen contener unas caractersticas (Reduccin, Soluciones iniciales, Cotas de Variables,
Anlisis de Sensibilidad) y que se introducen a continuacin.
8.2.1.1

Reduccin

Algunos paquetes tienen procedimientos para detectar y eliminar redundancias en los modelos. De
este modo se reduce el tamao y por tanto el tiempo de resolucin.
8.2.1.2

Soluciones iniciales

La mayor parte de los paquetes permiten que el usuario aporte una solucin inicial. Si est
suficientemente cerca del ptimo el tiempo de resolucin se ver sustancialmente reducido. Esta
herramienta es especialmente til cuando se quiere probar el efecto de pequeos cambios en los
valores del modelo.
8.2.1.3

Cotas de variables

En algunas ocasiones el valor de las variables est acotado por una cota superior constante U o por
una cota inferior constante L del siguiente modo:

x U

xL

Aunque en la formulacin convencional de los problemas de programacin lineal, esta restriccin


sera asociada a una fila de la matriz de restricciones, es ms eficiente considerar U o L simplemente
como una cota. Existe una versin modificada del Simplex que permite trabajar con estas variables
acotadas.
8.2.1.4

Restricciones de Cotas Generalizadas

Son bastante habituales las restricciones del tipo:

x1 + x 2 + .... + x n M
Este tipo de restricciones corresponden con una fila de unos en la matriz de restricciones y se suelen
denominar Cotas Superiores Generalizadas (GUB) del subconjunto. Si existen muchas restricciones de
este tipo para conjuntos disjuntos es til representarlos como GUBs, puesto que reducen
considerablemente el coste computacional.
8.2.1.5

Anlisis de sensibilidad

Cuando se halla la solucin ptima, a menudo nos interesa investigar como afectaran cambios en
los coeficientes de la funcin objetivo y las restricciones. Esta informacin, que se puede obtener de
todos los paquetes comerciales es de una gran importancia, en el uso de los modelos.

Pgina 103 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

8.2.2

El uso de la hoja de clculo Excel

La hoja de clculo Excel dispone entre sus herramientas una dedicada a la resolucin de problemas
de programacin matemtica. Dicha herramienta (que en ocasiones hay que instalar a travs de
Herramientas/Opciones) se denomina Solver.
Para ilustrar su uso, bastante intuitivo por otro lado, se procede a plantear el modelo del apartado
7.2.1.1.1.
Una disposicin de las celdas, meramente orientativa, pues el solver es verstil en ese aspecto,
podra ser la siguiente:
-

En la fila 1 se ha puesto los nombres de las variables.

En la fila 2 aparecern los valores de stas.

En la fila 3 se dedica a los coeficientes de la funcin objetivo.

En las celdas B3 a F6, se ha introducido el valor de las tablas.


En las celdas H4 a H6, se han colocado los lmites de las restricciones de capacidad para cada
recurso.
En la celda G3, se calcula el valor de la funcin objetivo. Se ha introducido la frmula
=SUMAPRODUCTO($B$2:$F$2;B3:F3). sta celda se ha copiado en las celdas de la columna G
inferiores (hasta G6).

El resultado que se debera obtener es el de la Ilustracin 8-1.

Ilustracin 8-1Plantilla para la resolucin en Excel del problema de mezcla de productos


Para poder usar el solver hay que acceder a travs de Herramientas/Solver. Para esto, en Excel
2010, se har clic en el botn

presente en el apartado Datos/Anlisis. A continuacin, se abrir

una ventana vaca (Ilustracin 8-2) dnde se introducirn las caractersticas del problema.

Pgina 104 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

Ilustracin 8-2 Ventana para la introduccin de los parmetros de Solver en Excel2010


El paso siguiente consiste en definir los parmetros para la ejecucin correcta del solver. La
parametrizacin del solver se hace en 6 pasos:
1. Estableciendo la celda del valor de la funcin objetivo
2. Definiendo el tipo de objetivo
3. Definiendo el rango de las celdas que representan las variables
4. Incorporando las diferentes restricciones del modelo de programacin matemtica
5. Definiendo el mtodo de resolucin
6. Ajustando las opciones del solver
En este problema en concreto, la ventana se modificara de la forma siguiente:
1. El valor de la funcin objetivo es $G$3
2. El tipo de objetivo es de maximizacin, entonces, se seleccionar Max
3. Las celas de variables son las celdas que representan los posibles valores de x1,,x4.
Entonces, el rango de celdas es $B$2:$F$2
4. Las restricciones que se deben incorporar al modelo son de dos tipos. Las restricciones para
definir las variables y las restricciones de capacidad:

Pgina 105 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

a. El rango de variables $B$2:$F$2 debe ser entero y esto se introduce como en la


despus de haber pulsado en el botn Agregar.
b. El rango de variables $B$2:$F$2 debe ser positivo.
c.

Las

restricciones

(8.2.2)-(8.2.4)

se

representan

agregando

la

restriccin

$G$4:$G$6<=$H$4:$H$6.
5. El mtodo de resolucin que se seleccionar ser Simplex LP.
6. Y no se modificar nada en Opciones.
La pantalla que se debe obtener es la misma que la Ilustracin 8-3.

Ilustracin 8-3 Pantalla con los parmetros adecuados para resolver el Ejemplo1
Al acabar la resolucin del problema, aparece la pantalla de la Ilustracin 8-4. En esta ltima, si
hacemos clic en Responder en el apartado Informes y que despus se hace un clic en Aceptar, se
genera una nueva hoja dentro del libro dnde est todo el informe presente en la Ilustracin 8-5.

Pgina 106 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

Ilustracin 8-4 Pantalla de resultados de Solver despus de la ejecucin

Pgina 107 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

Ilustracin 8-5 Informe de respuestas despus de la ejecucin del modelo correspondiente al


Ejemplo1
8.2.3

El uso de lenguajes de modelado

Se pueden encontrar en el mercado diferentes paquetes que ayuden al usuario a estructurar e


introducir un problema en un paquete en forma de modelo. Este tipo de programas se denominan
generadores de matrices por su origen, aunque en realidad son lenguajes de alto nivel para la
programacin matemtica.
El lenguaje de escritura ms utilizado es MathProg que es implementado en diferentes herramientas
y es gratuito. Algunas son de pago como AMPL, MPL de Maximal Software por ejemplo, AIMMS o
Xpress-Mosel.

Pgina 108 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

8.3

El uso de paquetes para la resolucin de modelos de programacin


linealEquation Section (Next)

Aunque, en principio, uno podra programarse sus propios algoritmos para la resolucin de
problemas de programacin lineal, la realidad es que existen muchas alternativas que son mucho ms
eficientes que cualquier implementacin individual.
En el terreno de los programas comerciales dos son los paquetes relevantes: CPLEX Optimizer 12.4
y Gurobi Optimizer 5.0. CPLEX Optimizer es el programa (software) clsico. Llevan aos mejorando sus
algoritmos y los ltimos pasos que dio (concretamente CPLEX 12.4) parecan haber dejado
completamente atrs a sus competidores. Sin embargo Gurobi Optimizer en el 2009 salt a la arena,
con un solucionador que es capaz de dejar atrs a CPLEX Optimizer. En cualquier caso pueden resolver
problemas con decenas de miles de variables, tanto enteras como binarias, en algunos segundos.
Muy lejos de estos dos programas se encuentran las aplicaciones de programa libre (freeware) como
GLPK o LPSolve IDE.
En cualquier caso adems del programa de optimizacin, generalmente hace falta tener un programa
de interface, para poder introducir datos en formato natural, y extraerlos de manera natural tambin.
Por otro lado, el uso de programas para la resolucin de programacin lineal cuando los programas
son de un cierto tamao (unos miles de variables), puede requerir para ser eficiente un cierto nivel de
tuneado. Parmetros como los gaps admisibles, las reglas de pivote, la reduccin previa, exigen unos
minutos hasta dar con una combinacin adecuada.
Se admite habitualmente que el mayor problema para aplicar de modo exitoso los modelos de
programacin matemtica no son los modelos ni los tiempos de resolucin, sino la interface con el
usuario: la entrada y la salida de datos.
El uso de paquetes de modelado aporta las siguientes ventajas:
a) Ofrecer un modo de entrada de datos ms natural
b) Corregir y verificar es mucho ms fcil
c) Modificar se hace ms fcilmente
d) Automatizar la repeticin de la ejecucin es factible
8.3.1

Brevsima introduccin al lenguaje MPL

El MPL es uno de los programas existentes en el mercado que facilita la introduccin de modelos
matemticos en sistemas de resolucin de problemas de programacin matemtica.
Una versin MPL de prueba para estudiantes puede descargarse de la web www.maximal-usa.com.
Existiendo tambin en dicha web un muy buen manual en castellano, y mltiples ejemplos.

Pgina 109 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

La utilidad del MPL se aprecia rpidamente sin ms que analizar cmo se introducira el problema del
apartado 7.2.1.1.1 citado anteriormente.

Ejemplo 18

INDEX
i= 1..5;
j= (torno,fresa,montaje);
DATA
benef[i] := (550,600,350,400,200);
prodhoras[j,i] :=(12,20,0,25,15,
10,8,6,0,0,
20,20,20,20,20);
rechoras[j] := (288,192,384);
VARIABLES
x[i];
MAX SUM( i : benef*x);
SUBJECT TO
restr[j] : SUM(i : prodhoras*x)<=rechoras;
END
Es evidente la relacin entre este modo de introducir el modelo y el propio modelo.
Adems MPL incluye muchas otras funcionalidades como que Los datos pueden imputarse
directamente, o a travs de ficheros de texto, ficheros xml, Excel, Access y otros medios. O que Si
hay sumatorios largos se pueden calcular por separado como macros.
Adems de un fichero solucin convencional se puede conectar a Excel o Access. Y por tanto el
sistema puede dar y recibir informacin a/de paquetes convencionales.
Por otro lado el MPL tiene funcionalidades como al correccin ortogrfica y sintctica de los modelos,
as como herramientas que permiten analizar los modelos desde un punto de vista estructural.
8.3.2

Sistemas de apoyo en la decisin y sistemas expertos

En ocasiones, al disear un programa para aplicaciones especficas, se incorporan algoritmos de


programacin matemtica que sirven de soporte a la toma de decisin. Generalmente este programa
desarrollar otras mltiples funciones adems de resolver el modelo, como acceder a bases de datos e
interactuar con el gestor o persona que toma la decisin. Si tales sistemas incorporan algoritmos que
resuelvan los problemas ms habituales y establecidos, el gestor podr concentrarse en la toma de
decisin real. Para disear dichos algoritmos es conveniente construir modelos y disear mtodos de
resolucin de programacin matemtica.
Pgina 110 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

A medida que los sistemas de apoyo a la toma de decisin se vuelven ms sofisticados incorporan
procedimientos que plantean opciones y no slo representan datos. La definicin de tales opciones
no es ms que encontrar soluciones a los problemas que se plantean y modelan.
Otro concepto relacionado es el denominado sistema experto. Estos sistemas aceptan, en teora,
definiciones informales de los problemas, que se formalizan a medida que el usuario le ayuda, a travs
del interface diseado al efecto, seleccionando entre diferentes alternativas. Esta informacin que aade
el usuario se complementa con informacin histrica recogida de resoluciones anteriores.

8.4

Procedimientos

de

resolucin

de

programacin

linealEquation Section (Next)


Se proponen en este apartado los principios en los que se basan el mtodo de resolucin conocido
como Simples. Este mtodo se utiliza desde su desarrollo a mediados de los 50. En la dcada de los 80
se desarrollaron nuevos mtodos como los de Punto Interior (Interior Point) o el Mtodo de los
Elipsoides (Ellipsoid algorithm), que no se tratarn en estos apuntes.
8.4.1

El algoritmo Simplex

No es objeto de este apartado establecer concretamente cmo funciona el algoritmo del Simplex. Sin
embargo s es necesario destacar los principios bsicos de funcionamiento.
Dado un problema de programacin lineal, ste se debe expresar de forma estndar
(maximizacin y desigualdades menor-igual o minimizacin y desigualdades mayor-igual)

[ Maximize] ci xi

(9.4.1)

Sujeto a :

ij

x j bi

(9.4.2)

Las restricciones se pueden expresar mediante notacin matricial de modo . Se obtiene

una solucin bsica al problema haciendo n-m variables iguales a 0 (para convertir el problema

en linealmente independiente y determinado). A las variables definidas como nulas se les denomina
variables no-bsicas, y a las dems, variables bsicas. Si existe solucin para el problema planteado
con las n-m variables no bsicas definidas, entonces a esa solucin se le denomina solucin bsica
factible.
Las soluciones bsicas factibles generan los vrtices de un poliedro convexo. En uno de estos
vrtices se encuentra el ptimo si este existe. Se dice que dos vrtices son adyacentes si sus conjuntos
de variables bsicas tienen m-1 variables bsicas en comn.

Pgina 111 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

El algoritmo simplex consiste, bsicamente, en desplazarse de un vrtice a otro adyacente


(empezando por uno cualquiera) hasta que cualquier movimiento empeore el valor de la funcin
objetivo.
El algoritmo simplex clsico, ha sido revisado, en diferentes ocasiones. De l han salido
procedimientos, denominados simplex revisados, en los que se hace un especial hincapi en la
estructura matricial y por tanto en el clculo matricial, reduciendo notablemente el coste computacional.
8.4.2

Los mtodos del punto interior


Los mtodos del punto interior se basan en que el progreso de las soluciones se realiza en el

interior de la regin factible, y no a travs de los vrtices de la misma como hace el mtodo Simplex.
La estrategia del algoritmo del punto interior es implementar, en el espacio original de la regin de
factibilidad, transformaciones a media que avanza el algoritmo.
Una vez conocida la regin de factibilidad y un punto inicial e interior al mismo, se debe definir un
modo de progreso en una direccin que permita reducir el valor de la funcin objetivo, y que el nuevo
punto siga siendo factible e interior.
Este proceso se debe repetir hasta que no pueda haber una mayor reduccin en el valor de la
funcin objetivo.
As pues las preguntas que hay que saber cmo responder son tres:

1) Cmo encontrar un punto factible e interior?


2) Cmo definir el camino de evolucin?
3) Cmo se sabe que se ha alcanzado el ptimo?

8.5

Procedimientos

de

resolucin

en

programacin

lineal

enteraEquation Section (Next)


8.5.1

Ramificacin y acotacin
En la prctica la mayor parte de los problemas de PE se resuelven utilizando la tcnica conocida

como ramificacin y corte (Ramificacin y Acotacin, Ramificacin y Poda Branch and Bound en
ingls). Este procedimiento se basa en la divisin de problemas en subproblemas (ramificacin)
mientras el ptimo no sea una solucin factible entera.
La Ramificacin y Poda es un mtodo general de bsqueda. Empieza considerando el problema raz
(el problema original con la regin factible completa sin las restricciones de integridad). Si se cumplen
dichas restricciones el procedimiento ha terminado. Si no se cumplen, la regin de factibilidad se divide
en o ms regiones. Se resuelve cada uno de los sub-problemas, si uno de ellos satisface las
restricciones de integridad el problema ha sido resuelto pero no se puede garantizar su optimalidad. Si
no satisface dichas restricciones, su valor se puede tomar como una cota. Si el valor de dicha cota es

Pgina 112 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

peor que el mejor resultado obtenido hasta el momento, no har falta seguir explorando este problema.
Este procedimiento se resuelve de modo iterativo para cada uno de los subproblemas generados.
Concretamente en programacin entera, el mtodo consiste en:

1. Relajar el problema de PE convirtindolo en programacin lineal,


2. Resolver mediante el simplex este problema de programacin lineal,
a. Si las variables de la solucin ptima satisfacen la condicin de integralidad, hemos
obtenido el ptimo.
b. Si dicha condicin no se satisface, el valor de la funcin objetivo aporta una cota
superior del ptimo. Entonces, hay que volver a ramificar y volverlo a intentar.
Ejemplo 19

[ Maximize]

z = 7x1 + 3x2 + 4 x3

(9.5.1)

Sujeto a :

3x1 + 2 x2 x3 5

2 x2 3 x3 9

7x1 + 2 x2 8

+
x1 , x3
x 2 0

(9.5.2)

La solucin del problema relajado es (1 , 2 , 3 ) = (1.1428,0,3) con = 14.2857. Este valor es una

cota mxima del problema, aunque no es un valor solucin porque 1 + .

La ramificacin consiste en generar un par de nuevos subproblemas, mediante la adicin

respectiva de nuevas restricciones.


Subproblema2 = Problema1 + (1 1)
Subproblema3 = Problema1 + (1 2)

La relajacin del subproblema2 da lugar a la siguiente solucin (1 , 2 , 3 ) = (1,1.5,2.667) con el

valor de la funcin objetivo 2 = 14.1667. Dado que 2 + , volvemos a obtener una cota mxima ms
ajustada aunque la solucin no es factible.

La relajacin del subproblema3 no tiene solucin, por lo que no se profundizar ms en esa rama.
Se crearn pues dos nuevos subproblemas:
Subproblema4 = Subproblema2 + (3 2)
Subproblema5 = Subproblema2 + (3 3)

La relajacin del subproblema 4 da la siguiente solucin: solucin (1 , 2 , 3 ) = (0.714,1.5,2) con el

valor de la funcin objetivo 4 = 9.42857.

Pgina 113 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

La relajacin del subproblema 5 da la siguiente solucin (1 , 2 , 3 ) = (1,0,3) con el valor de la

funcin objetivo 5 = 14.

La solucin del subproblema 5 da valores enteros de x1, x3, y adems se puede garantizar su

optimalidad porque la cota superior del subproblema 4 es 9.42, inferior al 14 ya obtenido. Grficamente
se puede representar como en la Ilustracin 8-6.
Problema 1
( x1 , x2 , x3 ) = (1.1428,0,3)
z = 14.2857

( x1 1)

( x1 2)

Subproblema 2
( x1 , x2 , x3 ) = (1,1.5,2.667)
z 2 = 14.1667
( x3 2)
Subproblema 4
( x1 , x2 , x3 ) = (0.714,1.5,2)
z 4 = 9.42857

Subproblema 3
No factible

( x3 3)
Subproblema 5
( x1 , x2 , x3 ) = (1,0,3)
z5 = 14

Ilustracin 8-6 Representacin grafica del proceso de ramificacin y corte

En la resolucin mediante mtodos de ramificacin y acotacin, se puede optar bsicamente por dos
estrategias en la seleccin del siguiente nodo a ramificar:
a)

Elegir la rama ms profunda

b)

Elegir la rama con mejor cota

c)

Elegir el primero de los nodos an no explotados (FIFO)

d)

Elegir el ltimo nodo abierto y no explotado (LIFO)

Aunque aparentemente la opcin b llevara ms rpidamente a la solucin, lo cierto es que


depende de cada problema la seleccin de una alternativa u otra.
Otra tcnica interesante en la aplicacin de la ramificacin y corte es la del clculo inicial de una
solucin que permita fijar la cota superior (en algunos textos anglfonos se denomina incumbent). sta,
obtenida mediante algn procedimiento heurstico, dara una solucin candidato que permitira, en
ocasiones, podar ramas sin necesidad de explorarlas profundamente.
Por otro lado, aunque en este apartado se ha explicado la tcnica de ramificacin y acotacin para
un problema de programacin entera, es posible aplicarlo en otros entornos conservando la misma
configuracin (p.e. para la resolucin de problemas de optimizacin combinatoria).
8.5.2

Enumeracin implcita
El mtodo de enumeracin implcita se usa frecuentemente para resolver problema de

programacin entera 0-1. En la enumeracin implcita se aplica el hecho de que cada variable es binaria

Pgina 114 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

para simplificar los componentes a ramificar y acotar del proceso de ramificacin y acotacin y para
determinar eficazmente cuando un nodo no debe ser explorado.
El rbol que se usa en el mtodo de la enumeracin implcita es similar a los rboles que se
utilizan para resolver problemas de programacin entera convencional. Cada rama del rbol especificar
para una determinada variable si vale xi=0 xi=1. Todas las variables a las que se las asigna un valor se
denominan variables fijas y las dems variables libres.
Para cualquier nodo (un conjunto de variables fijas con sus valores asignados) se denomina
integracin del nodo a cualquier especificacin de las variables libres.
Un modo de integrar de modo eficiente un nodo es asignando a las variables libres los valores que
permiten maximizar (o minimizar) la funcin objetivo. Si esta integracin es factible entonces esta es la
mejor solucin a que se puede llegar a travs del nodo en el que nos encontramos. Si no fuera factible el
valor de la funcin objetivo obtenido definira una cota superior (o inferior) del nodo.
Desgraciadamente no hay ningn modo efectivo de saber si para un nodo no existe ninguna
integracin factible.
Introducir este ejemplo
Ejemplo 20

[ Maximize]

31 + 2 + 3 4 2 5 + 6

(9.5.3)

Sujeto a :

1 + 2 2 3 + 4 2

1 + 2 + 3 + 5 3
+ + + 2
1 3 5 6

(9.5.4)

Pgina 115 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

1 = 0

1 = 1
1110001
NO 7

011001
SI 4

2 =1

2 = 0

111001
NO 7

101001
NO 5

3 = 0

3 =1
111001
NO 7

110001
SI 6

4 = 0

4 =1
111101
NO 6

111001
NO 7

5 =1

5 = 0

111011
NO 5

111001
NO 7

6 =1

6 = 0

111000
SI 7

8.5.3

111001
NO 7

Mtodos del plano cortante


Los mtodos del plano cortante se utilizan para resolver problemas de programacin entera. El

mtodo consiste en relajar los problemas de programacin entera a problemas de programacin lineal.
Si la solucin resultante del problema es entera, el problema ha sido resuelto.
Si no es as, se plantear una nueva restriccin (plano de corte) que se aadir al problema y que
pretenden relajar las aristas que dan soluciones no enteras.
El nuevo problema se vuelve a resolver como programacin lineal y el proceso anterior se repite
hasta que la solucin es entera.
Aunque el nmero de cortes necesarios para garantizar la optimalidad se ha demostrado que es
finito, en realidad no es un procedimiento muy exitoso para problemas grandes.

8.6

Procedimientos

de

resolucin

en

programacin

binaria

Equation Section (Next)


8.6.1

Introduccin

Cuando el nmero de variables binarias es muy alto, probablemente compense disear


procedimientos especficos como los explicados en el captulo de optimizacin combinatoria que sucede
a ste.
Habra que poner un apartado de introduccin en cada captulo
Pgina 116 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

Especficamente dentro del rea de la gestin de la produccin y las operaciones, muchos de los
problemas que se plantean tienen estructuras especialmente difciles para garantizar la optimalidad en la
resolucin.
8.6.2

Problemas de optimizacin combinatoriaEquation Section (Next)

En este apartado se describen algunos problemas clsicos de optimizacin combinatoria. La


intencin inicial al redactar el apartado era establecer una clasificacin, pero esto parece casi imposible,
habida cuenta de que se pueden encontrar muchos tipos de clasificaciones en funcin de diferentes
criterios para cada tipo de problema. As, se ha optado por enumerar (sin nimo de ser exhaustivos ni
exclusivos) diferentes tipos de problemas en funcin de diferentes aspectos como por ejemplo: su
aplicacin, la clase terica a la que pertenecen o las soluciones que se pretenden conseguir. Se han
dejado aparte clasificaciones que consideraran aspectos como su dureza en trminos de complejidad, o
la existencia de algoritmos eficientes para su resolucin.
8.6.2.1

Secuenciacin

Los problemas de secuenciacin son, junto con los de rutas, la aplicacin ms clsica en
optimizacin combinatoria, tanto por la extensin de su aplicacin, como por su facilidad de
planteamiento. Aun as el nmero de problemas diferentes que se puede plantear son muchos.
Definir el orden en el que se deben ejecutar las tareas de un proyecto para minimizar su duracin,
teniendo en cuenta limitaciones en los recursos, es un clsico problema de secuenciacin.
La secuenciacin en una mquina hace referencia al orden en que un conjunto de trabajos deben
pasar por una mquina. La secuenciacin puede considerar aspectos como la duracin, fecha de
entrega, la importancia del cliente
Los problemas de secuenciacin de una mquina se extienden teniendo en cuenta mquinas en
paralelo y/o mquinas en serie (taller de flujo) y de ah al taller general. Otra extensin habitual es
considerar tiempos de preparacin de mquinas. Adems el uso de mltiples recursos diferentes y
limitados forma parte tambin de las posibilidades.
Si adems de definir la secuencia (o incluso asignar la mquina) se tuviera que definir la cantidad a
producir se entrara en los problemas que unen la lotificacin con la Secuenciacin (Economic Lot and
Supply Scheduling Problem, ELSSP).
La secuenciacin con mezcla de modelos en una lnea de montaje, pretende establecer el orden en
el que un conjunto de productos (pertenecientes a varias familias de productos en diferentes cantidades)
deben circular por una lnea de montaje.
8.6.2.2

Rutas

Los problemas de rutas tratan de establecer el circuito a recorrer para dar un determinado servicio,
ya sea de entrega de recepcin o de ambos. El problema clsico denominado del viajante de comercio
supone visitar una y slo una vez un conjunto de puntos. A este problema se le pueden aadir variantes

Pgina 117 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

como incluir varios viajantes, limitar la capacidad del variante o la disponibilidad de tiempo, incorporar
ventanas temporales de entrega o recepcin, obligar o prohibir determinados tramos, hacerlo en una o
varias ocasiones por cada tramo
8.6.2.3

Corte y empaquetado

Los problemas de corte son los ligados a reducir el consumo de materia prima que se vende o
consume troceada. Pueden ser unidimensionales (vigas), bidimensionales (placas de vidrio, cartn o
tela) o incluso tridimensionales como en el corte de mrmol. Tambin se pueden considerar variantes
como que las piezas a obtener tengan una forma regular o irregular (por ejemplo retales de tela). O
tambin se puede considerar variantes con restricciones que obligan a mantener determinadas
direcciones de corte, o realizar cortes completos.
Los problemas de Trim son una variante de estos problemas en los que de un rollo (de papel o de
acero) se trocean otros rollos de anchos y longitudes diferentes. El problema radica en este caso en
establecer los modos en los que los diferentes rollos se van haciendo para minimizar no slo la materia
prima desperdiciada sino tambin las preparaciones de mquina a realizar.
Los problemas de empaquetado son similares siendo los contrarios, pretenden ubicar en la mnima
superficie (o el mnimo volumen) posible un conjunto de partes que son inicialmente diferentes.
8.6.2.4

Horarios

Los problemas de horarios son un problema clsico de optimizacin de combinatoria que tiene en la
gestin docente (aunque evidentemente no es exclusiva de ella) una gran cantidad de aplicaciones: el
diseo de horarios de clase, repartos de guardias, calendarios de exmenes, son algunos fcilmente
reconocibles. En la industria se pueden encontrar fcilmente cuando se trata de repartir cargas de
trabajo desiguales entre operarios con calendarios laborales.
8.6.2.5

Asignacin

Los problemas en los que se asignan recursos a tareas o tareas a agrupaciones son otra clase
habitual de problemas. El equilibrado de lneas es un problema muy conocido, pero los problemas de
asignacin de frecuencias o de generacin de equipos multidisciplinares equilibrados no son menos
habituales.

Pgina 118 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

8.6.3

Breve introduccin a los mtodos de resolucin en programacin 0-1

Entre las herramientas disponibles para generar dichas soluciones, los algoritmos de optimizacin
combinatoria resuelven instancias de problemas que se creen difciles en general, explorando el espacio
de soluciones (usualmente grande) para estas instancias. Los algoritmos de optimizacin combinatoria
logran esto reduciendo el tamao efectivo del espacio, y explorando el espacio de bsqueda
eficientemente.
La mayor parte de los procesos de resolucin de problemas en optimizacin combinatoria no
garantizan el ptimo ni siquiera en el contexto de modelo, que no necesariamente es el problema real,
pero su aproximacin al ptimo es probablemente suficiente.
Los mtodos habitualmente utilizados para resolver problemas son del tipo heurstico o
metaheurstico. Estos son capaces de generar soluciones al problema. Son aproximaciones que
pretenden acercarse lo ms posible al ptimo, pero que pueden fallar en el intento. En los inicios de la
Investigacin Operativa, y dada las limitaciones de clculo automtico que entonces se tena, era
habitual desarrollar procedimientos heursticos (es decir que hallaban soluciones) muy rpidamente. Los
procedimientos eran especficos para cada problema y en general su eficiencia era escasa cuando se
intentaban utilizar en otros mbitos.
Pese a no garantizar la optimalidad, los mtodos heursticos de resolucin (incluyendo entre ellos los
procesos de mejora local y los algoritmos metaheursticos) son bsicos por varios motivos. En primer
lugar son capaces de generar soluciones lo que generalmente es mejor que no tener solucin alguna.
En segundo lugar se puede decir que alcanzar el ptimo de un modelo que tampoco es exactamente el
problema real no es esencialmente grave. Por ltimo ser capaz de disear una buena heurstica, exige
un conocimiento del problema que puede conducir a mejoras de otro tipo.
Con la existencia de ordenadores cada vez ms potentes, y aprovechando su capacidad de clculo
han surgido en las ltimas dcadas, las denominadas tcnicas metaheursticas. Son procedimientos
genricos que pueden ser fcilmente adaptados para resolver problemas de optimizacin combinatoria.

Pgina 119 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

9 ALGUNOS

PROBLEMAS

DE

MODELADO

PROGRAMACIN

MEDIANTE
MATEMTICA

EQUATION CHAPTER (NEXT) SECTION 1


En el presente captulo se presentan un juego de 14 problemas que representan las circunstancias
que ms generalmente tendr que modelar alguien que se dedique a la Organizacin Industrial.
Evidentemente la propia redaccin del problema es un modelo a su vez de la realidad y por tanto la
realidad podra haber sido interpretada de otro modo. Cada caso se acompaa de preguntas que
posteriormente en algunos casos son respondidas. En algunos casos tambin el modelo se implementa
en algn software que permitira su resolucin.
Quiz sea interesante hacer una profundizacin en este apartado sobre una reflexin que se plante
al inicio de este libro. Cuando se comenz a utilizar la matemtica para resolver problemas no existan
los ordenadores y adems pocos intentaban teorizar, simplemente pretendan encontrar modos de
resolver problemas que conocan. Es por ello que la Programacin Matemtica se comenz a estudiar
como problema y mtodo de resolucin asociado. As fueron naciendo los problemas de la mochila, del
tansporte, de la dieta, de planificacin de produccin, de calendario. Y as en muchos lugares se sigue
planteando la enseanza de la Investigacin Operativa. Se asume, que si uno conoce los problemas
bsicos ser capaz de extender los modelos bsicos hasta hacer que representen suficientemente bien
la realidad encontrada.
Y es un buen mtodo. Sin embargo no es el mtodo que se ha seguido en este libro. En el libro
hemos intentado dar una visin de cmo modelar ms que de cmo resolver el problema. En este
apartado del libro, adems de plantear y resolver problemas, se pretende dar esta visin prctica de la
Programacin Matemtica. Estn ms o menos representados los problemas clsicos.
Quiz aqu sera interesante clasificar los problemas segn la familia a la que pertenecen y hacer una
pequea introduccin a los mismos, junto con referencias a algunos papers interesantes sobre esos
problemas.

9.1
9.1.1

Plan Maestro Equation Section (Next)


Enunciado

Una empresa fabrica 2 productos P y Q y para ello dispone de 4 recursos A, B, C, D y E.


Los dos productos requieren de una misma pieza central, la materia prima de la cual vale a 200 la
unidad. Para fabricar la pieza central hacen falta 90 segundos del recurso B y 30 segundos del recurso
C. Para fabricar el componente 1 del producto P hace falta materia prima por valor de 210 /unidad, 90
segundos del recurso A y 60 segundos del recurso C. Al ensamblar la pieza central con el componente 1
utilizamos otro componente 3 que se compra al precio de 7/unidad, lo ensambla el recurso D en 90
segundos cada unidad.

Pgina 120 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

El producto Q sigue un procedimiento similar. El componente 2 utiliza Materia Prima por valor de 190
/unidad, pasa por el recurso A donde se tarda 60 segundos en procesarlo y luego por el proceso B
donde est 90 segundos. Finalmente es ensamblado por el recurso E en 30 segundos. El mes tiene 20
das laborales de 8 horas. Los gastos totales son 70000/semana.
P se vende a 180 y Q a 200. La demanda estimada de cada producto es de P=1000
unidades/semana y de Q=500 unidades/semana. Todo el producto que no se venda en la misma
semana en la que se produce se considera scrap

con un coste de 30 euros por unidad en su

destruccin.

9.1.2

Preguntas

a) Cul es el mejor plan de produccin para la empresa? Qu beneficio le aporta?


b) Cul es el valor de una hora ms de cada recurso productivo?
c) Establecer un objetivo que pretenda maximizar el ratio beneficio entre horas totales de trabajo.
d) Cmo incorporar limitaciones en la disponibilidad de materia prima?
e) Cmo incorporar un nmero indefinido de productos al modelo?

Pgina 121 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

9.1.3

Modelado

9.1.4

Una reflexin sobre el problema

Este problema es un problema clsico de Programacin Maestra. En Direccin de Operaciones se


trabaja con previsiones de demanda (o peticiones en firme) y estimaciones de capacidad disponible. Y
en algn momento hay que tomar la decisin de cunto fabricar y de qu.
El problema est basado en un caso que se propone en de Goldratt. Tiene adems el inters aadido de
que no se pretenden minimizar costes sino que se pretende maximizar beneficios.

Pgina 122 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

9.2

Carga de avionesEquation Section (Next)

9.2.1

Enunciado

Es usted el responsable de carga de una empresa de transporte de mercancas por avin. Est
intentando cargar un BAING 717 con una carga de 4 productos distintos. Cada uno de los productos
tiene las siguientes caractersticas. Puede decidir transportar la demanda completa o slo una fraccin
de ella.

Carga
C1
C2
C3
C4

Peso (Tm)
18
20
10
16

Volumen (m3/Tm)
500
600
550
400

Beneficio (/Tm)
300
450
350
275

El proceso de asignacin de cargas es como sigue. El avin se divide en 3 compartimentos (Delantero,


Central y Trasero) con diferentes capacidades en peso y en volumen cada uno de ellos. Dichas
capacidades no se pueden sobrepasar
Delantero
Central
Trasero

Capacidad en Peso (Tm)


12
16
10

Capacidad en Volumen (m3)


6000
9000
5000

Adems y a efectos de estabilidad en vuelo del avin, es necesario que el porcentaje de peso
ocupado sobre el total sea el mismo en cada compartimiento.
9.2.2

Preguntas

a) Defina la funcin objetivo.


b) Defina las restricciones que considere necesarias para establecer la limitacin de capacidad en peso
y volumtrica.
c) Defina las restricciones que considere necesarias para establecer la limitacin de demanda.
d) Defina las restricciones que considere necesarias para establecer las consideraciones de equilibrio de
la carga.

El modelo anterior se ha resuelto utilizando el solver de Excel y se ha obtenido el siguiente anlisis de


sensibilidad:

Pgina 123 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

Nombre
Cantidad cargada de 1
Cantidad Cargada de 2 delante
Cantidad Cargada de 3 delante
Cantidad Cargada de 4 delante
Cantidad Cargada de 2 en el centro
Cantidad Cargada de 3 en el centro
Cantidad Cargada de 4 en el centro
Cantidad Cargada de 2 detrs
Cantidad Cargada de 3 detrs
Cantidad Cargada de 4 detrs

Valor
Igual
0
6
0
6
13
0
3
1
5,33
3,67

Gradiente
reducido
-25
0
0
0
0
0
0
0
0
0

Coeficiente
Aumento Disminucin
objetivo
permisible
permisible
300
25
1E+30
450
118,75
0
350
0
1E+30
275
100
0
450 89,06249965
0
350
0
1E+30
275
100
0
450
0 50,89285696
350 28,1249999
0
275
0 51,50602392

estricciones
Celda
Nombre
Limitacin de Demanda de 1
Limitacin de Demanda de 2
Limitacin de Demanda de 3
Limitacin de Demanda de 4
Limitacin de Peso delante
Limitacin de peso central
Limitacin de peso trasero
Limitacin volumen delante
Limitacin volumen central
Limitacin volumen trasero

Valor
Igual

Precio
Sombra

0
20
5,33
12,66
12
16
10
6000
9000
5000

0
75
0
0
237,5
0
0
0,5
0,5
0,5

Restriccin
lado derecho
18
20
10
16
12
16
10
6000
9000
5000

Aumento Disminucin
permisible
permisible
1E+30
18
3,88
1
1E+30
4,67
1E+30
3,33
0
0,21
1E+30
0
1E+30
0
200
500
200
500
550
500

e) Cul sera el beneficio de aumentar un poco an a costa de seguridad (ya sabe los beneficios son
los beneficios) la carga en peso de la parte delantera?
f) Cul es el precio que debiera pagar el propietario de la carga de tipo 1 para que considerramos su
producto como posible mercanca en nuestro avin, sin prdida de beneficios?
g) Hay algunos elementos prescindibles en la carga muerta del avin que ocupan volumen aunque no
pesan nada, (paracadas y dems). Su jefe le pregunta por el beneficio que supondra por
unidad de volumen, deshacerse de ellos.
h) Un cliente le indica que si transporta carga de tipo 2 debe tambin transportar al menos un 25% de la
carga de tipo 1. Modele la situacin.
i) Defina el modelo que incorpore todas las restricciones citadas y adems el objetivo sea maximizar el
ratio beneficio total/volumen ocupado.
j) Cmo permitira un desequilibrio de un 10% en el ratio de peso entre las distintas bodegas del avin?

9.2.3

Resolucin

ndices
i : Recorre los productos a transportar (i=1P)
j : Recorre las bodegas del avin. (j=1Q)
Parmetros

Pgina 124 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

Bi : Beneficio de transportar una unidad (en peso) de carga de tipo j


CPj : Capacidad en peso de la bodega j
CVj : Capacidad en volumen de la bodega j
Di : Demanda de transporte de producto i
Variables
Xi,j : Cantidad a transportar (en peso) de carga de tipo i en la bodega j
a) Defina la funcin objetivo

B X
i

(10.3.1)

ij

b) Defina las restricciones que considere necesarias para establecer la limitacin de capacidad en peso
y volumtrica.

ij

CPj

j=1..Q

(10.3.2)

V X
i

ij

CV j

j=1..Q

(10.3.3)

c) Defina las restricciones que considere necesarias para establecer la limitacin de demanda.

ij

Di

i=1..P

(10.3.4)

d) Defina las restricciones que considere necesarias para establecer las consideraciones de equilibrio de
la carga.

CP1 X i ,2 CP2 X i ,1

(10.3.5)

CP1 X i ,3 CP3 X i ,1

(10.3.6)

e) Cul sera el beneficio de aumentar un poco an a costa de seguridad, (ya sabe los beneficios son
los beneficios) la carga en peso de la parte delantera?
En realidad aunque el precio sombra es elevado (237,5) el aumento permisible es 0, lo que significa que
no es posible aumentar la carga sin cambiar la estructura de la solucin, y por tanto no se
puede decir nada a priori sobre los beneficios.
f) Cul es el precio que debiera pagar el propietario de la carga de tipo 1 para que considerramos su
producto como posible mercanca en nuestro avin, sin prdida de beneficios?
325

Pgina 125 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

g) Hay algunos elementos prescindibles en la carga muerta del avin que ocupan volumen aunque no
pesan nada, (paracadas y dems). Su jefe le pregunta por el beneficio que supondra por
unidad de volumen, deshacerse de ellos.
0,5
h) Un cliente le indica que si transporta carga de tipo 2 debe tambin transportar al menos un 25% de la
carga de tipo 1. Modele la situacin.

2, j

> 0 =1 X 1, j 0, 25 D1

(10.3.7)

X 2, j 20 0
j

X 1, j 4,5 0
j

(10.3.8)

a) Defina el modelo que incorpore todas las restricciones citadas y adems el objetivo sea
maximizar el ratio beneficio total/volumen ocupado.

B X
[ Maximize]
V X
i

ij

ij

[ Maximize] Bi wij

(10.3.9)

Sujeto a :

V w
i

ij

=
1

(10.3.10)

ij

CPj t 0 j

(10.3.11)

V w
i

ij

CV j t 0 j

(10.3.12)

ij

Di t 0 i

(10.3.13)

CP1 wi ,2 =
CP2 wi ,1

(10.3.14)

CP1 wi ,3 =
CP3 wi ,1

(10.3.15)

j) Cmo permitira un desequilibrio de un 10% en el ratio de peso entre las distintas bodegas del avin?

Pgina 126 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

9.2.4

Reflexiones sobre el problema

Este es un problema de asignacin. Se trata de asignar cantidades demandadas en recursos


limitados.
Los problemas de asignacin son uno de los problemas clsicos de la programacin matemtica.
Pueden ser expresados fcilmente de muchas maneras, y adems muchos otros problemas pueden ser
expresados de este modo. En este caso las variables a asignar son enteras, pero existen otros
problemas de asignacin en el que las variables utilizadas son binarias.

9.3
9.3.1

Centralita telefnicaEquation Section (Next)


Enunciado

Una empresa tiene una centralita telefnica que debe atender durante 17 horas al da. La demanda
de operadores para las diferentes horas es variable. Puede contratar trabajadores a una Empresa de
Trabajo Temporal (ETT) por 4, 5, 6, 7 y 8 horas al da con unos costes respectivos de 10, 11, 12, 13 y 14
euros la hora. Cada tipo de contrato tiene un coste diferente.
9.3.2

Preguntas

Defina cuntos contratos de cada tipo ha de hacer para cada hora de una jornada.
9.3.3

Resolucin con Excel

El problema puede ser implementado en una hoja de clculo con la estructura de la Ilustracin 9-1.

Ilustracin 9-1 Plantilla Excel para resolver con Excel el problema Centralita Telefnica
Y el problema puede ser resuelto con el Solver Excel con los parmetros presentes en la Ilustracin
9-2.

Pgina 127 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

Ilustracin 9-2 Introduciendo los parmetros para el Solver de Excel


9.3.4

Reflexiones sobre el problema

Este es un problema de asignacin. Se trata de asignar cantidades demandadas en recursos


limitados.
Los problemas de asignacin son uno de los problemas clsicos de la programacin matemtica.
Pueden ser expresados fcilmente de muchas maneras, y adems muchos otros problemas pueden ser
expresados de este modo. En este caso las variables a asignar son enteras, pero existen otros
problemas de asignacin en el que las variables utilizadas son binarias.

9.4
9.4.1

Problema de corteEquation Section (Next)


Enunciado

Una empresa de material de construccin tiene vigas metlicas de 12,5 metros. Un da recibe
pedidos, que una vez acumulados generan la siguiente demanda en barras: 5 barras de 3 metros, 4
barras de 4 metros, 3 barras de 5 metros, 5 barras de 6,5 metros.
9.4.2

Preguntas

Defina un modelo que genere un plan de corte con el mnimo resto posible.
9.4.3

Resolucin Mediante Excel

DE ESTE PROBLEMA TENGO EXCEL


ADEMS SERA INTERESANTE PLANTEAR UN PROBLEMA SENCILLO QUE CONSIDERE
ALTERNATIVAS DE PRODUCCIN Y TRANSPORTE PARA RESOLVERLO MEDIANTE STROKE
9.4.4

Reflexiones sobre el problema

Los problemas de corte o de trim son un problema de los ms antiguos y ms presentes..

Pgina 128 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

9.5
9.5.1

Fijando el Precio para Maximizar Beneficio Equation Section (Next)


Enunciado

Una fbrica puede trabajar a 3 turnos, con unos costes fijos (en unidades monetarias) por turno de (1000,
500, 200) y unos costes variables (en unidades monetarias) diferentes en cada turno por unidad (20, 30, 40).
Las capacidades productivas (en unidades de producto) son tambin diferentes (100, 800, 700). el precio con
la cantidad puesta en el mercado segn una recta con los siguientes puntos extremos: si vende a 100 el
mercado demanda 1000 unidades pero si vende a 50 el mercado demanda 3000. Preguntas
a) a qu precio debe vender y cual ser el beneficio?
9.5.2

Reflexiones sobre el problema

Este es un problema de asignacin. Se trata de asignar cantidades demandadas en recursos


limitados.
b)

9.6
9.6.1

Plan de produccinEquation Section (Next)


Descripcin del problema

Sea una empresa que fabrica 3 tipos de productos. Para ello utiliza 2 tipos de mquinas (Mecanizado
y Acabado). Tiene 3 mquinas de Mecanizado y 2 de Acabado.
Cada centenar de producto A requiere 2 horas de Mecanizado y 2 horas de Acabado. Cada centenar
de producto B requiere 3 horas de Mecanizado y 2 horas de Acabado. Cada centenar de producto C
requiere 2 horas de Mecanizado y 3 horas de Acabado.
Adems para poner en marcha cada mquina hay que utilizar mano de obra, de la que disponemos 4
unidades por turno. Los costes de personal semanales se evalan en 3000. La semana laboral tiene
120 horas.
Las demandas estn limitadas en 5000 unidades de producto A y 4000 unidades de producto B y
5000 unidades de producto C.
Se plantean dos escenarios de precios por centenar de unidades que se presentan en la Tabla 9-1.
Tabla 9-1 Caractersticas de los escenarios planteados
Probabilidad

9.6.2

escenario 1
escenario 2

30%
70%

Precio
Venta A
50
10

Precio
Venta B
10
60

Precio
Venta C
40
30

Preguntas

a) Plantear el problema para el beneficio promedio esperado.


Pgina 129 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

b) Plantear el problema para maximizar el mnimo beneficio con programacin lineal.


c) Maximizar el beneficio por hora trabajada con programacin lineal.
d) Plantear el problema para maximizar el uso de la mano de obra, el beneficio promedio y el mnimo
beneficio.
e) Relajar la restriccin de mano de obra con el escenario 1 . El coste de la hora extra es de 5. No se
hacen horas extra en fin de semana.

f)

Imponer un consumo mnimo de 320 horas de mano de obra con el menor nmero de desigualdades
posible.

g) Plantear el dual del problema original.


h) Suponer que en el escenario 1 existe una relacin entre el precio y la cantidad vendida, de tal modo

que el producto entre la cantidad vendida y la raz cuadrada del precio de venta es constante e igual
a 63.

9.6.3

Modelado

a) Plantear el problema para el beneficio promedio esperado. (Resultado: Beneficio=5578)


Para el modelado, se usar la Tabla 9-2 para definir los ndices que se usarn, la Tabla 9-3 para
los diferentes parmetros y la Tabla 9-4 para las variables necesarias.
Tabla 9-2 ndices
= 1 3

ndice que recorre los tipos de productos

= 1 2

ndice que recorre los diferentes escenarios

= 1 2

ndice que recorre los tipos de maquinas

Tabla 9-3 Parmetros

Tiempo en horas de produccin de i en j ((2,2),(3,2),(2,1))

Nmero de mquinas de tipo j (3,2)

Precio unitario de venta del producto i en el escenario e : ((50,10,40),(10,60,30))

Probabilidad del escenario e (0.3,0,7)

Horas de personal necesarias para fabricar una unidad de i (4,5,3)

Demanda semanal para el producto i en centenares de unidades: (50,40,50)

Tabla 9-4 Variables

Pgina 130 de 171

Cantidad de producto i a fabricar cada semana

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

El modelo queda entonces de la forma siguiente:


2

[ Maximize]

pe vi,e X i

(10.7.1)

=e 1 =i 1

Sujeto a :
3

f
i =1

i,j

X i 120 n j

m X
i

i =1

(10.7.2)

1204

(10.7.3)

X i di i

(10.7.4)

X i 0 i

(10.7.5)

b) Plantear el problema para maximizar el mnimo beneficio manteniendo programacin lineal

La expresin del objetivo en formato no-lineal: [ Maximize ] min


e

i =1

i ,e

X i

Para plantear este objetivo de modo lineal es necesario crear una nueva variable Z que representar
dicho valor mnimo.

[ Maximize]

(10.7.6)

Sujeto a :
3

Z- vi ,e X i 0 e

(10.7.7)

i =1

(10.7.2)-(10.7.5)

c) Maximizar el beneficio por hora trabajada


La expresin del objetivo en formato no-lineal es la funcin (10.7.8).
2

pe vi,eX i

i 1
[ Maximize=
] e 1=
2

m X
i =1

(10.7.8)
i

Pgina 131 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

Para plantear este objetivo es necesario hacer una transformacin introduciendo las variables y ,

donde = . El modelo queda de este modo:


2

[ Maximize] pe vi ,e wi

(10.7.9)

=
e 1 =i 1

Sujeto a :
3

f
i =1

i,j

wi 120n j t 0

(10.7.10)

m w 480t 0

(10.7.11)

wi di t 0 i

(10.7.12)

wi 0 i

(10.7.13)

i =1

d) Plantear el problema para maximizar el uso de la mano de obra, el beneficio promedio y el mnimo
beneficio.
2

Maximizar el uso de mano de obra se puede representar as:

m X
i =1

. Los otros dos objetivos han

sido planteados en los apartados a) y b). Los 3 objetivos no pueden ser considerados simultneamente

e) Relajar la restriccin de mano de obra con el escenario 1 . El coste de la hora extra es de 5. No se


hacen horas extra en fin de semana.

[ Maximize] vi ,1 X i 5u

(10.7.14)

i =1

Sujeto a :
3

f
i =1

i,j

X i 120n j

m X
i =1

u 480

0 X i di i
f)

(10.7.15)

(10.7.16)

(10.7.17)

Imponer un consumo mnimo de 320 horas de mano de obra con el menor nmero de desigualdades
posibles.

Pgina 132 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

m X
i

+u =
480

(10.7.18)

u 120

9.7

(10.7.19)

LocalizacinEquation Section (Next)

9.7.1

Descripcin del problema

Dado un conjunto de ciudades, con un beneficio asociado de servirlas y un coste de implantar un centro de
servicio en cada una de ellas, y unidas mediante carreteras de diferente longitud grafo conexo). Asumiendo
que desde una ciudad se puede servir a otras ciudades si la distancia no es superior a un cierto valor.
9.7.2

Preguntas

a) Cmo cubrir todas las ciudades a mnimo coste?


b) Cmo obtener el mximo beneficio con coste limitado?
c) Cmo obtener mxima rentabilidad?
d) Cmo imponer que se debe implantar en A o en B?
e) Cmo imponer que se debe implantar en A y en B?
f)

Cmo imponer que si implantas en A debes hacerlo en B?

g) Cmo imponer que si implantas en A no debes hacerlo en B?


h) Cmo imponer que si implantas en A y en B debes hacerlo en C?

9.8
9.8.1

Problema de distribucinEquation Section (Next)


Descripcin del problema

Una empresa de fabricacin y distribucin distribuye a 5 zonas de clientes, a travs de 3 centros de


distribucin que se aprovisionan de 2 destileras, propiedad tambin de la misma empresa.
Se conocen los costes de servir a cada zona de clientes desde cada destilera a travs de cada
centro de distribucin. Cada zona de clientes tiene una demanda D que debe ser abastecida. Cada
destilera tiene una capacidad C de produccin limitada. Cada centro de distribucin tiene una
capacidad limitada tanto superior S como inferiormente I, y unos costes fijos F anuales y otros
relativos al volumen V que se mueve.
9.8.2

Preguntas

La empresa se plantea la poltica de mnimo coste para el nuevo ao, lo que podra implicar cerrar
algunos de los centros de distribucin.
a) Cmo modelara el problema?
b) Cmo incorporara la consideracin de diferentes productos en el mismo sistema logstico?

Pgina 133 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

c) Cmo definira un modelo que pretendiera minimizar la diferencia de uso de capacidad entre las
dos destileras, siempre que no se sobrepasaran los costes totales ptimos ms que en un 20%?
d) Cmo incorporara la posibilidad de servir directamente a las zonas de clientes desde las
destileras?
e) De los 3 centros de distribucin del modelo original slo pueden quedar 2. Modele la situacin.
f)

Se plantea hacer una inversin en el primer centro de distribucin, para ampliar su capacidad en
un 40%. Cmo evaluara las ventajas de invertir o no invertir?

g) Se va a hacer una inversin en algn centro de distribucin, para ampliar su capacidad en un


40%. Cmo evaluara en cul de ellos compensa invertir?
h) Se plantea hacer una inversin en el primer centro de distribucin, para ampliar su capacidad en
un 40%. Cmo evaluara las ventajas de invertir o no invertir?
i)

Se plantea abrir un nuevo centro de distribucin. Con unos costes de construccin, amortizables
en 5 aos, y unos costes de funcionamiento Fijos y Variables. Cmo plantear el problema para
saber si ser rentable y a quien afectar el cambio?

j)

Sobre el problema original se pretende maximizar el ratio de costes variables sobre fijos. Modele
el problema.

k) Sobre el problema original se pretende que la capacidad de la destilera primera pueda duplicar,
o triplicar su capacidad a diferentes costes. Modele el problema.
l)

La capacidad de la destilera 2 puede ser superada con un coste adicional por unidad vendida.

m) Los costes variables de trasiego en cada centro de distribucin, crecen proporcionalmente a la


raz cuadrada del volumen movido. Modele la situacin.

9.9

Vinos Don Pepn Equation Section (Next)

9.9.1

Enunciado

Don Pepn es la marca comercial de una empresa dedicada a la elaboracin de vinos, zumos y
licores. Cuando llega la poca de la vendimia, se debe decidir qu cantidad de 2 tipos bsicos de
uvas debe comprar.
La uva la utiliza para fermentarla, tras un proceso de mezcla directamente dando lugar a tres tipos
de vinos (Tinto, Rosado y Blanco). Tambin la puede utilizar para venderla como zumo de uva. Y
por ltimo la puede fermentar de un modo acelerado y tras destilarla obtener alcohol etlico y un
poso que se utiliza tambin para el zumo de uva.
Cada kilo de uva comprado da lugar a 0,80 litros de cualquiera de los lquidos finales.

Pgina 134 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

El vino Tinto debe tener un porcentaje mximo de 15% de uva de tipo 2. El vino Rosado debe tener
un porcentaje mximo de 35% de uva de tipo 2 y un porcentaje mnimo de 40% de uva de tipo 1. El
vino Blanco debe tener un porcentaje mximo de 15% de uva de tipo 1.
El zumo de uva se produce con un mnimo de un 70% en volumen de uva, el resto es agua. Aunque
no se debe incorporar ms de un 15% de poso de uva de tipo 1, o ms de un 30% de poso de uva
de tipo 2.
Por cada tonelada de uva de tipo 1 se generan 1,6 hectlitros de alcohol etlico y 2,4 hectlitros de
poso mediante la fermentacin acelerada, y por cada tonelada de uva de tipo 2 se generan 1,2
hectlitros de alcohol etlico y 2 hectlitros de poso. Adems la fermentacin acelerada genera 2,2
hectlitros de agua en el caso de la uva de tipo 1 y 3 en el caso de la uva de tipo 2
El precio en el mercado mayorista del vino tinto Don Pepn es de 1 el litro, el vino Rosado se
vende a 0,9 por litro, y el vino blanco a 0,8 por litro. El litro de zumo de uva est a 0,5 por litro.
Mientras que el alcohol etlico obtenido de la uva se vende a 1,2 por litro.
Los precios de compra actuales de cada tipo de uva son 60 los 100 kilos de tipo 1, y 50 los 100
kilos de uva de tipo 2.
9.9.2

Preguntas

Sean X1 y X2 las toneladas de uva de cada tipo que se compran. Sean VT, VR y VB los hectolitros
de cada tipo de vino que se venden. Sea Z los hectolitros de zumo e Y los hectolitros de alcohol
etlico.
a) Fija una funcin objetivo para un modelo que pretenda maximizar beneficios.
b) Fija las restricciones del modelo anterior.
c) Incorpora la restriccin de que la capacidad de fermentacin mxima de vino es de 5000
hectolitros.
d) Incorpora las restricciones financieras segn las cuales no es posible adquirir ms 600 000 de
uva en esta temporada.
e) Suponga que algunas limitaciones del mercado imponen que al menos un 20% del Vino total
producido debe ser Vino Tinto, al menos un 30% debe ser Vino Rosado, y al menos un 20% debe
ser Vino Blanco. Incorpralo al modelo.
f) La empresa ha decidido hacer zumo 100% natural, para ello se utilizar el agua que resulta de la
fermentacin y nada de agua externa. Considralo en el modelo.
g) Con la capacidad propia anterior, se podran alquilar unas cubas de fermentacin con un coste
fijo de 100 y un coste variable por hectolitro de 10. Cmo incorporar esta condicin?
h) Cmo incorporara la condicin de que o bien se compra uva de tipo 1 o se compra uva de tipo
2, pero no las dos simultneamente?

Pgina 135 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

Sobre el modelo realizado hasta la pregunta e) se resuelve mediante la Excel con la siguiente tabla

Ilustracin 9-3 Plantilla Excel para la resolucin del problema


Posteriormente se realiza un anlisis de sensibilidad con los siguientes resultados para las
variables.

Ilustracin 9-4 Resultados del anlisis de sensibilidad despus de la ejecucin del solver
Y el mismo anlisis da los siguientes resultados para las restricciones:

Pgina 136 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

Ilustracin 9-5 Resultados del anlisis de las diferentes restricciones despus de la ejecucin
del solver
i) A partir de los datos anteriores se observa que la solucin tiende a generar tanto vino tinto como
sea posible. Cul es el precio mnimo que habra que ponerle al vino rosado para que fuera la
opcin prioritaria?
j) Qu precio debiera tener el alcohol etlico para que lo tuviramos en cuenta en nuestras
opciones de produccin?
k) Cunto debiera pagar como mximo por una capacidad de fermentacin de un hectolitro de vino
ms?
l) Cuntos litros de agua est aadiendo al zumo? Atendiendo a la pregunta f. En qu cree que
cambiarn los resultados cuando el zumo sea 100% natural?

9.9.3

Resolucin

a) La funcin objetivo es la siguiente:


100VT + 90VR + 80VB + 50Z +120Y 600X1 500X2
b) Hacen falta las siguientes variables:
X1VT

Cantidad de uva 1 en toneladas dedicada a hacer vino tinto

X2VT

Cantidad de uva 2 en toneladas dedicada a hacer vino tinto

X1VR

Cantidad de uva 1 en toneladas dedicada a hacer vino rosado

X2VR

Cantidad de uva 2 en toneladas dedicada a hacer vino rosado

X1VB

Cantidad de uva 1 en toneladas dedicada a hacer vino blanco

X2VB

Cantidad de uva 2 en toneladas dedicada a hacer vino blanco

Pgina 137 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

X1Z

Cantidad de uva 1 en toneladas dedicada a hacer zumo

X2Z

Cantidad de uva 2 en toneladas dedicada a hacer zumo

X1FA

Cantidad de uva 1 en toneladas dedicada a fermentar de modo acelerado

X2FA

Cantidad de uva 2 en toneladas dedicada a fermentar de modo acelerado

P1

Poso obtenido de uva 1 tras la Fermentacin acelerada en hectolitros

P2

Poso obtenido de uva 2 tras la Fermentacin acelerada en hectolitros

P1Z

Poso obtenido de uva 1 en hectolitros que se dedica al zumo

P2Z

Poso obtenido de uva 2 en hectolitros que se dedica al zumo

Restricciones
La uva de tipo 1 que compramos es la que utilizamos (idem para 2)
X1=X1VT+X1VR+X1VB+X1Z+X1FA

(R.1)

X2=X2VT+X2VR+X2VB+X2Z+X2FA

(R.2)

El vino que fermentamos depende de la uva que dedicamos a ello


VT = 8(X1VT+X2VT)

(R.3)

VR = 8(X1VR+X2VR)

(R.4)

VB = 8(X1VB+X2VB)

(R.5)

0,15VT 8 X2VT

(R.6)

0,35VR 8 X2VR

(R.7)

0,40VR 8 X1VR

(R.8)

0,15VB 8 X1VT

(R.9)

Calidades del vino:

El alcohol etlico que se fabrica es:


Y = 1,6X1FA + 1,2X2FA

(R.10)

El mismo proceso genera poso:

Pgina 138 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

P1 = 2,4X1FA

(R.11)

P2 = 2X2FA

(R.12)

El zumo se obtiene de la uva y del poso que dedicamos a zumo (ms el agua que aadimos)
Z 8(X1Z+X2Z) + P1Z + P2Z

(R.13)

0,7Z 8(X1Z+X2Z) + P1Z + P2Z

(R.14)

0,15Z P1Z

(R.15)

P1Z P1

(R.16)

P2Z P2

(R.17)

c) La limitacin de capacidad se expresa del siguiente modo:


VT + VR + VB 5000

(R.18)

d) La restriccin financiera se expresa del siguiente modo:

600 X1+500 X2 600000

(R.19)

e) Las restricciones que impone el mercado respecto a las cantidades de vino se representan del
siguiente modo:
0,2(VT+VR+VB) VT

(R.20)

0,3(VT+VR+VB) VR

(R.21)

0,2(VT+VR+VB) VB

(R.22)

f) Se puede incorporar en la restriccin (R.13) un sumando relativo al agua y sustituir la relacin de


desigualdad por una igualdad. Una variable A que es el agua obtenida de la fermentacin
Z = 4X1FA + 3,2X2FA + 8(X1Z+X2Z) + P1Z + P2Z

(R.13b)

g) Funcin objetivo:
100VT + 90VR + 80VB + 50Z +120Y 600X1 500X2 100 -10u

Pgina 139 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

todas las restricciones igual y adems:


VT + VR + VB u 5000
u-M 0

h) Para incorporar la condicin de que o bien se compra uva de tipo 1 o se compra uva de tipo 2,
pero no las dos simultneamente, se tiene que introducir las restricciones siguientes:
X1-M1 0
X2-M2 0
1 + 2 1

i) A partir de los datos anteriores se observa que la solucin tiende a generar tanto vino tinto como
sea posible. Cul es el precio mnimo que habra que ponerle al vino rosado para que fuera la
opcin prioritaria?
97,15 por hectolitro.
j) Qu precio debiera tener el alcohol etlico para que lo tuviramos en cuenta en nuestras
opciones de produccin?
Al menos 321 por hectolitro.
k) Cunto debiera pagar como mximo por una capacidad de fermentacin de un hectolitro de vino
ms?
13,5 por cada hectolitro de fermentacin.
l) Cuntos litros de agua est aadiendo al zumo? Atendiendo a la pregunta f. en qu cree que
cambiarn los resultados cuando el zumo sea 100% natural?
1697 hectolitros de agua. Actualmente no se produce ningn litro por fermentacin acelerada,
luego la generacin de zumo 100% natural obligar a vender alcohol etlico, lo que reducir la
rentabilidad del zumo. Teniendo en cuenta que el zumo tiene un margen de variabilidad escaso
en el precio, y sin embargo el alcohol etlico requiere un gran incremento de precio para ser
rentable, se puede admitir casi sin hacer ms pruebas, que el resultado ser que Don Pepn
abandonar el mercado de los zumos, salvo que suba sustancialmente el precio de stos.

Pgina 140 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

9.10 Plan de produccin de zapatillasEquation Section (Next)


9.10.1 Descripcin del problema
//Este caso no est resuelto
Una empresa fabricante de zapatillas estima la siguiente demanda (en centenares de pares) para los
prximos 6 meses.
Cantidad

Mes 1
30

Mes 2
40

Mes 3
55

Mes 4
30

Mes 5
70

Mes 6
35

Los costes de produccin de cada par se evalan en 2 si se producen en horas normales, y 3 si se


produce en horas extras. El nmero de horas normales disponibles por da es de 8 horas. El nmero
de das laborables es variable para cada mes. Adems cada mes se puede trabajar un mximo de 40
horas extra. Durante cada hora de produccin es posible fabricar 25 pares de zapatillas. El coste de
almacenar un par de zapatillas de un mes para otro es de 0.1 por par. Se dispone de 200 pares en
stock en estos momentos.
9.10.2 Preguntas
a) Establecer el modelo que permite definir el plan de trabajo para los prximos meses a mnimo coste.
b) Suponga que tiene un compromiso con los trabajadores de utilizar cada dos meses al menos un
25% de la capacidad en horas extra actual.
c) Cmo limitar la capacidad del almacn?
d) Suponga que el objetivo sea minimizar el mximo stock entre periodos.
e) Suponga que el objetivo es minimizar las diferencias de produccin entre un mes y el siguiente: para
cualquier mes.
f)

Cmo modelara que se pretende minimizar la mxima desviacin entre la produccin y la


demanda?

g) Cmo hara periodos de duracin variable? Por ejemplo la consideracin de meses de diferente
cantidad de das.
h) Cmo incorporara diferentes tipos de zapatillas en el modelo, para poder hacer un plan conjunto?
i)

Suponiendo h) Cmo incorporara un precio fijo a fabricar de un tipo o de otro en cada periodo de
tiempo? Bsicamente es como un coste de cambio de partida, si se fabrica el tipo A, se paga una
penalizacin dependiente de A.

j)

Cmo limitara los tipos de productos a fabricar en cada periodo de tiempo?

k) Sobre el modelo original podra incorporar una lista de materiales del producto a fabricar, para
establecer sus planes de compra? Suponga un plazo de entrega de un mes para cada componente.

Pgina 141 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

l)

Plantear el dual del problema original.

9.11 Gestin de stocksEquation Section (Next)


9.11.1 Enunciado
Trabaja usted en una empresa cuya actividad bsica es la compra-venta de material electrnico. La
empresa ha decidido implantar un sistema de gestin de stocks informatizado, que decida cunto y
cundo comprar.
Ha quedado usted encargado de ello, entre otros motivos, por no asistir a la reunin donde se trat el
tema. Sus compaeros insisten en que el marrn no le cay por no estar presente, sino porque usted es
el ms capacitado para sacarlo adelante.
Tras analizar los productos con los que trabaja (demandas variables, precios variables, costes de
almacenamiento variables, etctera) decide que no puede aplicar mtodos de punto de pedido o de
aprovisionamiento peridico.
Para desarrollar un sistema informtico, usted pretende plantear un modelo matemtico y
posteriormente resolver con herramientas de las que existen en la red.
La empresa compra y vende un solo producto 9 de un proveedor taiwans. El tipo de entrega es en
bodegas del cliente, esto es, usted paga un precio de compra (PC) por el producto (que es variable para
los distintos periodos de tiempo) y el proveedor se hace cargo de todo el transporte, aduanas y dems
gastos asociados.
El plazo de entrega desde que se lanza el pedido es de 4 semanas. Y al cliente se le paga 4
semanas despus de haber recibido el producto.
Los costes de almacenamiento fsico (H) son conocidos aunque varan segn el periodo. El dato
viene en unidades monetarias por unidad de producto almacenado y por periodo de previsin.
La demanda (D) de nuestro producto vara con los periodos, aunque su variabilidad es conocida con
un margen de error pequeo. El precio de venta es conocido y variable por periodo (PV). La empresa
suele cobrar 3 semanas despus de haber producido la venta.
El saldo negativo del flujo de caja (diferencia entre cobros y pagos) tiene un coste financiero (CF), del
mismo modo que el saldo positivo lleva asociado un coste de oportunidad (CO). Adems no es posible
sobrepasar el saldo negativo en ms de una cierta cantidad lmite (LN). La empresa, como cualquier
empresa seria, tiene una previsin de pagos (PP), que es variable segn los periodos. Esta previsin
incluye los gastos como nminas, beneficios, energa, alquileres pero excluye los gastos de adquisicin
de materiales (porque de esto se encarga su programa informtico).

Evidentemente esto es una simplificacin para empezar.

Pgina 142 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

Como es evidente, el objetivo de la empresa es ganar la mxima cantidad de dinero posible 10. Los
periodos de previsin que usted considera son semanas. Y el horizonte de planificacin es de 26
semanas.
9.11.2 Preguntas
a) Plantee el modelo matemtico. Si requiere incorporar variables y/o parmetros no dude en
hacerlo. Se considerar que indique y explique los ndices, parmetros y variables que va a
utilizar. Se considerar que explique cada restriccin. Se agradecer que utilice maysculas para
los parmetros y minsculas para las variables, asimismo ser agradecido el uso de los
parmetros ya indicados en negrita.
b) Cmo se modifica el modelo si hubiera ms de un producto que se recibe del mismo
proveedor? Construya el modelo.
c) Suponga que si en un periodo se produce compra de alguno de los productos hay que pagar un
coste fijo (SU) por transporte. Modele la situacin.
d) Suponga que puede diferir demanda de un periodo a otro con un coste suplementario (Ki,t) por
unidad diferida por periodo. El ingreso que se producir ser acorde al precio de venta en la
semana en que el cliente quera adquirir el producto.
e) Suponga que hay descuentos por cantidad para cada producto, de tal modo que los precios de
compra por unidad son los siguientes:

Ai si la cantidad a comprar es menor que 100


B si la cantidad a comprar esta en [100,500[
i
PCi =
Ci si la cantidad a comprar esta en [500,1000[
Di si la cantidad a comprar es mayor que 1000
Modele la situacin, respetando la linealidad del modelo.
f)

Un gran distribuidor le ofrece un contrato de compra garantizada para el prximo ao de (CGt)


unidades de uno de los productos en cada uno de los periodos. Sus condiciones son:
a.

que el precio por el que el distribuidor compra ha de ser un 25% inferior a nuestro precio

de venta habitual y
b.

los plazos de pago son de 9 semanas desde que el distribuidor adquiere el producto.

Sus estimaciones indican que de aceptar el trato este distribuidor se har con el 10% de su
demanda habitual estimada, que le comprar a l en lugar de a usted. Si no aceptase la oferta
sabe que perder un 5% de las ventas. Modele la situacin.

10

Hay que recordar que en contabilidad se aplica el concepto del devengo, que distingue el cobro del

ingreso, y los gastos de los pagos. Para saber cunto dinero gana una empresa nos fijamos en lo que
ingresa y lo que gasta. Para conocer el flujo de caja nos fijamos en lo que cobra y lo que paga.

Pgina 143 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

9.11.3 Resolucin

a) Plantee el modelo matemtico.


Tabla 9-5 ndices

ndice temporal

Tabla 9-6 Parmetros

Precio de venta en el periodo t

Coste de almacenar una unidad en el periodo t

Precio de compra en el periodo t

Precio pagado en el periodo t por una unidad monetaria dispuesta de la lnea de crdito que

Coste de oportunidad en el periodo t de una unidad monetaria

Pagos Previstos en el periodo t

financia el flujo de caja.

Demanda prevista en el periodo t

Lmite de la lnea de crdito.

Tabla 9-7 Variables


+

Cantidad vendida en el periodo t

Cantidad en inventario al final del periodo t

Flujo de caja negativo en el periodo t

Cantidad comprada en el periodo t

Flujo de caja en el periodo t

Flujo de caja positivo en el periodo t

El modelo queda en:

[ Maximize] PVt xt ( PCt yt + H t zt + CFt wt + COt vt )


t

(10.12.1)

Sujeto a :

xt Dt

Pgina 144 de 171

t=1..26

(10.12.2)

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

zt = zt 1 + yt 4 xt

t=1..26

ft = ft 1 PCt 8 yt 8 + PVt 3 xt 3 PPt


wt ft
vt ft

(10.12.3)

t=1..26

(10.12.4)

t=1..26

(10.12.5)

t=1..26

wt LN

(10.12.6)

t=1..26

(10.12.7)

Post Data: Cuando una variable tenga un ndice negativo, se asumir que el valor correspondiente es
resultado de una programacin anterior y por tanto, no es una variable sino un parmetro.

b) Cmo se modifica el modelo si hubiera ms de un producto que se recibe del mismo proveedor?
Construya el modelo.
Se incorpora un nuevo ndice i a todos los parmetros y variables que tengan que ver con los
productos. Sean P los productos que se compran del mismo proveedor.

[ Maximize] PVit xit ( PCit yit + H it zit + CFt wt + COt vt ) (10.12.8)


i

Sujeto a :

xit Dit i=1...P, t=1..26


zit = zi ,t 1 + yi ,t 4 xi ,t

i=1...P, t=1..26

ft = ft 1 PCi ,t 8 yi ,t 8 + PVi ,t 3 xi ,t 3 PPt


i

(10.12.9)
(10.12.10)

i=1...P, t=1..26 (10.12.11)

wt ft

vt ft
wt LN

t=1..26

t=1..26
t=1..26

(10.12.12)
(10.12.13)
(10.12.14)

Post Data: Cuando una variable tenga un ndice negativo, se asumir que el valor correspondiente es
resultado de una programacin anterior y por tanto, no es una variable sino un parmetro.

9.12 Equilibrado de lneasEquation Section (Next)


Se tiene un conjunto de tareas, cada una con una duracin y un conjunto de precedencias.
a) Dado un tiempo de ciclo. Establecer una asignacin que utilice el mnimo nmero de estaciones.
b) Cmo conseguir adems el mnimo desequilibrio de carga entre estaciones?
Pgina 145 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

c) Dado el nmero de estaciones, conseguir la asignacin de mnimo tiempo de ciclo.


d) Cmo obligar a que dos tareas determinadas estn separadas?
e) Cmo obligar a que dos tareas determinadas estn juntas?

9.13 Jorge y NuriaEquation Section (Next)


9.13.1 Enunciado
Jorge y Nuria se quieren casar. Ella de blanco por la alegra y l de negro. Entre otros quebraderos de
cabeza que les harn perder unas cuantas horas de aqu al da de la boda, no es el menor la tarea de
asignar los invitados a las mesas. Inicialmente Jorge y Nuria queran una boda ntima, como todos,
aunque ahora ya suman alrededor de 250 invitados.
Dicho reparto de invitados es una de las actividades ms tediosas de las que se encontrarn: El to tal no
se puede sentar con su concuado porque se llevan a muerte, dos invitados excusan en el ltimo
momento su asistencia...
Tienen un amigo, usted, gran experto en diseo de modelos e implementaciones informticas, que les va
a echar una mano, construyendo una aplicacin que permitir hacer y rehacer, modificar, imprimir las
listas, etctera.
Para ello considera que uno de los conjuntos de datos (en el modelo debe constituir uno de los ndices) a
considerar son las agrupaciones mnimas (individuos, matrimonios, parejas, tros y otras agrupaciones
de invitados). Estas agrupaciones mnimas son grupitos de invitados que no se pueden separar, por
razones ms o menos obvias.
Otro de los conjuntos de datos a considerar son las mesas. Cada una de ellas tiene una capacidad
diferente (entre 8 y 12 comensales cada una).
9.13.2 Preguntas
a) Plantee un modelo donde se pretenda minimizar el nmero de mesas a utilizar.
b) Plantee una restriccin que evite que dos cuados que se llevan mal se sienten en la misma
mesa.
c) Suponga que el nmero de mesas mximo viene fijado por la capacidad del saln. Suponga que
entre cada agrupacin mnima de invitados existe una relacin de afinidad (que los novios
valorarn numricamente). Plantee un modelo que persiga maximizar la suma de afinidades en
las mesas. Es decir, la afinidad entre dos agrupaciones mnimas se suma si pertenecen a la
misma mesa. Ser interesante en este apartado incorporar una variable binaria que indique si
cada par de agrupaciones mnimas est en una misma mesa.
d) En el caso anterior cmo penalizara que una agrupacin mnima se quedara aislada en una
mesa sin conocidos?
9.13.3 Resolucin
a) Plantee un modelo donde se pretenda minimizar el nmero de mesas a utilizar.

Pgina 146 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

ndices

ndice que recorre las agrupaciones mnimas

ndice que recorre las mesas disponibles

Parmetros

Nmero de individuos en la agrupacin i

Vale 1 si la mesa k se utiliza (0 en caso contrario)

Capacidad de sillas en la mesa k

Variables

Vale 1 si la agrupacin i se sienta en la mesa k (0 en caso contrario)

[ Minimize] k

(10.14.1)

Sujeto a :

N
i

i ,k

M k k

(10.14.2)

k {0,1} k

(10.14.3)

i ,k {0,1} i, k

(10.14.4)

=
i ,k

1 i

(10.14.5)

En realidad la cuarta restriccin no es necesaria pero no est de ms para ponerlo

b) Plantee una restriccin que evite que dos cuados que se llevan mal se sienten en la misma
mesa.

Sean i1 y i2 las agrupaciones correspondientes a los cuados que se llevan mal


i1,k + i 2,k 1 k

(10.14.6)

c) Suponga que el nmero de mesas mximo viene fijado por la capacidad del saln. Suponga que
entre cada agrupacin mnima de invitados existe una relacin de afinidad (que los novios
valorarn numricamente). Plantee un modelo que persiga maximizar la suma de afinidades en
las mesas. Es decir, la afinidad entre dos agrupaciones mnimas se suma si pertenecen a la
misma mesa. Ser interesante en este apartado incorporar una variable binaria que indique si
cada par de agrupaciones mnimas est en una misma mesa.

ndices
,

ndice que recorre las agrupaciones mnimas

Pgina 147 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

ndice que recorre las mesas disponibles

Parmetros

Nmero de individuos en la agrupacin i


Capacidad de sillas en la mesa k
Nmero de mesas mximo

Valor del ndice de afinidad entre la agrupacin i y j

,,

Vale 1 si la mesa k se utiliza (0 en caso contrario)

Variables

Vale 1 si la agrupacin i se sienta en la mesa k (0 en caso contrario)

Vale 1 si la agrupacin i y la agrupacin j comparten la mesa k (0 en caso contrario)

[ Maximize] Cij ijk

(10.14.7)

ik + jk 2 ijk 0 i, j , k

(10.14.8)

Sujeto a :

N
i

M k k

ik

(10.14.9)

1 i

(10.14.10)

MMax

(10.14.11)

k {0,1} k

(10.14.12)

i ,k {0,1} i, k

(10.14.13)

i ,k

d) En el caso anterior cmo penalizara que una agrupacin mnima se quedara aislada en una
mesa sin conocidos?
Sea i la agrupacin que no queremos dejar aislada.
Sea una nueva variable binaria que vale 1 si en la mesa donde se sienta i no hay nadie conocido.

Se asumen que los coeficientes de afinidad solo pueden ser positivos. La relacin lgica que se debe

modelar es la relacin (10.14.14). La forma lineal para representar esta relacin lgica es la restriccin
(10.14.15).

ij

Pgina 148 de 171

ijk =0 i =1

(10.14.14)

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

i , j i , j ,k

+ 0

(10.14.15)

j ,k

En la funcin objetivo, se ha de incorporar el sumatorio para penalizar estas agrupaciones aisladas.


Para esto, se ha de considerar un parmetro , factor de penalizacin y se obtiene entonces la
formulacin (10.14.16) de la funcin objetivo.

[ Maximize] Cij ijk P i


i

(10.14.16)

9.14 Operacin BriscaEquation Section (Next)


9.14.1 Descripcin del problema
Usted trabaja en una multinacional del sector audiovisual y ltimamente le estn pidiendo que haga
recopilatorios de canciones de cantantes de ayer y siempre. Estos recopilatorios se graban en CDs
para vender a travs de Teletiendas. Bsicamente el problema consiste en definir un conjunto de
canciones que quepan en el CD, utilizando al mximo el espacio disponible y que las diferentes pocas
del autor estn reflejadas. ltimamente est un poco harto del trabajo, en el que su criterio artstico (su
famoso odo musical) no sale demasiado bien parado. Est pensando en hacer un pequeo programa
(software) basado en programacin lineal que haga automticamente las recopilaciones.
9.14.2 Preguntas
Para ello parte de los siguientes ndices, datos y variables:
ndices

Recorre las
pocas del

Datos

Capacidad
del soporte

autor

Recorre las
canciones de

Variables
, Variable binaria que vale 1 si la cancin j de la
poca i se incorpora en el soporte, 0 en caso
contrario

cada poca

Duracin de
la cancin j
de la poca i

a) Defina la funcin objetivo.


b) Defina la restriccin de que las canciones seleccionadas deben caber en el soporte.
c) Si se fija un nmero mnimo de canciones de cada poca cmo incorporara esta restriccin?
d) Cmo minimizara la diferencia entre el mximo y el mnimo nmero de canciones de cada
poca que ha puesto?
e) Desde c) Suponga que le piden que disee, con las mismas canciones, adems, una cinta de
audio para la venta en gasolineras (con dos caras de igual capacidad Ca). Disee el modelo
entero incorporando lo que considere conveniente.
Pgina 149 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

f)

Desde c) Determinadas canciones no pueden entrar simultneamente en el mismo CD por


razones de copyright. Sean stas la cancin 3 de la poca 1 y la cancin 8 de la poca 3.

g) Desde c) Por razones sentimentales le indican que la cancin 4 de la poca 2 y la cancin 3 de


la poca 5 entran las dos o no entra ninguna.
h) Desde c) Suponga que pretende dotar de una cierta calidad al sistema. Para ello punta las
diferentes canciones y pretende que la calidad del CD sea lo mxima posible. Modele la nueva
funcin objetivo.
i)

Desde h) La productora le comenta que lo de la calidad est muy bien, pero que las buenas
canciones valen ms dinero. Plantee el objetivo lineal (as como las restricciones asociadas)
que permiten maximizar el ratio calidad/precio.

9.14.3 Resolucin
b) Defina la funcin objetivo

[ Maximize] dij X ij
i

(10.15.1)

c) Defina la restriccin de que las canciones seleccionadas deben caber en el soporte.

d X
ij

ij

(10.15.2)

d) Si fijamos un nmero mnimo de canciones de cada poca cmo incorporara esta restriccin?
Sea el nmero mnimo de canciones para cada poca. La restriccin sera la siguiente:

ij

Nj

(10.15.3)

e) Cmo minimizara la diferencia entre el mximo y el mnimo nmero de canciones de cada


poca que ha puesto?
Se define una variable Y que ser el mximo, y una variable Z que ser el mnimo entonces.

[ Minimize]

Y Z

(10.15.4)

Y X ij 0 i

(10.15.5)

(10.15.6)

Sujeto a :

ij

Z 0 i

d X
ij

ij

C i

(10.15.7)

Pgina 150 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

Nj

ij

(10.15.8)

f)

Desde c) Suponga que le piden que disee, con las mismas canciones, adems, una cinta de
audio para la venta en gasolineras (con dos caras de igual capacidad Ca). Disee el modelo
entero incorporando lo que considere conveniente.

Habra que cambiar las variables para que indiquen en que cara va cada cancin.
Definimos

X i , j ,k

como una variable binaria que indica que la cancin i de la poca j va en la cara k

[ Maximize] dij X ijk


i

(10.15.9)

Sujeto a :

d X
ij

ijk

C i

(10.15.10)

d X

ij ,1

Ca i

(10.15.11)

d X

ij ,2

Ca i

(10.15.12)

ij

ij

ijk

1 i, j

(10.15.13)

Nj

(10.15.14)

ij

g)

Desde c) Determinadas canciones no pueden entrar simultneamente en el mismo CD por


razones de copyright. Sean stas la cancin 3 de la poca 1 y la cancin 8 de la poca 3.

X 1,3 + X 3,8 1

(10.15.15)

h) Desde c) Por razones sentimentales le indican que la cancin 4 de la poca 2 y la cancin 3 de


la poca 5 entran las dos o no entra ninguna.

X 2,4 X 5,3 =
0
i)

(10.15.16)

Desde c) Suponga que pretende dotar de una cierta calidad al sistema. Para ello punta las
diferentes canciones y pretende que la calidad del CD sea lo mxima posible. Modele la nueva
funcin objetivo

Definimos el parmetro , que indica la calidad de la cancin (, ).

La nueva funcin objetivo es:

Pgina 151 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

[ Maximize] aij X ij
i

j)

(10.15.17)

Desde h) La productora le comenta que lo de la calidad est muy bien, pero que las buenas
canciones valen ms dinero. Plantee el objetivo lineal (as como las restricciones asociadas)
que permiten maximizar el ratio calidad/precio.

Definimos el parmetro , que indica el precio de la cancin (, ).

La nueva funcin objetivo es:

a X
[ Maximize]
b X
i

ij

ij

ij

ij

(10.15.18)

Para linealizar se define la variable , .

[ Maximize] aij wij


i

(10.15.19)

Sujeto a :

b w
ij

ij

=1

(10.15.20)

d w
ij

ij

Ct 0 i

(10.15.21)

ij

N j t 0 i

(10.15.22)

Pgina 152 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

10 CASOSEQUATION CHAPTER (NEXT) SECTION 1


10.1 La Ruta de llanesEquation Section (Next)
En Arriondas (Asturias) usted tiene una de sus plantas envasadoras la Central Lechera Carrete.
Esta central lechera, recoge leche de vaqueras situadas en distintas comarcas Asturianas y de las
comunidades colindantes de la cornisa cantbrica espaola.
El sistema de recogida de leche hace tiempo que fue diseado, y aunque ha habido variaciones
importantes en las caractersticas de la recogida, hace tiempo que no se redisea todo el proceso, sino
que se hacen pequeos ajustes. La direccin pretende comprobar si compensara hacer un estudio
global, y para ello les requieren que analicen el proceso de recogida en la comarca de Llanes. Algunos
datos relevantes son los siguientes:
1) La capacidad de los camiones que gasta nuestra empresa es de 20.000 litros.
2) La leche se guarda en enfriadoras durante un mximo de 2 das.
3) Cada vaquera tiene una capacidad productiva distinta.
4) Los costes de transporte se evalan a razn de 50 pesetas el kilmetro realizado, aunque en
realidad es un poco ms caro ir cargado que de vaco.
5) La jornada laboral de cada transportista se considera de 40 horas semanales (con un margen en
negro mximo de 15 horas).
6) Cada carga tiene un tiempo fijo de 15 minutos y una velocidad de carga de 200 litros por minuto.
7) Las velocidades de desplazamiento son de 60 kilmetros/hora por la N-634, 45 kilmetros/hora
por la AS-114 y AS-115, y 35 kilmetros por hora en el resto de carreteras.
8) Por algunas carreteras la pendiente es tan acusada que no se puede descender con el camin
cargado con ms de 5000 litros, ests son:
a) La AS-340 en sentido Riensena-Nueva
b) La LLN14 Riensena-Palacio Mer en ese sentido
c) La LLN-7 Palacio Mer-La Pereda en ese sentido
Las vaqueras con las que se tiene concierto estn en los siguientes pueblos (se incorpora adems la
capacidad de su enfriadora medida en litros, y su produccin tambin medida en litros):

Nombre Pueblo
Cangas de Ons

Enfriadora
15.000

Produccin
6000

Pgina 153 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

2
3
4
5
6
7
8
9
10
11
12
13
14
15

Ons
Riensena
La Pereda
Arenas de Cabrales
Arangas
Panes
Noriega
Colombres
Cien
Carrea
Arrobio
Nava
Tazones
Tres Cares

10.000
10.000
10.000
10.000
20.000
15.000
10.000
10.000
10000
10000
10000
10000
10000
10000

7000
4000
7000
3000
4000
6000
6000
3000
7000
5000
4000
5000
4000
3000

10.2 Planificar la produccin para una red de EmpresasEquation Section (Next)


Sea una empresa que vende tres productos (A,H,J) a dos cliente distintos.
El producto A se vende en dos formatos diferentes: en cajas de cartn desechables (U) de 50
unidades y en cajas retornables (V) de 100 unidades. El cliente consume dicho producto A en formato
de cajas desechables mientras que el cliente , consume el producto en cajas retornables de 100
unidades. El producto se puede cambiar de embalaje en nuestra instalaciones. Las cajas desechables
no se pueden volver a utilizar mientras que los racks retornables s.
El producto A se realiza a partir de la soldadura de los componentes B,C y D (de este ltimo hacen
falta 2 unidades).
El componente B se obtiene de la estampacin de acero que viene en forma de bobina y de nombre
E. De la estampacin de una bobina de B se obtienen 5000 unidades de B que se guardan en cajas
paleta (W) con una capacidad de 250 cada una.
De la misma bobina E, utilizando matrices un poco diferente se pueden obtener 2500 piezas B y 2500
piezas C. Caben 500 piezas C en cada caja-paleta(W).
De una cierta bobina F se obtienen 2000 unidades de D. Lamentablemente el proceso de fabricacin
no es capaz y genera un 25% de piezas de inferior calidad que se denominan D. Dicho componente D
no se puede utilizar en la fabricacin del producto A. Caben 250 unidades de D en cada paleta(W).
Mediante la soldadura de una unidad de B, otra de G y otra de D se puede producir el producto H. Si
utilizamos el componente D se obtiene el producto H. El componente G se compra directamente y slo
lo puede comprar la planta principal (pi)
El producto H se vende en cajas desechables (U) a ambos clientes con capacidad de 125 unidades
cada uno. Pero as como al cliente se le puede vender H o H indistintamente, el cliente slo acepta
producto H.

Pgina 154 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

El producto J se fabrica a partir de la soldadura de componentes D o D con componente G. No existe


diferencia si se realiza con un componente u otro. Se vende en cajas retornables (V) con capacidad para
50 unidades.
La empresa cuenta con una instalacin de estampacin y con otra de soldadura. Como la capacidad
de soldadura es menor que la capacidad necesaria, tienen un subcontratista en otras instalaciones con
capacidad de soldar.
A los clientes se les puede enviar el producto tanto desde el almacn principal de la empresa como
desde el subcontratista. Tanto para uno como para el otro hay disponibles dos modos de transporte uno
rpido y otro lento con diferentes costes.
Existe un modo de transporte de dos sentidos entre nuestra empresa y el subcontratista. Los
embalajes retornables pueden volver a nuestras instalaciones desde los clientes a un determinado
coste, o pueden ser adquiridos a otro coste.
Conoce su demanda para las prximas 3 semanas da a da.

10.3 Red de metro de ValenciaEquation Section (Next)


Trabaja usted en una consultora que ha sido contratada por la empresa FGV para realizar un
programa que permita calcular el tiempo que se tarda en llegar entre dos paradas cualesquiera de la red
de Metro Valencia.
Una vez desarrollada la herramienta les solicitan que hagan una exploracin acerca de una nueva
lnea que se est planteando.

Pgina 155 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

A
J

C
I
D

G
E
F

Dicha lnea sera una nueva lnea de tranva que se engarzara con la actual en las paradas de
Empalme y La Carrasca, tal y como se muestra en el plano adjunto. Dicha lnea tendra un punto medio
en la parada de Jess, donde se cruzara con las Lneas 1 y 3, y con la Lnea 5 en la Parada de Manuel
Candela.
Los promotores de tan magno proyecto piensan que esta lnea, adems de aumentar la cantidad de
poblacin que puede tener contacto con la Red de Metro, aumentar la conectividad entre las distintas
estaciones de la Red de Metro Valencia.
Otra interesante cuestin es saber si realmente es necesario cerrar la lnea circular del Tranva, para
aumentar la conectividad o sobrara con fragmentos de la misma (por ejemplo de La Carrasca a Jess).

Pgina 156 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

10.4 Rutas de distribucinEquation Section (Next)


Una empresa de fabricacin de cartones (cajas fundamentalmente) radicada en Alzira debe servir
entre 4 y 7 camiones diarios a ms de una veintena de clientes. Estn interesados en una herramienta
que permita definir la carga de los camiones teniendo en cuenta que estos tienen una limitacin de
capacidad de 33 paletas cada uno.
PUEBLOS
Alborache

Lote de Paletas
6

Alccer

Algemes

Almoines

12

Benifai

Benignim

Carcaixent

Carlet

Villanueva de Castelln

Chiva

Denia

LAlcdia de Carlet

LOlleria

12

Llombai

Ontinyent

12

Silla

Sueca

12

Tavernes de la Valldigna

Xtiva

12

Se asume que en cargar un camin se tarda alrededor de 45 minutos, la descarga en cada empresa
cliente cuesta alrededor de 30 minutos de media. Se asume que ningn conductor debe dedicar ms de
8 horas diarias a conducir ni ms de 12 horas en total. Cada kilmetro cuesta 30 cntimos de Euro.

Pgina 157 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

10.5 Fabricacin de zapatillasEquation Section (Next)


Una empresa fabricante de zapatillas deportivas, localizada en Picasent, estima la siguiente
demanda (en miles de pares) para los prximos 6 meses, con un catlogo inicial a la venta de 3
modelos.
Modelo 1
Modelo 2
Modelo 3

Abril
100
150
150

Mayo
200
100
150

Junio
150
150
250

Julio
150
100
150

Agosto
200
250
150

Septiembre
150
100
150

Se admite un error en la previsin de demanda de cada modelo de 3 miles de pares.


M1

S1

A1

A2

M2

R2

CO1

S2

A1

A3

R1

Cr

CO2

M3

S3

A3

A2

A4

R1

CO3

Los elementos que se utilizan en la produccin de estos 3 modelos de zapatillas son los
siguientes: Cordones (C), Cremallera (Cr), Suela (tipos: S1, S2, S3), Refuerzos (tipos: R1, R2),
Cuerpo (tipos CO1, CO2, CO3) y adornos (A1, A2, A3, A4).
Como se puede observar, entre los diferentes modelos de zapatillas a producir se da la
particularidad que comparten componentes entre un modelo y otro. Las suelas tienen un periodo de
aprovisionamiento de 4 semanas. Los refuerzos y el cuerpo un periodo de aprovisionamiento de 2
semanas, los adornos de 1 semana, y las cremalleras de un plazo de 8 semanas. Se dispone en
almacn de 8000 de estas cremalleras. Se dispone tambin en almacn de suficientes componentes
para cubrir la demanda de los prximos dos meses, de los diferentes componentes. Los pedidos se
lanzarn en miles de unidades, a excepcin de las cremalleras que se lanzaran en lotes de cinco mil
unidades.
Los costes de produccin de cada par se evalan en 7 si se producen en horas normales, y 9 si
se produce en horas extras. El nmero de horas normales disponibles por da son 8. El nmero de
das laborables por mes es variable cada mes, dependiendo del calendario laboral de la localidad de
Picassent. Cada mes se puede trabajar un mximo de 40 horas extra. Un grupo de 3 personas es
capaz de fabricar 15 pares de zapatillas por hora, si dispone de suficiente material. El coste de
almacenar un par de una semana para otra es de 0025 por par. Se dispone de 200 pares en stock
en estos momentos, de cada uno de los modelos.

Pgina 158 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

As, se pretende establecer el modelo que permitiera definir el plan de trabajo para los prximos
meses, asegurando el mnimo coste para la empresa. Al ingeniero se le ha planteado un compromiso
con los trabajadores de utilizar cada dos meses al menos un 15% de la capacidad en horas extra
actual, por lo que debera plantearse como programar tambin esa circunstancia. Adems es habitual
que en el mes de Agosto, no se trabaje la mitad del mes, y que los trabajadores de la empresa cojan
los 15 das restantes durante los meses de Junio, Julio, Agosto o Septiembre dependiendo de la
disponibilidad de la empresa.
Durante las vacaciones de verano se debe considerar la contratacin de trabajadores para
sustituir a los trabajadores que estn todo el ao. Los costes de produccin de cada par se evalan
en 8 en horas normales no pudiendo producir estos trabajadores en horas extras. El ritmo de
produccin de estos trabajadores es de 18 pares de zapatillas por hora. Se podr contratar uno o dos
grupos.
Se plantean diferentes alternativas al definir el objetivo principal. As, una de ellas podra ser el
minimizar el mximo stock entre periodos. Otra, minimizar las diferencias de produccin entre un mes
y el siguiente, para cualquier mes, a travs de equilibrado de la produccin utilizando horas extras,
minimizar el stock en almacenes...

Pgina 159 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

10.6 Las farmacias de Almoines, Benimaclet y ConfridesEquation Section (Next)


Est empezando una nueva carrera de consultor free-lance y por tanto acepta cualquier tipo de
trabajo. Le ha llegado un trabajo por va de un amigo (el nico modo de que entren trabajos). El trabajo
no parece estar muy definido.
Hola,
Me ha dado tu direccin Moiss de la Fuente. Soy Marina Amors, farmacutica de
Confrides y estoy integrada con las farmacias de mi pueblo y de otros 2 cercanos, para
hacer las guardias. En total, somos 11 farmacias de tres pueblos cercanos:

5 de Almoines
1 de Benimaclet
5 de Confrides

Entre las 11 farmacias nos turnamos los turnos de guardia (noche) alternativamente de
forma que cada pueblo no est ms de 1 noche sin tener una farmacia abierta, excepto
cuando toca Benimaclet que no queda ms remedio que sean 2 noches. Tenemos tres
turnos:
1. Das laborales
2. Sbados
3. Domingos y festivos
Incluso en la ltima reunin que tuvimos este mes pasado se plante incluso hacer otro
turno (el cuarto !) que incluyera el 24 dic (Nochebuena), el 31 de dic y el 5 de Enero.
Muchos estamos hartos de tanto turno porque hay semanas que nos coinciden 2 o 3
guardias, sobre todo en puentes y preferimos un slo turno cada 11 das (es lo ms habitual
entre los pueblos que nos rodean). Parte de nuestros compaeros dicen que no es
equitativo que siempre hay alguno que le tocan ms domingos que otro, etc. Mi pregunta es
si sabes alguna frmula matemtica para hacerlo ms equitativo.
Puesto manos a la obra usted le enva el siguiente mensaje:
Hola Marina, ms que tener dudas de los turnos, lo que me gustara saber son las fechas que se
consideran festivos en cada una de las localidades, porque supongo que no sern iguales. Un
turno especial de Navidad no creo que sea prctico, tardarais 11 aos en darle la vuelta.
Mi propuesta es plantear un sistema que permita establecer una secuencia donde se
establezcan tantas restricciones como se quieran (siempre que sea matemticamente posible).
Pero no tendris un ciclo de 11 das sino ms bien, un calendario anual (o semestral o bianual)
que intenta equilibrar las cargas. Se me ocurre investigar un modo de establecer el calendario
respetando restricciones de no ms de 1 guardia en 6 o 7 das, no ms de un festivo en 15
das Te adjunto una tabla en Excel que puedes completar con los festivos que faltan. Como
hay once columnas todo consistira en sortear cada columna a cada persona.
PD: Por cierto, Qu ocurre cuando un sbado coincide con festivo?, Qu manda?

Pgina 160 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

La respuesta, que obvia los datos de las festividades, es la siguiente


Buenos das,
Ante todo, muchsimas gracias por el inters. Respondiendo a tu pregunta, cuando un
sbado coincide con un festivo manda siempre el festivo, por tanto no hacemos refuerzos de
sbado (cada pueblo tiene todos los sbados una farmacia abierta hasta las 5).
Gracias de nuevo.

El trabajo consiste en:


a) Definir de modo estructurado el problema
b) Disear un Modelo matemtico que lo resuelva
c) Implementar el modelo en MPL, para resolverlo
d) Disear una heurstica, o conjunto de ellas, que resuelvan satisfactoriamente el problema

Pgina 161 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

10.7 Planificacin agregada en una planta de motoresEquation Section (Next)


Una empresa de fabricacin y montaje de motores sirve motores y componentes de los mismos a
plantas de fabricacin de coches as como a empresas de distribucin de repuestos. Ambos tipos de
clientes estn distribuidos por todo el mundo. Al ser los clientes distintos los modos de preparacin del
producto y embarque del mismo pueden variar entre clientes. No slo venden producto final sino
tambin semielaborado. Y tambin compran semielaborado. Asimismo diferentes clientes y diferentes
proveedores tienen necesidades y calendarios variables.
En un mercado tan competitivo como el del automvil las actualizaciones de los productos son
frecuentes. Adems de que el nmero de variantes a producir tiende a crecer para adecuarse o superar
a la competencia. El nmero de productos a fabricar es siempre limitado y conocido, aunque este
conjunto vara. Pero vara de un modo planificado. Asimismo Esto implica pruebas de productos y
nuevas versiones y tambin implica la desaparicin planificada de productos.
El proceso de fabricacin de un motor tiene dos etapas: a) Fabricacin y b) Montaje. En la
Fabricacin un elemento en bruto es mecanizado, y en el montaje diferentes elementos mecanizados se
ensamblan en una lnea de montaje.

Un motor se compone de las denominadas 5Cs (Bloque, Bielas, Levas, Culatas, Cigueales) y otros
componentes. De cada tipo de componente hay un cierto nmero de variantes, algunas se fabrican en la
planta objeto de estudio y otros no.

Pgina 162 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

La lnea de Montaje de una fbrica de Motores es un sistema altamente automatizado, bastante poco
flexible en cuanto a capacidad, y costoso de puesta en marcha y mantenimiento. Dentro de la escasa
flexibilidad reconocida a la lnea existe la posibilidad de pararla o hacerla funcionar a diferentes
velocidades con costes diferentes para cada una de las opciones.
Aunque el proceso de fabricacin es diferente lo mismo ocurre, con diferente dimensin, en las lneas
de mecanizado de las conocidas como 5Cs.
La empresa planifica en semanas y cada semana tiene una serie de das hbiles (5 por lo general) y
de inhbiles (2 por lo general) pero la empresa podra decidir parar un da la produccin pues ahorrara
costes de energa, o utilizar uno de los das inhbiles. La empresa utiliza en ocasiones las horas extras
pero estas no se planifican puesto que se utilizan para responder a problemas puntuales.
En este sentido el funcionamiento de la planta es atpico tanto al nivel de la gestin de la produccin
como en lo referente a la consideracin del factor humano. Los modos de gestin de la capacidad son
dos: Incrementar o reducir la velocidad de la lnea (incorporando nuevos recursos a la misma), y
parar/utilizar la lnea en das laborales/das festivos.
En efecto, a causa del nivel de automatizacin de la lnea y de los costes que implica el hacer
funcionar la maquinaria, se autoriza el paro total de la planta cuando sea necesario, ya que se sabe que
el coste de mano de obra es muy bajo en comparacin con el de la mantener en funcionamiento la
maquinaria. En este caso, los operarios van a formacin o se dedican a tareas de mantenimiento y se
ahorran los gastos de hacer funcionar la lnea. As pues, consideraremos que los directivos pueden
decidir que hay que trabajar unos das festivos por cualquier razn. Adems si la lnea no tiene
capacidad de cumplir la demanda durante la semana normal, es decir entre el lunes y el viernes, el
modelo deber ser capaz de proponer la cantidad de das extras que se necesitan para evitar diferir
(dentro de los lmites impuestos por la empresa durante cada semana).
Los inventarios no tienen un coste de mantenimiento conocido, aunque este es elevado dadas las
caractersticas de los productos. Para mantener bajo control los inventarios la empresa prefiere
establecer un stock mnimo y mximo (medido en das de stock) para el final del horizonte de
planificacin. Y dicho horizonte de planificacin se sita siempre al final de un periodo de vacaciones
Pgina 163 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

relativamente prolongado (verano, pascua, navidad) de tal modo que no se tendr ms stock del
deseado en ningn momento sin necesidad de asignarle un coste.

Pgina 164 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

10.8 Karbonatadas JUPE (III) Equation Section (Next)


//quiz poner el caso que ya tengo redactado.
Una empresa que fabrica refrescos carbonatados tiene una fbrica con capacidad de envasar 70
hectlitros a la hora.
La fbrica puede trabajar a 1,2,3 y 4 turnos de 80 horas semanales cada uno (deduciendo la parte
proporcional de festivos no fin de semana). Es decir la capacidad productiva de una determinada
semana se calcula segn la siguiente frmula

40K

(5 f )
5

Siendo 40 el nmero de horas laborables por semana en un turno completo, K la capacidad de


envasado medida en hectlitros por hora que es diferente para cada producto, y f el nmero de festivos
en una semana (considerando slo los festivos que reducen el nmero de das laborables).
Estn en las ltimas semanas del ao, y el departamento de finanzas se ha puesto a trabajar,
solicitando presupuestos. Usted debe anticipar el plan de produccin para poder aportar informacin al
departamento de Recursos Humanos y al de Logstica.
Ventas le anticipa la demanda en hectlitros en forma de 4 escenarios posibles, con la demanda
prevista en centenares hectlitros por semana (tabla 1).
El departamento de RRHH le ha pedido un presupuesto para su gasto del ao que viene. Un turno
tiene un coste semanal de 6000 euros. Cada cambio de configuracin del nmero de turnos, por ejemplo
pasar en una semana de 2 turnos a 3 turnos, tiene un coste de 1000 euros por turno cambiado. El
departamento de recursos humanos tiene cerrado ya el programa de trabajo de las primeras 5 semanas
del ao y debe cerrar las de la semana de 6 a 10.
Turnos

03/01/2011 10/01/2011 17/01/2011 24/01/2011 31/01/2011


1
1
1
2
2

El departamento financiero le ha pedido un presupuesto para su gasto en almacenes subcontratados


este ao.
El departamento de logstica tiene un almacn propio con una capacidad de 8000 hectlitros. Si los
productos se guardan en el almacn propio el coste de almacenar cada hectlitro se evala en alrededor
de 0,25 por semana. Dispone tambin de almacenes a los que puede subcontratar capacidad. si los
productos se guardan en almacn ajeno el coste de almacenar (que incluye el coste de transportar) se
eleva a 1 por semana. Al principio de ao calcula que tendr 5000 hectlitros de stock.
Se le pide que :
a) Disee un modelo matemtico para establecer el programa ptimo teniendo en cuenta los 4
escenarios.
b) Defina los costes en recursos humanos y en almacenes en los que incurrir.

Pgina 165 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

10.9 Central pendiente dominicanaEquation Section (Next)


Central Pendiente Dominicana CPD, es una floreciente cadena de supermercados. Actualmente
cuenta con 14 tiendas de diferentes tamaos, ubicadas geogrficamente en los puntos que se reflejan
en la tabla 1. El consumo de cada una de las tiendas se estima en peso. Y la demanda debe ser
satisfecha.

Tiendas
Tienda1

Demanda ()

10

40

1000

Tienda2

30

50

2000

Tienda3

20

50

1000

Tienda4

40

10

500

Tienda5

50

30

600

Tienda6

50

20

2000

Tienda7

40

40

700

Tienda8

50

50

800

Tienda9

50

30

1200

TiendaA

60

40

900

TiendaB

100

20

700

TiendaC

12

90

600

TiendaD

90

90

1000

Tabla 1. Ubicacin y Demanda de cada Tienda


CPD cuenta con 4 almacenes, ubicados en los puntos de la geografa que se indican en la tabla 2.
Dichos almacenes estn mayormente situados cerca de sus mayores puntos de consumo. Actualmente
est considerando la posibilidad de abrir un nuevo centro logstico, ms grande y alejado. Los datos
bsicos se representan en la siguiente tabla.
Almacenes

Capacidad()

C Fijo

C Variable por

Almacen1

10

20

5000

1000

Almacen2

14

30

5000

1000

Almacen3

23

60

5000

1000

Almacen4

50

50

5000

1000

Almacen5

200

200

20000

2000

0,1

Tabla 2. Ubicacin, Capacidad y Coste de Cada almacn


Usted est analizando la cadena de suministro de productos perecederos, y CPD cuenta con tres
fbricas de envasado. Sus caractersticas estn en la tabla 3.
Fabricas

Capacidad()

C Fijo

C Variable por

Fbrica1

10

10

10000

500

Fbrica2

30

50

10000

700

Fbrica3

40

40

10000

1000

Tabla 3. Ubicacin, Capacidad y Coste de Cada Fbrica


Pgina 166 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

Los centros de aprovisionamiento de los productos que vende estn fundamentalmente en dos
puntos de la geografa que se indican en la tabla 4.
Abastecimiento

Proveedor1

Proveedor2

70

20

Tabla 3. Ubicacin del centro de gravedad de los puntos de abastecimiento


Los costes de transporte se calculan en pesos por kilmetro recorrido y m3 transportado.
Los costes de almacenamiento y de procesamiento del producto se calculan teniendo en cuenta un
coste fijo (relacionado con poner en marcha la instalacin) y un coste variable medido en pesos por m3
movido.
coste del km

/m3 transportado/km

coste de almacenaje

/m3 almacenado/da

Valor del m3

10

/m3

coste de inventario

0,05

/ almacenado/da

Para qu densidad de valor (/m3) del producto es rentable irse al almacn grande nico y alejado?
Construya un modelo matemtico

10.10 Asignacin de fechas y aulas para exmenes


Una Escuela de Ingeniera ha experimentado una multiplicacin en el nmero de ttulos, alumnos y
aulas en los ltimos aos. Este crecimiento ha supuesto una modificacin sustancial en algunos de los
procesos. Entre ellos el de asignacin de aulas y fechas para exmenes.
Los diferentes problemas que se plantean por esta nueva circunstancia se pretenden resolver
mediante una asignacin automtica al principio de curso.
Algunos de los datos del problema son:

Pgina 167 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

Nmero de
Alumnos
400-500
300-400
200-300
100-200
50-100
0-50

Nmero de
Asignaturas
5
19
30
8
58
84

Capacidad Aulas
para exmenes
90
60

Nmero Aulas
14
32

Puede establecer un mtodo automtico de asignacin?

Pgina 168 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

11 EPLOGO
En este libro se ha intentado...

Pgina 169 de 171

Usando las matemticas para pensar sobre Direccin de operaciones.

12 BIBLIOGRAFA
Bautista, J., Companys, R., Corominas, A. Introduccin al BDP. 1992.
Binmore, K. Teora de Juegos. McGraw-Hill.1994
Bramel, J. D. Simchi-Levy. The Logic of Logistics. Springer. 1997
Chase, R.B. N.J. Aquilano, F.R. Jacobs. Administracin de produccin y operaciones. Irwin-McGraw-Hill.
2000
Chrtienne, P. Coffman, E.G., J.K. Lenstra, Z. Liu. Scheduling Theory and its Applications. Wiley and
Sons. 1997
Companys, R., 2002. Programacion dinamica. CPDA-ETSEIB.
Companys, R., 2003. Teoria de Grafos. cpda-etseib.
Conway, R.W., W.L. Maxwell, L.W. Miller. Theory of Scheduling. Addison-Wesley. 1967
Cuatrecasas, Ll.. Organizacin de la Produccin y Direccin de Operaciones.
Dembo, R.S.. Scenario Optimization. Annals of Operations Research 30, 63-80. 1990
Denardo, E.V., 1982. Dynamic Programming. Models and Applications. Prentice Hall.
Daz, A., F. Glover, H. Ghaziri, J.L. Gonzlez, M. Laguna, P. Moscato, F.T. Optimizacin Heurstica y
Redes Neuronales. 1996
Diaz, A., Glover, F., Ghaziri, H., Gonzales, J.L., Laguna, M., Moscato, F.T., 1996. Optimizacin
Heurstica y Redes Neuronales. McGriwHall.
Ferreira, A. M. Morvan. Models for parallel algorithm designs: an introduction. Parallel computing in
Optimization. Kluwer Academic Publishers, 1997.
Ferreira, P, A.. Pardalos. Solving Combinatorial Problems in Parallel. Springer. 1996
Gendreau, M., 2003. An introduction to tabu search. In: Glover, F., Kochenberger, G.A. (Eds.), Handbook
of metaheuristics Kluwer International Series, pp. 37-54.
Glover, F., Laguna, M., Marti, R., 2003. Scatter Search and Path relinking: advances and applications. In:
Glover, F., Kochenberger, G.A. (Eds.), Handbook of metaheuristics Kluwer International Series,
pp. 1-35.
Gross, D., Harris, C.M., 1998. Fundamentals of Queueing Theory. John Wiley and Sons.
Gross, D., Shortle, J.F., Thomson, J.M., Harris, C.M., 2008. Fundamentals of Queueing Theory. Wiley.
Hansen, P., Mladenovic, N., 2003. Variable Neighborhood Search. In: Glover, F., Kochenberger, G.A.
(Eds.), Handbook of metaheuristics Kluwer International Series, pp. 145-184.

Pgina 170 de 171

JPGS-JM-2015

Modelos y Mtodos de Investigacin de Operaciones

Henderson, D., Jacobson, S.H., Jonhson, A., 2003. The theory and practice of Simulated Annealing. In:
Glover, F., Kochenberger, G.A. (Eds.), Handbook of metaheuristics Kluwer International Series,
pp. 287-319.
Johnson, L.A., D.C. Montgomery. Operations Research in Production Planning, Scheduling and
Inventory Control. John Wiley and Sons. 1974
Kauffman, A., 1972. Mtodos y Modelos de la Investigacin de Operaciones. CECSA.
Kauffman, S., 2003. Investigaciones. Metatemas.
Kauffmann A., Henry-Labordere, A.. Mtodos y Modelos de la Investigacin de Operaciones Tomo III.
CECSA. 1976
Kauffmann, A.. Mtodos y Modelos de la Investigacin de Operaciones Tomo II. CECSA. 1972
Loureno, H.R., Martin, O.C., Sttzle, T., 2003. Iterated Local Search. In: Glover, F., Kochenberger, G.A.
(Eds.), Handbook of metaheuristics Kluwer International Series, pp. 321-353.
Marti, R., 2003. Multistart Mehods. In: Glover, F., Kochenberger, G.A. (Eds.), Handbook of
metaheuristics Kluwer International Series, pp. 355-368.
Osman, I.H., 1995. An Introduction to Metahuristics. In: Lawrence, M., Wilsdon, C. (Eds.), Operational
Research Tutorial Papers. Stockton Press, Hampshire (UK), pp. 92-122.
Perez, J., Mladenovic, N., Batista, B., Amo, I., 2006. Variable Neighbourhood Search. In: Alba, E.,
Mart+, R. (Eds.), Metaheuristic Procedures for Training Neutral Networks Springer US, pp. 71-86.
Pidd, M., 1996. Tools for thinking. Wiley.
Pinedo, M., Chao X.. Operations Scheduling. McGraw-Hill. 1999
Raiffa, J.F. Decision Analysis. Addison Wesley. 1970
Resende, M.G., Ribeiro, C.C., 2003. Greedy Randomized Adaptive Search Procedures. In: Glover, F.,
Kochenberger, G.A. (Eds.), Handbook of metaheuristics Kluwer International Series, pp. 219-249.
Shapiro, J.F. Modelling the Supply Chain. Duxbury. 2001
White, D.J. Teora de la Decisin. Alianza Universidad. 1972
Williams, H.P. Model Building in Mathematical Programming. Wiley. 1999

Pgina 171 de 171

Potrebbero piacerti anche