Anda di halaman 1dari 164

1. INTRODUCCION..............................................................................................................

2
1.1 Qu es la Investigacin de Operaciones.......................................................................... 3
1.2 I.O como apoyo a la toma de decisiones......................................................................... 5
1.3 Problemas tipo en Investigacin Operativa..................................................................... 7
2. OPTIMIZACIN ............................................................................................................... 9
2.1 Introduccin .................................................................................................................... 9
2.2 Convexidad ................................................................................................................... 13
2.3 Optimos Locales y Globales ......................................................................................... 16
2.4 Condiciones de KuhnTucker....................................................................................... 18
2.5 Relajaciones .................................................................................................................. 20
2.6 Dualidad ........................................................................................................................ 30
2.7 Programacion Lineal ................................................................................................... 34
3. GRAFOS ........................................................................................................................... 55
3.1 Introduccin .................................................................................................................. 55
3.2 Definiciones Basicas ..................................................................................................... 57
3.3 Conexidad. Clausura Transitiva. ................................................................................... 65
3.4 Multiplicacin Latina - Camino Hamiltoniano ............................................................. 72
4. ESQUELETOS Y CAMINOS OPTIMALES ................................................................ 73
4.1 Medida de conexin de grafos ...................................................................................... 73
4.2 Esqueletos optimales.................................................................................................... 75
4.3 Caminos optimales Camino mnimo .......................................................................... 77
5. REDES FLUJOS ........................................................................................................... 79
5.1 Corte mnimo flujo mximo....................................................................................... 80
5.2 Bases Para la Construccin de un Flujo Mximo.......................................................... 84
5.3 Algoritmo de Flujo Mximo ......................................................................................... 87
6. INTRODUCCIN A LOS PROBLEMAS DE ORDENAMIENTOS ......................... 89
6.1 Conceptos Generales..................................................................................................... 90
6.2 Modelado de los problemas de ordenamientos ............................................................. 92
6.3 Mtodos de Camino Crtico .......................................................................................... 94
7. PROCESOS ESTOCSTICOS...................................................................................... 101
7.1 Introduccin ................................................................................................................ 101
7.2 Procesos Estocsticos.................................................................................................. 108
7.3 Cadenas de Markov..................................................................................................... 111
7.4 Cadenas de Markov de Tiempo Contnuo................................................................... 125
7.5 Procesos de Poisson .................................................................................................... 129
7.6 Procesos de Nacimiento y Muerte............................................................................... 131
7.7 Sistemas de Colas........................................................................................................ 132
7.8 Propiedad PASTA....................................................................................................... 145
8. SIMULACIN................................................................................................................. 146
8.1 Introduccin ................................................................................................................ 146
8.2 Modelos....................................................................................................................... 147
8.3 Simulacin de sistemas ............................................................................................... 148
8.4 Etapas en el proceso de Simulacin de Sistemas ........................................................ 149
8.5 Clasificacin de tipos de simulacin........................................................................... 151
8.6 Generacin de nmeros aleatorios .............................................................................. 153
8.7 Generacin de variables aleatorias.............................................................................. 158
8.8 Mtodo Montecarlo..................................................................................................... 161

Introduccin a la Investigacin de Operaciones

1. INTRODUCCION
El objetivo del curso es que el estudiante aprenda a reconocer los problemas
tipo de la Investigacin de Operaciones de modo que sepa a qu tcnico recurrir en
cada caso, para un adecuado estudio y solucin del mismo.
Como su nombre lo indica, la Investigacin de Operaciones (IO), o
Investigacin Operativa, es la investigacin de las operaciones a realizar para el logro
ptimo de los objetivos de un sistema o la mejora del mismo. Esta disciplina brinda y
utiliza la metodologa cientfica en la bsqueda de soluciones ptimas, como apoyo
en los procesos de decisin, en cuanto a lo que se refiere a la toma de decisiones
ptimas y en sistemas que se originan en la vida real.

Antecedentes histricos
El trmino IO se utiliza por primera vez en el ao 1939 durante la 2da Guerra
Mundial, especficamente cuando surge la necesidad de investigar las operaciones
tcticas y estratgicas de la defensa area, ante la incorporacin de un nuevo radar, en
oportunidad de los ataques alemanes a Gran Bretaa. El avance acelerado de la
tecnologa militar hace que los ejecutivos y administradores militares britnicos deban
recurrir a los cientficos, en pos de apoyo y orientacin en la planificacin de su
defensa. El xito de un pequeo grupo de cientficos que trabajaron en conjunto con el
ejecutivo militar a cargo de las operaciones en la lnea, deriv en una mayor
demanda de sus servicios y la extensin del uso de la metodologa a USA, Canad y
Francia entre otros.
Sin embargo, el origen de la Investigacin Operativa puede considerarse como
anterior a la Revolucin Industrial, aunque fue durante este perodo que comienzan a
originarse los problemas tipo que la Investigacin Operativa trata de resolver. A
partir de la Revolucin Industrial y a travs de los aos se origina una segmentacin
funcional y geogrfica de la administracin, lo que da origen a la funcin ejecutiva o
de integracin de la administracin para servir a los intereses del sistema como un
todo.
La Investigacin Operativa tarda en desarrollarse en el campo de la
administracin industrial. El uso de la metodologa cientfica en la industria se
incorpora al principiar los aos 50, a partir de la 2da Revolucin Industrial, propiciada
por los avances de las Comunicaciones, y la Computacin, que sientan las bases para
la automatizacin, y por sobre todo por el florecimiento y bienestar econmico de ese
perodo.
Los primeros desarrollos de esta disciplina (IO) se refirieron a problemas de
ordenamiento de tareas, reparto de cargas de trabajo, planificacin y asignacin
de recursos en el mbito militar en sus inicios, diversificndose luego, y
extendindose finalmente a organizaciones industriales, acadmicas y
gubernamentales.
Algunas fechas, nombres y temas
1759
1874
1873
1896
1903
189~
192~
191~
1920-30
1937
1939

Quesnay (ecnomo) - Programacin Matemtica


Walras
Jordan
- Precursor de modelos lineales
Minkowsky - Precursor de modelos lineales
Farkas
- Precursor de modelos lineales
Markov
- Precursor modelos dinmicos probabilsticos
- Primer desarrollo de modelos de inventarios
Erlang
- Primeros estudios de lneas de espera
Koning y Egervary - Mtodos de asignacin (analticos)
von Neuman - Teora de juegos y de preferencias
Kantorovich - Problemas de distribucin
2

Introduccin a la Investigacin de Operaciones


2da guerra
- Logstica estratgica para vencer al enemigo
Finales 2da guerra
- Logstica de distribucin de recursos de los
aliados
(Rand Corporation- Fuerza area
norteamericana).
Dantzig, George - Mtodo simplex en base al trabajo de precursores,
inicio a la Programacin Lineal.
- Bellman
- Programacin dinmica.
- Kuhn y Tucker
- Programacin No Lineal.
- Gomory
- Programacin Entera.
- Ford y Fulkerson
- Redes de optimizacin.
- Markowitz
- Simulacin.
- Arrow, Karloin, Scarf, Whitin
- Inventarios.

1945
1947
1950-60

- Rafia
- Anlisis de Decisiones.
- Howard
- Procesos Markovianos de Decisin.
- Churchman, Ackoff, Arnoff - Orientacin a sistemas,
generalizacin de la Investigacin
Operativa.
1970 y parte - Receso en el uso de la Investigacin de Operaciones
dcada 80
1985 en
Reflorecimiento de la disciplina con el devenir del control automtico
delante
industrial, las microcomputadoras y las nuevas interfaces grficas que
impulsan el desarrollo de los Sistemas Automatizados de Apoyo a la
Toma de Decisiones, donde la Investigacin Operativa juega un papel
preponderante.
Actualmente IO se aplica al sector privado y pblico, a la industria, los sistemas de
comercializacin, financieros, de transportes, de salud etc., en los
pases desarrollados, en vas de y en los del tercer mundo.
Existen varias asociaciones en todo el mund, que agrupan a personas (estudiantes,
cientficos y profesionales) interesados por el estudio y aplicacin de la Investigacin
Operativa. La mas grande de todas es INFORMS, de Estados Unidos de Norteamrica
asociacin que nace de la unin de la ORSA = Operation Research Society of
America, con 8 000 miembros y la TIMS = Institute of Managment Science con 6 000
miembros. Tambin existen Asociaciones Canadienses, Europeas, Latinoamericanas y
Asiticas federadas en la IFORS, International Federation of Operation Research
Societies. La Asociacin Latinoamericana de Investigacin de Operaciones, ALIO,
conglomera a la mayor parte de las Asociaciones de America Central y Sur.
Se publican decenas de revistas diferentes en todo el mundo. Existen
programas de Posgrado (maestra y doctorado) en la especialidad, en Amrica y
Europa.

1.1 Qu es la Investigacin de Operaciones


En esta disciplina se destacan las siguientes caractersticas esenciales:

una fuerte orientacin a Teora de Sistemas,


la participacin de equipos interdisciplinarios,
la aplicacin del mtodo cientfico en apoyo a la toma de decisiones.

En base a estas propiedades, una posible definicin es: la Investigacin Operativa es


la aplicacin del mtodo cientfico por equipos interdisciplinarios a problemas que
comprenden el control y gestin de sistemas organizados (hombre- mquina); con el
objetivo de encontrar soluciones que sirvan mejor a los propsitos del sistema (u
organizacin) como un todo, enmarcados en procesos de toma de decisiones.

Introduccin a la Investigacin de Operaciones

Los pasos a seguir en la aplicacin del mtodo cientfico (coincidentes con los de la
Teora General de Sistemas) son, en su expresin mas simple:
1.- Planteo y Anlisis del problema
2.- Construccin de un modelo
3.- Deduccin de la(s) solucion(es)
4.- Prueba del modelo y evaluacin de la(s) solucion(es)
5.- Ejecucin y Control de la(s) solucion(es)
Otra definicin: la Investigacin Operativa es la aplicacin del mtodo cientfico a un
mismo problema por diversas ciencias y tcnicas, en apoyo a la seleccin de
soluciones, en lo posible ptimas.
Observar que el problema es UNO SOLO, sin embargo existen maneras distintas de
observar un mismo problema, dependiendo de los objetivos que se planteen para
resolverlo.
Ejemplo: Un proceso de decisin respecto a la poltica de inventarios en una
organizacin.
Existen 4 funciones administrativas que han dado lugar a departamentos cuyos
objetivos son:
Funcin
Produccin
Comercializacin
Finanzas
Personal

Objetivo
Maximizar la cantidad de bienes (servicios) producidos
y minimizar el costo unitario de la produccin.
Maximizar la cantidad vendida y minimizar el
costo unitario de las ventas.
Minimizar el capital requerido para mantener
cierto nivel del negocio.
Mantener la moral y la alta productividad entre los empleados.

Con respecto al INVENTARIO y segn estos OBJETIVOS:


El departamento de produccin necesita producir tanto como sea posible a un costo
mnimo, lo que se logra fabricando un solo producto en forma continua, pues se logra
mayor eficiencia y se minimiza el tiempo perdido por cambio de equipo, al cambiar
de artculo. Con este procedimiento se logra un gran inventario con una lnea de
productos pequea.
El departamento de mercado tambin necesita un gran inventario, pero para
vender tanto como sea posible, debe surtir de la mas amplia variedad de
productos. Motivos de desencuentro con el departamento de produccin.
Para minimizar el capital necesario para que el negocio marche, el
departamento de Finanzas debe reducir la cantidad de dinero "comprometido", lo mas
directo es reducir los inventarios. Se propone que los inventarios deben aumentar o
disminuir en proporcin a la fluctuacin de las ventas.
En contraposicin, cuando la ventas son bajas, ni produccin ni personal
requieren disminuir la produccin, ni reducir personal. Personal le interesa mantener
la produccin a un nivel tan constante como sea posible, ya que el despido implica
repercusiones en la moral del personal , prdida de personal calificado, nuevos costos
de formacin de nuevo personal cuando as se requiera. Esto se traduce en producir
hasta el nivel del inventario cuando las ventas son bajas y agotarlo cuando stas
son altas.
Los objetivos enumerados y definidos de esta manera son dificiles de llevar a
la prctica por su inconsistencia desde el punto de vista de la organizacin y del
sistema en su conjunto. Es tarea y responsabilidad del ejecutivo (gerente) determinar
4

Introduccin a la Investigacin de Operaciones


una poltica de inventario que convenga a los intereses de toda la compana y no de
una sola de las funciones subordinadas. La tarea de organizacin y gerenciamiento
requiere que se considere al SISTEMA en su conjunto y sta es la esencia del trabajo
gerencial. El ejecutivo debe decidir y para ello recurrir a algn mtodo. Le
convendr recurrir a un Investigador de Operaciones, dado que supuestamente ste
estar apto para utilizar la investigacin cientfica en apoyo a las decisiones que el
ejecutivo deba tomar. Este apoyo se hace especialmente necesario cuando se trata de
la bsqueda de soluciones ptimas a problemas que se originan en las
organizaciones y servicios en general.

1.2 I.O como apoyo a la toma de decisiones


Los procesos de decisin pueden desarrollarse bajo situaciones deterministas,
aleatorias, de incertidumbre, o de competencia (adversas). Estas situaciones se
modelan a travs de sistemas que tambin sern de tipo deterministas, aleatorios,
inciertos o basados en situaciones de competencia (adversas). Los sistemas
determinsticos interpretan la realidad bajo el principio de que todo es conocido con
certeza. Los sistemas basados en situaciones aleatorias, de incertidumbre o de
competencia, asocian la incertidumbre a los fenmenos a analizar, incertidumbre que
puede resultar de la variacin propia de los fenmenos (variaciones que eluden a
nuestro control, pero que tienen un patrn especfico) o incertidumbre resultante de la
propia inconsistencia de esos fenmenos.
Aplicando el mtodo cientfico, el Investigador de Operaciones construir uno o mas
modelos (representaciones) del sistema, con sus operaciones correspondientes y sobre
l realizar su investigacin.
Los modelos de IO se pueden representar con ecuaciones las que, aunque puedan
resultar complejas, tienen una estructura muy sencilla:
U = f (xi, yj)
segn
restricciones
U
xi
yj
f

es la utilidad o valor de ejecucin del sistema,


son las variables no controlables, o dependientes, cuyos valores dependern de
las interrelaciones y valores de las variables independientes.
son las variables controlables, o independientes, con valores dados.
es una funcin en xi e yj.

Frecuentemente se requieren una o ms ecuaciones o inecuaciones de las llamadas


restricciones, para expresar el hecho de que algunas de las variables no controlables (o
todas), pueden manejarse dentro de ciertos lmites. Por ejemplo, el tiempo de mquina
asignado a la produccin de un producto siempre tendr valor positivo, y no ser
mayor que el tiempo total disponible o asignado para tal fin; otro ejemplo, la suma del
dinero presupuestado para cada departamento en un organizacin o industria no puede
exceder la suma de dinero disponible, etc.
Una vez obtenido el modelo, ste puede usarse para encontrar exacta o
aproximadamente los valores ptimos de las variables no controlables, aquellas que
producen la mejor ejecucin del sistema, es decir, la solucin al problema.

Introduccin a la Investigacin de Operaciones


EJEMPLO: Modelo de un problema agrcola.
Supongamos que una empresa citrcola y el Estado pretenden hacer inversiones
cuantiosas en el cultivo de naranja, limn , pomelo y mandarinas, con un doble
objetivo: a) reducir el desempleo rural y b) aumentar las exportaciones para equilibrar
la balanza de pagos.
Segn estudios realizados, se maneja la siguiente informacin (datos inventados):
Precio
Costo por Horas-hombre
Tipo de
Produccin Area mnima
promedio
rbol
de cuidado
rbol promedio anual por rbol (m2)
en kgs / rbol
mundial por kg
anual por rbol
Naranja
150
4
$ 10
$ 2.00
36
Limn
200
5
$ 04
$ 0.50
72
Pomelo
050
3
$ 15
$ 1.00
50
Mandarina
150
6
$ 07
$ 1.50
10
1. Existe una extensin propicia para este tipo de cultivo de 250.000 m2
2. Se asegura el suministro de agua, aproximadamente por 20 aos (existencia de
aguadas en la zona).
3. La financiera pretende hacer una inversin de 20 millones, pensando exportar
toda su produccin a partir del 3er ao, que es cuando los rboles comienzan a
ser productivos.
4. El gobierno ha determinado que ste proyecto emplee al menos 200 personas
ininterrumpidamente.
Decisin a tomar: Cuntos rboles de naranja, limn, pomelo y mandarina, debern
sembrarse con el objetivo de maximizar el valor de la futura exportacin anual?
Formulacin del problema:
Sean

X1:
X2:
X3:
X4:

nmero de rboles de naranja a ser sembrados.


nmero de rboles de limn a ser sembrados.
nmero de rboles de pomelo a ser sembrados.
nmero de rboles de mandarinas a ser sembrados.

Valor medio de la export. anual: U = 10150X1 + 4200X2 + 1550X3 + 7150X4


Segn las siguientes restricciones:
Extensin de tierra: 4X1 + 5X2 + 3X3 + 6X4 250 000 m2
Inversin inicial:
2X1 + 0.5X2 + 1X3 + 1.50X4 $20 000 000
Desempleo mnimo: 36X1 + 72X2 + 50X3 + 10X4 2008360
(horas hombre/da/ao)
Nmero de rboles a sembrar: X1 0, X2 0, X3 0, X4 0
Obtuvimos un modelo del problema de tipo:
Maximizar U = f ( )
Sujeto a:
Restricciones
Para ciertos tipos de funciones, como ser relaciones algebraicas elementales, si las
restricciones no son demasiado numerosas, existen mtodos analticos que resuelven
el problema ejemplo que hemos modelado como un problema de programacin
matemtica lineal. Para problemas con gran nmero de restricciones, llamados de
gran tamao, se han desarrollado tcnicas que los resuelven, la mayor de las veces en
forma aproximada.
La funcin f, puede consistir en un conjunto de reglas de cmputo (un algoritmo p.
ej.); reglas lgicas que nos permiten calcular la utilidad (U) de ejecucin para
6

Introduccin a la Investigacin de Operaciones


cualquier conjunto especfico de valores de las variables tanto controlables como no
controlables; generalmente obtenemos soluciones aproximadas a los valores ptimos
de las variables correspondientes. Otras veces, nos vemos forzados a experimentar
con el modelo y simularlo, seleccionando valores de las variables segn una
distribucin de probabilidad, lo que nos permite calcular o0 muestrear un valor
aproximado de la funcin U.
Ejemplo que muestrea un valor aproximado de la confiabilidad de un grafo mediante
el Mtodo Montecarlo:
Funcin de Utilidad de la Confiabilidad de G
cont := 0;
Para n:= 1, N
sortear G
Si G conexo: con := cont + 1
fin para
Conf (G) = cont / N.

Una vez obtenido un valor (o muestra) de la funcin de utilidad, podemos especificar


un procedimiento que permita seleccionar valores sucesivos (de prueba) de variables
no controlables, de manera que converjan hacia una solucin ptima.
Una SOLUCIN PTIMA es aquella que maximiza o minimiza (segn convenga)
la medida de ejecucin de un modelo, sujeto a las condiciones y restricciones
pertinentes al sistema. Muchas veces, independientemente del procedimiento
utilizado, se busca una solucin mas ptima, o mejor dicho, mas cercana a la
ptima. En consecuencia, la optimizacin produce la mejor solucin para el
problema que se est modelando. La solucin ptima ser la mejor para el modelo en
consideracin, ya que un modelo nunca es una representacin exacta del problema; en
el mejor de los casos, el modelo es una "buena" representacin del problema, de ah
que la solucin ptima o cercana a la ptima derivada de ese modelo, es una "buena"
aproximacin a la solucin ptima y, por lo tanto, se supone que ser la mejor para
el problema que se pretende resolver.

1.3 Problemas tipo en Investigacin Operativa


Desde sus comienzos la Investigacin de Operaciones se ha aplicado a una gran
variedad de problemas; la gran mayora de ellos han sido de naturaleza tctica, mas
que estratgica. Un problema es ms tctico que estratgico si cumple con las
siguientes condiciones:
1) su solucin puede modificarse o anularse fcilmente, tiene efecto de corta
duracin;
2) su solucin afecta a una parte menor de la organizacin;
3) los resultados deseados se consideran como proporcionados (obtenidos), sin que
medie una seleccin de medios, fines, metas u objetivos a largo plazo.
La planificacin de una empresa u organizacin, con sus metas y objetivos, es un
problema ms estratgico que tctico. El minimizar los costos del transporte, en el que
la minimizacin en s es el resultado conveniente, es considerado un problema ms
tctico que estratgico.
La aplicacin de la Investigacin Operativa a una amplia variedad de
problemas tcticos, y la frecuente recurrencia de esos problemas, ha permitido
identificar problemas tipo que se agrupan segn los modelos y procedimientos
(tcnicas) similares para su resolucin. Esos problemas tipo son: asignacin de

Introduccin a la Investigacin de Operaciones


recursos escasos, ordenamiento, secuenciacin y coordinacin de tareas, lneas de
espera, mantenimiento y reemplazo de equipos, inventarios, costos y tiempos, gestin
de proyectos.

Asignacin de recursos, Ordenamiento


Los primeros desarrollos de la Investigacin Operativa se refirieron a
problemas de asignacin de recursos, ordenamientos de tareas, reparto de cargas de
trabajo, planificacin, todos con un objetivo preciso de optimizacin de la funcin
econmica U en un mundo determinista. Entre las tcnicas de optimizacin citamos:
la Programacin Lineal (se ver en el curso), No lineal, Los mtodos de
ordenamiento, Programacin Dinmica, Combinatoria, algoritmos de teora de
Grafos, etc. Un ejemplo clsico: determinar el nmero de piezas, de cada tipo, que
debe producir un determinado taller, a fin de obtener el mximo beneficio. Existen
varias mquinas, cada una de las cuales tiene determinadas propiedades y
caractersticas, segn las categoras o partes de piezas a producir por cada una de
ellas; por lo general se conoce la capacidad mxima del taller y el beneficio que se
obtendr con cada categora de pieza producida.

Lneas de espera, Reemplazo de equipos


Estos temas se desarrollan en mundo aleatorio por lo general. Se estudian las
esperas y retrasos ocurridos en el sistema, o las fallas en las instalaciones, su
reparacin y posibles polticas de mantenimiento y/o reemplazo.

Inventario, Costos y tiempos


Se trata de la operacin mas simple, la de almacenar y/o mantener recursos; se
estudia cunto y cundo adquirir. Muchos casos se resuelven modelndolos como
lineas de espera.

Gestin de proyectos
El conjunto de tareas de un proyecto se modelan mediante un grafo, sobre el
que se determinan cules son los tiempos y las tareas crticas ("cuellos de botellas")
del proyecto. Tcnicas usadas: CPM-PERT, mtodo del Camino Crtico.
Algunos de estos problemas, se estudiarn en el curso Introduccin a la
Investigacin de Operaciones.

Introduccin a la Investigacin de Operaciones

2. OPTIMIZACIN
2.1 Introduccin
2.1.1 Motivos para estudiar Optimizacin
Existe una enorme variedad de actividades en el mundo cotidiano que pueden ser
tilmente descritas como sistemas, desde sistemas fsicos tales como una planta
industrial hasta entidades tericas tales como los modelos econmicos. La operacin
eficiente de esos sistemas usualmente requiere un intento por optimizar varios ndices
que miden el desempeo del sistema. Algunas veces, esos ndices son cuantificados y
representados como variables algebraicas. Entonces se deben encontrar valores para
esas variables, que maximicen la ganancia o beneficio del sistema, o bien minimicen
los gastos o prdidas. Se asume que las variables dependen de ciertos factores.
Algunos de esos factores a veces estn bajo el control (al menos parcialmente) del
analista responsable del desempeo del sistema.
El proceso de administracin de los recursos escasos de un sistema se suele dividir
en seis fases:
i anlisis matemtico del sistema
ii construccin de un modelo matemtico que refleja los aspectos importantes del
sistema
iii validacin del modelo
iv manipulacin del modelo a fin de obtener una solucin satisfactoria, si no
ptima
v implementacin de la solucin seleccionada
vi introduccin de una estrategia de control del desempeo del sistema despus de
la implementacin efectuada.
La cuarta fase, la manipulacin del modelo, es la que concierne a la teora de la
optimizacin. Las otras fases son muy importantes en la administracin de cualquier
sistema y probablemente requerirn mayor esfuerzo total que la fase de optimizacin.
Sin embargo, en esta presentacin de la optimizacin se asumir que las dems fases
fueron o sern resueltas aparte. Debido a que la teora de la optimizacin brinda este
eslabn en la cadena de la administracin de sistemas constituye un cuerpo importante
del conocimiento matemtico.

2.1.2 El Alcance de la Optimizacin


Una de las herramientas ms importantes de la optimizacin es la programacin
lineal. Un problema de programacin lineal est dado por una funcin lineal de varias
variables que debe ser optimizada (maximizada o minimizada) cumpliendo con cierto
nmero de restricciones tambin lineales.
El matemtico G.B. Dantzig desarroll un algoritmo llamado el mtodo simplex
para resolver problemas de este tipo. El mtodo simplex original ha sido modificado a
fin de obtener un algoritmo eficiente para resolver grandes problemas de
programacin lineal por computadora.

Introduccin a la Investigacin de Operaciones


Por medio de la programacin lineal se pueden formular y resolver problemas de
una gran variedad de campos del quehacer humano, entre los que se puede mencionar:
asignacin de recursos en la planificacin de gobierno, anlisis de redes para
planificacin urbana y regional, planificacin de la produccin en la industria, y la
administracin de sistemas de transporte y distribucin. Por esto la programacin
lineal es uno de los xitos de la moderna teora de la optimizacin.
La programacin entera est relacionada con la resolucin de problemas de
optimizacin en los cuales al menos algunas de las variables deben tomar slo valores
enteros. Cuando todos los trminos son lineales se habla de programacin lineal
entera.
Muchos problemas de naturaleza combinatoria se pueden formular en trminos
programacin entera. Entre los ejemplos prcticos se puede citar: ubicacin
insumos, secuenciamiento de trabajos en lneas de produccin, balance de lneas
montaje, problemas de asignacin biunvoca, control de inventarios, y reemplazo
mquinas.

de
de
de
de

Uno de los mtodos importantes para resolver esos problemas, debido a R.E.
Gomory, se basa en parte, en el mtodo simplex antes mencionado. Otro mtodo es de
naturaleza combinatoria y consiste en reducir el problema original a otros ms
pequeos, y tal vez ms fciles, y partir el conjunto de soluciones posibles en
subconjuntos ms pequeos que pueden ser analizados ms fcilmente. Este mtodo
se llama branch and bound (ramificacin y acotacin) o branch and backtrack. Dos
de las contribuciones importantes a ste mtodo las han hecho Balas y Dakin. Pese a
las mejoras realizadas no existe an un mtodo unificado que sea eficaz para resolver
problemas de programacin entera de tamao realista.
Otra clase de problemas involucran la administracin de una red. Problemas de
flujo de trfico, comunicaciones, distribucin de bienes, y planificacin de proyectos
son generalmente de este tipo.
Muchos de estos problemas se pueden resolver por los mtodos mencionados
previamente (programacin entera o lineal). Sin embargo debido a que esos
problemas usualmente tienen una estructura especial, se han desarrollado tcnicas
especializadas ms eficientes para su resolucin. En este campo las mayores
contribuciones se deben a Ford y Fulkerson; quienes desarrollaron el mtodo de
etiquetado para maximizar el flujo de un producto a travs de una red y un mtodo
para minimizar el costo de transportar una cantidad dada de producto a travs de una
red. Esas ideas se pueden combinar con las de programacin entera para analizar toda
una familia de problemas prcticos de redes.
Algunos problemas se pueden descomponer en partes y se optimizan los procesos
de decisin de stas. En algunas instancias es posible alcanzar el ptimo del problema
original solamente descubriendo como optimizar esas partes constituyentes. Este
proceso de descomposicin es muy potente, pues permite resolver una serie de
problemas ms pequeos y fciles en vez de uno grande que podra ser intratable.
Los sistemas para los cuales esta aproximacin brinda un ptimo vlido se llaman
sistemas seriales multi-etapa. Una de las tcnicas ms conocidas para abordarlos fue
bautizada programacin dinmica por R. E. Bellman, el matemtico que la
desarroll,. Los sistemas seriales multietapa se caracterizan por un proceso que se
realiza en etapas, como los procesos de manufactura. En vez de intentar optimizar
alguna medida de desempeo viendo a todo el problema como una unidad, la
10

Introduccin a la Investigacin de Operaciones


programacin dinmica optimiza una etapa por vez a fin de producir un conjunto de
decisiones ptimas para todo el proceso.
Una variada gama de problemas tales como inversin de capital, confiabilidad de
mquinas, y anlisis de redes se pueden ver como sistemas seriales multietapa; de
modo que la programacin dinmica tiene una amplia aplicabilidad.
En la formulacin de muchos problemas de optimizacin no se puede hacer la
hiptesis de linealidad que caracteriza a la programacin lineal. No existen
procedimientos generales para problemas no lineales. Se han desarrollado un gran
nmero de algoritmos especiales para tratar casos particulares. Muchos de esos
procedimientos se basan en la teora matemtica relacionada con el anlisis de la
estructura de tales problemas. Esta teora se llama generalmente optimizacin clsica.
Una de las principales contribuciones modernas a esta teora fue hecha por
Kuhn y Tucker quienes desarrollaron lo que se conoce como las condiciones de
Kuhn Tucker.
La coleccin de tcnicas desarrolladas por esta teora se llama programacin no
lineal. Pese a que muchos problemas de programacin no lineal son muy difciles de
resolver, hay cierto nmero de problemas prcticos que pueden ser formulados de
manera no lineal y resueltos por los mtodos existentes. Esto incluye el diseo de
entidades tales como transformadores elctricos, procesos qumicos, condensadores
de vapor y filtros digitales.

2.1.3 La Optimizacin como una rama de las Matemticas


Se puede ver, por lo dicho en la seccin anterior, que la teora de la optimizacin
es matemtica por naturaleza. Tpicamente involucra la maximizacin o minimizacin
de una funcin (a veces desconocida) que representa el desempeo de algn sistema.
Esto se resuelve encontrando los valores de las variables (cuantificables y
controlables) que hacen que la funcin alcance su mejor valor. A fin de entender
como operan los algoritmos se requieren conocimientos de lgebra lineal y clculo
diferencial con varias variables.
Algunos de los problemas de la teora de optimizacin se pueden resolver por las
tcnicas clsicas del clculo avanzado (tales como mtodos Jacobianos y el uso de
multiplicadores de Lagrange). Sin embargo, la mayora de los problemas de
optimizacin no satisfacen las condiciones necesarias para ser resueltos de esta
manera. Muchos de los otros problemas, pese a poder ser tratados con las tcnicas
clsicas, se resuelven ms eficazmente si se utilizan mtodos diseados para cada
caso particular. A travs de la historia de las matemticas se ha construido una
coleccin de tales tcnicas. Algunas han sido olvidadas y reinventadas, otras
recibieron poca atencin hasta que las computadoras las hicieron utilizables.
El grueso de material al respecto es de origen reciente debido a que muchos de los
problemas, tales como el flujo de trfico, recin ahora cobran inters y tambin
debido al gran nmero de investigadores disponibles actualmente para analizar tales
problemas. Cuando ese material es catalogado dentro de un cuerpo autocontenido de
conocimientos el resultado es una nueva rama de las matemticas aplicadas.

11

Introduccin a la Investigacin de Operaciones

2.1.4 Conceptos Bsicos de Optimizacin


Esta seccin introduce algunos de los conceptos bsicos de optimizacin que
se utilizan a lo largo del presente compendio. Cada concepto se ilustra por medio del
siguiente ejemplo.
El problema es:
Maximizar:

f (x1,x2)

(1.1)

sujeto a:

h1 (x1,x2) 0
x1 0
x2 0

(1.2)
(1.3)
(1.4)

Este es un problema tpico en la teora de optimizacin: la maximizacin


(o minimizacin) de una funcin real de variables reales (a veces una sola variable)
sujeta a un nmero de restricciones (a veces este nmero es cero).
La funcin f se llama funcin objetivo, x1 y x2 se llaman variables independientes
o variables decisionales. El problema es encontrar valores reales para x1 y x2, que
satisfagan las restricciones (1.2), (1.3) y (1.4), los cuales introducidos en (1.1) hagan
que f (x1,x2) tome un valor no menor que para cualquier otro par x1,x2.
En la figura siguiente se muestran tres contornos de la funcin objetivo.

x2

f (x1,x2) = 0.25

(0,1)

f (x1,x2) = 0.50

S
h1 (x1,x2) = 0

f (x1,x2) = 1.00
x1
(1,0)

La funcin objetivo tiene el mismo valor en todos los puntos de cada lnea, de
modo que los contornos pueden asimilarse a las isobaras (o isotermas) de un mapa
climtico.
No es difcil ver que la solucin del problema es:
X = ( x 1 , x 2 ) = ( 1, 0 )

12

Introduccin a la Investigacin de Operaciones


Esto significa que
f ( X ) f ( X ), X S

(1.5)

Cuando una solucin X S satisface (1.5) se llama solucin ptima, y en este caso
solucin mxima (tambin solucin optimal o maximal). Si el smbolo en (1.5) fuera
, X sera una solucin mnima. Adems, f ( X ) se llama valor ptimo, y no debe
ser confundido con solucin ptima.
En la figura se observa que se podran obtener valores mayores de f eligiendo
ciertos x1, x2 fuera de S.
Cualquier par ordenado de nmeros reales se llama solucin del problema y el
valor correspondiente de f se llama valor de la solucin. Una solucin X tal que X S
se llama solucin factible, en tanto que S = {(x1,x2) : h (x1,x2) 0, x1 0, x2 0},
que generalmente es una regin conexa, se llama regin factible.

2.2 Convexidad
Se revn a continuacin las propiedades ms importantes de los conjuntos convexos y
de las funciones convexas, tales conjuntos y funciones juegan un rol muy importante
en la optimizacin por dos motivos:
Cuando se tienen funciones y conjuntos convexos se puede identificar con
seguridad los llamados ptimos globales.
Muchas operaciones y transformaciones conservan la convexidad, por lo que se
puede construir funciones y conjuntos convexos ms complicados a partir de los ms
sencillos.
Definicin: Combinacin Convexa.
Dados (x,y) n, una combinacin convexa de ellos es cualquier punto de la forma:
z = x + (1) y
con | 0 1.
Notas:
Si 0 y 1, se dice que z es una combinacin convexa estricta (o propia).
La interpretacin geomtrica es que z es un punto del segmento de recta
determinado por (x,y).
Definicin: Conjunto Convexo.
S n es un conjunto convexo si
[x + (1 ) y] S
(x,y) S, : 0 1

13

Introduccin a la Investigacin de Operaciones

conjunto convexo

conjunto no convexo

Es decir que S es un conjunto convexo si contiene a todos los segmentos de recta que
se pueden formar con los puntos que le pertenecen.
Definicin: Funcin Convexa (en un conjunto convexo).
Sea S n, un conjunto convexo.
La funcin f: S es convexa en S si:
f [x + (1) y] f (x) + (1) f (y)
(x,y) S, : 0 1
Si S = n, se dice que f es convexa.
f

f(x) +(1) f(y)


f(x)

f [ x + (1) y ]
f(y)

2.2.1 Composicin de conjuntos y funciones convexas


La importancia de las funciones y conjuntos convexos radica en que las condiciones
necesarias para que una solucin sea un ptimo local se convierten en condiciones
suficientes para que sea ptimo global, cuando las funciones y conjuntos en cuestin
son convexos.
Sean S y T conjuntos convexos, y f una funcin convexa. Entonces los
siguientes conjuntos tambin son convexos:
i

S = {x| x S}

iii

S +T = {x+y| x S, y T} v

ii

ST

iv

{x| f(x) }

{ (x,) | f(x) }

Sean f y g funciones convexas en un conjunto convexo S, y 0.


Entonces las siguientes funciones tambin son convexas en S.
i

h1(x) = f(x) + g(x)

ii

h2(x) = f(x)

iii

h3(x) = max{f(x), g(x)}

Sean fi : Ii , (i = 1,...,n) funciones convexas en el intervalo Ii .


14

Introduccin a la Investigacin de Operaciones

f ( x) =

n
i =1

f i ( x ) es una funcin convexa en I = {x n | xi Ii}

2.2.2 Funciones convexas reales, de una sola variable


Para poder utilizar los resultados anteriormente expuestos es necesario poder
reconocer las funciones convexas. Por tal motivo, en primer lugar se analizarn las
funciones de una sola variable.
Una funcin f : S es convexa en el conjunto convexo S, sii:
f((1) x + y) (1) f(x) + f(y)
x, y S, con 0 o bien 1.
Una funcin diferenciable f : I con I es convexa sii:
f(y) f(x) + f(x) (yx)
x,y I
Una funcin diferenciable f en un intervalo I es convexa sii f es no decreciente.
Una funcin f diferenciable hasta el segundo orden en un intervalo I es convexa
sii f 0 en I.

2.2.3 Funciones convexas en n


Una funcin diferenciable f en un conjunto convexo S es convexa sii
f(y) f(x) +f (x) (yx), x,y S.
Una funcin f diferenciable hasta el segundo rden en S n convexo y abierto es
2f
convexa sii la matriz de derivadas segundas:
es semidefinida positiva en
x i x j
n.

Proposicin: desigualdad de Jensen


Sea f : C R una funcin convexa sobre un conjunto convexo y xi C , m 1, i 0
m

con
i =1

i = 1 .
m

Entonces se cumple que:

f(
i =1

i xi )

m
i =1

i f ( xi )

Demostracin por induccin en m:


Paso Base (m = 2): Sean 12 0 / 1 + 2 = 1 y x1 , x2 C .

f (1 x1 + 2 x 2 ) = f ( 1 x1 + (1 1 ) x2 ) 1 f ( x1 ) + (1 1 ) f ( x2 )
1 + 2 = 1

f es convexa en

15

Introduccin a la Investigacin de Operaciones

Paso Inductivo:
k

(Hiptesis)

f(
i =1
m

(Tesis)

f(
i =1

i xi )
i xi )

k
i =1
m
i =1

i f ( xi ) , k m 1
i f ( xi )

Demostracin:
m

f(
i =1

i xi ) = f ( m x m +

m 1
i =1

i xi ) = f m xm + (1 m )

m 1
i =1

i xi
=
(1 m )

= f ( m x m + (1 m ) y ) m f ( xm ) + (1 m ) f ( y ) = m f ( x m ) + (1 m )

m 1
i =1

i xi
)
(1 m )

f convexa en C

m f ( x m ) + (1 m )

m 1
i =1

i
f ( xi ) =
(1 m )

m
i =1

i f ( xi )

H.I.

2.3 Optimos Locales y Globales


En este captulo se estudian las propiedades de las soluciones ptimas. Se brinda
adems un conjunto de condiciones necesarias y suficientes para que una solucin sea
local o globalmente ptima.

2.3.1 Optimos locales y globales, direcciones factibles y direcciones de


descenso
La siguiente es la forma general de un problema de optimizacin:
Min f ( x)
(G ) sujeto a :
xF
y los problemas de programacin matemtica, tienen la forma siguiente:
Min f ( x)
sujeto a :
(M )
g ( x) 0
x X
Todos los problemas de optimizacin pueden ser escritos en la forma general (G).
Se supondr que F n y f : F , donde F es la regin factible y f la funcin
objetivo.

16

Introduccin a la Investigacin de Operaciones

En un problema de programacin matemtica se supone que


X n, g : X m y f : X .

En el problema (M) la regin factible es el conjunto: {x X g ( x) 0}


Definicin: x F es un ptimo global de (G) sii f ( x ) f ( x ) x F .
Definicin: x F es un ptimo local de (G) sii > 0, tal que se cumple que
f ( x ) f ( x ) x F,

con x x < .

La mayora de los mtodos para hallar un ptimo son por bsqueda direccional:
partiendo de un punto de F, se define una direccin de bsqueda y se determina un
nuevo punto a lo largo de sta. Por ese motivo son de inters los conceptos de
direccin factible y direccin de descenso.
Definicin: d es una direccin factible de (G) en x F si 0 > 0 tal que x + d F
(0,0)
Definicin: d es una direccin de descenso [o ascenso] de la funcin f en x F si
0 > 0 tal que
f ( x + d ) < f ( x )

(0,0)

en el caso de ascenso: ( f ( x + d ) > f ( x ) ]


Observacin: Sea f una funcin diferenciable en x F . Si f ( x ) d < 0 , entonces d es
una direccin de descenso en x .

2.3.2 Condiciones necesarias y suficientes para ptimos


Con las definiciones que preceden, ms las de convexidad, se puede definir un
conjunto de condiciones de optimalidad. Previamente se deber distinguir entre
condicin necesaria y condicin suficiente.
Una condicin necesaria para un ptimo (local) es una condicin que se cumple en
cada solucin optimal, aunque tambin podra cumplirse en otras soluciones.
Puede ser utilizada para descartar, en la bsqueda del ptimo, aquellas soluciones que
no cumplen la condicin necesaria de optimalidad, o limitar a priori la bsqueda a
aquellas soluciones que cumplen dicha condicin.
Una condicin suficiente para un ptimo (local) es una condicin que si se cumple
garantiza que la solucin es ptima (local).
Se puede utilizar en un procedimiento en el que se trata de lograr que la condicin se
cumpla, para de ese modo obtener una solucin ptima.
Teorema: Si x F es un ptimo local de (G) no existe en ese punto ninguna direccin
de descenso que adems sea factible.

En consecuencia: una condicin necesaria para que x F sea un ptimo local, es que
en ese punto no exista ninguna direccin factible de descenso.
Teorema: Si en un problema del tipo (G), la funcin objetivo f es diferenciable, y
x F es un ptimo local de (G), entonces f ( x ) d 0 para todas las direcciones
factibles d en x .

17

Introduccin a la Investigacin de Operaciones


Corolario: Si la funcin objetivo f de (G) es diferenciable, y x es un punto interior de
F que cumple ser ptimo local, entonces: f ( x ) = 0 .
Teorema: Si la funcin objetivo f, y la regin factible F de (G) son convexas y
adems no existe una direccin factible de descenso en x F , entonces x es un
ptimo global del problema (G).

Ntese que el teorema precedente establece una condicin suficiente de optimalidad


para un problema en que la funcin objetivo y la regin factible son convexas.
Teorema: Sean f y F convexas en el problema (G), con f diferenciable. Si existe x F
tal que f ( x ) d 0 para todas las direcciones factibles d en x , entonces x es un
ptimo global de (G).

2.4 Condiciones de KuhnTucker


Para problemas de programacin matemtica tambin se pueden aplicar los teoremas
anteriores. Para este tipo de problemas existen adems condiciones de optimalidad
especiales, las llamadas condiciones de KuhnTucker. Estas sern introducidas a
travs de una analoga con la mecnica. Considrese el siguiente problema:
Min f ( x)
sujeto a :
(M )
g i ( x) 0,

i = 1,..., m

x X
Los ptimos locales de (M) pueden ser vistos como las posiciones de equilibrio
estable de una partcula que se mueve en un campo de fuerza cuyo potencial es f, en
una regin X, y condicionada a moverse en el interior de una regin delimitada por
ciertas paredes : Vi = {x g i ( x) = 0}.
Supngase que la partcula est en reposo en x , punto interior de X.
La partcula est expuesta a fuerzas de reaccin ri perpendiculares a las paredes y
orientadas hacia el interior, como los gradientes gi son tambin perpendiculares a las
paredes, pero orientados hacia el exterior, las fuerzas reactivas de las paredes pueden
expresarse como: ri = i gi ( x ) para parmetros i 0 , suponiendo que gi ( x ) 0 .
Las fuerzas reactivas slo actan en las paredes que estn en contacto con la partcula,
es decir que i 0 solamente cuando gi ( x ) = 0 . Esto se expresa en la forma siguiente:
i gi ( x ) = 0, i = 1,..., m .
Finalmente, para que la partcula est en reposo se exige balance de las fuerzas:
f ( x ) +

m
i =1

( i gi ( x )) = 0

18

Introduccin a la Investigacin de Operaciones

El resumen de estas exigencias son las Condiciones de Kuhn Tucker:


i

g ( x ) 0,

ii

i gi ( x ) = 0 ,

iii

i 0,

iv

f ( x ) +

es decir: que el punto est en la regin factible.


i = 1,

,m,

fuerza slo en las paredes activas.

las fuerzas apuntan hacia el interior de la regin factible.


i gi ( x ) = 0 ,

equilibrio de fuerzas.

Las condiciones de Kuhn Tucker son necesarias para que un punto x interior a X,
sea ptimo local, salvo que ocurran casos excepcionales, por ejemplo: gi ( x ) = 0 , o
que f ( x ) no pueda ser balanceado por las fuerzas reactivas, como ocurre en la
figura siguiente:

g (x) = 0
2

g (x)
1

g (x) = 0
1

g (x)
2

f(x)

Estos casos excepcionales se evitan imponiendo constraint qualifications, que son


condiciones que deben ser satisfechas por las restricciones del problema. Muchas de
ellas se expresan en el punto ptimo potencial, por lo que no son muy tiles en la
prctica, ya que no se sabe cual es el ptimo. Suele ser ms til imponer las
siguientes:
i

que las restricciones sean lineales.

ii

que las gi sean convexas y exista un x tal que gi ( x ) < 0, i = 1,..., m

En resumen, se formula el:


Teorema de Kuhn Tucker: Sea x X un punto interior que es ptimo local del
problema (M), y sean f y gi funciones diferenciables. Si se cumplen las constraint
qualifications apropiadas existe m que satisface las siguientes condiciones de
Kuhn Tucker:

g( x ) 0

ii

i gi ( x ) = 0 ,

iii

iv

f ( x ) +

i = 1,

,m

i gi ( x ) = 0

19

Introduccin a la Investigacin de Operaciones

El siguiente es un caso particular del Teorema anterior:


Teorema: Sea f una funcin diferenciable y x una solucin ptima de:

Min f ( x)
( P) sujeto a :
x0
Entonces
i

x 0

ii

f ( x ) x = 0

iii

f ( x ) 0

En caso de tener restricciones de igualdad, las fuerzas reactivas de la analoga


mecnica anterior pueden apuntar hacia ambos lados de las paredes, y en
consecuencia desaparece la exigencia de i 0 .
Adems, todas las paredes son tocadas por la partcula en todos los puntos factibles,
por lo que i gi ( x ) = 0 tambin desaparece.
El teorema correspondiente se enuncia:
Teorema: Sea x un ptimo local del problema

Min f ( x)
( M = ) sujeto a :
g ( x) = 0
y sean las gi tales que gi ( x ) son linealmente independientes para i = 1,..., m
Entonces m tal que f ( x ) +

i gi ( x ) = 0

2.5 Relajaciones
Cuando se enfrenta un problema difcil de optimizacin, es posible reformularlo de un
modo ms fcil por medio de una relajacin; sta nueva versin se llama problema
relajado

2.5.1 Generalidades sobre relajaciones


Considrense los siguientes problemas:
Min f L ( x)

Min f ( x)
(G ) sujeto a :
xF

(G L ) sujeto a :
x FL

Definicin: Se dice que (GL) es una relajacin de (G) sii:

i) FL F,
ii) f L(x) f (x), x F.
20

Introduccin a la Investigacin de Operaciones

f
f

FL

Observacin: Si f est definida fuera de F, no es necesario que se cumpla f L f para


los x exteriores al dominio F.
Teorema 1:

Sea (GL) una relajacin de (G),


x L y x soluciones optimales de (GL) y (G) respectivamente
x F.

En tales condiciones se cumple:


fL( x L ) f ( x ) f ( x L ).
Prueba:

fL( x L ) fL ( x ) por ser x L solucin optimal de (GL).


fL ( x ) f ( x ) por la definicin de relajacin.
f ( x ) f ( x L ) por ser x solucin optimal de (G).

Observacin: En el teorema anterior se supone que existe por lo menos un valor de


xF en el cual la funcin f alcanza un mnimo. Para formular el teorema de un modo
ms general debera decir inf{f(x):xF} en vez de f( x ), y eventualmente lo mismo
para fL( x L ). De esa manera se pierde, lamentablemente, algo de claridad.
Supondremos, por lo tanto, a partir de ahora, que siempre existe un valor xF que es
solucin optimal de (G).
Corolario 1.1:

Sean (GL) una relajacin de (G), y x L una solucin optimal de (GL) que cumple las
siguientes condiciones:
i x L F,
ii fL( x L ) = f ( x L )
En tales condiciones se cumple que x L es tambin solucin optimal de (G).
Prueba:

Para que x L sea solucin optimal de (G) debe, primero, ser una solucin factible, lo
cual es cierto por i. Para demostrar que brinda un valor de f menor o igual que el de
cualquier otra solucin factible; sea x una solucin factible cualquiera de (G).
21

Introduccin a la Investigacin de Operaciones

f(x) fL(x) por ser (GL) una relajacin de (G).


fL(x) fL( x L ) por ser x L una solucin optimal de (GL).
fL( x L ) = f( x L ) por hiptesis ii
luego: f(x)f( x L ).
Entre las relajaciones ms tpicas se puede citar:

ignorar la exigencia de que algunas variables sean nmeros enteros

ignorar algunas restricciones de positividad.

2.5.2 Relajacin Lagrangeana.


En los problemas de Programacin Matemtica, que son del tipo:
Min f ( x)
sujeto a :
(M )
g i ( x) 0,

i = 1,

,m

x X
se usa comnmente la llamada relajacin lagrangeana que consiste en agregar la
variable m y construir el siguiente problema:
Min x f ( x) +

m
j =1

j g j ( x)

( M ) sujeto a :
x X
Los valores j se llaman multiplicadores de Lagrange o parmetros lagrangeanos.
Atencin: los multiplicadores de Lagrange no son variables sino parmetros, es decir
que por cada tenemos un problema de optimizacin (M) en la variable x.
f ( x ) = f ( x ) + T g ( x ) = f ( x ) +

i gi ( x ) es la llamada funcin lagrangeana de (M) y se

escribe L(x,).
Teorema 2:

(M) es una relajacin de (M).

Prueba:

Deben cumplirse las dos condiciones de la definicin de relajacin:


La regin de soluciones factibles de M es F = {xX: g(x)0}, que es un
subconjunto de X; adems la regin de soluciones factibles de M es F = X;
por lo tanto: F F.
Sea xF, entonces gi(x)0, i.

22

Introduccin a la Investigacin de Operaciones

Si 0, es decir: i 0, i, se cumple que


f ( x) = f ( x) +

m
i =1

i gi ( x ) 0 , por lo tanto,

i gi ( x ) f ( x ) . En consecuencia: M es una relajacin de M

i =1

En el caso de problemas con restricciones de igualdad


Min f ( x)
sujeto a :
(M = )
g ( x) = 0
x X
La relajacin lagrangeana se construye de forma anloga.
Teorema 3:

(M) es una relajacin de (M=) para cualquier m.


Prueba:

Se deduce a partir de la prueba del teorema anterior.


Teorema 4: (Teorema fundamental de la Relajacin Lagrangeana)

Si x es una solucin optimal de M que cumple:


i

g( x ) 0.

ii

igi( x ) = 0, i=1...m.

iii

0.

entonces x es tambin una solucin optimal de M.


Prueba:

M es una relajacin de M debido a la condicin iii y por el Teorema 2.


x es solucin optimal de M por hiptesis.
x F debido a la condicin i.

f ( x ) = f ( x ) +

m
i =1

i gi ( x ) = f ( x ) por la condicin ii.

De todo lo anterior, y del Corolario 1.1 se deduce la tesis.


La condicin ii se llama condicin de complementariedad porque exige que i = 0, o
bien: que gi ( x ) = 0.

23

Introduccin a la Investigacin de Operaciones

Ejemplo 1: Considrese el siguiente problema:


Min f ( x) =

n
j =1

( P)

()
x 2j
2

sujeto a :
n
j =1

ajxj b

x j 0, j = 1,..., n

Se supone que b y aj (j = 1,...,n) son positivos. Se comienza por escribir la primera


restriccin de la siguiente forma: b

a jx j 0 .

j=1

A continuacin se introduce un parmetro lagrangeano (pues hay solamente una


restriccin) y se obtiene el problema lagrangeano relajado (P):
Min x f ( x) =

x2

j =1

( 2j a j x j ) + b

( P ) sujeto a :
x j 0, j = 1,..., n
En la minimizacin con respecto a x, b es una constante que no incide en la
determinacin de la solucin optimal.
Puesto que en (P) las distintas xj son variables independientes, se puede
descomponer el problema (P) en n subproblemas de optimizacin (Pj)
independientes:
Min x j f ( x j ) =

x 2j
2

a j x j

( P , j ) sujeto a :
x j 0, j = 1,..., n

Se tiene que

f , j
x j

( x j ) = x j a j

f , j
( x j ) > 0; si x j > a j
x j
Luego

f , j
( x j ) < 0; si x j < a j
x j
f , j
( x j ) = 0; si x j = a j
x j

Por lo tanto (P,j) presenta un mnimo global cuando x j = a j = x j ( ) , y en


consecuencia: (P) tiene un ptimo global en x ( ) .
24

Introduccin a la Investigacin de Operaciones

Para resolver el problema (P) se trata de encontrar los valores de que satisfacen las
condiciones i al iii del Teorema 4.
La condicin ii (condicin de complementariedad) establece que:

(b

a j x j ( ) ) = 0 , es decir que:

= 0, o bien :
a j x j ( ) = b

Se discuten a continuacin ambos casos.


Si = 0

x j ( ) = 0 , y no se satisface la condicin i:
a j x j ( ) =

Si b =

a j a j

Por lo tanto = = b

b=

a j x j () b .

a 2j .

n
k =1

a k2 .

Con este valor de es vlido que 0, lo cual equivale a iii; y es vlido que
a j x j ( ) = b , que equivale a i y ii. Por lo tanto satisface el Teorema 4, es decir que
x j = x j ( ) = a jb
a k2 es una solucin ptima de (P). El valor optimal es:
f ( x) =

1
2

a k2 ) 2 = 21 b 2

a 2j b 2 (

a k2 (

a k2 ) 2 = 21 b 2

a k2

Ejemplo 2: El problema del mochilero o Knapsac Problem (caso continuo).

Considrese el problema del mochilero, definido como sigue:


n

Max
j =1

( KP)

ajxj

sujeto a :
n
j =1

bj x j b

0 xj 1

Siendo aj, bj, b > 0.


Se trata del problema de cargar de vveres una mochila de volumen b para un viaje.
Se debe elegir entre n comestibles; de cada uno de ellos hay existencias por un
volumen bj con un poder nutricional total aj; xj representa la parte que el mochilero
deber cargar de las existencias del alimento jsimo.
Los alimentos tienen distinto valor que es su poder nutricional por unidad de
volumen (cj = aj / bj). Parece natural elegir a los comestibles en orden decreciente de
valor nutricional. Supngase que se cumple c1c2cn.
Se propone el siguiente procedimiento para llenar la mochila:
asignar x1 = 1, x2 = 1, etc. hasta llegar al alimento ksimo, el cual no cabe
totalmente, por lo que se coloca todo cuanto quepa (0 xk < 1).
Se probar que sta es una solucin ptima utilizando relajacin lagrangeana.

25

Introduccin a la Investigacin de Operaciones

Se construye la relajacin lagrangeana (KP) de (KP) (previamente se plantea el


problema como uno de minimizacin)
n

Min x

j =1

( a j + b j ) x j b

( KP ) sujeto a :
0 xj 1
(KP) se descompone en un problema (KP,j) para cada j.

Min x j ( a j + b j ) x j
( KP , j ) sujeto a :
0 xj 1
Ntese que si aj + bj > 0, es decir: si > aj / bj = cj, el valor minimal se presenta
en xj() = 0. De la misma forma, si < cj se obtiene xj() = 1, y si = cj, se puede
elegir xj [0,1].
Sea = ck, donde k es el comestible que (de acuerdo a lo anterior) no entraba
totalmente en la mochila.
Si j < k , entonces cj y por lo tanto: x j ( ) = 1
Si j > k, entonces cj < , y por lo tanto: x j ( ) = 0 .
x k ( ) se puede elegir tal que x k ( ) 0, 1 .

La solucin hallada intuitivamente, soluciona el problema relajado con = ck.


Adems se cumple 0 y a j x j ( ) = b por lo cual x ( ) satisface las condiciones i al
iii del Teorema 4. Por lo tanto x ( ) es solucin ptima de (KP).
En resumen:

El Problema del mochilero:


n

Max
j =1

( KP)

ajxj

sujeto a :
n
j =1

bj x j b

0 xj 1

(con aj, bj y b > 0) se soluciona, en el caso continuo, asignando variables iguales a 1


en orden de valor, es decir, en orden descendiente de aj / bj y sin exceder la
disponibilidad b del recurso.

26

Introduccin a la Investigacin de Operaciones

Sea xk la variable que violara la restriccin si le fuera asignado el valor 1. Para esta
variable se elige un valor menor que 1 y de modo que la restriccin se satisfaga
exactamente.
Ejemplo 3: Encontrar un ptimo global al siguiente problema:
n

min
i =1

ai xi2

sujeto a
( P)

n
i =1

bi xi + ai

n
j =1

p j x j b0

xi > 0 i = 1..n

Sabiendo que pi > 0, ai > 0, bi > 0 i = 1..n y b0 > 0


Primero reescribimos la restriccin:
n
i =1
n
i =1

bi xi + ai

j =1

p j x j = b1 x1 + a1 p1 x1 + a1 p2 x2 + ... + a1 pn xn + ... + bn x n + an p1 x1 + a n p 2 x2 + ... + a n p n xn =

bi xi + pi xi A =

Siendo A=

n
i =1

(bi + A pi )xi

n
j =1

aj .

Por lo tanto, el problema puede ser reescrito as:


n

min
i =1

( P)

a i x i2

sujeto a
b0

n
i =1

(bi

+ A p i )x i 0

x i > 0 i = 1..n
Hallamos el problema P, relajando la restriccin:
n

min
i =1

ai xi2 (bi + A pi )xi + b0

( P ) sujeto a
xi > 0 i = 1..n

Eliminando el trmino independiente y separando el problema, tenemos:


27

Introduccin a la Investigacin de Operaciones

min a j x 2j (b j + A p j )x j
( P , j ) sujeto a
x j > 0 j = 1..n
Como a j > 0, la funcin objetivo es convexa. Entonces, encontramos el ptimo
derivando:
2a j x j (b j + A p j ) = 0

(b j + A p j )

x j ( ) =

2a j

Imponiendo la condicin de complementariedad, tenemos que

b0

n
i =1

(bi + A pi )xi ( )

=0

Si = 0, la solucin no es factible pues se violara la restriccin xi > 0.


Entonces
n
i =1

(bi + A pi )xi = b0

n
i =1

(bi + A pi ) (bi + A pi ) = b0
2a i

b0

(bi + A pi )2

i =1

2ai

Finalmente, la solucin ptima se obtiene sustituyendo ese valor de :


xj =

b0 (b j + A p j )
2a j

(bi + A pi )

i =1

2a i

b0 (b j + A p j )

=
aj

(bi + A pi )2

i =1

ai

Con condiciones de igualdad, el Teorema 4 tiene una forma ms sencilla.


Teorema 5:

Si x es una solucin optimal del problema (M) que cumple:


g( x ) = 0
entonces x es una solucin optimal de (M=).
Prueba:

Se utiliza el Corolario 1.1 y su notacin:


(M) es una relajacin de (M=) m por el Teorema 3.
x

es solucin optimal de (M) por hiptesis.

x F porque se cumple x X,

y g( x ) = 0.

28

Introduccin a la Investigacin de Operaciones

f L ( x ) = f ( x ) +

m
i =1

i gi ( x ) = f ( x )

pues gi( x ) = 0, i.

la conclusin se desprende ahora del Corolario citado.


Teorema 6:

Sean f y gi funciones convexas y diferenciables. Si x X y m, satisfacen:


i

g( x ) 0.

ii

igi( x ) = 0.

iii

iv

f ( x ) +

0.
m
i =1

i gi ( x ) = 0

entonces x es ptimo de (M).


Prueba:

i iii son las condiciones del Teorema 4.


Se demostrar a continuacin que iv significa que x es solucin optimal de (M):
es una funcin convexa porque i 0 implica que igi es convexa y
las sumas de funciones convexas son convexas.
f = f +

i gi

Como f = f +

i gi , la condicin iv implica que f ( x ) = 0 .

Por ser f(x) una funcin convexa, se cumple x X que:


f ( x ) f ( x ) + f ( x )( x x ) = f ( x )

y por lo tanto, x es solucin optimal de (M).


La tesis se desprende del Teorema 4.
La mayora de los teoremas de esta seccin suponen que x L F , o sea que la solucin
optimal del problema relajado pertence a la regin factible del problema original. Si
x L F se puede, a partir de x L , encontrar un punto x L F que no es mucho ms caro,
lo cual se deduce del siguiente teorema:
Teorema 7:

Sean
(GL) una relajacin de (G).
xL

y x soluciones optimales de (GL) y (G) respectivamente.

xL

una solucin no necesariamente optimal de (GL), que cumple x L F.

En estas condiciones se cumple: f L ( x L ) f ( x ) f ( x L ) .


Prueba:
f L ( x L ) f ( x ) , por el Teorema 1.

29

Introduccin a la Investigacin de Operaciones


f ( x ) f ( x L ) , por ser x

solucin optimal de (G).

luego: f L ( x L ) f ( x ) f ( x L )

2.6 Dualidad
En el captulo anterior se resolvieron problemas de optimizacin determinando
(analticamente) los multiplicadores de Lagrange. Esto rara vez se puede hacer en la
prctica, y en su lugar lo usual es determinar los multiplicadores de Lagrange
resolviendo un nuevo problema de optimizacin, llamado Problema Dual el cual
consiste en buscar la relajacin ms fuerte posible, o sea, una relajacin cuyo valor
optimal est tan prximo como sea posible del valor ptimo del problema original.

2.6.1 Problemas duales. Condiciones de optimalidad


Considrese un problema de Programacin Matemtica (P) cuyas restricciones son
todas del tipo (esta suposicin ser al slo efecto de fijar ideas):
Min f ( x)
sujeto a :
( P)
g ( x) 0
x X
La relajacin lagrangeana de este problema es (P):
Min f ( x) + T g ( x)
( P ) sujeto a :
x X
Sean: p el valor optimal de la funcin objetivo de (P) y () el valor optimal de la
funcin objetivo de (P), para cada .
p = Min { f ( x) g ( x) 0, x X }

( ) = Min f ( x) + T g ( x) x X

Puesto que (P) es una relajacin de (P) se cumple que 0 y entonces () p.


Es entonces natural elegir la relajacin ms fuerte posible, o sea: elegir 0 tal que
() sea maximal. Esto nos da el problema dual:
Max ( )
( D) sujeto a :

0
(P) se llama problema primal del problema (D).
Si se tiene restricciones de igualdad en el problema primal no habr exigencia de
positividad en el problema dual. Los teoremas que siguen son vlidos tambin en este

30

Introduccin a la Investigacin de Operaciones

caso, ya que se construyen a partir de que () p para los valores de que dan
relajaciones.
Sea d el valor optimal de (D). p y d son entoces los valores optimales primal y dual
respectivamente.
Observacin: d p
Prueba:

(P) es una relajacin de (P), por lo tanto () p, 0


Pero entoces: d = Max {() : 0} p
No siempre ocurre que d = p, por eso se define la discrepancia de dualidad (duality
gap): = p d
Ntese que siempre se cumple que 0.
Ejemplo 4:
n

Min x
( P)

x 2j 2

j =1

sujeto a :
n
j =1

ajxj b

xj 0

con aj y b positivos.
Se plantea el problema relajado lagrangeano, tal como se hizo en el captulo de
relajaciones:
n

Min x

j =1

( x 2j / 2 a j x j ) + b

( P ) sujeto a :
xj 0
La solucin de (P) es x j ( ) = a j , segn lo visto en relajaciones.
Entonces la funcin objetivo del problema dual es:
( ) =

n
j =1

(( a j ) 2 2 a j a j ) + b = 21 (

a 2j ) + b

De modo que el problema dual es:

31

Introduccin a la Investigacin de Operaciones

Max ( ) = 12 (

a 2j )2 + b

( D) sujeto a :

0
es una funcin cncava y tiene, por lo tanto, un valor mximo cuando d d = 0
(suponiendo que sto brinde una solucin factible). Se obtiene entonces:
0=

d
= (
d

a 2j ) + b , o sea: = b (

a 2j ) 0 , que es

factible.

Por lo tanto = b a 2j es una solucin optimal del problema dual. Este es el mismo
multiplicador de Lagrange que se hall en el captulo Relajaciones. Adems:
d = ( ) = 12 (

a 2j )b 2 (

a 2j ) 2 + bb

a 2j = 21 b 2

a 2j

El valor optimal del problema primal, calculado en el captulo de Relajaciones es:


p = 21 b 2
a 2j Por lo tanto en este caso: = p d = 0.
Ntese que la solucin ptima del problema primal x j = a j b a k2 = x j ( ) es igual a la
solucin ptima del problema relajado con la solucin ptima del problema dual
como multiplicador de Lagrange. Por lo tanto, se puede determinar la solucin primal
ptima con la ayuda de la solucin ptima dual.
Teorema 9:

Si x y son soluciones factibles de (P) y (D) respectivamente, entonces cumplen:


( ) f ( x )

Prueba:
( ) d p f ( x )

Corolario 9.1:

Sean x y soluciones factibles de (P) y (D) respectivamente, que cumplen:


( ) = f ( x ) .

En esas condiciones x y son soluciones optimales de (P) y (D) respectivamente.


Prueba:

Sea una solucin factible cualquiera del problema dual, de acuerdo al Teorema
anterior tenemos: ( ) f ( x ) = ( )
y en consecuencia: es solucin optimal del problema (D)
Anlogamente se demuestra que x es solucin optimal de (P)
Este corolario brinda una nueva interpretacin del Teorema 4. Bajo las condiciones
del Teorema es vlido que x y son factibles para (P) y (D) y adems que
( ) = f ( x ) + i gi ( x ) = f ( x ) . La optimalidad se desprende tambin del Corolario
anterior.

32

Introduccin a la Investigacin de Operaciones


Observacin: () es una funcin cncava.

En los casos en que se puede determinar en forma explcita (analtica) la funcin


objetivo del problema dual () vale la pena, en general, resolver el problema dual en
lugar del primal y despus determinar una solucin primal con la ayuda de los
teoremas que siguen. El gradiente de la funcin objetivo dual se obtiene a travs del
siguiente teorema (adems de tomar la derivada de la funcin deducida
analticamente).
Teorema 10:

Si se cumple que X es cerrado y acotado, y que (P) tiene solucin ptima x ( )


nica entonces: ( ) = g ( x ( )) T
Prueba:

Sean
( x , ) = f ( x ) + T g ( x ) = f ( x ) + g ( x ) T

( ) = Min xX {f ( x) + T g ( x)} = Min xX [ ( x, )]


Ntese que ( x , ) = g ( x ) T .
Adems ( ) = x [ x ( ), ] x ( ) + [ x ( ), ]
Como x() minimiza (x,) en el sentido de las x: x[x(),] = 0
Luego: () = [x(),] = g ( x ( )) T
Ejemplo (continuacin): Se aplicar el Teorema en el ejemplo anterior

Sabemos que x j ( ) = a j y que ( ) = 12


g ( x ) = b

a j x j () = b

(a )
2
j

+ b

a j a j

Adems ( ) = a 2j + b , que concuerda con ( ) = g ( x ( )) como deba ser de


acuerdo al teorema precedente.
Cuando = se cumple que ( ) = g ( x ) = 0 y por lo tanto x es una solucin
factible. Adems g ( x ) = 0 , por lo tanto: f ( x ) = f ( x ) + g ( x ) = ( ) .
La optimalidad de x y de se desprende del Corolario 9.1.
Cabe preguntarse si en general se puede tener la esperanza de encontrar la solucin
ptima del problema primal a travs de la solucin ptima del dual. Los siguientes
teoremas responden parcialmente a esta inquietud.
Teorema 11:

Si X es cerrado y acotado, es solucin ptima de (D) y ( P ) tiene una solucin


ptima x ( ) nica. Entonces se cumple:
i T g ( x ( )) = 0
ii g ( x ( )) 0

33

Introduccin a la Investigacin de Operaciones

Prueba:
x( )

es solucin ptima nica de ( P ) entonces, por el Teorema 10

( ) = g ( x ( )) T

(*)

Como es solucin ptima de (D), y () es diferenciable, se cumple que:


a) ( ) = 0

b) ( ) 0

Introduciendo (*) en a y b se obtienen i y ii.


Los puntos i y ii del Teorema 11 coinciden con los i y ii del Teorema 4. La condicin
iii ( 0) se cumple automticamente. Del Teorema 4 y del Corolario 9.1 se deduce
el teorema siguiente.
Teorema 12:

Si X es cerrado y acotado, es solucin ptima de (D), y ( P ) tiene un ptimo nico


x ( ) . Entonces x ( ) es solucin ptima de (P).
Solamente algunos problemas muy especiales pueden ser resueltos con la tcnica del
captulo Relajaciones, que consiste en resolver analticamente el problema relajado
para valores fijos de los parmetros lagrangeanos, y posteriormente determinar dichos
parmetros de modo que se cumplan las condiciones del Teorema 4.
Con la ayuda del problema dual se obtiene una tcnica general para determinar los
valores ptimos de los parmetros de Lagrange, a partir de los cuales se puede
calcular las soluciones ptimas del problema primal, de forma que el duality gap
sea nulo (=0).

2.7 Programacion Lineal


En este captulo se exponen la teora y los mtodos de la Programacin Lineal (PL),
que comprende los problemas de optimizacin donde se tiene una funcin objetivo
lineal y restricciones lineales. Esta es la clase de problemas ms importante y ms
usada, entre otras cosas porque se puede resolver problemas muy grandes en poco
tiempo de clculo y con bajo consumo de recursos computacionales, y tambin
porque esta teora inspira el desarrollo de otras reas.

2.7.1 Generalidades
En los problemas de programacin lineal (PL) se tiene una funcin objetivo lineal y
restricciones lineales. En general se exige tambin la positividad de las variables. Un
problema general de PL se puede escribir en la forma siguiente:

34

Introduccin a la Investigacin de Operaciones

Min z =

j =1

cjxj

sujeto a :
n
j =1
n
j =1

aij x j = bi , i = 1,..., k
aij x j bi , i = k + 1,..., m

x j 0,

j = 1,..., l

La regin factible de un problema de PL es un conjunto polidrico. En un espacio


tridimensional, un poliedro es un conjunto limitado por superficies planas como lo
muestra el ejemplo de la figura:

El mtodo predominante para la resolucin de problemas de PL es el llamado mtodo


simplex, el cual utiliza una estrategia active set, que en este caso implica que se
recorran las aristas de la regin factible, de vrtice en vrtice.
El mtodo simplex exige que se haya formulado el problema en su forma standard,
en la que slo se tienen restricciones de igualdad (y la exigencia de positividad de las
variables). Sin embargo, la formulacin ms usual en el contexto terico es la forma
cannica, en que se tienen solamente restricciones de desigualdad (y condiciones de
positividad de las variables). Cualquier problema de PL se puede formular tanto en
forma cannica como en forma standard.

2.7.2 Forma cannica y dualidad


La forma cannica es la ms adecuada para razonamientos tericos relacionados con
la dualidad:
n

Min z =

j =1

( PLc )

cjxj

sujeto a :
n
j =1

a j x j bi ,

x j 0,

i = 1,..., m
j = 1,..., n

35

Introduccin a la Investigacin de Operaciones

Utilizando notacin vectorial y matricial se obtiene una forma ms compacta de


escribir el problema (PLc):
Min z = c T x
( PLc )

sujeto a :
Ax b
x0

Donde {c, x} n, b m, y A mn.


El problema dual del problema de PL en la forma cannica tiene la forma que se
deduce del teorema siguiente:
Teorema 13:

El problema dual (PDc) del problema primal (PLc) es:

Max b T u
sujeto a :

( PDc )

AT u c
u0

Prueba:

Antes de hallar el dual se reescribe el problema primal en la forma utilizada para la


definicin de dualidad:
Min c T x
( PLc )

sujeto a :
b Ax 0
x0

Se decide no relajar las exigencias de positividad (x 0). La funcin objetivo del dual
es () = Minx {cTx + T(bAx)x 0} = Minx {(cT TA)x + Tbx 0}, que
equivale a:
n

( ) =

Min x

j =1

(c T T A) j x j + T b x j 0, j =

T b, si (c T T A) j 0, j
, si j tal que (c T T A) j < 0

Como se desea maximizar (), el valor no interesa. Se tiene una relajacin si se


cumple que 0. El problema dual toma entonces la forma:
Max ( )
( PDc ) sujeto a :

36

Introduccin a la Investigacin de Operaciones

y puede ser escrito como:


Max T b
( PDc )

sujeto a :
c T T A 0

0
Transponiendo en la funcin objetivo y en la restriccin se obtiene:
Max b T
( PDc )

sujeto a :
AT c

0
La tesis se deduce sustituyendo por u.

Teorema 14:

El problema dual del problema dual (PDc) es el problema primal (PLc).


Prueba:

Se sugiere hacer la relajacin lagrangeana de (PDc) y continuar de la misma forma


que en el Teorema 13.

Se pueden construir problemas duales de problemas cuyas restricciones sean de


igualdad o desigualdad, y cuyas variables tengan o no restriccin de signo.
Debido a que las variables duales se interpretan por medio de relajacin lagrangeana,
se observa que restricciones de desigualdad conducen a variables duales restringidas
en su signo, en tanto que restricciones de igualdad conducen a variables duales sin
limitacin de signo.
Adems, como las variables primales son variables duales para el problema dual, se
concluye que variables primales con restriccin de signo conducen a restricciones de
desigualdad en el dual, mientras que las variables primales no restringidas respecto al
signo se relacionan con restricciones de igualdad en el problema dual.
Todo lo que precede se formula en el siguiente teorema, en un modo ms general.

37

Introduccin a la Investigacin de Operaciones

Teorema 15:
Min c1T x1 + c 2T x 2
sujeto a :
A11 x1 + A12 x 2 = b1

El problema general de PL:

A21 x1 + A22 x 2 b2
x1 libre,
x2 0

Max b1T u1 + b2T u 2


sujeto a :
Tiene como dual a

T
A11T u1 + A21
u 2 = c1
T
A12T u1 + A22
u 2 c2

u1 libre,
u2 0

2.7.3 Forma standard


Para la resolucin numrica de problemas de PL se usa la llamada forma standard:
Min c T x
( PLs )

sujeto a :
Ax = b

(b 0)

x0

En la forma standard se asume que b 0. Si esta condicin no se cumpliera en algn


caso particular, basta multiplicar por 1 las ecuaciones que tienen signo negativo en b.

2.7.4 Transformaciones entre distintas formas


a) de restricciones de desigualdad a restricciones de igualdad
Una desigualdad puede llevarse a una igualdad introduciendo una nueva variable no
negativa, llamada variable de holgura.
n

La restriccin

a ijx j bi se transforma en una restriccin de igualdad, y se agrega una

j=1

condicin de positividad:
n
j =1

aij x j + y = bi

y0
As, con la ayuda de variables de hogura, se llevan a la forma standard los problemas
expresados en forma cannica.

38

Introduccin a la Investigacin de Operaciones

Min c T x

Min c T x

El problema ( PLc )

sujeto a :
Ax b

es equivalente a ( P)

sujeto a :
Ax y = b
x, y 0

x0

b) de restricciones de igualdad a restricciones de desigualdad


El sistema de ecuaciones Ax = b puede ser fcilmente transformado en dos
desigualdades:
Ax b
Ax b
o bien:
Ax b
Ax b

c) de variables libres a variables con restriccin de signo


El mtodo simplex puede ser aplicado con variables libres.
Una variable libre puede, de todas formas, ser transformada en una variable con
restriccin de signo si se la escribe como diferencia entre dos variables positivas:
x = x+ x ,

x + , x 0.

2.7.5 Mtodo Simplex


Considrese el siguiente problema en su forma standard:
Min z = c T x
( PLs )

sujeto a :
Ax = b
x 0 (x n )

Las soluciones del sistema de ecuaciones Ax = b estn contenidas en un hiperplano de


n, en el cual adems estn presentes las restricciones de positividad x 0.
x =0
i

-c

a
xk =0

x| Ax =b

Si A mn es de rango completo, es decir: sus filas son linealmente


independientes, entonces el hiperplano {x | Ax = b} tiene dimensin nm.
Si se conoce una solucin factible (p. ej.: a), se busca una solucin factible mejor en
la direccin negativa del gradiente de z, para minimizar la funcin objetivo.
Hay dos formas de atacar este problema:

39

Introduccin a la Investigacin de Operaciones

a) proyectar c en el hiperplano {x | Ax = b} y moverse en la direccin proyectada.


b) resolver m variables con la ayuda de la ecuacin Ax = b y expresarlas con la ayuda
de las restantes nm variables.
El mtodo simplex utiliza la segunda variante.
Sean las primeras m variables las que se expresan con la ayuda de las dems.
La ecuacin Ax = b se puede escribir como
ABxB + ANxN = b
donde xB m contiene las m primeras componentes de x, xN nm contiene a
las nm restantes. La matriz AB mm contiene las primeras m columnas de A, en
tanto que AN m(nm) contiene a las restantes.
Si AB mm tiene rango completo, se la puede invertir (lo cual constituye una
condicin para poder calcular xB). Asumiendo que AB es invertible, se obtiene la
siguiente expresin:
x B + AB1 AN x N = AB1b

y luego se expresa xB como funcin de xN:


x B = AB1b AB1 AN x N

Variando libremente xN, se obtiene a partir de la expresin precedente un valor de xB


que hace que se satisfaga la condicin Ax = b. Si se elige xN = 0 se obtiene x B = AB1b ,
ste tipo de soluciones se llama solucin bsica.
La matriz AB es la correspondiente matriz bsica (porque sus columnas forman una
base de m). Las componentes de xB se llaman variables bsicas, y las de xN:
variables no bsicas. La solucin bsica x B = AB1b , xN = 0, es factible si x 0, es decir,
si xB 0.
Las soluciones bsicas factibles se corresponden con los vrtices (puntos extremos) de
la regin de soluciones factibles.
Se puede eliminar xB de la funcin objetivo. Se comienza por expresar el vector cT
n como cT = ( cTB , cTN ) , se obtiene as la siguiente forma de la funcin objetivo:
z = c TB x B + c TN x B
= c TB AB1b c TB AB1 AN x N + c TN x N
= ( c TN c TB AB1 AN ) x N + cTB AB1b
= c NT x N + z

En la solucin bsica xN = 0 y z = z .
c NT = c TN c TB AB1 AN

se llama costo reducido. El costo reducido indica como vara la


funcin objetivo al variar xN, dos trminos componen el costo reducido: c TN indica la

40

Introduccin a la Investigacin de Operaciones

incidencia directa de xN sobre la funcin objetivo, en tanto que c TB AB1 AN refleja la


influencia indirecta de xN a travs de las variaciones que provoca en xB.
Definiendo AN = AB1 AN y b = AB1b se puede reescribir el problema de PL en su forma
standard del siguiente modo:
Min z = c NT x N + z = z +

jN

cjxj

( PL s ) sujeto a :
x B = b AN x N
x B , x N 0.

La solucin bsica correspondiente es ( x B , x N ) = ( b , 0) . Supngase que dicha solucin


bsica es factible, es decir: b 0 .
Si alguna componente de c N , por ejemplo c j , es negativa, se obtendr un valor mejor
de la funcin objetivo incrementando xj desde su valor nulo actual.
Si slo aumenta xj, el incremento en xB se calcula como x B = b a jx j donde a j es la
columna correspondiente a xj en AN . Esta solucin es factible si xB 0, a
continuacin se estudian las condiciones que deben cumplirse para asegurar la
factibilidad.
La ecuacin x B = b a jx j expresada por componentes queda: ( x B )i = bi a ijx j ..
Si a ij 0 , entonces (xB)i no decrece al aumentar xj. En consecuencia el cumplimiento
de la restriccin (xB)i 0 no est condicionado por la variacin de xj.
Si a ij > 0 , entonces (xB)i disminuye al aumentar xj, y se hace cero cuando x j = b j a ij
En consecuencia, la solucin es factible si las variaciones de xj cumplen que:
x j Min i {bi aij | aij > 0}.

Cuando x j = Min i {bi aij | aij > 0}, una de las variables bsicas se hace cero (la o las
variables bsicas para las cuales se obtiene el mnimo), lo cual equivale a haberse
desplazado hacia un vrtice adyacente al de partida en la representacin geomtrica
del problema (p. ej. el punto b de la figura).
Es adecuado entonces realizar un cambio de sistema de coordenadas en el hiperplano
{x | Ax = b}, xj es ahora mayor que cero y se convierte en variable bsica, al tiempo
que la variable bsica que tom el valor cero se hace no bsica.
Esta es la esencia del funcionamiento del mtodo simplex, que fuera desarrollado por
G.B. Dantzig a fines de los 40. El mtodo se basa en que una solucin factible dada
puede ser mejorada si alguna componente de c N es negativa. El siguiente teorema
indica lo que sucede cuando c N 0 .

41

Introduccin a la Investigacin de Operaciones

Teorema 16

Si en el problema (PLs) se cumple que b 0 y adems c N 0 , entonces la solucin


bsica correspondiente es ptima.
Prueba:

Se demostrar a travs de relajaciones, utilizando el Corolario 1.1.


El problema (PLs) es el mismo que ( PLs ) aunque expresado en forma distinta.
Se obtiene una relajacin de ( PLs ) ignorando la restriccin x B = b AN x N , el problema
relajado es:
Min z = z + c NT x N = z +

cjxj

x j x N

( PL sr ) sujeto a :
xB , xN 0

( x B , x N ) = ( b , 0) es una solucin ptima de ( PLsr ), porque c j 0 y adems se puede


minimizar por separado en ( PLsr ).
( x B , x N ) = ( b , 0) es una solucin factible de ( PLs ) por ser xN = 0, y b 0 .
( x B , x N ) = ( b , 0) da el mismo valor de la funcin objetivo en ( PLs ) y en ( PLsr ), porque
ambos problemas tienen la misma funcin objetivo.
En consecuencia, ( x B , x N ) = ( b , 0) cumple todas las condiciones del Corolario 1.1, y por
lo tanto es solucin ptima de ( PLs ) , luego: es solucin ptima de (PLs).

Estructura bsica del mtodo simplex

1. Tomar una solucin bsica factible.


2. Transformar el problema a la forma ( PLs ) resolviendo las variables bsicas.
3. Si c j 0 j FIN: se hall una solucin ptima.
4. Si algn c j < 0 , aumentar xj hasta que algn (xB)i = 0. Se obtiene en ese caso
una nueva solucin bsica. Volver al paso 2.
Forma tableau del mtodo simplex

Se acostumbra exponer los clculos manuales en una tabla (que puede ser fcilmente
implementada en una computadora). Se explicar el uso a travs de un ejemplo:

42

Introduccin a la Investigacin de Operaciones

Max 2 x1 + 3x 2
sujeto a :
x1 + x 2 2
x1 + 2 x 2 3
x1 , x 2 0

El problema puede ser representado en la figura siguiente:

x2
2

4
3

2
1

x1

La regin factible es el contorno delimitado por los vrtices (1), (2), (3) y (4). Las
lneas punteadas son la curvas de nivel de la funcin objetivo. La solucin ptima se
encuentra en el vrtice (3). Se hallar dicha solucin por el mtodo simplex.
Se introducen en primer lugar las variables de holgura x 3 y x 4 para llevar el problema
a la forma standard. Tambin se cambia el signo a la funcin objetivo para obtener un
problema de minimizacin:

Min 2 x1 3x2
sujeto a :
x1 + x2 + x3 = 2
x1 + 2 x 2 + x4 = 3
xi 0, i = 1,

,4

O en forma matricial:
Min (2,3,0,0) x
sujeto a :
1 1 1 0
2
x=
1 2 0 1
3
x 0 x 4

43

Introduccin a la Investigacin de Operaciones

Ntese que las variables de holgura x 3 y x 4 son variables bsicas adecuadas: estn
expresas en funcin de las otras variables, y estn eliminadas de la funcin objetivo.
x3 = 2 x1 x 2
x 4 = 3 x1 2 x2

El sistema de ecuaciones, en forma tableau, tiene la representacin siguiente:


x1
x2
x3
x4
b
1
1
1
0
2
1
2
0
1
3
2
3
0
0
0

El tableau tiene la siguiente forma

A
cT

b
.
0

Las variables bsicas ya estn resueltas, el tableau corresponde tambin al problema


transformado ( PLs ) .
Los puntos debajo de las columnas 3 y 4 indican que las variables x3 y x4 son bsicas.
La solucin bsica correspondiente se obtiene asignando el valor cero a las variables
no bsicas (x1, x2).
Por lo tanto, la solucin bsica es: x1 = 0, x2 = 0, x3 = 2, x4 = 3. Esta solucin
corresponde al vrtice (1) en la figura.
La ltima lnea del tableau muestra los costos reducidos. Debido a que c1 < 0 y c2 < 0 ,
vale la pena aumentar x1 o x2, como c 2 es el ms negativo, conviene elegir x2 como
nueva variable bsica. El valor sombreado es aquel para el cual se obtiene el
Min i {bi aij | aij > 0} El sistema de ecuaciones, canonizando la columna
correspondiente a x2, toma la forma:
x1
X2
x3
x4
b
1/2
0
1
-1/2
1/2
1/2
1
0
1/2
3/2
-1/2
0
0
3/2
9/2

Puesto que slo c1 < 0 , conviene elegir x1 como variable bsica, obteniendo:
x1
x2
x3
x4
b
1
0
2
-1
1
0
1
-1
0
1
0
0
1
1
5

Se ha obtenido una solucin ptima, pues c j > 0, j . Dicha solucin ptima tiene las
variables no bsicas igualadas a cero y las variables bsicas iguales a b :
x1 = 1, x2 = 1, x3 = 0, x4 = 0.

44

Introduccin a la Investigacin de Operaciones

Mtodo simplex, espacio de soluciones no acotado

Cuando cj < 0, la variable no bsica xj correspondiente puede aumentar hasta hacer


que alguna variable bsica alcance el valor cero.
Si ocurre que aij 0 i, ninguna variable bsica disminuye su valor al aumentar xj,
obtenindose soluciones factibles para cualquier valor (positivo) de xj.
Adems, como cj < 0, la funcin objetivo disminuye con el aumento de xj, de modo
que decrecer hacia cuando xj aumente hacia +.
En estas condiciones se tiene un valor ptimo no acotado, en un dominio infinito de
soluciones factibles.
El ejemplo siguiente ilustra estos conceptos.
Max x1 + x 2
sujeto a :
x1 x 2 1
x2 x1 1
x1 , x 2 0
La regin factible es la de la figura siguiente:
2
1
3
1

2
1

Introduciendo las variables de holgura x3 y x4, y cambiando el signo de la funcin


objetivo, el problema adquiere la siguiente forma:
Min x1 x 2
sujeto a :
x1 x2 + x3 = 1
x1 + x2 + x 4 = 1
xj 0

x3 y x4 son variables bsicas adecuadas y el tableau es el siguiente:


x1
x2
x3
x4
b
1
1
1
0
1
1
1
0
1
1
1
1
0
0
0

45

Introduccin a la Investigacin de Operaciones

La solucin bsica correspondiente es x1 = 0, x2 = 0, x3 = 1, x4 = 1, que corresponde


al punto 1 de la figura. x1 y x2 tienen el mismo costo reducido negativo, se decide
intoducir x1 como nueva variable bsica.
La

variable

xi
(bsica)
correspondiente
al
Min {bi ai1 ai1 0} = Min{11 ,} , lo cual ocurre en la fila 1. El elemento a11 se llama
pivot y se utiliza para reformular el sistema de ecuaciones de modo que la columna
correspondiente a x1 sea cannica. Se obtiene el siguiente tableau:
x1
1
0
0

x2
1
0
2

saliente

x3
1
1
1

es

x4
0
1
0

la

b
1
2
1

La solucin bsica correspondiente es x1 = 1, x2 = 0, x3 = 0, x4 = 2, que es el punto 2


de la figura.
En este caso slo x2 tiene costo reducido negativo y en consecuencia es la nica
candidata a ser variable bsica. La variable saliente se halla a partir de
Min bi ai 2 ai 2 > 0 = Min{ ,} = , es decir que ninguna variable bsica limita el

crecimiento de x2 por lo que se tiene un valor ptimo no acotado. Se observa en la


figura que eligiendo la arista [2, ) se puede obtener valores arbitrariamente altos de
la funcin objetivo.
A modo de resumen de los dos ltimos captulos se presenta el siguiente diagrama de
flujo del mtodo simplex:
Dado un tableau reducido con solucin bsica factible

NO
Hay variable x con c j < 0
j

FIN: solucin bsica optimal

SI
x entra en la base
j

Hay a

kj

>0?

FIN: valor ptimo no acotado

NO

SI

Determinar la variable bsica saliente


de acuerdo con

/a

Por pivotacin en el elemento

= Min { b

kj
a

kj

/a

ij

,a

ij

> 0}

se obtiene el nuevo tableau

Mtodo simplex terminacin

46

Introduccin a la Investigacin de Operaciones

Hasta ahora se han discutido dos criterios de parada del mtodo simplex:

Si c 0 se ha alcanzado una solucin ptima.

Si para todo c j < 0 ocurre que aij 0, i se puede afirmar que no hay valor
optimal acotado (ni solucin ptima.
La pregunta es: debe darse, necesariamente, alguno de estos dos casos?
Sea xj (con c j < 0 ) una variable no bsica, que ha sido seleccionada para ingresar a la
nueva base. Se introducir xj en sustitucin de aquella variable bsica xi para la cual

se alcanza el Min b j aij aij > 0 .


Cuando dicho mnimo se alcanza para dos o ms variables bsicas simultneamente,
se dice estar ante un caso de degeneracin.
Ya sea que haya o no degeneracin, el incremento en la variable xj es
x j = Min bi a ij a ij > 0 0 , y la funcin objetivo decrece z = c j x j 0 . Una

variable bsica decrece hasta hacerse nula, y si hay degeneracin una o ms variables
bsicas continan sindolo, pero con valor cero.
Si
hay
degeneracin,
en
alguna
iteracin
podra
ocurrir
que
x j = Min bi a ij a ij > 0 = 0 y por lo tanto: z = 0 , es decir que el valor de la funcin

objetivo no cambiara al cambiar de base. En estas condiciones no se puede asegurar


que el mtodo no retornar a un vrtice ya analizado. Si esto ltimo ocurriera (el
retorno a una solucin ya analizada) se estara ante la presencia de un fenmeno
llamado cycling, que obstruye la terminacin del mtodo en tiempo finito.
Existen estrategias anticycling para lograr que el mtodo simplex termine en
tiempo finito, sin embargo, debido a que el cycling casi nunca sucede en la prctica,
estas finezas no suelen estar implementadas en los programas comerciales.
Si no hay degeneracin, en cada paso del mtodo simplex se obtiene una solucin
factible cuyo costo es estrictamente menor que el de las anteriores, por lo tanto no se
puede retornar a una solucin ya analizada. Adems el mtodo es finito, porque en
cada paso se eligen m variables bsicas entre n posibles, hay Cmn formas de hacerlo
(aunque no todas ellas dan soluciones factibles). Por este motivo se puede afirmar que
existe un nmero finito de soluciones bsicas, y en consecuencia: si no hay
degeneracin el mtodo simplex llega en una cantidad limitada de pasos a una de
las dos alternativas planteadas al principio.
La cantidad de iteraciones requeridas para resolver un problema por el mtodo
simplex crece linealmente con el nmero de restricciones, mientras que el trabajo
requerido en cada iteracin crece aproximadamente con el cuadrado del nmero de
restricciones.
Fase I - Encontrar una solucin factible

Segn lo visto hasta ahora, el mtodo simplex comienza en una solucin bsica
factible. A continuacin se investiga el problema de obtener dicha solucin factible
inicial.

47

Introduccin a la Investigacin de Operaciones

Supngase que se busca una solucin factible en el espacio de soluciones:


(E)

Ax = b 0
x0

Este problema se puede resolver con la ayuda del mtodo simplex. Se introduce en
primer lugar un conjunto de variables artificiales y 0, que miden la diferencia entre
el lado derecho y el izquierdo de la ecuacin (en una solucin factible estas variables
debern ser nulas).
Se obtiene el siguiente sistema de ecuaciones:
( E )

Ax + y = b
x, y 0

Para el sistema ( E ) se obtiene fcilmente la solucin bsica factible y = b, x = 0. En


cambio, una solucin factible de (E) deber tener y = 0. Para obtenerla se resuelve el
siguiente problema de PL, llamado fase I, el cual se puede resolver con el mtodo
simplex porque se tiene una solucin bsica inicial factible.
m

Min
i =1

yi

( LP1 ) sujeto a :
Ax + y = b
x, y 0
Teorema:

(LP1) tiene siempre un valor ptimo finito 0, dado por el mtodo simplex. Si dicho
valor ptimo es estrictamente mayor que cero, entonces (E) no tiene soluciones
factibles. Si el valor ptimo de (LP1) es igual a cero, entonces (E) tiene soluciones
factibles y el mtodo simplex brinda una de ellas.
Prueba:

Si el valor ptimo de (LP1) es estrictamente mayor que cero, siempre existe por lo
menos una yi > 0, por lo tanto: ( Ax ) i = bi yi bi y en consecuencia no existen
soluciones factibles de (E).
Si el valor ptimo de (LP1) es igual a cero: yi = 0 , como adems y 0 se concluye
que y = 0 y la solucin ptima de (LP1) es factible para (E).

En resumen, el mtodo simplex funciona del siguiente modo: En primer lugar, si es


necesario, se aplica la fase I para encontrar una primera solucin factible. A partir de
dicha solucin bsica, se aplica la segunda fase, optimizando la funcin objetivo
original.

48

Introduccin a la Investigacin de Operaciones

El ejemplo siguiente ilustra el mtodo:


Min 3x1 + 2 x 2
sujeto a :
x1 + x 2 2
x1 + 2 x 2 3
x1 , x 2 0
Este problema se representa grficamente en la figura que sigue:
x

En primer lugar se agregan las variables de holgura x3 y x4 que permiten llevar el


problema a la forma standard, obteniendo el siguiente tableau:
x1
x2
x3
x4
b
1
1
-1
0
2
1
2
0
-1
3
3
2
0
0
0
Puesto que no hay ninguna base por la cual sea intuitivo comenzar, se introducen las
variables artificiales y1 e y2. En la fase I se minimiza y1 + y2, lo cual arroja el
siguiente tableau:
x1
x2
x3
x4
y1
y2
b
1
1
-1
0
1
0
2
1
2
0
-1
0
1
3
3
2
0
0
0
0
0
0
0
0
0
1
1
0
La ltima fila es la funcin objetivo de la fase I, en tanto que la tercera fila es la
funcin objetivo original, que ser minimizada en la segunda fase de la resolucin.
Para la primera fase y1 e y2 son variables bsicas adecuadas para comenzar la
resolucin de la primera fase. Sustrayendo de la fila 4 las filas 1 y 2 se obtiene:

49

Introduccin a la Investigacin de Operaciones

x1
1
1
3
-2

x2
1
2
2
-3

x3
-1
0
0
1

x4
0
-1
0
1

y1
1
0
0
0

y2
0
1
0
0

b
2
3
0
-5

La solucin bsica correspondiente es y1 = 2, y2 = 3, y las dems variables iguales a


cero.
En esta solucin c1 < 0 y c2 < 0 se puede elegir tanto x1 como x2 para ser ingresada en
la nueva base, sea x1 la variable seleccionada. La variable saliente se determina de

acuerdo a Min {bi ai1 ai1 > 0} = Min {2 1, 3 1} = 2 , lo cual ocurre en la primera fila.
Se canoniza el sistema de ecuaciones tomando como elemento cannico el a11,
obteniendo el siguiente tableau:
x1
x2
x3
x4
y1
y2
b
1
1
-1
0
1
0
2
0
1
1
-1
-1
1
1
0
-1
3
0
-3
0
-6
0
-1
-1
1
2
0
-1

La solucin bsica es x1 = 2, y2 = 1, las dems variables iguales a cero. Se elige


introducir la variable x2, por lo que el elemento pivot para la canonizacin del
sistema sera el a22.
x1
1
0
0
0

x2
0
1
0
0

x3
-2
1
4
0

x4
1
-1
-1
0

y1
2
-1
-4
1

y2
-1
1
1
1

b
1
1
-5
0

Llegado este punto de la resolucin se tiene x1 = 1, x2 = 1, y el resto de las variables


iguales a cero. Como y1 e y2 son iguales a cero, se ha alcanzado una solucin factible
del problema original y comienza la solucin de la fase II.
La lnea de costos de la funcin objetivo del problema auxiliar ya no interesa, por lo
cual se la elimina del sistema, y la lnea de costos pasa a ser la tercera fila (costos de
la funcin objetivo del problema original), tampoco interesan las columnas
correspondientes a las variables artificiales:

50

Introduccin a la Investigacin de Operaciones

x1
1
0
0

x2
0
1
0

x3
-2
1
4

x4
1
-1
-1

b
1
1
-5

Tomando como pivot el elemento a14, se obtiene el siguiente tableau:


x1
x2
x3
x4
b
1
0
-2
1
1
1
1
-1
0
2
1
0
2
0
-4

Como ahora c 0 se ha llegado al ptimo. La solucin es x1=0, x2=2, x3=0, x4=1.


La estructura del mtodo simplex puede ahora ser resumida del siguiente modo:

Introducir variables artificiales y/o de holgura en caso de necesidad

SI

Hay variables artificiales?

Resolver el problema Fase I

SI

es el valor ptimo = 0?

NO

NO
FIN: el problema no tiene solucin factible

Resolver el problema Fase II

Interpretacin del tableau del simplex

Se analizar el tableau simplex en el cual las xB son variables bsicas. Supngase que
fueron introducidas variables artificiales, y que las columnas fueron ordenadas de
modo que las variables xB estn todas al principio. Al comienzo de la fase I el tableau
tiene la forma siguiente:
xB

xN

AB

AN

T
B

T
N

0 0

Una vez canonizado el sistema, el tableau cobra la siguiente forma:


xB
I
cBT

xN
AN
c NT

y
I
c yT

b
0

51

Introduccin a la Investigacin de Operaciones

Las operaciones que se realizan para obtener una fila a partir de la anterior
corresponden a haber multiplicado desde la izquierda con cierta matriz M que se
determinar:
MA B = I

M = IAB1

por lo tanto:

M = AB1

AN = MA N = AB1 AN , cosa que

ya se saba.

I = MI = AB1 I = AB1
b = Mb = AB1b , lo cual

tambin se saba.

La lnea transformada de costos se obtuvo sustrayndole en forma sucesiva mltiplos


de otras lneas. Por lo tanto, es vlido para cierto vector de multiplicadores , que
c T = c T T A . La lnea de costos reducidos transformados es:
( cBT T AB ) ( c NT T AN ) ( 0 T I ) ( 0 T b )

Se acostumbra llamar multiplicadores simplex a las componentes de .


Debido a que cBT = 0 se cumple que:
cBT = T AB

T = c BT ABT

c NT = c NT cBT AB1 AN
c y = 0 T I = T = cBT AB1
0 T b = cBT AB1b = cBT b = z

= valor actual de la funcin objetivo.

El tableau transformado se ve ahora de la siguiente forma:


xB
I
0

xN
y
( AN = AB1 AN )
AB1
b = AB1b
( c NT = c TN T AN ) ( T = cBT AB1 ) ( z = T b )

Costos reducidos y multiplicadores simplex

Se acaba de comprobar que el vector de multiplicadores simplex satisface las


siguientes igualdades:

T = cBT AB1

cBT = T AB

c NT = c TN T AN

Por lo tanto, el costo reducido c j de xj se puede escribir como c j = c j T a j , siendo aj


la j sima columna de la matriz A. Esto significa que con la ayuda de los
multiplicadores simplex se pueden hallar los costos reducidos de las variables, que no
estaban en la formulacin original del problema. Esta observacin es de fundamental
importancia en el uso avanzado de la programacin lineal.
Soluciones duales y relacin entre primal y dual

El problema dual de un problema de progamacin lineal expresado en forma standard


(LPS) es:

52

Introduccin a la Investigacin de Operaciones

Max b T u
( LDS ) sujeto a :
AT u c

Ya fue demostrado que las variables u son los multiplicadores de Lagrange. A


continuacin se investiga la relacin entre los multiplicadores simplex y el problema
dual.
Supngase que (LPS) ha sido resuelto hasta su ptimo y que xB son las variables
bsicas.
La exigencia de optimalidad de (LPS) es c NT 0 , es decir: c TN T AN 0 que por medio
de una trasposicin queda c N ANT .
Por otra parte, la restriccin impuesta a la variable dual es c A T u , lo cual implica que
cB ABT u y que c N ANT u .
Por lo tanto, si se cumple la condicin de optimalidad, los multiplicadores simplex
constituyen una solucin factible del problema dual, ya que adems cumplen
cB = ABT

c B ABT

sera adems una solucin ptima del problema dual si arrojase el mismo valor de la
funcin objetivo que la solucin ptima del problema primal.

El valor ptimo de la funcin objetivo del problema primal es z = cBT b = cBT AB1b . El
valor de la funcin objetivo del problema dual evaluada en u = es: b T , que se

puede escribir: b T = b T (ABT ) c B = c TB AB1b = z .


1

Por lo tanto: los multiplicadores simplex correspondientes a la solucin ptima del


problema primal, constituyen una solucin ptima del problema dual.
Se acaba de demostrar el siguiente:
Teorema:

Sea x B = AB1b , x N = 0 solucin bsica ptima del simplex (o sea c 0 ) para un problema
de programacin lineal expresado en forma standard:
Min c T x
sujeto a :
( LPS )
Ax = b
x0
Entonces T = cBT AB1 (el vector de multiplicadores simplex) es una solucin ptima del
problema dual; adems, los valores ptimos de ambos problemas coinciden.

Se vern a continuacin algunas relaciones entre casos particulares de problemas


primal y dual:
Cuando el problema primal se resuelve aplicando el mtodo simplex puede ocurrir
cualquiera de los casos siguientes:

53

Introduccin a la Investigacin de Operaciones

1 la fase I da un valor ptimo > 0, es decir que el problema no tiene soluciones


factibles.
2 la fase I da un valor ptimo = 0 y la fase II da un ptimo finito.
3 la fase I da un valor ptimo = 0 y la fase II indica un valor ptimo no acotado.
Puesto que el dual es un problema de programacin lineal, estos casos pueden darse
tambin en el problema dual
Si en el primal ocurre (3), el problema dual no puede tener soluciones factibles, por lo
tanto, en el dual ocurre (1).
Anlogamente, si en el dual ocurre (3) en el primal ocurre (1).
Si en el primal ocurre (2), tambin ocurre (2) en el dual. Por simetra, si ocurre (2) en
el dual, ocurre (2) tambin en el primal.
Queda por estudiar la posibilidad de que ocurra (1) en ambos problemas.
El siguiente es un ejemplo de que sta posibilidad es cierta:
Min x2
sujeto a :
x1 x 2 1

( PL)

x1 + x 2 0

x1 , x2 0
Este problema tiene una regin factible vaca, su dual tiene la forma:
Max u1
sujeto a :
( PD)

u1 u 2 0
u1 + u 2 1

u1 , u 2 0
y tampoco tiene soluciones factibles.
El cuadro siguiente resume estas afirmaciones, se indican sombreadas las
combinaciones imposibles.
dual (1)

dual (2)

dual (3)

primal (1)
primal (2)
primal (3)

54

Introduccin a la Investigacin de Operaciones

3. GRAFOS
3.1 Introduccin
El nacimiento del concepto GRAFOS se puede situar, por el ao 1730, cuando Euler
(matemtico) se convirti en el padre de la Teora de Grafos al modelar un famoso
problema no resuelto, llamado el "problema de los puentes de Knigsberg".
Un ro con dos islas atraviesa la
ciudad. Las islas estan unidas, entre si
y con las orillas, a travs de siete
puentes. El problema consista en
establecer un recorrido que pasara una
y solo una vez por cada uno de los
siete puentes, partiendo de cualquier
punto y regresando al mismo lugar.
Para probar que no era posible, Euler sustituy cada zona de partida por un punto y
cada puente por un arco, creando as un grafo, el primer grafo, diseado para
resolver un problema.
Mostrar que el problema no tiene solucin equivale a mostrar
que el grafo no puede ser recorrido segn criterios
determinados.
Problema genrico: dado un grafo (con mltiples lneas entre
pares de puntos) encontrar un camino que recorra el grafo
pasando por cada arista exactamente una vez.

Solucin: El grafo debe se conexo, y en cada punto deben incidir un nmero par de
lneas. Esta condicin es suficiente para definir lo que se llama un ciclo euleriano.
A partir de Euler el modelado mediante grafos fue desarrollando esta metodologa
hasta convertirse en la actualidad, en una herrramienta de trabajo para ciencias tan
diferentes como la Fsica, la Qumica, la Sicosociologa, la Economa, la Lingstica,
etc. La teora de grafos est ntimamente relacionada con varias ramas de la
Matemticas como por ejemplo la Teora de Conjuntos, el Anlisis Numrico,
Probabilidad, Topologa, etc. y es la base conceptual en el tratamiento de problemas
combinatorios.
La eficacia de los grafos se basa en su gran podero de abstraccin y la muy clara
representacin de cualquier relacin (de orden, precendencia, etc) lo que facilita
enormemente tanto la fase de modelado como de resolucin del problema. Gracias a
la Teora de Grafos se han desarrollado una gran variedad de algoritmos y mtodos
de resolucin eficaces que nos permiten tomar una mejor decisin .
No se debe confundir el grafo con el sistema real al que est asociado. El grafo es una
estructura que admitimos adecuada en lo concerniente a las propiedades que nos

55

Introduccin a la Investigacin de Operaciones

interesan, donde luego aplicamos las deducciones y reglas matemticas para obtener
datos y poder decidir.
Una aplicacin frecuente de la teora de grafos es la del mtodo de camino
hamiltoniano ptimo para decidir el camino a seguir por un cobrador, de tal modo de
economizar sus energas, las suelas de sus zapatos y su bolsillo.
El objetivo es hallar un camino que pase por todos las casas una y solo una vez y que
nos de el costo menor en distancia. Dicho de otro modo, se deben buscar las
permutaciones de las casas de forma tal que la distancia recorrida total sea mnima.
Se conoce la distancia entre cada par de casas, segn si las calles son flechadas o no
se orientarn o no las conexiones entre pares de casas.
Obsrvese que si se hicieran todas las permutaciones, suponiendo
un caso muy reducido de diez casas, se tendran ms de 3 millones
de permutaciones (10!).
Si cada casa es representada por un vrtice y cada camino entre
par de casas por una arista ponderada por la distancia mnima
entre pares de casas, tendremos un grafo completo y simtrico
(cuando no hay calles flechadas).
El problema se reduce entonces, a obtener un camino hamiltoniano ptimo. Todo
algoritmo conocido para encontrar ciclos hamiltonianos requiere al menos un tiempo
exponencial de clculo, o factorial en el peor de los casos.
Otro ejemplo para el que grafos provee un natural modelo matemtico :
Supongamos que el siguiente grafo representa una red de lneas de telfonos (o de
comunicaciones). Estamos interesados en la vulnerabilidad respecto a interrupciones
accidentales.
b
e
Problema 1: identificar esas lneas y centros
de conecciones que deben permanecer en
servicio para evitar la desconeccin de la red.
No existe ninguna lnea que eliminada a
desconecte el grafo (red), pero hay un vrtice,
d
el vrtice d, cuya desaparicin (ruptura)
desconecta el grafo.
f
c
Problema 2: encontrar un conjunto minimal de aristas necesarias para conectar los 6
vrtices. Hay varios conjuntos mnimos posibles. Uno de ellos es el conjunto minimal:
{(a,b),(b,c),(c,d),(d,e),(d,f)}.

Podemos enunciar el siguiente resultado general: dado un grafo G de n vrtices, el


conjunto mnimo de conexin de G (si existe) siempre tiene n1 aristas.

56

Introduccin a la Investigacin de Operaciones

3.2 Definiciones Basicas


Grafo: Un grafo G es una dupla G = (X, U), donde X es un conjunto finito y no vaco
de elementos llamados vrtices y U es el conjunto cuyos elementos se componen de
subconjuntos de X de cardinalidad dos (2), llamados aristas.

Los vrtices de X se llaman usualmente x1, x2, x3,..., xn y se representan como


puntos, las aristas u1, u2, u3,..., um se dibujan como lneas.
Grafo orientado: Un grafo G* es orientado, cuando sus aristas tienen asignadas
direcciones, o sea cuando existe una relacin de precedencia entre los elementos.
Sus puntos se llaman nodos, y sus lneas arcos. En estos casos U es una familia de
pares ordenados resultantes del producto cartesiano de X.
U XxX = { ui = (xk,xj): 1 i |U|, 1 j, k |X|, xk, xj X}

Ejemplo:
G* = ({x1,x2,x3}, {(x1,x2), (x3,x1), (x3,x2)}) .

x2

x1
En realidad, no existen dos especies de grafos, orientados y no
orientados, sino que todos los grafos son orientados, pero por
x3
razones conceptuales, es poco cmodo considerar las lneas
orientadas para los problemas de naturaleza no orientada.
Cada vez que apliquemos un concepto orientado en un grafo G = (X,U) ese concepto
deber ser considerado como aplicable de hecho, en un grafo orientado G* al que le
corresponde la orientacin en los dos sentidos de cada arista.
Orden es el nmero de vrtices del grafo, el cardinal del conjunto X de vrtices: |X|
Arcos incidentes a un nodo
Si un vrtice x es extremidad inicial de un arco u = (x,y) y x y, diremos que
el arco es incidente a x hacia el exterior. I+(x)={y / (x,y) U}. I-(x)={y / (y,x)
U}

El nmero de los arcos incidentes hacia el exterior se llama semigrado


exterior de x y se nota d+(x) = |I+(x)|
De igual forma se define arco incidente a x hacia el interior y semigrado
interior de x. Este ltimo se nota como d-(x) = |I-(x)|.
Grado de x, es la suma del semigrado exterior e interior de x. O sea, es el nmero
de arcos con una extremidad en x.

d(x) = d+(x) + d-(x)


Si todos los vrtices tienen el mismo grado, el grafo al que pertenecen se llama grafo
regular.

57

Introduccin a la Investigacin de Operaciones

3.2.1 Recorrido de grafos.


Cadena (concepto no orientado):
Es una secuencia de aristas de G, tal que cada arista de la secuencia tiene un
extremo comn con el arco precedente y otra con el siguiente.
Largo de una cadena, es el nmero de aristas de la secuencia.
Cadena elemental, es aquella que no repite vrtices.
Cadena simple, es aquella que no repite aristas.
Camino (concepto orientado)
Es una cadena = {u1, u2,..., uq} en la que para todo ui (con i < q) el
extremo terminal de ui coincide con el extremo inicial de ui+1.

Las definiciones de largo de un camino, camino elemental y camino simple son


anlogas a las de cadenas, con la salvedad de la orientacin.
Sendero, es un camino elemental (que no repite nodos).
Va, es un camino cuyos arcos se pueden recorrer en su sentido directo o contrario.
Ejemplo: roblema del camino entre dos puntos. El siguiente es un ejemplo de como
modelar una porcin del universo, su problemtica y como resolverla.

Supongamos que un hombre debe pasar a la otra orilla de un ro llevando consigo una
oveja, un repollo y un lobo. El inconveniente que se le plantea es que slo puede
cruzar con uno de ellos a la vez y sospecha que si deja solos a la oveja con la repollo
con el lobo, la oveja se comer al repollo el lobo se comer a la oveja. Teniendo en
cuenta estas restricciones, el sujeto dibuja sobre la arena de la orilla un grafo y
aplicando alguna heurstica o algn algoritmo conocido, encuentra el camino que
debe seguir para llegar a la otra orilla con su carga intacta.
Utilice el siguiente procedimiento:
0) Dibuja el grafo: Existen 4 elementos que determinan las situaciones en cada orilla,
ellos son:
H Hombre C Repollo L Lobo
O Oveja
1) Enumera las situaciones en una de las orillas comenzando por H,C,L,O.
2) Luego las ordena considerando:
a) se encuentra el hombre en esa orilla o no: H vs noH.
b) pasaje o secuencia de una situacin a otra. (obs. que no se puede pasar de
una situacin en la que est el hombre a otra en la que tambin est)
3) Por ltimo busca en el grafo un camino del estado inicial al estado final.

58

Introduccin a la Investigacin de Operaciones

3.2.2 Clasificacion De Grafos


Multigrafo, es un grafo no orientado con mltiples aristas entre pares de nodos.
Grafo simple, es un grafo sin bucles, sin mltiples aristas entre pares de vrtices.
Grafo completo
Para todo par de vrtices de G, existe por lo menos una arista que los une.
Por lo tanto, un grafo completo de n vrtices es aquel que tiene sus n vrtices
mutuamente adyacentes.
n-clique, es un grafo completo simple de n vrtices. Se nota Kn.

K5
Subgrafo de G = (X,U) engendrado por el conjunto A X , es un grafo cuyos
vrtices pertenecen al conjunto A y cuyas aristas son aquellas de G que tienen las dos
extremidades en A.
Grafo parcial de G = (X,U) engendrado por V U, es el grafo G' = (X,V) cuyos
vrtices son los mismos de G y cuyas aristas son las que conforman el conjunto
V U.
Subgrafo parcial de G, es un subgrafo de un grafo parcial de G.

Grafo bipartito, es un grafo cuyo conjunto de vrtices puede ser particionado en dos
clases X1 y X2 de tal forma que dos vrtices de la misma clase no sean jams
adyacentes. Se nota G = (X1,X2,U)

X1 : conjunto personas
X2 : conjunto profesiones

K2,3.

Grafo bipartito completo, es aquel en el que para todo elemento de X1 y todo


elemento de X2 existe por lo menos un arco que los liga.

59

Introduccin a la Investigacin de Operaciones

Un grafo simple bipartito completo con p elementos en X1 y q elementos en X2 se


nota Kp,q.
Grafo Regular, es aquel en el que todos sus vrtices tienen el mismo grado.
Grafo Ponderado G = (X, U, W) donde (X, U,) es un grafo y W es una funcin W: U
Z+ (Z+: enteros positivos) .

Si u U, w(u) es llamado el peso de la arista u. Estos pesos corresponden, segn la


aplicacin, a costos, capacidades u otras propiedades de las aristas o arcos.
Cuando se desea asignar valores negativos o reales a los pesos de las aristas, se debe
tener especial cuidado en la eleccin de los algoritmos ya que la correctitud de los
mismos puede depender de la restriccin a Z+.
Grafo Conexo, es aquel en el que para cada par de vrtices de G, existe una cadena
que los une.
En grafos orientados se definen 2 conceptos

a) Dbilmente conexo: si existe una cadena (sin tener en cuenta la


orientacin) que une cada par de nodos distintos.
b) Fuertemente conexo: si para cada par ordenado de nodos x e y, existe un
camino que va de x a y.
Una componente conexa de un grafo G, es un subgrafo de G engendrado por los
vrtices que pueden unirse a un vrtice xi dado, mediante una cadena (puede ser todo
el grafo G).

3.2.3 Ciclos y Circuitos


Ciclo, es una cadena simple, cuyos dos vrtices extremos, inicial y terminal,
coinciden (no tiene en cuenta la orientacin).

Si queremos describir la orientacin en un ciclo designamos como:


u+ = {ui : ui orientada en el sentido del ciclo}
u- = {ui : ui orientada en el sentido contrario al ciclo}
Ciclo elemental, es un ciclo donde no se repite ningn vrtice (salvo el primero que
coincide con el ltimo). Lo notamos uE = (u1,...,un).
Propiedad 1: Todo ciclo uC es una suma de ciclos elementales sin aristas comunes.
Propiedad 2: Un ciclo es elemental si y solo si es un ciclo minimal (es decir que no
se pueden deducir otros ciclos por supresin de aristas).

60

Introduccin a la Investigacin de Operaciones


Seudociclo, es una cadena donde los extremos coinciden pero que una misma arista
puede figurar ms de una vez (tambin consecutivamente).
Cociclo del conjunto de vrtices A, es el conjunto de aristas incidentes a A, del
tipo I(A) no vaco y particionado en dos clases I+(A) y I-(A).

Ciclo Euleriano es aquel que incluye todas las aristas del grafo una sola vez,
conteniendo cada vrtice por lo menos una vez.
Cadena Euleriana, es aquella que recorre todas las aristas una sola vez ( = simple)
tocando todos los vrtices del grafo.

Todo multigrafo que posee un ciclo Euleriano es conexo y todos sus vrtices tienen
grado par .
a
c

h
k
j

A partir del siguiente ejemplo daremos una idea del


mecanismo utilizado por Euler para demostrar que la
conexidad y el grado par de todos los vrtices de un
multigrafo, son condiciones necesarias y suficientes
para garantizar la existencia de un ciclo Euleriano.
Tenemos este grafo que es conexo y sus vrtices
tienen grado par.

1) Primero se comienza por trazar un camino simple desde un vrtice, p. ej a.


Supongamos que recorremos a-d-j-n-o-k-l-h-f-e-b-a. Volvimos a a.

b
e

d
j
n

f
h

k
l

La propiedad del grado par, significa que siempre podemos


abandonar cada vrtice al que entramos, exepto a. Es decir
que cualquier cadena que trazemos desde a debe volver a
a, formando un ciclo.

61

Introduccin a la Investigacin de Operaciones

d
l
g
c
2) Las restantes aristas del grafo
inicial , conforman un grafo no
conexo, pero todos sus vrtices
h
mantienen el grado par, ya que al
retirar el ciclo encontrado, se redujo
cada grado en una cantidad par .
j
m
i
k
Cada subgrafo conexo posee un ciclo
Euleriano: d-c-i-j-k-e-d y h-g-m-h.
3) Estos dos ciclos pueden ser insertados en el ciclo encontrado en 2) en los vrtices
comunes d y h respectivamente, originando un ciclo Euleriano a-d-c-i-j-k-e-d-j-n-o-kl-h-g-m-h-f-e-b-a, en el grafo original.
Teorema E.1: Un multigrafo (no orientado) G = (X,U) posee un ciclo Euleriano sii
G es conexo y todos sus vrtices son de grado par.

Una Cadena Euleriana es una cadena que recorre todas las aristas del grafo una sola
vez incluyendo todos los vrtices.
Corolario E.2: Un multigrafo posee una cadena Euleriana, sii es conexo y tiene
exactamente dos vrtices de grado impar.

Se puede demostrar observando lo que sucede al agregarle una arista cuyas


extremidades sean los dos vrtices de grado impar. El concepto de ciclo Euleriano es
utilizado en la planificacin de redes de alta tensin entre varias ciudades.

3.2.4 Arboles y Algoritmos de Bsqueda


Refirindonos al concepto de grafo no orientado en el estudio de grafos finitos, se
introduce el concepto de un tipo especial de grafo, usado en una vasta variedad de
aplicaciones.
Arbol, es un grafo finito, conexo, sin ciclos y con por lo menos 2 vrtices .

Bosque, es un grafo donde cada componente conexa


es un rbol, es decir es un conjunto de rboles no
conexos entre s. Adems es un grafo sin ciclos por
estar compuesto por rboles.
Arborescencia, es un rbol dirigido con un nodo llamado raiz, tal que existe un
nico camino desde la raiz a cualquier otro nodo del rbol. Ese camino es elemental
y simple.

62

Introduccin a la Investigacin de Operaciones

Proposicin: Una arborecencia posee una sola raz.

Es importante notar que la definicin de arborecencia es vlida para un rbol no


orientado, ya que, cualquier vrtice del rbol puede ser raz y adems un rbol no
posee ciclos. Al determinar una raiz, se determina la existencia de una sola cadena
que conecta la raiz con cada uno de todos los vrtices restantes.
Entonces, un rbol lo puedo convertir en arborecencia tomando cualquier vrtice
como raz y asignandole direcciones a las aristas desde el nodo raiz.
Por lo tanto, designaremos como rbol, indistintamente a un rbol o arborecencia.
r

La manera standard de dibujar una arborecencia es colocando la raiz a en la cima de


la figura. As podemos definirle niveles a los vrtices del grafo ( la raiz tiene nivel 0 ).
El nmero asignado al nivel de un vrtice x del rbol (T = (X,U)) corresponde al
largo de la cadena (nico, elemental) que une a r con x.
Se llama padre de un vrtice x, al vrtice y, prximo anterior a x en la cadena
elemental y simple que va de la raiz a x, siendo x hijo de y dos vrtices con el
mismo padre se llaman hermanos. La relacin padre-hijo se extiende a ascendiente y
descendientes de un vrtice x. Adems cada vrtice x de T es la raiz de un subrbol
de x y sus descendientes. Los vrtices sin hijos se llaman hojas, y todos los otros
vrtices que tengan hijos se llaman vrtices internos de T.
T se llama rbol m-ario, si cada vrtice interno del rbol (arborecencia) T tiene m
hijos. En particular si m = 2, T es un rbol binario.
Ejemplos:

m=2

m=3

Teorema T.1: Un rbol con n vrtices tiene n-1 aristas.

63

Introduccin a la Investigacin de Operaciones


Altura de un rbol (o arborecencia), es el nmero de aristas del camino ms largo,
es decir, el nmero de nivel ms alto de cualquier vrtice.
Arbol balanceado, es aquel rbol de altura h, en el cual todas sus hojas se
encuentran en el nivel h h-1. Ver el ejemplo anterior en el que la cantidad de
comparaciones a realizar se minimiza.

Los rboles se utilizan tambin en muchas aplicaciones para verificar la conectividad,


o la cantidad de ocurrencias de ciclos o subgrafos completos, en la bsqueda de esas
propiedades o estructuras, muchos algoritmos utilizan lo que llamamos un esqueleto
o rbol de cubrimiento.
Esqueleto o rbol de cubrimiento (spanning tree) de un grafo G: es un subgrafo
que es un rbol y que contiene todos los vrtices de G.

El esqueleto de un grafo puede ser construido ya sea por Bsqueda Primero en


Profundidad: BPP (depth -first search: DFS) o por Bsqueda Primero a lo Ancho:
BPA (breadth-first-search: BFS).
Algoritmo de Bsqueda Primero en Profundidad

Sea G = (X,U) , x, v pertenecen al conjunto X


DFS(x)
Visite y marque x
Mientras exista un vrtice v no marcado adyacente a x
DFS(v)
fin mientras
fin

Usando BPP (o DFS) , se toma algn vrtice como raiz y se comienza a construir una
cadena desde la raiz. La cadena contina hasta que no se puede continuar mas abajo
sin repetir un vrtice que ya est en la cadena. El vrtice donde esa cadena debe
terminar es una hoja. Entonces se vuelve atrs (backtrack), se retrocede un nivel al
padre de esa hoja, y se trata de construir una cadena desde ese padre en otra direccin
u otro vrtice no includo en la cadena anterior, y asi sucesivamente...
Algoritmo de Bsqueda Primero a lo Ancho

Sea G = (X,U) , x, v, s pertenecen al conjunto X, Q es


una cola o lista FIFO.
BFS(x)
Visite y marque x.
Inserte x en Q
Mientras Q no est vaca realice
Saco el primer elemento s de Q
Para cada vrtice v no marcado adyacente a s
visite y marque v
inserte v en Q
fin para
fin mientras
fin

64

Introduccin a la Investigacin de Operaciones

Usando BPA ( o BFS), se toma cualquier vrtice x como raz, insertando en la


cadena todas las aristas incidentes a ese x. Luego, sucesivamente, se van agregando
las aristas incidentes a los nodos adyacentes a x ,siempre que no estn incluidos en la
cadena que estamos construyendo, hasta que todos los nodos hayan sido visitados .
Es importante notar que si el grafo no es conexo, entonces no existe ningun
esqueleto que lo recorra.
Algoritmo para verificar que un grafo es conexo
1) Use BPP ( o BPA) para tratar de construir un esqueleto del grafo.
2) Si todos los vrtices del rbol son alcanzados en la bsqueda, entonces se
ha encontrado un esqueleto del grafo y por lo tanto el grafo es conexo.
3) Si la bsqueda no recorrio todos los vrtices, entonces el grafo no es
conexo.

3.3 Conexidad. Clausura Transitiva.


Un grafo se puede representar para su manipulacin de las siguientes maneras :
a) Grficamente. Mediante puntos que representan los nodos y lneas que representan
las aristas del grafo.
b) Notacin de conjuntos. Ya sea por extensin (enumerando vrtices y aristas) o por
comprensin.
c) Estructuras de datos, como por ejemplo listas encadenadas, stacks, etc.
d) Matrices

3.3.1 Representacin Matricial


Una relacin binaria en un conjunto X finito: X = {x1, x2,..., xn}, |X| = n,
es el subconjunto R = {(xi,xj); xi R xj}, compuesto por el conjunto de pares ordenados
resultantes del producto cartesiano de XxX. Si (xi,xj) R, decimos que xj esta
relacionado con xi y notamos xi R xj.
La relacin R puede ser representada como una matriz nxn cuyos elementos son:

[ ]

1 si xi Rx j

R = rij =
0 si no

Podemos afirmar que todo grafo G es orientado, por lo que existe una relacin binaria
entre pares de elementos de G =(X,U), que es la relacin de adyacencia A.
Entonces, dado un grafo G=(X,U), de orden n, se puede representar la relacin de
adyacencia , mediante una matriz A=[aij] nxn, llamada matriz de adyacencia de G,
definida por

65

Introduccin a la Investigacin de Operaciones

[ ]

1 si xi Ax j , ( xi , x j ) U

A = aij =
0 si no
Es importante observar que en un grafo no orientado la relacin de adyacencia es
simtrica y por lo tanto tambin lo ser su matriz asociada, ya que en el momento del
almacenamiento solamente es necesario tratar la mitad de la matriz.
Observaciones
1) La matriz de adyacencia es una matriz booleana, sus elementos son 0 o 1.
2) i xij = semigrado exterior de xi
3) j xij = semigrado interior de xj
En aquellas aplicaciones en las que intervienen costos o propiedades propias de la
relacin entre los elementos del sistema, estamos ante un Grafo Ponderado:
G=(X,U,W)
En estos casos la matriz de adyacencia se define como:

[ ]

w( u )

si

xi Ax j , ( xi , x j ) U

A = aij =
0 si no
Esta matriz es booleana solamente en aquellos casos en que w(u) = 1, para toda
arista u.
El concepto bsico en grafos es el de relacin binaria, ya que una relacin binaria
puede ser una relacin de equivalencia, la que particiona al conjunto X de vrtices en
clases de equivalencias.
Una relacin binaria es una relacin de equivalencia cuando es:
1) Reflexiva. x x
2) Simtrica. x y entonces y x
3) Transitiva. x y, y z entonces x z
Estas tres propiedades asociadas a un grafo G = (X,U), X={xi ; 1in}, significan
que:
xi xj si xi = xj o si existe algun camino de xi a xj y de xj a xi.
Definicin:
Un grafo o subgrafo es fuertemente conexo, si ( x i , x j ), x i x j , camino de x i a x j .
Toda relacin de equivalencia particiona al conjunto X en clases de equivalencias
Xi={xi1, ... xip} que llamaremos componentes fuertemente conexas del grafo G.

66

Introduccin a la Investigacin de Operaciones

Por lo tanto, cada componente fuertemente conexa de un grafo G es un subgrafo


fuertemente conexo, Gi=(Xi,Ui), del grafo G.
Notar que la conexidad est muy relacionada a la existencia de caminos, existencia
que se puede verificar mediante la propiedad transitiva.
Definicin Una relacin R es transitiva, en un conjunto X,
si i , j , k = 1 , 2 ,... | X | se cumple

que x i Rx j y x j Rx k entonces

x i Rx k

Ahora bien la relacin de adyacencia A, no siempre es transitiva, observese el


siguiente ejemplo donde xi A xj, xj A xk no implica que xi A xk.
xj

xk

xi

Introducimos entonces el concepto de clausura transitiva o alcance de la relacin A


en el conjunto X.

3.3.2 Clausura Transitiva, Matriz de Alcance


Definicin: La clausura transitiva de una relacin A en el conjunto X es la relacin
T definida por:
xi Ax j
xi Tx j m 2 y una secuencia de elementos
tales que x i

x k 1 , x k 2 , ..., x km X

= x k 1 , x kt Ax k ( t +1)

para t = 1,2, . . . , m - 1, x km

= xj

Observacin: La clausura transitiva de una relacin A, es la relacin A en s misma.


Si A es la relacin de adyacencia en X, entonces la Clausura Transitiva en X es la
Relacin de Alcance definida por:
Ci,j = camino que va de xi a
x Tx
C
i
j
i, j xj,
xj es alcanzable desde xi, o que xj pertenece a la Clausura transitiva de xi, lo notamos
: xj *(xi)
La relacin de alcance es una relacin transitiva y cuando adems cumple con las
propiedades de simetra y reflexividad, es una relacin de equivalencia que particiona
a X en clases de equivalencia
X1, X2, ... Xm xi , xj Xk k=1,2,...m se verifica: xi = xj o xi T xj

67

Introduccin a la Investigacin de Operaciones

Cada clase corresponde a una componente conexa del grafo. Es decir que se pueden
determinar la componentes fuertemente conexas del grafo calculando la clausura
transitiva en el conjunto X de nodos.
x2

x3
x4

x1

X1 = {x1, x2, x6}

x1 x2 x6

X2 = {x3, x4}

x3 x4

x5

X3 = {x5}

x6

x5 x5

fig.CFC

La relacin de alcance se representa matricialmente.


Definicin : La matriz de alcance es una matriz T = [tij] nxn,

T = [tij ] =

1 si xi Tx j , ( xi , x j ) U

0 si no
la que indica la existencia de caminos entre pares de nodos y se obtiene calculando
la potencia booleana de la matriz de adyacencia A.
Definicin: Matriz de potencias boolena de A es la matriz A(p) con p > 0

( p)

= aij

( p)

]=

1 si C i, j , l(C i, j ) = p
0 si no

A(0) = I , A(1) = A y A(p) = A(p-1) A,


Nota: aij(2) = k=1,n(a ik a kj)

( producto booleano).

Teorema (Matriz de alcance): Sea Anxn la matriz booleana de la relacin de


adyacencia en un grafo G de orden n entonces T = A(I A)(s-1) s n- 1, es la
matriz de alcance de G.

La experiencia indica que alcanza con calcular T = (I A)(n-1)


Si al calcular T, tij = 1 xi en X, entonces el grafo G es fuertemente conexo, o sea
que xi, xj existe un camino de xi a xj. En caso contrario, si tij = 0 para algn par xi,
xj, xj no es alcanzable desde xi pudiendose diferenciar las distintas componentes
fuertemente conexas de G, clasificando grupos de nodos equivalente como aquellos
que son alcanzables entre s.

68

Introduccin a la Investigacin de Operaciones

Si los nodos del grafo estn ordenados por componentes, cada una de ellas se va a
caracterizar por un bloque o submatriz cuadrada de 1s en la diagonal de la matriz T.
En estos casos se dice que la matriz T es triangular por bloques, es decir que esta
compuesta por bloques cuadrados dispuestos en la diagonal.
Justificacin del Teorema

Sea A(p) la Matriz de Potencias Booleana de A, p 0 ,


1 ssi C i, j , l(C i, j ) = p
( p)
aij =
0 si no
Entonces la matriz de alcance T = p= 1, A (p) cuyos elementos se definen
1 ssi C i, j , l(C i, j )

tij =
0 si no
La suma booleana de todas las potencias posibles de la matriz de Adyacencia A,
implica un clculo poco cmodo, entonces usamos el siguiente lema.
Lema 1: Sea un grafo G de orden n, si Cij simple y elemental entonces l(Cij) es a
lo sumo n -1 . (los otros camino no interesan).
Demostracin:

T = p= 1, s A (p) s n-1 ( para no perder generalidad)


T = A(1) A(2) A(3) ... A(s) = (por prop.distr) = A ( I A ... A(s-1) )
T = A (I A)

(s-1)

s = n-1

Lema 2
Se cumple : I A . .. A (s-1) = (I
Completa en s).

LQQD

A)(s-1) , s 1

(se demuestra por Induccion

La experiencia indica que para calcular la matriz de alcance, alcanza con calcular
T = (I A)

(n-1)

Intuitivamente se justifica dado que I incluye xi = xj , para cualquier i,j , (recordar


definicin de relacin de alcance), adems A (I A)

(n-2)

(I A)

(n-1)

69

Introduccin a la Investigacin de Operaciones

Triangularizacin por bloques

Para una mejor manipulacin de las componentes fuertemente conexas y para una
mejor distincin de las mismas, se triangulariza la matriz de alcance T. Se define una
nueva base mediante un reordenamiento de los nodos, permutando las filas y
columnas de T. Siendo T la matriz del sistema de ecuaciones Tx = b, debo
transformar este sistema a otro equivalente con otra base que llamar Qx. Entonces
construyo una matriz Q, tal que QTQtQx = Qb. La matriz de este nuevo sistema es
QTQt que implica un nuevo orden del conjunto X de nodos, a partir de las
componenetes fuertemente conexas del grafo.
Ejemplo: La siguiente matriz de adyacencia corresponde al grafo de la fig. CFC:

x1
x2
x3
x4
x5
x6

IVA

1
1
0
0
0
1

1
1
0
0
0
0

0
1
1
1
0
0

0
0
1
1
0
0

0
0
1
0
1
1

1
0
0
0
0
0

1
1
0
0
0
1
1
1
0
0
0
1

X1= {x1,x2,x6},
1
0
0
0
0
0

0
1
0
0
0
0

0
0
0
1
0
0

0
0
0
0
1
0

1
1
0
0
0
0
1
1
0
0
0
1

0
1
1
1
0
0
1
1
1
1
0
0

x1 x2 x3 x4 x5 x6
1 1 0 0 0 1
1 1 1 0 0 0
0 0 1 1 1 0
0 0 1 1 0 0
0 0 0 0 1 0
1 0 0 0 1 1

0
0
1
1
0
0
0
1
1
1
0
0
(I V A)2

0
0
1
0
1
1
1
1
1
1
1
1

X2={x3,x4},
0
0
0
0
0
1

0
0
1
0
0
0

=Q

1
0
0
0
0
0
1
1
0
0
0
1

1
1
0
0
0
1
1
1
0
0
0
1

1
1
0
0
0
1
1
1
0
0
0
1

1
1
1
1
0
0
1
1
1
1
0
1

0
1
1
1
0
0
1
1
1
1
0
1

1
1
1
1
1
1
1
1
1
1
1
1
(I V A)4

1
1
0
0
0
1
1
1
0
0
0
1

1
1
0
0
0
1
1
1
0
0
0
1

1
1
0
0
0
0
1
1
0
0
0
1

0
1
1
1
0
0
1
1
1
1
0
1

0 0 1
0 0 0
1 1 0
1 0 0
0 1 0
0 1 0
1 1 1
1 1 1
1 1 0
1 1 0
0 1 0
1 1 1
(I V A )5 = T

X3 ={x5}
Mantengo x1,x2: x1 ==> x1, x2 ==> x2
Reordeno x6, x3, x4, x5:
x3 ==> x4
x4 ==> x5
x5 ==> x6
x6 ==> x3

70

Introduccin a la Investigacin de Operaciones

1
1
1
0
0
0

1
1
1
0
0
0

1
1
1
0
0
0

1
1
1
1
1
0

1
1
1
1
1
0

1
1
1
1
1
1

= Q T Qt

Las componentes fuertemente conexas de un grafo G, se pueden condensar en un


punto, formando un nuevo grafo Gc sin ciclos, cuyos arcos son aquellos del grafo G
que unen distintas componentes, al que se llama grafo condensado.
El siguiente es el Gc de la fig CFC. Los grafos condensados
se utilizan en la planificacin del trnsito y de transporte
urbano.
Procedimiento para condensar un grafo:

X2
X1

X3

1) Condensar G.
2) Encontrar algn camino hamiltoniano, si existe, en el grafo condensado Gc.
3) Encontrar un camino hamiltoniano en cada nodo del grafo condensado (en cada
componente fuertemente conexa de G).
4) Si es posible, unir el o los caminos encontrados en el paso 3) con el encontrado en
el paso 2).

Supongamos que el grafo condensado del ejemplo anterior describe el posible


recorrido de una lnea de mnibus, y se desea determinar aquel recorrido que pasa una
sola vez por cada una de las paradas (nodos del grafo).
Definicin
Un camino hamiltoniano en un grafo G, es aquel camino que pasa una y solo
una vez por cada vrtice del grafo.

Si G es de orden n, el largo del camino hamiltoniano es el del camimo elemental de


longitud mxima.

71

Introduccin a la Investigacin de Operaciones

3.4 Multiplicacin Latina - Camino Hamiltoniano


Procedimiento:
Se enumeran todos los caminos elementales posibles de longitud 1,2,... n-1.
Detenerse al encontrar todos los caminos de largo n-1.

Si no existe Camino Hamiltoniano, se conocern todos los caminos elementales


intermedios. La enumeracin de los caminos elementales se realiza mediante el
mtodo de Multiplicacin Latina.
Los elementos de la matriz Latina de largo 1, [M](1) = ((mij(1))) se definen
xi xj si (xi,xj) U, ij
(1)
mij =
0
si (xi,xj) U, ij o i = j
Retirando la primera letra de los elementos distintos a 0 obtenemos [M](1) = ((mij(1)))
latina.
xj si (xi,xj) U, ij
(1)
mij =
0 si (xi,xj) U, ij o i = j
Los caminos elementales de largo 2 se calculan de la siguiente manera
[M](1) L [M](1) = [M](2)
siendo
mij(2) =

Uk=1,n (mik(1) mkj (1) ), donde

mik(1) mkj (1) =

mik(1) conc. mkj (1) si mkj (1) mik(1) y mik(1) mkj (1) = 1
0 si no.

M(3) = M(2) L M(1),

M(4) = M(3) L M(1)

Para encontrar los caminos hamiltonianos nos detenemos en el paso n-1 (4, en nuestro
caso). Los elementos de la matriz M(n-1) contiene la sucesin de nodos de cada uno de
los caminos hamiltonianos, si existe alguno.
Ejemplo:
A
E

D
M(1)

C
M(1)

72

Introduccin a la Investigacin de Operaciones

0
0
0
0
EA

AB
0
0
0
0

AC
BC
0
DC
0

M(2)

M(4)
=

0
0
CD
0
ED

AE
BE
0
DE
0

0
0
0
0
A

ABC

BEA

0
DEA

0
0

EAB

0
0
EAC
EDC

0
BCDEA
0
0
0

0
0
CDEAB
0
0

B
0
0
0
0

ACD
AED
BCD
BED
0
0

C
C
0
C
0

E
E
0
E
0

ABE
0
CDE
0

ABEDC
0
0
DEABC
0

0
0
D
0
D

0
BEACD
0
0
EABCD

ABCDE
0
0
0
0

4. ESQUELETOS Y CAMINOS OPTIMALES


4.1 Medida de conexin de grafos
Cuerda de un esqueleto en un grafo conexo G, se le llama a cualquier arista de G
que no pertenece al esqueleto E.

Afirmacin:

Cualquier subgrafo compuesto del esqueleto y


una cuerda contiene un ciclo
cuerda
esqueleto

Nmero ciclomtico v(G) de un grafo G, es el nmero de cuerdas de cualquier


esqueleto en G.
Proposicin: Sea un grafo G, m el nmero de aristas , n el nmero de vrtices y c el
nmero de componentes conexas, entonces v(G) = m - n + c.

73

Introduccin a la Investigacin de Operaciones

Teorema: Sea G un grafo de orden n, n > 2. Las propiedades siguientes son


equivalentes en cuanto a caracterizar a G como rbol.
1) G es conexo y sin ciclos.
2) G es sin ciclos y con (n-1) aristas.
3) G es conexo y con (n-1) aristas.
4) G es sin ciclos y maximal. G es maximal si al agregar una arista entre dos vrtices
no adyacentes se crea uno y solo un ciclo.
5) G es conexo y minimal. G es minimal si suprimiendo una arista cualquiera del
grafo, ste deja de ser conexo)
6) Todo par de vrtices est unido por una y solo una cadena.

Teorema: Un rbol de orden n >2 admite por lo menos dos vrtices que son
adyacentes a un solo vrtice.
Teorema: Un grafo admite un grafo parcial que sea rbol ( dicho de otra forma
admite un rbol parcial (esqueleto) s. s. i. es conexo.

74

Introduccin a la Investigacin de Operaciones

4.2 Esqueletos optimales


Esqueleto Mnimo de un grafo ponderado G = (X, U, W) de orden n, es aquel
esqueleto de valor mnimo.

Los esqueletos mnimos permiten, por ejemplo, calcular el costo mnimo de conexin
de un grafo. Los algoritmos de Kruskal y Prim encuentran un esqueleto mnimo en G.
ALGORITMO DE KRUSKAL

Repita los siguientes pasos hasta que el conjunto T tenga (n-1)


aristas (T= n-1):
1) Al comenzar T = (vaco)
2) Agregue a T las aristas de menor valor que no formen un
ciclo con las aristas que ya estn en T.

ALGORITMO DE PRIM

Repita hasta que el rbol T tenga (n-1) aristas:


1) Al comienzo tome cualquier arista que tenga el menor valor
asignado.
2) Agregue a T la arista de valor mnimo, conformada por un
vrtice en T y otro vrtice que no pertenezca a T.

Se puede demostrar que estos algoritmos construyen esqueletos mnimos. El siguiente


teorema, demuestra la correctitud del algoritmo de Prim.
Teorema P1: El algoritmo de Prim es vlido, es decir al finalizar el algoritmo, el
grafo resultante E es un esqueleto mnimo.
Demostracin:

Podemos afirmar que por construccin, al finalizar el algoritmo, E es un subgrafo


parcial de G (conexo) y sin ciclos ==> es un ESQUELETO.
A continuacin probamos que E es un esqueleto mnimo y lo hacemos por induccin
en la K-sima iteracin del algoritmo.
Al demostrar que en la k-sima iteracin Ek est includo en un esqueleto mnimo,
estoy demostrando que al finalizar, En-1 es un esqueleto mnimo.
1.-Paso base
k=1, n=2, E1 tiene una sola arista que es la mnima (o una de ellas)
==> E1 en algun esqueleto mnimo de G. Se cumple.
2.- Paso inductivo
Suponemos verdadero para k = k-1 (k-1-isima iteracin), o sea que
Ek-1 E' que es mnimo.

75

Introduccin a la Investigacin de Operaciones

Sea V el conjunto de vrtices de Ek-1 : V = { vi, vi Ek-1)


El algoritmo toma una arista [i,j] de valor mnimo, tal que i V, y j V y lo agrega a
Ek-1 obteniendo Ek = Ek-1 U [i,j]

Ek-1
i

Si [i,j] E', ==> Ek E' (esq. mn) L.Q.Q.D


Si [i,j] E' ==> E' U [i,j] contiene un ciclo C. Tomemos una arista [x,y] ciclo C,
y tal que [x,y] [i,j] con x en V e y V. Consecuentemente w[x,y] w[i,j] y por lo
tanto el grafo E'' = { E' U [i,j] - [x,y] } tiene valor el valor de E' (*)

Como por construccin E'' es esqueleto, entonces por (*) es un esqueleto mnimo y
como Ek E'' se verifica el paso inductivo.
Ek en un esqueleto mnimo (E' o E'')

L.Q.Q.D.

76

Introduccin a la Investigacin de Operaciones

4.3 Caminos optimales Camino mnimo


Algoritmo de DIJKSTRA

Este algoritmo calcula el camino mnimo de un nodo a a otro nodo z en particular, a la


vez que calcula los caminos mnimos desde el nodo inicial a dado hasta cada uno de
los otros nodos del grafo.
Algoritmo de Dijkstra

Sea G = (X, U, W) un grafo ponderado,


w(u) el largo asignado a la arista u,
m un contador de distancia,
(r, d(p)) etiqueta del vrtice p,
r = antecesor de p en el camino desde a,
d(p) = distancia mnima desde a hasta p.
Para valores crecientes de m, el algoritmo marca aquellos vrtices que tienen m como distancia
mnima desde el vrtice a.
1) Empezar con m = 1 y marcar a con (-, 0)
2) Chequear cada arista u = (p,q) desde algn p ya marcado, hasta algn q sin marcar.
Suponga que p est marcado con (r, d(p))
Si d(p) + w(u) = m , marcar q con (p,m)
3) Si x sin marcar: m := m + 1;
volver al punto 2
Si no: ejecutar el punto 4
Si solamente estamos interesados en el camino hasta z, al marcar z, seguimos con el punto 4
4) Para cualquier vrtice y, un camino ms corto de a a y, tiene largo d(y) (la 2da parte de la
etiqueta de y).
Ese camino lo puedo encontrar retrocediendo desde y, usando la 1era
parte de las etiquetas de los vrtices encontrados en el retroceso.

Este algoritmo permite calcular cuan lejos se puede llegar en 1, 2 .... m unidades.
Como est especificado en Pero tiene una ineficiencia muy significante, Si la suma
d(p) + w(u) en 2) tiene valor por lo menos m'>m entonces el contador de distancia
m, debera ser incrementado inmediatamente a m' (m := m').
Ejemplo: Encontrar el camino mnimo (mas corto) entre F y C del siguiente grafo

77

Introduccin a la Investigacin de Operaciones

(F,7)

(A,9)

7
(-,0)

(F,5)

1
(I,6)

(D,9)

4
(G,9)

(E,7)

(F,6)

m=1 no puedo marcar


m'= 5 , incremento m := m'
m=5, marco I (F, 0+5)
m=6 , encuentro G , d(F) +1 = 6 marco G (I,6)
m=7 marco A [0+7] (F,7) y D [6 + 1] (E,7)
m=8 no marco
m=9 marco H (G,9) y B (A,9) marco C (D,9)
Encontr C, d(C) = largo del camino= 910
Retrocedo por la primera etiqueta: C->D->E->I->F.
El camino mnimo es: F-I-E-D-C.

78

Introduccin a la Investigacin de Operaciones

5. REDES FLUJOS
Red es un grafo ponderado, con un nodo a llamado fuente y otro nodo z llamado
pozo, terminal o resumidero (sink).

N = ( X, U, W)

X = { a, z, xi , 1 i n-2}

U = { (xi, xj), ........}


Consideramos redes orientadas. Es viable afirmar que una red siempre es orientada.
d

5,5

b
7,4

7,6
4,3
4,1

a
4,0

3,2
8,6

8,8
c

5,5

Se llama red de transporte cuando a cada arco u de la red se lo pondera asignndole


un par de nmeros enteros, positivos mediante las funciones capacidad, k(u) , y flujo,
(u).
w(u) = (k(u), (u))
k(u) es la capacidad o cota superior de lo que puede transportar el arco u y (u) el
flujo o la cantidad de sustancia que realmente transporta el arco u.

Una red de transporte modela problemas del tipo:


- maximizar el flujo de petrleo, a travs de una gran red de oleoductos;
- maximizar el nmero de llamadas telefnicas en la red de telefona.
- otros.
Se transportan unidades de flujo de un sitio a otro a traves de una red, con ciertas
restricciones en cuanto a capacidades de envo en las lneas que componen la red. En
el caso del transporte de petrleo, la capacidad de un arco representa la capacidad en
barriles por minuto de una seccin del oleoducto, el flujo es el fludo que se transporta
o enva.
Lo que se busca es maximizar un "flujo" desde el nodo a al nodo z, de tal modo que
el flujo ( fludo) que pasa por cada arco no exeda su capacidad permitida.

79

Introduccin a la Investigacin de Operaciones

Es un problema tpico de Investigacin de Operaciones:


max {Flujo}
segn restricciones

La capacidad y flujo de los arcos pueden tener asignados otros valores, que no sean
enteros positivos, pero se debe tener especial cuidado al aplicar un algoritmo de
solucin que sea adecuado a esa caracterstica.

5.1 Corte mnimo flujo mximo


El conjunto de los nodos X se puede particionar en dos subconjuntos P, y Pc, P U Pc
= X, PPc = .
Definicin: Un corte en la red N es el conjunto de los arcos incidentes hacia el
exterior de P.
(P,Pc) = { (x,y) , x P, y Pc, P U Pc = X, PPc = }

Un corte me determina posibles caminos desde a a z


En la red de la fig. 4.1, si P = {b,c}, Pc = {a,d,e,z}, (P,Pc) = {(b,d), (b,e), (c,e)};
Nota: {(a,b), (a,c), (d,c)} al corte, sin embargo en redes no orientadas, (P,Pc)
denota todas las arcos que van de P a Pc.
Definicin: Corte a-z (fuente-terminal) es aquel en que a P y z Pc.

En la red de la fig 4.1, si P = {a,b,c}, (P,Pc) es un corte a-z.


Definicin: Capacidad de un corte (P,Pc) viene dada por k(P,Pc) =

ucorte

k(u) .

Definicin: Flujo a-z, (flujo fuente-terminal) en una red N, es aquel en el que (u)
u U, los nodos fuente a y pozo z satisfacen las siguientes condiciones:
a) 0 (u)k(u) u U
b) (u) = 0, u I-(a) y u I+(z)
c) x a, x z, uI+(x) (u) = uI-(x) (u)

La condicin b) nos asegura que el flujo vaya de la fuente al pozo y no al revs. La


condicin c) implica que el flujo parcial que entra a un nodo x, es igual al flujo parcial
que sale de x, es llamada la condicin o ley de conservacin de flujo de Kirchhoff.
Si se suman las ecuaciones en c) sobre todas las x pertenecientes a un subconjunto P
de nodos de una red N que no contengan ni a ni z, se obtiene la siguiente expresin
como consecuencia de c:

80

Introduccin a la Investigacin de Operaciones

(u) = xP uI-(x) (u)


Obs: algunos (u) se repiten en ambos miembros de la igualdad, ya que en ambos
lados se sumas el flujo de aquellos arcos que van de un nodo en P a otro en P.
+
uI (x)

xP

Por ejemplo tomando P = {b,c}en el ejemplo de la fig. 4.1,


+
uI (b)

(u) = 5+2 =

+
uI (c)

(u) = 5+3 =
xP

uI (b)

(u) = 4+3

uI (c)

(u) = 8+0

5+2+5+3 ==

xP

4+3+8+0

Eliminando los flujos (u) que se repiten en ambos miembros se obtiene una nueva
condicin
para todo subconjunto P de nodos que no contengan ni a ni z.
c')

c
u(P,P )

(u) =

c
u(P ,P,)

(u)

Es decir que P que no contenga ni a ni z, el flujo que ingresa a P es igual al flujo que
sale de P.
Teorema N.1
Para cualquier flujo a-z, en una red N, el flujo que sale de la fuente a es
igual al flujo que ingresa (entra) al pozo z.

Demostracin: Suponga momentaneamente que N = (X, U, W) no contiene ningn


arco (a,z). (nota: el teorema es vlido tambien cuando existe un arco (a,z)).
Sea P = { X - a - z} y Pc = {a, z}

Flujo saliente de a = uI+(a) (u)


Por la condicin b) de flujo a-z:
Por c) :
Por b):

c
u(P ,P)
c
u(P,P )

(u) =
(u) =

Flujo saliente de a =

+
uI (a)

c
u(P,P )
uI (z)

+
uI (a)

c
u(P ,P)

(u)

(u)

(u) =

(u) =

(u) =

flujo entrante a z
uI (z)

(u) =

flujo entrante a z

LQQD

81

Introduccin a la Investigacin de Operaciones

La condicin b) de flujo a-z determina que el nico flujo hacia P desde Pc={a,z} debe
ser desde a.
Cuantificacin de un flujo a-z : ||.
|| es el valor del flujo a-z, y se define como la suma del flujo que sale de a,(
equivalente a decir que es la suma del flujo que entra a z). Entonces, una cota superior
de || es la suma de las capacidades de los arcos incidentes hacia el exterior de a.

|| =

+
uI (a)

(u)

+
uI (a)

k(u)

De la misma manera, la suma de las capacidades de los arcos incidentes hacia el


interior de z es una cota superior del valor del flujo ||. Adems, || est acotado
tambin por la capacidad de cualquier corte a-z, es decir, por la suma de las
capacidades de cualquier conjunto de arcos que corta todo flujo de a a z.
En el ejemplo primero, el corte con P = {a,b,c ), es de capacidad k(P,Pc) = 13es,
por lo que ningn flujo a-z en la red puede valer ms de 13. (Nota: en este caso c' no
es vlida ya que a P.)
Teorema N.2: Para cualquier flujo a-z, , y cualquier corte a-z, (P,Pc), en una red
N,

|| k(P,Pc)
Demostracin:
Expandimos la red N agregndole un nodo a' con un arco u' = (a', a) de
capacidad infinita (significa muy grande), k(u') = , a' Pc.

a'

Pc
P

Pc

fig. 4.3
A u' se le asigna el valor del flujo ||, (u) = || , entonces se transforma en un
flujo a'-z en la red expandida, la antigua fuente a ahora recibe su flujo de la super
fuente a'.
En esta nueva red, N', si se puede aplicar la condicin c') a P, ya que P no contiene la
fuente a'

82

Introduccin a la Investigacin de Operaciones

(u) = u(P,Pc) (u)


Adems por construccin de N', el flujo hacia P es de valor al menos || que es el
valor de (u'), otros flujos podran ingresar a P por arcos desde Pc.
c
u(P ,P)

|| = (u')
(*)

(u) =

c
u(P ,P)

c
u(P,P )

|| k(P,Pc)

(u)

c
u(P,P )

k(u) = k(P,Pc)

L.Q.Q.D.

Corolario N.2
Para cualquier flujo a-z, , y cualquier corte a-z, (P,Pc), en una red N,

|| = k(P,Pc) s.s.i
i) (u) = 0 , u (Pc,P)
ii) (u) = k(u), u (P,Pc).
En este caso decimos que es un flujo mximo y (P,Pc) es un corte a-z de
capacidad mnima.
Demostracin:
Considere las inecuaciones en (*) de la demostracin del Teorema N.2 y la red
expandida.
|| = (u')

c
u(P ,P)

(u) =

c
u(P,P )

(u)

c
u(P,P )

k(u) = k(P,Pc)

Directo
Si || = k(P,Pc) entonces se cumple la igualdad en la inecuacin (*) es decir, || =
c
(u)
i) es verdadera,
u(P ,P)
(si fuese
c (u) =
Adems
u(P,P )
u(P,Pc), porque si no

c
u(P ,P)

(u) > || , habran otros flujos positivos hacia P).

k(u) = k(P,Pc) lo que implica (u) = k(u)


(u) < k(P,Pc) contradice la hiptesis.

c
u(P,P )

c
u(P,P )

Recproco: vale el mismo argumento utilizado para demostrar el directo.


Por lo tanto la igualdad en (*) se cumple s s i i) y ii) se cumplen.
La ltima afirmacin del corolario, se deriva directamente del Teorema N.2
Cuando en || k(P,Pc) se cumple la igualdad, se obtiene el valor mximo de ||
==> es un flujo mximo,
y tambin cuando se cumple la igualdad, se obtiene el valor mnimo posible de la
capacidad del corte a-z en consideracin,
==> (P,Pc) es un corte a-z de capacidad mnima.

83

Introduccin a la Investigacin de Operaciones

5.2 Bases Para la Construccin de un Flujo Mximo


Arco Saturado El arco u de la red se dice saturado cuando k(u) = (u);

La holgura de un arco u es la cantidad libre de su capacidad, an pasible de utilizar y


se nota s(u) = k(u) - (u)
Holgura mnima en un camino que va de a a z, es la holgura mnima entre todos los
arcos de ese camino.
Camino a-z, Li, es un camino i que va de la fuente a la terminal.
Ejemplo:

5
5,3

5,3
4

4
6,3

2
6,0

1
1,0

3,3

z
6,3
5

3,3

Supongamos que a la red de la figura no se le asignaron flujos a sus arcos.


Encontramos en esa red el camino L1 = {(a,b), (b,d) (d,z)}= a-b-d-z. La holgura
mnima de L1 es 3, min s(u) = 3 u L1. Esto quiere decir que podriamos sumarle
un flujo de 3 unidades a cada uno de los arcos de L1.
Luego identificamos el camino L2 = a-c-e-z, y hacemos lo mismo que con L1, en
este caso tambien sumamos 3 unidades, min s(u) = 3 u L2.. Con el mismo
procedimiento se podra ir aumentando el flujo de los arcos pertenecientes a caminos
que van de a a z, con su holgura mnima, hasta encontrar un flujo que sea mximo.
Afirmacin: Cualquier flujo en una red N, se puede descomponer unidades de flujo
a-z en caminos que van de a a z.

Por ejemplo el flujo de llamadas de telfonos de un pas a otro puede ser


descompuesto en llamadas individuales; el flujo de petrleo en su envo, puede
descomponerse en los caminos del envo de cada tonelada.
Unidad de flujo a-z en L, siendo L un camino que va de a a z, es el flujo

con L(u) = 1 si u L
y L(u) = 0 si u L

En base a esta unidad, se define la suma de flujos al flujo de una red.

84

Introduccin a la Investigacin de Operaciones

= + L1(u) + L2(u), u U
El flujo de la red sigue siendo un flujo a-z, siempre que (u) k(u), u caminos
en consideracin.
Si s es la menor holgura en un camino L, es entonces la holgura mnima del camino L
por lo que se puede sumar sL al flujo de la red.
s*L = L+L+L +L ...... (s veces).
= + s * L
Este mecanismo nos sugiere una manera de construir un flujo mximo: aumentando el
flujo de la red mediante la suma de unidades de flujo a-z equivalentes a la holgura
mnima de los caminos a-z que as lo permitan.
Volviendo al ejemplo, al comienzo el flujo de la red es (u) = 0 uU , luego
encontramos el camino L1 = a-b-d-z y le sumamos a flujo 3L1. Observar que L1
posee un nico arco saturado: (b,d), el de la holgura mnima. Luego aumentamos en
3L2, L2 = a-c-e-z . Continuamos con L3= a-b-e-z de holgura mnima 2, que se usa
para aumentar el flujo en 2L3 y L4 = a-c-d-z- de holgura mnima 1 el flujo aumenta
en L4. As se obtiene el flujo a-z
= 3L1 + 3L2 + 2L3 + L4
Luego de aumentar el flujo con L4, todos los caminos que llevan a Z tienen holgura
mnima 0 y en la bsqueda de caminos con alguna holgura mnima, no se puede
seguir mas all que de a hasta c.
Se han saturado todos los arcos de un corte a-z; u (P,Pc), P = { a,c}, (u) = k(u).
k(P,Pc) = 9 = ||
maximal (por corolario N.2)
y el corte es mnimo, es el de capacidad mnima, observar que al estar saturado, no se
puede enviar mas que k(P,Pc) unidades desde a.
En este caso se tuvo la intuicin necesaria para encontrar los caminos que llevaron al
flujo mximo. Pero no siempre es tan fcil.
La siguiente figura muestra otro procedimiento de aumento a la red del ejemplo.

85

Introduccin a la Investigacin de Operaciones

2
3,0

d
3
6,1

5,5
3
6,5

1,1

a
5,1
2
4

z
6,5
6

3,1
3

Se empieza con L1 = a-b-e-z saturando el arco (a,b), sumandole 5L1. Luego L2 = ac-d-z, saturando (c,d) y sumandole al flujo 1L2. Queda nada mas que un camino sin
saturar L3 = a-c-e-z holgura mnima 1, se sumando 1L3 al flujo total.
= + 5L1 + 1L2 + 1L3
No hay mas caminos de a a z con holgura mnima positiva ( >0 ), no es posible
aumentar mas el flujo. De a puedo llegar nada mas que hasta e pasando por c.
Queda determinado un corte saturado (P, Pc), P = {a,c,e}. Luego observamos que
|| = 7 y k(P, Pc) = 12.
|| < k(P, Pc)
El mtodo de aumento puro, no siempre encuentra un flujo mximo!
Por el corolario N.2 un flujo es de valor mximo ssi
i) (u) = 0, u(Pc, P)
ii) (u) = k(u) u (P, Pc)
En este caso observamos que el arco u = (b,e) (Pc, P) y (u) = 5 0
Se ha cometido el error de haber aumentado de entrada todas unidades libres de L1,
(5). Por eso en L3 no se pudo mandar mas que 1 unidad de flujo de L3, y en L2 nada
mas que 1, (c,d) no lo permita. En realidad se debera haber reservado alguna unidad
de L1 para asignarsela a L3, (c,e) s lo permita.
Con L4 = a-b-d-z, se obtiene el flujo.
= 3L1 + L2 + 3L3 + 2L4
Este mtodo de reservar unidades de flujos es muy complicado y poco controlable ya
que igualmente no asegura encontrar el mximo. Existe una manera de ir corrigiendo
el aumento de los flujos y que evita caer en los errores mencionados.
En la red de la fig 4.5, el arco (b,e) contiene 5 unidades de flujo que van de Pc a P con
(P,Pc) saturado, (b,e) =5 > 0, esto se corrige reduciendo el flujo de (b,e). Como
86

Introduccin a la Investigacin de Operaciones

hacerlo? Por la condicin c) de flujo a-z, se lo puede reducir solamente, si se


compensa la reduccin del flujo desde b hacia e, con un incremento hacia e desde
cualquier arco u I-(e), con extremo inicial en P. Compensando desde Pc se corre el
riesgo de encontrarse nuevamente con el caso de arcos que van de Pc a P con flujo
positivo (ver corolario N.2).
El incremento de compensacin debe venir de la fuente a, ya que necesitamos
corregir el flujo en un camino desde a a e que contenga nodos en P. El nico camino
de esas caractersticas es K1 = a-c-e. Del mismo modo, la reduccin del flujo de b
hacia e, debe ser compensado por un incremento en algun camino desde b hacia algun
nodo en Pc, ya que necesitamos corregir flujo en algn camino de b a z , con nodos en
Pc. El nico camino con esas caractersticas es K2 = b-d-z. La mnima holgura en K1
es 2, y en K2 es 3, el mnimo entre ellos es 2, entonces se disminuye el flujo de (b,e)
en dos, (b,e) : = (b,e) - 2 , y se aumenta el flujo de K1 y K2 en 2. Con este
aumento de correcin se obtiene el flujo mximo,en el corte a-z saturado con P=
{a,c},Pc={b,d,e,z}.
Observen que el procedimiento ha consistido en realizar una correccin en la cadena
K = a-c-e-b-f-z de 2 unidades de flujo.
Definicin Unidad de flujo a-z en una cadena K que va de a a z, es el flujo K con
K(u) = 1 u K con direccin igual al de la orientacin de la cadena
K (u) = -1 en aquellos arcos con orientacin contraria a la de la cadena,
K (u) = 0 en los otros arcos.

K en realidad no es un flujo ya que tiene valores negativos en algunos arcos, pero el


flujo resultante de una correcin, = + K s lo es. Aquellos arcos que van en la
direccin contraria a la de K, tiene valores positivos, > 0, que puedo reducir y existe
holgura en los arcos que van en la misma direccin de K hacia z que puedo aumentar.
En el ejemplo anterior se corrige sumando a un flujo cadena de 2 unidades, =
+ 2K .

5.3 Algoritmo de Flujo Mximo


El algoritmo de aumento que a continuacin planteamos, de Ford y Fulkerson,
construye un corte mnimo y un flujo mximo, corrigiendo e incrementando,
mediante el aumento del valor del flujo con unidades de flujo a-z en cadenas.
Iterativamente va construyendo cadenas de flujos desde a, de una manera similar a la
del camino mnimo de Dijkstra.
A cada nodo q va visitando le asigna una etiqueta: (p, D(q)) compuesta de dos
etiquetas:
1) p es el nodo precedente a q en la cadena de flujo de a a q, el ndice
superior de p ser el signo de + si el ltimo arco en la cadena es (p,q) y el
signo de - si el ltimo arco es (q,p).

87

Introduccin a la Investigacin de Operaciones

2) D(q) es la holgura mnima entre todos los arcos de la cadena que van de a
a q. En un arco u de orientacin contraria al de la cadena, la holgura es la
cantidad de flujo que puedo quitar.
En caso de aplicar este algoritmo en una red con un flujo preasignado, controlar que
sea a-z.
Algoritmo de Flujo Mximo
1.- Marcar la fuente a con (-)
a es el primer nodo a examinar.
2.- Sea p el vrtice que se examina cuya 2da etiqueta es D(p)

a) Examinar todo u = (q,p) I-(p)


Si (u) > 0 y q no marcado entonces
marcar q con (p-, D(q))
siendo D(q) = min (D(p), (u))
b) Examinar todo u = (p,q) I+(p)
Si s(u) = k(u) -(u) > 0 y q no marcado entonces
marcar q con (p+, D(q))
siendo D(q) = min (D(p), s(u))
3.- Si Z marcado, ir al punto 4.

Si no, elegir otro vrtice marcado para examinar (que no haya sido examinado
antes ) e ir al punto 2.
Si no existen mas vrtices marcados para examinar se ha determinado
un corte a-z saturado(P,Pc) , con P el conjunto de los vrtices
marcados. || = k(P,Pc) y por eso maximal ==> FIN
4.- Encuentre una cadena a-z K de arcos con holguras,
retrocediendo desde z como en el algoritmo de camino mnimo.
El flujo a incrementar k es cadena flujo a-z, de valor D(z) unidades

' = + D(z)k
Reasignar el flujo, y se aplicar nuevamente el agoritmo a ', es decir volver a 1)

Teorema: Dado cualquier flujo a-z , aplicando un nmero finito de veces el


algoritmo de Ford y Fulkerson, se obtiene un flujo mximo. Adems, si P es el
conjunto de vrtices marcados en la etapa final del algoritmo, el corte (P,Pc) es un
corte a-z mnimo.
Corolario (Flujo mximo- Corte mnimo)
En cualquier red orientada, el valor de un flujo mximo a-z es igual a la
capacidad de un corte a-z mnimo.

88

Introduccin a la Investigacin de Operaciones

6. INTRODUCCIN A LOS PROBLEMAS DE ORDENAMIENTOS


Ordenar es programar la ejecucin de la realizacin de un trabajo, asignando recursos
y fijando las fechas de ejecucin de las tareas que lo componen.
Los problemas de ordenamiento son inherentes a toda organizacin. Estos problemas
se resolvieron en forma emprica, mediante diagramas de Gantt, hasta 1958. En esta
fecha aparecen el mtodo PERT, o americano, y el mtodo de los potenciales de B.
Roy que resuelven los problemas de ordenamiento en el caso particular en que las
restricciones son de sucesin y de ubicacin temporal de tareas. Estos dos mtodos,
que llamaremos de camino crtico, surgieron a partir de necesidades concretas de
proyectos de gran envergadura con una organizacin muy compleja debido al gran
nmero de tareas. A pesar de que el mtodo del camino crtico resuelve un caso
particular de los problemas de ordenamiento, y de los ms simples, se ha convertido
en elemento indispensable en la gestin de las organizaciones.
Los problemas de ordenamiento aparecen en diversas reas: informtica (jobs, gestin
de recursos: procesos, memoria), construccin (seguimiento de proyectos), industria
(problemas de talleres, gestin de la produccin), administracin (empleo de tiempo).
En los problemas de ordenamiento distinguimos: las tareas, las restricciones
potenciales, los recursos y la funcin econmica.
Las tareas son el comn denominador de los problemas de ordenamiento, su
definicin no es siempre inmediata ni trivial. Cuando la duracin y las fechas mas
tempranas de comienzo de una tarea son conocidas, estamos ante un problema
esttico, por el contrario, cuando el conjunto de tareas evoluciona con el tiempo de
forma no determinista, estamos ante problemas estocsticos y/o dinmicos.
Las tareas pueden estar ligadas por restricciones de sucesin y de localizacin
temporal, que llamamos restricciones potenciales. Ejemplo de restricciones de
sucesin: construir primero los cimientos de un edificio, luego las paredes, etc.
Ejemplo de restricciones de localizacin temporal: tal tarea no puede comenzar antes
de tal fecha o se tiene que terminar antes que tal otra.
Las tareas requieren de recursos para ejecutarse . Los recursos determinan dos tipos
de restricciones: disjuntivas y acumulativas. Una restriccin disjuntiva aparece
cuando, por ejemplo, dos tareas usan la misma mquina y no se pueden ejecutar
simultneamente. Hay una restriccin acumulativa cuando, por ejemplo, tres
procesadores estan disponibles para ejecutar cuatro tareas, con lo cual una se retrasar
y deber necesariamente esperar la finalizacin de alguna de las otras.
La funcin objetivo se determina segn cmo se programen las tareas de forma de
optimizar segn un cierto criterio. Por ejemplo, la minimizacin de la duracin total
de un trabajo (criterio ms usado), respetando las fechas de los pedidos, o
minimizacin de un costo, etc. En forma genrica hay tres tipos de funcin objetivo
en los problemas de ordenamientos: 1) uso eficaz de recursos, 2) demora mnima en la

89

Introduccin a la Investigacin de Operaciones

de ejecucin de las tareas, 3) cumplimiento de las fechas de finalizacin fijadas a


priori.

6.1 Conceptos Generales


Sean:

I = conjunto de tareas, n = nmero de tareas a ejecutar (card I),


di = duracin de la tarea i,
ci = fecha de disponibilidad, o de comienzo mas temprana
fi = fecha en que debera estar terminada la tarea i ("deadline")
ti = fecha de comienzo de ejecucin de la tarea i,
Ti = fecha de fin de ejecucin.

Si la tarea i no es interrumpida, entonces: Ti = ti + di.


Una condicin necesaria para que un ordenamiento sea realizable es:
ci ti <Ti fi, i I
En ciertos casos, p.ej. si hay un retardo tal que Ti > fi, se podr considerar un costo wi
asociado a esa tarea i.

6.1.1 Relacin entre las tareas, Restriccin Potencial


En general dos tareas cualesquiera i, j I, no son independientes y pueden estar
ligadas por restricciones de anterioridad. Notaremos una restriccin potencial entre las
tareas j e i de la sg manera:
tj -ti aij
En el caso particular cuando aij = di , estamos ante una sucesin simple. Sin embargo
no se puede representar mediante restricciones potenciales el hecho de que dos tareas
exijan el mismo recurso en el mismo momento y que por lo tanto no pueden
ejecutarse simultneamente.
El conjunto de restricciones potenciales se puede representar por un grafo ponderado
y los mtodos de camino crtico que estudiaremos trabajan esencialmente sobre este
grafo.

6.1.2 Modos de ejecucin de las tareas.


Las tareas se ejecutan en forma continua o discontinua. Cuando una tarea i puede ser
ejecutada en forma discontinua, se dice entonces que es interrumpible ("preemtable").
O sea que una tarea i es pasible interrumpible (peemtable) si cuando se est
ejecutando y usando un determinado recurso, puede ser interrumpida por una tarea j
de mayor prioridad, y el recurso pasa a ser utilizado por la tarea j. En general el hecho
de tener este tipo de tareas disminuye la complejidad de los problemas tratados.

6.1.3 Recursos
Se distinguen dos tipos de recursos: renovables y consumibles.

90

Introduccin a la Investigacin de Operaciones

Un recurso es renovable si despus de haber sido usado en una tarea, es utilizable


totalmente en las tareas posteriores. Ejemplos: mquinas, procesadores, archivos,
personal, etc. Un recurso es consumible si despus de haber sido utilizado en una
tarea, ya no esta ms disponible para las posteriores. Ejemplos: materias primas,
dinero, etc. Los recursos, sean renovables o no, pueden estar disponibles solamente en
ciertos perodos, sujetos a una curva de disponibilidad.

6.1.4 Criterios de optimizacin.


Los factores ms importantes en la evaluacin de un ordenamiento son: la utilizacin
eficaz de los recursos, la disminucin de la demora global y el respeto del mayor
nmero posible de restricciones introducidas. A continuacin describimos algunos de
los criterios de optimizacin mas utilizados en problemas de ordenamientos:
a) Duracin total del ordenamiento: Si Tmax es la duracin total del ordenamiento, y
la fecha de comienzo es 0, entonces Tmax es igual a la fecha de finalizacin de la
tarea que finaliza ltima, es decir, Tmax = max {Ti}, iI. La minimizacin de
Tmax es la ms utilizada y es probable que con este criterio se asegure adems una
utilizacin eficaz de los recursos. Los mtodos de camino crtico tienen como
objetivo la minimizacin de Tmax.
b) Respeto de las fechas mas tardas de finalizacin: Muchos casos de problemas
reales, deben respetar las demoras y esto se relaciona con las fi. Una propuesta es
tratar de minimizar el retraso mayor. Si ri es el retraso de la tarea i, entonces ri =
max (0, Ti - fi), y Rmax = maxiI {ri}. El criterio sera min(Rmax). Otro criterio
sera la minimizacin de la suma o la suma ponderada de los retardos, etc.
c) Minimizacin de un costo: Este tipo de criterio puede expresarse de diversas
formas, por ejemplo, minimizar la suma ponderada de fechas de finalizacin de
tareas; es usado para minimizar costos de stock.
d) Minimizacin de nmero de interrupciones: Si en los problemas de ordenamientos
se autorizan las interrupciones y si una tarea es interrumpida n veces, la suma del
nmero total de interrupciones para todas las tareas es considerado un criterio de
optimizacin secundario importante. En multiprogramacin, por ejemplo, a cada
interrupcin de tarea est asociado un cambio de contexto, cuya duracin no es
despreciable. Observar que en el ordenamiento de actividades en la produccin de
bienes, puede ser tolerado un nmero importante de interrupciones en el uso de
recursos no crticos (cuyo costo de interrupcin es nulo) si ello redunda en el uso
eficaz de los factores limitativos.

6.1.5 Representacin de las soluciones (diagrama de Gantt)


El diagrama de Gantt es un mtodo grfico de representacin de la solucin; es una
valiosa ayuda para resolver en forma emprica el problema. El diagrama de Gantt no
es, en s mismo, un mtodo de resolucin de problemas de ordenamiento.
Ejemplo: Sean 5 tareas I = (1, 2, 3, 4, 5) de duraciones d = (6, 3, 4, 5, 5) que usan,
respectivamente, 4, 1, 3, 2, 3 unidades de recurso 1 y 8, 7, 10, 10, 4 unidades de
recurso 2, y las fechas de ejecucin son: 0, 3, 6, 8, 10

91

Introduccin a la Investigacin de Operaciones

6.2 Modelado de los problemas de ordenamientos


Clsicamente las tareas sujetas a restricciones temporales se modelan con un grafo
ponderado. Si se considera entonces el problema sin restricciones de recursos, los
algoritmos de caminos, aplicados a este grafo, permiten calcular las secuencias de
fechas ms tempranas y ms tardas, de comienzo y finalizacin de las tareas, como
veremos ms adelante. Se trata entonces de encontrar un ordenamiento optimal en el
espacio de soluciones del problema, restringido solamente a ligaduras temporales, o
relaciones de sucesin en el tiempo. Este es llamado problema central de los
ordenamientos. Existen variantes de modelado que permiten la introduccin de
restricciones de recursos, por ejemplo redes de Petri temporizadas, grafos bivaluados,
entre otros.

6.2.1 El problema central de los ordenamientos.


Se trata de ordenar, en una duracin minimal, un conjunto I = {1,...n} de tareas sujetas
a restricciones temporales del tipo desigualdad de potencial:
tj - ti aij, i,j I
donde ti (respectivamente tj) es la fecha de comienzo de la tarea i (resp. j) y aij un real
cualquiera.

92

Introduccin a la Investigacin de Operaciones

El objetivo es minimizar (Tmax):


Min (maxi (ti + di))
sujeto a:
tj - ti aij

6.2.2 Modelado: grafo potencial-tareas.


El problema central se plantea fcilmente como un programa lineal, pero su
resolucin es mas eficiente asocindole un grafo ponderado G = (X,U,W), que
llamaremos de potencial-tareas.
El conjunto de vrtices X tiene asociado: al conjunto I de tareas, ms dos tareas
adiccionales, ficticias, una de inicio que llamada tarea 0 y una de fin, la tarea n+1.
X = I {0, n+1}.
Las tareas 0 y (n+1) tienen duracin nula.
El conjunto de arcos U contiene: arcos (0, i), con ponderaciones w(0,i) = 0, arcos (i,
j) asociados a las restricciones potenciales, con ponderaciones w(i,j) = aij , y arcos
(i,n+1) con w(i,n+1) = di .
En este modelo es importante destacar dos propiedades:
a) las restricciones redundantes pueden suprimirse. La redundancia de restricciones
se expresa de la siguiente manera: si tres arcos (i,j), (j,k) y (i,k) son tales que aik
aij + ajk, el arco (i, k) puede suprimirse.
b) t0 = 0, para asegurar la positividad de una solucin.
Las desigualdades de potencial y sus arcos asociados permiten expresar una gran
variedad de restricciones, como ser:
Fecha de disponibilidad ci:
ti ci, implica la restriccin potencial (ti-t0) ci
Fecha mas tarda admitida de finalizacion, fi:
(ti + di) fi,
(t0 - ti) (di - fi),
Sucesin larga, la tarea j no puede comenzar antes del fin de la tarea i:
tj ti + di,
tj - ti di
Sucesin inmediata: la tarea j empieza exactamente cuando termina la tarea i: (tj ti+
di) y ti tj + di (tj - ti) di y (ti - tj) -di

Observar que con este modelo no se pueden tener en cuenta restricciones disyuntivas,
es decir, sus intervalos de ejecucin deben ser disjuntos (i antes que j o j antes que I).
Esto ocurre por ejemplo, si dos tareas necesitan un mismo recurso, cuya
disponibilidad no es suficiente para la ejecucin de ambas en simultneo, esta
93

Introduccin a la Investigacin de Operaciones

restriccin no puede ser representada por una conjuncin de desigualdades de


potencial.
Ejemplo: Sean 5 tareas I = {1, 2, 3, 4, 5}, y sus resp duraciones d = {1, 3, 1, 2, 1}.
Las tareas estn sujetas a las siguientes restricciones temporales:
la tarea 2 comienza en la fecha 3:
[t2 - t0 3] y [t0-t2 - 3]
las tareas 3 y 4 deben superponerse por al menos una unidad de tiempo:
[t3 t4+d4 -1] y [t4 t3+d3 - 1]
la tarea 4 puede comenzar solamente despus del fin de las tareas 1 y 2:
[t4 - t1 d1] y [t4 - t2 d2]
la tarea 5 no puede empezar antes del comienzo de la tarea 3
[t5 t3]

Este problema lo modelamos mediante un grafo de potencial-tareas(primera figura), la


segunda figura resulta de suprimir las restricciones redundantes:

6.3 Mtodos de Camino Crtico


El mtodo de camino crtico que presentamos es un mtodo polinomial, no resuelve
mas que un tipo de problema de ordenamiento, muy sencillo, en el cual slo se
consideran restricciones potenciales. Existen variantes a ste mtodo que permiten
introducir otro tipo de restricciones, aunque no asegura optimalidad.

94

Introduccin a la Investigacin de Operaciones

6.3.1 Conceptos generales


Definicin: Grafo conjuntivo: Un grafo conjuntivo es un grafo G = (X, U, W),
ponderado, con un nodo raiz 0 y otro final n+1, tal que existe un camino de valor
positivo entre la raiz y todo otro nodo del grafo, y un camino de valor positivo entre
todo nodo distinto del nodo final y el nodo final del grafo.
Definicin: Conjunto de potenciales: Un conjunto de potenciales sobre un grafo
conjuntivo G=(X, U, W) es una aplicacin t : XR, tal que t0 = 0 y para todo arco
conjuntivo (i,j) de ponderacin w(i,j)=wij, se tiene la restriccin potencial:
(tj - ti) wij.
Teorema de Existencia: Una condicin necesaria y suficiente para que exista un
conjunto de potenciales sobre un grafo conjuntivo G=(X ,U, W) es que este grafo no
contenga circuitos de valor estrictamente positivo.

Demostracin:
( ) Por absurdo.
Sea [1,2,...r,1] un circuito de valor estrictamente positivo: w12 +....+ wr1 > 0.
Si existiera un conjunto de potenciales sobre G, tendramos
t2 -t1 w12
....
tr-tr-1 w(r-1)r
t1-tr wr1
Sumando tendramos w12 + ...+ wr1 0, absurdo.
(
) Por hiptesis, G conjuntivo (existe al menos un camino de valor positivo que va
de 0 a i) y no existen circuitos de valor positivo.
Por lo tanto, tomando un camino que va de 0 a i y suprimiendo circuitos de valor
negativo, se puede extraer un camino elemental de 0 a i de valor por lo menos la del
camino original. El nmero de caminos elementales es finito, entonces existe un
camino elemental de valor maximal de 0 a i. Notemos ri el valor de este camino y
verifiquemos que R={ri} i I es un conjunto de potenciales:
r0 = 0, rj es el valor mximo de los caminos elementales de 0 a j.
ri + w(i,j) es el valor de un camino de 0 a j pasando por i con un valor ri,
por lo tanto ri + w(i,j) rj, w(i,j) = wij
o sea:
rj ri wij, i, j I
L.Q.Q.D.
Corolario 1: Si un grafo conjuntivo no tiene circuitos, existe siempre al menos un
conjunto de potenciales asociados.
Corolario 2: Si las ponderaciones de los arcos de un grafo conjuntivo son positivas o
nulas, existe al menos un conjunto de potenciales sii todos los circuitos son de valor
nulo.

95

Introduccin a la Investigacin de Operaciones

De ahora en adelante, suponemos que el grafo conjuntivo no contiene circuitos de


valor positivo.
Sea V(i,j) el valor maximal de un camino de i a j, por convencin V(i,i) = 0 y si no
hay camino de i a j V(i,j) = -.
Lema 1: Para toda pareja (i,j) de vrtices se tiene tj - ti V(i,j).
Demostracin: Sea [i, h,...,k, j] un camino de i a j de valor V(i,j),
Por definicion de potencial: th-ti wih, ..., tj-tk wkj,
sumando todos los trminos obtenemos:
tj - ti wih + ...+ wkj = V(i,j). L.Q.Q.D.
Proposicin 1: Para todo conjunto de potenciales T = {ti}, se tiene: ri ti.
Demostracin: Segn el lema anterior, ti-t0 V(0,i), luego V(0,i) = ri , t 0= 0,
entonces,
ri ti L.Q.Q.D.

Esta propiedad muestra que para el conjunto de potenciales R, las tareas se ejecutan lo
ms temprano posible.
Conjunto de potenciales optimales, camino crtico: En los mtodos de potenciales
se buscar un ordenamiento de duracin total minimal. Este ordenamiento
corresponder a un conjunto de potenciales tal que tn+1 sea minimal. Segn la
proposicin 1, tn+1 es minimal cuando se cumple la igualdad. Luego rn+1 = V(0,n+1),
o sea el valor maximal de un camino que va de 0 a n+1. Este camino se llama camino
crtico y notaremos t* su valor.
Proposicin 2:
Sea F = {fi = [V(0,n+1) - V(i,n+1)] / iX}. F es un conjunto de potenciales ptimo.
Adems si T es otro conjunto de potenciales optimal, se tendr: ti fi
F es un conjunto de potenciales en el cual todas las tareas se ejecutan lo ms tarde
posible.
Demostracin: Veamos primero que F es un conjunto de potenciales

Si (i,j) U,

wij + V(j,n+1) V(i,n+1)


wij [V(0,n+1) - V(j,n+1)] - [V(0,n+1) - V(i,n+1)]
wij fj - fi, y este conjunto de potenciales es optimal ya que
fn+1 = V(0,n+1) = t*

Si T es un ordenamiento optimal, tomemos j = n+1 en (lema 1) : ti tj - V(i,j),


ti tn+1 - V(i,n+1) V(0,n+1)- V(i,n+1) = fi,
ti fi

96

Introduccin a la Investigacin de Operaciones

6.3.2 Mtodo de potencial-tareas


Veamos el siguiente ejemplo: se debe ejecutar, en una duracin minimal, siete tareas
ligadas por las siguientes restricciones potenciales:
tarea
1
2
3
4
5
6
7

duracin
3
7
4
6
5
3
2

restricciones potenciales

la tarea 1 precede a la tarea 3


las tareas 1 y 2 preceden a la 4
la tarea 3 precede a la 5
las tareas 3 y 4 preceden a la 6
la tarea 6 precede a la 7

Grafo de potencial-tareas asociado


Un ordenamiento es un conjunto de potenciales T={ti:iX} sobre el grafo. La fecha
ti, es la fecha de comienzo de ejecucin de la tarea i. Un ordenamiento de duracin
minimal es uno tal que minimiza tn+1, o sea de valor tn+1 = V(0,n+1) = t*.
Entre los ordenamientos optimales, los ordenamientos ms tempranos, R, y los ms
tardos, F, son particularmente los ms interesantes, ya que ri ti fi.
Resolver los ordenamientos ms tempranos y ms tardos R y F que estn definidos
por V(0,i) = ri y fi = V(0,n+1) - V(i,n+1), equivale a resolver problemas de caminos
en grafos. Se usa el algoritmo de Bellman sobre grafos conjuntivos, algoritmo de
complejidad O(m), m = nro. de restricciones potenciales. Lo ms comn son grafos
con ponderaciones estrictamente positivas en sus arcos, y la existencia de circuitos
implica la no existencia de soluciones. En presencia de circuitos de valor negativo se
puede por ejemplo utilizar el algoritmo de Ford (O(n3)).
Aplicando el algoritmo de Bellman al ejemplo anterior, encontramos:
r0 = r1 = r2= 0, r3 = 3, r4 = r5 = 7, r6 = 13, r7 = 16, r8 = 18;
el clculo de las fechas ms tardas es anlogo,
f0 = 0, f4 = 4, f2 = 0, f3 = 9, f4 = 7, f5 = f6 = 13, f7 = 16, f8 = 18.

97

Introduccin a la Investigacin de Operaciones

Precondicin: El grafo no tiene ciclos.


Algoritmo de Bellman para las fechas ms tempranas ri y ms tardas fi

Marcar el nodo 0 con r0 = 0,


Mientras existan nodos sin marcar;
Sea j un nodo no marcado
con todos sus predecesores marcados,
marcar j con rj = max i U- (j)(ri+wij);
Fin Mientras
Marcar el nodo n+1 con fn+1 = rn+1
Mientras existan nodos sin marcar;
Sea i un nodo no marcado
con todos sus sucesores marcados,
marcar i con fi = min j U+ (i)(fj-wij);
Fin Mientras

6.3.3 Holguras
Los mrgenes u holguras tienen por funcin evaluar la demora o el retardo permitido
en una tarea, sin modificar "demasiado" los resultados. Definiremos el margen u
holgura total Mi, la holgura o margen libre mi, y el margen seguro ui.
Holgura total Mi de una tarea i es el tiempo que se puede retardar una tarea sin
afectar la fecha de fin de proyecto. Mi es entonces, la diferencia entre la fecha ms
tarda y la ms temprana:
Mi = fi-ri.
Holgura libre mi de una tarea i es el tiempo que se puede retardar esa tarea de forma
que las tareas sucesoras puedan empezar en la fecha ms temprana:
mi = Min [jU+(i)] {rj-(ri+wij)}
Margen seguro ui de una tarea i es el tiempo disponible para comenzar la ejecucin
de una tarea, cuando las predecesoras empiezan en sus fechas ms tardas y las
sucesoras en sus fechas ms tempranas, si existe y si no es nulo:
ui= Max {0, min [jU+(i)] (rj-wij) - max [kU-(i)] (fk+wki)}
Camino crtico: los caminos de valor maximal que van de 0 a n+1, juegan un rol
central en este mtodo, ya que toda tarea que compone alguno de estos caminos tienen
un holgura total nula. Se dice que estas tareas son crticas ya que si se retardan
unidades de tiempo, el ordenamiento se retardar tambin unidades.

98

Introduccin a la Investigacin de Operaciones

Proposicin: se cumple que ui mi Mi


Demostracin:

Mi m i
Mi = fi - ri
[definicin de Mi]
= min [jU+(i)] {fj - wij} - ri [definicin de fi]
= min [jU+(i)] {fj - wij - ri } [propiedades de min]
= min [jU+(i)] {fj - (ri + wij)}
[aritmtica]
min [jU+(i)] {rj - (ri + wij)}
[fj >= rj]
= mi
[definicin de mi]
Queda probado que Mi mi
mi ui
mi = min [jU+(i)] {rj-(ri+wij)}
[definicin de mi]
= min [jU+(i)] {rj - wij)} - ri
[propiedades de min]
= min [jU+(i)] {rj - wij)} - max [kU-(i)] {rk + wki}
[definicin de ri]
max {0, min [jU+(i)] (rj-wij) - max [kU-(i)] (fk+wki)} [-rk >= -fk]
= ui
[definicin de ui]
Queda probado que mi ui

6.3.4 Optimizacin de la funcin de costos


Por razones tcnicas o econmicas la duracin de cada tarea puede estar limitada
entre dos cotas: Ii y Si (Ii di Si). El tiempo Si corresponde a la duracin normal de
la tarea i, y es la duracin correspondiente a un costo mnimo (inversin mnima en
recursos de forma cumplir con la tarea i). El tiempo Ii por el contrario corresponde a
la duracin de la operacin acelerada al mximo (invirtiendo todos los recursos
necesarios y disponibles) y por consiguiente su costo sera tambin mximo.
Sean Ci el costo total de la tarea i y di la duracin de la tarea i. Fijado un valor para di;
si se pretende que la tarea dure menos que dicho valor, en general, esto implica la
utilizacin de un nmero mayor de recursos y por consiguiente un costo mayor. Es
posible entonces, establecer una relacin funcional entre la duracin de la tarea i y el
costo asociado. Sea Ci = f(di) la curva de costos de la tarea i en funcin de la duracin
de la tarea i. Es comn suponer que el costo crece cuando di decrece hasta Ii, ms all
del cual ya no se puede efectuar el trabajo.

99

Introduccin a la Investigacin de Operaciones

Disminucin del costo total de un programa: No se trata aqu de buscar el ptimo


de un programa, sino solamente de mostrar cmo los mtodos de camino crtico
permiten disminuir el costo total actuando sobre las tareas no crticas.
El costo total del proyecto es: C = [iU]Ci. Para disminuir el costo total C,
manteniendo la misma duracin de ejecucin, ser preciso disminuir los mrgenes
libres de las operaciones no crticas, dentro de los lmites impuestos por las
restricciones. Disminuir el margen libre de una tarea equivale, segn la grfica
precedente, a disminuir los costos. Procediendo de esta forma puede suceder que se
creen nuevos caminos crticos.
Variacin lineal del costo en funcin de la duracin. Programa lineal
paramtrico: Se supone que, para cada tarea ti la curva de costos Ci = f(di) es de la
forma:

Ci = Ki - ni*ti , con Ii ti Si

El problema planteado se traduce al siguiente programa lineal:


Min
sujeto a:

[(i,j)U](Ki - ni*ti)
Ii di Si,
[(i,j)]di del grafo conjuntivo.

Donde representa los caminos que van de la raiz al final, y es un parmetro que
representa la duracin total del proyecto.

100

Introduccin a la Investigacin de Operaciones

7. PROCESOS ESTOCSTICOS
7.1 Introduccin
7.1.1 Experimentos, espacio muestral, evento.
Un experimento es un proceso (o un procedimiento) cuyo resultado se puede
observar, pero cuyo valor no podemos determinar anticipadamente con certeza.
Cada resultado posible del experimento se llama punto muestral y se denomina wi.
Un espacio muestral es el conjunto de todos los resultados del experimento que a
priori se conocen como posibles:
= {wi: wi es un resultado observable del experimento}.
Un espacio muestral define un modelo de experimento.
Un evento es un conjunto de puntos muestrales, pudiendo ser cualquier
subconjunto del espacio muestral, un punto, una coleccin de puntos o el espacio
muestral completo.
Un evento A consiste en el conjunto de aquellos puntos muestrales wj que representan
resultados del experimento en los cuales A ocurre.
Como describir la variacin esperada (cuando es numerable)?
1) Dado un espacio muestral discreto , se particiona en una familia de eventos
disjuntos (Ej) j0.
2) Se supone que a cada evento le corresponde un nmero llamado probabilidad del
evento Ej, denotada P(Ej), que es una medida de la posibilidad de ocurrencia del
evento Ej en el espacio muestral, P(Ej) 0, P(Ej) = 1, Ej.
La imposibilidad de ocurrencia de Ej se denota: P(Ej) = 0. En ese caso, si el espacio
muestral es finito, es posible eliminar Ej.
3) Se define un Algebra A sobre los eventos que conforman el espacio muestral.
As se obtiene la terna (, A, P) que define un modelo probabilstico de la porcin del
universo o sistema que se quiere estudiar.
Cuando no es numerable, es necesario definir una sigma-lgebra y una medida P
sobre los eventos de la misma.

7.1.2 Variables aleatorias


Para operar naturalmente con los eventos observados, se introduce el concepto de
variable aleatoria (v.a.).
Se llama variable aleatoria X a una funcin definida sobre un espacio muestral, es
decir una regla nica que asocia un nmero xj a cada punto j del espacio muestral.
Se nota (X = xj) al evento en el que X toma el valor xj (con notacin de conjuntos,
podramos dar el evento como {wj | X(wj) = xj}).

101

Introduccin a la Investigacin de Operaciones

El dominio de la funcin variable aleatoria son los eventos, por lo que a cada valor
posible de una variable aleatoria podemos asociar una medida de probabilidad,
definiendo as la distribucin de probabilidad de la variable.
Si X es una variable aleatoria discreta, y {xj, j=1,2,3,...} es el conjunto de los
valores que puede tomar , entonces
P(X=xj) = p(xj) 0, j=1,2,3,... y j p(xj)=1.
es la distribucin de probabilidades de la v.a. X.
Siempre que p(xj) satisfaga estas condiciones es lcito hablar de una v.a. que asume
los valores x1, x2,...xN con probabilidad p(x1), p(x2),.., sin hacer ms referencias al
espacio muestral original; se forma un nuevo espacio con los puntos muestrales x1,
x2,... xN.
Si Y es una v.a. continua (su recorrido es el conjunto de los Reales, R), la probabilidad
de que tome un valor fijo es en general nula, y existe una funcin fY(y) llamada
funcin de densidad en R, que verifica la propiedad siguiente:
B R,

P(Y B) =

f Y ( y )dy, y
B

f Y ( y )dy = 1

Toda afirmacin acerca de una v. a. X o Y se puede responder en trminos de su


distribucin de probabilidad o de su Funcin de distribucin, F(a) (tambin notada
como FX(a)).
p( x ) si la v.a. X es discreta
F (a ) = P( X a ) =

x a
a

f X ( x )dx

si la v.a. X es continua

Para describir las distribuciones de probabilidades se utilizan adems valores


tpicos, como ser mediana, trmino central, etc.
La Esperanza es el valor tpico ms importante de una v.a. por su estabilidad muestral.
x j p( x j ) si la v.a. X es discreta
E( X ) =

xX

xf X ( x )dx si la v.a. X es continua

Media, Valor Esperado y primer momento son sinnimos de Esperanza matemtica


de una distribucin. El segundo momento es E(X2), el tercer momento E(X3), etc.
Sea X una v.a. con segundo momento E(X2 ) y esperanza E(X), se define un nmero
llamado Varianza de la v.a. X, Var (X), como el segundo momento de X en torno a
su media:

102

Introduccin a la Investigacin de Operaciones

Var ( X ) = E ( X E ( X )) =
2

(x

x j

E ( X )) p (x j ) si X discreta
2

( x E ( x ))2 f ( x )dx

si X continua

Es fcil demostrar la siguiente frmula alternativa: Var(X)= E(X2) - E2(X )


Dispersin es usualmente sinnimo de varianza ya que es una medida burda de la
dispersin de la v.a. respecto de su media. Un valor elevado de la varianza indica que
X toma valores alejados de la media.
Se define como Desviacin Estndar a la raz cuadrada de la varianza
= Var ( X ).
El coeficiente de variacin, r, es otra medida de la variacin de una distribucin, que
tiene la ventaja de ser adimensional:
= Var ( X ) / E ( x ) .
Ejemplo de v.a. discreta:

Indicatriz de un evento

Sea A un evento cualquiera. Definimos la variable aleatoria "Indicatriz del evento A",
que notamos por IND(A), a una v.a. binaria, que toma valor 1 cuando el evento A se
produce, y valor 0 en otro caso. Por lo tanto:
P(IND(A)=1) = P(A)
P(IND(A)=(0) = 1-P(A)
Es fcil ver que:
E(A) = 1.P(A)+ 0.(1-P(A))=P(A)
y que
Var(IND(A)) = E(IND(A) 2) - E2(IND(A )= (12.P(A)+ 02.(1-P(A))) - P(A) 2
= P(A) -P(A) 2 = P(A)(1-P(A)).

Ejemplo de v.a. discreta:

Distribucin de Poisson

N es una v.a. de distribucin Poisson y parmetro >0 si:


k e
k 0, > 0
P (N = k ) = p N (k ) =
k!
Se puede demostrar que
1) P (N = k ) 0

k e

=1
k!
3)E( N ) = Var( N ) =
Con frecuencia se supone que el nmero de llegadas de clientes a un negocio,
durante un intervalo de tiempo, o la demanda de un producto, se comportan segn una
distribucin Poisson. es el parmetro de la distribucin, correspondiendo a la
intensidad de llegadas por unidad de tiempo.
2)

k =0

103

Introduccin a la Investigacin de Operaciones

Aclaracin: Modelando siempre es necesario realizar simplificaciones de la realidad,


ahora,
se debe simplificar lo suficiente para que el modelo sea tratable
matemticamente, pero no demasiado como para que el modelo ya no sea una
representacin del fenmeno real.

Ejemplo de v.a. continua:

Distribucin Exponencial

Decimos que una v.a. X continua es exponencial con parmetro , >0, cuando:
e x x 0
f X ( x) =
x<0
0
x

P( X x) =

f X (t )dt =

E( X ) =

1 e x x 0
0
x<0

Var(X) =

Se puede demostrar que si X es una v.a. esponencial, entonces


1
1
E( X ) =
Var(X) = 2

Generalmente se procura trabajar con v.a. que reflejen con la mayor simplicidad
posible las propiedades realmente esenciales de los resultados del experimento.
En muchos casos la observacin de un experimento aleatorio no viene expresada
por una sola cantidad observada, sino simultaneamente por una cierta cantidad de
variables aleatorias.

Definiciones
Se llama Distribucin Conjunta de dos v.a. X e Y discretas, definidas en un
mismo espacio muestral (discreto), a la funcin
P(X = xj, Y = yk) = PXY (xj, xk)

xj ,xk

que asigna probabilidades a todos los eventos simultneos que surgen de las
combinaciones de los pares de valores (xj, yk) que toman X e Y respectivamente.
(X=xj, Y=yk) es el evento definido por el par de sucesos que satisfacen
simultaneamente las condiciones X = xj, e Y = yk.
Se dice que 2 variables son estocsticamente independientes si para toda
combinacin de pares de valores (xj, yk)
P ( X = x j , Y = y k ) = P ( X = x j )P(Y = y k )
Estas nociones se extienden a un conjunto finito de v.a. X, Y, ..., Z definidas en un
mismo espacio muestral. Estas variables sern mutuamente independientes si se
verifica que su probabilidad conjunta es igual al producto de las probabilidades
individuales de cada una de ellas.

104

Introduccin a la Investigacin de Operaciones

7.1.3 Probabilidad Condicional


P( A B )
si P( B ) > 0
P( B)
Para v.a. (caso particular del anterior):
P( Y = y k , X = x k )
P( X = x k ) > 0
P( Y = y k | X = x j ) =
P( X = x k )
Se deduce, extendindolo a ms de dos variables:
P (Y = yk , X = x j , W = wn ) = P Y = yk | X = x j , W = wn P X = x j | W = wn P (W = wn ) .
Para eventos: P( A | B ) =

)(

Clculo de la Probabilidad de un evento E, condicionndolo a la ocurrencia de


eventos exhaustivos y mutuamente excluyentes (teorema de la probabilidad total):

Sea {Bi , i N } una particin de , es decir un conjunto de eventos Bi tales que


a) son dos a dos disjuntos: Bi B j = , i, j N
b) su unin es :

Bi =

P(E Bk ) , y si los eventos son tales que P(B k ) 0

Entonces P(E ) =
k

k ,

P(E B k )P(Bk ) (teorema de probabilidad total).

tenemos que P(E ) =


k

Si tenemos que Y es una variable aleatoria discreta, entonces los eventos Bk= (Y= yk)
son exhaustivos y mutuamente excluyentes, es decir conforman una particin de ,
por lo que E se puede expresar de la siguiente manera:
E = ( E , Y = y1 )
P( E ) =

( E , Y = y2 )

P( E , Y = y k ) =

k =1

... ( E , Y = y k )

.....

P( E | Y = y k ) P( Y = y k )

k =1

Existe una propiedad anloga en el caso continuo, pero es necesario que la varianza
de Y sea finita: si Var(Y)<, entonces

P (E ) =

P(E Y = y ) fY ( y )dy

Ejemplo 7.1.1:

Un cliente que entra a una tienda compra un sombrero con probabilidad p.


Si el nmero de clientes que ingresan por da sigue una distribucin Poisson de valor
esperado , Cul es la probabilidad de que no se venda ningn sombrero en un da?
Se define X como el nmero de sombreros vendidos y N como el nmero de clientes
que llegan a la tienda.
Condicionando en N

105

Introduccin a la Investigacin de Operaciones

P( X = 0) =

n =0

P( X = 0 | N = n )P( N = n ) =

n =0

(1 p ) n

e n
= e e (1 p ) = e p
n!

Esperanza Condicional
La esperanza condicional E(X|Y) es una nueva variable aleatoria definida en base a
dos variables X e Y, definida de la siguiente forma:

xP( X = x | Y = y ) IND(Y = y ) .

E( X | Y ) =
y

Tenemos que si Y toma el valor y, entonces entonces E(X|Y) tomar el


valor: E ( X | Y = y ) =
xP( X = x | Y = y ) =
xp X |Y ( x | y )
x

Si X es independiente de Y, la esperanza condicional ser una v.a. constante, de


valor igual a la esperanza incondicional, ya que para todo y,
E X |Y = y =
xP( X = x | Y = y ) =
xP( X = x) = E ( X )

Ejemplo 7.1.2:

Sea p(x,y):

p(1,1) = 0.5,

p(1,2) = 0.1, p(2,1)=0.1,


p(2,2)=0.3.
P( x = x, Y = 1)
= 1 p X |Y (1 | 1) + 2 p X |Y (2 | 1) =
E[ X | Y = 1] =
xP( X | Y = 1) =
x
P(Y = 1)
x
x
p (1,1)
p(2,1) 5 2 7
=
+2
= + =
pY (1)
pY (1) 6 6 6

7.1.4 Propiedades de v.a. Exponenciales


Propiedad 1
La propiedad fundamental de la distribucin exponencial es que no tiene memoria.

Se dice que una v.a. X no tiene memoria si:


P ( X > s + t| X > t ) = P ( X > s ) s , t 0
lo que es equivalente a
P( X > s + t , X > t )
= P( X > s)
P( X > t )
y entonces
P( X > s + t ) = P( X > s) P( X > t ) .
Esta ecuacin se satisface cuando X es exponencial ya que e ( s+ t ) = e se t .
Tambin se demuestra que la distribucin exponencial es la nica distribucin
continua que verifica esa propiedad (as como la distribucin geomtrica es la nica
distribucin discreta que verifica esta propiedad).

106

Introduccin a la Investigacin de Operaciones

Propiedad 2
Sea T1 y T2 variables aleatorias exponenciales independientes de tasa 1 y 2
respectivamente. Entonces T=min(T1,T2) es una v.a. exponencial de parmetro
(1+2).
Dem:
1 FT (t ) = P(T1 > t , T2 > t ) = (indep. T1 y T2 ) = P(T1 > t ) P (T2 > t ) = e 1t e 2t = e (1 + 2 )t

por lo tanto T tiene la distribucin de una v.a. exponencial de parmetro (1+2).


Ejemplo 7.1.3
Considere el negocio de venta de sombreros.
Si T1 representa el tiempo entre la llegada de un cliente y el siguiente, y T2 el tiempo
de atencin al cliente, suponemos que ambos tiempos son exponenciales (no tienen
memoria). Se quiere estudiar el comportamiento conjunto de ambas distribuciones.
Observemos el tiempo T transcurrido hasta que uno de los eventos T1 y T2 ocurra.
Interesa entonces:
T = min(T1, T2)

Consideremos T t
P(T t ) = 1 P(T > t ) = 1 P(min(T1 , T2 ) > t ) = 1 P(T1 > t , T2 > t )

= 1 P(T1 > t ) P(T2 > t ) = 1 e ( + )t


Ya que T1 y T2 son independientes y s min(T1, T2) > t ( T1 >t, T2 >t)
Si dos v.a. exponenciales independientes ocurren simultneamente, en conjunto se
comportan segn una distribucin exponencial, con tasa igual a la suma de las tasas
individuales de cada una de ellas.
Propiedad 3
Clculo de la probabilidad de que una v.a. exponencial ocurra antes que otra.

Sean X1 y X2 v.a. exponenciales independientes, con respectivas esperanzas


1/1 y 1/2 .
Se desea calcular P(X1 > X2) [similar para P(X2>X1)]. Condicionando en X2

P( X 1 < X 2 ) = P X 1 < X 2 | X 2 = x f X 2 ( x )dx = P( X 1 < x ) 2 e 2 x dx


0

= 1 - e -1 x 2 e 2 x dx = 1 2 e ( 1 + 2 ) dx
0

= 1-

2
1 + 2

(1 + 2 )e ( + ) dx = 1
1

2
1 + 2

1
1 + 2

Ejemplo 7.1.4:
Suponga un sistema de colas (negocio de venta de sombreros) con un solo empleado .
El intervalo de tiempo que transcurre entre la llegada de un cliente y el siguiente se
describe con una v.a. exponencial X1, de esperanza 1/2 hora. El tiempo que le

107

Introduccin a la Investigacin de Operaciones

lleva al empleado atender a cada cliente se comporta segn otra v.a. exponencial,
X2, independiente de X1, de valor esperado 15 minutos.
Cul es la probabilidad de que un nuevo cliente llegue antes de que el servidor
termine de atender al cliente que est atendiendo? y viceversa?
X1 = tiempo entre llegadas sucesivas
X2 = tiempo de atencin al cliente
E(X1) = 1/1 = 0,5 horas; 1 = 2
E(X2) = 1/2 = 0,25 horas; 2 = 4
1
1
P( X 1 < X 2 ) =
=
1 + 2 3

7.2 Procesos Estocsticos


7.2.1 Definiciones
En la seccin anterior hemos visto como realizar modelos que describan situaciones
correspondientes a la observacin del resultado de un experimento puntual.
Ahora estudiaremos las herramientas a utilizar cuando el experimento que queremos
modelar no es puntual, sino que evoluciona en el tiempo.
Para estos casos se introduce el concepto de proceso estocstico, definindolo como
una familia de v.a. que describen la evolucin, a travs del tiempo, de un proceso
fsico o experimento.
Definimos un proceso estocstico X=(Xt, tT) como una familia de variables
aleatorias, cuyo ndice tT es llamado el conjunto de los ndices (o parmetro de
tiempo) del proceso X.
Para cada tT, Xt es una variable aleatoria sobre el espacio de estado del proceso X.
Definimos el espacio de estado de un proceso estocstico X como el conjunto
mnimo E de todos los valores posibles que las v.a. Xt puedan asumir; cada uno de
estos valores es un estado posible del sistema.
Notamos (Xt = e) el evento que indica que en el instante t el proceso se encuentra en
el estado e.
Si E es un conjunto finito o infinito numerable de estados se dice que el proceso X es
de espacio de estado discreto.
Si en cambio las v.a. Xt toman sus valores en un conjunto E continuo (por ejemplo,
los reales positivos) se dice que el proceso es de espacio de estado continuo.
Cuando T es un conjunto numerable el proceso (Xt , tT) es de tiempo discreto
(tambin llamado sucesin estocstica o proceso en etapas). El caso ms comn es
cuando T=N (los naturales) o T=N* (los enteros positivos).
Cuando T es un intervalo real, finito o no, el proceso es de tiempo continuo.
Ejemplo 7.2.1
Consideremos un sistema de atencin al pblico.
Podemos definir el proceso estocstico X tomando Xt = nmero de clientes esperando
en el instante t. En este caso tenemos que E=N y T=R+, por lo que X es un proceso de
espacio de estado discreto y tiempo continuo.

108

Introduccin a la Investigacin de Operaciones

Si en cambio consideramos el proceso estocstico Y tal que Yn = tiempo de espera del


n-simo cliente, tendremos que E=R+ y T=N, por lo que Y es de espacio de estado
continuo y tiempo discreto.

7.2.2 Procesos estocsticos de tiempo y espacio de estado discretos


Estudiaremos a continuacin los procesos estocsticos de tiempo y espacio de estado
discretos X = {Xn, nN}, de parmetro de tiempo que vara sobre los nmeros
naturales. En este caso tenemos que e pertenece al mnimo espacio de estado E del
proceso X, e E N > 0 tal que P(XN = e) > 0.
Para estudiar estos procesos supondremos conocida la probabilidad condicional de
que el proceso est en el estado en en la etapa n, bajo la hiptesis de que sabemos
que el proceso estuvo en el estado e1 en la etapa 1, en el estado e2 en la etapa 2, y as
hasta la etapa n-1 :
P( X n = en | X 0 = e0 , X 1 = e1 , X 2 = e2 ,..., X n 1 = en 1 )
Esto nos da las leyes de probabilidad que determinan el comportamiento del proceso
en cada etapa.
Definimos la evolucin del proceso como la sucesin de estados por los que va
pasando el mismo. Cada evolucin posible del proceso tiene una probabilidad de
ocurrencia dada por la distribucin conjunta de las probabilidades de ocurrencia en
cada etapa, P( X n = en , X n 1 = en 1 ,..., X 2 = e2 , X 1 = e1 , X 0 = e0 ) .
Para calcular esta probabilidad utilizamos el producto de las probabilidades
condicionales dadas para cada etapa:
P( X n = en , X n 1 = en 1 ,..., X 2 = e2 , X 1 = e1 , X 0 = e0 )

= P( X n = en | X n 1 = en 1 ,..., X 2 = e2 , X 1 = e1 , X 0 = e0 ) P( X n 1 = en 1 ,..., X 1 = e1 , X 0 = e0 )

= P( X n = en | X n 1 = en 1 ,..., X 2 = e2 , X 1 = e1 , X 0 = e0 )... P( X 1 = e1 | X 0 = e0 ) P( X 0 = e0 )
n

= P( X 0 = e0 ) P( X i = ei | X i 1 = ei 1 ,..., X 0 = e0 )
i=2

Cada evolucin corresponde a un punto muestral de nuestro espacio de probabilidades


de base, por lo que la probabilidad de la unin de todas las evoluciones posibles debe
ser 1.
Ejemplo 7.2.2

Consideremos el siguiente experimento. Sean A y B dos monedas distintas, con A


una moneda normal y B una moneda con una cara de cada lado. Se elige al azar una
moneda entre las dos posibles. A continuacin se lanza la moneda elegida y se
observa el resultado. Si es un nmero lanzamos un dado y observamos el resultado.
Si es cara, la moneda se lanza nuevamente.
Este es un experimento que evoluciona en el tiempo, y donde adems cada resultado
depende de los resultados obtenidos anteriormente.

109

Introduccin a la Investigacin de Operaciones

Los estados posibles son:


A = la moneda con cara y nmero fue elegida,
B = la moneda con dos caras fue elegida,
C = el resultado del lanzamiento de una moneda fue una cara,
N = el resultado del lanzamiento de una moneda fue un nmero,
1 = el resultado del lanzamiento del dado fue 1,
...
6 = el resultado del lanzamiento del dado fue 6.
Entonces el espacio de estado es E = {A, B, C, N, 1, 2, 3, 4, 5, 6}, discreto.
Adems el proceso consta de tres etapas, por lo tanto T tambin es discreto.
Esas etapas son:
1 seleccin de una moneda,
2 una moneda es lanzada,
3 se lanza una moneda o un dado.
Sabemos que las probabilidades de que se elija A B es de 1/2 para cada una:
P( X 1 = A) = P( X 1 = B ) = 0,5
Tenemos tambin:
P( X 2 = C | X 1 = A) = P( X 2 = N | X 1 = A) = 0,5
y
P( X 2 = C | X 1 = B ) = 1
Por ltimo:
P( X 3 = C | X 2 = C , X 1 = B ) = 1

P( X 3 = C | X 2 = C , X 1 = A) = 1/ 2
P( X 3 = N | X 2 = C , X 1 = A) = 1 / 2

P( X 3 = i | X 2 = N , X 1 = A) = 1 6 , i = 1,2,...6
Entonces podemos calcular la distribucin conjunta de probabilidades para cada
evolucin del proceso. Dado un proceso estocstico de tiempo y espacio de estado
discretos, es posible representar mediante un rbol de profundidad k todas las
evoluciones posibles de k etapas.

1/2
A

X1

1/2

1/2

X2
1/2

X3

1/2

1
N

1/2
N

1/6
1

1/6

1
C

La raz del rbol corresponde al estado inicial del proceso estocstico. A cada
resultado posible de la n-sima etapa del proceso estocstico le corresponde un nodo
110

Introduccin a la Investigacin de Operaciones

del nivel n+1 del rbol. Los arcos estn ponderados por las probabilidades
condicionales de transicin entre estados del proceso. La utilidad de esta
representacin grfica consiste en:
identificar todas las posibles evoluciones del proceso, como cadenas del rbol,
calcular la probabilidad de ocurrencia de cada posible evolucin del proceso,
calcular las distribuciones de probabilidad de los caminos de las etapas
intermedias.
Pero cuando el espacio de estado contiene muchos estados, o el nmero de etapas es
grande, no es posible utilizar este rbol.

7.3 Cadenas de Markov


7.3.1 Introduccin
Entre las diferentes clases de procesos estocsticos se destacan los procesos
markovianos, en los cuales el comportamiento y la evolucin futura del proceso
no dependen ms que del estado actual del proceso, y no de su evolucin pasada.
Las cadenas de Markov (C.M.) son procesos markovianos de espacio de estado
discreto. Al igual que para cualquir proceso, se distingue entre cadenas de Markov de
tiempo discreto y aquellas de tiempo continuo.
El resto de esta seccin se ocupa de las cadenas de Markov finitas de tiempo
discreto, es decir aquellas cuyo espacio de estado E es finito, y que evolucionan en
etapas o pasos (T es discreto).
Definimos formalmente una cadena de Markov como una secuencia de v.a. discretas
{Xn, n N} que poseen la propiedad siguiente:

P( X n +1 = en +1 | X 0 = e0 , X 1 = e1 ,..., X n = en ) = P( X n +1 = en +1 | X n = en ), n N , e0 , e1 ,...en , en +1 E

(siempre que estas probabilidades estn bien definidas).


Esta propiedad se interpreta como la afirmacin de que la probabilidad (condicional)
de que el proceso alcance el estado futuro xn+1 dados los estados pasados x0, x1,...xn-1
y el estado actual xn es independiente de los estados pasados y depende solamente
del estado presente xn (el pasado no influye en el futuro ms que a travs del
presente).

7.3.2 Cadenas de Markov homogneas


Cuando las probabilidades condicionales de pasaje de un estado al otro son tambin
independientes de la etapa n decimos que la cadena correspondiente es homognea
en el tiempo (las v.a. del proceso conservan su distribucin en una traslacin en el
tiempo) . Entonces las probabilidades condicionales se reducen a la expresin:
P( X n +1 = j | X n = i ) = pij , i, j E , n 0
siempre que stas estn definidas.
Los nmeros pij, i,jE, se llaman probabilidades de transicin y definen la
probabilidad de que el proceso estando actualmente en el estado i pase al estado j
en su prxima transicin, independientemente de la etapa n en que se encuentre el
proceso. De aqu en ms solo consideraremos cadenas homogneas, salvo indicacin
contraria.

111

Introduccin a la Investigacin de Operaciones

A cada estado iE est asociado un conjunto de probabilidades de transicin pij0


que describen el comportamiento de la cadena en su prxima etapa, indicando cuales
son los estados j que pueden ser alcanzados desde el estado i y con qu
probabilidad.
El conjunto de los pij, i,j E forman la matriz de transicin de la cadena, que
notaremos P. Los elementos de P son las pij ordenadas a partir de una numeracin
fija de los elementos de E (eventualmente puede ser una matriz infinita):
0
j
r
0 p00

p0 j

p0 r

P = i pi 0

pij

pir

r pr 0

prj

prr

0 i, j r = E

Cada fila i representa un estado presente i y cada columna j representa un posible


estado futuro. La entrada i,j es la probabilidad de que la prxima transicin tenga al
estado j por destino.
La matriz P describe entonces para cada estado i E cuales son los estados j E que
la cadena puede alcanzar en su prxima etapa y con que probabilidad, por lo que
cada fila i es la distribucin de probabilidad (condicional) de la v.a. Xn+1 dado que
Xn=i. Al ser cada fila una distribucin de probabilidad, se verifican las siguientes
propiedades:
pij 0, i, j E
j E

pij = 1, i E

Una matriz cualquiera que verifica estas ecuaciones recibe el nombre de matriz
estocstica. Cuando adems la suma de las probabilidades de cada columna es 1 se
dice que P es bi-estocstica.
Ejemplo 7.3.1
Consideremos un sistema de comunicaciones que transmite los dgitos 0 y 1.
Cada dgito transmitido debe pasar por varios nodos (o centrales). Existe una
probabilidad p, 0 < p <1, de que el dgito enviado desde un nodo contine
incambiado cuando llega al nodo siguiente y sea reenviado, pero con probabilidad 1-p
surgen perturbaciones en la lnea que modifican el dgito.
Denominemos Xn al dgito enviado desde el nodo n, entonces Xn+1 es el dgito
recibido en el nodo siguiente y retrasmitido. Para cualquier n, Xn solamente puede
tomar los valores 0 o 1. Entonces el espacio de estado es E = {0, 1}

Esta cadena es homognea ya que las probabilidades de transicin no dependen de la


etapa en la que nos encontramos; para cualquier par de etapas n y n+1, la
probabilidad de que el proceso contine en el mismo estado cumple:
P(dgito transmitido por la central n = dgito recibido por la central n+1) = p, n

112

Introduccin a la Investigacin de Operaciones

Definimos sus probabilidades de transicin:


P(Xn+1=0Xn=0) = p00 = p
P(Xn+1=1Xn=0) = p01 = 1p
P(Xn+1=0Xn=1) = p10 = 1p
P(Xn+1=1Xn=1) = p11 = p
Con estos datos se construye la matriz P de transicin, ordenada como el espacio de
estado E:
P=
0
1
0
p 1p
1 1p p
Vermos que se verifica:
pij =
pij = 1 , i, j {0,1}
j

por lo que la matriz P es no slo estocstica sino tambien biestocstica.


Grafo asociado a una C. M. finita homognea

Sea X={Xn,n0} una cadena de Markov finita de espacio de estado E={1,2,...r}, |E|=r,
y matriz de transicin P. Podemos asociar un grafo orientado ponderado G=(E,U,W) a
la cadena X de la forma siguiente:
E (espacio de estado de la cadena) es el conjunto de nodos
U = {uij=(i,j)|i,jE, pij>0} es el conjunto de arcos orientados
W es la funcin de ponderacin que asigna uij + (i) la probabilidad de
transicin pij > 0 correspondiente, W(uij) = pij > 0.
Como la suma de todas las probabilidades de transicin pij para cada fila i debe ser
igual a 1, entonces el grafo asociado a una C. M. finita homognea no puede ser
cualquiera, sino que la suma de las probabilidades asignadas a los arcos incidentes
exteriormente a cada nodo debe ser igual a 1.
Aunque el grafo retiene nada ms que las probabilidades de transicin entre dos
estado, su estudio es muchas veces suficiente para conocer cualitativamente la
evolucin del proceso.
Ecuaciones de ChapmanKolmogorov

Hasta aqu nos hemos ocupado solamente de las transiciones en una sola etapa de una
cadena. Veremos a continuacin como estudiar de forma analtica la evolucin y las
probabilidades de transicin en n etapas de una cadena de Markov.
Definimos la probabilidad de transicin en n pasos,
pij( n ) = P( X n + m = j | X m = i ) , n, m 0, i, j E
como la probabilidad de que el proceso, partiendo del estado i, llegue al estado j
luego de n transiciones adicionales. Como consideramos cadenas homogneas estas
probabilidades no dependen de cual es la etapa inicial m.

113

Introduccin a la Investigacin de Operaciones

Un caso particular de esta definicin se da cuando n=1:


pij(1) = P( X m+1 = j | X m = i ) = pij , m 0, i , j E
que es la probabilidad de transicin en un paso ya estudiada, cuyos valores
conforman la matriz de transicin P.
Consideremos una evolucin (X0=e0,X1=e1,X2=e2,X3=e3,...Xn=en) de la cadena X, que
en el grafo asociado corresponde a un camino (e0,e1,e2,e3,...en). Recordemos que la
probabilidad de que el proceso siga esta evolucin es:
P( X n = e n ,

X 1 = e1 , X 0 = e 0 )

= P( X n = e n | X n 1 = e n 1 ,

por def. prob.


condiciona l

X 1 = e1 , X 0 = e 0 ) P( X n 1 = e n 1 |

P( X 1 = e1 | X 0 = e 0 ) P( X 0 = e 0 )

X 1 = e1 , X 0 = e 0 )

por C.M.
homogenea

p e n 1 e n p e n 2 e n 1

p e0 e1 p e0

donde p e0 es la probabilidad de que el proceso en su etapa inicial comience por el


estado e0. Entonces la probabilidad de una evolucin del proceso es equivalente
a la probabilidad P(c ) de un camino c en el grafo asociado (si conocemos el estado
de partida e0). Esta probabilidad se calcula como el producto de las pij, asignadas a
los arcos involucrados en el camino.
Si llamamos Cn (i, j ) al conjunto de todos los caminos de n arcos que unen ei con ej
entonces:
P(c ) = probabilidad del camino c
pij( n ) =

P(c )

cC n (i , j )

Las ecuaciones de ChapmanKolmogorov nos dan una relacin recursiva entre las
probabilidades de transicin en varios pasos. La primer formulacin de estas
ecuaciones es la siguiente:
pij( n + m ) =
pik( n ) pkj(m ) , n, m 0, i, j E
k E

Como justificacin intuitiva de esta ecuacin, vemos que pik.pkj representa la


probabilidad de que partiendo del estado i el proceso llegar al estado j luego de
n+m transiciones, siguiendo un camino que lo hace pasar por el estado k en la
nsima transicin.
Por lo tanto, tomando la sumatoria sobre todos los estados intermedios kE,
obtenemos la probabilidad de que el proceso alcance el estado j luego de n+m
transiciones (se suman ya que cada camino es una evolucin del proceso y las
evoluciones del proceso son sucesos disjuntos).

114

Introduccin a la Investigacin de Operaciones

E
Demostraremos a continuacin las ecuaciones de ChapmanKolmogorov:
P( X n + m = j, X o = i ) total
=
= j | X o = i) =
P( X o = i )

teo . prob.

pij(n +m ) = P( X n +m
def

def

P( X n +m = j, X n = k , X o = i ) condicional
=
=
P( X o = i )
kE
def . prob .

P( X n +m = j | X n = k , X o = i )P( X n = k , X o = i ) Markov
=
=
P( X o = i )
kE

prop . de

P( X n +m = j | X n = k )P( X n = k , X o = i )
=
P( X o = i )
kE

simplif .

por def .

kE

P( X n + m = j | X n = k )P( X n = k | X o = i ) =

kE

pkj(m ) pik(n )

QED.

En el caso particular m=1, las ecuaciones de ChapmanKolmogorov se reducen a la


expresin siguiente:
pij(n +1) =
pik(n ) pkj
k E

Esta expresin sugiere el uso de matrices para el calculo de las probabilidades pij(n ) .
Recordemos que si A es una matriz nxm de elemento genrico aij y B es una matriz
mxq de elemento genrico bij, entonces AxB se define como la matriz nxq cuyo
m

elemento genrico (i,j) est dado por

aik bkj .
k =1

Si A y B son estocsticas, AxB tambin es estocstica.


Llamemos P ( n ) a la matriz estocstica de la nsima transicin, es decir cuyos
elementos son las probabilidades pij(n ) que queremos obtener. Entonces las
ecuaciones de ChapmanKolmogorov se pueden reescribir como
P (n + m ) = P ( n ) P (m ) en el caso general,

P (n +1) = P (n ) P

cuando m = 1.

Una propiedad importante que se puede demostrar a partir de esta formulacin es que
la matriz de transicin en n pasos es igual a la n-sima potencia de la matriz de
transicin en un paso, P:
n
P (n ) = (P )
115

Introduccin a la Investigacin de Operaciones

Para demostrar esta afirmacin utilizaremos induccin completa:


Paso base: observamos que P (1) = P , por definicin.
Para n=2 , P (2 ) = P (1+1) = P (1)P (1) = PP = P 2
( n 1)
= P n 1
Paso inductivo: suponemos que para n-1 la frmula es cierta, P
Entonces

(n )

=P

( n 1+1)

ec. C K

( n 1) (1)

P =P

( n 1)

hip . de
induccin

P n 1P = P n

QED

Clasificacin de estados en una C. M. finita homognea

Para clasificar los estados de una C.M. finita vamos a definir la relacin de alcance
entre los mismos.
Decimos que el estado j es alcanzable desde i si y slo si es posible que el proceso
alguna vez alcance o se encuentre en el estado j, habiendo partido de i. Esto es
equivalente a pedir pij( n ) > 0 para algn n0, ya que
si n, pij(n ) = 0, entonces P( X pasa por j | X 0 = i ) = P

{X n

= j | X 0 = i}

P( X n = j | X 0 = i ) = 0

n =1

n =1

si N | pij( N ) > 0, entonces P( X pasa por j | X 0 = i ) = P

{X n

= j | X 0 = i} P( X N = j | X 0 = i ) > 0

n =1

Decimos que dos estados i y j se comunican (notacin ij) cuando son alcanzables
el uno desde el otro (o de forma equivalente cuando existen n,m0 tales que pij( n ) > 0 y

p (jim ) > 0 ).
Se define as la relacin de comunicacin que satisface las siguientes propiedades:
1) Reflexiva , ii iE ya que por definicin:
pii(0 ) = P( X 0 = i | X 0 = i ) = 1 > 0
2) Simtrica, si ij ji, i,jE
se verifica por definicin de la relacin comunicacin.
3) Transitiva, si ij y jk ik, i,j,kE
por hiptesis ij y jk, entonces por definicin de la relacin de
comunicacin
(n )
n, m > 0 | p ij > 0, p (jim ) > 0

r , t > 0 | p (jkr ) > 0, p kj(t ) > 0


Veamos primero que k es alcanzable desde i. Aplicando las
ChapmanKolmogorov,
pik(n + r ) =

ecuacines de

por H.

l E

pil( n ) plk( r ) pij(n ) p (jkr ) > 0

Entonces k es alcanzable desde i. Con el mismo procedimiento vemos que i es


alcanzable desde k, entonces por definicin i y k se comunican.
Por lo tanto la relacin de comunicacin es una relacin de equivalencia en el
conjunto de estados del proceso, y por ende particiona al espacio de estado en clases
116

Introduccin a la Investigacin de Operaciones

disjuntas de equivalencia. Si consideramos el grafo asociado a la cadena, podemos


ver que la relacin de comunicacin lo divide en sus componentes fuertemente
conexas.
En efecto, la relacin de comunicacin implica la existencia de caminos entre ambos
nodos del grafo, es decir que si i y k se comunican entonces:
n,m| c1Cn(i,j) y c2Cm(j,i). Por lo tanto los dos estados i y k pertenecen a la
misma componente fuertemente conexa del grafo asociado a la cadena.
Cuando una C.M. finita y homognea posee una sola clase, es decir si todos sus
estados se comunican entre si, ij i,jE, se dice que la cadena es irreductible.
Ejemplo 7.3.3
Consideremos la siguiente cadena de Markov de espacio de estado E={0,1,2} con la
siguiente matriz de transicin:
1
1
0
2
2

P=

1
1

4
3

1
2

4
3

Comprobamos que todos sus estados se comunican, por lo tanto esta cadena es
irreductible (tiene una sola clase en el espacio de estado).
Si observamos el grafo asociado, vemos posee una sola componente fuertemente
conexa, por lo tanto es irreductible (tambin podemos llegar a esta conclusin a partir
del hecho que la matriz es tridiagonal, por lo que no se la puede triangularizar por
bloques).
1/4
1/2

1/3

1/2

1
1/2

2/3

1/2

Ejemplo 7.3.4
Sea la cadena de Markov de espacio de estado E= {0,1,2,3} y matriz de transicin P,
1
1
0 0
2
2
1
1
0 0
2
2
P=
1

0 0 0 1
Las clases de esta cadena son: {0,1}, {2}, {3}.
Nota: si bien los estado 0,1 y 3 son alcanzables desde el estado 2, la accin inversa
no es posible. En particular, como p33 = 1, desde el estado 3 no es posible acceder a
ningn otro estado, por lo que decimos que 3 es un estado absorbente.
El subgrafo asociado tiene 3 componentes fuertemente conexas.

117

Introduccin a la Investigacin de Operaciones

Estados recurrentes y transitorios


Un estado i es recurrente si partiendo de l existe la seguridad de que el proceso en
algn momento retorne a l. Un estado i es transitorio cuando partiendo de l existe
una probabilidad no nula de abandonarlo definitivamente (el proceso no retornar
jams a ese estado).
Definimos i la probabilidad de que el proceso, partiendo del estado i, retorne al
mismo: i = P ( X n = i )(| X o = i ) .
n

Entonces otra forma de expresar las definiciones es decir que el estado i es

recurrente si i = 1,

transitorio si i < 1.
Defimimos Ri el nmero esperado de retornos al estado i (contando el pasaje inicial).
Definimos la variable aleatoria indicatriz del pasaje por el estado i en la nsima
1 , si {X n = i}
etapa, An =
0 , si {X n i}

Entonces
n =0

y Ri = E

n=0

An = nro. de etapas en las que el proceso est en i ,


An | X 0 = i

props. de la
esperanza

n =0

E ( An | X 0 = i ) =

n=0

P( X n = i | X 0 = i ) =

n =0

pii( n ) .

Proposicin

El estado i es recurrente si
n =0

El estado i es transitorio si
n =1

pii(n ) = (diverge)
pii(n ) < (converge)

Demostracin:
Supongamos que el proceso comienza su evolucin en el estado i, X0=i. Si i es
recurrente, con probabilidad 1 el proceso eventualmente alcanzar el estado i por
segunda vez. Repitiendo el razonamiento, vemos que el proceso pasar por el estado i
una infinidad de veces, con probabilidad 1.
Si en cambio i es transitorio, cada vez que el estado i es alcanzado existe una
probabilidad de no volver jams igual a 1-i, por lo que tenemos que la probabilidad
de efectuar exactamente n pasajes por el estado i (contando como uno la estada
inicial) se puede expresar como:
P(X pase exactamente n veces al estado i | X 0 = i ) = in 1 (1 i ) ,
probabilidad en la que reconocemos una distribucin geomtrica de esperanza finita
1/(1i); entonces, el nmero esperado de retornos al estado i es Ri = 1 / (1i) , que
es finito.

118

Introduccin a la Investigacin de Operaciones

Por lo tanto, si logramos calcular la esperanza del nmero de retornos del proceso al
estado i, podemos saber si dicho estado es transitorio (esperanza finita) o recurrente
(nmero infinito de regresos).

Propiedad
En una C.M. finita homognea existe por lo menos un estado recurrente (no pueden
ser todos transitorios).
Para justificar esta propiedad por el absurdo, supongamos que todos los estados
{0,1,2,....,n} de una C.M.F.H. son transitorios. Tomemos una trayectoria cualquiera
de la cadena. Al ser el estado 0 transitorio, existir una etapa N0 luego de la cual el
estado 0 ser abandonado para siempre. Al ser el estado 1 transitorio, existir tambin
una etapa N1 luego de la cual el estado 1 tampoco ser visitado. Y as sucesivamente
con todos los n estados. Si tomamos ahora N = mx {N0, N1,....Nn}, N es un nmero
natural por ser el mximo de un nmero finito de naturales. Consideremos las etapas
siguientes a la N, por ejemplo la etapa N+1: por definicin del espacio de estado,
XN+1= i E={0,1,2,....,n}; pero por ser NNk,kE={0,1,2,....,n}, entonces XN+1 k,
kE={0,1,2,....,n}, es decir XN+1E={0,1,2,....,n}, y hemos llegado a un absurdo.
Por lo tanto no todos los estados de una C.M.F.H. son transitorios, lo que implica que
existe al menos un estado recurrente.
Corolario 1
La recurrencia es una propiedad de clase: si un estado i es recurrente, e ij,
entonces j es recurrente.
Demostracin

i j

por def.
comunicaci n

k , m 0, pij( k ) > 0 y p (jim ) > 0

por prop.
anterior

i recurrente
n =1

pii( n ) =

Aplicando las ecuaciones de ChapmanKolmogorov dos veces, tenemos


n 0, p (jjm + n + k ) =
p (jlm ) plj(n + k ) =
p (jlm ) plr(n ) prj(k ) p (jim ) pii(n ) pij(k )
l E

l E r E

donde el miembro de la izquierda es la probabilidad de ir de j a j en (m+n+k) pasos


(incluyendo todos los caminos) y el de la derecha es la probabilidad de ir de j a j va
aquellos caminos que pasan por i.
Sumando en n tenemos

n =1

pij( m+ n+ k )

p (jim ) pij( k )

>0

n =1

pii( n ) =

ya que i es recurrente por H

Entonces j es tambin recurrente.

Corolario 2
El corolario anterior implica que la transitoriedad tambin es una propiedad de
clase: si i transitorio, ij, entonces j es transitorio.
Demostracin:
Si j fuese recurrente, como por hiptesis ji, aplicando el corolario anterior
tendramos i recurrente, lo que es absurdo. Por lo tanto j es transitorio.
119

Introduccin a la Investigacin de Operaciones

Corolario 3
El hecho de que la recurrencia es una propiedad de clase y adems que no todos los
estados de una C.M.F pueden ser transitorios, nos permite afirmar que todos los
estados de una C.M. finita irreductible son recurrentes.
Demostracin:
Por definicin, una cadena de Markov irreductible posee una sola clase de estados.
Por lo tanto, i j , i , j E
Aplicando la propiedad anterior, como la cadena es finita, existe al menos un estado
iE recurrente. Por el corolario 1, todos los estados que comunican con i son tambin
recurrentes, por lo tanto jE, j es recurrente.
Ejemplo 7.3.5
Sea la C.M. cuya matriz de transicin es:
0 0 12 12
1 0 0
0
P=
0 1 0
0
0 1 0
0
Comprobamos que todos los estados se comunican, por lo tanto pertenecen a
la misma clase, como adems esta cadena es finita podemos entonces afirmar que
todos sus estados son recurrentes.

Ejemplo 7.3.6
Consideremos la C.M. con matriz de transicin
12 12 0
0
0
12 12 0
0
0
P= 0
0 12 12 0
0
0 12 12 0
14 14 0
0 12
Esta matriz est triangularizada por bloques. Podemos diferenciar 3 clases de
equivalencia en el espacio de estado: {0,1}, {2,3} y {4}.
Las dos primeras clases son recurrentes. En cambio, la clase {4} es transitoria.
Verificando en el grafo asociado:
E0

1/2

1/4
1/2

E1
1/2

1/2

1/4

1/2

4
1/2

E3
1/2
1/2

E2

120

Introduccin a la Investigacin de Operaciones

Definimos fii(n) como la probabilidad de que el primer retorno al estado i se realice


en exactamente n etapas, dado que el estado inicial de la cadena es i:
f ii (n ) = P( X n = i, X k i, k = 1, , n 1 | X 0 = i )
El clculo de las probabilidades de primer pasaje en n etapas, fij(n), se pueden realizar
a travs de las siguientes frmulas de recurrencia
fij(1)=pij
fij(2)=pij(2)-fij(1)pjj
...
fij(n)=pij(n)-fij(1)pjj(n-1)-fij(2)pjj(n-2)...-fij(n-1)pjj
Para un estado i recurrente, definimos mii como la esperanza del tiempo del primer
retorno al estado i:
mii =

n =1

nf ii (n )

Los estados recurrentes se pueden diferenciar en:


1) recurrentes positivos
2) recurrente nulos.
Un estado i es recurrente positivo, si partiendo de i, el tiempo esperado hasta que el
proceso retorne al estado i por vez primera es finito, es decir si mii<. Es posible
demostrar que todos los estados recurrentes de una cadena de Markov finita son
recurrentes positivos.
Un estado es recurrente nulo si mii=. En este curso no trataremos este tipo de
estados ya que solo aparecen en cadenas de Markov de espacio de estado infinito.

Periodicidad
Se dice que el estado i es peridico si d (i ) = MCD n | p ii(n ) > 0 > 1 , y es aperidico
si d (i ) = 1 .
Si un estado i es peridico de perodo d(i), el proceso puede retornar a dicho estado
solamente en las etapas multiplos de d(i).

Propiedad (dem. trivial)


Si el estado i tiene un lazo (es decir, si pii>0) entonces su periodicidad ser 1.
Propiedad (sin demostracin)
Se demuestra tambin que la periodicidad es una propiedad de clase: si i tiene perodo
d(i), e ij, entonces j tendr tambin perodo d(i).
Propiedad (sin demostracin; ver p.ejemplo Chretienne-Faure, pag. 27)
Sea i un estado de una componente conexa C cualquiera. Entonces se puede
demostrar que para calcular la periodicidad de i, es suficiente con examinar todos los
ciclos de la componente conexa:
d (i ) = MCD(n | existe un ciclo simple de largo n en C ) .

121

Introduccin a la Investigacin de Operaciones

Una cadena es aperidica si todos sus estados lo son, y peridica en caso contrario.

Ejemplo
i

j
En esta cadena, tenemos que pii( n ) > 0 para n = 4,6,8, (2 + 2k ) . Por lo tanto, d(i)=2,
o sea que el estado i es peridico de perodo 2. Como adems la cadena es
irreductible, todos los estados de la misma tendrn perodo 2.
Ejemplo
1/2

j
1/2 i
Esta cadena es aperidica, ya que el estado i tiene un lazo, por lo tanto d(i)=1, y como
existe una sola clase de estados, todos tendrn periodicidad 1.
Ergodicidad
Se define un estado ergdico como aquel que es recurrente positivo y aperidico.
Un conjunto K de estados es ergdico si todos los estados que lo componen son
ergdicos. Una cadena de Markov es ergdica cuando es irreductible y su espacio de
estado es un conjunto de estados ergdicos. Si una cadena de Markov es finita y
ergdica, diremos que es una cadena regular.
Vector distribucin de estados
El vector de distribucin de estados de la cadena en la etapa n, Q(n), es un vector fila
estocstico (estocstico=suma de sus elementos igual a 1) que contiene las
probabilidades para la n-sima etapa del estado de la cadena:

Q(n ) = 1 (n ) 2 (n )

j (n )

r (n )] , E = {1,2,

, r}, E = r ,

r
j =1

j (n ) = 1

donde j (n ) = P( X n = j ), j E es la probabilidad de que el estado de la cadena en la


n-sima etapa sea j, independientemente del estado inicial.
Condicionando respecto del estado inicial, tenemos que

j (n ) =

iE

P( X n = j | X o = i ) P( X o = i )

cadena
homognea

iE

pij(n ) i (0 )

que expresado en notacin matricial nos da Q(n ) = Q(0)P n .


Podemos obtener el mismo resultado de la siguiente manera:

j (n ) =

iE

P( X n = j | X n1 = i ) P( X n1 = i )

cadena
homognea

iE

pij i (n 1)

122

Introduccin a la Investigacin de Operaciones

que corresponde a la ecuacin Q(n ) = Q(n 1)P , la cual aplicada recursivamente nos
permite llegar a Q(n ) = Q(0)P n .
Ejemplo:
Sea una CMTDH con dos estados, A y B, y matriz de transicin
2/4 2/4
3/4 1/4
Si la distribucin inicial
Q(0)=(0,1), entonces Q(1)=(3/4,1/4), Q(2)=(9/16,7/16), Q(3)=(39/64,25/64)
Si Q(0)=(1,0), entonces Q(1)=(2/4,2/4), Q(2)=(10/16, 6/16), Q(3)=(38/64,26/64)
Si Q(0)=(1/2,1/2), entonces Q(1)=(5/8,3/8), Q(2)=(19/32, 13/32), ...

Definicin.
Un vector estocstico es una distribucin estacionaria cuando si Q(n)=, entonces
Q(m)=, para todo m>n.
Si estacionaria, si Q(n)=, entonces Q(n+1)=; como Q(n+1)=Q(n)P, tenemos que
Q(n+1)=P=. Por lo tanto, toda distribucin estacionaria verifica la ecuacin
= P.
Recprocamente, todo vector que verifique las ecuaciones = P y

i = 1 ser
i E

una distribucin estacionaria de la cadena de Markov de espacio de estado E y matriz


de transicin P. Estas ecuaciones constituyen un sistema lineal de n+1 ecuaciones y n
incgnitas. Para resolver este sistema, debemos eliminar una de las ecuaciones
redundantes, que puede ser cualquiera exceptuando
i = 1.
i E

Es posible que una cadena de Markov admita ms de una distribucin estacionaria,


como vemos en el ejemplo siguiente. Sea una cadena de Markov de matriz de
transicin P,
12 12 0
P= 12
0

12
0

0 .
1

Al plantear el sistema lineal correspondiente para hallar la distribucin estacionaria


constatamos que es indeterminado, admitiendo infinitas soluciones, entre ellas estn
las siguientes: 1 2, 1 2, 0 , 1 5, 1 5, 3 5 , etc.

Comportamiento asinttico de una cadena de Markov


Estudiaremos ahora el comportamiento de las cadenas de Markov cuando el nmero
de etapas n tiende a infinito.

123

Introduccin a la Investigacin de Operaciones

Para esto, estudiaremos j E , j = lm j (n ) = lm


n

i (0 ) pij( n ) , que formulado en

iE
n

notacin matricial se escribe = lm Q(n ) = lm Q(0)P = Q(0) lm P n . El lmite de


n

Pn
puede estudiarse de forma genrica con tcnicas de transformada z, fuera del alcance
de este curso.

Cuando

= lm Q(n ) = Q(0) lm P n existe y es independiente del valor de la


n

distribucin inicial Q(0), decimos que es la distribucin lmite de la cadena.


Se puede demostrar
1) Que para una cadena de Markov ergdica, siempre existe la distribucin lmite, y
que adems coincide con la distribucin estacionaria que es nica en este caso.
2) Que para una cadena de Markov finita, irreductible y peridica, siempre existe una
nica distribucin estacionaria.
Para cadenas peridicas puede no existir una distribucin lmite. Veamos el siguiente
ejemplo.
Ejemplo 7.3.8
0 1
Sea la cadena de matriz de transicin P, P =
. En esta cadena, si el estado
1 0
inicial X0 del proceso es el estado 1, en todas las etapas pares la cadena pasar por el
0 1
estado 1, y en las etapas impares por el estado 2. Podemos ver que P 2 n+1 =
y
1 0
1 0
P 2n =
para todo n0. Por lo tanto, no existe lim P n , es decir que no tenemos
n
0 1
distribucin lmite. Sin embargo existe la distribucin estacionaria 1 2 ,1 2 .

7.3.3 Proporcin de tiempo pasado en un estado


En una cadena de Markov finita irreductible podemos considerar la distribucin
estacionaria j , j E como la proporcin del tiempo en el que el proceso va a estar
a largo plazo en el estado j. Ya habamos definido para un estado jE de una C.M
finita irreductible, la esperanza del tiempo de retorno a j, mjj. De forma intuitiva,
como j es la proporcion del tiempo en que el proceso est en el estado j, y como la
cadena est en el estado j una unidad de tiempo por cada mjj unidades de tiempo
1
que no lo est, tenemos entonces que j =
. Es decir que la proporcin de tiempo
m jj
que el proceso pasa en el estado j es igual a la inversa del tiempo medio entre las
visitas a j, para toda cadena de Markov finita irreductible.
Ejemplo 7.3.9

Un vigilante tiene una manzana para cuidar. La vigilancia comienza en una de las
esquinas, dirigiendose a las otras de acuerdo a las siguientes probabilidades:

124

Introduccin a la Investigacin de Operaciones

p12 = p 23 = p 41 = 1, p 33 = 1 p, p 34 = p . Es decir que le lleva una unidad de


tiempo el ir de una esquina a la siguiente, y en la nica esquina donde puede
permanecer ms tiempo es en la esquina 3, donde con probabilidad (1-p) decide
quedarse por otra unidad de tiempo.
El espacio de estado de esta cadena es {1,2,3,4}, donde cada estado corresponde a una
esquina en nuestro problema. La cadena se encuentra en el estado i durante la etapa n,
Xn=i, cuando el vigilante est en la esquina i durante la n-sima unidad de tiempo.
Como el espacio de estado de esta cadena posee una sola clase de equivalencia,
entonces la cadena es irreductible, y como es finita, entonces todos los estados son
recurrentes positivos. Para estudiar la periodicidad, alcanza con ver que como el
estado 3 posee un bucle, por lo tanto d(3)=1; al existir una sola clase, todos los
estados tienen la misma periodicidad, 1 en este caso. Tenemos entonces que esta
cadena es finita, irreductible y aperidica, entonces es ergdica. Por lo tanto, existe
p
una distribucin lmite que coincide con la estacionaria, 1 = 2 = 4 =
,
3 p +1
1
3 =
.
3 p +1

7.4 Cadenas de Markov de Tiempo Contnuo


Un proceso estocstico {Xt , tT} es de tiempo continuo cuando T es un intervalo de
los reales (y por lo tanto, un conjunto no numerable). Como T es continuo, notamos
(Xt = x) al evento en que el proceso toma el valor x en el instante t (denominamos
instante a un elemento del conjunto T).
Una cadena de Markov de tiempo continuo es un proceso estocstico de tiempo
continuo y espacio de estado discreto cuyo comportamiento en el futuro solamente
depende de su estado presente, es decir cuando la siguiente condicin se verifica:

) (

P X t + s = j | X t = i, X u = x(u ),0 u < t = P X t + s = j | X t = i ,

i, j E , x(u ) : T E , s, t T
(propiedad de ausencia de memoria).
En esta seccin consideraremos solamente cadenas homogneas, es decir aquellas
cuyas probabilidades de transicin son independientes del instante de tiempo en el
que ocurren:
P( X t + s = j | X t = i ) = pij (s ) , i, j E , t , s T
Para las cadenas de Markov de tiempo continuo homogneas podemos dar otra
definicin equivalente a la anterior, basada en la propiedad de ausencia de memoria.
Diremos entonces que una cadena de Markov de tiempo continuo es un proceso
estocstico cuya evolucin respeta las reglas siguientes:
1. el tiempo de permanencia del proceso en el estado i es una variable aleatoria
independiente, de ley exponencial y parmetro vi (por lo tanto, su media es 1/vi),
para todo estado i de E. Notaremos TPi a la variable exponencial del tiempo de
permanencia en el estado i.
125

Introduccin a la Investigacin de Operaciones

2. Cuando el proceso abandona el estado i, la eleccin del prximo estado j se realiza


de acuerdo a las probabilidades de transicin pij definidas para todos los estados i,j
de E. Estas probabilidades deben satisfacer pii = 0 ,
pij = 1, i E .
j E

Es posible entonces considerar que una cadena de Markov en tiempo continuo es un


proceso estocstico cuyas transiciones de un estado a otro se realizan de acuerdo a una
cadena de Markov discreta, pero donde el tiempo de permanencia en cada estado es
una v.a. exponencial en lugar de un valor constante.
En una cadena de Markov de tiempo continuo, definimos el generador infinitesimal Q
p i j
como la matriz tal que qij = ij i
. El generador infinitesimal de una cadena
i i = j
de Markov en tiempo continuo cumple un papel similar al de la matriz de transicin
en tiempo discreto. En particular, la distribucin estacionaria de una CMTC X es
aquella que se obtiene de resolver el sistema lineal Q=0, con la restriccion adicional
i = 1 ; si la cadena es ergdica, la distribucin estacionaria coincide con la
distribucin lmite, que existe.
Grafo asociado a una C. M. de tiempo continuo homognea

Sea X={Xn,n0} una cadena de Markov de tiempo continuo de espacio de estado


E={1,2,...r}, |E|=r, y generador infinitesimal Q. Podemos asociar un grafo orientado
ponderado G=(E,U,W) a la cadena X de la forma siguiente:
E (espacio de estado de la cadena) es el conjunto de nodos
U = {uij=(i,j)|i,jE, pij>0} es el conjunto de arcos orientados
W es la funcin de ponderacin que asigna uij + (i) la probabilidad de
transicin pij =qij /(-qii )> 0 correspondiente, W(uij) = pij > 0; y a cada nodo i E la
esperanza del tiempo de permanencia 1/vi=1/(-qii).
Como la suma de todas las probabilidades de transicin pij para cada fila i debe ser
igual a 1, entonces el grafo asociado a una C. M. finita homognea no puede ser
cualquiera, sino que la suma de las probabilidades asignadas a los arcos incidentes
exteriormente a cada nodo debe ser igual a 1.
Aunque el grafo retiene nada ms que las probabilidades de transicin entre dos
estados, su estudio es muchas veces suficiente para conocer cualitativamente la
evolucin del proceso.

Ejemplo 7.4.1
En un negocio de lustrar zapatos hay 2 sillas (silla 1 y silla 2). Un cliente que llega
se dirige primero a la silla 1, donde le limpian los zapatos y le ponen pomada.
Despus va a la silla 2 donde le lustran los zapatos. Estos dos servicios se consideran
variables aleatorias exponenciales independientes con parmetros respectivos 1 y 2.
Supongamos adems que los clientes entran segn una distribucin Poisson de tasa l
y que cualquier cliente entra solamente si las dos sillas estan desocupadas.

126

Introduccin a la Investigacin de Operaciones

Para analizarlo como una C.M. en tiempo continuo, establecemos un espacio de


estados apropiado. En este sistema tendremos siempre 0 1 cliente, siendo adems
relevante el saber en que silla se encuentra el cliente por los tiempos del servicio.
Entonces E={0,1,2}, donde
estado 0 - ningn cliente
estado 1 - un cliente, en la silla 1
estado 2 - un cliente, en la silla 2
En cuanto a los tiempos de permanencia en cada estado tenemos:

TP0 - intervalo de tiempo hasta que llega el primer cliente, exponencial de


tasa l. E( TP0 ) = 1 vo = 1 vo = 1

TP1 - tiempo de permanencia del cliente en la silla 1, exponencial de tasa 1.


E( TP1 ) = 1 1
1 = 1

TP2 - tiempo de permanencia del cliente en la silla 2, exponencial de tasa 2.


E( TP2 ) = 1 2
2 = 2
Las probabilidades de transicin son:
p01 = p12 = p20 = 1.
El grafo asociado es:
p
01
1/0

1/

0
p

12

p
20

2
1/2

Comunicacin, clases de equivalencia, componentes fuertemente conexas,


recurrencia y transitoriedad:
Son conceptos anlogos a los de las CM de tiempo discreto.
Periodicidad:
En CM de tiempo continuo todos los estados son aperidicos (no existe concepto de
estado peridico).
Ergodicidad:
Toda CM de tiempo continuo homognea finita e irreductible es ergdica.
Si la cadena es infinita, puede no ser ergdica (una condicin suficiente para que una
cadena irreductible sea ergdica es que los valores i estn acotados superiormente).
Vector distribucin de estados
El vector de distribucin de estados de la cadena en el instante t, Q(t), es un vector fila
estocstico (estocstico=suma de sus elementos igual a 1) que contiene las
probabilidades en el instante t del estado de la cadena:

Q(t ) = 1 (t ) 2 (t )

j (t )

r (t )] , E = {1,2, , r}, E = r ,

r
j =1

j (t ) = 1

127

Introduccin a la Investigacin de Operaciones

donde j (t ) = P( X n = j ), j E es la probabilidad de que el estado de la cadena en la


n-sima etapa sea j, independientemente del estado inicial.
Condicionando respecto del estado inicial, tenemos que

j (t ) =

iE

P( X t = j | X o = i ) P ( X o = i )

cadena
homognea

iE

pij (t ) i (0 ) .

Distribucin estacionaria.
Si Q(t)= es una distribucin estacionaria, entonces, Q(s)=, s>t.

Todo vector que verifique las ecuaciones Q = 0 y

i = 1 ser una distribucin


i E

estacionaria de la cadena de Markov de tiempo continuo de espacio de estado E y


generador infinitesimal Q. Estas ecuaciones constituyen un sistema lineal de n+1
ecuaciones y n incgnitas. Para resolver este sistema, debemos eliminar una de las
ecuaciones redundantes, que puede ser cualquiera exceptuando
i = 1.
i E

Es posible que una cadena de Markov admita ms de una distribucin estacionaria, en


cuyo caso el sistema lineal correspondiente para hallar la distribucin estacionaria
ser compatible indeterminado.
Comportamiento asinttico de una cadena de Markov
Estudiaremos ahora el comportamiento de las cadenas de Markov cuando t tiende a
infinito.
Para esto, estudiaremos j E , j = lm j (t ) = lm
i (0) pij (t ) .
t

tn

iE

Cuando = lm Q(t ) existe y es independiente del valor de la distribucin inicial


t

Q(0), decimos que es la distribucin lmite de la cadena.


Se puede demostrar que para una cadena de Markov de tiempo continuo finita y
ergdica, siempre existe la distribucin lmite, y que adems coincide con la
distribucin estacionaria que es nica en este caso. (ver en las pginas anteriores la
discusin sobre ergodicidad).
Ecuaciones de balance de flujo:
Si es una distribucin estacionaria, entonces para cualquier subconjunto A del
espacio de estados E, se verifica la siguiente propiedad (que corresponde a las
llamadas ecuaciones de balances de flujo):

i A

qij i =

jE / A

jE / A

iA

q ji j .

De manera recproca, un conjunto independiente de n-1 de estas ecuaciones junto con


la condicin de estocsticidad pueden ser empleadas para generar un sistema lineal
cuya solucin es son las distribuciones estacionarias (si existen).

128

Introduccin a la Investigacin de Operaciones

7.5 Procesos de Poisson


Una subfamilia importante de los procesos estocsticos de tiempo continuo y espacio
de estado el conjunto de los naturales son los procesos de conteo {N t , t 0} , que se
caracterizan por cumplir las condiciones siguientes:
N t N, t (y lo interpretamos como el nmero de eventos en el intervalo (0, t ] )
No = 0
N t 0, t
s<t
N s Nt

Un proceso de conteo es homogneo en el tiempo si el nmero de eventos en un


intervalo depende solamente de la longitud del mismo, y no de su instante inicial:
r1 < r2 , s > 0 : n 0 : P( N r2 + s N r1 + s = n) = P N r2 N r1 = n .
Un proceso de conteo es de incrementos independientes si el nmero de eventos
contados en intervalos de tiempos disjuntos son independientes:
s, t : n, m 0 : P( N t N s = n, N s = m ) = P( N t N s = n )P( N s = m ) .

Un caso particular de los procesos de conteo son los procesos de Poisson. Un proceso
de conteo {N t , t 0} es de Poisson si verifica las siguientes propiedades adicionales:
el proceso es homogneo en el tiempo y de incrementos independientes.

P( N h = 1) = h + o(h ) = p1 (h ) probabilidad de un evento en el intervalo (0, h] .

P( N h 2 ) = o(h ), o(h ) 0 probabilidad de ms de un evento en (0, h] .


h 0

A partir de estas condiciones se demuestra que la probabilidad de que ocurran n


eventos en el intervalo (0, t ] corresponde a una distribucin de Poisson,

e t (t )
, de esperanza E( N t ) = t = Var ( N t ) .
n!
Es decir que el proceso resultante de contar el nmero de eventos sucedidos en un
intervalo de tiempo t posee una distribucin de Poisson de tasa t.
pn (t ) = P( N t = n ) =

Distribucin de los tiempos entre llegadas


Consideremos un Proceso de Poisson {Nt , tT}, notemos T1 el intervalo de tiempo
hasta que ocurre el primer evento y para n > 1 notemos Tn el lapso de tiempo entre el
(n1)-simo evento y el n-simo evento.
La secuencia {Tn, n=1,2,3....} es llamada secuencia de los tiempos entre llegadas
sucesivas.

129

Introduccin a la Investigacin de Operaciones

3
2
1
t
0

T
0

t
1

T
1

Determinemos la distribucin de la variable aleatoria continua Tn.


Estudiemos primero T1.
El evento {T1 > t} = {N(t) = 0} corresponde a la no ocurrencia de ningn evento
del proceso en el intervalo (0,t], entonces
P(T1 > t ) = P( N t = 0 ) = p0 (t ) = e t .
Por lo tanto T1 posee distribucin exponencial, de media 1/.
Veamos ahora T2.
P(T2 > t )

prob.
condiciona l

P T2 > t | T1 = s f T1 (s )ds

por ser T1
exponencia l

P T2 > t | T1 = s e s ds

Tenemos que

) (

P T2 > t | T1 = s = P N t + s N s = 0 | N s = 1

incremento s
independie ntes

P( N t + s N s = 0 )

crecimient o
homogneo

P(N t = 0) = p0 (t ) = e t

Sustituyendo en la ecuacin anterior

P(T2 > t ) = e t e s ds = e t e s ds

e s ds =1

e t = P T2 > t | T1 = s

Por lo tanto concluimos que la variable aleatoria T2 tambin es exponencial, y su


esperanza es 1/.
Ademas T1 y T2 son independientes ya que P(T2 > t|T1 = s) = P(T2> t).
Con el mismo esquema, podemos demostrar que T3, T4, T5, etc., son variables
aleatorias exponenciales independientes, cuyo valor esperado es 1/ .
Recprocamente, una secuencia{Tn, n> 1} de variables aleatorias exponenciales
independientes de esperanza 1/
define un proceso de Poisson de tasa
, N t = {max{n / S n t}} con S n =

n
i =1

Ti el instante en que ocurre el evento n.

130

Introduccin a la Investigacin de Operaciones

Ejemplo 7.5.1
Supongamos que la inmigracin a un pas se realiza segn un proceso de Poisson, de
tasa = 1 inmigrante/da. Calculemos la probabilidad de que el tiempo transcurrido
entre el dcimo y el undcimo inmigrante exceda los dos das:
P{T11 > 2} = e-2 = e-2 0,133

7.6 Procesos de Nacimiento y Muerte


Estudiaremos a continuacin una clase de sistemas cuyo estado est completamente
determinado por el nmero de individuos presentes en el sistema en cada instante de
tiempo. Supongamos que siempre que haya n individuos en el sistema:
1.
los nuevos arribos al sistema se realizan a una tasa exponencial n
2.
los individuos abandonan el sistema a una tasa exponencial n
Es decir que siempre que haya n individuos en el sistema, el tiempo hasta la
llegada de un nuevo individuo es una variable aleatoria exponencial de esperanza
1/n, el tiempo hasta la partida de un individuo presente en el sistema es una variable
aleatoria exponencial de esperanza 1/ n, y ambas v.a. son independientes.
Modelamos un sistema de este tipo a travs de un proceso estocstico X={Xt , t0},
con Xt=nmero de individuos presentes en el sistema en el instante t. Este proceso
estocstico, de tiempo continuo y espacio de estado discreto, es un proceso de

nacimiento y muerte. Decimos que los parmetros {n }n=0 y { n }n=1 son las tasas de
nacimiento y muerte respectivamente de este proceso.

Propiedad

Todo proceso de nacimiento y muerte de parmetros {n }n=0 y { n }n=1 es equivalente


a una cadena de Markov de tiempo continuo con espacio de estado E = {0,1,2,.....} y
en la que desde cualquier estado n solamente hay transiciones hacia los estados n+1
y n-1 (donde n corresponde al nmero de individuos en el sistema modelado).

El grafo asociado al proceso de nacimiento y muerte tiene la siguiente forma:


1

n+1

n+1

n+1

n+2

La relacin entre las tasas de nacimiento y muerte del proceso con las tasas y
probabilidades de transicin de la cadena son las siguientes:
1.
0=0 ; i > 0 i=i+i tasa de transicin - suma de tasas de llegada y salida
2.
probabilidades de transicin:
p01 = 1
pi,i+1 = i /(i+i) i > 0 - probabilidad de que ocurra una llegada antes
pi,i1 = i /(i+i) i > 0 - probabilidad de que ocurra una partida antes.

131

Introduccin a la Investigacin de Operaciones

Algunos casos particulares de procesos de nacimiento y muerte son los siguientes:


1.
procesos de Yule n=n,n, n=0, n (nacimiento puro, tasa lineal).
2.
modelo de crecimiento lineal n=n,n, n=n, n .
3.
procesos de Poisson n= n, n=0 n (nacimiento puro, tasa constante).
Propiedad - Condicin de estabilidad de un proceso de nacimiento y muerte
A) Todo proceso de nacimiento y muerte con espacio de estados finito es estable.
B) Todo proceso de nacimiento y muerte con espacio de estados infinito y de

parmetros {n }n=0 y { n }n=1 es estable (su cadena de Markov subyacente


posee una distribucin estacionaria nica que coincide con la distribucin
lmite) si y solo si se verifican las siguientes condiciones:

n = 0 k =o

k +1

n = 0 k =o

<

k +1

k +1

7.7 Sistemas de Colas


En un sistema de filas de espera encontramos diversos componentes: fuentes de
entrada, clientes, las colas propiamente dichas, y los servidores. Estos componentes
tienen comportamientos caractersticos que deben ser especficados al describir el
sistema.
Los clientes en un sistema de colas no tienen porque ser personas, pueden ser
llamadas telefnicas, aviones, mquinas y los servidores pueden ser buffers de
memoria, pistas de aterrizaje, equipos de reparadores.
Cuando estudiamos un sistema de filas de espera, interesa determinar diversos datos
del mismo. Entre los ms comunes encontramos:
n nmero esperado de clientes en el sistema,
nmero esperado de clientes en la cola,
nmero medio de servidores ocupados ,
t f tiempo medio de espera en la cola,

t s tiempo medio de permanencia en el sistema.

En los modelos ms utilizados de sistemas de colas, el sistema queda determinado por


la distribucin de probabilidad de los tiempos de llegada de los clientes, la
distribucin del tiempo de servicio, y el nmero de servidores existentes. Nosotros
presentaremos sistemas de colas en los que la disciplina de espera en la fila es FIFO
(el primer cliente en llegar es el primer cliente que es atendido), y donde las
distribuciones definidas son exponenciales. Estos modelos de cola se pueden
modelar como cadenas de Markov de tiempo continuo, {X(t), t>0}, procesos
estocsticos sin memoria, donde el comportamiento futuro depende solamente del
estado presente.

132

Introduccin a la Investigacin de Operaciones

Para caracterizar en forma suscinta uno de estos modelos, se utiliza la siguiente


notacin (llamada Notacin de Kendall): distribucin de llegadas / distribucin del
servicio / nmero de servidores [/ tamao de la fila de espera /poblacin total del
sistema/disciplina de la fila]. Las distribuciones de llegadas y servicios ms comunes
se especifican mediante un cdigo de una letra: M para la distribucin exponencial
("markoviana"), Ek para la distribucin Erlang de k etapas, D para la distribucin
determinstica (tiempo constante), G para la distribucin "general" (distribucin de
probabilidad arbitraria). Las disciplinas de la fila se suelen especificar con un
acrnimo, del estilo First In First Out o Primero Entrar Primero Salir: los ms
comunes son FIFO (primero en llegar - primero en ser atendido), LIFO (ltimo en
llegar primero en ser atendido), Random (eleccin aleatoria entre los clientes que
esperan), PS (processor sharing - atencin multiplexada entre todos los clientes que
esperan), etc.

Filas de espera con llegadas de Poisson y tiempos de servicio exponenciales


Puesto que a cada una de las tasas (0, 1, , 1, 2, ) de un proceso de nacimiento
y muerte se puede asignar cualquier valor no negativo, esto proporciona gran
flexibilidad para modelar sistemas de colas. Una cantidad muy importante de los
modelos ms estudiados en la teora de colas se basan en este proceso. Todas las filas
de espera con entradas de Poisson y tiempos de servicio exponenciales, pueden
modelarse como un proceso de nacimiento y muerte. Los modelos difieren
nicamente en sus hiptesis respecto a como varan las tasas n y n con n.
Excepto para algunos casos especiales, el estudio analtico del proceso de nacimiento
y muerte es muy difcil cuando el sistema se encuentra en una condicin transitoria.
Se han obtenido algunos resultados sobre la distribucin de probabilidades de los
estados, pero son muy complicados como para tener aplicacin prctica amplia. Por
otra parte, es relativamente sencillo obtener una distribucin despus de que el
sistema ha alcanzado un estado estacionario (suponiendo que el sistema lo alcanza).
Esto puede realizarse directamente del diagrama de tasas, como se explica a
continuacin.
Para analizar un sistema de filas de espera debemos determinar las probabilidades
pn (t ) t 0, n N de que en el instante t haya exactamente n clientes en el
sistema. Estas probabilidades se llaman probabilidades de estado.
Estudiaremos los casos en que el proceso se realiza en rgimen estacionario, es
decir cuando las probabilidades son independientes del intervalo de tiempo t:
pn (t ) = pn , t 0, n N
Bajo hiptesis de regularidad del sistema, esta distribucin estacionaria coincide con
la distribucin de probabilidades lmite del sistema. En ese caso, podemos interpretar
el valor pn como la probabilidad asinttica de que haya n unidades en el sistema, o
tambin como la proporcin del tiempo total (cuando t) durante la cual hay n
unidades en el sistema.

133

Introduccin a la Investigacin de Operaciones

Para poder determinar las pn haremos uso de la propiedad de equilibrio de flujos


(vista al estudiar las cadenas de Markov de tiempo continuo). Esta propiedad puede
reexpresarse en este contexto con la siguiente formulacin:
Para cualquier estado n (n = 0, 1, ...) del sistema, la tasa media (nmero esperado
de ocurrencias por unidad de tiempo) a la que ocurren los eventos de entrada a un
estado o conjunto de estados debe ser igual a la tasa media a la que ocurren los
eventos de salida de ese estado o conjunto de estados.
Este principio se expresa mediante las ecuaciones de balance para el estado n o para
un conjunto de estados Cn. Luego de construir las ecuaciones de balance para cada
estado, en trminos de probabilidades estacionarias pn desconocidas, puede resolverse
el sistema para hallar las probabilidades.
Veamos ahora como determinar las ecuaciones de balance. Considrese el estado 0. El
proceso entra a este estado solamente desde el estado 1. Por tanto, la probabilidad en
estado estacionario de encontrarse en el estado 0 (es decir, p0), representa la
proporcin de veces que es posible llegar al estado 0. Dado que si el proceso se
encuentra en el estado 1, la tasa media de entrar al estado 0 es 1. Es decir, la tasa
media global a la cual el proceso entra al estado 0 es 1p1. Con el mismo
razonamiento, la tasa media global a la cual el proceso sale del estado 0 es 1p1.
Entonces, la ecuacin de balance para el estado 0 es
1p1 = 0p0
Para el resto de los estados, existen dos transiciones posibles, tanto hacia adentro
como hacia fuera del estado.
Las ecuaciones de balance se resumen a continuacin:
Estados
0
0, 1
0, 1, 2
...
0, 1, ..., n-1
0, 1, ... , n-1, n
...

Ecuacin de balance
1p1 = 0p0
2p2 = 1 p1
3p3 = 2 p2
...
npn = n-1pn-1
n+1pn+1 = npn
...

Dado que el sistema formado por las ecuaciones de balance hasta el n-simo conjunto
de estados contiene siempre n + 1 ecuaciones, podemos resolverlo en funcin de p0.
Luego, imponiendo que los pn sean una distribucin de probabilidades, es decir que
sumen 1, puede hallarse p0.

134

Introduccin a la Investigacin de Operaciones

Aplicando el procedimiento, llegamos a


Estado Ecuacin de balance

0
p
1 0

p 2 = 1 p1 = 1 0 p0
2
2 1

p3 = 2 p 2 = 2 1 0 p0
3
3 2 1
...
n
...
p n+1 =
p n = n n 1 0 p0
n+1
n+1 n ...1
...
p1 =

0
1
2
...
n
...

Es decir, las probabilidades en estado estacionario son p n =

n1n 2 ...0
p para n =
n n1 ...1 0

1,2...

Debe cumplirse que


n =0

p n = 1 , o sea p0 +

n =1

n1n2 ...0
p = 1 . Por lo tanto,
n n1 ...1 0

obtenemos la siguiente expresin para p0:


1

p0 =

1+

n =1

n 1n2 ...0
n n 1 ...1

Resumiendo, la distribucin de probabilidades en estado estacionario para una fila de


espera con llegadas de Poisson y tiempos de servicio exponenciales es:
p0

=
1+

n =1

n 1n2 ...0
n n 1 ...1

pn =

n1n 2 ...0
p
n n1 ...1 0

Condicin de estabilidad del sistema

El resultado anterior y los siguientes se obtienen suponiendo que las tasas permiten
alcanzar un estado estacionario. Esto siempre se cumple si n = 0 para algn valor de
n (es decir, cuando slo es posible un nmero finito de estados).
En el caso general, aplicando la propiedad vista para los procesos de nacimiento y

n1 ...0
n ...1
converge, y la serie
diverge, la estabilidad
muerte, si la serie
n =1 n ...1
n =1 n ...1
del sistema est garantizada, pues P0 est bien definido (y por ende, todas las dems
probabilidades en estado estacionario).

135

Introduccin a la Investigacin de Operaciones

Cantidad esperada de clientes en el sistema

Con esta informacin podemos calcular la cantidad media de clientes en el sistema


como el valor esperado del estado del proceso:
n=

n =0

np n

Nmero medio de clientes en la cola

Sea s el nmero de servidores del sistema. El largo esperado de la fila est dado por la
esperanza de la cantidad de personas en la fila (ntese que decimos la cantidad de
personas en la fila y no en el sistema). Supongamos que el proceso se encuentra en el
estado n (es decir, hay n clientes en el sistema). Si n s, entonces todos los clientes
estn siendo atendidos y la fila tiene largo 0. Si n > s, habr n s clientes en la fila y s
clientes siendo atendidos (fuera de la fila).
En resumen, el largo esperado de la fila es:

n=s

(n s ) pn

Cantidad esperada de servidores ocupados

De manera similar, podemos definir la cantidad esperada de servidores ocupados. Sea


s la cantidad de servidores del sistema. Supongamos que hay n clientes en el sistema.
Si n s entonces la cantidad de servidores ocupados es n. En cambio, si n > s la
cantidad de servidores ocupados es s (pues no hay mas de s servidores). Por lo tanto,
definimos

s
n =1

nPn +

sp n

n = s +1

Observe que se cumple n = + .


Ecuaciones de Little

Las ecuaciones de Little expresan que para cualquier sistema o subsistema dado, en
estado estacionario el nmero medio de clientes dentro es igual a la tasa media de
entrada de clientes por el tiempo medio de permanencia en ese sistema o subsistema.
Casos particulares: el nmero medio de clientes en el sistema, el nmero medio de
clientes en la cola, el tiempo esperado de permanencia en el sistema y el tiempo
esperado de permanencia en la fila satisfacen las siguientes igualdades:

n = ts

= t f
Donde es la tasa media de llegadas, que viene dada por =

n =0

n p n .

Asimismo, si t at es el tiempo medio de atencin, tenemos que = tat .

136

Introduccin a la Investigacin de Operaciones

Tiempo esperado de permanencia en el sistema

Utilizando las igualdades de Little, tenemos que

ts =

Tiempo esperado de permanencia en la fila

Aplicando nuevamente las igualdades de Little, llegamos a


tf =

Hemos obtenido ecuaciones para diversas medidas de inters (en estado estacionario)
sobre filas de espera con llegadas de Poisson y tiempos de servicio exponenciales sin
hacer suposiciones acerca de las tasas de llegada y de atencin. A continuacin
aplicaremos estos resultados genricos para establecer resultados en modelos
especficos.
A continuacin presentamos un estudio de algunos modelos simples de filas de espera
con llegadas de Poisson y tiempos de servicio exponenciales.

7.7.1 El modelo M/M/1


Este es el ms simple de los modelos de filas de espera. Como hiptesis tenemos que
los clientes llegan de acuerdo a un proceso de Poisson de parmetro , y por lo
tanto los tiempos entre llegadas son exponenciales (M). Adems estos clientes son
atendidos o servidos uno por vez, por un solo servidor (o equipo) cuyo tiempo de
servicio tambin es exponencial (M) de parmetro .
Cuando un cliente llega al sistema, y el servidor est libre, es atendido por el mismo.
Si el servidor no est libre, el cliente ocupa el ltimo lugar de la cola, y espera su
turno. Cuando el servidor termina de atender un cliente, ste abandona el sistema, y
el servidor comenzar a atender al cliente que ocupa el primer lugar de la cola.
Si notamos NC(t) al nmero de clientes en el sistema en el instante t, entonces es
posible demostrar que {NC(t), t0} es un proceso de nacimiento y muerte cuya tasa
de nacimiento es n = n0, y cuya tasa de muerte es n = n1.
SISTEMA
servidor
c c c c c c
Fuente con unidades
idnticas

c c c c c
fila o cola

137

Introduccin a la Investigacin de Operaciones

Vamos a calcular las probabilidades de estado pn para nuestra fila M/M/1.


Considerando el estado 0 (aqul en el que no hay clientes en el sistema), vemos que
este estado se abandona solamente cuando ocurre un arribo, por lo que la tasa de
salida es p0 ( es la intensidad de llegadas, p0 es la probabilidad de que el proceso se
encuentre en el estado 0, o lo que es lo mismo la proporcin del tiempo total en que
el proceso est en el estado 0). Las entradas al estado 0 se realizan desde el estado 1,
cuando un cliente abandona el sistema. La tasa de servicio es y la probabilidad de
que haya un solo cliente en el sistema es p1, entonces la tasa con que el sistema entra
o alcanza el estado 0 es p1. Aplicando el principio de equilibrio de tasas, tenemos
entonces la siguiente ecuacin: p0 = p1.
Consideremos ahora los estados 0 y 1. El proceso abandona este connjunto de estados
solamente por un arribo en el estado 1, que ocurre a una tasa . Por otro lado, el
proceso ingresa al estado 1 desde el estado 2 cuando hay una partida. Entonces la
intensidad de entrada es p1. La ecuacin a la que se llega luego de aplicar el
principio de equilibrio es ( )p1 = p2.
Con un razonamiento similar para los dems estados, obtenemos las siguientes
ecuaciones, llamadas ecuaciones de balance:

p0 = p1
pn = pn+1 n>0.
Reescribiendo, tenemos

p1 = p0

p n +1 = p n , n 1

que puede ser resuelto en trminos de p0:

p1 = p0

p2 = p1 =

p3 = p1 =

p n +1

p0
p0

= pn =

n +1

p0

Por ser pn una distribucin de probabilidad, tenemos que

1=

n =0

pn =

n =0

si <1

p0

p0

1
1

La condicin de que / < 1 es necesaria para que la serie sea convergente. Es


tambin la condicin de estabilidad de este sistema de colas.

138

Introduccin a la Investigacin de Operaciones

Resolviendo ese conjunto de ecuaciones, llegamos a:


p0 = 1

pn = ( ) (1 ), n 1
n

Condicin de estabilidad de la fila


Supongamos que > . Como los cliente llegan segn un proceso de Poisson de tasa
, el nmero esperado de clientes que llegan en un intervalo de tiempo t, es t,
E(Nt)= t, t0.
Si siempre hay clientes para atender, el nmero de clientes atendidos es un
proceso Poisson de tasa , ya que los tiempos de servicio, que son los tiempos entre
servicios sucesivos, son v.a. exponenciales independientes de valor esperado 1/.
Por eso el nmero esperado de clientes atendidos en el mismo intervalo de tiempo
t es E(A(t)) t.
Por ende el nmero esperado de clientes en el sistema durante el intervalo de
tiempo t es E(NCt) t - t = ( - )t = nmero esperado de llegadas menos
nmero esperado de atendidos.
Si > , cuando t, entonces E(NCt) tiende a infinito, es decir que la cola
crecera indefinidamente sin lmite y entonces no existira rgimen estable. En este
caso no tiene sentido intentar calcular las probabilidades pn.
Entonces la condicin para que exista un rgimen estable es que <, o
equivalentemente /<1. Esta condicin puede ser expresada lo como la condicin de
que la esperanza del tiempo de servicio 1/ sea menor que el valor esperado del
tiempo entre arribos sucesivos 1/.
Derivamos ahora los valores de algunas cantidades en trminos de las probabilidades
estacionarias.

Nmero esperado de clientes en el sistema1

n = npn = n

n= 0
n =0

1
=
=
2

( )

(1 )

Tiempo medio de permanencia en el sistema

ts =

Tiempo medio de espera en la fila

t f = t s E (tiempo de servicio) = t s

( )

Nmero esperado de clientes en la cola

1aplicamos

la siguiente identidad algebraica:

x
n =0

nx n 1 =

x
, x < 1.
(1 + x )2
139

Introduccin a la Investigacin de Operaciones

2
Utilizando igualdad de Little: = .t f =
( )
Tiempo de espera en el sistema
El tiempo de espera en el sistema es una variable aleatoria W. En el caso de la fila
M/M/1, su distribucin es exponencial de tasa (). Esto nos permite derivar de otra
1
forma el valor de t s = E (W ) =

Ejemplo 7.7.1
a) Supongamos que los clientes llegan segn un Proceso Poisson a razn de 1 cada
12 minutos y que el tiempo de atencin o servicio es exponencial de tasa un servicio
n=2
cada 8 minutos. Calculando, tenemos que
t s = 24
b) Aumentamos la tasa de arribos en un 20%. Al calcular, llegamos a

n=4
t s = 40

Observamos que aumentando un 20 % la tasa de arribo, el nmero esperado de


clientes en el sistema se duplica. Esto sucede porque cuando / se acerca a 1, un
pequeo aumento en la carga del sistema, / , lleva a una gran disminucin en el
rendimiento del mismo.

7.7.2 El modelo M/M/s


En este modelo, tanto las tasas de llegadas como los tiempos de servicio de cada
servidor son constantes ( y respectivamente). Por lo tanto, podemos decir que n =
para todo n. Para expresar los n, debemos tener en cuenta que ellas representan la
tasa media de servicio global, es decir de todo el sistema y no de cada servidor por
separado, cuando se tiene n clientes en el sistema. Dicha tasa global corresponde al
tiempo que demore el servidor que termine primero. Entonces, cuando se tiene n
servidores ocupados y cada uno tiene tiempo de servicio exponencial de tasa , la tasa
global de servicio2 es n. Es decir,

n = n si n < s
n = s si n s

Recordar que si se tiene n V.A. exponenciales independientes T1, ..., Tn de parmetros 1, ..., n
entonces min(T1, ..., Tn) es una V.A. exponencial de parmetro i.
2

140

Introduccin a la Investigacin de Operaciones

Por tanto, el diagrama de tasas toma la siguiente forma:

...
1

s-1

...

(s-1)

s+1

...

n+1

Condicin de estabilidad
Empleando las condiciones de estabilidad precedentes, podemos deducir que un
sistema de este tipo alcanzar un estado estacionario si se cumple la siguiente
condicin: < s

Distribucin estacionaria
En ese caso, la distribucin de probabilidades en estado estacionario de cada estado
(que se obtiene aplicando las ecuaciones genricas de la seccin anterior) estn dadas
por:
P0 = 1

s 1

( / )n + ( / )s
n!

n =0

s!

1
1 ( / s )

(
/ )n
P
=

si 0 n s
0
n!
( / )n P si s n
Pn =
0
s!s n s
Pn

Cantidad esperada de clientes en la fila

(n s )Pn

aplicando la frmula general de la seccin anterior

n= s

j =0

jPj + s

cambio de variable j = n s

(
/ ) j+s
j
P

(
/ )s
=
s!

(
/ )s
=
s!

sustituyendo Pn por su valor

s!s j

j =0

P0
P0

j =0

j 1

j
s

separando los trminos independientes de j

1
s

sabiendo que
j =0

j j 1 =

1
cuando < 1
(1 )2

141

Introduccin a la Investigacin de Operaciones


P0 ( / ) ( / s )
s

s! 1
s

reordenando trminos

Tiempo esperado de permanencia en la fila


Aplicando la frmula genrica, tenemos

tf =

s
P0 ( / ) ( / s ) 1
=
2

s! 1

Tiempo esperado de permanencia en el sistema


En este caso no utilizaremos la frmula genrica. El tiempo de permanencia en el
sistema es el tiempo de permanencia en la fila ms el tiempo de atencin. Por tanto, el
tiempo esperado de permanencia en el sistema est dado por

ts = t f +

Cantidad esperada de clientes en el sistema


Utilizando las igualdades de Little y operando, tenemos

1
1
= t f + = +
= tf +
n = ts = t f +

Cantidad esperada de servidores ocupados


Utilizando los resultados anteriores para n y v tenemos

7.7.3 El modelo M/M/1 con fuente de entrada finita


Supongamos ahora que la cantidad de potenciales clientes del sistema es finita.
Denotamos con M el tamao de la poblacin potencial. Por lo tanto, cuando la
cantidad de clientes en el sistema es n, la cantidad de clientes fuera del sistema es M
n.
El tiempo que transcurre entre una entrada al sistema y la siguiente, tiene una
distribucin exponencial de parmetro . Por lo tanto, cuando hay n clientes en el
sistema y M n fuera, el tiempo hasta la prxima entrada es el mnimo de los M n
tiempos entre entradas (que son exponenciales de parmetro ); por lo tanto el tiempo
hasta la prxima llegada tiene distribucin exponencial de parmetro (M n).
142

Introduccin a la Investigacin de Operaciones

La informacin se resume en el siguiente diagrama de tasas:

( 1)

n-1

...

(n+2) (n+1)

( 2)

( n)

( n 1)

...

n+1

Es decir,

n = ( M n)
n = 0
n =

si n < M
si n M
para todo n > 0

Condicin de estabilidad
Al ser n = 0 a partir de n = M, el sistema siempre alcanzar un estado estacionario
(por propiedades vistas en estabilidad de cadenas de Markov y procesos de
nacimiento y muerte).

Distribucin estacionaria
Aplicando las ecuaciones genricas, hallamos la distribucin estacionaria del sistema:
M

P0 = 1

n =0

M!

( M n)!

M!
Pn =
( M n)!
Pn = 0

P0

para n = 1, 2, ..., M 1
para n M

Cantidad esperada de clientes en la fila

Aplicando la ecuacin genrica, tenemos


M

n =1

=
=

M
n =1
M
n =1

(n 1) Pn

nPn

M
n =1

Pn

nPn (1 P0 )

=M

+
(1 P0 )

separando los trminos


pues P1 + ... + PM = 1 P0
Realizando diversas operaciones

143

Introduccin a la Investigacin de Operaciones

Cantidad esperada de clientes en el sistema


M

n=

n =0

nPn = + (1 P0 ) = M

(1 P0 )

Cantidad esperada de servidores ocupados

Utilizando los resultados anteriores para n y v tenemos = 1 P0 .


Tiempo esperado de permanencia en la fila

Aplicando la ecuacin genrica tenemos t f =

Donde

n=0

=
=

aplicando la definicin

n Pn

M
n =0
M
n =0

pues Pn = (M n)Pn cuando 0 n M


y Pn = 0 en otro caso

( M n)Pn
MPn

= M

M
n =0

separando trminos

nPn

n =0
M

Pn

= M n
= (M n )

n =0

sacando las constantes fuera de la sumatoria

nPn

por ser P0 + ... + PM = 1


sacando factor comn

Tiempo esperado de permanencia en el sistema

Del mismo modo, tenemos t s =

7.7.4 El modelo M/M/s con fuente de entrada finita


Supongamos ahora las mismas hiptesis que el caso anterior, pero ahora con s
servidores. El diagrama de tasas queda
( 1)

( 2)

(s+2) (s+1)
s-1

...

(s-1)

( s)

( sn 1)
...

s+1

M
s

144

Introduccin a la Investigacin de Operaciones

Es decir,

n = ( M n )
n = 0
n = n
n = s

si n < M
si n M
para todo 0 < n < s
ns

Condicin de estabilidad

Al igual que para el caso con un solo servidor con fuente de entrada limitada, el
sistema siempre alcanzar un estado estacionario, pues el nmero de estados
alcanzables es finito.
Distribucin estacionaria

Aplicando las ecuaciones genricas, hallamos la distribucin estacionaria del sistema:


P0 = 1

M!
n = 0 ( M n)!n!
s 1

M!
Pn =
(m n)!n!

M!
+
n s

n = s ( M n)!s! s
M

para 0 n s

P0

M!

Pn =
n s
(m n)!s!s

Pn = 0

P0

para s n M
n>M

Los clculos de las cantidades de inters se realizan de manera similar a los casos
anteriores.

7.8 Propiedad PASTA


(Poisson Arrivals See Time Averages) (versin sencilla, sin demostracin)

Para todo sistema de filas de espera en equilibrio, y tal que el proceso de llegada de
clientes es un proceso de Poisson, la probabilidad que un cliente al llegar observe al
sistema en un estado n dado es igual a la probabilidad asinttica de que el sistema se
encuentre en ese estado (pn)
Esta propiedad permite calcular diversas medidas. A manera de ejemplo:
la probabilidad de que un cliente al llegar encuentre el sistema vaco, es igual
a la probabilidad de que el sistema est vaco, p0;
en un sistema con un nmero finito de lugares de espera, la probabilidad de
que un cliente al llegar sea rechazado es igual a la probabilidad del sistema se
encuentre en el estado correspondiente a esa cantidad de clientes en espera.

145

Introduccin a la Investigacin de Operaciones

8. SIMULACIN
8.1 Introduccin
La palabra simulacin es un trmino genrico que describe muy diferentes tipos de
actividades incluyendo: roles que se juegan en la vida social o en experimentos
sicolgicos, juegos de videos complejos, modelos a escala creados por ingenieros que
describen la conducta de puentes o aeropuertos, etc.
Para un computlogo, estadstico, cientfico o gerente, se refiere a la construccin de
un modelo abstracto que representa algn sistema de la vida real, con la subsiguiente
descripcin a travs del tiempo de los pertinentes al sistema como una serie de
ecuaciones y relaciones, generalmente a travs de un programa de computadora.
Definimos como simulacin de sistemas a la exploracin de mundos posibles y al
estudio del desarrollo en el tiempo de esos mundos.
Recordemos que:
Sistema: es una porcin del universo respecto de un observador o colaborador
definido (interior o exterior al mismo), compuesta por un conjunto de elementos y
relaciones entre los mismos.
Al estudiar un sistema, como observadores, podemos apreciar que hay determinados
objetos distintos, llamados entidades. Tambin observamos interacciones entre ellos
(que llamamos actividades), las cuales producen cambios en el sistema.
Pero para estudiar realmente un sistema se debe poder experimentar con l y ocurre
que no se podr experimentar con el sistema real siempre que:
a) el sistema an no exista (Ej: al planificar alguna facilidad en la produccin- ej.
redes en creacin -, o planificar el abastecimiento de materia prima para un
producto nuevo).
b) la experimentacin con el sistema sea muy cara (ej: el modelo permitir
determinar si es cuerdo asignar cierta cantidad de dinero en un nuevo equipo).
c) la experimentacin con el sistema sea inapropiada (ej: planificacin de las
actuaciones ante catstrofes por parte de hospitales, policas y servicio de
ambulancias).
En algunos de estos casos es posible construir un prototipo y probarlo. Pero esto
puede ser muy costoso, o poco prctico y a veces imposible.
En consecuencia los estudios de los sistemas se realizan con un modelo de los
mismos.

146

Introduccin a la Investigacin de Operaciones

8.2 Modelos
Un modelo es el cuerpo de informacin relativa a un sistema recabado con el fin de
estudiarlo, un modelo no es slo un sustituto del sistema, es tambin su
simplificacin.
Adems no existe un modelo nico de un sistema, ya que cada objeto de estudio
establecido determinar la naturaleza de la informacin a reunir.
Existe una gran diversidad en la manera de clasificar los tipos de modelos en el
estudio de sistemas.
A veces la clasificacin se realiza segn la naturaleza del sistema a estudiar, a saber:
1) continuo vs. discreto
2) determinstico vs. aleatorio.
Consideremos una primera divisin en modelos fsicos y matemticos:
Modelo
fsico

esttico

matemtico

dinmico

esttico

numrico

dinmico

analtico

numrico

Simulacin
de Sistemas
Esta primera divisin se realiza para tener en cuenta que un modelo no es
necesariamente una descripcin matemtica del sistema, existen por ejemplo: modelos
a escala que se utilizan en los tneles de viento, tanques de agua para estudiar el
diseo de naves acuticas, modelos a escala de cursos de ros, de puertos (ej: Puerto
de la Paloma, estudiado por el IMFIA), diversos tipos de modelos.
La tercera distincin (nivel) se realiza segn la tcnica empleada para resolver el
modelo.
En un modelo matemtico, las entidades de un sistema y sus atributos se representan
mediante variables y las actividades mediante funciones que interrelacionan las
variables (ej. restricciones).
Un modelo esttico despliega las relaciones entre los atributos del sistema cuando est
en equilibrio, sin mostrar la manera en que cambian los valores de los atributos (no
existen actividades).

147

Introduccin a la Investigacin de Operaciones

Un modelo matemtico dinmico permite deducir los cambios de los atributos del
sistema en funcin del tiempo y dependiendo de la complejidad del modelo, la
deduccin puede hacerse con una solucin analtica o por clculo numrico (ej: el
comportamiento de la llanta de un auto en movimiento se modela con ecuaciones
diferenciales de 2 orden).
Los modelos matemticos dinmicos que se pueden resolver analticamente y que dan
resultados prcticos aplicables no son del todo comunes. Lo ms frecuente es que esos
problemas deban resolverse mediante mtodos numricos y la simulacin es uno de
esos mtodos.
Un ejemplo de modelo matemtico dinmico es el que describe las condiciones bajo
las cuales vibra la estructura de una aeronave, modelo que se puede plantear pero no
resolver analticamente. La cuestin de si habr o no vibraciones se puede determinar
numricamente calculando las races de determinadas ecuaciones asociadas. En este
caso los clculos numricos no constituyen simulacin, ya que el clculo no sigue el
movimiento de la estructura de la aeronave en el tiempo, es sencillamente un
procedimiento para determinar las races de una ecuacin, es un mtodo numrico
puro.
Se tratar de simulacin si los clculos tienen en cuenta los cambios producidos en el
tiempo, es decir si describimos a travs de algn mecanismo la distintas variaciones
producidas en determinado intervalo de tiempo.

8.3 Simulacin de sistemas


Simulacin de sistemas es equivalente a la exploracin de mundos posibles. Es una
tcnica identificada con la resolucin simultnea de tosas las ecuaciones del modelo
con valores continuamente crecientes del tiempo, es decir la tcnica de resolver
problemas siguiendo los cambios en el tiempo de un modelo dinmico de un sistema.
Cmo se enmarca la simulacin en la Investigacin de Operaciones? La
simulacin se ha convertido en la rama experimental del rea.

Durante el curso se hace hincapi en el planteo y resolucin de los modelos


matemticos en forma analtica, ya que por lo general el enfoque analtico es superior
al de la simulacin en cuanto a la exactitud de la resolucin del problema. Sin
embargo muchos problemas son tan complejos que no se pueden resolver
analticamente, lo que nos impedir tomar una decisin. Slo entonces se deber
recurrir a la simulacin, cuando sea el nico enfoque prctico del problema.
Se debe destacar que a medida que aparecieron computadoras ms rpidas se
comenz a experimentar ms y ms en la utilizacin de modelos numricos y en la
simulacin hasta que en la actualidad esta tcnica se usa en reas tan diversas como:
- construccin de prototipos de automviles, aviones, armas de guerra
- medicina
- procesos de produccin
- modelos economtricos
- problemas logsticos.

148

Introduccin a la Investigacin de Operaciones

Toma tambin gran importancia para algunas aplicaciones la simulacin grfica o


icnica, la cual, como su nombre indica, no slo est basada en un modelo numrico
matemtico que permite obtener los valores que se desea estudiar, sino que permite
visualizar el desarrollo de la simulacin.
Ventajas de la simulacin en computadoras:

1) Permite estudiar y experimentar en las complejas relaciones e interacciones que


existen y ocurren en el interior de un sistema real.
2) Permite experimentar sobre un sistema que puede no existir en la realidad (de otra
manera sera imposible) y en este caso asiste a la decisin de construirlo o no.
3) Se ahorra mucho tiempo y dinero y se evitan riesgos.
4) Se logra independencia de la duracin real del evento. Por ejemplo se puede
simular procesos muy largos como muy cortos:
- Estudiar el crecimiento de una cierta planta mediante simulacin en poco
tiempo, lo que en la realidad puede llevar mas de 400 aos.
- Estudiar las reacciones nucleares que son eventos que ocurren en
millonsimas de segundo.
5) Se puede estudiar como reacciona el sistema al introducir variantes, sin correr
riesgos (estudio de sensibilidad).
6) Se puede aplicar para verificar soluciones analticas (Montecarlo). Ofrece mayor
facilidad para estudiar sistemas dinmicos y no determinsticos

8.4 Etapas en el proceso de Simulacin de Sistemas


La simulacin se puede aplicar a una infinidad de tipos de sistemas lo que produce
una amplia variedad en la forma en que se desarrolla su aplicacin. A pesar de esta
variedad se pueden identificar determinados pasos bsicos en un proceso de (estudio
de la ) simulacin, en los que reconocemos los pasos de una metodologa cientfica.
Estas etapas, que se enumeran a continuacin, no son totalmente secuenciales dado
que muchas veces se debe reiterar y volver atrs, realizando nuevamente etapas
anteriores.
1) FORMULACIN DEL PROBLEMA
2) PLAN DE ESTUDIO
3) FORMULACIN DEL MODELO MATEMTICO
4) CONSTRUCCIN DEL PROGRAMA EN COMPUTADORA PARA EL MODELO
5) VALIDACIN DEL MODELO
6) DISEO DE EXPERIMENTOS
7) EJECUCIN DE LAS CORRIDAS DE SIMULACIN Y ANLISIS DE RESULTADOS
Los dos primeros pasos parecen obvios pero son de fundamental importancia; no
debe comenzarse ningn tipo de simulacin sin antes enunciar claramente el problema
y los objetivos de su estudio.
149

Introduccin a la Investigacin de Operaciones

Luego podr establecerse un plan de trabajo que permitir controlar el desarrollo del
trabajo, impidiendo que ele estudio se desbalancee concentrndose en algn aspecto
del problema a costa de otro.
Un fracaso comn en los estudios de simulacin es concentrarse demasiado en estas
fases y extraer ms datos de los necesarios o de los que pueden validarse con los datos
disponibles.
En el tercer paso para construir un modelo, debemos
a) establecer la estructura del modelo, decidiendo cuales son los aspectos
significativos del problema en el comportamiento del sistema.
b) reunir los datos necesarios que proporcionen parmetros correctos para el
modelo
El cuarto paso, la construccin de un programa, es una tarea relativamente bien
definida y no necesariamente fcil. El modelo establecer las especificaciones de lo
que se debe programar.
En algunas ocasiones, las etapas 3 y 4 pueden realizarse en paralelo.
Se puede contar con lenguajes especficos de simulacin que brindan al usuario no
solamente el lenguaje en s, sino tambin un conjunto de conceptos de modelado que
se utilizan para describir el sistema, con herramientas de especificacin del mismo,
facilitando la conversin del modelo a programa de computadora, e incluso en
algunos casos liberando al usuario de mucho detalle de programacin, brindando
facilidades de generacin de cdigo a travs de esqueletos estndar.
Simulacin Continua: 1130/CSMP, 360 CSMP y DYNAMO.
Simulacin a Eventos Discretos: GPSS, SIMSCRIPT, SDL/SIM.
Para ambos: SIMULA, lenguaje nrdico orientado a objetos, que a pesar de su edad,
continua siendo el ms elegante creado para simular, que engloba varios conceptos de
sistemas y modelado, entidad, atributos, actitudes...
Por supuesto que se puede programar simuladores en C++, ADA, PROLOG,
MODULA, FORTRAN , PASCAL, etc.
El quinto paso: validacin del modelo, requiere una gran cuota de juicio y criterio
comn, ya que las hiptesis hechas al establecer el modelo deben comprobarse
observando si el modelo se comporta como se esper.
En realidad se debera validar el modelo matemtico antes de iniciar la programacin,
pero generalmente la razn de la simulacin es que el modelo no es manejable,
entonces por regla general la validacin se desarrolla examinando la versin
programada del modelo (a la vez que se pueden observar errores de programacin).
El sexto paso es el diseo de un conjunto de experimentos de acuerdo a las objetivos
del estudio. Una falla comn es la obtencin de una masa abrumadora de resultados

150

Introduccin a la Investigacin de Operaciones

que se recaban sin plan determinado. Se debe tener en cuenta tambin el significado
estadstico de los resultados ante la presencia de eventos aleatorios en la simulacin.
Por ltimo el sptimo paso es ejecutar las
interpretar los resultados.

corridas planificadas y estudiar o

Si el estudio ha sido bien planificado se habr planteado un conjunto bien definido de


preguntas y el anlisis tratar de responderlas. Por supuesto, estas etapas no son del
todo secuenciales sino que muchas veces debe volverse atrs y afinar incluso los
objetivos e hiptesis planteadas.

8.5 Clasificacin de tipos de simulacin


La simulacin se puede clasificar en tres tipos:
1. Simulacin Continua
2. Simulacin a eventos discretos
3. Simulacin estadstica o Mtodo Monte Carlo
- Simulacin Continua: modela sistemas continuos, donde el inters primordial son
los cambios suaves. Por ejemplo el comportamiento de algunos parsitos (las
fluctuaciones en el nmero de su poblacin con respecto a la poblacin de sus
anfitriones), la posicin relativa de un conjunto de astros, etc.
Para ello se utilizan conjunto de ecuaciones diferenciales que se resuelven
simultneamente.
- Simulacin a eventos discretos: se aplica en sistemas discretos, donde el inters
primario est en los eventos, siendo las ecuaciones que los describen ecuaciones
lgicas que expresan las condiciones para que ocurra un evento.
La simulacin consiste en seguir los cambios en el estado del sistema producidos por
la sucesin de eventos.
Un evento describe la ocurrencia de un cambio en un instante de tiempo y por lo tanto
puede provocar un cambio en el valor de algn atributo de una entidad o de la entidad
en s (crear o destruir una entidad, iniciar o detener una actividad), lo cual requiere la
construccin de un programa que permita seguir la secuencia de eventos.
Llamamos entidad a cualquier objeto de inters en el sistema, atributo denota una
propiedad de una entidad, y todo lo que provoque cambios en el sistema se conocer
como actividad del mismo.
El trmino estado del sistema indica una descripcin de todas las entidades, atributos
y actividades segn su existencia en algn instante del tiempo. El progreso o
desarrollo en el tiempo del sistema se estudia siguiendo sus cambios de estado.
Por ello es necesario llevar un registro del paso del tiempo, al que llamamos "tiempo
de reloj" que es un nmero, inicializado en 0 al comienzo de la simulacin, y que va
indicando cuantas unidade3s de tiempo simulado han transcurrido desde el comienzo..

151

Introduccin a la Investigacin de Operaciones

Al menos que especficamente se exprese de manera contraria, el trmino "tiempo de


simulacin", significa el tiempo del reloj indicado y no el tiempo que ha necesitado la
computadora para realizar la simulacin (tiempo de cmputo) es ms, por lo general,
no existe una relacin directa entre ambos.
Si simulsemos el sistema operativo de una computadora, en el que los eventos reales
ocurren en intervalos medios en fracciones de microsegundos, aunque la realizsemos
en una mquina de alta velocidad, notaramos que la simulacin tomara fcilmente
miles de veces ms tiempo que la operacin real del sistema.
Por otro lado, para la simulacin de un sistema econmico, en el que se ha estudiado
eventos que ocurren una vez al ao, es fcil realizar una operacin de cien aos en
unos cuantos minutos de clculo.
Existen dos mtodos para actualizar el tiempo del reloj, a los que llamamos
mecanismo de control de flujo de tiempo.
a) el reloj avanza a la hora en que debe ocurrir el siguiente evento, conocido como
mecanismo orientado al evento.
b) el reloj avanza en intervalos pequeos (generalmente uniformes) y en cada
intervalo se determina si debe ocurrir un evento o no, llamado mecanismo
orientado a intervalos, usado normalmente en simulacin continua.
Ejemplo:
Simulamos la llegada de barcos a un muelle, para contabilizar la cantidad de barcos
que llegan a l y su tiempo de espera para atracar.

Comienzo
<Max := tiempo del perodo de simulacin>
<Sortear el tiempo de la prxima llegada: T(prx lleg)>
<Crear una entidad barco, asignarle atributo tiempo de llegada: barco.t(lleg)>
<Reloj := T(prx.lleg)>
Mientras reloj<Max
<Actualizar contador de barcos llegados>
<Actualizar la cola de barcos en espera por muelles segn el tiempo
del Reloj y tomar los datos pertinentes>
Si <hay algn muelle libre>
<Quitar el primero de la cola>
<Calcular tiempo de espera: Reloj-barco.t(lleg)>
<Sortear tiempo de ocupacin del muelle>
<Ocupar el muelle libre>
Si no
<Colocar el barco llegado como ltimo en la cola>
Fin si
<Sortear T(prx. lleg)>
Reloj := Reloj + T(prx. lleg)
Fin mientras
<Procesar los resultados (estadsticos) de la corrida>
Fin

152

Introduccin a la Investigacin de Operaciones

- Simulacin estadstica: a veces llamada Mtodo Monte Carlo, es el muestreo de los


mundos posibles de nuestro sistema, mtodo que estudiaremos con ms detalle.

8.6 Generacin de nmeros aleatorios


La generacin de valores de variables aleatorias tiene un rol preponderante en el
proceso de simulacin, para generar variables aleatorias es necesario contar con un
generador de nmeros aleatorios.
Los nmeros aleatorios deben tener las siguientes caractersticas :
1) Distribucin Uniforme. Lo que significa que cualquier nmero que pertenezca al
rango de inters debe tener la misma chance de resultar sorteado.
2) No exista Correlacin Serial. Lo que significa que la aparicin de un nmero no
afecta de ninguna manera la chance de aparecer de otro nmero o de s mismo.

Por ejemplo si un generador de nmeros naturales del 1 al 5 nos entrega la sucesin 1


2 3 4 5 1 2 3 4 5 ... la misma es uniforme pero esta totalmente correlacionada ==> no
hay aleatoriedad.
Existen Tests para comprobar que un generador cumpla estas dos condiciones.
Veremos tres formas diferentes de generar nmeros aleatorios:
1) Utilizacin de tablas de nmeros aleatorios.
2) Nmeros generados en forma aleatoria.
3) Nmeros pseudoaleatorios

8.6.1 Utilizacin de tablas de nmeros aleatorios


Existen tablas de nmeros aleatorios, las cuales pueden ser cargadas en la memoria de
la mquina, en 1955 la compaa RAND (Research & Development ) public una
tabla con un milln de nmeros.
Estas tablas se generan con mtodos aleatorios puros como ser ruletas, extraccin de
nmeros al azar, dados, etc.
Tienen como ventaja el ser nmeros aleatorios puros pero sus desventajas son, entre
otras:
- pueden ocupar mucha memoria
- hay que cargar la tabla en memoria
- la sucesin de nmeros es finita

8.6.2 Nmeros generados en forma aleatoria


En base a algn circuito o caracterstica de la mquina se generan nmeros que son
totalmente aleatorios.

153

Introduccin a la Investigacin de Operaciones

El mtodo bsicamente consiste en interrumpir un proceso uniforme en forma


aleatoria (que es esencialmente lo que ocurre cuando la bola cae en un casillero de la
ruleta).
Estos mtodos tienen la misma ventaja que el primero o sea que se obtienen nmeros
aleatorios puros y como desventajas se puede decir que si se desea generar la misma
secuencia de nmeros ms de una vez, es necesario grabarla puesto que no hay forma
de asegurarse de obtener la misma secuencia automticamente.
Veremos dos ejemplos, uno en base a la utilizacin de un circuito especial y el otro
simplemente con un programa y la participacin de un operador.
Ejemplo 1. HARDWARE GENERATOR

Es una tarjeta que se coloca en el slot de un PC, genera nmeros aleatorios reales y su
costo en 1985 era de 600 dlares (lo que representa un costo que no aparece si
utilizamos generadores de nmeros pseudoaleatorios ).
Funciona de la siguiente forma:
Tiene un oscilador que enva pulsos que son contados por un contador digital.
Los momentos de arranque y parada del oscilador se controlan en forma aleatoria con
los pulsos que provee la descarga de un istopo radioactivo (el primero prende el
oscilador y pone el contador en 0, el segundo apaga el oscilador y devuelve el
nmero).
El nmeros de pulsos del oscilador que cuente el contador ser el nmero aleatorio
generado.
1er. pulso
ISOTOPO

ON
OSCILADOR
OFF

pulso

2do. pulso
0
+1
CONTADOR
Cuenta
nro. aleatorio
Ejemplo 2. Programa que al ser interrumpido por el operador entrega un nmero
aleatorio entre 1 y 100.

While not exit


For i:=1 to 100
Char := inkey
If Char= " " then print i
End For
End While

154

Introduccin a la Investigacin de Operaciones

Como la mquina hace ms de 1 milln de operaciones por segundo existe una gran
disparidad entre el toque de tecla por intermedio del operador el programa y la
velocidad con que se ejecuta el loop, por lo que no se podr gobernar el ritmo, ya que
si as fuera el operador podra "manejar" los resultados.

8.6.3 Nmeros pseudoaleatorios


Se generan a travs de una frmula e imitan los valores de una variable aleatoria y
cumplen los tests como si fueran esa variable aleatoria.
Se llaman pseudoaleatorios porque se obtienen realizando un conjunto de operaciones
sobre el nmero generado antes ( recurrencia ) por lo que no son realmente aleatorios
segn lo expuesto antes. A pesar de esto muchos de los mtodos de generacin de
nmeros pseudoaleatorios se comportan correctamente y pasan todos los tests.
Presenta la gran ventaja de ser un mtodo muy veloz y barato y la mayor desventaja
es que son de perodo finito.
La secuencia de nmeros generados debe cumplir con las 2 hiptesis ya mencionadas:
1) Distribucin Uniforme
2) Independencia (no correlacionados)
y adems son importantes los siguientes aspectos :
a) las subsecuencias tambin deben cumplir 1) y 2)
b) deben ser secuencias largas y sin huecos (densas)
c) algoritmos rpidos y que no ocupen mucha memoria.
Mtodo de Centros de Cuadrados

Este mtodo fue planteado por Von Neumann en 1950. Se basa en tomar un nmero,
elevarlo al cuadrado y tomar los dgitos del centro como nuevo nmero, luego repetir
el procedimiento.
Ejemplo con 4 dgitos :

2061 4247721
2477 6135529
1355 ...

La desventaja es que la secuencia generada por lo general es corta.


El ejemplo anterior luego de 34 nmeros degenera a 0; y si en lugar de empezar con
2061 empezamos con 2500, se repite 2500 en la primer iteracin (y por lo tanto, en
todas las restantes).
An as si se toman nmeros muy largo se puede llegar a secuencias de 100,000
nmeros diferentes.
Mtodo Congruencial Lineal

Este mtodo es el utilizado por excelencia y se basa en la siguiente recurrencia :


Zi = ( A * Zi-1 + C ) mod M
de donde se deduce que :
Zi = A * Zi-1 + C - (A * Zi-1 + C) / M * M

155

Introduccin a la Investigacin de Operaciones

(notacin: x : mayor entero menor o igual a x)


y se puede demostrar por induccin completa que :
Zn = ( Z0 * An + (An 1)/(A - 1) * C ) mod M
Si se quieren obtener nmero Uniformes (0,1) se normaliza el resultado:
Ui = Zi /M
Ejemplos: a) A = 3, C = 0, M = 5 y Z0 = 4: 2,1,3,4,2,1,...
b) A = 3, C = 0, M = 9 y Z0 = 4: 3,0,0,...
Se desprende del ejemplo que en este mtodo si se repite un nmero ya se repite toda
la secuencia.
Presenta la ventaja de gastar poca memoria y ser muy rpido. Adems es muy fcil
volver a generar la misma secuencia guardando un solo nmero ( alcanza con partir de
la misma semilla Z0 ).
Es muy importante la eleccin de las constantes A, C, M y la semilla Z0 ya sea para la
velocidad de generacin como sobre todo para el largo de la secuencia.
En la prctica para aumentar la velocidad de clculo se suele tomar M=, donde es
el nmero base de operacin de la mquina, por lo que en mquinas binarias =2, esto
permite calcular muy fcilmente el resto y efectuar la normalizacin a U(0,1)
operando con desplazamientos y no con divisiones y multiplicaciones.
Con respecto al largo del perodo de la secuencia siempre ser menor o igual a M y es
deseable obtener el largo mximo (o sea M) aunque no siempre es posible. Cuando se
obtiene largo mximo se dice que el mtodo es de Perodo Completo.
Se distinguen dos casos segn el valor de C.
Si C = 0 , se llama METODO CONGRUENCIAL MULTIPLICATIVO PURO
Si C 0 , se llama METODO CONGRUENCIAL MULTIPLICATIVO MIXTO

8.6.4 Tests o pruebas de Independencia y Uniformidad


Veremos a continuacin a manera de ejemplo algunos test que como mencionamos
anteriormente se utilizan para comprobar la uniformidad e Independencia de las
secuencias de nmeros generados.
Test de

Este test sirve para probar la uniformidad de la secuencia de los nmeros generados
(aunque se puede utilizar para comprobar otras funciones de distribucin ).
El mtodo consiste en tomar n observaciones independientes de la variable aleatoria
(en nuestro caso los nmeros generados ) que llamaremos X1, X2, ... ,Xn
Se divide el intervalo de variacin de la variable aleatoria (V.A.) en K categoras,
debiendo conocer la probabilidad Ps de que la v.a. caiga en cada categora s.

156

Introduccin a la Investigacin de Operaciones

Sea Ys la cantidad de valores de Xi que caen en la categora s.


Tenemos entonces :
Y1+ Y2+ ... +Yn = n
P1+ P2 + ... + Pn = 1
Construimos el estimador: V =

(Ys nPs )

s =1

nPs

Se puede demostrar que V es una V.A. con distribucin


libertad para n

con k-1 grados de

Se desprende que el n debe ser grande para que el test sea vlido y adems se debe
cumplir que nPs > 5 para todo s.
Para aplicar el mtodo se calcula el valor de V y se analiza el mismo utilizando la
tabla de (ver por ejemplo el Apndice 5 del Hillier-Lieberman).
Dado un nivel de significacin (por ejemplo 0,05 o 95 %) nos fijamos en la tabla el
valor correspondiente a ese nivel y a los k-1 grados de libertad. Si V es mayor que el
valor crtico fijado en la tabla se rechaza la hiptesis de que la V.A. tenga la
distribucin en cuestin y sino se acepta.
Para probar que los nmeros estn uniformemente distribuidos planteamos la
hiptesis de que tienen distribucin uniforme, por lo tanto dividimos el intervalo en K
categoras con la probabilidad de caer en cada una igual a 1/K.
Ejemplo: tomo 10 categoras, 95 % de significacin, me fijo en la tabla de y el
valor crtico es 16,9.
Calculo V, con los Yi obtenidos contando los 1000 Xi generados con el programa ( n
= 1000 ) y con Ps = 1/10 para todo s.
Si para un caso concreto V result ser 3,76 ( o sea menor que 16,9 ) se dice que "se
pasa" la prueba y se puede concluir que el programa genera nmeros aleatorios
uniformemente distribuidos.
Test Serial

Este test sirve para probar la correlacin seria de la secuencia de nmeros observados.
Se agrupa la muestra en pares de valores los cuales deben estar distribuidos
uniformemente y en forma independiente. La muestra es de 2n valores.
Considero las n parejas X2j, X2j+1 con 0j n:
(X 0 , X 1 ) (X 2 , X 3 )
( X 2n 2 , X 2n 1 )
1
2
n 1
Cada pareja tiene probabilidad P(X2j, X2j+1 ) = 1/K, y tendremos K categoras (que
son la cantidad de combinaciones posibles de las parejas de valores ).
Se aplica el test de con K-1 grados de libertad con el mismo criterio que definimos
anteriormente.

157

Introduccin a la Investigacin de Operaciones

Aplicando el mtodo al mismo ejemplo que tomamos en la seccin anterior se calcula


el V pero ahora tendremos 10 = 100 categoras y cada una con Ps = 1/100.

8.7 Generacin de variables aleatorias


Ahora pasemos a ver como sortear variables aleatorias discretas y continuas.
Llamamos sorteo de la v.a. X al proceso de determinacin de un valor de esta v.a. X,
mediante la transformacin de varios valores de otra v.a. u, uniformemente distribuida
en el intervalo U(0,1) llamada esta ltima: semilla del sorteo, generadas con algunos
de los mtodos de la seccin anterior.

8.7.1 Generacin de variables aleatorias discretas


Consideramos la v.a X, cuyos valores posibles son x1, x2,,...,xn con probabilidad
n

respectiva p1, p2,...,pn (por lo tanto


i =1

p i = 1 ).

Dividimos un intervalo 0<y<1 en intervalos de longitud p1, p2,...,pn :


i=1
0

2
p1

3
p1+ p2

n
p1+ p2 +p3

...

1-pn

de tal modo que al intervalo i le corresponden aquellos valores xi que cumplen:


i 1
j =1

p j xi

i
j =1

p ji

entonces cada vez que realicemos un experimento para sortear X, tomamos un valor u
de distribucin U(0,1) y construimos el punto y=u. Si este punto aparece en el
intervalo correspondiente al nmero i aceptamos que X=xi en este sorteo.
La validez de este mtodo se debe a que al estar u uniformemente distribuida en [0,1]
la probabilidad de que u pertenezca a uno de los intervalos es igual a la longitud del
mismo.
P(0 u p1 ) = p1
0

P( p1 u p1 + p 2 ) = p 2
P(1 p n1 u 1) = p n

Ejemplo: Una V.A. X puede tomar los valores : rojo con prob. 1/6, azul con prob. 1/3
y blanco con prob. 1/2. Armo el esquema:
rojo
azul
blanco

Sorteo u =

0
1/6
1/2
blanco
0,1212
X = rojo
0,9432
blanco
0,6111
blanco

158

Introduccin a la Investigacin de Operaciones

0,4343

azul

Generacin de variables aleatorias con distribucin Geomtrica

Se define la V.A. X con distribucin geomtrica donde X es el nmero de pruebas de


Bernoulli (experimento con solo 2 resultados que llamaremos xito o fracaso ) con
xito antes de que ocurra un fracaso en la prueba (X+1)-sima. La v.a. X tiene la
siguiente ley de probabilidad :
P( X = a ) = p a (1 p ) donde p es la probabilidad de xito y (1-p) la de fracaso.
Se puede generar una V.A. geomtrica con el siguiente algoritmo :
1) i := 0
2) Generar u , v.a. U(0,1)
3) Si u p hacer i := i + 1 e ir al paso 2
Sino devolver i como la V.A. geomtrica de parmetro p

8.7.2 Generacin de variables aleatorias continuas


Veremos algunos mtodos para la generacin de v.a. genricas y algn ejemplo de
v.a. particulares.
El Mtodo de la Transformacin Inversa

Se utiliza para generar v.a. continuas.


x

Para generar una v.a. X con distribucin FX ( x ) =

f X (t )dt , tomamos una v.a U de

distribucin uniforme U(0,1) y hacemos X = FX1 (U ) .

Calculando, vemos que P( X x ) = P F X1 (U ) x = P[U F X ( x )] = F X ( x ) , es decir


que la v.a. X generada de esta manera posee la distribucin deseada.
En resumen el mtodo consiste en igualar la funcin de distribucin a una V.A. U
uniforme (0,1) y poder despejar X en funcin de U, como ya sabemos como generar
las V.A. U(0,1), teniendo las mismas generamos las X deseadas.
U = FX ( x )

X = FX1 (U )

El problema se reduce a encontrar una expresin analtica de la funcin inversa a la de


distribucin. Esto no necesariamente es una tarea sencilla, aunque siempre existe
solucin dado que la derivada de FX es fX , que es siempre 0 y montona creciente.
Otro problema con el enfoque es el hecho de que aun cuando se encuentre la
expresin analtica de la inversa de la distribucin, su clculo puede insumir
demasiados recursos.

159

Introduccin a la Investigacin de Operaciones

Interpretacin Geomtrica :

1
FX(x)
u

Ejemplo: Distribucin Uniforme U(a,b)


x
x
1
1
FX ( x ) =
dt ; entonces se toma u =
dt ; integrando llegamos a
a ba
a ba
xa
x = a + u (b a ) , donde x ser una v.a. U(a,b) si tomamos u una v.a.
u=
ba
U(0,1) (que puede ser obtenida a partir de un nmero seudoaleatorio, generado con
los mtodos vistos en la seccin 2).

Ejemplo: Distribucin Exponencial de parmetro a.


FX ( x ) = 1 e ax
e ax = 1 u
ax = ln(1 u ) x = (1 / a) ln(u )
Tomamos u = 1 e ax
ya que tomar la V.A. 1-u es lo mismo que u ( porque u es U(0,1)).

Entonces x = (1 / a) ln(u ) es una v.a. exponencial de parmetro a con u v.a..


U(0,1) que se genera con uno de los mtodos vistos en la seccin 2.

Generacin de variables aleatorias con distribucin Normal(0,1)

X es una V.A. con distribucin N(0,1) si su funcin de densidad f X ( x ) =

1
2

e x

/2

Describiremos el mtodo Polar para la generacin de v.a. N(0,1), ya que la funcin de


distribucin de una v.a. normal no tiene inversa de resolucin analtica.
1) Sean u1 y u2 v.a. de distribucin U(0,1); definimos
v1 = 2u1 1
v2 = 2u2 1
s = v1 + v2
2

2) Si s 1 vuelvo a 1
x1 = v1 2 ln(s ) / 2
Si no tomo
, que son v.a. N(0,1).
x2 = v2 2 ln(s ) / 2

(
(

)
)

160

Introduccin a la Investigacin de Operaciones

El mtodo genera 2 v.a. por vez y se llama Polar porque es equivalente a hacer:
Generar R U(0,1) , U(0,2) y tomar

( )
2 R ln (R ) sen

x1 = 2 R ln R 2 cos
x2 =

Teniendo una v.a. X que sea N(0,1) se pasa directamente a una Y que es N(a,)
2
2
1
con densidad fY ( y ) =
e ( y a ) / 2 , tomando y = x + a es N(a,).
2
Resumiendo, en una simulacin se toman muestras de distribuciones para proveer a
las actividades de tiempos reales, y establecer criterios realistas de decisin.
Puede usarse muchas distribuciones diferentes; muchas veces es necesario hacer
hiptesis sobre a qu distribucin corresponden los eventos que se estudian, esto debe
ser realizado con especial cuidado, basando la eleccin de las distribuciones y los
valores de sus parmetros en informacin recogida o brindada por las personas que
trabajan con el sistema real a simular.

8.8 Mtodo Montecarlo


Los primeros experimentos de simulacin se realizaron en el ao 1940 en EEUU bajo
el nombre de anlisis MonteCarlo. Los pioneros fueron Von Neumann y Ulam que
publicaron un artculo intitulado "The MonteCarlo method" en 1949.
Las primeras aplicaciones realizadas fueron en el campo blico (2da guerra mundial)
para el estudio de la bomba atmica y las armas nucleares, estudiando el
comportamiento aleatorio de los neutrones y su difusin.
El mtodo en si ya era conocido en estadstica, disciplina donde muchos problemas se
resuelven utilizando muestras aleatorias (de hecho, aplicando este mtodo).
Entonces podemos definir el mtodo MonteCarlo como el mtodo numrico de
simulacin que permite resolver problemas matemticos mediante la simulacin de
variables aleatorias.
El nombre proviene del principado de Mnaco, ya que el aparato ms sencillo para
obtener valores aleatorios es la ruleta.
Propiedades y caractersticas importantes del M.M.C.
1) algoritmo de estructura muy sencilla.
Como regla se elabora primero un programa para la realizacin de una prueba
aleatoria (una muestra, por ejemplo: escoger un punto aleatorio en una superficie, y
comprobar si ese punto pertenece o no a una figura de la superficie). Esta prueba se
repite N veces de modo que cada experimento sea independiente de los restantes, y se
toma la media de todos los resultados de los experimentos.

161

Introduccin a la Investigacin de Operaciones

2) El error del valor obtenido es como regla proporcional a la magnitud

2 / N siendo 2 la varianza (constante) y N el nmero de pruebas. De esta forma,


para disminuir el error 10 veces deberemos aumentar N (volumen de trabajo) 100
veces.
Es de notar que es imposible alcanzar una elevada exactitud, por eso el Mtodo Monte
Carlo resulta especialmente eficaz en la solucin de problemas en los que se necesita
conocer los resultados con una exactitud del 5 al 10% (intervalo de confianza 95%,
97,5%). La exactitud de los resultados se puede mejorar con tcnicas de reduccin de
varianza, sin tener que aumentar el volumen de trabajo (N).
Un mismo problema puede ser resuelto utilizando distintas variantes del mtodo, es
decir mediante la simulacin de distintas variables aleatorias.
El mtodo es aplicable en situaciones de diversa ndole:
a) Problemas aleatorios diversos, orientados a eventos o no.
Se resuelven creando un modelo probabilstico artificial, que cumpla con las leyes de
probabilidad que se dan en el sistema real.
Ejemplos:
- estudio de la demanda de energa elctrica en un cierto perodo: depende de
factores puramente aleatorios, como el clima
- juegos de azar
- estudio de la cantidad de barcos llegados a un puerto por da
b) Problemas matemticos determinsticos.
Cuando los problemas determinsticos son imposibles de resolver analticamente o
muy complicados se puede llegar a una solucin aproximada mediante el uso de un
modelo artificial cuyas funciones de distribucin y densidad satisfagan las relaciones
funcionales del problema determinstico.
Ejemplos:
- clculo de integrales mltiples
- ecuaciones diferenciales de orden mayor que dos.
Por ello se puede hablar del MMC como un mtodo universal de resolucin de
problemas matemticos.
Utilicemos el mtodo para calcular el rea de un cuadrado de lado <1.
Planteamos un experimento aleatorio tal que colocamos una tabla como en la figura:
1
S

162

Introduccin a la Investigacin de Operaciones

y hacemos que alguien con los ojos vendados tire dardos a la tabla.
Los dardos van a perforar la tabla en N puntos aleatorios. Cmo podemos estimar el
rea del cuadrado S a partir de esos puntos?
Nos fijamos cuntos puntos estn dentro de S (sean N'); supongamos que N'=5, siendo
N=40. Entonces la estimacin del rea de S est dada por N'/N=5/40=1/8=0,125,
siendo el valor exacto en este dibujo 0,3*0,3=0,09.
Ntese que el rea buscada cumple la relacin N'/N (independiente de la forma del
rea incgnita) y que cuanto mayor sea N ms nos vamos a acercar a la relacin S/1.
Para que este mtodo de calcular el rea tenga validez, los puntos aleatorios deben
estar distribuidos en forma uniforme en la superficie total, y deben ser obtenidos en
forma independiente.
Clculo de

Veremos, a modo de ejemplo, como calcular una aproximacin del valor , mediante
el mtodo MonteCarlo (este problema tiene soluciones eficientes en forma analtica o
numrica).
1) Tomamos un crculo de radio 1 centrado en el origen, sabemos que el rea del
cuarto de crculo inscrito en el ortante positivo es /4.
2) Sorteamos puntos en el ortante positivo de lado 1 y lo hacemos obteniendo dos
valores, uno para x (abscisa) y otro para y (ordenada) cada vez, obteniendo un
punto (x,y).
3) Contamos cuantos puntos de los sorteados caen dentro del rea del cuarto de
crculo (In) y cuntos fuera (Out), sabiendo que si x2+y2>1 el punto est fuera, y si
no dentro.
4) El valor estimado del rea que queremos hallar es In/(In+Out), y ese valor ser
aproximadamente el de /4, por lo que ser aproximadamente igual a 4*
In/(In+Out) (en este caso, N=In+Out).
Esta forma de calcular es relativamente lenta y poco precisa, pero muestra la forma
de utilizar MonteCarlo, que en el caso de otras constantes es el nico mtodo
disponible.
Justificacin terica

Sea X una v.a. con esperanza E(X) = m y varianza Var(X) = . Tomo una
sucesin de n v.a. Xi independientes y con igual distribucin , siendo E(Xi) = m y
Var(Xi) = .
Por el teorema Central del Lmite la v.a. Z = X1 + X2 + X3 + .... + Xn se aproxima (y es
asintticamente igual) a una v.a. con distribucin normal N(nm, n).

163

Introduccin a la Investigacin de Operaciones

Aplicando la "regla de las 3", tenemos que para una v.a. Y de distribucin N(a, ):
a 3

fY (t )dt = 0,997

a 3

siendo fY(t) la funcin de


P(a 3 Y a + 3 ) 0,997 .

densidad

de

la

v.a.

Y,

por

lo

que

Aplicando esto a la V.A. Z tenemos :


P Nm 3 N Z Nm + 3 N 0,997

(
)
P (m 3 / N Z / N m + 3 / N ) 0,997
P ( 3 / N Z / N m 3 / N ) 0,997
P ( Z / N m 3 / N ) 0,997
P

X i / N m 3 / N 0,997

Lo que significa que podemos estimar m , es decir la esperanza o valor medio de la


v.a. X, calculando el promedio de las distintas muestras obtenidas: ( X i )/ N ,
sabiendo que con probabilidad muy cercana a 1, el error de este promedio est
acotado por la cifra 3/N. Esto sugiere que para que el mtodo tenga un buen
resultado N debe ser grande y pequea, por lo que es importante saber cual es el
valor de la varianza obtenida, con ello sabemos cul es la dispersin de las muestras
obtenidas.
La varianza 2 se estima con el siguiente clculo:
1
Var ( X )
N 1

N
j =1

(X )

N
j =1

Xj

Se debe tener especial cuidado en que todas las N corridas sean independientes entre
s, para asegurar que los valores Xi son muestras de v.a. independientes y que por lo
tanto estamos dentro de las hiptesis del teorema central del lmite.
Esta independencia se asegura utilizando distintas semillas en el sorteo de las v.a. Xi ,
de acuerdo a lo visto en las secciones anteriores.

164

Anda mungkin juga menyukai