APUNTES DE INVESTIGACIÓN DE OPERACIONES II
Compilado por:
Ing. Jorge Octavio Garza Quintanilla Ing. José Guadalupe Navarro Coronado
2
INDICE Unidad 1. REDES 1.1 El problema de la ruta más corta 1.2 El problema de árbol de extensión mínima 1.3 El problema de flujo máximo 1.4 Ejercicios
4
Unidad 2. PROCESOS DE MARKOV 2.1 Conceptos de Cadenas de Markov 2.2 Diagrama de Arbol 2.3 Aplicación de Matriz de Transición 2.4 Análisis de Estado Estable 2.5 Ejercicios
27
Unidad 3. ANALISIS DE DECISIONES 3.1 Estructuración del problema de decisión 3.2 Toma de decisiones sin probabilidad 3.3 Toma de decisiones con probabilidad 3.4 Analisis de Sensibilidad 3.5 Análisis de decisiones con información muestral 3.6 Elaboración de una estrategia de decisión 3.7 Eficiencia de la información 3.8 Ejercicios
39
Unidad 4. PROCESO ANALITICO DE JERARQUIAS 4.1 Desarrollo de la jerarquía 4.2 Establecimiento de prioridades utilizando el PAJ 4.3 Procedimiento para sintetizar juicios 4.4 Obtención de la relación de consistencia 4.5 Desarrollo de una jerarquía global de prioridades 4.6 Ejercicios
53
Unidad 5. PROGRAMACION DINAMICA 5.1. Enfoque de programación dinámica 5.1.1. Programación Dinámica Determinantica 5.1.2. Programación Dinámica Probabilística 5.2. Modelos de Programación Dinámica 5.2.1. Problema de la Diligencia 5.2.2. La ruta Corta 5.2.3. El problema de la mochila 5.2.4. Los Modelos de inventarios 5.3. Problemario
68
Unidad 6. SIMULACIÒN 6.1 Introducción 6.2. Simulaciones empíricas 6.2.1. Teoría sobre distribuciones continuas y discretas
95
3
6.2.2. Frecuencia relativa 6.2.3. Teoría sobre números aleatorios y generadores de proceso 6.2.4. Simulación Montecarlo 6.3. Aplicaciones 6.3.1. Utilización de la simulación en una línea de espera 6.3.2. Mejoramiento del diseño de sistemas 6.3.3. Aplicación a un sistema de inventarios Unidad 7. PROMODEL 7.1. Conceptos de PROMODEL 7.2. Instrucciones para programar en PROMODEL 7.3. Pasos para programar en PROMODEL 7.4. Reglas de simulación empleando PROMODEL 7.5. Problemas resueltos empleando PROMODEL 7.6. Problemas para resolver
4
122
INTRODUCCIÓN Uno de los aspectos importantes para el estudiante universitario es la relación que debe de existir entre los conceptos y su práctica profesional. El material presente pretende establecer la vinculación de la Investigación de Operaciones II con actividades prácticas que mejoren la calidad del desarrollo profesional del estudiante. Lo anterior queda manifestado en el material que se desarrolló en forma teórica y práctica con ejemplos para poder ver la aplicación de la Investigación de Operaciones.
OBJETIVO GENERAL Dar a los alumnos los conocimientos necesarios acerca de cómo aplicar las técnicas de solución de investigación de operaciones, así como su importancia y utilización en la solución de problemas. Al término del curso será capaz de aplicar métodos, técnicas e instrumentos cuantitativos a problemas que aplican al funcionamiento de un sistema productivo, con la finalidad de proporcionar soluciones óptimas para alcanzar el control del sistema.
5
UNIDAD 1 OBJETIVO PARTICULAR DE LA UNIDAD Al término de la unidad el estudiante aplicará y conocerá los conceptos fundamentales y diferentes tipos de redes utilizadas en la solución de problemas.
OBJETIVOS ESPECÍFICOS Modelos de Redes Algoritmo de la ruta más corta Arbol de extensión mínimo Respuesta óptima Flujo Máximo Algoritmo de flujo máximo Casos prácticos
6
UNIDAD 1: MODELOS DE REDES Se han resuelto exitosamente muchos problemas administrativos en áreas como diseño de sistemas de transporte y de sistemas de información, y programación de proyectos, con ayuda de modelos de redes y con técnicas de análisis de redes. En investigación de operaciones I se ha mostrado la forma en que se pueden utilizar las redes, que consisten en diagramas de nodos y arcos, para ofrecer representaciones gráficas de problemas de transporte, asignación y transbordo. En esta unidad se exponen tres problemas adicionales de redes. El problema de la ruta más corta, el problema del árbol de expansión mínima y el problema del flujo máximo. En cada caso se muestra la forma en la que puede desarrollarse y resolverse un modelo de red para obtener una solución óptima para el problema. 1.1 EL PROBLEMA DE LA RUTA MÁS CORTA En esta sección se revisa una aplicación de redes en la que el objetivo primordial consiste en determinar la rula más corta o el camino más reducido a través de la red. Se ilustra el problema de la ruta más corta considerando la situación que enfrenta la Gorman Contruction Company. La Gorman tiene diversos proyectos de construcción distribuidos en una área de tres condados. En ocasiones los sitios de las construcciones se ubican hasta a 50 millas de distancia de la oficina general de la empresa. Como se efectúan varios viajes al día para llevar personal, equipo y suministros, hacia y desde los lugares de construcción, los costos relacionados con las actividades de transporte son importantes. Se pueden describir mediante una red de calles, carreteras y autopistas las alternativas de transporte entre los sitios y la oficina, para cualquier lugar de construcción determinado. En la red que se muestra en la Fig. 9.1
se describen las alternativas de viaje entre 6 de los lugares de construcción más recientes de la Gorman. Los pequeños círculos o nodos de la red corresponden a los lugares. Las calles, carteleras y autopistas son los arcos de la misma. Sobre los arcos correspondientes se indican las distancias entre los lugares. Obsérvese que la longitud de los arcos no corresponde necesariarnente, en forma proporcional, a la distancia que se recorre. La firma Gorman pretende determinar las rutas o trayectos que minimizarán la distancia total que se viaja desde la oficina hasta cada sitio.
7
El algoritmo de ruta más corta Para resolver el problema es necesario determinar la vía más corta desde sus oficinas (el nodo 1), hasta cada uno de los otros nodos de la red. El algoritmo que se presenta utiliza un procedimiento de rotulación para encontrar la distancia más reducida desde el nodo 1 hasta cada uno de los demás. Conforme se ejecutan los pasos del procedimiento de rotulación, se elabora un rótulo (o etiqueta) para cada nodo, el cual consta de dos números encerrados entre corchetes. El primer número del rótulo de un nodo especifico señala la distancia desde el nodo 1 hasta ese nodo, en tanto que el segundo indica el nodo precedente sobre la ruta, desde el nodo 1 hasta ese nodo. Se coloca la etiqueta para cada nodo directamente encima o abajo del nodo. Por ejemplo, un rótulo para un nodo específico podría ser como se muestra en la Fig. 9.2.
En cualquier etapa del procedimiento de rotulación, se dice que un nodo está rotulado o no. Un nodo con rótulo es aquél en que ya se ha identificado un camino desde el nodo 1 hasta ese nodo, y un nodo no rotulado es obviamente el que no tiene todavía un camino marcado. Para los nodos rotulados, se dice también que el nodo ha sido etiquetado en forma permanente o en forma tentativa. Es decir, cuando el algoritmo ha permitido determinar la distancia más corta desde el nodo 1 hasta un nodo específico, se dice que tal nodo ha sido rotulado en forma permanente. Sin embargo, si no se ha determinado todavía la distancia más corta desde el nodo 1 hasta un nodo específico con rótulo, se dice que el nodo tiene una marcación tentativa. Ahora que se tiene ya idea de lo que son los nodos, se procederá a revisar la forma en la que se determinan las etiquetas y la forma en que se puede utilizar el proceso de etiquetación para determinar la ruta más corta desde el nodo 1 hasta cada uno de los otros nodos de la red. Se inicia el proceso de rotulación asociando al nodo 1 la etiqueta permanente [0,I]. La I simplemente señala que el nodo 1 es el inicial, y el 0, que la distancia entre el nodo 1 y el mismo nodo 1 es cero. Para diferenciar entre nodos con rótulos tentativos y permanentes, se sigue la práctica de indicar sombreados todos los nodos con etiqueta permanente en la red. Además, se utiliza una flecha para señalar el nodo con etiqueta permanente que se investiga en cada uno de los pasos del algoritmo de rotulación. La identificación inicial de la red para la empresa Gorman se muestra en la Fig. 9.3. El único nodo con marcado permanente es el 1. Para realizar el primer paso o iteración del procedimiento de rotulado, se debe considerar que cada nodo puede alcanzarse en forma directa desde el nodo 1; por ello, se observan los nodos 2 y 3. Considérese por el momento el nodo 2. Se observa que la distancia directa desde el nodo 1 al nodo 2 es de 15 millas. Por tanto, puede asignarse tentativamente la etiqueta [15,1] al nodo 2. El primer número de la etiqueta señala que se puede llegar al nodo 2 recorriendo 15 millas, y el segundo número indica que el nodo que precede al nodo 2 sobre la ruta es el nodo 1. Considerando ahora el nodo 3, se encuentra que la distancia directa del nodo 1 al nodo 3 es
8
de 10 millas. Por ello, la etiqueta tentativa del nodo 3 es [10,1]. En la Fig. 9.4 se muestran los resultados obtenidos hasta este punto. Las etiquetas de los nodos 2 y 3 son tentativas.
En referencia a la Fig. 9.4, se consideran ahora todos los nodos que tienen rótulos tentativos y se identifica el que tiene el menor valor de distancia; así, se elige el nodo 3. La etiqueta tentativa correspondiente al nodo 3 señala que se puede llegar a él partiendo del nodo 1, recorriendo una distancia de 10 millas. ¿Se podría llegar al nodo 3 siguiendo una ruta más corta? Como cualquier otra ruta hacia el nodo 3 haría necesario pasar por otros, y como la distancia desde el nodo 1 a todos los demás nodos es mayor que o igual a 10, no puede encontrarse ninguna otra vía más corta para que el nodo 3 pase por cualquier otro nodo. Así, ya se ha identificado la ruta más corta — o mejor — para llegar al nodo 3 y, por tanto, se
etiqueta en forma permanente tal nodo con una distancia de 10 millas. Sombreando dicho nodo 3 para señalar que es uno con etiqueta permanente, y añadiendo una flecha para indicar que se utilizará el nodo 3 para iniciar el siguiente paso del proceso de rotulación, se obtiene la red que se muestra en la Fig. 9.5.
9
Se continúan considerando todos los nodos que no tienen etiqueta permanente y que pueden alcanzarse en forma directa desde el nodo 3. Por ello, se evalúan los nodos 2 y 5. Obsérvese que la distancia directa del nodo 3 al nodo 2 es de 3 millas, y la distancia directa del nodo 3 al nodo 5 es de 4 millas. Como la etiqueta permanente para el nodo 3 indica que ia distancia más corta para llegar al nodo 3 es de 10 millas, se observa que se puede llegar al nodo 2 en 10 + 3 = 13 millas, y al nodo 5 en 10 + 4 = 14 millas. Por ello, se modifica la etiqueta tentativa del nodo 2, y se le asigna [13,3] para indicar que ya se ha encontrado ahora una ruta que va del nodo 1 al nodo 2, que tiene una distancia de 13 millas y que el nodo que precede al nodo 2 en la ruta es el 3. De manera similar, la etiqueta tentativa para el nodo 5 es [14,3]. En la Fig. 9.6 se muestran los cálculos que se han elaborado sobre la red hasta este punto.
En seguida se consideran todos los nodos con etiquetas tentativas para identificar el que enga el menor valor de distancia en su etiqueta. Se observa en la Fig. 9.6 que este nodo es el 2, con un valor de 13 millas de distancia. Se declara ahora al nodo 2 permanentemente etiquetado, debido a que se puede llegar ahora al 2, desde el nodo 1, con la menor distancia )osible de 13 millas, pasando por el 3. El siguiente paso o iteración comienza en el nodo 2, el que se ha etiquetado en forma permanente más recientemente. Al igual que antes, se consideran todos los nodos que no tienen etiquetas permanentes y que se pueden alcanzar en forma directa desde el nodo 2; es
10
decir, los nodos 4 y 7. Comenzando con el valor de la distancia de 13 en la etiqueta permanente del nodo 2, y sumando la distancia del nodo 2 al nodo 4 y al nodo 7, se observa que puede llegarse al nodo 4 en 13 + 6 = 19 millas, mientras que, por otro lado, puede legarse al nodo 7 en 13 + 17 = 30 millas. Por ello, las etiquetas tentativas de los nodos 4 y 7 son las que se muestran en la Fig. 9.7.
De entre los nodos con rótulos tentativos (nodos 4, 5 y 7), se elige el que tenga la menor distancia y se le declara permanentemente etiquetado. Por ello, el nodo 5, con una distancia de 14, se convierte en el nuevo nodo con rótulo permanente. Después, se consideran todos los nodos que no tienen etiqueta permanente y a los que se puede llegar en forma directa desde el nodo 5. Así, se modifica la marca tentativa del nodo 4, y se asigna una tentativa al nodo 6. En la Fig. 9.8 se ilustran estos cálculos.
Identificando la menor distancia para los nodos restantes con etiquetas tentativas se observa que es el nodo 6 al que se asigna una etiqueta permanente. A partir del 6 puede determinarse una nueva etiqueta tentativa para el nodo 7. Después de este paso, la red tiene la apariencia mostrada en la Fig. 9.9.
11
Se tienen ahora sólo otros dos nodos sin marcado permanente. Como la distancia señalada en la etiqueta del nodo 4 es menor que el valor de la distancia en el nodo 7, el nodo 4 se convierte en el nodo con etiquetado permanente. Como el 7 es el único nodo con rótulo no permanente al que se puede llegar directo desde el nodo 4, se compara el valor de la distancia de 22 que aparece en su etiqueta con la suma de la distancia del nodo 4 y la distancia directa para pasar del nodo 4 al 7. En este caso, la etiqueta tentativa de [22,6], que es la etiqueta que ya existe en el nodo 7, tiene el menor valor de distancia; por ello, no se modifica la etiqueta tentativa del nodo 7. En la Fig. 9.10, se muestra la red en este punto del tiempo.
Como el nodo 7 es el único que queda con una rotulación tentativa, se le asigna ahora una permanente. Cuando ya se han etiquetado en forma permanente todos los nodos, se ha determinado así la ruta más corta desde el nodo 1 hasta cada uno de los nodos de la red. En la Fig. 9.11 se muestra la red final con todos los nodos con etiquetado permanentes.
12
Puede utilizarse la información que aparece en las etiquetas permanentes para determinar la ruta más corta desde el nodo 1 hasta cada uno de los demás nodos de la red. Por ejemplo, la etiqueta permanente del nodo 7 indica que la distancia más corta desde el nodo 1 a! nodo 7 es de 22 millas. Para encontrar la ruta específica que permite llegar al nodo 7 en 22 millas, se observa que la etiqueta del nodo 7 indica que el nodo precedente sobre la ruta más corta que viene del nodo 1 es el 6. Volviendo hacia atrás sobre la red, para llegar al nodo 6, se observa en su etiqueta permanente que se llegó al nodo 6 proviniendo del 5. Continuando este proceso, se observa que se llegó al nodo 5 partiendo del nodo 3 v finalmente que se llegó a este nodo 3 partiendo del nodo 1. Por ello, la ruta más corta desde el nodo 1 al nodo 7 es la 13-5-6-7. Utilizando este procedimiento, se identifican las siguientes rutas más cortas para la red de transporte de la compañía Gorman: Nodo Ruta más corta desde el nodo 1 2 1-3-2 3 1-3 4 1-3-5-4 5 1-3-5 6 1-3-5-6 7 1-3-5-6-7
Distancia en millas 13 10 18 14 16 22
Es posible que para un problema tan pequeño como el de la Gorman se hubieran podido encontrar las rutas más cortas con la misma rapidez, —si no es que mayor— mediante simple examen. Sin embargo, cuando se comienzan a investigar problemas con 15, 20 o más nodos, encontrar las rutas más cortas mediante inspección se convertiría en un intento sumamente laborioso. De hecho, y debido al mayor número de rutas alternas en una red de mayor tamaño, es muy fácil saltarse una o rnás rutas y llegar a una respuesta equivocada. Por ello, para los problemas más grandes se requiere un procedimiento sistemático como el de rotulado o etiquetación que se describió. Aun con tal método se llega al caso en el que, al crecer el tamaño de las redes, se vuelve necesario implantar el algoritmo en una computadora Para llegar a un resumen del algoritmo de la ruta más corta, considérese una red que consta de N nodos. Se puede utilizar el siguiente procedimiento para encontrar la ruta más corta que va del nodo 1 hasta cada uno de los otros nodos de la red:
13
Paso 1. Asignar al nodo 1 al rótulo permanente [O, I]; la I indica que el nodo inicial; y el 0, que la distancia del nodo 1 hacia sí mismo es cero. Paso 2. Determinar rótulos tentativos para los nodos a los que puede llegarse en forma directa desde el nodo 1. El primer número de cada marcación es la distancia directa entre el nodo 1 y el nodo en cuestión; a esta parte de la etiqueta se la denomina valor de distancia. El segundo número de cada rótulo, al que se denomina valor del nodo precedente, señala el nodo que antecede en la ruta desde el nodo 1 hasta el nodo en cuestión. Por ello, en este paso, el valor de tal nodo es 1, puesto que sólo se consideran los nodos a los que se puede llegar en forma directa desde el 1. Paso 3. Identificar el nodo con la etiqueta tentativa que tenga el menor valor de distancia, y considerarlo como rotulado en forma permanente. Si todos los nudos tienen etiquetas permanentes, ir al paso 5. Paso 4. Considérense todos los nodos que no tienen marcación permanente y a los que se puede llegar en forma directa desde el nuevo nodo con el rótulo permanente que se estableció en el paso 3. Calcular para estos nodos las etiquetas tentativas de la siguiente manera: a) Si el nodo que carece de etiqueta permanente y que se considera, tiene una marcación tentativa, obtener la suma del valor de distancia del nuevo nodo etiquetado permanentemente, y la distancia directa de este último nodo al nodo en cuestión. Si esta suma es inferior al valor de la distancia del nodo considerado, igualar a esta suma el valor de distancia para este nodo; además, hacer que el valor del nodo precedente sea igual al nodo recién marcado como permanente y que arrojó la menor distancia. Continuar con el paso 3. b) Si el nodo que no tiene etiqueta permanente y que se está evaluando carece de rótulo tentativo, se crea una con valor de distancia igual a la suma del valor de distancia en el nuevo nodo etiquetado como permanente y la distancia directa desde este nodo al que recientemente se le asignó la marcación permanente hasta el nodo en cuestión. El valor del nodo precedente es igual al nodo recién etiquetado en forma permanente. Ir al paso 3. Paso 5. Los rótulos permanentes identifican la distancia más corta desde el nodo 1 hasta cada uno de los demás nodos, y el nuevo precedente sobre la ruta más corta. Se puede encontrar la ruta más corta hasta un determinado nodo, partiendo de éste, y yendo hacia sus nodos precedentes. Continuando esta acción hacia atrás en la red se obtiene una ruta más corta desde el nodo 1 hasta el nodo en cuestión. El algoritmo anterior permite determinar la distancia más corta desde el nodo 1 hasta cada o de los demás nodos de la red. Obsérvese que se requieren N - 1 iteraciones del algoritmo para encontrar la ruta más corta hacia todos los nodos. Si no se requiere la distancia más corta a cada nodo, se puede detener el algoritmo cuando ya se han asignado etiquetas permanentes a los nodos que sí interesan. Es fácil también modificar el algoritmo para encontrar distancia más corta desde cualquier nodo —por ejemplo el nodo k— a todos los demás dos de la red. Para ese cambio, simplemente se comienza asignando la etiqueta permanente [0,S] al nodo k. Después, aplicando los pasos del algoritmo, puede obtenerse la ruta más corta desde el nodo k hasta cada uno de los otros nodos. NOTAS. Y COMENTARIOS Muchas aplicaciones del algoritmo de la ruta más corta implican criterios como tiempo y costo, en vez de distancia. En estos casos, el algoritmo de la ruta más corta da corno solución el costo mínimo o el tiempo mínimo. Sin embargo, como el algoritmo de la ruta más corta siempre identifica una solución de valor mínimo, no tendría sentido aplicarlo a problemas que se refieran a criterios de utilidad, En algunas aplicaciones puede ser negativo el valor correspondiente a algún arco. Por ejemplo, en situaciones en las que el criterio es el costo, un arco con valor negativo denotaría un costo negativo; en otras palabras, se lograría una utilidad al circular por ese arco. El
14
algoritmo de la ruta más corta que se presentó en esta sección puede aplicarse solamente a redes con valores no negamos en los arcos.
1.2 EL PROBLEMA DEL ÁRBOL DE EXTENSIÓN MÍNIMA En terminología de redes, el problema del árbol de extensión (o expansión) mínima se refiere a utilizar las ramas (arcos) de la red para llegar a todos los nodos de la red, de manera que se minimice la longitud total de todas las ramas. Para comprender mejor este problema, se considerará el problema de diseño de un sistema de comunicaciones que afronta un centro regional de cómputo. El Centro Regional de Cómputo del Suroeste debe instalar líneas especiales para comunicación computacional, a fin de conectar a cinco usuarios satélite con una nueva computadora central. La compañía telefónica local es la que instalará la nueva red de comunicaciones. Sin embargo, la instalación es una operación costosa. Con el propósito de reducir los costos. El grupo de administración del centro desea que la longitud total de estas nuevas líneas de comunicación sea lo mas pequeña posible. Aunque se podría conectar la computadora en forma directa a cada usuario, parece que sería más económico instalar una directa hacia algunos usuarios, y permitir que otros se enlacen con el sistema a través de los usuarios ya conectados- La determinación de este diseño de sistema de comunicaciones con longitud mínima es un ejemplo del árbol de extensión mínima. En la fig 9.13 se muestra la red para este problema, con las alternativas de conexión posible y las correspondientes distancias. En seguida se explica un algoritmo que puede utilizarse para resolver este modelo de red.
Algoritmo para el árbol de extensión mínima El algoritmo de red que puede utilizarse para resolver el problema del árbol de expansión mínima es muy sencillo. Los pasos del algoritmo son los siguientes: Paso 1. Comenzar en forma arbitraria en cualquier nodo y conectarlo con el nodo más próximo. A estos dos nodos se les denomina nodos conectados o conexos y a los nodos restantes se les denomina nodos no conectados o inconexos.
15
Paso 2, Identificar el nodo no conectado que esté más cerca de uno de los conectados. Deshacer los empates en forma arbitraria si son dos o más los nodos que califican como nodo más cercano. Agregar este nodo al conjunto de nodos conectados. Repetir este paso hasta que se hayan conectado todos los nodos. Es fácil implantar este algoritmo de red al tomar las decisiones sobre conexión en forma directa en ia gráfica de la red. Con referencia a la red de comunicaciones del centro regional de cómputo, y comenzando arbitrariamente en el nodo 1. se encuentra que el nodo más próximo es el 2, con distancia 20. Utilizando línea gruesa para marcar los enlaces con los nodos 1 y 2, el paso 1 de! algoritmo arroja el siguiente resultado:
En el paso 2 del algoritmo se encuentra que el nodo inconexo que está más cerca de uno de los nodos conexos es el 4, con distancia de 30 millas desde el nodo 1. Añadiendo el nodo 4 al conjunto de nodos conectados se obtiene el siguiente resultado:
Repitiendo el paso de agregar siempre el nodo no conectado que esté más próximo al conjunto de nodos conexos de la red se obtiene la solución del árbol de extensión mínima que se muestra en la Fig. 9.14. El lector puede seguir los pasos del algoritmo y verificar que se obtiene esta solución. La menor longitud del árbol está dada por la suma de las distancias de los arcos que forman el árbol de extensión mínima. En este caso, la distancia total es 110 millas para la red de comunicaciones del centro de cómputo. Obsérvese que aunque se midieron los arcos de la red computacional en términos de distancia, es posible medir otros modelos de red en términos de otros criterios como costos, tiempo, etcétera. En estos casos,
16
el algoritmo del árbol de extensión mínima permite identificar la solución óptima (costo mínimo, tiempo mínimo) para el criterio que se considera. En la Fig. 9.15 se muestra la solución computadorizada para el problema del centro regional de comunicación. La solución del árbol de extensión o expansión mínima es de 110 millas.
Se considera que el algoritmo del árbol de extensión mínima es un algoritmo ambicioso. puesto que se puede ser "ambicioso" en cada etapa, y emprender la mejor acción que esté disponible en tal fase. Siguiendo esta estrategia, en todas las etapas se llega a la solución óptima global. Algoritmos ambiciosos, tales como el algoritmo del árbol de extensión mínima, son raros pues son muy pocos los problemas en los que este método garantiza una solución óptima.
1.2 EL PROBLEMA DEL FLUJO MÁXIMO Considérese una red con un nodo de entrada, o nodo fuente, y uno de salida, o nodo annfuente. El problema del flujo máximo pregunta, ¿cuál es la cantidad máxima de flujo (es decir, vehículos, mensajes, líquidos, etc.) que puede entrar y salir del sistema de red en un periodo determinado de tiempo? En este problema se intenta transmitir flujo sobre todas las ramas (arcos) de la red en la forma más eficiente posible. La cantidad de flujo está limitada debido a restricciones de capacidad en las diversas ramas de la red. Por ejemplo, los tipos de carreteras limitan el flujo de vehículos en un sistema de transporte, en tanto que los diámetros de las tuberías limitan el flujo de petróleo en un sistema de distribución. Al límite máximo o superior sobre el flujo de una rama se le denomina la capacidad de i flujo de la rama. Aunque no se especifican cantidades para los nodos, se supone que el flujo que sale de un nodo es igual al flujo que ingresa. Como ejemplo del problema de flujo máximo, considérese el sistema interestatal de carreteras norte-sur, que pasa por Cincinnati, Ohio. El flujo de vehículos norte-sur llega a un nivel de 15 000 vehículos per hora en las horas pico. Debido a un programa de mantenimiento de carreteras en verano, que exige el cierre temporal de carriles y una reducción en los límites de velocidad, un comité de planeación del transporte ha propuesto una red de rutas alternativas que pasa por Cincinnati. Las rutas alternativas incluyen otras carreteras, así como también calles de la ciudad. Debido a diferencias de velocidad y a los patrones de tráfico, las capacidades de flujo varían dependiendo de las calles o carreteras específicas que se utilizan. En la Fig. 9.16 se muestra la red que se propone, incluyendo las capacidades de flujo sobre las ramas.
17
Las capacidades de flujo se basan en la dirección del flujo. Por ejemplo, la sección de carretera, o rama, 1-2 muestra una capacidad de 5 000 vehículos por hora en el sentido 1 -2; sin embargo, existe una capacidad de O en sentido 2-1. Esto significa que quienes planearon la red de carreteras no desean que fluyan vehículos del nodo 2 hacia el nodo 1. En términos lógicos, como el nodo 1 es la entrada; o fuente, y un sitio potencial de congestionamientos, sería indeseable permitir que fluya el tráfico hacia la intersección del nodo 1, proviniendo del nodo 2. Se pueden interpretar también las capacidades direccionales de la rama 1-2 suponiendo que indican una calle que tiene un solo sentido y que sale desde la intersección del nodo 1. En cualquier caso, este ejemplo muestra que las capacidades de flujo de las ramas pueden depender de la dirección del flujo. ¿Considera que la red del sistema de carreteras que se muestra en la Fig. 9.16 puede dar cabida a un flujo máximo, norte-sur, de 15 000 vehículos por hora? ¿Cuál es el flujo máximo de vehículos que permite la red cada hora? ¿Qué tanto flujo se debe canalizar sobre cada rama? Un algoritmo de flujo máximo Como se verá más adelante, el algoritmo de flujo máximo que se presenta en esta sección utilizan el siguiente método de sentido común: 1) Encontrar cualquier camino del nodo de entrada (fuente) al nodo de salida (antifuente) que tenga capacidades de flujo, en el sentido del flujo, mayores de cero para todas las ramas del camino. 2) Incrementar, en la medida de lo posible, el flujo sobre ese camino. 3 ) Continuar buscando caminos que vayan de fuentes a depósitos y que sigan teniendo capacidades mayores de cero para todas las ramas, en el sentido del flujo, y aumentar el flujo sobre esos caminos tanto como sea posible. 4) Detenerse cuando ya no sea posible encontrar un camino desde una fuente hasta un depósito que tenga capacidades de flujo superiores a cero en el sentido del flujo para todas las ramas del camino. Antes de presentar los detalles del algoritmo de flujo máximo, se revisa en forma breve un procedimiento que asegura que las anteriores etapas intuitivas dan como resultado una solución óptima para el problema de encontrar el flujo máximo desde un nodo fuente hasta un
18
nodo antifuente. El procedimiento permite que un flujo previamente asignado tome una ruta alternativa, permitiendo flujos ficticios en el sentido inverso. Por ejemplo, considérese la rama 3-6:
Aquí se observa que la capacidad inicial del flujo en el sentido 3-6 es de 7 000 vehículos por hora, y que no se permite flujo en el sentido 6.3. Si se decide permitir que fluyan 6 000 vehículos por hora en el sentido 6-3, se modificaría la capacidad de flujo de la siguiente manera:
Obsérvese que se ha disminuido la capacidad de flujo en el sentido 3-6 en 6 000 vehículos por hora, y que se ha aumentado simultáneamente la capacidad de flujo en el sentido 6-3 en la misma cantidad. La capacidad de flujo modificada de 1000 vehículos por hora en el sentido 3-6 se interpreta fácilmente como la capacidad restante de flujo en esa rama. Sin embarco, obsérvese que el señuelo 6-3 que tenía una capacidad inicial de flujo cero muestra ahora una capacidad modificada de flujo de 6000 vehículos por hora. En realidad. esta capacidad modificado en el sentido 6-3 muestra que se permite un flujo ficticio de hasta 6000 vehículos por hora en ese sentido. Tal flujo no haría que se enviaran vehículos en el sentido 6-3, sino que simplemente disminuiría la magnitud del flujo que se comprometió originalmente en el sentido 3-6 de la rama. En electo, el flujo ficticio en el sentido 6-3 daría como resultado la desviación del flujo que originalmente se había comprometido en el sentido 3-6, hacia otras ramas de la red. El proceso anterior de rastrear las capacidades de flujo es una parte impórtame de! algoritmo de flujo máximo. Por ejemplo, en algún paso anterior de algoritmo se hubiera podido comprometer flujo sobre cierta rama. Posteriormente, y debido a flujos identificados en otras ramas, pudiera ser deseable disminuir el flujo sobre la rama original. El procedimiento que se acaba de describir permite identificar la medida en la que la decisión original de comprometer determinado flujo debe modificarse para aumentar el flujo total que pasa por la red. Se revisan en seguida los pasos del algoritmo de flujo máximo. Paso 1. Encontrar cualquier camino que vaya del nodo origen al nodo de depósito y que tenga capacidades de flujo mayores que cero para todas las ramas del camino, en el sentido del flujo. Si no hay camino disponible, ya se ha llegado a la solución óptima. Paso 2. Encontrar la menor capacidad de la rama, Pf sobre el camino que se eligió en el paso 1. Aumentar el flujo sobre la red enviando una cantidad de Pf sobre el camino elegido en el paso 1. Paso 3. Para el camino que se seleccionó en el paso 1, reducir todas las capacidades de flujo de las ramas en el sentido del flujo, en Pf y aumentar las capacidades de flujo de las ramas en el sentido contrario, en la misma cantidad, Pf. Volver al paso 1. Aunque el procedimiento varía dependiendo de la selección que haga el analista para la ruta del paso 1, el algoritmo proporciona en algún momento dado la solución del flujo máximo. Los cálculos para la red de flujo en carretera son los siguientes:
19
Iteración 1 El camino seleccionado es 1-3-6-7; Pf que se determina mediante la rama 1-3, es 6. La red modificada es la siguiente:
Iteración 2 El camino seleccionado es 1-2-5-7; Pf que queda determinada por la rama 2-5, es 3. La 1 modificada es la siguiente:
Obsérvese que puede evaluarse el flujo total que pasa por la red sumando los valores de Pf en cada iteración. Aunque no se muestra la red modificada después de cada iteración, el lector debe intentar actualizar las capacidades de flujo sobre la red conforme se sigue el análisis. Por ejemplo, qué apariencia tendría esta red después de realizar las siguientes tres iteraciones? Iteración 3 El camino seleccionado es 1-2-3-5-7; Pf, que está determinada por la rama 1-2 (o 2-3). es 2. Iteración 4 El camino seleccionado es 1-4-6-7; que está determinada por la rama 6-7, es 1. Iteración 5 El camino seleccionado es 1-4-6-5-7; Pf, que queda determinada por la rama 6-5, es 1
20
En este punto, se tiene un flujo total de 13,000 vehículos por hora, y las capacidades modificadas en la red son las siguientes:
¿Existen cualesquiera otros caminos que vayan del nodo 1 al nodo 7 y que tengan capacidades de flujo, en el sentido del flujo, superiores a O? Ensayando 1-4-6-3-5-7, con un flujo de Pr determinado por la rama 3-5, se aumenta el flujo a 14 000 vehículos por hora. Sin embargo, según se puede ver en la siguiente red modificada, ya no hay más caminos del nodo 1 al nodo 7 que tengan capacidades de flujo superiores a O en todas las ramas del camino. Por ello, el flujo máximo para esta red es de 14 000 vehículos por hora.
Nótese que se permitió un flujo de I,000 vehículos por hora en el sentido 6-3 en la iteración 6. Sin embargo, a partir de la red inicial se sabe que la capacidad de flujo en el sentido 6-3 es de cero; por ello, las 1,000 unidades de flujo en el sentido 6-3 representan un flujo ficticio. F.1 efecto real de este flujo es desviar 1,000 unidades del flujo que originalmente se había comprometido a la rama 3-6 en la iteración 1, hacia la rama 3-5, para poder lograr el 000 unidades mas de flujo sobre la red. Se determina ahora la cantidad y el sentido del flujo en cada rama, de manera que se pueden lograr los 14,000 vehículos de flujo total por hora. Se pueden encontrar los flujos sobre las ramas para la solución del flujo máximo comparando las capacidades finales del flujo sobre las ramas con sus capacidades iniciales. Si la capacidad final de flujo es inferior a la capacidad inicial de flujo, se presenta un flujo sobre la rama en una cantidad igual a la diferencia entre las capacidades inicial y final de flujo. Por ejemplo, considérese la rama 3-6, con las capacidades de flujo final e inicial que se muestran en seguida:
21
Capacidades iniciales:
Como la capacidad de flujo en el sentido 6-3 es menor que la capacidad inicial, la rama tiene un flujo de 7 - 2 = 5 en el sentido 6-3. En seguida se resume el flujo de esta rama: Comparando las capacidades final e inicial de flujo para todas las ramas de la red se puede determinar el patrón final de flujo que se muestra en la Fig. 9.17.
Los resultados del análisis de flujo máximo muestran que el sistema que se planea de red de carreteras no puede manejar el flujo pico de 15,000 vehículos por hora. Las personas que están planeando el transporte tendrán que ampliar la red de carreteras, aumentar las capacidades actuales del flujo en las ramas, o prepararse para enfrentar severos problemas de embotellamiento de vehículos. Si se amplía o modifica la red, otro análisis de flujo máximo permitirá determinar la magnitud de cualquier aumento en el flujo. NOTAS Y COMENTARIOS Se pueden utilizar los modelos de redes para describir diversos problemas de ciencia de la administración. Por desgracia, no existe ningún algoritmo o programa de computación para solución de redes que pueda utilizarse para resolver todos los problemas de redes. Es importante reconocer el tipo específico de problema que se modela para poder elegir los algoritmos y programas de computación especializados que estén disponibles para llegar a una solución óptima.
1.4 EJERCICIOS 1) Halle la ruta más corta entre los nodos 1 y 10 de la siguiente red,
22
2. La Morgan Trucking Company opera un servicio especial de entregas y recolección rápidas entre Chicago y otras 10 ciudades ubicadas en una área de cuatro estados! Cuando la Morgan recibe una solicitud de servicio, envía un camión desde Chicago hasta la ciudad en la que se solicita el servicio, tan pronto como sea posible. Tanto el servicio rápido como los costos mínimos del viaje son objetivos para la Morgan.1 es importante que los camiones que se envían se vayan por la ruta más corta desde Chicago hasta la ciudad especificada. Supóngase que la siguiente red (que no está trazada a escala), con distancias dadas en millas, representa la red de carreteras para el problema:
a)¿Cuál es la ruta más corta a la ciudad 7? ¿y a la ciudad 9?: 2) La City Cab Company ha identificado 10 lugares principales para pasajeros que abordan y descienden de los taxis en la ciudad de Nueva York. En un esfuerzo para minimizar el tiempo de viaje, mejorar el servicio a los clientes, y mejorar la utilización de la flota de taxis de la compañía, a los administradores les gustaría que los conductores de los taxis tomaran la ruta más corta entre estos diversos lugares, cuando sea posible. Aplicando la red de caminos y calles que se muestra en seguida, ¿cuál es la ruta que debería tomar un conductor que sale del lugar 1 y debe llegar al lugar 10? En los arcos Je la red se muestran los tiempos de viaje en minutos.
23
3) La Wisman Candy Company fabrica diversas golosinas. Se utilizan camiones de la compañía para entregar en forma directa los pedidos a los expendios. Cuando el negocio era pequeño, los conductores de los camiones tenían libertad para elegir las rutas al realizar sus rondas de entrega a los expendios. Sin embargo, al progresar el negocio, los costos de transporte y de entrega se han vuelto considerables. En un esfuerzo por mejorar la eficiencia de la operación de entregas, a los administradores de la Wisman les gustaría determinar las rutas más cortas de entrega entre los expendios. Por ejemplo, en la red que se muestra en seguida aparecen los caminos que se pueden tomar entre un expendio que se encuentra en el nodo 1 y otro expendio que se encuentra en el nodo 11. Determine la ruta más corta para un camión que debe hacer entregas en ambos expendios.
4) En una fábrica grande de productos de jabón, los inspectores de control de calidad muestrean diversos productos, en diversas áreas de producción, y después entregan las muestras para su análisis en el laboratorio. El proceso de inspección es lento, y los inspectores invierten una cantidad considerable de tiempo transportando las muestras desde las áreas de producción hasta el laboratorio. La compañía está evaluando la instalación de un sistema conductor mediante tubos neumáticos que se podría utilizar para transportar las muestras entre las áreas de producción y el laboratorio. La red que aparece en seguida muestra las ubicaciones del laboratorio y las áreas de producción (nodos) en donde se recolectan las muestras. Las ramas son las alternativas que se están considerando para el sistema conductor. ¿Cuál es la longitud total mínima del diseño del sistema de conducción que permitiría que todas las áreas de producción sus muestras al laboratorio?
24
5) La Midwest University está instalando un sistema de correo electrónico computadorizado que permitirá transmitir mensajes en forma instantánea entre las oficinas de las ocho facultades. Se muestra en seguida la red con las posibles conexiones electrónicas entre las oficinas. Se muestran en millares de pies las distancias entre las oficinas. Desarrollar un diseño para el sistema de comunicaciones entre oficinas que permita que todas las oficinas tengan acceso al servicio de correo electrónico. Proporcionare que minimiza la longitud total de las conexiones entre las ocho oficinas.
6) La Metrovision Cable Company acaba de obtener la aprobación para comenzar a ofrecer servicio de televisión por cable en un suburbio de Memphis, Tennesee. Los nodos de la red que aparece en seguida representan los puntos de distribución a los que deben llegar las líneas primarias de cable de la compañía. Los arcos de la red muestran el número de millas que hay entre los puntos de distribución. Determine la solución que le permitirá a la compañía llegar a todos los puntos de distribución con una longitud mínima de la línea de cable primario.
25
7) El sistema de carreteras norte-sur que pasa por Albany, Nueva York, tiene las capacidades que se muestran en seguida. Considera que el sistema de carreteras puede dar cabida a un flujo norte-sur de 10 000 vehículos por hora?
8) Si el problema del sistema de carreteras de Albany tiene las capacidades modificadas de flujo que se muestran en la siguiente red, ¿cuál es el flujo máximo de vehículos que puede pasar por hora en el sistema? ¿Cuántos vehículos por hora deben viajar sobre cada camino (rama) con el objeto de lograr este flujo máximo? 9) Una compañía de teléfonos de larga distancia utiliza una red de líneas subterráneas de comunicación para ofrecer servicio de audio de alta calidad entre dos ciudades importantes. Las llamadas se conducen mediante diversas líneas de cable y diversos nodos de conexión en la red, según se muestra en seguida. Se muestran también el número de llamadas telefónicas (en miles) que pueden ocurrir de manera simultánea en cualquier punto del tiempo. ¿Cuál es el número máximo de llamadas telefónicas que pueden transmitir simultáneamente entre las dos ciudades? ¿Cuáles son los nodos de conexión y los flujos sobre los cables cuando el sistema opera a toda su capacidad?
26
27
UNIDAD 2 OBJETIVO PARTICULAR DE LA UNIDAD Al término de la unidad el estudiante aplicará la programación dinámica a la solución de un proceso de decisión.
OBJETIVOS ESPECÍFICOS Estado de transición Matrices Forma estándar de la matriz Estado estable Condiciones de equilibrio Relación entre mercado y estado estable Estado absorbente Casos Prácticos
28
UNIDAD 2: PROCESOS DE MARKOV Los modelos de procesos de Markov son útiles al estudiar la evolución de ciertos sistemas en ensayos repetidos. Los ensayos son frecuentemente periodos sucesivos en los que no se puede determinar con certidumbre el estado o resultado del sistema en cualquier lapso o intervalo de tiempo determinado. Más bien, se utilizan probabilidades de transición para describir la forma en que el-sistema hace transiciones de un periodo al siguiente. Por ello se habla de la probabilidad de que el sistema se encuentre en un estado específico en un periodo dado. Se han utilizado los procesos de Markov para describir la probabilidad de que una máquina que está funcionando en un periodo, continúe funcionando o se averíe en el periodo siguiente. Se les ha utilizado también para describir la probabilidad de que a un cliente que compre la marca A en un lapso, compre la marca B en el siguiente. En esta unidad se estudia una aplicación de mercadotecnia que se refiere a un análisis del comportamiento en cambios de tiendas en clientes de supermercado. El estudio de los procesos de Markov se restringe a casos en los que existe un número finito de estados, en los que las probabilidades de transición permanecen constantes en el tiempo, y en los que la probabilidad de encontrarse en un estado determinado en cualquier lapso depende sólo del estado del proceso en el periodo inmediatamente anterior. A los procesos de Markov que tienen estas características se les denomina cadenas de Markov con probabilidades de transición estacionarias.
2.1 CONCEPTOS DE CADENAS DE MARKOV Supóngase que interesa analizar la participación de mercado y la lealtad de los clientes para los establecimientos Murphy's Foodliner y Ashley's Supermarket, las únicas dos tiendas de comestibles de un pueblo pequeño. Se concentra la atención en la secuencia de visitas de compra de un cliente. Se supone que éste hace una visita de compras cada semana alguna de las dos tiendas, pero no a ambas. Utilizando la terminología de los procesos de Markov, a los periodos semanales, o visitas de compra, se les denomina ensayos del proceso. Por tanto, en cada ensayo el cliente compra en Murphy's o en Ashley's. La tienda específica que se elige en una semana determinada se denomina estado del sistema en ese periodo. Como el cliente tiene dos alternativas para comprar en cada ensayo, se dice que el sistema tiene 2 estados. Puesto que el número de estados es finito, puede listarse e identificarse en detalle cada estado. Los dos posibles son: Estado 1 Estado 2
El cliente compra en Murphy's El cliente compra en Ashley's
Si se dice que en f! ensayo 3 el sistema está en el estado 1, simplemente se está indicando 1 que el cliente compra en Murphy's en el tercer periodo semanal de compra. Al continuar el proceso de visitas de compra para el futuro, no se puede decir con seguridad en dónde comprará el cliente en una semana o ensayo específicos. De hecho, es importante advertir que durante cualquier semana, el comprador puede ser un cliente de Murphy's o un cliente Ashley's. Sin embargo, utilizando un modelo de proceso de Markov se está en posibilidades de evaluar las probabilidades de que el cliente compra en cada una de las tiendas durante cualquier periodo. Por ejemplo, se podría encontrar que hay una probabilidad de 0.6 de que el
29
cliente compre en Ashley's en una cierta semana, y una probabilidad de 0.4 de que el cliente compre en Murphy's. Con objeto de determinar las probabilidades de ocurrencia de diversos estados en ensayos sucesivos del proceso de Markov, se requiere información sobre la probabilidad de que un cliente permanezca en la misma tienda, o cambie a una competidora, al avanzar el proceso de un ensayo a otro o de una semana a otra. Supóngase que, como parte de un estudio de investigación de mercado, se recopilan datos de cien compradores para un periodo de 10 semanas. Supóngase, además, que tales datos muestran el patrón semanal de visitas de compra de cada cliente en términos de la secuencia de visitas a Murphy's y a Ashley's. En el desarrollo de un modelo de proceso de Markov para la secuencia de viajes semanales de compras, es necesario expresar la probabilidad de elegir cada tienda (esta.do) en determinado periodo, sólo en términos de la tienda (estado) elegida durante el lapso anterior. Al revisar los datos, supóngase que se encuentra que de todos los clientes que compraron en Murphy's en una semana determinada, 90% compraron en esa misma tienda (Murphy's) a la siguiente semana, mientras que 10% cambiaron a Ashley's. Supóngase que datos similares para los clientes que compraron en Ashley's en una cierta semana muestran que 80% compraron en Ashley's en la semana siguiente, en tanto que 20% cambiaron a Murphy's. En la Tabla 17.1 se muestran las probabilidades con base en estos datos. Como son las probabilidades de que un cliente cambie, o haga una transición, de un estado en un periodo determinado, a un estado en el periodo siguiente, a dichas probabilidades se les denomina probabilidades de transición. TABLA 17.1 Probabilidades de transición para las tiendas Murphy's y Ashley's. % periodo de compra semanal siguiente
Una propiedad importante de la tabla de probabilidades de transición es que la suma de los elementos de cada renglón es igual a 1; esto indica que cada renglón de la tabla contiene una distribución de probabilidad. Por ejemplo, un cliente que compra en Murphy's una semana debe comprar en la siguiente semana, ya sea en Murphy's o en Ashley's. Los elementos del renglón 1 dan las probabilidades correspondientes a cada evento. Las probabilidades de 0.9 y 0.8 de la Tabla 17.1 pueden interpretarse como medidas de la lealtad a las tiendas, ya que indican la probabilidad de una visita repetida a la misma tienda. De manera similar, las probabilidades de 0.1 y 0.2 son medidas de las características de cambio de tienda de los clientes. Es importante advertir que al desarrollar un modelo de proceso de Markov para el problema se está suponiendo que las probabilidades de transición serán las mismas para cualquier cliente, y que tales probabilidades no cambian en el tiempo. Obsérvese que la tabla de probabilidades de transición, la Tabla 17.1, tiene un renglón y una columna para cada estado del sistema. Se utiliza el símbolo pij para representar las
30
probabilidades de transición individuales, y el símbolo P para representar la matriz de las probabilidades de transición; es decir,
Utilizando la matriz de probabilidades de transición puede ahora determinarse la probabilidad de que un cliente compre en Murphy's o en Ashley's en algún periodo en el futuro. Se comienza por suponer que se tiene un cliente cuya visita de compras de la última semana fue en Murphy's. ¿Cuál es la probabilidad de que este cliente compre en Murphy's en el viaje de compras de la siguiente semana, el periodo 1 ? En otras palabras, ¿cuál es la probabilidad de que el sistema se encuentre en el estado 1 después de la primera transición? La matriz de probabilidades de transición indica que esta probabilidad es p11 = 0.9. Se considera ahora el estado del sistema en el periodo 2. Una forma útil de ilustrar lo que puede suceder en la visita de compras en la segunda semana es trazar un diagrama de árbol con los posibles resultados (Fig. 17.1). Utilizando este arborigrama, se observa que la probabilidad de que el cliente haga sus compras en Murphy's durante la primera y segunda semanas es (0.9)(0.9) = 0.81. Obsérvese también que la probabilidad de que el cliente cambie a la tienda Ashley's en la primera visita y después vuelva a Murphy's en la segunda es (0.1) (0.2) = 0.02. Corno éstas son las únicas dos situaciones en las que se puede encontrar el cliente en el estado 1 (compra en Murphy's) durante el segundo periodo, la probabilidad de que el sistema se encuentre en el estado 1 durante el segundo lapso es 0.81 + 0.02 = 0.83. De manera similar la probabilidad de que el sistema se encuentre en el estado 2 durante el segundo periodo es 0.09 + 0.08 = 0.17. Aun cuando el método del arborigrama o diagrama de árbol puede ser muy deseable desde un punto de vista intuitivo, este procedimiento se vuelve muy laborioso cuando se desea ampliar el análisis a tres, cuatro o más periodos en el futuro. Afortunadamente, existe una forma más sencilla de calcular las probabilidades de que el sistema se encuentre en el estado 1 o en el estado 2 para cualquier periodo subsecuente. En primer lugar, se introduce una notación que permitirá representar la probabilidad de que el sistema se encuentre en el estado 1 o en el estado 2 para cualquier intervalo de tiempo.
Por ejemplo, π(1) representaría la probabilidad de que el sistema se encuentre en el estado 1 en el periodo 1 (es decir, después de una transición), en tanto que π(2) denota la probabilidad de que el sistema se encuentre en el estado 2 después de una transición. Como πi(n) es la probabilidad de que el sistema se encuentre en el estado i en el periodo n, a esta probabilidad se la denomina probabilidad de estado.
31
π1(0) y π2(0) denotarán la probabilidad de que el sistema se encuentre en el estado 1 o en el estado 2 en algún periodo inicial o de comienzo. El periodo (o semana) 0 representa el lapso más reciente cuando se están iniciando los análisis de un proceso de Markov. Si se fija π1(0) = 1 y π2(0) = 0, se expresa que, como condición inicial, el cliente hizo sus compras en la última semana en Murphy's; alternativamente, si se fija π1(0) = 1 y π2(0) = 2, se estaría iniciando el sistema con un cliente que hizo sus compras en la última semana en Ashley's.
2.2 DIAGRAMA DE ARBOL En el árbol de la Fig. 17.1 se considera la situación en la que el cliente compró por última vez en Murphy's.
Por ello, [π1(0), π2(0)] = [1, 0] es un vector que representa las probabilidades iniciales para el estado del sistema. Utilizando esta notación, pueden evaluarse las probabilidades de estado para el periodo n + 1 simplemente multiplicando las probabilidades de estado que ya se conocen para el periodo n por la matriz de probabilidades de transición. Utilizando el vector de probabilidades de estado y la matriz de probabilidades de transición, se puede expresar de la siguiente manera la multiplicación:
32
2.3 APLICACION DE MATRIZ DE TRANSICION Se observa que la probabilidad de que se realicen las compras en Murphy's durante la según- : da semana es 0.83, al tiempo que la probabilidad de que se realicen en Ashley's durante la segunda semana es 0.17. Se obtuvieron antes estos mismos resultados utilizando el árbol de la Fig. 17.1. Continuando con la aplicación de la ecuación (17.1), se pueden calcular las probabilidades de estado para cualquier periodo futuro es decir,
En la Tabla 17.2 'se muestra el resultado obtenido al realizar estos cálculos para diversos periodos hacia el futuro.
33
Los vectores π(1), π(2), π(3).. . . contienen las probabilidades de que un cliente que empezó siendo de Murphy's se encuentre en el estado 1 o en el estado 2 en el primer periodo, el segundo periodo, el tercer periodo, y así sucesivamente. Se observa en la Tabla 17.2 que, después de un número grande de periodos, estas probabilidades no cambian mucho de un lapso al siguiente. De hecho, la probabilidad de que el sistema se encuentre en el estado 1 o en el estado 2 tiende a 2/3 y 1 /3 después de un número grande de periodos de compra. Si se hubiera comenzado con 1000 clientes de Murphy's (es decir, 1000 clientes que compraron la última vez en Murphy's), el análsis indica que durante el quinto periodo subsecuente de compra semanal, 723 serían clientes de Murphy's, y 277 serían clientes de Ashley's. Además, después de un número grande de periodos de compra, aproximadamente 667 serían clientes de Murphy's y 333 serían de Ashley's. Se repite ahora el análisis, pero esta vez se comienza el proceso con un cliente que compró por última vez en Ashley's. Por ello, Procediendo igual que antes, pueden calcularse las subsecuentes probabilidades de estado. Al hacerlo, se obtienen los resultados que se muestran en la Tabla 17.3.
En el quinto periodo de compras, la probabilidad de que un cliente esté comprando en Murphy's es de 0.555, y la probabilidad de que el cliente esté comprando en Ashley's es de 0.445. Después de un número grande de periodos de compra, la probabilidad de que el sistema se encuentre en el estado 1 se acerca a 2/3, y la de que se encuentre en el estado 2 se aproxima a 1/3. Estas son las mismas probabilidades que se obtuvieron después de un número grande de transiciones cuando el sistema arrancó en el estado 1. Por ello, se observa que la probabilidad de que el sistema se encuentre en un estado determinado después de un número grande de periodos es independiente del estado inicial del sistema.
2.4 ANÁLISIS DE ESTADO ESTABLE Las probabilidades a las que se tiende después de un número grande de transiciones se les denomina probabilidades de estado estable. Se denotan la probabilidad de estado estable para el estado 1 con el símbolo π1, y a la probabilidad de estado estable para el estado 2 con el
34
símbolo π2 En otras palabras, en el caso del estado estable simplemente se omite la designación del periodo en πi(n) puesto que ya no es necesario. Por ello, si se tienen 1000 clientes en el sistema, el modelo de proceso de Markov, indica que, a largo plazo, con probabilidades de estado estable, habrá TT, = 2/3 y ir2 = 1/3, 2/3(1000) = 667 clientes en Murphy's y 1/3(1000) = 333 clientes en Ashley's. Se pueden interpretar las probabilidades de estado estable como las participaciones de mercado para las dos tiendas. El análisis de las Tablas 17.2 y 17.3 muestra que, al aumentar n, la diferencia entre las probabilidades de estado entre el «-ésimo periodo de compras y el (n + l)-ésimo periodo, se vuelve cada vez menor. Esto conduce a la conclusión de que, conforme n se vuelve extremadamente grande, las probabilidades de estado en el (n + l)-ésimo periodo son muy cercanas a las del «-ésimo periodo. Esta observación fundamenta un método simple para calcular probabilidades de estado estable sin tener que realizar en la práctica un número grande de cálculos. En general, de la Ecuación (17.1) se sabe que,
Después, aplicando la ecuación (17.4) puede concluirse que TT2 = 1 – TT1, = 1/3. Por ello, empleando las ecuaciones (17.2) y (17.4), pueden despejarse en forma directa las probabilidades de estado estable. El lector puede verificar por sí mismo que se podrían haber obtenido los mismos resultados utilizando las ecuaciones (17.3) y (17. 4).
35
Con frecuencia la información sobre participación de mercados es muy valiosa en los casos de toma de decisiones. Por ejemplo, supóngase que el Ashley's Supermarket está considerando una campaña de publicidad para atraer a una mayor cantidad de los clientes de Murphy's. Supóngase, además, que Ashley's considera que su estrategia promocional aumentaría la probabilidad de que los clientes de Murphy's cambien a Ashley's, para pasar de 0.10 a 0.15. Las nuevas probabilidades de transición que resultarían de este cambio son las que se dan en la Tabla 17.4
Con las nuevas probabilidades de transición, pueden utilizarse las ecuaciones (17.2) y (17.4) para encontrar las nuevas probabilidades de estado estable, o participaciones de mercado. Así, se obtiene
Por tanto, se observa que la estrategia promocional que se propone aumentaría la participación de mercado de Ashley's de TT1= 0.33 a TT2= 0.43. Supóngase que el mercado total consta de 6,000 clientes por semana. La nueva estrategia promocional aumentaría el número de clientes que realizan sus compras semanales en Ashley's, de 2,000 a 2,580. Si la utilidad semanal promedio por cliente es de $10, se puede esperar que la estrategia promocional que se propone aumente las utilidades de Ashley's en $5,800 por semana. Resulta entonces evidente que si el costo de la campaña promocional es inferior a $5800 por semana, Ashley's debe considerar realizar esa estrategia. Este es un ejemplo de la forma en que un análisis de Markov de la participación de mercado de una empresa puede resultar útil en un caso de toma de decisiones. Supóngase que en vez de intentar atraer clientes de Murphy's Foodliner, la Ashley's dirigiera sus esfuerzos de promoción a aumentar la lealtad de sus propios clientes. En este caso, aumentaría p22, y p2í disminuiría. Una vez que se supiera la magnitud del cambio, se podrían calcular nuevas probabilidades de estado constante, junto con el impacto sobre las utilidades. NOTAS Y COMENTARIOS
36
1) Los procesos de Markov que se presentaron en esta sección tienen lo que se denomina propiedad de carecer de memoria: el estado actual del sistema, junto con las probabilidades de transición, contienen toda la información necesaria para pronosticar el comportamiento futuro del sistema. No es necesario considerar los estados previos o anteriores. Este tipo de procesos de Markov se considera como procesos de primer orden. Los procesos de Markov de orden más elevado son aquéllos en los que los estados futuros del sistema dependen de dos o más estados anteriores. 2) No se pretende que el análisis de un modelo de procesos de Markov permita optimizar ningún aspecto específico de un sistema. Más bien, el análisis permite pronosticar o describir el futuro y el comportamiento de estado estable del sistema. Por ejemplo, en el ejemplo de las tiendas de comestibles, el análisis del comportamiento de estado estable proporcionó un pronóstico o proyección de las participaciones de mercado de los dos competidores. En otras aplicaciones, los científicos de administración han ampliado el estudio de los procesos de Markov a lo que se denomina procesos decisorios de Markov. En estos modelos, se pueden tomar decisiones que afecten las probabilidades de transición en cada periodo, y por tanto, influir en el comportamiento futuro del sistema. Se han utilizado procesos de decisión Markovsinos para analizar descomposturas de máquinas y operaciones de mantenimiento, planeación de movimiento de pacientes en hospitales, desarrollo de estrategias de inspección, determinación de la duración de suscripciones a periódicos, y análisis de reemplazo de equipo. En esta unidad se presentaron modelos de procesos de Markov, así como también ejemplos de su aplicación. Se vio que un análisis de Markov puede ofrecer información útil para la toma de decisiones con respecto a procesos o situaciones que implican una secuencia de ensayos repetidos con una cantidad determinada de posibles resultados o estados en cada ensayo. Un objetivo primordial era obtener información respecto a la probabilidad de ocurrencia de cada estado en cierto número de transiciones o periodos en el futuro. Una aplicación de participación de mercado mostró el procedimiento de cálculo para determinar las probabilidades de estado estable, las cuales pueden interpretarse como participaciones de mercado para dos supermercados que compiten entre sí.
2.5 EJERCICIOS 1) En el análisis de participación de mercado de la Secc. 17.1, considérese que están evaluando los procesos de Markov correspondientes a las visitas de compras de un cliente pero que no se sabe en donde compró en la última semana. Por ello, se podría suponer que existe una probabilidad de 0.5 de que un cliente haya comprado en Murphy's, y una probabilidad de 0.5 de que el cliente haya comprado en Ashley's en el periodo 0; es decir, TT1(0) = 0.5 y TT2 (0) = 0.5. Dadas estas probabilidades de estado iniciales, elabore una tabla similar a la Tabla 17.2 que muestre la probabilidad de cada estado en periodos futuros. ¿Qué se observa respecto a las probabilidades a largo plazo de cada estado? 2) Los administradores de la empresa New Fangled Softdrink Company consideran que la probabilidad de que un cliente compre la bebida Red-Rot Pop, o el principal produc to de la competencia, Super Cola, se basa en la compra más reciente del cliente. Supón que son apropiadas las siguientes probabilidades de transición:
37
a) Trace el diagrama de árbol de dos periodos para un cliente que compró la última vez RedRot Pop. ¿Cuál es la probabilidad de que este cliente compre Red-Rot Pop en una segunda compra? b) ¿Cuál es la participación de mercado a largo plazo para cada uno de estos dos productos? c) Se está planeando una campaña importante de publicidad para aumentar la probabilidad de atraer a los clientes de Super Cola. Los administradores consideran que la nueva campaña aumentaría a 0.15 la probabilidad de que un cliente cambie de Super Cola a Red-Rot Pop. ¿Cuál es el efecto proyectado de la campaña de publicidad sobre las participaciones de mercado? 3) El centro de computación de la Universidad Rockbottom ha estado experimentando periodos considerables de tiempo muerto en sus computadoras. Supóngase que se definen los ensayos de un proceso correspondiente de Markov como periodos de una hora y que la probabilidad de que el sistema esté en estado de operación o en estado inactivo se basa en el estado del sistema en el periodo anterior. Los datos históricos muestran las siguientes probabilidades de transición:
a) Si el sistema está inicialmente operando, ¿cuál es la probabilidad de que se caiga el sistema en la siguiente hora de operación? b) ¿Cuáles son las probabilidades de estado estable de que el sistema se encuentre en estado operante y en estado inoperante? 4) Un problema importante en el área principal de Cincinnati implica el tráfico automovilístico que intenta cruzar el río Ohio, proviniendo de Cincinnati, y en dirección a Kentucky, utilizando la Carretera Interestatal 1-75. Suponga que es 0.85 la probabilidad de que no haya demoras por el tráfico en un periodo, dado que no hubo demoras de tal clase en el periodo anterior, y que es 0.75 la probabilidad de encontrar una demora debido al tráfico de un periodo, dado que hubo demoras en el periodo anterior. El tráfico se clasifica como estados en los que se tiene demora o no, y se considera que el periodo es de 30 min. a) Suponiendo que es un automovilista que ingresa al sistema vial o de tránsito y recibe un reporte de radio de que hay demoras en el tráfico, ¿cuál es la probabilidad de que, para los siguientes 180 min. el sistema se encuentre en el estado de demoras? Obsérvese que tal es la probabilidad de que se encuentre en el estado de demora para 6 periodos consecutivos. b) ¿Cuál es la probabilidad de que el tránsito se encuentre a largo plazo en el estado de carencia de demoras? c) Una suposición importante de los modelos de procesos de Markov que se presentaron en este capítulo han sido las probabilidades de transición constantes o estacionarias durante la operación del sistema en el futuro'. ¿Considera que este supuesto es apropiado en el problema anterior sobre el tráfico? Explique. 5. Se pueden expresar como procesos de Markov los patrones de compra de dos marcas de dentífrico, con las siguientes probabilidades de transición:
38
A) ¿Qué marca parece tener la mayor cantidad de clientes leales? Explique. B) ¿Cuáles son las participaciones de mercado que se proyectan para las dos marcas? C) Supóngase que entra en el mercado una nueva marca de crema dental de manera que se tienen las siguientes probabilidades de transición:
C) Cómo se afectan las participaciones de mercado de las marcas conocidas?
39
UNIDAD 3 OBJETIVO PARTICULAR DE LA UNIDAD Al término de la unidad el estudiante aplicará y desarrollará mediante el análisis de alternativas la selección de la mejor alternativa.
OBJETIVOS ESPECÍFICOS Modelos de decisión Decisiones bajo certidumbre Decisiones bajo riesgo Análisis de sensibilidad Valor esperado de la información muestral Decisiones secuenciales Casos prácticos
40
Unidad 3: ANALISIS DE DECISIONES Se puede utilizar el análisis de decisiones para determinar estrategias óptimas cuando un decisor afrenta diversas alternativas de decisión, y un patrón de eventos futuros incierto o muy riesgoso. Por ejemplo, el fabricante de un nuevo estilo o línea de ropa de temporada desearía fabricar grandes cantidades del producto si la aceptación de los consumidores y, en consecuencia, la demanda del producto fueran a ser elevados. Sin embargo, el industrial pretendería producir cantidades mucho menores si la aceptación de los clientes y la demanda del producto fueran a ser bajas. Por desgracia la ropa de temporada exige que el fabricante tome las decisiones sobre la cantidad a producir antes de conocer la demanda. No se determina la aceptación real de los consumidores del nuevo producto sino hasta que se han colocado los artículos en las tiendas y los compradores han tenido oportunidad de comprarlos. La selección de las mejores decisiones sobre volúmenes de producción de entre diversos volúmenes alternativos, cuando quien toma las decisiones afrenta incertidumbre en la demanda futura, es un problema apropiado para el análisis de decisiones. Se comienza el estudio analítico analizando problemas en los que se tienen cantidades razonables de alternativas de decisión y de eventos futuros posibles. Se presentan los conceptos de tablas de pagos y de árboles de decisión para tener una estructura para, este tipo de casos de decisión, e ilustrar los conceptos básicos del análisis decisorio y del método del valor esperado para la toma de decisiones. Después se extenderá el análisis para mostrar el modo en que puede combinarse información adicional que se obtiene mediante experimentaciones con la información preliminar del decisor, con objeto de desarrollar una estrategia óptima de decisión.
3.1 ESTRUCTURACIÓN DEL PROBLEMA DE DECISIÓN Para ilustrar el método del análisis decisorio, se considerará el caso de la empresa Political Systems, Inc. (PSI), una compañía recién establecida de servicios computacionales que se especializa en servicios de información, como análisis de encuestas y datos para personas que dirigen organizaciones políticas. La PSI está en las etapas finales de la selección de un sistema de computadora para su sucursal del Oeste Medio, que se ubica en Chicago. Aunque la empresa ya ha tomado la decisión respecto a un fabricante de computadoras, en estos momentos intenta determinar el tamaño del sistema de computación que le resultaría más económico arrendar. Se procede a utilizar el análisis de decisiones para ayudar a la PSI a adoptar su determinación sobre arrendamiento de una computadora. El primer paso en el método del análisis de decisiones consiste en identificar las opciones. que ha de evaluar el decisor: Para la PSI, la decisión final consistirá en arrendar uno de tres sistemas de cómputo, que difieren en tamaño y capacidad. Las tres opciones de decisión, que se denotan mediante d1, d2 y d3 son las siguientes:
Como es evidente, la elección de cuál es la mejor alternativa de decisión dependerá de lo que los administradores de la PSI consideren como la posible aceptación de mercado para sus servicios y, en consecuencia, de la posible demanda o carga para el sistema de cómputo de la
41
PSI. Con frecuencia son inciertos los eventos futuros asociados a una situación de decisiones. Es decir, aunque un decisor puede tener alguna idea sobre la diversidad cíe los posibles eventos futuros, con frecuencia no estará seguro respecto a cuál evento específico escurrirá. Por ello, el segundo paso en un análisis de decisiones consiste en identificar los eventos futuros que pueden presentarse. A estos eventos, que no están bajo el control de quien loma las decisiones, se les denomina estados de la naturaleza. Se supone que la lista díe posibles estados de la naturaleza incluye todo lo que puede ocurrir, y que dichos estados no se traslapan; es decir, se definen los estados de la naturaleza de manera que sólo ocurre uno y sólo uno, de los estados que comprende la lista. Cuando se les preguntó respecto a los estados mencionados para el problema de decisiones de la PSI, los administradores consideraron que la posible aceptación del servicio de la PSI consistía en un caso con dos alternativas. Es decir, consideraban que el nivel global de aceptación de la empresa en el mercado se podría categorizar en una de dos posibilidades: aceptación elevada y aceptación baja. De modo que los estados de la naturaleza de la PSI, a los que se denota s1 y s2 son los siguientes:
Dadas las tres alternativas de decisión y los dos estados de la naturaleza, ¿que sistema de computación debe arrendar la PSl? Para estar en posibilidades de responder esta pregunta se requiere información respecto a las utilidades correspondientes a cada combinación de alternativa de decisión y de estado de la naturaleza. Por ejemplo, ¿qué utilidad obtendría la PSI si la empresa decidiera arrendar el sistema grande de cómputo? (d1) y la aceptación de mercado fuera elevada (s1) ¿qué utilidad obtendría la PSI si la empresa decidiera arrendar el sistema computacional grande (d1) y la aceptación de mercado fuera reducida (s2)? En terminología de análisis de decisiones, lo que se produce al tomar cierta decisión, combinado con la ocurrencia de un estado de la naturaleza específico, se le denomina resultado (o consecuencia). Utilizando la mejor información disponible, los administradores han estimado los resultados o consecuencias para el problema de arrendamiento de computadoras de la PSI. Estas estimaciones se presentan en la Tabla 14.1.
A una tabla de esta forma se le denomina tabla de resultados. En general, los elementos de tal tabla pueden plantearse en términos de utilidades, costos, o cualquier otra medida de las consecuencias que sea apropiada para el caso específico que se analiza. La notación para los elementos de una tabla de resultados es V(di,sj), que denota el pago correspondiente a la alternativa de decisión di y al estado de la naturaleza Sj. Utilizando esta notación, se observa que V(d3,s1) = $100,000.
42
Arboles de decisión ¿Un árbol de decisión (o arborigrama decisorio) ofrece una representación gráfica del proceso de toma de decisiones. En la Fig. 14.1 se muestra un árbol de decisión para el problema de arrendamiento de computadoras de la PSI. Obsérvese que se muestra en tal diagrama la progresión natural o lógica que ocurriría con el transcurso del tiempo. En primer lugar la empresa debe tomar su decisión (d1, d2 y d3); después, una vez que se pone en práctica la decisión, se presenta el estado de la naturaleza (s1 o s2). El número que se encuentra en cada uno de los puntos finales del árbol representa el resultado correspondiente a una cadena específica de eventos. Por ejemplo, el resultado de la parte superior, 200 000, ocurre cuando los administradores toman la decisión de arrendar un sistema grande (d1) y se tiene que la aceptación de los clientes es alta (s1). Se llega al punto terminal que está inmediatamente abajo, -20 000, cuando los administradores toman la decisión de arrendar un sistema grande (d1) y el estado de la naturaleza es un grado reducido de aceptación por parte de los clientes (s2) Se observa entonces que están representadas en el árbol de decisión todas las posibles secuencias de eventos para el problema de la PSI. /Utilizando la terminología general para los árboles de decisión, a las intersecciones o cruces del árbol se les llama nodos, y a los arcos o enlaces entre los nodos se les denomina ramas. En la Fig. 14.1 se muestra el árbol de decisión de la PSI en el que se han numerado los nodos del 1 al 4.
Cuando las ramas que salen de un nodo determinado son ramas de decisión, al cruce correspondiente se le denomina nodo de decisión. Los nodos de decisión se identifican mediante cuadros. De manera similar, cuando las ramas que salen de un nodo corresponden a estados de la naturaleza, al nodo se le denomina nodo de estado de la naturaleza. Estos nodos se les simboliza mediante círculos. Utilizando esta nomenclatura, el nodo 1 es un nodo de decisión, en tanto que los nodos 2, 3 y 4 son nodos de estados de la naturaleza. Los tres primeros pasos de un proceso de análisis de decisiones son la identificación de las alternativas de decisión, la identificación de los estados de la naturaleza y la determinación del resultado correspondiente a cada combinación de alternativa de decisión y estado de la naturaleza. La cuestión que se abordará ahora es la siguiente: ¿cómo puede un tomador de decisiones utilizar de mejor manera la información que se presenta en la tabla de consecuencias o en el árbol de decisión para tomar su propia decisión? Tal como se verá, es posible emplear varios métodos.
3.2 TOMA DE DECISIONES SIN PROBABILIDADES
43
Aquí se consideran métodos para la toma de decisiones en los que no se requiere conocimiento de las probabilidades de los estados de la naturaleza. Tales métodos son apropiados en los casos en que el tomador de decisiones tiene poca confianza en su actitud para evaluar las probabilidades de los diversos estados de la naturaleza, o en lo que es deseable considerar análisis del mejor o peor de los casos, y que son independientes de los estados de la naturaleza. Como los planteamientos distintos en ocasiones conducen a diferentes recomendaciones sobre la decisión, es importante que el decisor comprenda los métodos disponibles para que, después, elija el método específico que a su juicio, resulte ser el más apropiado.
El método optimista En el método optimista se evalúa cada alternativa de decisión en términos del mejor resultado que puede ocurrir. La alternativa de decisión que se recomienda es la que ofrece la mejor consecuencia posible. Para un problema en el que se desea maximizar utilidades, como es el caso del problema de arrendamiento de la PSI, el método optimista conduciría al decisor a elegir la alternativa que corresponde a las utilidades más altas. En problemas de Minimización, el procedimiento conduce a elegir la alternativa que cause el menor resultado. Para ilustrar el uso del método optimista, se muestra la forma en que puede ser utilizado para desarrollar una recomendación para el problema del arrendamiento de la PSI. En primer lugar, se determina el máximo resultado posible para cada una de las alternativas de decisión; después, se elige la alternativa que produce la mayor utilidad global. Esto es simplemente una forma sistemática de Identificar la alternativa decisoria que proporciona las mayores utilidades posibles. En la tabla 14.2 se ilustran estos cálculos para el problema de la PSI.
Como $200,000, valor que corresponde a d1, da el máximo de los máximos resultados, la alternativa decisoria que se recomienda utilizando el método optimista es la decisión de arrendar un sistema grande. Es fácil ver por qué a este método se le denomina optimista. Simplemente recomienda la alternativa de decisión que produzca la mejor de todas las consecuencias, $200,000.
El método conservador En el método conservador se evalúa cada alternativa de decisión en términos del peor resultado que pueda ocurrir. La alternativa decisoria que se recomienda es la mejor de las peores consecuencias posibles. Para un problema en el que la medida de los resultados es utilidades, como en el caso del problema del arrendamiento de la PSI, el método conservador conduciría al decisor a elegir la opción que maximiza el valor mínimo posible de utilidades que pudieran obtenerse. En problemas que implican minimización, según este método se identifica la alternativa que minimiza el resultado máximo. Para ilustrar el uso del método conservador, se indicará la forma en que se puede utilizar para desarrollar una recomendación para el problema de arrendamiento de la PSI. En primer lugar, el tomador de decisiones identificaría el resultado mínimo para cada una de las alternativas decisorias; después elegiría la que maximiza el resultado mínimo. En la Tabla 14.3 se ilustra este método para el problema de la PSI.
44
Como $60,000, que corresponde a d3, produce el máximo de los resultados mínimos, se recomienda la alternativa decisoria de arrendar un sistema pequeño. Se considera que este método para tomar decisiones es conservador porque se concentra en el peor de los resultados posibles y después recomienda la alternativa decisoria que evita la posibilidad de llegar a consecuencias extremadamente "malas". Al utilizar el método conservador se garantiza ala PSI una utilidad de cuando menos $60,000. Aunque esta firma podría obtener utilidades mayores, no es posible que obtenga menos de $60,000.
Método de la deploracíón minimax La deploración minimax es otro procedimiento para la toma de decisiones sin probabilidades. Este método no es puramente optimista ni puramente conservador. Se ilustra su aplicación mostrando la forma en que se puede utilizar para elegir una alternativa de decisión para el problema de arrendamiento de la PSI. Supóngase que se toma la decisión de arrendar el sistema pequeño (d3) y que después se sabe que la aceptación de los clientes del servicio de la PSI es alta (s1). En la Tabla 14.1 se muestra que las utilidades resultantes son $100,000. Sin embargo, ahora que se conoce que ha ocurrido el estado de la naturaleza s1, se observa que la decisión óptima hubiera sido arrendar e| sistema grande (d1), con utilidades de $200,000. A la diferencia entre el resultado óptimo ($200,000) y el que se obtiene ($100,000) se le denomina pérdida de oportunidad o deploración correspondiente a la decisión d3 cuando ocurre el estado de la naturaleza s1 ($200,000 - $100,000 = $100,000). Si se hubiera tomado la decisión d2, y hubiera ocurrido el estado de la naturaleza s1, la pérdida de oportunidad hubiera sido $200.000 - $I50,000 = $50,000. En problemas de maximización, la expresión general para la pérdida de oportunidad o deploración está dada por
45
Utilizando la ecuación (14.1) y los resultados de la Tabla 14.1 se puede calcular la deplo-ración correspondiente a todas las combinaciones de alternativas de decisión d¡ y estados de la naturaleza Sj. Simplemente se reemplaza cada elemento de la tabla con el valor que se encuentra restando ese elemento del mayor elemento de su columna. En la Tabla 14.4 se muestra la tabla de deploraciones o pérdidas de oportunidad para el problema de la PSI. El siguiente paso al aplicar el método de la deploración minimax exige que el decisor identifique la pérdida máxima para cada alternativa de decisión. Estos datos son los que se muestran en la Tabla 14.5.
Se elige la mejor decisión seleccionando la alternativa que corresponde al mínimo de los valores de la deploración máxima, y de ahí el nombre de deploración minimax. Para el problema de la PSI, la decisión que se recomienda de acuerdo con la deploración minimax es la de arrendar un sistema de computación de tamaño mediano, con la deploración correspondiente de $50,000. Obsérvese que los tres métodos que se analizaron en esta sección dieron como resultado recomendaciones distintas. Esto no es nocivo en sí; simplemente reñeja la diferencia en las filosofías de toma de decisiones que subyacen a los diferentes métodos. En última instancia, la persona que toma las decisiones tendrá que elegir el método más apropiado para después adoptar la decisión final. Las principales críticas que se hacen a los métodos que se analizaron en esta sección es que no consideran la información existente respecto a las probabilidades de los diversos estados de la naturaleza. En la siguiente sección se analiza un método en el que se utiliza información probabilística para elegir una alternativa de decisión.
3.3 Toma de decisiones con probabilidad En muchos casos es posible obtener estimados de la probabilidad de casa uno de los estados de la naturaleza. Cuando se dispone de esas probabilidades, es posible utilizar el método del valor esperado para identificar la mejor alternativa de decisión. En este método se evalúa cada alternativa de decisión en términos de su valor esperado. La que se recomienda es la que produce el mejor de tales valores. En primer lugar se define el valor esperado de una alternativa de decisión y después se muestra la forma en que puede utilizarse para el problema de decisión de la PSI.
46
Sean N = número de posibles estados de la naturaleza P(sj) = probabilidad del estado de la naturaleza sj; Como sólo puede ocurrir uno de los N estados de la naturaleza, las probabilidades correspondientes deben satisfacer las siguientes dos condiciones:
En palabras, el valor esperado de una alternativa de decisión es la suma de los resultados ponderados para esa alternativa. La ponderación para un resultado es la probabilidad del correspondiente estado de la naturaleza y, por tanto, la probabilidad de que ocurra esa consecuencia. Se vuelve ahora al problema de la PSI para observar la forma en que se puede aplicar el método del valor esperado. Supóngase que los administradores de la PSI consideran que s1 el estado de la naturaleza de una aceptación elevada, tiene una probabilidad de ocurrencia de 0.3, y que s2 el estado de la naturaleza de una aceptación baja, tiene una probabilidad de 0.7. Por tanto P(s1) = 0.3 y P(s2) = 0.1. Utilizando los valores de los resultados V(di,sj) que se muestran en la Tabla 14.1 y la ecuación (14.4), pueden calcularse los valores esperados para las tres alternativas de decisión: VE(d1) = .3(200,000) + .7(-$20,000) = $46,000 VE(d2) = .3(150,000) + .7($20,000) = $59,000 VE(d3) = .3(100,000) + .7($60,000) = $72,000 Así que de acuerdo con el método del valor esperado, como d1, tiene el valor esperado más alto, ($72,000) d3 es la decisión a recomendar. Se pueden realizar de manera conveniente según un árbol de decisiones los cálculos requeridos para identificar la alternativa de decisión que tiene el mejor valor esperado. En la Fig. 14.2 se muestra el árbol de decisión para el problema de la PSI, en donde se han anotado en las ramas las probabilidades de los estados de la naturaleza. Se utilizan ahora las probabilidades de las ramas y el método del valor esperado para llegar a la decisión óptima para la PSI.
47
Como el decisor controla la rama que sale del nodo de decisión 1 y se está tratando de maximizar las utilidades esperadas, la mejor rama de decisión en el nodo 1 es d3. De modo que el análisis según el árbol de decisión conduce a recomendar d3 con un valor esperado de $72,000. Obsérvese que ésta es la misma recomendación que se obtuvo utilizando el método del valor esperado con la tabla de resultados.
3.4 ANÁLISIS DE SENSIBILIDAD | Para el problema de la PSI, los administradores proporcionaron una probabilidad de 0.3 para s1, el estado de la naturaleza de aceptación alta, y una probabilidad de 0.7 para s2, el estado de la naturaleza de aceptación baja. Utilizando estas probabilidades se encontró que la alternativa de decisión d3 tenía el mayor valor esperado y fue la decisión recomendada. En esta sección se considera la forma en la que cambios en las estimaciones de las probabilidades para los estados de la naturaleza pueden afectar o alterar la decisión que se recomienda. Al estudio del efecto de estos cambios se le denomina análisis de sensibilidad. Un enfoque para el análisis de sensibilidad consiste en considerar probabilidades diferentes para los estados de la naturaleza, y después volver a calcular el valor esperado de cada alternativa de decisión. Repitiendo varias veces este proceso puede comenzarse a observar la forma en que los cambios en las probabilidades de los estados de la naturaleza afectan a la decisión que se recomienda. Por ejemplo, supóngase que se considera un cambio en las probabilidades para los estados de la naturaleza de manera que P(s1) = 0.6 y P(s2) = 0.4.
48
Utilizando estas probabilidades y repitiendo los cálculos del valor esperado, se encuentra lo siguiente:
Por ello, con estas probabilidades la alternativa de decisión que se recomienda es d2, con un valor esperado de $112,000. Evidentemente, podría continuarse modificando las probabilidades de los estados de la naturaleza para comenzar a entender mejor la forma en que esos cambios afectan la decisión recomendada. La única desventaja de este método es que se requieren numerosos cálculos para evaluar el efecto de varios cambios posibles en las probabilidades de los estados de la naturaleza. Para el caso especial de análisis de decisiones con dos estados de la naturaleza, pueden simplificarse en forma considerable los cálculos del análisis de sensibilidad utilizando un procedimiento gráfico. Se ilustra este procedimiento analizando con mayor detalle el problema de la PSI. Se comienza denotando mediante p la probabilidad del estado de la naturaleza s1. Es decir,
Repitiendo el cálculo del valor esperado para las alternativas de decisión d2 y d3, se obtienen las siguientes expresiones para el valor esperado como función de p:
Por consiguiente, se han desarrollado tres ecuaciones lineales que expresan el valor esperado de las tres alternativas decisorias como función de la probabilidad del estado de la naturaleza s1. Se continúa desarrollando una gráfica, indicando los valores de p en el eje horizontal, y en el eje vertical los correspondientes valores esperados. Como las expresiones (14.5), (14.6) y (14.7) son todas ellas ecuaciones lineales, puede graficarse cada ecuación determinando cualesquiera dos puntos de la recta y trazando la recta correspondiente por los pun-tos. Utilizando VE(dj) de (14.5) como ejemplo, primero se fija p = 0 y se encuentra que VE(d1) = -20,000. Después, fijando p = 1, se encuentra que VE(d1) = 200,000. Uniendo estos dos puntos, (0, - 20,000) y (1, 200,000) se obtiene la recta identificada como VE(d1) en la Fig. 14.4. En tal figura se indica también una recta identificada como VE(d2) y otra como VE(d3); éstas últimas son las gráficas de (14.6) y (14.7), respectivamente.
49
Es posible ahora utilizar la Fig. 14.4 para llevar a cabo el análisis de sensibilidad. Recuérdese que la PSI está buscando maximizar las utilidades. Nótese que, para valores pequeños de p, la alternativa de decisión d3 ofrece el mayor valor esperado y es, por tanto, la decisión que se recomienda. De manera similar, para valores grandes de p, se observa que la alternativa de decisión d1, arroja el mayor valor esperado y es, por ello, la decisión que se recomienda. Nótese, además, que no hay ninguna parte de la gráfica para la que la alternativa de decisión d2 proporcione un mayor valor esperado. Así que con excepción del punto en donde se cruzan las tres rectas de valor esperado, y donde los tres valores esperados son iguales, la alternativa de decisión d2 no puede ser nunca la alternativa recomendada mediante el método del valor esperado. Con referencia de nuevo a la Fig. 14.4, se observa que las tres rectas se cortan en un valor de p que está entre 0.4 y 0.5. En otras palabras, en un punto entre 0.4 y 0.5, las tres alternativas de decisión dan el mismo valor esperado. Cuando dos o más rectas se cortan en una gráfica de análisis de sensibilidad pueden igualarse las ecuaciones de las dos rectas que se cortan para encontrar el valor de p. Utilizando las ecuaciones correspondientes a las alternativas de decisión d1 y d3, se obtiene
Por tanto, cuando p = 0.44, todas las alternativas de decisión arrojan el mismo valor esperado. Utilizando este valor de p en la Fig. 14.4 puede ahora concluirse que para p < 0.44, la alternativa de decisión d3 ofrece el mayor valor esperado, y que para p > 0.44 la alternativa de
50
decisión d1 da el mayor valor esperado. Como p es simplemente la probabilidad del estado s1 y (1 — p) es la probabilidad del estado s2, se tiene ahora la información del análisis de sensibilidad que muestra la forma en la que los cambios en las probabilidades de los estados de la naturaleza afectan la alternativa de decisión que se recomienda. El beneficio que se obtiene al realizar el análisis de sensibilidad es que puede ofrecer una mejor perspectiva sobre la evaluación original de los administradores respecto a las probabilidades de los estados de la naturaleza. Originalmente, los administradores estimaron que la probabilidad de una aceptación alta de los clientes era de P(s,) = 0.3. Como resultado, se recomendó la alternativa de decisión d3. Después de realizar el análisis de sensibilidad, puede indicarse ahora a los administradores que la estimación original de P(s1) no es demasiado crítica para considerar que d3 es la decisión recomendable. De hecho, mientras P(s1) < 0.44, la alternativa de decisión d3 sigue siendo la óptima. Obsérvese que en el problema de la PSI, las tres rectas de las tres alternativas de decisión que se graficaron en la Fig. 14.4 se cortan en el mismo punto (p = 0.44). No debe esperarse que cálculos similares de análisis de sensibilidad para otros problemas de análisis decisorios con dos estados de la naturaleza y tres alternativas de decisión den como resultado el mismo tipo de gráfica. El procedimiento gráfico para el análisis de sensibilidad que se describió aquí para el problema de la PSI se aplica sólo a problemas de análisis decisorio con dos estados de la naturaleza.
3.5 ANÁLISIS DE DECISIONES CON INFORMACIÓN MUESTRAL Al aplicar el método del valor esperado, se observó la forma en que la información acerca de las probabilidades de los estados de la naturaleza afecta los cálculos del valor esperado y, por ello, la decisión que es de recomendar. Con frecuencia, los decisores tienen estimaciones preliminares o previas de las probabilidades de los estados de la naturaleza que son, inicialmente, las mejores estimaciones de probabilidad disponibles. Sin embargo, a fin de adoptar la mejor decisión, es posible que el decisor pretenda obtener información adicional sobre los estados de la naturaleza. Se puede emplear esta nueva información para modificar o actualizar las probabilidades previas, de manera que la decisión final se base en estimaciones de probabilidad más precisas para los estados de la naturaleza. La mayor parte de las veces se busca la información adicional mediante experimentos diseñados para obtener información muestral o datos más actuales respecto a los estados de la naturaleza. El muestreo de materias primas, las pruebas de productos y las investigaciones de mercados de prueba son ejemplos de experimentos que pueden permitir una modificación o actualización de las probabilidades de los estados de la naturaleza. En el análisis que sigue se reconsidera el problema de, arrendamiento de computadora de la PSI, y se muestra la forma en que se puede usar información muestral para modificar las probabilidades de los estados de la naturaleza. Se indica después el modo en que pueden utilizarse las probabilidades modificadas para desarrollar una estrategia de decisiones óptimas para la PSI. Recuérdese que los administradores habían asignado una probabilidad de P(s1) = 0.3 al estado de la naturaleza s1 y una probabilidad de P(s2) = 0.7 al estado s2. En este momento se denominará a estas estimaciones iniciales de probabilidad, P(sl) y P(s2), probabilidades previas para los estados de la naturaleza. Utilizando estos valores se encontró que la decisión óptima era d3, la decisión de arrendar el sistema pequeño, lo cual daba como resultado un valor esperado de $72,000. Tiene que recordarse también que, en potencia, el valor esperado de la información nueva respecto a los estados de la naturaleza podría valer hasta VEIP = $30,000. Supóngase que la PSI decide considerar la posible contratación de una empresa de investigación de mercados para estudiar la aceptación potencial del servicio que ofrece la PSI. El estudio mercadológico ofrecería información nueva que podría combinarse con las
51
probabilidades previas, con un procedimiento bayesiano, para obtener estimaciones de probabilidad actualizadas o modificadas, para los estados de la naturaleza. A estas probabilidades modificadas se las denomina pro habilidades posteriores. En la Fig. 14.6 se ilustra el proceso de modificación de las probabilidades. A la nueva información que se obtiene mediante investigación o experimentación se la denomina indicador. Como en muchos casos el experimento realizado para obtener información adicional consiste en obtener una muestra estadística; también a menudo a la nueva información se la llama información muestral. Utilizando la terminología de indicador, pueden identificarse de la siguiente manera los resultados del estudio de investigación mercadotécnica para la PSI: I1 = reporte favorable de la investigación de mercado (es decir, en el estudio de las personas que se entrevistaron expresaron en general interés en los servicios de la PSI) I2 = reportes desfavorables de la investigación de mercado (es decir, en el estudio las personas a las que se entrevistó expresaron en general poco interés en los servicios de la PSI) Dado uno de estos posibles indicadores, el objetivo consiste en ofrecer estimaciones mejoradas de las probabilidades de los dos estados de la naturaleza. El resultado final del proceso de modificación bayesiana que se ilustra en la Fig. 14.6 es un conjunto de probabilidades
posteriores de la forma P(sj/k), en donde P(sj/Ik) representa la probabilidad condicional de que ocurra el estado de la naturaleza Sj, dado que el resultado del estudio de investigación de mercado fue el indicador Ik. Para utilizar de manera efectiva esta información del indicador se debe saber algo respecto a las relaciones de probabilidad entre los indicadores y los estados de la naturaleza Por ejemplo, en el problema de la PSI, dado que el estado de la naturaleza resulta ser en último análisis una aceptación alta entre los clientes, ¿cuál es la probabilidad de que el estudio de investigación mercadotécnica origine un reporte favorable? En este caso se pide la probabilidad condicional del indicador I1, dado el estado de la naturaleza s1 que se expresa como P(I1\s1). Para llevar a cabo el análisis, se requieren probabilidades condicionales para todos los indicadores, dados todos los estados de la naturaleza. En el ejemplo de la PSI, el historial de investigación mercadotécnica de la empresa sobre estudios similares ha conducido a las siguientes estimaciones de las probabilidades condicionales pertinentes.
3.6 VALOR ESPERADO DE LA INFORMACIÓN MUESTRAL
52
En el problema de la PSI, los administradores tienen ahora una estrategia de decisión que consiste en arrendar un sistema grande de computación si el reporte de la investigación! mercadotécnica es favorable, y arrendar un sistema pequeño si el reporte es desfavorable. Como la información adicional obtenida de la empresa mercadológica ocasiona un costo! adicional para la PSI en términos de los honorarios que se pagan a la empresa, los administradores de la PSI pueden cuestionar el valor de esta información sobre la investigación de mercado. Con frecuencia se mide el valor de la investigación muestral calculando lo que se denomina valor esperado de la información muestral (VEIM) Para problemas de maximización,
Para la PSI se considera que la información proveniente de la investigación de mercado es la información "muestral". Los cálculos del árbol de decisión indican que el valor esperado de la decisión óptima teniendo la información mercadológica era de $90,402, mientras que el valor esperado de la decisión óptima sin tal información era de $72,000. Con la ecuación (14.17), el valor esperado del reporte de la investigación de mercado es VEIM = $90,402 - $72,000 = 518,402 Por ello, la PSI debe estar dispuesta a pagar hasta $18,402 para obtener la información de dicha investigación. Eficiencia de la información muestral Teniendo la información perfecta una calificación de eficiencia del 100%, la calificación de eficiencia E, para la información muestral se calcula de la siguiente manera:
En otras palabras, la información que se obtiene de la empresa de investigación de mercados es 61.3% "eficiente", en comparación con la información perfecta. Unas evaluaciones de eficiencia bajas para la información muestral, pueden hacer que el decisor busque otros tipos de información. Por otro lado, las evaluaciones altas de eficiencia indican que la información muestral es casi tan buena como la información perfecta, y que no debieran considerarse como necesarias otras fuentes adicionales de información.
53
3.7 EJERCICIOS 1.- La firma Condominiums de Florida, adquirió recientemente terrenos cerca del Golfo de México y pretende determinar el tamaño del complejo de condominios que debe construir. Se consideran tres tamaños para el complejo. Pequeño, d1, mediano, d2 y grande d3. Al mismo tiempo, una economía incierta hace que resulte difícil determinar la demanda para los nuevos inmuebles. Los administradores advierten que un complejo grande con una demanda baja podría resultar muy gravoso para la compañía. Sin embargo, si se toma una decisión conservadora, construir un complejo pequeño, y después se encuentra con que hay una demanda alta, las utilidades (ganancias) de la empresa serían menores de lo que hubieran podido ser. Teniendo tres niveles de demanda (bajo, medio y alto), los administradores han preparado el siguiente cuadro de resultados:
a) Trace un árbol de decisiones para este problema. b) Si nada se sabe respecto a las probabilidades de la demanda, ¿cuáles son las recomendaciones para la decisión aplicando los métodos optimista, conservador y de la deploración minimax? 2.- La compañía Milford ubicada en Chicago, tiene solicitudes para transportar dos remesas, una a St. Louis, y otra a Detroit. Debido a un problema de programación Milford puede aceptar solamente uno de esos trabajos. El cliente de St. Louis garantizado un envío de regreso, pero el de Detroit no. Por tanto, si Milford el embarque de Detroit y no puede encontrar un embarque de regreso de Detroit a Chicago, el camión regresaría vacío a este último lugar. La tabla que muestra las utilidades es la siguiente:
a) Si la probabilidad de lograr un envío de regreso de Detroit es 0.4, ¿qué debe hacer Milford? b) Aplique un análisis de sensibilidad gráfico para determinar los valores de probabilidad del estado de la naturaleza s1 para que d1, tenga el mayor valor esperado.
54
UNIDAD 4 OBJETIVO PARTICULAR DE LA UNIDAD Al término de la unidad el estudiante conocerá la utilidad de los criterios múltiples para toma de decisiones y aplicará algoritmos para la solución de problemas industriales.
OBJETIVOS ESPECÍFICOS Matriz de comparaciones pareadas Criterio de prioridad Sintetizar juicios Relación de consistencia Prioridad global Casos prácticos
55
Unidad 4: PROCESO ANALITICO DE JERARQUIAS El Proceso Analítico de Jerarquías (PAJ) está diseñado para resolver problemas complejos que tienen criterios múltiples. El proceso requiere que quien toma las decisiones proporcione evaluaciones subjetivas respecto a la importancia relativa de cada uno de los criterios y que, después, especifique su preferencia con respecto a cada una de las alternativas de decisión y para cada criterio. El resultado del PAJ es una jerarquización con prioridades que muestra la preferencia global para cada una de las alternativas de decisión. Para describir el PAJ, se considera el problema que enfrenta David Payne, quien está planeando adquirir un automóvil nuevo. Después de un análisis preliminar de las marcas y los modelos disponibles, ha reducido su lista de alternativas de decisión a tres automóviles, a los que se denomina auto A, auto B y auto C. En la Tabla 15.1 se presenta un resumen de la información que David ha recopilado con respecto a estos automóviles.
Con base en la información de la Tabla 15.1, y con base también en sus impresiones personales al manejar cada uno de los coches, Payne decide que hay diversos criterios que debe considerar para tomar su decisión sobre la compra. Después de alguna reflexión, elige el precio de compra, las Millas Por Galón (MPG), la comodidad y el estilo como los cuatro criterios que debe considerar. Los datos cuantitativos con respecto al precio de compra y el criterio de MPG se proporcionan directamente en la Tabla 15.1. Sin embargo, no es posible especificar de manera tan sencilla las medidas de comodidad y estilo. Será necesario que el señor Payne considere factores como interiores del coche, tipo de radio, facilidad para entrar y salir, características de ajuste de los asientos, etc., con objeto de determinar el nivel de comodidad para cada automóvil. Será necesario medir el criterio de estilo en términos de la evaluación subjetiva que haga de cada coche. Aun cuando se maneja un criterio de tan fácil medición como el precio de compra, la subjetividad se convierte en un aspecto importante cuando un tomador de decisiones específico indica sus preferencias personales. Por ejemplo, el auto A cuesta $3,600 (dólares) más que el auto C; esta diferencia podrá representar una gran cantidad de dinero para una persona, pero no mucho para otra. Así, independientemente de si se considera que el auto A es extremadamente más costoso que el auto C, o sólo moderadamente de más costo que éste, es un juicio subjetivo que depende primordialmente de la posición financiera de la persona que hace la comparación. Una ventaja del PAJ es que está diseñado para manejar situaciones como ésta, en la que las evaluaciones subjetivas de las personas constituyen una parte importante del proceso de decisión.
4.1 Desarrollo de la jerarquía
56
El primer paso del PAJ consiste en elaborar una representación gráfica del problema en términos de la meta global, los criterios y las alternativas de decisión. Esta gráfica ilustra la jerarquía para el problema. En la Fig. 15.5 se muestra la jerarquía para el problema de selección de automóvil. Obsérvese que el primer nivel de la jerarquía muestra que la meta global consiste en elegir el mejor automóvil. Al segundo nivel, se observa que los
cuatro criterios (precio de compra, MPG, comodidad y estilo) contribuirán al logro de la meta global. Finalmente, al tercer nivel, se observa que cada una de las alternativas de decisión (auto A, auto B y auto C) pueden contribuir en forma única a cada uno de los criterios. El método que sigue el PAJ consiste en hacer que el decisor especifique sus opiniones con respecto a la importancia relativa de cada uno de los criterios en términos de su contribución al logro de la meta global. En el siguiente nivel, el PAJ pide a quien toma las decisiones señalar una preferencia o prioridad con respecto a cada alternativa de decisión en términos de la medida en la que contribuya a cada criterio. Por ejemplo, en el problema de selección de automóvil, será necesario que Payne especifique su opinión con respecto a la importancia relativa de cada uno de los cuatro criterios. Pero también será necesario que indique su preferencia con respecto a cada uno de los tres automóviles y con respecto a cada criterio. Teniendo la información sobre la importancia relativa y las preferencias, se utiliza un proceso matemático para resumir la información y para proporcionar una jerarquización de prioridades de los tres automóviles, en términos de su preferencia global.
4.2 ESTABLECIMIENTO DE PRIORIDADES UTILIZANDO EL PAJ Comparaciones pareadas Las comparaciones pareadas son bases fundamentales del PAJ. Al establecer las prioridades para los tres automóviles en términos de comodidad, se pide a Payne plantear preferencia para la comodidad de los coches cuando se consideran de dos a la vez (pare dos). Es decir, se pedirá al señor Payne comparar la comodidad del automóvil A con del B; del auto A con el auto C, y del auto B con el coche C, en tres comparaciones separadas. El PAJ utiliza una escala subyacente con valores de 1 a 9 para calificar las preferencia relativas de los dos elementos. En la Tabla 15.2 se presentan las calificaciones numéricas que se recomiendan para las preferencias verbales expresadas por el decisor. Diversas
57
investigaciones y experiencias han confirmado que la escala con 9 unidades es una base razonabl para distinguir las preferencias entre dos artículos.
En el ejemplo de la selección de automóvil, supóngase que Payne ha comparado las comodidades del automóvil A con las del B y está convencido de que A es más cómodo. Después se le pide establecer su preferencia respecto a la comodidad entre el automóvil A y el B utilizando una de las descripciones verbales que se muestran en la Tabla 15.2. Si se considera que se prefiere moderadamente el automóvil A y no el B, se utiliza un valor de 3 en el PAJ; si considera que se prefiere en gran medida A respecto a B, se utiliza un valor de 5; si se considera la preferencia del auto A en gran mayor medida, se utiliza un valor de 7; si se considera que la preferencia es extrema, se usa un valor de 9. Los valores 2, 4, 6 y 8 son los valores intermedios de la escala. Se reserva un valor de 1 para el caso en que se juzgue que la preferencia entre los dos elementos es igual. Supóngase que cuando se le pregunta acerca de su preferencia entre los autos A y B respecto al criterio de comodidad, Payne afirma que el automóvil A está entre ser igual o moderadamente preferible que B; la medición numérica que refleja esta opinión es 2. Después se le pide a Payne proporcionar su preferencia entre A y C. Supóngase que en este caso afirma que A tiene una preferencia entre muy fuerte a extrema respecto al automóvil C; eso corresponde a una calificación numérica de 8. Finalmente, se le pide plantear su preferencia para el automóvil B en comparación con el C. Supóngase que en este caso seña que B está en una preferencia entre fuerte y muy fuerte respecto a C; el PAJ asignaría una calificación numérica de 6. Matriz de comparaciones pareadas Con objeto de desarrollar las prioridades para los tres autos en términos del criterio de comodidad es necesario desarrollar una matriz con las calificaciones de las comparaciones pareadas. Como son 3 los autos que se consideran, la matriz de comparaciones pareadas constará de tres renglones y tres columnas. Se muestra en seguida una parte de la matriz de comparaciones pareadas con base en las preferencias que ha especificado David.
58
Nota: En la matriz de comparaciones pareadas, el valor del renglón i y la columna j es la medida de la preferencia del automóvil en el renglón i cuando se le compara con el automóvil de la columna j. Se observa que el valor de la matriz que corresponde a la comparación de A con B es 2; el valor que corresponde a la comparación entre A y C es 8, y el valor que corresponde a la comparación entre B y C es 6. Para determinar los elementos restantes de la matriz de comparaciones pareadas, obsérvese en primer lugar que cuando se compara cualquier automóvil consigo mismo la opinión debe ser que tiene preferencia igual. Por ello, utilizando la escala que se muestra en la Tabla 15.2, la calificación del auto A en comparación con el A, del B con el B y del C con el C deben ser 1. Por ello, el PAJ asigna 1 a todos los elementos de la diagonal de la matriz de comparaciones pareadas. Teniendo estos elementos, todo lo que resta es determinar la calificación del auto B en comparación con el auto A, la de C en comparación con A y la de C en comparación con B. Evidentemente, se podría seguir el mismo procedimiento y pedir al señor Payne que señale sus preferencias para estas comparaciones en el PAJ. Sin embargo, como ya se sabe que asignó una calificación de 2 para su preferencia sobre el automóvil A con respecto al B, no es necesario ya que haga otra comparación pareada entre estos dos autos. De hecho, se concluye que la calificación de la preferencia para el automóvil B cuando se le compara con el A, es simplemente el inverso de la calificación de preferencia para A cuando se le compara con B: Vi. A fin de observar en forma intuitiva por qué se usa el inverso, nótese que el valor de preferencia de 2 se interpreta considerando que indica que A es doblemente preferible a B. Así se sigue que B debe ser la mitad de preferible que A. Utilizando esta lógica, el PAJ obtiene la calificación de preferencia del auto B en comparación con el A calculando el inverso de la calificación del auto A en comparación con el B. Utilizando esta relación inversa, o recíproca, se encuentra que la calificación de C en comparación con A es 1/8, y la calificación de Cen comparación con B, es 1/6. Con estos valores numéricos de preferencia, la matriz de comparaciones pareadas completa para el criterio de comodidad es la que se muestra en la Tabla 15.3.
4.3 Procedimiento para sintetizar juicios Una vez que se elabora la matriz de comparaciones pareadas se puede calcular lo que se denomina prioridad de cada uno de los elementos que se comparan. Por ejemplo, sería deseable ahora utilizar la información de comparaciones pareadas de la Tabla 15.3 para estimar la prioridad relativa para cada uno de los automóviles en términos del criterio de comodidad. A esta parte del PAJ se le conoce como sintetización. El procedimiento matemático preciso que se requiere para realizar tal sintetización implica el cálculo de valores y vectores característicos complicados. Sin embargo, el siguiente procedimiento de tres pasos proporciona una buena aproximación de las prioridades sintetizadas.
59
Procedimiento para sintetizar juicios Paso 1 Sumar los valores en cada columna de la matriz de comparaciones pareadas. Paso 2 Dividir cada elemento de tal matriz entre el total de su columna; a la matriz resultante se la denomina matriz de comparaciones pareadas normalizada. Paso 3 Calcular el promedio de los elementos de cada renglón de la matriz normalizada; estos promedios proporcionan una estimación de las prioridades relativas de los elementos que se comparan. Para ver la forma en que funciona el proceso de sintetización para el problema de ejemplo, se lleva a cabo el procedimiento utilizando la matriz de comparaciones pareadas que se muestra en la Tabla 15.3. Los 3 pasos son los siguientes. Paso 1 Sumar los valores de cada columna.
Paso 2 Dividir cada elemento de/la matriz entre el total de su columna.
Esta síntesis proporciona las probabilidades relativas de los tres automóviles respecto al criterio de comodidad. De modo que se observa que considerando la comodidad, el automóvil más preferible es A (con probabilidad de 0.593). En segundo lugar se encuentra el automóvil B (con una probabilidad de 0.341), y seguido del automóvil C (con una probabilidad de 0.066). El vector de prioridades que muestra las prioridades relativas de los tres automóviles, A, B y C, respecto al criterio de comodidad, se escribe de la siguiente manera: 0.593 0.341 0.066
60
4.4 Obtención de la relación de consistencia Un paso crucial del PAJ es el establecimiento de prioridades mediante el uso del procedimiento de comparaciones pareadas que se acaba de describir. Una consideración importante en términos de la calidad de la decisión final se refiere a la consistencia de los juicios que muestra el tomador de decisiones en el transcurso dé la serie de comparaciones pareadas. Por ejemplo, considérese un caso en el que se comparan tres ofertas de empleo respecto al criterio de sueldo. Supóngase que se obtiene la siguiente matriz de comparaciones pareadas:
La interpretación de las calificaciones sobre preferencias es que la preferencia por el empleo 1 es del doble de la preferencia por el empleo 2, y que la preferencia por el empleo 2 es de 3 tantos la preferencia por el empleo 3. Utilizando estos dos elementos de información, lógicamente se concluirá que la preferencia por el empleo 1 debe ser de 2 x 3 = 6 veces la preferencia por el empleo 3. El hecho de que la matriz de comparaciones pareadas muestre una preferencia de 8 en vez de 6 muestra cierta falta de consistencia en las comparaciones pareadas. Sin embargo, antes de que la falta de consistencia en las comparaciones pareadas se convierta en una preocupación excesiva, se debe tener presente que la consistencia perfecta es muy difícil de lograr y que es de esperar cierta inconsistencia en casi cualquier conjunto de comparaciones pareadas. Para manejar la cuestión de la consistencia, el PAJ ofrece un método para medir el grado de consistencia entre las opiniones pareadas que proporciona el decisor. Si el grado de consistencia es aceptable, puede continuarse con el proceso de decisión. Sin embargo, si el grado de consistencia es inaceptable, quien toma las decisiones debe reconsiderar y posiblemente modificar sus juicios sobre las comparaciones pareadas antes de continuar con el análisis. El PAJ proporciona una medida de la consistencia de los juicios en las comparaciones pareadas calculando la Relación de Consistencia (RC) (o CR, de Consistency Ratio). Esta relación o cociente está diseñado de manera que los valores que exceden de 0.10 son señal de juicios inconsistentes; es probable que en estos casos el tomador de decisiones desee reconsiderar y modificar los valores originales de la matriz de comparaciones pareadas. Se considera que los valores-de la relación de consistencia de 0.10 o menos son señal de un nivel razonable de consistencia en las comparaciones pareadas. Aunque el cálculo matemático exacto de la relación de consistencia está fuera del alcance de este texto, puede obtenerse una aproximación. Se ilustra este procedimiento de cálculo para el problema de la selección de automóviles considerando las comparaciones paread que formuló el señor Payne para el criterio de comodidad. Se ilustran y se describen seguida los pasos del procedimiento de cálculo. Estimación de la relación de consistencia Paso 1 Multiplicar cada valor de la primera columna de la matriz de comparaciones pareadas por la prioridad relativa del primer elemento que se considera; multiplicar cada valor de la segunda columna de la matriz por la prioridad relativa del segundo elemento considerado; multiplicar cada valor de la tercera columna de la matriz por la prioridad relativa del tercer
61
elemento que se considera. Sumar los valores sobre los renglones para obtener un vector de valores al que se denomina "suma ponderada". Este cálculo para el ejemplo de selección del automóvil es
Paso 5 Determinar la relación de consistencia (RC), que se define de la siguiente manera:
62
en donde IA, el índice aleatorio, es el índice de consistencia de una matriz de comparaciones pareadas generada en forma aleatoria. Se puede mostrar que IA depende del número de elementos que se comparan y asume los siguientes valores:
Por ello, para este ejemplo de selección de automóvil con n = 3 e IA = 0.58, se obtiene la siguiente relación de consistencia:
Como se mencionó antes, se considera aceptable una relación de consistencia de 0.10 o menos. Como en el ejemplo se obtiene un valor de 0.017, este grado de consistencia de la matriz de comparaciones pareadas para la comodidad resulta aceptable. Otras comparaciones pareadas para el ejemplo de selección de automóvil Al continuar con el análisis del PAJ del problema de la selección de automóvil, es necesario utilizar el procedimiento de comparaciones pareadas para determinar las prioridades de los tres automóviles en términos de los criterios de precio de compra, MPG y estilo. Para esto se requiere que el señor Payne exprese sus preferencias por los autos en comparaciones pareadas, considerando cada uno de esos criterios a la vez. Suponiendo que ya se ha hecho esto, se resumen las preferencias de Payne. en las matrices de comparaciones pareadas que se muestran en la Tabla 15.4.
63
La interpretación de los valores numéricos de la Tabla 15.4 es igual a la interpretación de los valores de preferencia que se observaron para el criterio de comodidad. Por ejemplo, considérese la comparación del auto A y del auto B en términos del criterio del precio de compra. Se considera que B ($11,200) es preferible a A ($13,100). De hecho, la matriz de comparaciones pareadas muestra que la preferencia de Payne por B es 3 veces superior que su preferencia por A en términos del precio de compra. De manera similar, el auto A se prefiere solamente en 1/3 respecto al auto B. Recuérdese que la matriz de comparaciones pareadas se elabora para mostrar la preferencia del artículo del renglón / cuando se le compara con el artículo de la columna j. Siguiendo el mismo proceso de síntesis utilizado para el criterio de comodidad, es posible calcular los vectores de prioridades para estos criterios. El resultado de esta síntesis se muestra en la Tabla 15.5.
Al interpretar estas prioridades se observa que C es el más preferible en términos de precio de compra (0.557) y de millas por galón (0.639). El auto B es el más preferible en^ función de estilo (0.655). Ninguno de los vehículos es más preferido respecto a todos los criterios. Por ello, antes de que sea posible tomar una decisión final, debe evaluarse la' importancia relativa de los criterios. Además de las comparaciones pareadas para las alternativas de decisión, debe utilizar» el mismo procedimiento de comparaciones pareadas para fijar prioridades para la totalidad de los cuatro criterios en términos de la importancia que cada uno de ellos tiene al contrita hacia la meta global de elegir el mejor automóvil. Para desarrollar esta matriz final comparaciones pareadas, Payne tendría que especificar cuan importante considera cada criterio en comparación con los demás. Para hacer esto es necesario realizar 6 juicios i pares: el precio
64
de compra comparado con las MPG; el precio de compra comparado con la comodidad; el precio de compra comparado con el estilo; MPG comparado con la comodidad; MPG comparado con el estilo; y la comodidad comparada con el estilo. Por ejemplo! en la comparación pareada de los criterios de precios de compra y de MPG, Payne ser que el precio de compradera moderadamente más importante que MPG; utilizando la escala numérica de calificación de 9 puntos del PAJ (Tabla 15.2) se registra un valor de 3 señalar la mayor importancia del criterio del precio de compra. En la Tabla 15.6 se muestra el resumen de la matriz de comparaciones pareadas con las preferencias entre los cuatro criterios.
Puede ahora utilizarse el proceso de sintetización que se describió en una parte anterior de esta sección para convertir la información de las comparaciones apareadas en las prioridades para los cuatro criterios. Los resultados que se obtienen son los siguientes:
Se observa que se ha identificado el precio de compra (0.398) como el criterio de mayor prioridad, o más importante, en la decisión sobre la selección de automóvil. El estilo (0.299) y la comodidad (0.218) son los que le siguen en importancia. Las millas por galón (0.085) es un criterio relativamente poco importante en términos de la meta global de elegir el mejor automóvil. En la siguiente sección se observa la forma en la que el PAJ utiliza la información sobre prioridades que se generó en esta sección para elaborar una jerarquización global de prioridades para los tres automóviles.
4.5 Desarrollo de una jerarquía global de prioridades En la sección anterior se mostró la forma en que puede utilizarse una matriz de comparaciones pareadas para elaborar una jerarquización con prioridades de los elementos que se comparan. En esta sección se muestra la forma en que se pueden combinar las prioridades de los criterios y las prioridades de cada una de las alternativas de decisión con respecto a cada criterio para elaborar una jerarquización global de las prioridades de las alternativas de decisión. La Tabla 15.7 contiene una matriz que resume las prioridades para cada automóvil en términos de cada, criterio, según se calcularon en la Secc. 15.4. A esta matriz se la denomina matriz de prioridades.
65
La mejor manera de comprender el procedimiento que se utiliza para calcular las prioridades globales para cada alternativa de decisión consiste en pensar que la prioridad para cada criterio es un peso o ponderación que refleja su importancia. La prioridad global para cada alternativa de decisión se obtiene sumando el producto de la prioridad del criterio por la prioridad de la alternativa de decisión con respecto a ese criterio. Recuérdese que se encontró que las prioridades de los criterios eran 0.398 para el precio de compra 0.085 para las MPG, 0.218 para la comodidad, y 0.299 para el estilo. Así, el cálculo de la prioridad global para el automóvil A es el siguiente: Prioridad global del auto A = 0.398(0.123) + 0.085(0.087) + 0.218(0.593) + 0.299(0.065) = 0.265 Repitiendo este cálculo para los automóviles B y C se obtienen sus prioridades globales de la siguiente manera: Prioridad global del auto B = 0.398(0.320) + 0.085(0.274) + 0.218(0.341) + 0.299(0.655) = 0.421 Prioridad global del auto C = 0.398(0.557) + 0.085(0.639) + 0.218(0.066) + 0.299(0.080) = 0.314 Ordenando estos valores de prioridad, se tiene la siguiente jerarquización del PAJ para las alternativas de decisión:
Estos resultados proporcionan una base para que Payne tome una decisión respecto a la adquisición de un automóvil. Con base en las prioridades del PAJ, Payne debe elegir el auto B. El que decida o no comprar en realidad el automóvil B con base en el análisis de PAJ sigue siendo su decisión. Si Payne considera que las opiniones que ha expresado respecto a la importancia de los criterios y que sus preferencias por los automóviles en término de los criterios son ambas validas, entonces las prioridades del PAJ muestran que el automóvil preferible es el B. El que decida comprar o no el auto B puede no ser tan importante como los conocimientos adicionales que sobre el problema ha obtenido como resultado de realizar el análisis que el PAJ requiere. Esto puede ser en sí mismo tan útil para Payne como la recomendación real sobre la decisión que ha obtenido.
66
4.6 EJERCICIOS 1.- Una organización considera reubicar sus oficinas matrices corporativas en una de tres posibles ciudades. La siguiente matriz de comparaciones pareadas muestra las opiniones del presidente respecto a la deseabilidad de las tres ciudades:
a) Determine las prioridades para las tres ciudades. b)¿Es consistente el presidente en términos de los juicios que ofrece? Explique. 2.- Se pidió a una persona comparar tres bebidas gaseosas en lo que respecta a sabor. Se obtuvieron las siguientes opiniones: A es moderadamente preferible a B. A es entre igualmente y moderadamente preferible a C. B es fuertemente preferible a C. a) Elabore la matriz de comparaciones pareadas de este problema. b) Determine las prioridades de las bebidas con respecto al criterio de sabor. c) Calcule la relación de consistencia. ¿Son consistentes las opiniones de esta persona? Explique. 3.- Un estudio en el que se comparaban cuatro computadoras personales dio como resultado la siguiente matriz de comparaciones pareadas para el criterio de desempeño:
a) Determine las prioridades para las cuatro computadoras con respecto al criterio de desempeño. b) Calcule la RC. ¿Son consistentes las opiniones respecto al desempeño? Explique. 4.- Una persona estaba interesada en determinar en cuál de dos acciones de empresas debía invertir, Central Computing Company (CCC) o Software Research, Inc. (SRI). Se consideró que los criterios más importantes para tomar la decisión son el rendimiento potencial de las acciones, y el riesgo correspondiente a la inversión. Las matrices de comparaciones pareadas para este problema son las siguientes:
67
a) Represente la jerarquía para este problema. b) Calcule las prioridades para cada una de las matrices de comparaciones pareadas. c) Determine la prioridad global para las dos inversiones. 5.- El vicepresidente de Harling Equipment necesita seleccionar a un nuevo director de mercadotecnia. Los dos posibles candidatos son Bill Jacobs y Sue Martin, y los criterios que se consideran más relevantes en la selección son la aptitud de liderazgo (L), habilidades personales (P) y habilidades administrativas (A). Se obtuvieron las siguientes matrices de comparaciones pareadas:
a) Represente la jerarquía para este problema de decisión. b) Calcule las prioridades para cada una de las matrices de comparaciones pareadas. c) Determine una prioridad global para cada uno de los candidatos. 6.- Una dama considera la adquisición de un sistema de sonido estéreo para su automóvil, y ha observado tres sistemas que varían en términos de precio (P), calidad del sonido (Q) y recepción en frecuencia modulada (FM). Se desarrollaron las siguientes matrices de comparaciones pareadas:
a) Represente la jerarquía para este problema de decisión. b) Calcule las prioridades para cada una de las matrices de comparaciones pareadas. c) Determine una prioridad global para cada uno de los sistemas.
.
.
68
UNIDAD 5 OBJETIVO PARTICULAR DE LA UNIDAD Al término de la unidad el estudiante conocerá y aplicará el enfoque de programación dinámica a problemas determinísticos desarrollando y solucionando casos prácticos con aplicación industrial.
OBJETIVOS ESPECÍFICOS Enfoque de programación dinámica Características básicas Identificación de estructuras Uso de diagramas Aplicación del algoritmo El problema de la mochila Casos prácticos
69
UNIDAD 5: PROGRAMACIÓN DINAMICA Introducción a Programación dinámica Muchos problemas de programación matemática determinan soluciones que repercuten en la formulación de los problemas a resolver en el próximo periodo o etapa. Una alternativa es construir un único modelo completo que tenga un gran conjunto de variables indexadas por etapas e internalizar las relaciones entre etapas como una restricción del problema. Sin embargo esto pude agrandar mucho el tamaño del problema. Surge así la Programación Dinámica (PD) como una alternativa de descomposición en que resolvemos subproblemas más pequeños y luego los ligamos. Así programación dinamia consiste en solucionar el presente suponiendo que en cada etapa futura siempre se tomaran las decisiones correctas. 5.1.-Enfoque de programación dinámica La programación dinámica es un enfoque general para la solución de problemas en los que es necesario tomar decisiones en etapas sucesivas. Las decisiones tomadas en una etapa condicionan la evolución futura del sistema, afectando a las situaciones en las que el sistema se encontrará en el futuro (denominadas estados), y a las decisiones que se plantearán en el futuro. Conviene resaltar que a diferencia de la programación lineal, el modelado de problemas de programación dinámica no sigue una forma estándar. Así, para cada problema será necesario especificar cada uno de los componentes que caracterizan un problema de programación dinámica. El procedimiento general de resolución de estas situaciones se divide en el análisis recursivo de cada una de las etapas del problema, en orden inverso, es decir comenzando por la última y pasando en cada iteración a la etapa antecesora. El análisis de la primera etapa finaliza con la obtención del óptimo del problema. 5.1.1.-PROGRAMACION DINAMICA DETERMINISTICA Esta sección considera con mayor amplitud el enfoque de programación dinámica para los problemas determinísticos, en los que el estado en la etapa siguiente queda completamente determinado por el estado y la política en la etapa actual. La programación dinámica determinística se puede describir en forma de diagrama de la siguiente forma:
Una manera de catalogar los problemas de programación dinámica determinística es por la forma de la función objetiva. Por ejemplo, el objetivo podría ser minimizar la
70
suma de contribuciones de las etapas individuales, o bien minimizar un producto de tales términos y así sucesivamente. En un problema de programación dinámica, las temporadas deben ser las etapas. 5.1.2.-PROGRAMACION DINAMICA PROBABILISTICA La programación dinámica probabilística difiere de la programación dinámica determinística en que el estado de la etapa siguiente no queda completamente determinado por el estado y la decisión de la política en el estado actual. En lugar de ello existe una distribución de probabilidad para lo que será el estado siguiente. Sin embargo, esta distribución de probabilidad todavía está completamente determinada por el estado y la decisión de la política del estado actual. En la siguiente figura se describe diagramáticamente la estructura básica que resulta para la programación dinámica probabilística, en donde N denota el número de estados posibles en la etapa n+1. Para ver el gráfico seleccione la opción "Descargar" del menú superior Cuando se desarrolla de esta forma para incluir todos los estados y decisiones posibles en todas las etapas, a veces recibe el nombre de árbol de decisión. Si el árbol de decisión no es demasiado grande, proporciona una manera útil de resumir las diversas posibilidades que pueden ocurrir. 5.2.-Modelos de programación dinámica Espacio de estados: { } es una familia de conjuntos, uno para cada período n. S se denomina espacio de estados en el período n. Cada uno de sus elementos, que se representa mediante Sn, es un estado, que describe una posible situación del proceso en ese período. En nuestro ejemplo, S1 = {1}, S2= {2, 3, 4}, S3= {5, 6, 7}, S4= {8, 9}. La función recursiva: Dados unos nodos y unos arcos que conectan estos nodos, el problema de la diligencia intenta encontrar la ruta más corta que conecta un nodo de arranque con el nodo final (el destino). Sea s: el estado de inicio; j: estado destino • n: la fase, normalmente representa el número de arcos hasta el destino. •
C(s, j): costo o distancia de ir desde s hasta j.
•
f(n, s): la política de costo mínimo cuando se encuentra en el estado s de la etapa n.
•
La relación recursiva dinámica se expresa como
F(n, s) = mínimo [C(s, j) + f(n-1, j)] para todos los arcos (s, j) en la red 5.2.1.-PROBLEMA DE LA DILIGENCIA. Este problema trata sobre un caza fortunas de Missouri que decide ir al oeste a unirse a la fiebre del oro en California a mediados del siglo XIX.
71
Tiene que hacer el viaje en diligencia a través de territorios sin ley cuando existían serios peligros de ser atacado. Aún cuando su punto de partida y su destino eran fijos, tenía muchas opciones en cuanto a qué estados debía elegir como puntos intermedios. En el diagrama siguiente se ilustran las posibles rutas en donde la dirección del viaje es siempre de izquierda a derecha. Para ver el gráfico seleccione la opción "Descargar" del menú superior Se requieren 4 etapas para viajar desde su punto de partida en el estado A a su destino en el estado J. Preocupado por la seguridad de su viaje se le ocurrió una manera bastante ingeniosa para determinar la ruta más segura. Se le ofrecían pólizas de seguros de vida a los viajeros de manera que para determinar la ruta más segura habría que elegir la que tuviera el menor costo total de la póliza. Los costos de las pólizas vienen dados en el diagrama. El problema es determinar la ruta que minimiza el costo total de la póliza. Observemos primero que el procedimiento de elegir la ruta más barata en cada etapa sucesiva no conduce a una decisión óptima global. Al seguir esta estrategia se obtiene la ruta A,B,F,I,J con un costo de 13, pero un pequeño sacrificio en una etapa permite mayores ahorros en la etapa siguiente, así por ejemplo, A,D, F es más barato que A,B,F. La programación dinámica empieza con una pequeña porción del problema original y encuentra la solución óptima para este problema pequeño. En el problema de la diligencia se comienza con el problema sencillo en el que el agente casa ha llegado al final de su viaje y sólo tiene una etapa más por recorrer. En cada una de las iteraciones siguientes, el problema se agranda aumentando de uno en uno el número de etapas que le quedan por recorrer para completar el viaje. Formulación: Sean xn = variables que representan el destino inmediato de la etapa n. fn(s,xn) = costo total = costo inmediato (etapa n) + mínimo costo futuro (etapas n+1 en adelante) = csxn+ fn+1*(s,xn*) fn*(s) = mín fn(s,xn) = fn(s,xn*) Como el destino final (estado J) se alcanza al terminar la etapa 4, f5*(J) = 0. El objetivo es encontrar f1*(A) y la ruta correspondiente. La programación dinámica la encuentra al hallar sucesivamente f4*(s), f3*(s), f2*(s) para cada uno de los estados posibles s y usar después f2*(s) para encontrar f1*(A). Procedimiento de solución: n=4 s
f4*(s) x4*
H
3
72
J
I
4
J
s
H
I
f3*(s) x3*
E
4
8
4
H
F
9
7
7
I
G
6
7
6
H
n=3
n=2 f2*(s) x2*
s
E
F G
B
11
11 12 11
EóF
C
7
9 10 7
E
D
8
8 11 8
EóF
s
B
C D
A
13
11 11 11
n=1 f1*(s) x1* CóD
En este punto se puede identificar una solución óptima a partir de las 4 tablas: A-C-EH-J o bien A-D-E-H-J o bien A-D-F-I-J. CARACTERISTICAS GENERALES DE LOS PROBLEMAS DE PROGRAMACION DINAMICA. El problema de la diligencia es un prototipo literal de los problemas de programación dinámica. Por tanto una manera de reconocer una situación que se puede formular como un problema de programación dinámica es poder identificar una estructura análoga a la del problema de la diligencia. CARACTERISTICAS BASICAS: 1.- El problema se puede dividir en etapas que requieren una política de decisión en cada una de ellas. 2.- Cada etapa tiene cierto número de estados asociados con su inicio. Los estados son las distintas condiciones posibles en las que se puede encontrar el sistema en cada etapa del problema. 3.- El efecto de la política de decisión en cada etapa es transformar el estado actual en un estado asociado con el inicio de la siguiente etapa. 4.- El procedimiento de solución está diseñado para encontrar una política óptima para el problema completo.
73
5.- Dado el estado actual, una política óptima para las etapas restantes es independiente de la política adoptada en etapas anteriores. Este es el principio de optimalidad para programación dinámica. 6.- El procedimiento de solución se inicia al encontrar la política óptima para la última etapa. 7.- Se dispone de una relación recursiva que identifica la política óptima para la etapa n, dada la política óptima para la etapa n+1. La forma precisa de relación recursiva difiere de un problema a otro de programación dinámica, pero usaremos una notación análoga a la siguiente: N = número de etapas. n = etiqueta para la etapa actual ( n = 1,2,...,N) sn = estado actual para la etapa n xn = variable de decisión para la etapa n xn* = valor óptimo de xn (dado sn) fn(sn,xn) = contribución a la función objetivo de las etapas n, n+1,...,N, si el sistema se encuentra en el estado sn en la etapa n, la decisión inmediata es xn y en adelante se toman decisiones óptimas. fn*(sn) = fn(sn,xn*) La relación recursiva siempre tendrá la forma: fn*(sn) = mín fn(sn,xn) ó fn*(sn) = max fn(sn,xn) 8.- Cuando se usa esta relación recursiva, el procedimiento de solución comienza al final y se mueve hacia atrás etapa por etapa, hasta que encuentra la política óptima desde la etapa inicial. 5.2.2.- La Ruta corta Considere una red conexa y no dirigida con dos nodos especiales llamados origen y destino. A cada ligadura (arco no dirigido) se asocia una distancia no negativa. El objetivo es encontrar la ruta más corta (la trayectoria con la mínima distancia total) del origen al destino. Se dispone de un algoritmo bastante sencillo para este problema. La esencia del procedimiento es que analiza toda la red a partir del origen; identifica de manera sucesiva la ruta más corta a cada uno de los nodos en orden ascendente de sus distancias (más cortas), desde el origen; el problema queda resuelto en el momento de llegar al nodo destino. Algoritmo de la ruta más corta: 1.-Objetivo de la n-ésima iteración: encontrar el n-ésimo nodo más cercano al origen. (Este paso se repetirá para n=1,2,… hasta que el n-ésimo nodo más cercano sea el nodo destino.) 2.-Datos para la n-ésima iteración: n-1 nodos más cercanos al origen (encontrados en las iteraciones previas), incluida su ruta más corta y la distancia desde el origen. (Estos nodos y el origen se llaman nodos resueltos, el resto son nodos no resueltos.)
74
3.-Candidatos para el n-ésimo nodo más cercano: Cada nodo resuelto que tiene conexión directa por una ligadura con uno o más nodos no resueltos proporciona un candidato, y éste es el nodo no resuelto que tiene la ligadura más corta. (Los empates proporcionan candidatos adicionales.) 4.-Cálculo del n-ésimo nodo más cercano: para cada nodo resuelto y sus candidatos, se suma la distancia entre ellos y la distancia de la ruta más corta desde el origen a este nodo resuelto. El candidato con la distancia total más pequeña es el n-ésimo nodo más cercano (los empates proporcionan nodos resueltos adicionales), y su ruta más corta es la que genera esta distancia. En la figura siguiente se identifican las 7 estaciones del Parque como Nodos, con la entrada como Nodo (O) y el Mirador como Nodo (T). La información disponible en cada arco representa la distancia entre nodos medidos en millas
En
el
marco de los problemas de RMC se considera una red conexa y no dirigida con dos nodos especiales, llamados origen y destino. A cada una de las ligaduras (arcos no Dirigidos) se asocia una distancia no negativa. El objetivo del análisis es encontrar la ruta más corta, es decir, la trayectoria con la mínima distancia total, que va del origen al destino. Para su resolución se utiliza el Algoritmo de la Ruta más corta o también se puede utilizar el SIMPLEX utilizando las propiedades de este Problema, que es un caso específico del Modelo de Programación Lineal. Algoritmo de Ruta más corta. Este algoritmo analiza la red a partir del origen, identificando sucesivamente la ruta más corta a cada uno de los nodos en orden ascendente de sus distancias desde el origen, quedando resuelto el problema en el momento de llegar al nodo destino. A continuación se muestra la tabla de aplicación del algoritmo de la ruta más corta para encontrar la ruta más corta desde la entrada al parque hasta el mirador (ejemplo prototipo)
75
La
Primera columna: indica el número de la iteración. La Segunda columna: lista de los nodos resueltos (por los cuales ya se pasó) para comenzar la iteración actual, después de quitar los que no sirven (los que no tienen conexión directa con nodos no resueltos). La Tercera columna: candidatos (nodos no resueltos con la ligadura más corta al nodo resuelto) para el n-ésimo nodo más cercano. La Cuarta columna: distancia de la ruta más corta desde el origen a cada uno de estos candidatos La Quinta columna: candidato con la distancia más pequeña al origen La Sexta columna: distancia de la ruta más corta desde el origen al último nodo resuelto La Séptima columna: último tramo en esta ruta más corta. En esta última columna se puede rastrear la ruta más corta desde el nodo origen al destino. Se ve que la distancia total es de 13, tanto por la ruta O-A-B-E-D-T como por la O-A-B-D-T. PROBLEMA 2 Considérese la siguiente red. Los números que se encuentran por encima de cada arco representan la distancia entre los nodos que conectan. • Obtenga la ruta más corta del nodo I al nodo 10 utilizando programación dinámica.
76
2 5 1
10
8
3 6
9
4
RUTA
ETAPA
NODO DE ENTRADA
ARCO
1
7 8 9
7-10 8-10 9-10
10 10 10
8 10 6
5 6 2 3 4 1
5-9 6-9 2-5 3-5 4-6 1-4
9 9 5 5 6 4
11 17 18 19 20 26
2
3 4
NODO DE DURACION SALIDA ACUMULADA
DURACION: 26 RUTA: 1, 4, 6, 9, 10
5.2.3.-Problema de la mochila o canasta de equipaje La idea básica es que existen N tipos distintos de artículos que pueden cargarse en una mochila; cada artículo tiene asociados un peso y un valor. El problema consiste en determinar cuántas unidades de cada artículo se deben colocar en la mochila para maximizar el valor total. Nótese que este enfoque resulta útil para la planificación del transporte de artículos en algún medio, por ejemplo: carga de un buque, avión, camión etc. También es utilizable este modelo en planificación de producción, por ejemplo enrutamiento de la producción a través de varias máquinas. La carga de un avión se distribuye con el propósito de maximizar el ingreso total. Se consideran 5 elementos y sólo se necesita uno de cada uno. La compañía gana 5000 u.m. por elemento más una bonificación por elemento. El avión puede transportar 2000 libras. Elemento Peso, lb. Volumen, pies3 Valor bonificación 1 1000 70 700 2 1100 100 800 3 700 100 1100 4 800 80 1000 5 500 50 700a) ¿Cuáles elementos deben transportarse? b) Si se considera un volumen máximo de 200 pies cúbicos. ¿Cuáles elementos deben transportarse? El problema se desarrolla bajo las dos consideraciones, primero teniendo en cuenta el peso y luego el volumen. Como puede apreciarse este es un problema que bien podría resolverse por programación lineal entera teniendo en cuenta la función objetivo y restricciones siguientes: 77
Siendo xj el elemento j a transportar. Para el caso del volumen se reformaría la primera restricción cambiando los coeficientes por los volúmenes de los ítems. Sea j: la variable que representa el artículo: • x(j): el número de unidades el número de unidades cargadas del artículo j •
w(j): el espacio o el peso que demanda cada unidad del artículo j
•
R(j,x(j)): la función del retorno del artículo j si se llevan x(j) unidades en la mochila, del artículo j
•
g(j,w): retorno del total acumulativo dado el espacio w disponible para el artículo j
La relación recursiva dinámica se expresa como: g(j,w) = máximo {R(j,x(j)) + g[j-1,w-w(j)x(j)]} para todo posible x(j) Ahora ingresemos los datos al WINQSB: La entrada de datos queda como sigue. Al resolver el problema tenemos: La solución nos indica que se deben transportar los ítems 3, 4 y 5 con un retorno total de 17800 u.m. y utilización plena de la capacidad (en peso), disponible del avión. Teniendo en cuenta sólo el volumen, el nuevo modelo. Ejemplo de problema de la mochila Una planta procesadora de madera recibe troncos de longitudes de 20 pies, los corta a longitudes menores y después de venden estos troncos de longitud menor a diversas compañías manufactureras. Las longitudes para las que la compañía tiene pedido son: L1= 3pies L2=7 pies L3= 11pies L4= 16pies La procesadora tiene en la actualidad un inventario de 2000 troncos con longitud de 20 pies, y pretende seleccionar un patrón de cortes que permita maximizar las utilidades que se obtengan con estos inventarios. Suponiendo que la planta tiene suficientes pedidos disponibles, el problema se convierte en determinar el patrón de corte que maximiza las utilidades. La utilidad por unidad, para cada una de las longitudes menores, es el siguiente: Longitud Utilidad (pies) $ 3 1 7 3 11 5 16 8 Cualquier patrón de corte es permisible siempre y cuando: 3d1+7d3+11d3+16d4≤20 en donde d1 es el número de piezas de longitud l1, que se cortan: 1, 2, 3, 4. a) Elabore un modelo de programación dinámica para este problema y resolverlo. ¿Cuáles son las variables de decisión? ¿Cuál es la variable de estado? b) Explique en forma breve la forma en la que se puede ampliar este modelo para encontrar el mejor patrón de corte en casos en los que la longitud global l pueda cortarse en N tramos, l1, l2…, lN. 78
Esquema d4= 0,1 X4
d3= 0,1
X3 X3= X4 – 16d4 16” r4= 8d4
d2= 0,1, 2
X2 X2= X3 – 11d3 11”
X1= X2 – 7d2
r3= 5d3
d1= 0, 1, 2, 3, 4, 5, 6 7”
0 0 0 0 1 1 1 2 2 2 3 3 3 4 4 4 5 5 5 6 6 6
X0= X1 – 3d1
3”
X0
r1= 1d1
r2= 3d2
X2 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
X1
1 3 3 3 3 3 3 3 3 3 3 3 3 3 3
0 0 0 1 1 1 2 2 2 3 3 3 4 4
Utilidades 0 0 0 1 1 1 2 3 3 3 4 4 4 5 5 5 6 6 6 7 7 Tablas de decisión
X3 0 1 2 3 4 5 6 7 8 9 10 11 12
0 0 0 0 1 1 1 2 3 3 3 4 4 4
1 5 5
Utilidades 0 0 0 1 1 1 2 3 3 3 4 0 5 0 5
79
13 14 15 16 17 18 19 20
X4 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
5 6 6 6 7 7 7 8
0 0 0 0 1 1 1 2 3 3 3 4 5 5 5 6 6 6 7 7 7 8
5 5 5 5 5 5 5 5
0 1 1 1 2 2 2 3
1
8 8 8 8 8
0 0 0 1 1
5 6 6 6 7 7 7 8
Utilidades 0 0 0 1 1 1 2 3 3 3 4 5 5 5 6 6 8 8 8 9 9
X1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Conclusión Variable corte utilidad d4 1 8 d3 0 5 d2 0 3 d1 1 1 80
utilidad final 8 0 0 1
d1 1 1 1 2 2 2 3 3 3 4 4 4 5 5 5 6 6 6
r1 0 0 0 1 1 1 2 2 2 3 3 3 4 4 4 5 5 5 6 6 6
Utilidad máxima = 9 5.2.3.-Los modelos de inventario Ayudan al control de los costos totales de inventario; estos enfoques pueden reducir exitosamente el costo total de comprar para almacenar, de llevar el inventario y de quedarse sin él. También se ven con cierto detalle los métodos útiles al tratar de evaluación de descuentos, orden conjunta de artículos del mismo proveedor y tomar decisiones sobre el inventario en la ausencia de información completa. Aquí también desarrollamos un modelo que intencionalmente sugiere que "quedarse sin inventario" de un artículo puede ser una mejor alternativa que siempre puede satisfacer la demanda; en este contexto indicaremos cómo calcular las condiciones apropiadas de la condición quedarse sin inventario para varias situaciones. Programación de producción e inventarios El problema consiste en determinar un programa de producción para un periodo de tiempo con el fin de minimizar los costos totales relacionados. Hay demandas conocidas para cada periodo, límites de capacidad tanto para la producción como para los inventarios (almacenamiento). Cuando hay más producción que demanda, se acumula inventario, y cuando la producción es menor que la demanda, se generarán retrasos en el cumplimiento de pedidos (backorder). Para cada periodo, una producción no-cero incurre en un costo de preparación. En programación dinámica, el costo variable se expresa como una función de la producción (P), el inventario (H), y backorder (B). Sea: • P(n): el número de unidades producidas en el periodo n •
D(n): la demanda en el periodo n
•
H(n): el inventario disponible al final del periodo n
•
B(n): el backorder al final del periodo n
•
I(n): la posición del inventario al final del periodo n, es decir, I(n) = H(n) o I(n) =B(n)
•
I(n) = I(n-1) + P(n) - D(n)
•
S(n): el costo de preparación en el periodo n
•
V (P(n), I(n)): el costo variable = función de P(n), H(n), y/o B(n)
•
C(n,P(n),I(n)): = S(n) + V(P(n),I(n)) si P(n)>0, = V(P(n),I(n)) si P(n)=0
f(n,i): costo total acumulativo dado el nivel del inventario inicial i para el periodo n La relación recursiva dinámica se expresa como: F(n, i) = máximo {C(n, P(n), i+P(n)-D(n)) + f(n-1, i+P(n)-D(n))} para todo posible P(n). La tabla muestra los datos del siguiente problema de producción e inventario: la demanda para los meses de enero, febrero, marzo y abril es de 4, 5, 3 y 4 unidades, respectivamente. Las capacidades de producción son de 6, 4, 7, y 5 unidades; las 81
capacidades de almacenaje son 4, 3, 2 y 4 unidades respectivamente. Los costos de preparación varían de un mes a otro y son: 500, 450, 500 y 600 u.m. para enero, febrero, marzo y abril. Mes Costos Demanda Capacidad de producción Capacidad de Almacenamiento Enero 500 4 6 4 Febrero 450 5 4 3 Marzo 500 3 7 2 Abril 600 4 5 4Determinar un programa de producción con el fin de minimizar los costos totales relacionados. Al igual que en los ejercicios anteriores, se procede a ingresar los datos: La tabla inicial permite ingresar los datos expuestos en el ejemplo. Las cantidades a producir mostradas en la tabla son de tal forma que permiten un costo mínimo en la planeación: se deben producir 5, 4, 3 y 4 unidades para los meses de enero, febrero, marzo y abril respectivamente. El costo total es de $7080, dividido en $2050 por concepto de costos de preparación y $5030 de costos variables. La tabla también muestra el juego de inventarios resultante de la producción y demanda mensuales. Características de un Problema de Programación Dinámica. Para que un problema pueda ser resuelto con la técnica de programación dinámica, debe cumplir con ciertas características: Naturaleza secuencial de las decisiones: El problema puede ser dividido en etapas. Cada etapa tiene un número de estados asociados a ella. La decisión óptima de cada etapa depende solo del estado actual y no de las decisiones anteriores. La decisión tomada en una etapa determina cual será el estado de la etapa siguiente. En síntesis, la política optima es de un estado s de la etapa k a la etapa final esta constituida por una decisión que transforma s en un estado s0 de la etapa k +1 y por la política optima desde el estado s0 hasta la etapa final. Resolución de un Problema de Programación Dinámica Para resolver un problema de programación dinámica debemos al menos: Identificación de etapas, estados y variable de decisión: • Cada etapa debe tener asociado una o mas decisiones (problema de optimización), cuya dependencia de las decisiones anteriores esta dada exclusivamente por las variables de estado. • Cada estado debe contener toda la información relevante para la toma de decisión asociada al periodo. • Las variables de decisión son aquellas sobre las cuales debemos definir su valor de modo de optimizar el beneficio acumulado y modificar el estado de la próxima etapa. Descripción de ecuaciones de recurrencia: Nos deben indicar como se acumula la función de beneficios a optimizar (función objetivo) y como varían las funciones de estado de una etapa a otra. Resolución Debemos optimizar cada subproblema por etapas en función de los resultados de la resolución del subproblema siguiente. Notar que las para que las recurrencias estén bien definidas requerimos de condiciones de borde. Problema.-La familia Sampsons va a salir de vacaciones desde su ciudad natal Springfield. La familia desea visitar n ciudades y dispone de un total de M días para hacerlo, con M _ n. La familia desea saber cuantos días permanecer en cada ciudad de modo de maximizar la satisfacción total de sus vacaciones sabiendo que para cada ciudad i existe una función de satisfacción que es función del número de días de permanencia. 1. Plantee un modelo de programación dinámica para resolver la planificación de las vacaciones de los Sampsons. 82
2. Suponga que n = 3 y M = 5 y que las funciones de beneficio gk (xk) vienen dadas por:
3. ¿Cuál es la política optima de permanencia de los Sampsons en cada ciudad si la función de beneficios viene dada por gi (xi) = 1xi para todo i donde xi es el número de días que permanecerán los Sampsons en la ciudad i y existen 3 ciudades para ser distribuidas en 7 días? Hint: Suponga que no se pierde un tiempo considerable en el traslado de una ciudad a otra. Solución 1. Consideremos que la familia ya definió cual será el orden en que visitara las ciudades (si efectivamente decide visitarlas). En dicho caso, una etapa estará en relación univoca con una ciudad (Cada ciudad es una etapa y se pasara a la siguiente etapa cuando se pase a la siguiente ciudad). Además, el estado vendrá dado por el número de días que le restan a la familia para completar el total de días disponibles 3. Así, podemos definir: Xi = Numero de días en la ciudad i (variable de decisión de la etapa i). Yi = Numero de días sobrantes después de visitar la ciudad i − 1 o justo antes de visitar la ciudad i (variable de estado). Condición de borde (última etapa): En este caso habremos visitado las ciudades 1, 2,. . ., n − 1 y tendremos yn días disponibles para usar (dependiendo de cuantos días hayamos decidido quedarnos en las ciudades anteriores, yn puede tener varios valores posibles. Luego, el problema a resolver viene dado por: Fn (yn) = Max gn (xn) s.a 0 _ xn _ yn xn entero = valor de la política optima de estadía en la ciudad n si la familia ya ha visitado n-1 ciudades y aun dispone de yn días disponibles Recursión genérica k: En este caso habremos visitados las ciudades 1, 2,. . ., k − 1 y nos quedan por visitar las ciudades k, k+1,. . ., n siendo yk el número de días que aún nos quedan disponibles. Luego nuestro problema a resolver será encontrar el número de días a permanecer en la ciudad k de modo de maximizar el beneficio de actual mas el beneficio de visitar las próximas ciudades suponiendo que de ahora en adelante tomaremos las decisiones optimas dado los días que nos quedaran luego de tomar nuestra decisión hoy: Fk (yk) = Max {gk (xk) + fk+1(yk − xk)} s.a 0 _ xk _ yk xn entero = satisfacción total optima por visitar a las ciudades k, k + 1,. . ., n. Finalmente el optimo de la satisfacción de las vacaciones de la familia Simpson viene dado por f = f1 (M) 2. Debemos resolver los problemas asociados a cada etapa partiendo desde la última 4, para cada uno de los posibles estados en que puede llegar el problema a la etapa
83
en cuestión. Para resolver cada uno de estos problemas haremos una enumeración explicita de los casos posibles para cada etapa y seleccionaremos la mejor 5. Ciudad 3:
I:
in
factible, es decir, la familia no puede quedarse esa cantidad de días porque ya no le quedan tantos Ciudad 2: I: in factible, es decir, la familia no puede quedarse esa cantidad de días porque ya no le quedan tantos Ciudad 1: En este caso, como sabemos que inicialmente (antes de visitar la primera ciudad), la familia dispone de 5 días para sus vacaciones, solo analizamos el caso y1 = 5 g1(x1)+f2 (y1−x1)
Finalmente existen 3 soluciones óptimas, todas con beneficio óptimo=9, cuyas estadías en cada ciudad viene dadas por:
Sea: * P(n): el número de unidades producidas en el periodo n * D(n): la demanda en el periodo n * H(n): el inventario disponible al final del periodo n
84
* B(n): el backorder al final del periodo n * I(n): la posición del inventario al final del periodo n, es decir, I(n) = H(n) o I(n) =B(n) I(n) = I(n-1) + P(n) - D(n) * S(n): el costo de preparación en el periodo n * V (P(n), I(n)): el costo variable = función de P(n), H(n), y/o B(n) * C(n,P(n),I(n)): = S(n) + V(P(n),I(n)) si P(n)>0, = V(P(n),I(n)) si P(n)=0 * F(n, i): costo total acumulativo dado el nivel del inventario inicial i para el periodo n La relación recursiva dinámica se expresa como: F(n, i) = máximo {C(n, P(n), i+P(n)-D(n)) + f(n-1, i+P(n)-D(n))} para todo posible P(n). Ejemplo : La tabla muestra los datos del siguiente problema de producción e inventario: la demanda para los meses de enero, febrero, marzo y abril es de 4, 5, 3 y 4 unidades, respectivamente. Las capacidades de producción son de 6, 4, 7, y 5 unidades; las capacidades de almacenaje son 4, 3, 2 y 4 unidades respectivamente. Los costos de preparación varían de un mes a otro y son: 500, 450, 500 y 600 u.m. para enero, febrero, marzo y abril. Mes Costos Demanda Capacidad de producción Capacidad de Almacenamiento Enero 500 4 6 4 Febrero 450 5 4 3 Marzo 500 3 7 2 Abril 600 4 5 4Determinar un programa de producción con el fin de minimizar los costos totales relacionados. Al igual que en los ejercicios anteriores, se procede a ingresar los datos: La tabla inicial permite ingresar los datos expuestos en el ejemplo. La ventana debería quedar como sigue: La solución del problema es: Las cantidades a producir mostradas en la tabla son de tal forma que permiten un costo mínimo en la planeación: se deben producir 5, 4, 3 y 4 unidades para los meses de enero, febrero, marzo y abril respectivamente. El costo total es de $7080, dividido en $2050 por concepto de costos de preparación y $5030 de costos variables. La tabla también muestra el juego de inventarios resultante de la producción y la demanda mensuales. ¿Programación dinámica? ¿Importancia y usos? ¿Condiciones y representaciones? Pasos ¿Que es recursivo? INTRODUCCIÓN Recursión es la forma en la cual se especifica un proceso basado en su propia definición. Siendo un poco más precisos, y para evitar el aparente círculo sin fin en esta definición, las instancias complejas de un proceso se definen en términos de instancias más simples, estando las finales más simples definidas de forma explícita.
85
Desde que fui estudiante siempre he sabido lo difícil que es entender qué es la recursividad y para qué sirve en computación. Para muchos la única forma de aprender a dominar esta importante técnica de programación es correr mentalmente muchos programas recursivos, hasta que, por insistencia, se llega a entender de qué trata este asunto. Como profesor, he tratado de explicar este importante concepto y, con el tiempo, he encontrado las tres formas de hacerlo que expongo aquí. PROGRAMACION DINAMICA Un procedimiento de la investigación operativa que intenta optimizar una función objetivo, en problemas no lineares, discretizables, que pueden ser tratados en forma secuencial. La programación dinámica es una técnica matemática que a menudo resulta útil a tomar una sucesión de decisiones interrelacionadas. Proporciona un procedimiento sistemático para determinar la combinación de decisiones que maximice la efectividad global. Contrastando con la programación lineal, no existe un planteamiento matemático estándar "del" problema de programación dinámica. Más bien, la programación dinámica es un tipo general de enfoque para resolver problemas y las ecuaciones particulares usadas deben desarrollarse para que se ajusten a cada situación individual. Por lo tanto, se requiere un cierto grado de ingenio y de visión de la estructura general de los problemas de programación dinámica, a fin de reconocer cuando un problema se puede resolver mediante los procedimientos de esta programación y cómo se haría. Probablemente se puedan desarrollar mejor estas aptitudes por medio de una exposición de una amplia variedad de aplicaciones de la programación dinámica y de un estudio de las características que son comunes a todas estas. Por fortuna, la programación dinámica suministra una solución con mucho menos esfuerzo que la enumeración exhaustiva. (Los ahorros de cálculo serían enormes para versiones más grandes de un problema.) La programación dinámica parte de una pequeña porción del problema y encuentra la solución óptima para este problema más pequeño. Entonces gradualmente agranda el problema, hallando la solución óptima en curso a partir de la anterior, hasta que se resuelve por completo el problema original. En seguida se dan los detalles involucrados en la implementación de esta filosofía general. CONDICIONES Considérese que las variables de decisión xn (n = 1, 2, 3,4) son el destino inmediato en la etapa n. Así, la ruta seleccionada sería 1 - XI - X2 - X3 - X4 en donde X4 = 10. Sea fn(s, Xn) el costo total de la mejor política global para las etapas restantes, dado que el vendedor se encuentra en el estado s listo para iniciar la etapa n y se selecciona a XII como el destino inmediato. Dados s y n, denotemos por x el valor de X*n que minimiza al fn(s, Xn) y sea f*(s) el valor mínimo correspondiente de fn(s, Xn) por tanto, f*n(s) = fn(s, Xn). El objetivo es hallar f1*(1) y la pol1tica correspondiente. La programación dinámica hace esto, hallando sucesivamente f4*(s), f3*(s), f2*(s), a continuación, f1*(1). LA RECURSIVIDAD Es una técnica de programación mediante la cual un módulo puede invocarse a sí mismo. Es importante porque algunos algoritmos recursivos son mucho más compactos y elegantes que los algoritmos no recursivos equivalentes. Por eso quien domina las técnicas básicas de programación debe saber usar recursividad. Cuesta bastante entender por primera vez qué es recursividad, pero para hacerlo ayuda mucho conocer cómo se usan los registros de activación en la pila de
86
ejecución del programa, para recordar la dirección de retorno del procedimiento y almacenar sus variables locales. La recursividad va ligada al de repetición. Son recursivos aquellos algoritmos que, estando encapsulados dentro de una función, son llamados desde ella misma una y otra vez, en contraposición a los algoritmos iterativos, que hacen uso de bucles while, do-while, for, etc. Recursivo si se define en términos de sí mismo (cuando para definirse hace mención a sí mismo). Para que una definición recursiva sea válida, la referencia a sí misma debe ser relativamente más sencilla que el caso considerado. Ejemplo: Definición de nº natural: el N º 0 es natural el Nº n es natural si n-1 lo es. En un algoritmo recursivo distinguimos como mínimo 2 partes: Aquellas funciones cuyo dominio puede ser recursivamente definido pueden ser definidas de forma recursiva. El ejemplo más conocido es la definición recursiva de la función factorial f(n): f(0) = 1 f(n) = n • f(n-1) para todo número natural n > 0 Con esta definición veamos cómo funciona esta función para el valor del factorial de 3: f(3) = 3 • f(3-1) = 3 • f(2) = 3 • 2 • f(2-1) = 3 • 2 • f(1) = 3 • 2 • 1 • f(1-1) = 3 • 2 • 1 • f(0) = 3 • 2 • 1 • 1 = 6 Caso trivial, base o de fin de recursión: Es un caso donde el problema puede resolverse sin tener que hacer uso de una nueva llamada a sí mismo. PARTE PURAMENTE RECURSIVA: Relaciona el resultado del algoritmo con resultados de casos más simples. Se hacen nuevas llamadas a la función, pero están más próximas al caso base. TIPOS DE RECURSIÓN • Recursividad simple Aquella en cuya definición sólo aparece una llamada recursiva. Se puede transformar con facilidad en algoritmos iterativos. • Recursividad múltiple Se da cuando hay más de una llamada a sí misma dentro del cuerpo de la función, resultando más difícil de hacer de forma iterativa. CONCLUSIONES La programación dinámica es una técnica muy útil pata tomar decisiones interrelacionadas. Requiere del planteamiento de una relación recursiva apropiada para cada problema individual. Sin embargo, da lugar a un gran ahorro de cálculos comparando con el uso de la enumeración exhaustiva para hallar la mejor combinación de decisiones, en especial para problemas grandes. Por ejemplo sin un problema tiene 10 etapas con 10 estados y 10 decisiones posibles Es una técnica de programación mediante la cual un módulo puede invocarse a sí mismo. Es importante porque algunos algoritmos recursivos son mucho más compactos y elegantes que los algoritmos no recursivos equivalentes. Por eso quien domina las técnicas básicas de programación debe saber usar recursividad. Cuesta bastante entender por primera vez qué es recursividad, pero para hacerlo ayuda mucho conocer cómo se usan los registros de activación en la pila de ejecución del programa, para recordar la dirección de retorno del procedimiento y almacenar sus en cada etapa, entonces la enumeración exhaustiva debe considerar hasta combinaciones. Programación dinámica •
Recordemos el problema de la mochila: o Se tienen n objetos fraccionables y una mochila. o El objeto i tiene peso pi y una fracción xi (0ŠxiŠ1) del objeto i produce un beneficio bixi.
87
o
•
El objetivo es llenar la mochila, de capacidad C, de manera que se maximice el beneficio.
Una variante: la “mochila 0-1” o xi sólo toma valores 0 ó 1, indicando que el objeto se deja fuera o se mete en la mochila. o Los pesos, pi, y la capacidad son números naturales. Los beneficios, bi, son reales no negativos
Programación dinámica: •
Ejemplo: n=3
C=15
(b1,b2,b3)=(38,40,24) (p1,p2,p3)=(9,6,5) •
Recordar la estrategia voraz: o Tomar siempre el objeto que proporcione mayor beneficio por unidad de peso. o Se obtiene la solución: (X1, x2, x3)= (0, 1,1), con beneficio 64
Sin embargo, la solución óptima es: (X1, x2, x3)= (1, 1,0), con beneficio 78 •
Por tanto, la estrategia voraz no calcula la solución óptima del problema de la mochila 0-1.
Programación dinámica •
Técnica de programación dinámica o Se emplea típicamente para resolver problemas de optimización. o Permite resolver problemas mediante una secuencia de decisiones. Como el esquema voraz o A diferencia del esquema voraz, se producen varias secuencias de decisiones y solamente al final se sabe cuál es la mejor de ellas. o Está basada en el principio de optimalidad de Bellman:
“Cualquier subsecuencia de decisiones de una secuencia óptima de decisiones que resuelve un problema también debe ser óptima respecto al subproblema que resuelve.” Programación dinámica •
Supongamos que un problema se resuelve tras tomar un secuencia d1, d2,…, dn de decisiones.
88
Si hay d opciones posibles para cada una de las decisiones, una técnica de fuerza bruta exploraría un total de dn secuencias posibles de decisiones (explosión combinatoria). La técnica de programación dinámica evita explorar todas las secuencias posibles por medio de la resolución de subproblemas de tamaño creciente y almacenamiento en una tabla de las soluciones óptimas de esos subproblemas para facilitar la solución de los mismos.
•
•
5.3.-PROBLEMAS PROPUESTOS DE PROGRAMACION DINAMICA 1.-En la sección problemas resueltos se resolvió un problema de la ruta más corta utilizando programación dinámica. Encontrar la solución óptima para este problema mediante enumeración total; es decir, lista todas las rutas posibles desde el origen, el nodo 1, hasta el destino, el nodo 10 y elegir aquélla que tenga el menor valor. Explique por qué el método de la programación dinámica da como resultado menos cálculos para este problema. 2
7
7
8
1
5
9
8 3
8
7
10
8
6
10
5
6 4 4
10
1 0
5 11
6 9
b).- Determine la ruta corta. c).- Determine la duración de la ruta corta. 2.-Considérese la siguiente red. Los números que se encuentran por encima de cada arco representan la distancia entre los nodos que conectan. 7 2 7 8 7 8 8 5 9 4 6 10 1 1 3 8 12 0 3 10 5 5 2 6 11 6 4 4 9 a).-Obtenga la ruta más corta del nodo 1 al nodo 10 utilizando programación dinámica.
89
b).-¿Cuál es la ruta más corta del nodo 4 al nodo 10? c).-Enumere todos los trayectos posibles del nodo 1 al nodo 10. Explica la forma en la que la programación dinámica ha reducido el número de cálculos con respecto al número que se hubiera requerido mediante una enumeración total. 3.-Una planta procesadora de madera recibe troncos de longitud de 20 pies, los corta longitudes menores y después se venden a estos troncos de longitud menor a diversas compañías manufactureras. Las longitudes para las que la compañía tiene pedidos son: L1= 3 pies L2= 7 pies L3= 11 pies L4= 16 pies La procesadora tiene en la actualidad un inventario de 2000 troncos con longitud de 20 pies, y pretende seleccionar un patrón de cortes que permita maximizar las utilidades que se obtengan con esos inventarios. Suponiendo que la planta tiene suficientes pedidos disponibles se convierte en determinar el patrón de corte que maximizar las utilidades. La utilidad por unidad, para cada una de las longitudes menores es la siguiente: Longitud en pies 3 7 11 16
Utilidad $ 1 3 5 8
Cualquier patrón de corte es permisible siempre y cuando 3d1+7d2+11d3+16d4<20 En donde d1 es el número de piezas de longitud Li que se cortan, i=1, 2, 3,4. a).-Elabore un modelo de programación dinámica para este problema y resolverlo. ¿Cuál es la variable de estado? b).-Explique en forma breve la forma en la que puede ampliar este modelo para encontrar el mejor patrón de corte en casos en los que la longitud global L pueda cortarse en N tramos 11,12……..LN. 4.-Una empresa acaba de contratar a ocho empleados y pretende determinar cómo asignarlos a cuatro actividades. La empresa ha preparado la tabla que aparece en seguida en la que se dan las utilidades esperadas para cada actividad como función del número de nuevo empleados que se asignen a ella. Actividades Número de empleados 0 1 2 3 4 5 6 7 8 1 22 30 37 49 49 54 58 60 61 2 30 40 48 55 59 62 64 66 67 3 46 52 56 59 62 65 67 68 69 4 5 22 36 48 52 55 58 60 61 a).-Utilice la programación dinámica para determinar la asignación óptima de empleados nuevos a las actividades.
90
b).-Supóngase que se hubiera contratado solamente 6 nuevos empleados. ¿A qué actividades asignaría a estos 6 empleados? 5.-Supóngase que se tiene un proceso entres etapas en las que el rendimiento de cada etapa es función de la decisión que se tome .En Notación matemática, se podría plantear el problema de la siguiente manera: Max:r1(Di+r2(d2)+ r3(d3) Sujeto a d1 + d2 + d3 < 1000 Se presentan enseguida en forma tabular los posibles valores que pueden asumir las variables de decisión en cada etapa y los posibles rendimientos: Etapa 1 Etapa 2 Etapa 3 d1 r1(d1) d2 d2(d2) r3 r3(d3) 0 0 100 120 100 175 100 110 300 40 500 700 200 30 500 650 300 400 600 700 400 425 800 975 a).-Utilice una Enumeración total para listar todas las secuencias factibles de decisiones para este problema.. ¿Cuál es el óptimo [Es decir, la que maximiza la r1(d1)+r2(d2)+r3(d3)]? b).-Use programación dinámica para resolver este problema. 6.-Una compañía manufacturera grande tiene un programa de capacitación de administradores muy bien desarrollado .Se espero que cada entrenando termine un programa de cuatro fases , pero pueden darse a los entrenadores de asignaciones distintas encada una de las fases del programa de capacitación. Se muestra enseguida para las asignaciones Se muestran enseguida las asignaciones disponibles y tiempos estimados de terminación (en meses) en cada fase del programa. FASE l FASE ll FASE lll FASE Lv A-13 E-13 H-12 L-10 B-10 F-6 I-6 M-5 C-20 G-5 J-7 N-13 D-17 K-10 Las asignaciones que se hacen en fases subsecuentes dependen de la asignación anterior por ejemplo, un entrenador que termina la asignación A en la fase 1 puede solo pasara la asignación F o G en la fase ll. Es decir, existe una relación de precedencia para cada asignación de acuerdo con el siguiente cuadro. Asignación Asignaciones subsecuentes factibles A F,G B F C G D E,G E H,I,J,K F H,K G J,K 91
H I J K L M N
L,M L,M M,N N Terminación Terminación Terminación
La compañía pretende determinar la secuencia las asignaciones que minimice el tiempo que los entrenadores en el programa. Plantee y resulta este como problema de programación dinámica. (Sugerencia> desarrollo una representación de red para el problema, en la que cada un nodo represente la terminación de una actividad.) Si el entrenador acaba de terminar la asignación F y le gustaría terminar el resto del programa de capacitación en el tiempo mas corto posible, Cual es l asignación que debe elegir en seguida?
7.-Crazy Roin, el propietario de una pequeña cadena de tiendas de deportes, Robin Hood Sporting Goods , en Des Moines y en Cedar Rapids, en el estado de Iowa, acaba de adquirir un nuevo surtido de 500 docenas de bolas de golf de primera calidad. Como estaba dispuesto a comprar la cantidad total de un exceso en una corrida de producción, Robin estuvo en posibilidades de adquirir las pelotas de golf a la mitad de su precio normal. Tres de las tiendas de Robín hacen un buen negocio en la venta de equipo y accesorios para golf y como resultado, Robín ha decidido vender las pelotas en esas 5 tiendas. Por ello, Robín enfrenta el problema de determinar cuantas docenas de pelotas debe de asignar a cada tienda. Las siguientes estimaciones muestran utilidades esperadas al asignar a cada tienda, Las siguientes estimaciones muestran las utilidades esperadas al asignar 100,200, 300,400 o 500 decenas de pelotas a cada tienda. Numero de docenas de pelotas de Golf Etapa1 Etapa2 Etapa3
100 600 500 550
200 1,100 1200 1100
300 1,550 1700 2000
400 1,700 2000 1850
500 1,800 2100 1950
Suponiendo que los lotes no pueden dividir en tamaños menores de 100 docenas cada uno, Cuantas docenas de bolas de golf debe crazy Robin enviar a cada tienda? 8.-La firma Max X.Posure Advertising Agency está llevando a cabo una compañía de publicidad de 10 das para una tienda local de departamentos. La agencia ha determinado que es posible que la compañía más efectiva pudiera incluir la colocación la colocación de anuncios en cuatro medios. Un periodo dominical y televisión. Se tiene disponible un total de $8.. Para esa campaña y a la agencia le gustaría distribuir esa cantidad en incremento de $1,000 en todos los medios, de manera que se maximice el índice de exposición a la publicidad. Algunas
92
investigaciones que la agencia ha llevado a cabo permiten obtener las siguientes estimaciones de la exposición por cada $1,000 de gasto en cada uno de los medios Medio 1 2 3 4 5 6 7 8 Informativo Periódico 24 37 46 59 72 80 82 82 diario Periódico Dominical Radio Televisión 9.-Supóngase que se tiene un proceso en tres etapas en las que el rendimiento de cada etapa es función de la decisión que se tome .En Notación matemática, se podría plantear el problema de la siguiente manera: Max:r1(Di+r2(d2)+ r3(d3) Sujeto a d1 + d2 + d3 < 1000 Se presentan enseguida en forma tabular los posibles valores que pueden asumir las variables de decisión en cada etapa y los posibles rendimientos: Etapa 1 Etapa 2 Etapa 3 d1 r1(d1) d2 d2(d2) r3 r3(d3) 0 0 100 120 100 175 100 110 300 40 500 700 200 30 500 650 300 400 600 700 400 425 800 975 a).-Utilice una Enumeración total para listar todas las secuencias factibles de decisiones para este problema.. ¿Cuál es el óptimo [Es decir, la que maximiza la r1(d1)+r2(d2)+r3(d3)]? b).-Use programación dinámica para resolver este problema. 9.-Recuerde el problema de control de la producción y los inventarios. La Mills Manufacturing Company tiene exactamente un problema de producción y de control de inventarios como ése para la armadura que la compañía de fabrica como componente para un generador eléctrico .Los datos disponibles para el siguiente periodo de planeación de 3 meses son los que se presentan enseguida. Mes Demanda Capacidad Capacidad de Costo de Costo de de Almacén producción x Tenencia x Unidad producción unidad 1 20 30 41 $ 2.00 $.30 2 30 20 30 $1.50 $.30 3 30 30 20 $2.00 $.20 a).-Utilizando el método de programación dinámica que se embozó. Obtenga las cantidades de producción y los niveles de inventario optimo en cada periodo para Mills Manufacturing Company. Supóngase que se tiene un inventario inicial de 10 unidades al principio del mes 1 y la corridas de p
93
94
INVESTIGACION DE OPERACIONES II FORMATO PARA PROGRAMACION DINAMICA CON INVENTARIOS ALUMNO__________________________________________________________ D3= X3
P3=
W3=
Etapa 3 X2 = X3 + d3 - D3
d3=
D2=
X2
r3 (X3,d3)
P2=
W2=
D2=
Etapa 2 X1 = X2 + d2 – D2
X1
r2 (X2,d2)
D1=
P1=
W1=
Etapa 1 X0 = X1 + d1 – D1 r1 (X1,d1)
Restricciones del sistema: dn < Pn Xn + dn > Dn Xn + dn – Dn = Wn Rn (Xn, dn) = Cn dn + Hn (Xn + dn – Dn)
Tabla de primera decisión: X1 D1
Tabla de segunda decisión d2 X2 f2 (X2)=
f1 (X1)
f2 (X2)=
f2 (X2)=
95
D1=
f2 (X2)=
X0
Tabla de tercera decisión: d3 X3 f3 (X3)=
f3 (X3)=
f3 (X3)=
f3 (X3)=
Tabla de resultados: Mes
dn
Xn
Dn
Cn
Hn
Costo Total Costo Total Producción Inventario Cp = Cn (dn) Ci = Hn (Xn + dn – Dn)
96
Costo total producción e inventario Ct = Cp + Ci
UNIDAD 6 OBJETIVO PARTICULAR DE LA UNIDAD Al término de la unidad el estudiante analizará en forma general el concepto de simulación, ventajas y desventajas, así como su proceso de desarrollo y utilizará la misma para la solución de problemas.
OBJETIVOS ESPECÍFICOS Simulaciones empíricas Teoría sobre distribuciones continuas y discretas Teoría sobre generadores de proceso Simulación Montecarlo Utilización en líneas de espera Mejoramiento del diseño de sistemas Casos prácticos
97
Unidad 6.- SIMULACION 6.1. INTRODUCCIÓN La creciente capacidad de las computadoras y la inmensa investigación en el campo de la Ciencia de la Computación otorgan nuevas herramientas para apoyar el proceso de la toma de decisiones en diversas disciplinas y áreas de diseño y manejo de la industria. La Simulación es una de las herramientas más importantes y más interdisciplinarias. En pocas palabras podemos decir, que la simulación realiza cuando la computadora finge ser una tienda, un avión o un mercado de abarrotes. El usuario define la estructura del sistema que quiere simular. Una corrida del programa de simulación correspondiente le dice cual será el comportamiento dinámico de su empresa o de la maquina que esta diseñando. Así podemos ver los pronósticos para la demanda y utilidad de nuestro producto, o ver cuando un mecanismo pueda fallar en las condiciones adversas del ambiente donde funcionará. Las aplicaciones de la simulación parecen no tener límites. Actualmente se simulan los comportamientos hasta las partes más pequeñas de un mecanismo, el desarrollo de las epidemias, el sistema inmunológico humano, las plantas productivas, sucursales bancarias, el sistema de repartición de pizzas en la Ciudad de México, crecimiento de poblaciones de especies de animales, partidos y torneos de fútbol, movimiento de los planetas y la evolución del universo, para mencionar unos pocos ejemplos de las aplicaciones de esta herramienta. Cabe mencionar la creciente importancia de la Simulación en la Investigación de operaciones y en sus aplicaciones industriales. En los países altamente desarrollados la simulación es una herramienta principal de en los procesos de toma de decisiones, en el manejo de empresas y el planeación de la producción. Además, la Simulación es cada vez más “amigable” para el usuario, que no tiene que ser un especialista en computación. El Dr. Ralph Huntsinger, ex-presidente de la “Society for Computer Simulation” y actual Presidente del Instituto McLeod de las Ciencias de Simulación ha dicho en sus presentaciones en el Primer Simposio sobre la Simulación por Computadora y la III Conferencia sobre Simulación por Computadora (Universidad Panamericana, Noviembre 1992 y 1995): !LA SIMULACIÓN ES ÚTIL Y DIVERTIDA¡ ¡DISFRUTE SUS VENTAJAS¡ SISTEMAS, MODELOS Y SIMULACIÓN Existen diversos enunciados para definir un sistema, por ejemplo: “un sistema de colección de entidades (personas, máquinas equipos, etc.)Los cuales actúan o interactúan juntos, para lograr un propósito bien definido “ ( Schmidt & Taylor ) o bien “ Un sistema es un conjunto de componentes cuyos parámetros de comportamiento están interrelacionados. Simular un sistema significa observar un sistema equivalente que aproxima o imita el comportamiento del sistema real. En la práctica, lo que se entiende por sistema depende sobre todo el objetivo que se quiera alcanzar en un estudio en particular. La colección de entidades que componen un sistema puede ser tan sólo un subconjunto de un sistema más amplio. Por ejemplo, si se quiere llevar a cabo un estudio en un banco, para poder determinar el número de cajeros que se quieren, para proporcionar un adecuado servicio a los clientes que deseen cambiar cheques por dinero en efectivo o bien para hacer un depósito en su cuenta de ahorros, el sistema puede ser definido como una porción del banco que consiste en los cajeros y los clientes que esperaban en una fila para ser atendidos. Si por otro lado se incluyera la oficina de depósito de valores y cajas personales de seguridad, entonces la definición de sistema cambia de manera natural. Entonces las Entidades de un sistema son los elementos que nos interesan en el sistema y los atributos son la descripción de las propiedades de las entidades. Actividad es el proceso que
98
causa cambios en el sistema. Estas pueden ser: endógenas cuando se generan dentro del mismo sistema y exógenas cuando provienen del medio exterior. El estado de un sistema queda definido como la colección de variables necesarias para describir un sistema particular, congruente con los objetivos de estudio ( es una fotografía del sistema ) En el ejemplo del banco, algunas de las posibles variables de estado que pueden definirse son: el número de cajeros, el número de clientes en el banco, la hora de llegada de cada cliente al banco. Los sistemas se clasifican en discreto es aquel en el que las variables de estado cambian instantáneamente en puntos distintos en el tiempo. Se rigen por ecuaciones lógicas que expresan condiciones para que un evento ocurra. La simulación discreta, consiste en seguir los cambios en el estado del sistema resultando de cada uno de los eventos que se realizan. Por regla general este tipo de la simulación se realiza siguiendo la secuencia de ocurrencia de eventos, es decir avanzamos el tiempo de la simulación al tiempo de la ocurrencia del siguiente evento. En los sistemas discretos, el flujo es tratado como un cierto número de enteros. Por ejemplo en el análisis de flujo de personas en el supermercado, involucra el tiempo que tarda una persona en las distancias aéreas del supermercado y el contador de salida de un sistema discreto, otros sistemas discretos son: el análisis de como el de tráfico de autobuses en una central camionera, e control de tráfico de: trenes en una estación ferroviaria, aviones en el aeropuerto, vehículos en una autopista, buques en el puerto. Otro ejemplo puede ser un banco, dado que las variables de estado como pueden ser: el número de clientes dentro del banco, cambia solamente cuando llega un nuevo cliente o bien cuando un cliente termina de ser atendido por un cajero y abandona el banco. Un sistema continuo es aquel en el que las variables de estado cambian de manera continua en el tiempo. Por ejemplo si consideramos un aeroplano que se mueve por los aires, sus variables de estado como velocidad, posición, consumo de combustible, etc., cambian de manera continua en el tiempo. En los sistemas continuos el flujo a través del sistema es, el de un medio continuo, por ejemplo el flujo de las partículas sólidas, moviéndose a velocidades relativas al tamaño de las partículas presentes en la corriente. En la práctica, pocos sistemas continuos puros o como sistemas discretos puros, sin embargo predomina uno de los dos, con lo cual es posible identificarlos. Otra manera de clasificar a los sistemas es determinísticos y estocásticos. En un análisis determinístico, las variables de entrada se especifican de una manera precisa; en cambio en un análisis estocástico, las condiciones de entrada al sistema son inciertas, son completamente aleatorias, es decir obedecen a una ley de distribución de probabilidad.
SOLUCIÓN ANALÍTICA CONTRA SIMULACIÓN Una vez que se ha construido un modelo matemático, este debe ser analizado para saber la manera como debe ser utilizado para que de respuesta a las preguntas de interés, acerca del sistema que supuestamente representa.
99
Si el modelo es lo suficiente sencillo, es posible trabajar con cantidades y relaciones que tiendan a la exactitud, obteniéndose entonces una solución exacta. Sin embargo, aún las soluciones analíticas pueden ser extraordinariamente complejas, requiriéndose de un considerable tiempo de cómputo. Pero cuando el modelo es demasiado complejo, el modelo matemático asociado es de las mismas características y la opción de utilizar una solución analítica se desvanece, dando paso al estudio del sistema mediante simulación. 6.2.-TIPOS DE MODELOS DE SIMULACIÓN. MODELOS DE SIMULACIÓN ESTÁTICA VS. DINÁMICA Un modelo de simulación estática, se entiende como la representación de un sistema para un instante (en el tiempo) en particular o bien para representar un sistema en el que el tiempo no es importante, por ejemplo la simulación Montecarlo; en cambio un modelo de simulación dinámica representa a un sistema en el que el tiempo es una variable de interés, como por ejemplo en el sistema de transporte de materiales dentro de una fábrica, una torre de enfriamiento de una central termoeléctrica, etc.. MODELOS DE SIMULACIÓN DETERMINISTA VS ESTOCASTICA Si un modelo de simulación no considera ninguna variable importante, comportándose de acuerdo con una ley probabilística, se le llama un modelo de simulación determinista. En estos modelos la salida queda determinada una vez que se especifican los datos y relaciones de entrada al modelo, tomando una cierta cantidad de tiempo de cómputo para su evaluación. Sin embargo, muchos sistemas se modelan tomando en cuenta algún componente aleatorio de entrada, lo que da la característica de modelo estocástico de simulación. Un ejemplo sería un sistema de inventarios de una fábrica, o bien el sistema de líneas de espera de una fabrica, etc. Estos modelos producen una salida que es en si misma de carácter aleatorio y ésta debe ser tratada únicamente para estimar las características reales del modelo, esta es una de las principales desventajas de este tipo de simulación. 6.2.1 MODELOS DE SIMULACIÓN CONTINUOS VS DISCRETOS Los modelos de simulación discretos y continuos, se definen de manera análogo a los sistemas discretos y continuos respectivamente. Pero debe entenderse que un modelo discreto de simulación no siempre se usa para modelar un sistema discreto. La decisión de utilizar un modelo discreto o continuo para simular un sistema en particular, depende de los objetivos específicos de estudio. Por ejemplo: un modelo de flujo de tráfico en una supercarretera, puede ser discreto si las características y movimientos de los vehículos en forma individual es importante. En cambio si los vehículos pueden considerarse como un agregado en el flujo de tráfico entonces se puede usar un modelo basado en ecuaciones diferenciales presentes en un modelo continuo. Otro ejemplo: Un fabricante de comida para perros, requiere el auxilio de una compañía consultora con el objeto de construir un modelo de simulación para su línea de fabricación, la cual produce medio millón de latas al día a una velocidad casi constante. Debido a que cada una de las latas se representó como una entidad separada en el modelo, éste resulto ser demasiado detallado y por ende caro para correrlo, haciéndolo poco útil. Unos meses más tarde, se hizo una reformulación del modelo, tratando al proceso como un flujo continuo. Este nuevo modelo produjo resultados precisos y se ejecuto en una fracción del tiempo necesario por el modelo original. VENTAJAS Y DESVENTAJAS DEL USO DE LA SIMULACIÓN
100
Aunque la técnica de simulación generalmente se ve como un método de último recurso, recientes avances en las metodologías de simulación y la gran disponibilidad de software que actualmente existe en el mercado, han hecho que la técnica de simulación sea una de las herramientas más ampliamente usadas en el análisis de sistemas. Además de las razones antes mencionadas, Thomas H. Naylor ha sugerido que un estudio de simulación es muy recomendable porque presenta las siguientes ventajas: • A través de un estudio de simulación, se puede estudiar el efecto de cambios internos y externos del sistema, al hacer alteraciones en el modelo del sistema y observando los efectos de esas alteraciones en el comportamiento del sistema. • Una observación detallada del sistema que se está simulando puede conducir a un mejor entendimiento del sistema y por consiguiente a sugerir estrategias que mejoren la operación y eficiencia del sistema. • La técnica de simulación puede ser utilizada como un instrumento pedagógico para enseñar a estudiantes habilidades básicas en análisis estadísticos, análisis teórico, etc.
• La simulación de sistemas complejos puede ayudar a entender mejor la operación del sistema, a detectar las variables más importantes que interactúan en el sistema y a entender mejor las interrelaciones entre estas variables.
• La técnica de simulación puede ser utilizada para experimentar con nuevas situaciones, sobre las cuales tiene poca o ninguna información. A través de esta experimentación se puede anticipar mejor a posibles resultados no previstos.
• La técnica de simulación se puede utilizar también para entrenamiento de personal. En
algunas ocasiones se puede tener una buena representación de un sistema (como por ejemplo los juegos de negocios), y entonces a través de él es posible entrenar y dar experiencia a cierto tipo de personal.
• Cuando nuevos elementos son introducidos en un sistema, la simulación puede ser usada para anticipar cuellos de botella o algún otro problema que puede surgir en el comportamiento del sistema. • Los sistemas los cuales son sujetos de investigación de su comportamiento no necesitan existir actualmente para ser sujetos de experimentación basados en la simulación. Solo necesitan existir en la mente del diseñador. • El tiempo puede ser compensado en los modelos de simulación. El equivalente de días, semanas y meses de un sistema real en operación frecuente pueden ser simulados en solo segundos, minutos u horas en una computadora. Esto significa que un largo número de alternativas de solución pueden ser simuladas y los resultados pueden estar disponibles de forma breve y pueden ser suficientes para influir en la elección de un diseño para un sistema. • En simulación cada variable puede sostenerse constante excepto algunas cuya influencia está siendo estudiada. Como resultado el posible efecto de descontrol de las variables en el comportamiento del sistema necesitan no ser tomados en cuenta. Como frecuentemente debe ser hecho cuando el experimento está desarrollado sobre un sistema real.
101
• Es posible reproducir eventos aleatorios idénticos mediante una secuencia de números aleatorios. Esto hace posible usar las técnicas de reproducción de varianza para mejorar la precisión con la cual las características del sistema pueden ser estimadas para dar un valor que refleje el esfuerzo de la simulación. A diferencia de las ventajas mencionadas, la técnica de simulación presenta importantes desventajas, éstas son:
• Falla al producir resultados exactos. S supone que un sistema ésta compuesto de uno o
más elementos que están sujetos a un comportamiento al azar. Cuando una simulación es desarrollada con un modelo del sistema, los valores de cada variable son registrados y los promedios de estos valores son dados en una post-simulación. Pero el promedio en una muestra de observación solo a veces provee un estimado de lo esperado, es decir, una simulación solo provee estimados, no resultados exactos.
• Fallas al optimizar. La simulación es usada para contestar preguntas del tipo “Qué pasa
si?”, “pero no dé”, “¿qué es lo mejor?”. En este sentido, la simulación no es una técnica de optimización. La simulación no generará soluciones, solo evalúa esas que han sido propuestas.
• Largo tiempo de conducción. Un estudio de simulación no puede ser conducido o llevado a cabo en solo un fin de semana. Meses de esfuerzo pueden ser requeridos para reunir información, construir, verificar y validar modelos, diseñar experimentos y evaluar e interpretar los resultados. • Costos para proveer capacidad de simulación. El establecimiento y mantenimiento de capacidad de simulación, envuelve tener mejor personal, software, hardware, entrenamiento y otro tipo de costos. • Abuso de simulación. Hay muchas facetas para un balanceo y comprensivo estudio de la simulación. Ya que una persona debe tener conocimiento de una gran variedad de áreas antes de llegar a ser un practicante de la simulación. Este hecho es algunas veces ignorado, sin embargo como resultado, cada estudio puede incorrectamente ser desarrollado, o podría estar incompleto, o podría caer en otro tipo de caminos, quizá resultado de una falla del esfuerzo de la simulación. En conclusión la simulación ofrece poderosas ventajas pero sufre de mayores desventajas también. Afortunadamente muchas de estas desventajas están disminuyendo en importancia en el tiempo, gracias a las herramientas que emplean simulación. Metodologías, desarrollo de computadoras y de software y decrementos en los costos de los mismos. 6.2.2 Distintos Tipos de Frecuencia: Una de los primeros pasos que se realizan en cualquier estudio estadístico es la tabulación de resultados, es decir, recoger la información de la muestra resumida en una tabla en la que a cada valor de la variable se le asocian determinados números que representan el número de veces que ha aparecido, su proporción con respecto a otros valores de la variable, etc. Estos números se denominan frecuencias: Así tenemos los siguientes tipos de frecuencia:
1. Frecuencia absoluta 2. Frecuencia relativa 102
3. 4. 5. 6. 7.
Porcentaje Frecuencia absoluta acumulada Frecuencia relativa acumulada Porcentaje acumulado Ejemplo
Frecuencia absoluta: La frecuencia absoluta de una variable estadística es el número de veces que aparece en la muestra dicho valor de la variable, la representaremos por ni Frecuencia relativa: La frecuencia absoluta, es una medida que está influida por el tamaño de la muestra, al aumentar el tamaño de la muestra aumentará también el tamaño de la frecuencia absoluta. Esto hace que no sea una medida útil para poder comparar. Para esto es necesario introducir el concepto de frecuencia relativa, que es el cociente entre la frecuencia absoluta y el tamaño de la muestra. La denotaremos por fi
Donde N = Tamaño de la muestra
Porcentaje: La frecuencia relativa es un tanto por uno, sin embargo, hoy día es bastante frecuente hablar siempre en términos de tantos por ciento o porcentajes, por lo que esta medida resulta de multiplicar la frecuencia relativa por 100. La denotaremos por pi.
Frecuencia Absoluta Acunulada: Para poder calcular este tipo de frecuencias hay que tener en cuenta que la variable estadística ha de ser cuantitativa o cualitativa ordenable. En otro caso no tiene mucho sentido el cálculo de esta frecuencia. La frecuencia absoluta acumulada de un valor de la variable, es el número de veces que ha aparecido en la muestra un valor menor o igual que el de la variable y lo representaremos por Ni. &NBSP; &NBSP;
103
Frecuencia Relativa Acunulada: Al igual que en el caso anterior la frecuencia relativa acumulada es la frecuencia absoluta acumulada dividido por el tamaño de la muestra, y la denotaremos por Fi
Porcentaje Acumulado: Análogamente se define el Porcentaje Acumulado y lo vamos a denotar por Pi como la frecuencia relativa acumulada por 100.
&NBSP; Veamos esto con un ejemplo: Tomamos para ello los datos relativos a las personas activas. Personas Activas
Número Familias
Xi
ni
Fi
1
16
16/50
2
20
3
pi
Ni
Fi
Pi
32% 16
16/50
32%
20/50
40% 36
36/50
72%
9
9/50
18% 45
45/50
90%
4
5
5/50
10% 50
50/50
100%
Total
50
En este ejemplo se puede ver fácilmente como se calculan estas frecuencias.
&NBSP;
104
6.2.3.- GENERACIÓN DE NUMEROS ALEATORIOS Y PSEUDOALEATORIOS. INTRODUCCIÓN. En el presente capítulo presentaremos los métodos más utilizados, para generar números aleatorios y pseudoaleatorios con computadora. Dejemos el tema de la aplicación Antes de continuar, es necesario establecer la siguiente terminología. El término variable aleatoria se emplea para nombrar una función de valor real, definida sobre un espacio muestral asociado con los resultados de un experimento conceptual, de naturaleza azoroza. El valor numérico resultante de un experimento, de cada una de las variables aleatorias, se llama número aleatorio. Se utilizan letras mayúsculas para denotar las variables aleatorias y minúsculas, para denotar valores de éstas variables aleatorias y minúsculas, para denotar valores de éstas variables, es decir, para los números aleatorios. Por ejemplo, F(x); la función de distribución acumulada para una variable aleatoria X, indica la probabilidad de que X sea menor o igual al particular valor x de la función de probabilidad de la variable aleatoria X, cuando X= x. 6.2.3.1. TECNICAS PARA GENERAR NÚMEROS ALEATORIOS. Se han venido usando cuatro métodos alternativos para generar las sucesiones de números aleatorios, estos son: a).- Métodos manuales Lanzamiento de monedas Lanzamiento de dados Barajas Dispositivos mecánicos Dispositivos electrónicos Ventajas: Son aleatorios Desventajas: No reproducibles b).- TABLAS DE BIBLIOTECA. Son números aleatorios que se han publicado; por ejemplo a Millon Random Digits, de la Corporación Rand, de los cuales podemos encontrar listas de los en los libros de probabilidad y tablas de matemáticas. Estos números fueron generados por alguno de los métodos de computación analógica, los cuales mencionados a continuación. Ventaja: Provienen de un fenómeno aleatorio y son reproducibles. Desventaja: No se obtiene en tiempo real. c).- MÉTODOS DE COMPUTACIÓN ANALÓGICA Los métodos de computación analógica dependen de ciertos procesos físicos aleatorios (por ejemplo, el comportamiento de una corriente eléctrica), por lo que se considera que conducen verdaderos números aleatorios. Ventaja: Aleatorios. Desventaja: No reproducible. d).- MÉTODOS DE COMPUTACIÓN DIGITAL Se distinguen tres métodos para producir números aleatorio cuando se usa la computación digital (computadoras), los cuales son: e).-PROVISIÓN EXTERNA. Consiste en grabar en la memoria de la computadora, las tablas Randa, a fin de tratar estos números como datos de entrada para un determinado problema.
105
f).-GENERACIÓN POR MEDIO DE PROCESOS FÍSICOS ALEATORIOS. Consiste en usar algún aditamento especial de la computadora, para registra los resultados de algún proceso aleatorio y además, reduzca estas resultados a sucesiones de dígitos. g).-GENERACIÓN INTERNA POR MEDIO DE UNA RELACIÓN DE RECURRENCIA. Consiste en generar números pseudoaleatorios por medio de ecuaciones de recurrencia, en las que necesariamente se tiene que dar un valor inicial o semilla, para generar los siguientes valores. Vamos ha centrar nuestra atención en este último método de computación digital, y los describiremos ampliamente. Ventaja: Son reproducibles. Desventaja: Son pseudoaleatorios. h).- CARACTERISTICAS DE LOS NÚMEROS PSEUDOALEATORIOS a) Uniformemente distribuidos b) Estadísticamente independientes c) Reproducibles d) Sin repetición dentro de una longitud determinada i).-METODOS QUE UTILIZAN ECUACUACIONES DE RECURRENCIA PARA GENERAR NUMEROS PSEUDOALEATORIOS. Aquí describiremos los métodos de generación de números pseudoaleatorios, usando ecuaciones de recurrencia. j).- METODO DE CUADRADOS CENTRALES. Históricamente, el primer método aritmético para generar números pseudoaleatorios, fue el de los cuadrados centrales, en el que cada número de la sucesión se obtiene tomando los dígitos centrales del cuadro del número precedente. El modelo matemático que los describe es: n0 = semilla entera (entero positivo) ni = dígitos centrales de n2i-1 xi = dígitos centrales de x2i-1 para i = 1, 2, 3,… Ejemplo: a) enteros Sea: n0 = 83, n1 = d. c. (6889) = 88 n2 = d. c. (7744) = 74 n3 = d. c. (5476) = 47 n4 = d. c. (2209) = 20 n5 = d. c. (0400) = 40 n6 = d. c. (1600) = 60 FRACCIONARIO (Semilla impar y primo) n0 = n1 = n2 = n3 = n4 = n5 =
0.528 0.278784 0.619369 0.037249 0.138124 0.146689
= 0.787 = 0.193 = 0.372 = 0.383 = 0.466
106
n6 = 0.217151 n7 = 0.029241 n8 = 0.085264 n9 = 0.725904 n10 = 0.067021 n11 = 0.4489 n12 = 0.239121 n13 = 0.152881 n14 = 0.278784
= 0.171 = 0.292 = 0.852 = 0.259 = 0.670 = 0.489 = 0.391 = 0.528 = 0.787
P = 13
k).-METODOS DE GENERACIÓN DE NUM. PSEUDOALEATORIOS U(0,1). -Métodos congruenciales “69” Reglas: • C debe ser un entero impar, no divisible ni por 3 ni por 5 • a usualmente puede ser cualquier constante sin embargo para asegurar buenos resultados, seleccione a de tal forma que (a) mod 8= 5 para una computadora binario a o (a) mod 200 = 21 para una computadora decimal. • M debe ser el número entero más grande que la computadora acepte De acuerdo con Hull y Debell, los mejores resultados par un generador congruencial mixto en una computadora binaria son:
• a = 8 * c± 3
• c = cualquier entero • r0 = cualquier entero impar (ni) • m =2b donde b>2 y que m sea aceptado por la computadora 6.2.4. SIMULACION POR MÉTODO MONTE CARLO Simulación estadística o Monte Carlo: Está basada en el muestreo sistemático de variables aleatorias S IMULACIÓN MONTE CARLO Los métodos de Monte Carlo abarcan una colección de técnicas que permiten obtener soluciones de problemas matemáticos o físicos por medio de pruebas aleatorias repetidas. En la práctica, las pruebas aleatorias se sustituyen por resultados de ciertos cálculos realizados con números aleatorios. INTRODUCCIÓN Bajo el nombre de Método Monte Carlo o Simulación Monte Carlo se agrupan una serie de procedimientos que analizan distribuciones de variables aleatorias usando simulación de números aleatorios. El Método de Monte Carlo da solución a una gran variedad de problemas matemáticos haciendo experimentos con muestreos estadísticos en una computadora. El método es aplicable a cualquier tipo de problema, ya sea estocástico o determinístico. Generalmente en estadística los modelos aleatorios se usan para simular fenómenos que poseen algún componente aleatorio. Pero en el método Monte Carlo, por otro lado, el objeto de la investigación es el objeto en sí mismo, un suceso aleatorio o pseudo-aleatorio se usa para estudiar el modelo. A veces la aplicación del método Monte Carlo se usa para analizar problemas que no tienen un componente aleatorio explícito; en estos casos un parámetro determinista del problema se expresa como una distribución aleatoria y se simula dicha distribución. Un ejemplo sería el famoso problema de las Agujas de Bufón. La simulación de Monte Carlo también fue creada para resolver integrales que no se pueden resolver por métodos analíticos, para solucionar estas integrales se usaron números aleatorios. Posteriormente se utilizó para cualquier esquema que emplee números aleatorios, usando variables aleatorias con distribuciones de probabilidad
107
conocidas, el cual es usado para resolver ciertos problemas estocásticos y determinísticos, donde el tiempo no juega un papel importante. . ALGORITMOS El algoritmo de Simulación Monte Carlo Crudo o Puro está fundamentado en la generación de números aleatorios por el método de Transformación Inversa, el cual se basa en las distribuciones acumuladas de frecuencias: Determinar la/s V.A. y sus distribuciones acumuladas(F) Generar un número aleatorio uniforme Î (0,1). Determinar el valor de la V.A. para el número aleatorio generado de acuerdo a las clases que tengamos. Calcular media, desviación estándar error y realizar el histograma. Analizar resultados para distintos tamaños de muestra. Otra opción para trabajar con Monte Carlo, cuando la variable aleatoria no es directamente el resultado de la simulación o tenemos relaciones entre variables es la siguiente: ¨Diseñar el modelo lógico de decisión Especificar distribuciones de probabilidad para las variables aleatorias relevantes. Incluir posibles dependencias entre variables. ¨Muestrear valores de las variables aleatorias. ¨Calcular el resultado del modelo según los valores del muestreo (iteración) y registrar el resultado. Repetir el proceso hasta tener una muestra estadísticamente representativa Obtener la distribución de frecuencias del resultado de las iteraciones Calcular media, desvío. Analizar los resultados Las principales características a tener en cuenta para la implementación o utilización del algoritmo son: El sistema debe ser descripto por 1 o más funciones de distribución de probabilidad (fdp) Generador de números aleatorios: como se generan los números aleatorios es importante para evitar que se produzca correlación entre los valores muéstrales. Iterar tantas veces como muestras necesitamos Establecer límites y reglas de muestreo para las fdp: conocemos que valores pueden adoptar las variables. Definir Scoring: Cuando un valor aleatorio tiene o no sentido para el modelo a simular. Estimación Error: Con que error trabajamos, cuanto error podemos aceptar para que una corrida sea válida? Técnicas de reducción de varianza. ¨ Paralelización y vectorización: En aplicaciones con muchas variables se estudia trabajar con varios procesadores paralelos para realizar la simulación. EJEMPLO PRÁCTICO I Tenemos la siguiente distribución de probabilidades para una demanda aleatoria y queremos ver qué sucede con el promedio de la demanda en varias iteraciones: Demanda 0.10 0.20 0.40 0.20 0.10 0.00 0.20 0.40 0.60 0.80
108
1.00 Unidades Frecuencia 42 45 48 51 54 Utilizando la distribución acumulada (F(x) es la probabilidad que la variable aleatoria tome valores menores o iguales a x) podemos determinar cuál es el valor obtenido de unidades cuando se genera un número aleatorio a partir de una distribución continúa uniforme. Este método de generación de variable aleatoria se llama Transformación Inversa. Unidades Frecuencia Frecuencia Acumulada 42 0.10 0.10 45 0.20 0.30 48 0.40 0.70 51 0.20 0.90 54 0.10 1.00 Generando los valores aleatorios vamos a ver como se obtiene el valor de la demanda para cada día, interesándonos en este caso como es el orden de aparición de los valores. Se busca el número aleatorio generado en la tabla de probabilidades acumuladas, una vez encontrado( si no es el valor exacto, éste debe se menor que el de la fila seleccionada pero mayor que el de la fila anterior), de esa fila tomada como solución se toma el valor de las unidades (Cuando trabajamos en Excel debemos tomar el límite inferior del intervalo para busca en las acumuladas, para poder emplear la función BUSCARV(), para 42 sería 0, para 43 0,100001 y así sucesivamente). Ejemplo: Supongamos que el número aleatorio generado sea 0,52, ¿a qué valor de unidades corresponde? Nos fijamos en la columna de frecuencias acumuladas, ese valor exacto no aparece, el siguiente mayor es 0,70 y corresponde a 48 unidades. Se puede apreciar mejor en el gráfico, trazando una recta desde el eje de la frecuencia hasta que intersecta con la línea de la función acumulada, luego se baja a la coordenada de unidades y se obtiene el valor correspondiente; en este caso 48. Cuando trabajamos con variables discretas la función acumulada tiene un intervalo o salto para cada variable(para casos prácticos hay que definir los intervalos y luego con una función de búsqueda hallar el valor). Para funciones continuas se puede hallar la inversa de la función acumulada. De esta forma logramos a partir de la distribución de densidad calcular los valores de la variable aleatoria dada. En la siguiente tabla, vemos como a medida que aumenta el número de simulaciones, el valor simulado se acerca al valor original de la media y desviación estándar, además de la disminución del error típico. Cantidad de simulaciones Media Desvío Error 10 48.60 3.41 1.08 100 48.12 3.16 0.32 1000 47.87 3.28 0.10 10000 47.87 3.30 0.03 Número de Simulación Números aleatorios Valor de la Demanda 10 .92 54 20 .71 51 30 .85 51 ... ... ... N 0.46 48 Demanda 0.10 0.30 0.70 0.90 1.00 0.00
109
0.20 0.40 0.60 0.80 1.00 1.20 Unidades 42 45 48 51 54 Frecuencias 0,52 EJEMPLO PRACTICO I I Analizaremos ahora una propuesta para la fabricación de un nuevo artículo durante 4 años. Con los datos de la siguiente tabla: Costos de puesta en marcha $ 150000 Costos variables 75% de los ingresos Precio de Venta $ 35000 Costos del capital 10% Costos fijos $ 15000 Tasa Fiscal 34% Amortización anual $ 10000 Demanda promedio anual 10 unidades La demanda es la variable aleatoria de nuestro modelo, ya que puede tomar los siguientes valores: 8, 9, 10, 11,12, es una distribución discreta uniforme. Para poder simular los valores de esta variable utilizaremos la fórmula ENTERO (8+5*ALEATORIO ()). Debido a que los intervalos son todos de igual tamaño (1/5), es igualmente posible que ALEATORIO() llegue a cada uno de ellos, y por lo tanto es igualmente posible que la fórmula de cualquiera de los cinco valores posibles. La función ALEATORIO () de Excel genera un número en el intervalo (0:1) de una distribución uniforme continua. A través de la simulación veremos qué valores va a tomar el valor neto actual (VNA, El VNA es calculado mediante la fórmula correspondiente del Excel con un interés del 10% ( _= += n i i i ( tasa )valores VNA1 1). En la columna correspondiente al año 1 se han indicado las formulas que definen cada valor) en los 4 años, utilizando el siguiente modelo matemático de la situación: Año 0 Año 1 Año 2 Año 3 Año 4 Demanda ENTERO(8+5*ALEATORIO())12 9 9 Ingresos Precio de Venta*Demanda 420000 315000 315000 Costo Fijo Costo fijo 15000 15000 15000 Costo Variable 75% Ingresos 315000 236250 236250 Amortización 10000 10000 10000 10000 Utilidad antes de Impuestos Ingresos -Suma(costos)80000 53750 53750 Impuestos 34 % anterior 27200 18275 18275 Utilidad después de impuestos Utilidad - Impuestos 52800 35475 35475 Flujo neto de efectivo -150000 Utilidad –Amortización 62800 45475 45475 Valor Neto Actual -21160 Ahora realizaremos varias corridas con diferentes tamaños de muestra para ver que
110
sucede con el VNA. Armamos en otra hoja un cuadro con dos columnas y tantas filas como iteraciones(tamaño de la muestra) deseemos realizar. En la columna VNA copiamos con pegado especial(fórmula) la celda del modelo en la cual se calcula el VNA. Seleccionamos toda la tabla y con la herramienta Tabla en Datos se forma una tabla dinámica que contendrá las simulaciones para la cantidad de iteraciones que hagamos. Luego para cada tamaño de muestra aplicaremos Estadística descriptiva(En herramientas, Análisis de datos) e Histograma (las clases que utilizamos son: -30000, -20000, -10000, 0, 10000, 20000, 30000) Ahora realizamos una síntesis de las simulaciones desarrolladas para poder ver que sucedió con el modelo: El valor de la media y desviación estándar se estacionan a medida que aumenta la cantidad de iteraciones. También, como podemos observar en el gráfico, disminuye notablemente el error. También el modelo nos presenta mayor variabilidad para los valores máximo y mínimo. Cantidad de Iteraciones Media Desviación Estándar Máximo Mínimo Error 10 13253.55 18445.01 44294.82 -9711.94 5832.82 100 13515.19 13395.87 44728.71 -14567.50 1339.59 500 12686.22 13208.55 49067.55 -19817.50 590.70 1000 12147.81 12999.81 49067.55 -24156.34 411.09 5000 12612.65 13085.18 49067.55 -24156.34 185.05 10000 12537.13 12954.22 49067.55 -24156.34 129.54 Histograma para 10 iteraciones 0 0.5 1 1.5 2 2.5 3 3.5 4 4. Clase -30000 -20000 -10000 0 10000 20000 30000 40000 50000 y mayor... Frecuencia Acumulada .00% 20.00% 40.00% 60.00% 80.00% 100.00%
111
120.00% ¨ Sistemas de colas. ¨ Sistemas de inventario P y Q. ¨ Valoración de cartera de valores. Sintesis El método de Monte Carlo es una herramienta de investigación y planeamiento; básicamente es una técnica de muestreo artificial, empleada para operar numéricamente sistemas complejos que tengan componentes aleatorios o determinísticos, manteniendo tanto Resumen -30000 -20000 -10000 0 10000 20000 30000 40000 50000 60000 Cantidad de Iteraciones 10 100 500 1000 5000 N° Experimentos Valores de la variables aleatorias Media Desviación Estándar Máximo Mínimo Error Cuando el tamaño de las muestras es relativamente reducido, los resultados obtenidos en la simulación pueden ser muy sensibles a las condiciones iniciales. Un área de investigación está constituida por los métodos Quasi-Monte Carlo, estos 6.3 APLICACION La simulación en computadoras es un recurso para dirigir experimentos científicos en las empresas y sistema económico. Para planear experimentos de simulación, aplicables a los sistemas económicos e industriales, necesariamente debemos recurrir a técnicas como la estadística matemática, el análisis numérico, la econometría, la programación en computadora y el diseño de experimentos. 6.3.1 METODOLOGÍA La experiencia sugiere que la planeación de experimentos de simulación requiera de un procedimiento que consta de las etapas siguientes: Formulación del problema. Recolección y procedimiento de datos tomados en realidad. Formulación de un modelo matemático. Estimación de los parámetros de las características operacionales a partir de los datos reales. Evaluación del modelo y de los parámetros estimados. Formulación de un programa para la computadora. Validación. Diseño de los experimentos de simulación. Análisis de los datos se simulación.
112
Aunque el orden en que se implantan esos nueve pasos permanece abierto a discusión, la figura 3.1 los muestra bajo una ordenación basada en los resultados de experiencias [Naylor, 1977]. Con toda seguridad, cualquier procedimiento de este tipo resulta sumamente arbitrario en su naturaleza y la posibilidad de juzgarlo sólo existe en un plano puramente pragmático.
(1) FOMULACIÓN DEL PROBLEMA (2) RECOLECCIÓN Y PROCESAMIENTO DE DATOS (3) FORMULACIÓN DEL MODELO MATEMATICO (4) ESTIMACIÓN DELOS PARAMETROS
MODELO RECHAZADO EVALUACIÓN DEL MODELO
MODELO ACEPTADO
(5)
(6)
FORMULACIÓN DEL PROGRAMA PARA LA COMPUTADORA
113
(7) VERIFICACIÓN (8) DISEÑO DE EXPERIMENTOS (9) ANALISIS DE DATOS DE SIMULACION
FORMULACIÓN DEL PROBLEMA Generalmente un problema se presenta por síntomas, no por el diagnostico. Por lo que antes de generar soluciones en un sistema, se deben buscar el mayor número de síntomas. Según Acoff y Sasieni, las condiciones para que exista el mas simple de los problemas son: 1. Debe existir por lo menos un individuo que se encuentra dentro de un marco de referencia, el cual se puede atribuir el problema del sistema. 2. El individuo debe tener por lo menos un par de alternativas para resolver su problema, en caso contrario no existe tal problema. 3. Deben de existir por lo menos, un par de soluciones, una de las cuales debe tener mayor aceptación que la otra en el individuo. En caso contrario, no existe el problema. Esta preferencia esta asociada a un cierto objetivo dentro del marco de referencia en donde se encuentra el individuo del sistema. 4. La selección de cualquiera de las soluciones debe repercutir de manera diferente en los objetivos del sistema, es decir existe una eficiencia y/o efectividad asociada con cada solución. Estas eficiencias y/o efectividades deben ser diferentes, puesto que de lo contrario no existe problema. 5. Por ultimo le individuo que toma las decisiones ignora las soluciones y/o eficiencia y/o efectividades asociadas con las soluciones del problema. Si las cinco condiciones anteriores existen, entonces se tiene un problema. Esta situación puede complicarse en los siguientes casos: a) El problema recae en un grupo, no en un individuo. b) El marco de referencia donde se encuentra el grupo, cambia en forma dinámica. c) El numero de alternativas que el grupo puede escoger es bastante grande, pero finito. d) El grupo dentro del sistema puede tener objetivos múltiples. Peor aún, no necesariamente estos objetivos son consistentes entre si. e) Las alternativas que selecciona el grupo son ejecutadas por otro grupo ajeno, al cual no se le puede considerar como elemento independiente del sistema. f) Los efectos de la decisión del grupo pueden sentirse por elementos que aun siendo ajenos al sistema considerando, influyen directa o indirectamente, favorable o desfavorablemente hacia el (político, consumidor, etc.). Para formular un problema se necesita la siguiente información: a) ¿Existe un problema? b) ¿De quién es el problema? c) ¿Cuál es el marco de referencia del sistema donde se encuentra el problema?
114
d) ¿Quién o quienes toman las decisiones? e) ¿Cuáles son sus objetivos? f) Cuáles son los componentes controlables del sistema y cuáles no lo son? g) ¿Cuáles son las interrelaciones más importantes del sistema? h) ¿Cómo se emplearan los resultados del proyecto? ¿Por quién? ¿qué efectos tendrá? i) ¿Las soluciones tendrán efecto a corto o largo plazo? j) ¿Podrán los efectos de las soluciones modificarse o cambiarse fácilmente? k) ¿Cuántos elementos del sistema se afectaran por las soluciones del proyecto? ¿En qué grado? FORMULAR UN PROBLEMA REQUIERE: a) Identificar las componentes controlables de un sistema. b) Identificar posibles rutas de acción dadas por las componentes, controlables. c) Definir el marco de referencia, dado por las componentes no controlables d) Definir los objetivos que se persiguen y clasificarlos por su orden de importancia. Identificar las relaciones importantes entre las diferentes componentes del sistema, este paso equivale a encontrar las restricciones que existen, a la vez que permite más adelante representar estas interrelaciones en forma matemática. La identificación de la estructura del sistema (componentes, canales, interrelaciones, etc.), se hace a través de un proceso sistemático, que se conoce como diseño de sistemas. El diseño de sistemas se lleva a cabo de la siguiente manera: a) Se ubica al sistema considerando dentro de sistemas más grandes. b) Se determinan las componentes del sistema. c) Se determinan los canales de comunicación entre las componentes del sistema y de este hacia los elementos de otros sistemas que van a tener influencia directa o indirecta. d) Se determinan de qué manera se tiene acceso a la información requerida como se procesa esta y como se transmite entre las diferentes componentes del sistema. RECOLECCION Y PROCESAMIENTO DE LA INFORMACIÓN. 1.- Mediante algún método de recolección se necesita capturar los siguientes datos. - Número de llegadas por unidad de tiempo a diferente horarios. - Tiempos entre llegadas en diferentes horarios. - Operaciones que se realizan en el banco. - Frecuencia de los servicios requeridos por el usuario. - Comportamiento del usuario en las líneas de espera. 2.- Procesar la información capturada, en forma de tablas, gráficas, etc. a través de algún paquete computacional. Recolección y procesamiento de la información. RECOLECCIÓN: Es el proceso de capturar los datos disponibles que se requieren para la simulación del comportamiento del sistema. PROCESAMIENTO: Se comprenden las actividades requeridas para transformar los datos en información. Por ejemplo, un directorio telefónico es un banco de datos: mi dirección y teléfono es información que procede de ese banco de datos el hecho de que estos datos estén arreglados en cierta forma (procesados y forma alfabética), permite el acceso a la información deseada de una manera sencilla. La formulación es necesaria para poder simular un sistema. La información debe ser: oportuna relevante y confiable. FUENTES PARA GENERAR INFORMACIÓN
115
1.- Las series históricas o de tiempo: son datos útiles y de rápido procesamiento para convertirlos en información. 2.- La opinión de expertos: Es información subjetiva, carente de detalle y de utilidad mínima, económica y rápida de obtener cierto tipo de información complementaria. 3.- Los estudios de campo: son el método más efectivo, aunque más costoso y tardado, de obtener información requerida. Se requiere el diseño de una muestra estadística representativa del universo bajo estudio; de un cuestionario que asegure la relevancia y confiabilidad de un cuestionario y que asegure la relevancia y confiabilidad de los mismos y de personal entrenado que aplique la encuesta. La información capturada se mete a la computadora a través de algún paquete y se edita. FORMULACIÓN DEL MODELO. 1. Representar el sistema mediante un esquema en el que se visualice en cada modula con sus componentes, atributos, actividades endógenas y exógenas y las relaciones entre estas. El conjunto de todos estos módulos es el sistema. 2. Caracterizar matemáticamente las relaciones quien gobierna la interacción de las componentes del sistema y de las actividades endógenas y exógenas. Es mas fácil construir una expresión matemática de las componentes y actividades del bloque de que todo el sistema. Sin embargo a una escala, la modelación puede ser muy difícil o, en ciertos casos imposibles. El sistema como un todo se modela matemáticamente de acuerdo a la interconexión de los bloques. Por ejemplo si un sistema está formada por una sola unidad de servicio y una línea de espera, una expresión matemática para determinar el tiempo promedio que los clientes están en el sistema: TSISTEMA = TCOLA + TSERVICIO FORMULACIÓN DEL MODELO Al modelar el sistema banco se caracterizan por expresiones matemáticamente las relaciones que gobiernan las interacciones de los módulos con cada uno de sus componentes, atributos, actividades endógenas y exógenas. A B C D E F
Se considera que el sistema banco está formado por el módulo siguiente: MODULO 1: Formado por las 6 cajas. COMPONENTES: CAJAS A, B, C, D, E, F. LINEAS DE ESPERA
116
ATRIBUTOS: CAJAS: Tipo de operación que realizan, monto de dinero recaudado, clientes atendidos en cada actividad; tiempo de servicio para cada actividad. LINEA DE ESPERA: Tiempo promedio que un cliente está en cola, número promedio de cliente en cada cola. ACTIVIDADES EXÓGENAS: Todas las actividades económicas que originan que los usuarios lleguen al banco. ACTIVIDADES ENDÓGENAS: Son cinco las actividades que se van a realizar en el banco. 1. Ahorro 2. Deposito 3. Cambio de cheques 4. cambio de dinero 5. pago de servicios Estas actividades pueden hacerse en algunas o varias cajas. El 10% realizan ahorro, de este 10% el 40% solo realizan ahorro en la caja a el 60% además van a depositar en las cajas B a F. El 20% realizan la operación de depósito en las cajas B a F El 40% realizaba la operación de depósito en las cajas B a F 45% cheques < 1000 cajas B y E 35% cheques 1001 a 5000 cajas C y D 20% cheques > 5000 caja F El 20% realizan la operación cambio de dinero en las cajas de la B a F. El 10% realizan la operación pago de servicios en las cajas B y E. EVALUACIÓN DE LAS CARACTERISTICAS DE LA INFORMACIÓN PROCESADA Se necesita averiguar el tipo de distribución probabilística que gobierna a la información. Para ello se requiere la realización de una serie de prueba estadísticas, para analizar si existen diferentes significativas entre la distribución empírica observada (histograma de los datos capturados) y la distribución teórica supuesta de no existir diferencias significativas, se utiliza la distribución teórica que generalmente ya viene tabulada. De lo contrario, el comportamiento del sistema debe hacerse en base a la distribución empírica observada, lo cual acarrea cierta complejidad. Las diferentes pruebas auxiliares para analizar estas diferencias estadísticas son: a) Pruebas referentes a valores medios (diferentes entre medias). b) Pruebas referentes a variaciones (Ji-cuadrada, prueba F…). c) Pruebas referentes a conteo de datos (proporciones, tablas de contingencia, bondad de ajuste, pruebas de corridas e intervalo). d) Pruebas no paramétricas (rangos, medianas, corrección, Kolmogorov-Smirnov, etc.). EVALUACIÓN DE LAS CARACTERISTICAS DE LA INFORMACIÓN PROCESADA ¿Cómo se evalúo que las llegadas de clientes al banco son tipo Poisson o que los tiempos entre llegadas son de tipo exponencial? De 9:00 a 10:00 el tiempo promedio es de 15” De 10:00 a 12:00 el tiempo promedio es de 30” De 12:00 a 13:00 el tiempo promedio es de 20” En relación al tiempo de operación y caja a utilizar, como se determino que: El 10% va a ahorrar en la caja a que de este 10% El 40% se retira. El 60% se va a deposito. El 20% se va a depositar en las cajas B a F.
117
El 40% va a cambio de cheques que de este 40%. El 45% son cheques < 1000 y va a las cajas B y F. Que el 35% son cheques 1001 a 5000 y van a las cajas C y D. Que el 20% son cheques > 5000 y van a la caja F El 20% va a cambio de dinero en las cajas B y F. El 10% va apago de servicios y va a las cajas B y F . Como se concluyo que los tiempos de servicios en las cajas de acuerdo al tipo de operación son:
± 3” 1” µ = 15 . σ = 30 Deposito Ahorro
Cambios de cheques
µ = 1' σ = 30'' µ = 2' σ = 45'' cheque 1001 a 5000 µ = 2.5'' σ = 1 cheque> 5000 µ = 3' σ = 1' Cambio de dinero pago de servicios 4’ ± 2’ cheque < 1000
Para realizar las pruebas estadísticas se sugiere apoyarse en algún software como el statgraphics que es un paquete estadístico. FORMULACIÓN DEL PROBLEMA ¿EXISTE UN PROBLEMA? Recientemente se ha notado la disminución de clientes en el banco. Posiblemente el trato hacia el cliente no se a el adecuado. O probablemente el cliente tarda mucho esperando ha ser atendido que ha optado por buscar los servicios de otro banco. Posiblemente haya muchas interrogaciones en relación a lo que está ocurriendo actualmente en el banco. Pero de ella, la mas importantes es la que está relacionada con el tiempo que permanece el cliente en el banco ¿como es este tiempo? ¿podría ser disminuido a tal grado que sea atractivo para el cliente y vuelvan a requerir los servicios del banco? Problema: La cantidad de clientes ha disminuido, necesitamos ser más eficientes y eficaz. ¿De quién es el problema?: De todos los que laboran en el banco pero fundamentalmente del gerente y el cuerpo directivo. ¿Marco de referencia?: De acuerdo con la experiencia del gerente se supone que el problema se encuentra en las cajas, específicamente en el tiempo utilizado para que un cajero atienda a un cliente. El problema se encuentra en todo el sistema o específicamente en el subsistema cajas. ¿Quién o quienes toman las decisiones?: El gerente con su cuerpo directivo. ¿Cuáles son las componentes controlables del sistema?: Las cajas: Pueden ponerse cajeros más rápidos y eficientes, aumentando su número. Las líneas de espera: Pueden organizarse de tal manera que la espera sea agradable. Estrategias: A través de personal capacitado se puede orientar al cliente para mandarlo a la caja más adecuada y rápida. Esto hacia más fluida la espera. ¿Cuáles son las componentes no controlables? Los clientes en lo que se refiere a tasa de llegada, a su deseo de irse cuando ha transcurrido cierto tiempo o existen un número determinado de clientes delante de él. ¿Cuáles son las interrelaciones más importantes del sistema? Los recurso del sistema banco son. *Recursos humanos.
118
*Recursos financieros. *Recursos materiales. Entre estos existe un número muy grande de interrelaciones. R.H
R.F
R.M En nuestro caso las interrelaciones más importantes son la que se entre los recursos humanos con los clientes. Que llegan al banco y que por un tiempo determinado forman parte del sistema banco. Cada caja está atendida por sistema humano y este atiende a otro ser humano que es un cliente. Cliente
cajero
Aunque se maneje dinero y equipo eléctrico no existen interrelaciones relevantes que sean un objetivo para este análisis. Nos interesa la utilización de las cajas atendidas por seres humanos, denominados cajeros. ¿Quiénes harán la investigación de lo que está ocurriendo en el sistema banco? Expertos en investigación de operaciones, en sistemas y en simulación. ¿Cómo se emplearan los resultados de la investigación? Para el análisis se determinara: Número promedio de clientes en cada caja. El tiempo promedio que un cliente está en caja. El promedio que un cliente está en el sistema. El número promedio en el sistema. El factor de utilización de cada una de las cajas. El numero de los clientes que hicieron determinado tipo de servicio. La posibilidad de que colas en las cajas con un número determinado de clientes. Determinar los tiempos promedio de atención de los clientes en las cajas. Los resultados anteriores se emplearan para analizar con qué condiciones desde el punto de vista funcional se encuentra el sistema banco. ¿Por Quién? El grupo de especialistas proporcionara dicha información al gerente y su equipo administrativo para su análisis y toma de decisiones. ¿Qué efectos tendrá? Puede ser que elimines cajas si es que la utilización son muy grandes. ¿Las soluciones tendrán efecto a corto o largo plazo? Dada la alta competitividad con otros bancos se sugiere realizar la simulación del sistema banco para poder tener un análisis que traiga como resultado mejorar el servicio que dicho banco proporciona. Todo esto a corto plazo.
119
a) ¿Podrán los efectos de las soluciones modificarse o cambiarse fácilmente?: En este caso el efecto de las soluciones es proporcionar satisfacción en el cliente una parte de la solución sería disminuir el tamaño de las líneas de espera, agilizar el tiempo de atención de caja a los clientes. Para lograr una mayor satisfacción se debe permitir decidir hasta qué punto pueden crecerse los cambios deseados u en su momento disminuirse. b) ¿Cuántos elementos del sistema se afectaran por las soluciones y en qué grado?: Los elementos del sistema que podrían verse afectado son alguna o algunas de las 6 cajas. Existe la posibilidad de que alguna caja tenga su utilización baja, desaparezca, c) no así el servicio que proporciona al eliminarse cajas, esto podría afectar a algún trabajador. En la formulación del problema existe un proceso dialéctico entre los que tienen el problema y los que van a construir el modelo. Algunos objetivos o propósitos pueden definirse mediante los siguientes aspectos: a) Preguntas que deben contestarse: ¿Realmente necesita hacerse un análisis del funcionamiento del sistema banco? ¿Podría disminuirse el tiempo de estancia de un cliente en el sistema banco? ¿Sera necesario instalar equipo electrónico que sirva de apoyo al cajero para dar un servicio más rápido?, ¿Se necesitan más cajas para el servicio? b) Hipótesis que deben ser verificadas: La causa de que en el banco haya poca clientela se debe a que los tiempos de servicio en las cajas son muy lentos originando la acumulación de mucha cola. Si el cajero cuenta con equipo electrónico como apoyo a sus operaciones la eficiencia se elevaría hasta el 90%. Un resultado del análisis podría ser que despidieran personal. La administración del banco podría instalar espejos, sillas, televisiones, la sala para evitar que los llamados aburridos se fueran. c) Efectos que deben estimarse: ¿Cómo afectaría al sistema banco si e instalara equipo electrónico en cada caja? ¿Cómo afectaría al sistema banco si se aplica el horario de servicio? ¿Cómo afectara al sistema banco si se instalan en la localidad otros bancos? VALIDACIÓN DEL PROGRAMA POR COMPUTADORA En el caso del sistema banco se tiene lo siguiente. 1.- Cada corrida genera los siguientes resultados. a) Un número de clientes que se van por aburridos. b) Un número promedio de clientes que se esperan en la cola de cada caja c) Un factor de utilización para cada una de las 6 cajas. d) Una tabla de tiempos de tránsitos o de estancia de los clientes en el sistema. e) Una tabla de los tiempos de estancia en cada una de las colas(cajas). Si se realiza otra corrida se obtiene a otros resultados diferentes. ¿Cuántas veces se debe correr el programa? Aún cuando en cada corrida los resultados son diferentes estadísticamente estos pueden ser confiables. 2.- Establecer las hipótesis para cada tipo de resultados, aún cierto nivel de significancia. Por ejemplo si se hacen 5 simulaciones probar que probabilísticamente los factores de utilización de cada una de las cajas son iguales. AU AU AU AU AU
= = = = =
UB UB UB UB UB
= = = = =
UC UC UC UC UC
= = = = =
UD UD UD UD UD
= = = = =
UF UF UF UF UF
120
3.- Realizar la prueba de hipótesis para afirmar o refutar la hipótesis como statgraphics.
4.- Simultáneamente realizan las pruebas de hipótesis, y se pueden comparar los resultados con algún patrón de información previamente conocido para tener panorama más amplio y confiable. 5.- Si la hipótesis no fue aceptada entonces se debe revisar exhaustivamente todo el programa las funciones, procedimientos entradas y salidas de información, hasta encontrar si hay el posible error. DISEÑO DE EXPERIMENTOS DE SIMULACIÓN Esta fase se puede hacer simultáneamente con las fases: diseño y validación del programa. Una vez validado el programa se entra a la fase del diseño de experimentos que se quieren simular, para ello se debe hacer lo siguiente: 1. Definir las variables endógenas y exógenas. 2. Definir las estructuras funcionales que las relacionan. 3. Elegir las distribuciones adecuadas a los parámetros aleatorios. 4. Generar los números y variables aleatorias que de acuerdo a estas distribuciones, representan al sistema baja estudio. 5. Realizar pruebas de hipótesis para seleccionar la información necesaria para realizar la simulación. 6. Definir las distintas condiciones iniciales y finales de la simulación. 7. Realizar un número determinado de simulación. 8. Tabule y grafique los resultados para realizar un mejor análisis y validación de la simulación. DISEÑO DEL EXPERIMENTO DE SIMULACIÓN DEL SISTEMA BANCO 1. ¿Están bien definidas las variables endógenas del sistema? 2. ¿Están bien definidas las estructuras funcionales que realizan las variables? 3. ¿Se han hecho las pruebas de hipótesis necesarias para afirmar que: -Las llegadas son de tipo Poisson o que los tiempos son de tipo exponencial -Que los tipos de servicio que van a requerir el cliente están representados por una distribución. -Que las duraciones de los servicios son de tipo uniforme y normal como lo especifica el enunciado. 4. ¿Se tiene bien definido el modelo generador de números aleatorios? 5. ¿Se tienen bien definidos los modelos generadores de números aleatorios? En cuanto a las condiciones iniciales y finales se tiene lo siguiente: CONDICIONES INICIALES • El banco inicia s su funciones a las 9:00 • Al inicio no hay ningún cliente CONDICIONES FINALES • El banco solo pueden darse llegadas hasta las 13:30 horas. • La simulación termina cuando no haya un solo cliente. 8. ¿Se tienen definidas cuantas simulaciones se van a realizar? • un solo día es de 9:00 a 13:30. • solo podrían simular una semana o un mes. 9. Tabular y grafique los resultados obtenidos de cada simulación con el fin de realizar un mejor análisis y validación de la simulación. ANALISIS DE RESULTADOS Y VALIDACIÓN DE LA SIMULACIÓN 1. Recolectar sistemáticamente los datos producidos por la simulación.
121
2. Calcular ciertas estadísticas. 3. Interpretar el comportamiento de la información obtenida. 4. Validar los resultados de la simulación comparando tanto similitud entre los resultados y las posibles series históricas que se poseen, como el uso que los decisiones le den a esta herramienta. La utilización del modelo por parte de los decisores es la validación crucial. De otra forma el modelo se archiva o se tira a la basura. ANALISIS DE RESULTADOS Y VALIDACIÓN DE LA SIMULACIÓN 1.- Diseñe una tabla con un formato tal que facilite la visualización de los resultados de cada simulación del sistema banco Corrida
clientes que se van
colas en cada caja QA, QB, QC, QD, QE, QF
utilización en cajas PA, PB, PC, PD, PE, PF
TABLAS DE TIEMPO 2.- Calculo de las estadísticas Promedios, desviaciones estándar porcentajes etc. 3.- Interpretación de los resultados Hacer comparaciones de los promedios entre una y otra simulación 4.- Comparar estos resultados con algún patrón de información o con la realidad que desea resolver. Representaría a los decisiones. FORMULACIÓN DE UN PROGRAMA DE COMPUTADORA. Esta fase se puede hacer simultáneamente con las fases: validación del programa y el diseño de experimento los pasos a seguir para formular un programa de computadora son: a) Elaborar un diagrama de flujo que muestre el efecto de las diferentes actividades sobre las componentes importantes del sistema b) Diseñar la programación en algún lenguaje especial como: GPSS, SIMNET, SIMSCRIPT, GASP, DYNAMO, etc. ó lenguajes de alto nivel: PASCAL, C. -condiciones iniciales de la simulación. -condiciones finales. c) Probar el programa hasta eliminar todos los errores lógicos y no lógicos. d) Generar resultados. b) diseñar un programa: El programa puede hacerse en lenguajes de alto nivel: C, PASCAL, FORTRAN, BASIC, PROMODEL etc., lenguajes de simulación: GPSS SIMNET, cualquiera que sea el lenguaje seleccionada en el deben ampliarse procedimientos funciones o bloques que describan la realización de llegadas servicios y salidas.
122
123
UNIDAD 7 OBJETIVO PARTICULAR DE LA UNIDAD Al término de la unidad el estudiante conocerá, desarrollará y aplicará el paquete computacional de Simulación Promodel.
OBJETIVOS ESPECÍFICOS Conceptos de PROMODEL Instrucciones para programar Reglas de simulación Problemas resueltos empleando PROMODEL Casos prácticos
124
UNIDAD 7
PROMODEL
7.1. CONCEPTOS DE PROMODEL Herramienta de simulación que funciona en computadoras personales en un ambiente Windows. Mediante una combinación ideal de facilidad de uso, flexibilidad y potencia, permite diseñar y analizar sistemas de producción y servicios de todo tipo y tamaño y modelar prácticamente toda situación, en forma casi real, mediante sus capacidades gráficas y de animación. Promodel fue concebido como una herramienta para ingenieros y gerentes que desean lograr reducciones de costos, mejoras en la productividad e incrementar las ventajas estratégicas en la producción de bienes y servicios. En resumen, con la simulación se tiene la habilidad para determinar el uso de los recursos disponibles – personal, equipo e instalaciones – más eficiente y productivamente. No se necesita que el ingeniero o modelador tenga una gran habilidad para programar. Mediante su interface gráfica y el uso de pequeños modelos pre construidos, permite modelar sistemas complejos de producción y servicios en forma fácil y rápida. Promodel por otra parte, se puede utilizar como un medio muy efectivo para probar y generar nuevas ideas de diseño y mejoramiento, antes de realizar las inversiones y/o modificaciones necesarias para construir o mejorar estos sistemas. En la misma forma sirve para identificar cuellos de botella, seleccionar la alternativa que ofrezcan la mejor relación beneficio-costo y hacer Análisis de Sensibilidad (¿Qué pasaría sí?). Como un simulador de eventos discretos, Promodel está concebido para modelar sistemas de manufactura discreta (unidad por unidad), sin embargo, muchos sistemas de manufactura continua pueden ser modelados convirtiendo unidades a granel en unidades discretas tales como galones o barriles. Adicionalmente se puede adaptar fácilmente para modelar sistemas de servicios de salud (Centros de atención medica) o procesos financieros entre otros. Algunas aplicaciones típicas de Promodel son las siguientes: Líneas de ensamble Sistemas de manufactura flexible Producción por lotes Justo a tiempo (JAT) y Sistemas de producción KANBAN. Sistemas de colas. (Para servicios o manufactura tales como líneas de empaque). Optimización de la distribución en planta y el manejo de materiales.
7.2.-INSTRUCCIONES PARA PROGRAMACION EN PROMODEL Para el funcionamiento correcto del programa y de la clase es necesario unificar la terminología que se maneja dentro del simulador. A continuación se muestra la definición de los principales elementos utilizados por el PROMODEL. LOCACIONES
ENTIDADES REDES RECURSOS
Se define como "Locación" los elementos físicos que conforman el medio ambiente de un proceso. Ejemplo: edificios, escritorios, máquinas, etc. Existen tipos especiales de "locaciones" como las bandas transportadoras, los contadores, los indicadores de estado. Son los elementos del procesos que van a ser víctimas de transformación o resultado de algún proceso. Serán las materias primas, materiales en proceso, productos terminados. Las redes son rutas invisibles sobre las cuales se van a mover los "Recursos" o las "Entidades". PROMODEL llama "Recurso" a los elementos que permiten o son responsables de actividades dentro del proceso. En un proceso de producción los recursos serían los operarios, los vehículos (que tengan movimiento).
125
PROCESO
LLEGADAS
Un proceso se divide en dos partes principales: Operaciones y Movimientos Lógicos. La operación es definida como la actividad transformadora que se le realiza a una entidad dada en una locación específica. El movimiento lógico es el paso de la "Entidad" al siguiente punto del proceso. Se definen para determinar las condiciones de entrada de las "entidades" al proceso. Esto es, ¿a dónde llegan?, ¿cuando llegan?, ¿con que frecuencia?, ¿tamaño de los lotes de llegada?.
LOCACIONES Se definió como "Locación" a los elementos físicos que conforman el medio ambiente de un proceso. No tienen acción ni movimiento y su función es alojar a los demás elementos del proceso. Ejemplo: edificios, escritorios, máquinas, etc. 1. NOMBRE Ejemplo: Si tenemos una máquina que es utilizada para el empaque de jabones, la llamaremos "maq_empaque_jabones", y no "m_e_j". 2. CAPACIDAD.-Total de entidades que pueden estar alojadas al mismo tiempo en la locación en un momento dado. Ejemplo: La máquina utilizada para el empaque de jabones no puede tener capacidad infinita, suponiendo que pueda recibir 20 jabones al tiempo... su capacidad sería "20". 3. UNIDADES.-Representa el número de repeticiones que hay de la locación. Ejemplo: "maq_empaque_jabones" y le indicamos que son "2" unidades. 7.3.-PASOS PARA LA APLICACIÓN DEL PROMODEL 1.-Crear un nuevo modelo 2.- Construir gráficos de Background 3.- Construir las locaciones (Locations) donde se ejecutará el trabajo 4.- Adicionar una Entidad 5.- Adicionar un Path Network 6.- Adicionando un Recurso 7.- Adicionar la lógica de Procesamiento 8.- Programar Arribos de Productos 9.- Poner Opciones, grabar Modelo y Ejecutar! 10.- Visualizar Resultados de la Simulación 7.4.-REGLAS DE SIMULACIÓN EMPLEANDO PROMODEL Construcción del modelo.-Se construye empleando herramientas gráficas, tablas de entrada de datos y llenando blancos en cajas de diálogo. Corrida de la simulación.-Al correr un modelo, la base de datos del modelo se traduce o compila para crear la base de datos de la simulación. Análisis de salida.-Proporciona estadísticas tanto resumidas como detalladas sobre medidas clave del desempeño. Reportes resumidos.-Muestran totales, promedios y otros valores globales. Gráficas de series de tiempo e histogramas.-Para observar las fluctuaciones en el comportamiento del modelo a través del tiempo.
126
Rules...La caja de dialogo de reglas, se selecciona pulsando el botón de encabezado en la tabla de edición de locaciones, es usado para escoger la regla que ProModel® seguirá cuando toma las siguientes decisiones: 1. Seleccionar las entidades entrantes 2. Hacer cola para salir 3. Seleccionar una unidad Selecting Incoming Entities. Cuando una locación está disponible y hay más de una entidad esperando para entrar, deberá ser tomada una decisión respecto a cual admitir. Selecting Incoming Entities>Oldest by Priority..-Selecciona la entidad que a esperado más para asignarle la mas alta prioridad de ruta. Selecting Incoming Entities>Random..-Selecciona aleatoriamente la entidad siguiente con igual probabilidad del grupo de todas las entidades que esperan. Selecting Incoming Entities>Least Available Capacity..-Selecciona la entidad que viene de la locación que tiene la menor capacidad disponible. Selecting Incoming Entities>Last Selected Location. Selecciona la entidad que viene de la locación que se seleccionó la última vez. Selecting Incoming Entities>Highest Attribute Value. Selecciona la entidad con el valor del atributo más alto de un atributo especificado.Selecting Incoming Entities>Lowest Attribute Value. Selecciona la entidad con el valor del atributo más bajo de un atributo especificado .Queuing For Output. Cuando una entidad ha finalizado su operación en una locación y otras que han finalizado adelante de ella no han partido. Queuing For Output.>No Queuing. Entidades que han completado su proceso en la locación actual son libres de dirigirse a otras locaciones independientemente de otras entidades que han terminado su proceso.
127
Queuing For Output>First In, First Out. La primera entidad en completar el proceso debe salir para la próxima locación antes que la segunda en completar el proceso salga, y así. Queuing For Output>Last In, First Out (LIFO). Entidades que han finalizado su proceso esperan para salir con esta regla, la última que finaliza o completa el proceso es la primera en salir. Queuing For Output>By Type. Entidades que han finalizado esperan para salir FIFO, pero se tiene en cuenta el tipo de entidad para asignar su ruta especifica. Queuing For Output>Highest Attibute Value. Entidades que han completado su proceso hacen cola para salir de acuerdo con el más alto valor de un atributo especificado. Queuing For Output>Lowest Attribute Value. Entidades que han completado su proceso hacen cola para salir de acuerdo con el menor valor de un atributo especificado. Selecting a Unit. Si la locación tiene unidades múltiples, entonces las entidades entrantes deben asignarse a una unidad en particular. Selecting a Unit>First Available. Selecciona la primera unidad disponible. Selecting a Unit>By Turn. Rota la selección entre las unidades disponibles. Selecting a Unit>Most Available Capacity. Selecciona la unidad que tiene la mayor capacidad disponible. Selecting a Unit>Fewest Entries. Selecciona una unidad disponible con la menor cantidad de entradas. Selecting a Unit>Ramdom. Selecciona una unidad disponible aleatoriamente.
128
Selecting a Unit>Longest Empty. Selecciona la una unidad disponible que ha estado más tiempo vacía. Ventana de Gráficos de Locación. La ventana de gráficos de locación provee un medio gráfico para crear las locaciones y cambiar sus iconos. (Seleccione un elemento para ver su descripción.)
New Activo .Permite crear un nuevo registro de locación cada vez que se sitúe un nuevo gráfico de locación en el esquema. New inactivo .Permite agregar gráficos adicionales a una locación existente, como una etiqueta de texto, un sitio para entidad, o una luz de estado. Botón Edit. Despliega el cuadro de dialogo de la Librería Grafica que se usa para cambiar el color, dimensiones, y orientación del gráfico de la locación. Botón Erase. Borra el gráfico de la locación seleccionada en la ventana del Esquema sin
129
anular el registro correspondiente en la Tabla de edición de locaciones. Botón View . Muestra la locación seleccionada en la tabla de edición de locaciones dentro de la ventana del Esquema. Gráficos de locación. Una locación puede tener cualquiera, uno o más de los gráficos seleccionados de la ventana de gráficos de locación. Contador .Representa el número actual de entidades en una locación. Medidor. Barra corrediza vertical u horizontal que muestra los volúmenes actuales de la locación durante la simulación (como un porcentaje de la capacidad). Este gráfico constantemente se actualizará durante la simulación. Tanque. Barra corrediza vertical u horizontal que muestra el flujo continuo de líquidos y otras substancias en y fuera de tanques o vasos similares. Transportadores / Colas Símbolo que representa una banda transportadora o una cola. Etiqueta. Texto usado para describir la locación. Luz de estado Círculo que cambia de color durante la simulación mostrará el estado de la locación. Sitio de entidad .Sitio asignado sobre el esquema dónde la entidad o las entidades aparecerán mientras están en la locación. Región. Límite usado para representar el área de una locación. Biblioteca Gráfica. Cualquiera de los gráficos que aparecen en la biblioteca en el menú gráfico. Entidades Todo lo que el sistema procesa es llamado "Entidad", también puede pensarse en ellas como las partes en los sistemas de manufactura, personas, papeles, tornillos, productos de toda clase.
Editor de Entidades. Las entidades son creadas o editadas coeditor de entidades.
130
Tabla de edición.
I con.Muestra el grafico de la entidad. Name. Nombre de la entidad. Speed. Esta entrada es opcional y se aplica para entidades que se muevan por si mismas como los humanos. Stats. El nivel de estadísticas que se coleccionaran de la entidad, hay tres niveles: None, Basic y Time Series. Notes. Cualquier información puede entrarse por ejemplo el material de la parte o entidad, la referencia, el proveedor, etc. Path Networks
131
Editor de Path Networks. En ésta tabla se reúne la información básica de la "ruta", cada uno de sus campos se explica a continuación. (Seleccione una columna para ver su descripción.)
Graphic. Especifica el color de la red. Name. Nombre de la ruta. Type. Existen tres tipos de rutas; Passing, Non-Passing, Crane; Passing es un tipo de ruta en la que las entidades pueden pasar a otras entidades, es una forma de modelar algunas redes en las que los recursos se adelantan o se traslapan sin ningún inconveniente; Non-Passing es un tipo de ruta en la que las entidades no se adelantan unas a otras, T/S. Se puede definir el movimiento en la ruta mediante dos tipos de unidades: Time, Speed & Distance. Paths El numero de segmentos de ruta en la red, consta de una tabla de edición.
132
Paths…>From. El nodo de comienzo del segmento de ruta. Paths…>To. El nodo de final del segmento de ruta. Paths…>BI. Se ajusta con BI-direccional ó Uni-direccional dependiendo si el tráfico puede darse en una o en las dos direcciones. Paths…>Time. Si el viaje a través de la ruta va ha ser medido más en términos del tiempo que de la distancia, entonces es el tiempo que un recurso o entidad tomara en recorrer el segmento de ruta. Paths…>Distance. Si el viaje a través de la ruta va ha ser medido en términos de la velocidad y distancia muestra la longitud del segmento de ruta, el tiempo de viaje entonces se determinara por la velocidad del recurso o la entidad. Interfaces…. El numero de conexiones locación-nodo en la actual red.
133
Si una entidad será tomada o dejada por un recurso en una locación entonces deberá existir una interfaz entre el nodo y la locación. Interfaces…>Node. Nombre del Nodo Interfaces…>Location. Nombre de la locación o locaciones conectadas con el nodo, un nodo puede tener interfaz con varias locaciones pero una locación solo puede tener una interfaz con un nodo por ruta. Mapping.… Cuando hay varias rutas o segmentos que conecten un nodo de origen con un nodo de destino y deba tomarse una decisión acerca de cual camino seguir entonces ProModel® escogerá el más corto pero mediante esta tabla de edición se puede establecer explícitamente el camino que deberá seguirse. Nodes…. Numero de nodos que conforman la ruta.
134
La tabla de edición de nodos, consta de los siguientes campos: Nodes…>Node. Nombre del nodo. Nodes…>Limit. El numero máximo de entidades o recursos que pueden ocupar un nodo en un momento dado, dejado en blanco significa que no existe limite. Recursos. Un recurso es un operario, o una maquina que sirve para transportar, realizar operaciones puntuales, mantenimientos o asistencias complementarias para el procesamiento de entidades. Editor de Recursos. Consiste de la tabla de edición de recursos y la ventana de gráficos; las dos se usan para definir las características de los recursos.
Tabla de edición de recursos. (Seleccione una de sus columnas para ver la descripción.)
135
Dts.… Dos tipos de detenciones están disponibles para los recursos: Clock y Usage. Con características muy similares a los ya explicados para las locaciones. Stats.… Las estadísticas deseadas. Las cuales pueden ser: 1. None No se recogen estadísticas. 2. Basic Promedio de utilización y tiempos de actividad. 3. By Unit Se recogen estadísticas para cada unidad de recurso. Specs.… Search.… Si se ha asignado una ruta, seleccione este campo para acceder a las tablas de edición de Work Search (búsqueda de trabajo) y Park Search (búsqueda de buffer de parada), usadas para definir trabajos y buffers de parada opcionales. Logic.… Si se ha asignado una ruta, seleccione este campo para definir cualquier lógica opcional para ser ejecutada cuando un recurso entra o deja un nodo particular de la ruta. Pts.… Si se ha asignado una ruta, seleccione este campo para definir puntos del recurso, que son puntos auxiliares donde muchos recursos pueden aparecer gráficamente cuando se estacionan o en uso en un nodo de multi capacidad. Notes.… Para colocar cualquier nota en este campo. Specifications Abre el cuadro de dialogo de especificaciones del recurso, que se muestra a continuación. (Seleccione un elemento de la figura para ver su descripción.)
136
Path Network. Se selecciona la ruta por la cual el recurso viajará. Home. El nodo desde el cual el recurso comenzara en la simulación. Return Home if Idle. Al comprobar esta casilla el recurso vuelve al nodo HOME si esta desocupado. Off Shift. Si a un recurso se le ha asignado una ruta y un turno, este es el nodo al cual el recurso va cuando esta fuera del turno. Break. Este es nodo al cual el recurso viaja cuando tiene un descanso. Resource Search. Cuando una entidad que necesita un recurso debe seleccionarlo entre varias unidades de recursos disponibles, debe especificarse una de las siguientes reglas (esto solo se aplica para recursos multi-unidad): 1. Closest Resource Recurso más cercano 2. Least Utilized Resource Recurso menos utilizado
137
3. Longest Idle Resource Recurso que ha estado mas tiempo desocupado. Entity Search. Cuando dos o mas entidades con la misma prioridad requieren un recurso al mismo tiempo, el recurso seguirá una de estas reglas: 1. Longest waiting entity (with highest priority) Entidad que ha esperado más (con la mas alta prioridad) 2. Closest Entity (with highest priority) Entidad más cercana (con la más alta prioridad) 3. Entity with the minimum value of a specified attribute Entidad con el mínimo valor de un atributo especificado 4. Entity with the maximum value of a specified attribute Entidad con el máximo valor de un atributo especificado Motion. Si una ruta ha sido asignada al recurso, en estas casillas se especifica el movimiento. 1. Speed traveling empty/full Velocidad de viaje vacio/ocupado 2. Acceleration rate. Aceleración 3. Deceleration rate. Desaceleración 4. Pikup time. Tiempo para recoger 5. Deposit time. Tiempo para depositar Proceso. .El menú de proceso define las rutas y las operaciones que se llevaran a cabo en las locaciones para las entidades en su viaje por el sistema. También puede decirse que generalmente se conocen o hacen parte de la información recolectada del sistema, los diagramas de proceso o operación, estos se transcribirán al computador para formar el proceso. Antes de crear el proceso es necesario definir las entidades, locaciones, recursos y
138
path networks. Para acceder al menú de edición de proceso, en el menú Build, seleccione Processing; ó Ctrl+P.
Editor de Proceso. El editor de proceso consta de cuatro ventanas que se despliegan simultáneamente. (Seleccione una tabla o ventana para ver su descripción.)
139
Tools. Ventana que aparece abajo y la izquierda, es usada para definir gráficamente operaciones y rutas.
Process. Tabla de edición que está en la parte superior izquierda del editor de proceso y en ella aparecen todas las operaciones realizadas en todas las locaciones a las entidades. En ella se definen las condiciones de entrada al proceso.
Se usa para crear operaciones lógicas para cada tipo de entidad y cada locación en el sistema. Entity. Tipo de entidad para las cuales el proceso es definido. seleccione el botón de encabezado para abrir un cuadro con un listado de entidades. (Cuadro de selección de entidades.)
140
Location.… La locación en donde el proceso ocurre. Seleccione el botón de encabezado para abrir un cuadro con una lista de locaciones. (Cuadro de selección de locaciones.)
Operation.… Seleccione el botón de encabezado y se despliega un cuadro para crear o editar la operación. La operación lógica es opcional, pero típicamente contiene como mínimo el estamento WAIT para asignar una cantidad de tiempo que la entidad deberá esperar en la locación. Otras operaciones comunes pueden ser, unir o agrupar entidades, realizar operaciones con variables, asignar tiempos, desplegar mensajes en pantalla. (Ventana de edición de operación.)
141
Routing.Aparece en la parte superior derecha del editor de proceso y en ella se define el destino de las entidades que han terminado su operación en una locación; ó en ella se define la salida del proceso.
Define las salidas de cada proceso asignado en la tabla de edición de proceso. Blk. Contiene el numero del actual bloque de asignación de rutas. Output… Si una ruta es definida, debe entrarse el nombre de la entidad resultante de la operación. Seleccione el botón de encabezado para abrir el cuadro con un listado de entidades, que es idéntico al que se despliega en la tabla de edición de proceso. Destination. Se define la locación a la cual las entidades se dirigen después de terminada la operación. Seleccione el botón de encabezado para abrir un cuadro con un listado de locaciones que es idéntico al mostrado en la tabla de edición de proceso. Rule. En este campo de define la regla para seleccionar la ruta de destino. Move logic. Se define el método de movimiento hacia la próxima locación con estamentos lógicos, seleccione el botón de encabezado para abrir un cuadro de creación lógica como el mostrado en operación de la tabla de edición de proceso.
142
Arribos. Al transcurrir la simulación nuevas entidades entran al sistema, esto es un arribo. Un arribo puede consistir en personas, materia prima, información, los sistemas necesitan una entrada para activar el funcionamiento de los procesos al interior de ellos. Para acceder al editor de arribos, en el menú Build, seleccione Arrivals; ó Ctrl+A.
El editor de arribos consta de tres ventanas que aparecen la pantalla juntas, la tabla de edición, la ventana de herramientas y ventana de layout ó esquema.
A continuación se explican las columnas que conforman la tabla de edición de arribos. Entity.…Entidad que arriba. Location.…Locación donde la entidad arriba. Qty each.…Numero de entidades que arriban por cada intervalo de arribo. First Time. El tiempo de el primer arribo. Dejado en blanco se tomara el tiempo consignado en el campo de Frequency.
143
Occurrences. El numero de arribos o ocurrencias de paquetes de entidades que se simularan, con la expresión INF se realizaran infinitos arribos en la simulación por lo cual el fin de esta será especificado por otros parámetros. Frequency. Tiempo entre arribos. Logic. Define cualquier lógica opcional de arribos, consiste de uno o más estamentos lógicos, para ser ejecutados por las entidades en sus arribos.
7.5. PROBLEMAS RESUELTOS POR MEDIO DE PROMODEL 1.- A un operario de limpieza le entregan cada hora 60 piezas simultáneamente. El tiempo de limpieza es de 50 segundos/pieza. Simule el proceso anterior durante 500 horas para determinar: a) la utilización del operario. b) Tiempo promedio de permanencia de las piezas en todo el proceso. c) Tiempo promedio de espera de las piezas antes de ser limpiadas.
Piezas 60 por
50 seg / pza. Exit Limpiadora
e (60) seg
Simular 500 hrs.
PROGRAMACION PROMODEL FILE: Name: Time: Distance: LOCATION: Name Pallet Limpiadora
Proceso de limpieza Segundos Metros
Capacity infinita 1
Units Pieza Pieza
144
Rule FIFO FIFO
ENTITIES: Name Pieza
Speed 50 m
ARRIVALS: Entity Pieza
Location Pallet
PROCESSING: Entity Location Pieza Pallet Pieza Limpiadora
Status Time series
Qty. Each 1
Operation -------Wait e (50) seg
Notes
First time 0
Output Pieza Pieza
Destiny Limpiadora Exit
Frecuency e (60) seg
Rule FIFO
2.- A un centro de copiado llegan tres tipos de trabajos. Si un trabajo no puede ser iniciado inmediatamente, espera en una fila común hasta que esté disponible alguna de las tres copiadoras. El tiempo de copiado y la tasa de entrada de los trabajadores son como sigue: Tipo de Trabajo 1 2 3
Tasa de entrada (trabajos / h) 4 8 16
Tiempo de copiado (min / trabajo) 12 15 1
Después del proceso de copiado los trabajos son inspeccionados por un empleado en un tiempo de 3, 6,10 minutos para los trabajos 1,2 y 3, respectivamente. Simule el sistema en ProModel durante 50 horas, y determine: a) la utilización del empleado y de las copiadoras en la situación propuesta. b) Número de empleados y copiadoras mínimos necesarios para asegurar el flujo constante de los trabajos.
TRABAJOS
T1
T2
4 Trabajos / h = 1 Trabajo / 15 min
INSPECCIONES
12 min / trabajo
C1
I1
I2
C2 145
3 min
6 min
15 min / trabajo
8 Trabajos / h = 1 Trabajo / 7.5 min
T3
1 min / trabajo
C3
16 Trabajos / h = 1 Trabajo / 3.75 min
I3
10 min
PROGRAMACION PROMODEL FILE: Name: Time: Distance: LOCATION: Name Pallet 1 Pallet 2 Pallet 3 Copiadora 1 Copiadora 2 Copiadora 3 Insp. ENTITIES: Name Trabajo 1 Trabajo 2 Trabajo 3 ARRIVALS: Entity Trabajo 1 Trabajo 2 Trabajo 3
Proceso de copiado Minutos Metros
Capacity 4 8 16 1 1 1 1
Units Trabajos Trabajos Trabajos Trabajos Trabajos Trabajos Trabajos
Speed 50 m 50 m 50 m
Location Pallet 1 Pallet 2 Pallet 3
PROCESSING: Entity Location Trabajo 1 Pallet 1 Trabajo 1 Copiadora 1 Trabajo 1 Insp. T1 Trabajo 2 Pallet 2 Trabajo 2 Copiadora 2 Trabajo 2 Insp. T2 Trabajo 3 Pallet 3 Trabajo 3 Copiadora 3 Trabajo 3 Insp. T3
Status Time series Time series Time series
Qty. Each 1 1 1
Operation ---------Wait e(12)min Wait e(3)min ---------Wait e(15)min Wait e(6)min ---------Wait e(1)min Wait e(10)min
Output Trabajo 1 Trabajo 1 Trabajo 1 Trabajo 2 Trabajo 2 Trabajo 2 Trabajo 3 Trabajo 3 Trabajo 3
146
Rule FIFO FIFO FIFO FIFO FIFO FIFO FIFO Notes
First time 0 0 0
Destiny Copiadora 1 Insp. T1 Exit Copiadora 2 Insp. T2 Exit Copiadora 3 Insp. T3 exit
Frecuency e(15)min e(7.5)min e(3.75)min
Rule FIFO FIFO FIFO FIFO FIFO FIFO
3.- A un cajero automático llegan clientes cada 10 minutos con distribución exponencial. El tiempo que tarda cada cliente en hacer sus movimientos bancarios se distribuye exponencialmente con media de 4 minutos. Lleve a cabo lo que se indica a continuación: a) si se desea que el cajero no tenga más de 5 clientes haciendo fila en un momento determinado, ¿qué recomendación haría al banco, basándose en una simulación de una semana de 40 horas de trabajo? b) Realice un análisis de sensibilidad variando el tiempo promedio de servicio del cajero, y determine cual es el tiempo máximo que un cliente debe tardar para que la fila de espera no exceda 5 clientes en ningún momento. c) Programe un gráfico dinámico que muestre la utilización del cajero automático durante la simulación. ¿Qué observaciones puede hacer respecto de la gráfica de estabilización generada?
Llegada de Clientes e (10) min
Movimientos de e (4) min PROGRAMACION PROMODEL FILE: Name: Time: Distance: LOCATION: Name Pallet Cajero
Movimientos bancarios Minutos Metros
Capacity Infinita 1
Units Clientes clientes
ENTITIES:
147
Rule FIFO FIFO
Name Clientes
ARRIVALS: Entity Clientes
Speed 50 m
Location Pallet
PROCESSING: Entity Location Clientes Pallet clientes Cajero
Status Time series
Qty. Each 1
Operation Wait e(4)min
Notes
First time 0
Output Clientes Clientes
Destiny Cajero exit
Frecuency e(10)min
Rule FIFO FIFO
4.-A un sistema arriban 2 tipos de piezas. La primera es un engrane que llega a una estación de rectificado donde se procesa por 3±1 minutos; la distribución de probabilidad asociada a las llegadas de este engrane a la fila de la rectificadora e suna distribución normal con tiempo promedio de 13 minutos y desviación estándar de 2 minutos. La segunda pieza es una placa de metal que llega a una prensa con una distribución de probabilidad exponencial con media de 12 minutos. La prensa procesa una placa cada 3 minutos con distribución exponencial Al terminar sus procesos iniciales, cada una de estas piezas pasa a un proceso automático de lavado que permite limpiar 2 piezas a la vez de manera independiente; este proceso, con distribución constante, tarda 10 minutos. Finalmente, las piezas son empacadas en una estación que cuenta con 2 operadores, cada uno de los cuales empaca un engrane en 5±1 minuto y una placa en 7±2 minutos. Se sabe que los tiempos de transporte entre as estaciones es de 3 minutos con distribución exponencial. No hay almacenes entre cada proceso: sólo se tiene espacio para 30 piezas antes de la prensa y 30 antes de la rectificadora. Asuma que cada día de trabajo es de 8 horas. Simule este sistema por 40 días, indicando el momento en que se inicia y se termina la simulación. a) Elabore el esquema del sistema a modelar b) Complete los formatos para la programación LOCATION Name Pallet 1 Pallet 2 Rectificadora
CAP 30 30
Units 30 30
I
Stats I Time series I Time series
1
1 series
148
Rule FIFO, OLDEST FIFO, OLDEST I Time
FIFO, OLDEST
Prensa
1
Lavadora
2
1
I Time
FIFO, OLDEST
1
I Time
FIFO, OLDEST
1
I Time
FIFO, OLDEST
series series Empacadora
2 series
ENTITIES Name Engrane Placa ARRIVALS Entity Engrane Placa
Speed 50 mts. 50 mts.
Stats Time series Time series
Location Pallet 1 Pallet 2
PROCESSING Entity Location Engrane Pallet 1 Engrane Rectificadora Engrane Lavadora Engrane Empacadora Placa Pallet 2 Placa Prensa Placa Lavadora Placa Empacadora
Qty. Each 1 1
Operation U(3,1) min U(10,0) min U(5,1) min E(3) min U(10,0) min U(7,2) min
Output Engrane Engrane Engrane Engrane Placa Placa Placa Placa
Cost
First time 0 0
Frecuency N(13,2) min E(12) min
Destination Rectificadora Lavadora Empacadora Exit Prensa Lavadora Empacadora Exit
Rule Oldest Oldest Oldest Oldest Oldest Oldest Oldest
Simule 480 min No veces 40 7.6. PROBLEMAS PARA RESOLVER 1.- Simulación por medio del Promodel A un sistema arriban 2 tipos de piezas. La primera es un engrane que llega a una estación de rectificado donde se procesa por 3±1 minutos uniformemente; la distribución de probabilidad asociada a las llegadas de este engrane a la fila de la rectificadora es una distribución normal con tiempo promedio de 13 minutos y desviación estándar de 2 minutos. La segunda pieza es una placa de metal que llega a una prensa con una distribución de probabilidad exponencial con media de 12 minutos. La prensa procesa una placa cada 3 minutos con distribución exponencial Al terminar sus procesos iniciales, cada una de estas piezas pasa a un proceso automático de lavado que permite limpiar 2 piezas a la vez de manera independiente; este proceso, con distribución uniforme, tarda de 10-12 minutos. Finalmente, las piezas son empacadas en una estación que cuenta con 2 operadores, cada uno de los cuales empaca con distribución normal un engrane en 5±1 minuto y una placa en 7±2 minutos. . No hay almacenes entre cada proceso: sólo se tiene espacio para 30 piezas antes de la prensa y 30 antes de la
149
rectificadora. Asuma que cada día de trabajo es de 8 horas. Simule este sistema por 40 días, indicando el momento en que se inicia y se termina la simulación. Nota: Considere 2 rutas y dos operadores con movimiento exponencial de 3 minutos c) Elabore el esquema del sistema a modelar d) Llene las hojas de programación
150
UNIVERSIDAD DEL NORTE MATERIA: Maestro: Alumno:_______________________________________________ No de Control__________________ PROGRAMACION PROMODEL 1.-FILE: Name: Time: Distance: 2.-LOCATION: Name
Capacity
Units
Stats
3.-ENTITIES: Name
Speed
Status
Cost
4.-ARRIVALS: Entity Location
Qty. Each
First time
5.-PROCESSING: Entity Location Operation
Ocurrence
Output
151
Rule
Destiny
Frecuency
Rule
Move Logic
6.-PATH NETWORK: Name Type
From
T/S
PATHS To
7.-RESOURCES: Name Unit
Dts
Bx
Paths
Interfaces
Distance
Stats
Specs
8.-SIMULATION OPTION Run time _____________________ Number of Replications___________
152
Mapping
Node
Search
Nodes
INTERFACES Location
Logic
2.-Desarrolle un programa en PROMODEL (Llene las hojas de programación) Considere 2 rutas y 2 operadores con movimiento exponencial el primero de 2 minutos y el segundo de 4 minutos
DIAGRAMA
153
e(4)
UNIVERSIDAD DEL NORTE MATERIA: Maestro: Alumno:_______________________________________________ No de Control__________________ PROGRAMACION PROMODEL 1.-FILE: Name: Time: Distance: 2.-LOCATION: Name
Capacity
Units
Stats
3.-ENTITIES: Name
Speed
Status
Cost
4.-ARRIVALS: Entity Location
Qty. Each
First time
154
Ocurrence
Rule
Frecuency
5.-PROCESSING: Entity Location Operation
Output
155
Destiny
Rule
Move Logic
6.-PATH NETWORK: Name Type
From
T/S
PATHS To
7.-RESOURCES: Name Unit
Dts
Bx
Paths
Interfaces
Distance
Stats
Specs
8.-SIMULATION OPTION Run time _____________________ Number of Replications___________
156
Mapping
Node
Search
Nodes
INTERFACES Location
Logic
Problema 3
En el Torno 1 y Torno 2 (Operación) Se utiliza el OPERARIO_1 para hacer el trabajo de torneado, por un tiempo que se ajusta a una distribución Normal con media 2 y desviación estándar 0.1 minutos para el Torno1 y de 3 min. Con desviación estándar de .5 para el Torno 2. El mismo operario una vez terminado el proceso se encarga de desplazar la pieza a el Desengrasador en forma exponencial de 2 min., todos los movimientos de este operador son e (2) min. En el Desengrasador (Operación) Las piezas durante el proceso de desengrasado demoran un tiempo normalmente distribuido con media 2 y desviación estándar 0.5 min. En el Desplazamiento del Desengrasador a la Inspección. Las piezas son llevadas por el OPERARIO_2 (Todos los movimientos lógicos del OPERADOR-2 son exponencial de 4 minutos En la Inspección (Operación) Las piezas son inspeccionadas utilizando el OPERARIO_2 por un tiempo normalmente distribuido con media 3 y desviación estándar 0.4 minutos. Luego hay un proceso de ensamble (estación cola de ensamble) para lo cual se requiere que esté presente el OPERARIO-2 por un tiempo normalmente distribuido con media 5 y desviación estándar 1 minuto. Finalmente las piezas ensambladas salen del sistema. -Existe una Red llamada “RED_1” y dos recursos llamados “Operario_1” y “Operario_2”. Las piezas llegan a una estación de recepción con capacidad de 40 piezas y en forma N(3,1)MIN y son barras de acero para Fabricar flechas en el Torno 1 y también llegan barras de bronce para fabricar bujes en el Torno 2 la probabilidad de llegada es exponencial de 3 min. -Desarrolle un programa para una corrida de 6 turnos de 8 horas cada turno
157
UNIVERSIDAD DEL NORTE MATERIA: Maestro: Alumno:_______________________________________________ No de Control__________________ PROGRAMACION PROMODEL 1.-FILE: Name: Time: Distance: 2.-LOCATION: Name
Capacity
Units
Stats
3.-ENTITIES: Name
Speed
Status
Cost
4.-ARRIVALS: Entity Location
Qty. Each
First time
5.-PROCESSING: Entity Location Operation
Ocurrence
Output
158
Rule
Destiny
Frecuency
Rule
Move Logic
6.-PATH NETWORK: Name Type
From
T/S
PATHS To
7.-RESOURCES: Name Unit
Dts
Bx
Paths
Interfaces
Distance
Stats
Specs
8.-SIMULATION OPTION Run time _____________________ Number of Replications___________
159
Mapping
Node
Search
Nodes
INTERFACES Location
Logic
4.-Desarrolle un programa en PROMODEL (Llene las hojas de programación) Considere 2 rutas y 2 operadores con movimiento exponencial el primero de 2 minutos y el segundo de 4 minutos
D IA G R A M A
160
UNIVERSIDAD DEL NORTE MATERIA: Maestro: Alumno:_______________________________________________ No de Control__________________ PROGRAMACION PROMODEL 1.-FILE: Name: Time: Distance: 2.-LOCATION: Name
Capacity
Units
Stats
3.-ENTITIES: Name
Speed
Status
Cost
4.-ARRIVALS: Entity Location
Qty. Each
First time
Rule
Ocurrence
Frecuency
5.-PROCESSING: Entity
Location
Operation
Output
161
Destiny
Rule
Move Logic
162
6.-PATH NETWORK: Name Type
From
T/S
PATHS To
7.-RESOURCES: Name Unit
Dts
Bx
Paths
Interfaces
Distance
Stats
Specs
8.-SIMULATION OPTION Run time _____________________ Number of Replications___________
163
Mapping
Node
Search
Nodes
INTERFACES Location
Logic
5.-Simule con PROMODEL
En el Torno 1 y Torno 2 (Operación) Se utiliza el OPERARIO_1 para hacer el trabajo de torneado, por un tiempo que se ajusta a una distribución Normal con media 2 y desviación estándar 0.1 minutos para el Torno1 y de 3 min. Con desviación estándar de .5 para el Torno 2. El mismo operario una vez terminado el proceso se encarga de desplazar la pieza a el Desengrasador en forma exponencial de 2 min., todos los movimientos de este operador son e (2) min. En el Desengrasador (Operación) Las piezas durante el proceso de desengrasado demoran un tiempo normalmente distribuido con media 2 y desviación estándar 0.5 min. En el Desplazamiento del Desengrasador a la Inspección. Las piezas son llevadas por el OPERARIO_2 (Todos los movimientos lógicos del OPERADOR-2 son exponencial de 4 minutos En la Inspección (Operación) Las piezas son inspeccionadas utilizando el OPERARIO_2 por un tiempo normalmente distribuido con media 3 y desviación estándar 0.4 minutos. Luego hay un proceso de ensamble (estación cola de ensamble) para lo cual se requiere que esté presente el OPERARIO-2 por un tiempo normalmente distribuido con media 5 y desviación estándar 1 minuto. Finalmente las piezas ensambladas salen del sistema. -Existe una Red llamada “RED_1” y dos recursos llamados “Operario_1” y “Operario_2”. Las piezas llegan a una estación de recepción con capacidad de 40 piezas y en forma N(3,1)MIN y son barras de acero para Fabricar flechas en el Torno 1 y también llegan barras de bronce para fabricar bujes en el Torno 2 la probabilidad de llegada es exponencial de 3 min. -Desarrolle un programa para una corrida de 6 turnos de 8 horas cada turno
164
UNIVERSIDAD DEL NORTE MATERIA: Maestro: Alumno:_______________________________________________ No de Control__________________ PROGRAMACION PROMODEL 1.-FILE: Name: Time: Distance: 2.-LOCATION: Name
Capacity
Units
Stats
3.-ENTITIES: Name
Speed
Status
Cost
4.-ARRIVALS: Entity Location
Qty. Each
First time
Rule
Ocurrence
Frecuency
5.-PROCESSING: Entity
Location
Operation
Output
165
Destiny
Rule
Move Logic
166
6.-PATH NETWORK: Name Type
From
T/S
PATHS To
7.-RESOURCES: Name Unit
Dts
Bx
Paths
Interfaces
Distance
Stats
Specs
8.-SIMULATION OPTION Run time _____________________ Number of Replications___________
167
Mapping
Node
Search
Nodes
INTERFACES Location
Logic