Sei sulla pagina 1di 370

INGENIERÍA DE PROCESOS INVESTIGACIÓN

OPERATIVA

OPTIMIZA 10
INVESTIGACIÓN OPERATIVA
INGENIERÍA DE PROCESOS
Ing. Alejandro Roberti

2013
Optimiza10

Investigación Operativa
Ingeniería de Procesos

Ing. Alejandro Roberti


Departamento de Tecnología
Universidad Nacional de Luján
2013
Colaboración de Ings. Gustavo Chijani y Verónica Esain

1
“Los que mandan generalmente mueven las manos y dicen ‘He
considerado todas las alternativas’. Pero eso es casi siempre basura.
Lo más probable es que no pudiesen estudiar todas las
combinaciones”.

George B. Dantzig, en una entrevista publicada en The College


Mathematical Journal, marzo de 1986.

Considere el problema de asignar 70 hombres a 70 empleos. Una “actividad” consiste en asignar el i-ésimo hombre al j-ésimo empleo. Las restricciones son
dos: en primer lugar hay 70 hombres, cada uno de los cuales debe asignarse a un puesto, y en segundo lugar, cada uno de los 70 puestos existentes debe
estar ocupado. El nivel de una actividad puede ser 1, lo cual indica que está siendo usada, o 0, lo cual significa que no. En consecuencia hay 2 x 70 = 140
restricciones y 70 x 70 = 4900 actividades con 4900 variables correspondientes de decisión uno-cero. Por desgracia también hay factorial de 70
permutaciones o formas de hacer las asignaciones. El problema consiste en comparar este factorial de 70 formas y elegir la qu e sea óptima o “mejor” según
algún criterio previamente establecido.

En el ejemplo anterior, factorial de 70 es un número muy grande. A fin de tener una idea de que tan grande es, supóngase que se hubiese
tenido una computadora IBM del tipo main-frame en el instante en que ocurrió el Big-Bang hace quince millones de años. ¿Habría podido, entre ese entonces
y ahora, examinar todas las soluciones posibles? ¡No! No obstante, supóngase que se hubiese tenido una computadora aún más poderosa, una que pudiese
examinar mil millones de asignaciones por segundo. La respuesta seguiría siendo negativa. Aún si la tierra se llenase con computadoras cuyas rapideces
fueran de nanosegundos, todas ellas trabajando en paralelo, la respuesta aun sería no. Sin embargo, si existiesen diez tierras, todas ellas con computadoras
del tipo mencionado, todas programadas en paralelo desde el instante del Big-Bang hasta que el sol fuese una esfera fría, entonces quizá la respuesta podría
ser sí. Lo notable es que el método Simplex, con la ayuda de una computadora moderna, puede resolver este problema en una fracción de segundo.

Cuando el problema de la planeación (SIC) fue formulado inicialmente para la Fuerza Aérea, no existía la noción exacta de una función
objetivo, la idea de una meta claramente definida. Por supuesto, teníamos sólo un falso respeto hacia el concepto de objetivo. En el discurso de los
militares escuché a menudo decir, “nuestro objetivo es ganar la guerra”. En el mundo de los negocios se escucharía quizás “nu estro objetivo es obtener
ganancias”. Sin embargo era imposible hallar alguna relación directa entre la meta establecida y las acciones emprendidas para tal fin.

Si se estudiaba con cuidado el paso siguiente, se podía ver que algún líder había promulgado un montón de reglas básicas que, en su concepto,
llevarían a la meta. Esto distaba mucho de lo que sería honestamente estudiar todas las combinaciones alternativas de las acciones a seguir para elegir la
mejor combinación. Los que mandan generalmente mueven las manos y dicen “He considerado todas las alternativas”. Pero eso es casi siempre basura. Lo
más probable es que no pudiesen estudiar todas las combinaciones. Antes de 1947 era inconcebible pensar en la existencia de u na herramienta como la
programación lineal que permitiese examinar millones de combinaciones. No había algoritmo ni herramienta computacional que pudiera hacer eso.

No descubrí el modelo de la programación lineal en un instante, sino que tuvo un proceso de evolución. Se dedicó casi un año completo a la
tarea de decidir si mi modelo podría ser utilizado en la formulación de problemas prácticos de distribución de tiempos. Como Ud. sabe, la planeación y la
distribución de tiempos se llevaron a una escala inmensa durante la guerra. El funcionamiento de la Fuerza Aére a fue equivalente al funcionamiento de la
economía de toda una nación. En el proceso intervinieron cientos de miles de personas. La logística tuvo una magnitud difícil de entender para alguien que
no haya estado allí. Mi colega Marshall Wood y yo revisamos miles de situaciones tomadas de nuestra experiencia durante la guerra.

Las reglas básicas empleadas en la planeación se expresaban en un formato completamente distinto del que se emplea en la actu alidad para
formular un programa lineal. Lo que hicimos fue revisar estas reglas una por una y demostrar que casi todas ellas podían reformularse aceptablemente en un
formato de programación lineal. Pero no todas. En algunos casos era necesario tomar en cuenta el carácter discreto de las variables y las no convexidades.

Cuando formulé por primera vez mi modelo de programación lineal, lo hice sin una función objetivo. Estuve luchando por algún tiempo con la
adición de reglas básicas para elegir de entre las soluciones factibles la que en algún sentido fuese “óptima”. Pero pronto abandoné esta idea y la sustituí
por la de una función objetivo a ser maximizada. El modelo que formulé no estaba hecho específicamente para fines militares. Podía aplicarse a toda clase
de problemas de planeación; todo lo que tenía que hacerse era cambiar los nombres de las columnas y los renglones, y entonces era aplicable a un problema
de planeación económica lo mismo que a un problema de planeación industrial.

George Dantzig, circa 1987.

Equipo docente que colaboró en la redacción de este trabajo: Ing. Gustavo Chijani.
Ing. Verónica Esain.

2
primera parte
CONTENIDOS:

PRIMERA PARTE
INTRODUCCIÓN: INVESTIGACIÓN OPERATIVA
CAPITULO 1 SISTEMAS, MODELOS Y PROBLEMAS
CAPÍTULO 2 PROGRAMACIÓN LINEAL. MODELO
CAPÍTULO 3 PROGRAMACIÓN LINEAL. SIMPLEX DANTZIG
CAPÍTULO 4 PROGRAMACIÓN LINEAL. RESOLUCIÓN EN COMPUTADORA
CAPÍTULO 5 PROGRAMACIÓN LINEAL ENTERA. TRANSPORTE
CAPÍTULO 6 PROGRAMACIÓN LINEAL BINARIA
CAPÍTULO 7 PROGRAMACIÓN LINEAL EN REDES. MODELOS DE TRASBORDO Y FLUJO
CAPÍTULO 8 REDES CON SECUENCIAS ESTABLECIDAS. VIAJANTE DE COMERCIO
CAPÍTULO 9 TOMA DE DECISIONES
CAPÍTULO 10 INVESTIGACIÓN DE MERCADO Y TOMA DE DECISIONES MULTINIVEL
CAPÍTULO 11 TEORÍA DE JUEGOS
CAPÍTULO 12 TEORÍA DE JUEGOS. JUEGOS NO COOPERATIVOS
CAPÍTULO 13 MODELOS DE INVENTARIO
CAPÍTULO 14 TÉCNICAS DE ADMINISTRACIÓN DE PROYECTOS
CAPÍTULO 15 UTILIZACIÓN DE SOFTWARE EN ADMINISTRACIÓN DE PROYECTOS
CAPÍTULO 16 MODELOS DE COLAS
CAPÍTULO 17 SIMULACIÓN
CAPÍTULO 18 ESTUDIOS DE CASOS DE SIMULACIÓN
ANEXOS
INDICE

SEGUNDA PARTE:
CAPÍTULO 19 DISEÑO DE EXPERIMENTOS
CAPÍTULO 20 TEORÍA GENERAL DE SISTEMAS
CAPÍTULO 21 GENERACIÓN DE NÚMEROS ALEATORIOS
CAPÍTULO 22 MÉTODO DE MONTECARLO
CAPÍTULO 23 SIMULADORES
CAPÍTULO 24 PREDICCIÓN. MODELOS
CAPÍTULO 25 PREDICCIÓN. ANÁLISIS DE MARKOV
CAPÍTULO 26 PROGRAMACIÓN MULTIOBJETIVO Y POR METAS

TERCERA PARTE:
CAPÍTULO 27 FUNDAMENTOS DE INFORMÁTICA.
CAPÍTULO 28 CPU
CAPÍTULO 29 SISTEMAS OPERATIVOS
CAPÍTULO 30 PLC. PROGRAMACIÓN Y SIMULACIÓN
CAPÍTULO 31 SOFTWARE PARA INGENIERÍA.

OPTIMIZA EDICION 10
LUJÁN - AGOSTO DE 2013.

3
4
Introducción: Investigación Operativa
Si bien desde hace varios siglos han existido estudios y avances
sobre temas tales como la toma de decisiones, optimización de
métodos y procesos y gerenciamiento de proyectos complejos, se
puede afirmar que el conjunto de técnicas que hoy llamamos
“Investigación Operativa” se origina poco antes de la Segunda
Guerra Mundial, en los Laboratorios Bell y en la Cadena de
Radiodifusión (Broadcasting) Columbia (CBS).

Alexander Graham Bell (1847-1922), inventor de origen inglés,


debe su fama al desarrollo comercial del teléfono y a sus estudios
para limitar los efectos de la sordera. Desarrolló, como es sabido,
el concepto de telefonía a partir de investigaciones sobre el
telégrafo, creando – en 1877 – la Compañía Bell, posteriormente
fundó dos revistas: National Geographic Society y Science,
participando también en inventos tales como el tren de aterrizaje
triciclo de los aviones, el alerón y el aliscafo.

Es, para este trabajo, de interés el desarrollo que a la


Investigación Operativa brindó un grupo de investigación de la empresa Bell que en la década de los
1930 abordó el estudio sistemático de redes complejas.

La Investigación Operativa cobra forma en la dimensión actual cuando la Fuerza Aérea Real Británica
(RAF) crea un equipo de Investigación de Operaciones ante la eminencia de ataques masivos alemanes
en esa Nación. En conjunto, el almirantazgo se propone aumentar la eficiencia en el hundimiento de los
submarinos que amenazaban con cortar la línea de suministros vitales para el país. El concepto
abordado era que para poder sincronizar y optimizar adecuadamente la defensa aérea y naval del
territorio se enfocaría el problema como un sistema en el que se requiere la opinión de varios
especialistas de diversas disciplinas y no solo de militares. En ese equipo participan observadores del
Ejército de Estados Unidos, que posteriormente siguieron desarrollando métodos que se emplearon en
operaciones varias, como misiones de bombardeo, el desembarco en Normandía, el ataque atómico a
Japón y los bombardeos a la llamada “zenda de Ho Chi Min” en la guerra de Viet-Nam (aunque en este
caso la malaria y la disentería fueron más eficaces).

Posteriormente a la guerra mundial, en el ámbito civil, tanto Bell Laboratories como CBS avanzan en
diseño de telefonía por relevadores y optimización de redes de radio – televisión, respectivamente. Más
adelante se comentará que tanto la Armada de Estados Unidos empleó por ese entonces, técnicas
novedosas en proyectos militares como la adopción de nuevas tecnologías en la firma de productos
químicos Dupont.

George Datzing1, académico del Instituto Tecnológico de Massachussets presentó a fines de los años 40
el algoritmo Simplex y la Fuerza Aérea de Estados Unidos publica en los años 60 la utilización de ese
método para optimizar las misiones de bombardeo masivo sobre la senda de Ho-Chi-Minh en la guerra de
Vietnam, única ruta de aprovisionamiento del Vietcong. Posteriormente, las Escuelas Superiores de
Guerra adoptan la investigación de Operaciones en sus cursos regulares y el análisis de sistemas de
armas.

1
George Dantzig (1914-2005), matemático estadounidense hijo de padre ruso y madre polaca. Es partícipe de una
anécdota que se ha convertido en leyenda urbana – y por tanto deformada – que se puede resumir como sigue: Tras
obtener la licenciatura en matemáticas por la Universidad de Maryland, Dantzig obtuvo un puesto de asistente en
Berkeley, y comenzó a realizar sus estudios de doctorado con Jerzy Neyman. Cierto día llegó tarde a clase, y vio como
el Prof. Neyman había escrito dos problemas en la pizarra. Se trataba de dos ejemplos famosos de problemas
estadísticos no resueltos aún, pero Dantzig creyó que eran tarea de clase. Intentó resolverlos en casa, y aunque según
sus propias palabras “parecían más difíciles de lo habitual”, finalmente completó la resolución y se las entregó a
Neyman unos días más tarde, disculpándose por el retraso. Seis semanas más tarde, Neyman fue a buscarlo muy
excitado. Había verificado sus soluciones, y comenzado a escribir el artículo científico en el que publicarían
inmediatamente una de ellas. La solución al otro problema fue publicada 11 años más tarde por otro
matemático, Abraham Wald, que al saber de la solución de Dantzig, lo incluyó como co-autor del artículo. (Fuente:
Wordpress.com, La Singularidad Desnuda)

5
En esta publicación se recopilan técnicas diversas, que constituyen lo que se denomina “Investigación
Operativa” que fueron empleadas por los economistas y administradores y luego por todas las ramas de
la ingeniería. Se aplica a diversas situaciones, por ejemplo:
a) Procesos de asignación de recursos. Caracterizados por el limitante de recursos disponibles, (materias
primas, inversión, horas-máquina, horas-hombre), y la asignación de estos recursos limitados de manera
más eficiente con el costo mínimo, mínimo tiempo, mínimo de desperdicios, trabajo más eficiente,...

b) Proceso de sustitución o reemplazo, que puede realizarse de manera preventiva o correctiva, ya sea
por vejez, desgaste, o por muerte súbita.

c) Procesos de Inventarios. Tienen como política resolver problemas de almacenes, relacionado con:
¿cuánto ha de ordenarse en cada ocasión?, y ¿cuándo debe ordenarse dicha cantidad?, en base a
minimizar el costo total. Se obtiene el modelo de eficacia que permita el equilibrio entre los costos y
los de deterioro de inventarios. Se determinan los costos de mantenimiento de inventario, costo de
ordenar, costo unitario de faltantes, costo unitario de llevar inventario, costo de oportunidad.

d) Procesos de líneas de espera, o Teoría de Colas. Su característica es el número de clientes que llega a
solicitar cierto servicio, en funciones de distribuciones probabilísticas tanto en tiempos de llegada del
cliente, como la del servicio de la línea de espera del centro del servicio. Ya que ambas distribuciones
son distintas, la cola se generará en función al tiempo promedio de llegada con el tiempo promedio de
servicio.

e) Proceso competitivo. Se utiliza la Teoría de Juegos, caracterizándose por la existencia de al menos


dos competidores con varias estrategias a seleccionar. El fin es determinar la selección siguiente en
base a probabilidades, teniendo en cuenta la primera selección de los competidores. Tomando en
cuenta si el juego, o competencia, es equilibrada; además de conocer el valor esperado del juego, ¿cuál
sería la decisión que optimiza el juego o competencia?
Aplicaciones de la Teoría de Juegos:
- Determinar las necesidades de mano de obra, previendo renuncias, accidentes, retiros,
defunciones.
- Poder conocer el monto de las cuentas por pagar o de difícil cobro.
- Conocer de manera confiable la lealtad de los clientes de la empresa frente a la aparición de
otra marca u otro producto.
- Medir la efectividad de las campañas publicitarias en comparación con las anteriores llevadas a
cabo.

f) Proceso combinado. Hace uso de más de uno de los procesos de la Investigación Operativa, ya que el
problema necesita de más de una herramienta para llegar a la solución integral del mismo. Puede
presentarse el caso de algún problema de Control de la Producción, hará uso de la Teoría de Inventarios,
con Líneas de espera. Lo usual debiera ser resolver uno a uno, siguiendo secuencias lógicas, y combinar
solo donde haya interrelaciones para obtener una solución óptima.

g) Simulación. Es el uso de la computadora para la resolución de problemas aplicando uno o más


procesos de IO, para dar una serie de alternativas , la computadora muestra los resultados (generados
por números aleatorios), que podrían haberse obtenido si se hubieran usado ciertas líneas de criterios de
decisión. Se utiliza para:
- Integración de los esfuerzos de mercadeo, combinación de productos, distribución,
sincronización de esfuerzos, simular mercados
- Analizar los lugares óptimos donde deban situarse los almacenes que permita minimizar los
costos de distribución.
- Evaluación de las alternativas de inversión más rentables de la empresa.
- Simular reglas de decisión de operaciones de fabricación, que lleven a la programación y el
control efectivo de la producción.
- Selección del plan óptimo de opciones de distribución del presupuesto .

Por ejemplo: una empresa con múltiples líneas de producción y posibilidad de obtener diversos
productos finales que busca maximizar sus ganancias o minimizar sus costos. Inversión de capital en
distintas posibilidades o fondos, de manera tal que el riesgo y la ganancia conjunta sea aceptable,
programas de inversión en mantenimiento preventivo que buscan bajar los costos operativos,
operaciones complejas como la construcción de una represa, formulación de productos optimizando las
disponibilidades de materias primas, etc.

La naturaleza brinda la información necesaria para resolver estos problemas. Si dicha información se
conoce con certeza, entonces el problema a resolver es determinístico, caso contrario – si la
información no se conoce o no se conoce con certeza – es estocástico. En el desarrollo del curso se
formulan propuestas para resolver ambos tipos de problemas.

6
Capítulo 1
Sistemas, Modelos y Problemas

1.1 Sistema
1.2 Modelos
1.2.1 Pasos para formular un modelo
1.2.2 Definición del Problema
1.3 Desarrollo de un modelo
1.3.1 Variables de decisión
1.3.2 Restricciones
1.3.3 Resolución del modelo
1.3.4 Comprobación de validez
1.4 Usos de los modelos
1.5 Técnicas para construir modelos
1.6 Problemas de redes
1.7 Problemas con variables binarias

7
1.1 Sistema

U
n sistema (del latín systema, proveniente del griego σύστημα) es un conjunto de funciones,
virtualmente referenciadas sobre ejes, bien sean estos reales o abstractos. También suele definirse
como un conjunto de elementos (u objetos) dinámicamente relacionados formando una actividad para
alcanzar un objetivo operando sobre datos, energía y/o materia para proveer información.

Un objeto es aquello que puede ser observado, estudiado y aprendido, en contraposición a la


representación abstracta de ese objeto que se crea en la mente a través del proceso de generalización

Los objetos presentan:


– Identidad o propiedad que permite a un objeto diferenciarse de otros
– Comportamiento relacionado con su funcionalidad y determina lo que puede realizar
o lo que puede responder ante estímulos enviados por otros objetos
– Estado o conjunto de los valores de sus atributos en un instante de tiempo dado.

 Cada objeto relacionado se denomina Componente.


 Se denomina límites a la definición del conjunto de componentes e interrelaciones.
Por ejemplo, puede definirse el sistema brazo-reloj pues hay relaciones entre los dos objetos. Sin
embargo puede haber relaciones con más objetos (los ojos del usuario que quiere consultar la hora,
la tetera de porcelana si al consultar la hora se corre el riesgo de golpearla, el planeta tierra por el
efecto que sobre su órbita puede causar el impacto de la tetera en el piso) Es evidente que el límite
puede colocarse en cualquier punto, y se lo hace en función de analizar solamente aquellas
relaciones (o interrelaciones) que interesan o que son significativas (Nota importante: casi siempre
es despreciable el efecto de consultar la hora sobre la estabilidad de la órbita terrestre)

 Obviamente, al colocarle al sistema límites arbitrarios aparecen las relaciones ínter y extra
sistémicas, que son aquellas que se manifiestan entre los objetos pertenecientes al sistema y entre
éste y el entorno, respectivamente.

Desde esta óptica, pueden describirse tipos de sistemas: los Sistemas abiertos son aquellos con
intercambios activos (materia, energía, información) con el entorno: si llega un estimulo del entorno se
produce la señal de salida correspondiente (respuesta) Los Sistemas cerrados son aquellos en que las
señales de estímulo y de respuesta entre el sistema y el entorno no existen o han sido suprimidas del
análisis. Pueden compartir energía con el medio, pero no materia. Los sistemas aislados son aquellos
que no pueden compartir ni materia, ni energía con el medio.

Son elementos constitutivos de los sistemas, o sea aquello que siempre debe encontrarse, los siguientes:
• Propósito u objetivo. Los elementos (u objetos) y las relaciones, definen una distribución que
trata siempre de alcanzar un objetivo.
• Globalismo o totalidad: un cambio en un objeto puede producir cambios en los otros. El efecto
final es un ajuste a todo el sistema. Es una relación Causa/efecto que deriva en dos
fenómenos:
– Entropía: tendencia de los sistemas a desgastarse, a desintegrarse, relajar los
estándares y aumentar la aleatoriedad. La entropía aumenta con el tiempo. Si
aumenta la información, disminuye la entropía, porque es la base de la configuración y
del orden.
– Homeostasia: equilibrio dinámico entre las partes del sistema. Los sistemas tienen
una tendencia a adaptarse con el fin de alcanzar un equilibrio interno frente a los
cambios externos del entorno.

La teoría general de sistemas2 establece 3 premisas


 Los sistemas existen dentro de sistemas: cada sistema existe dentro de otro más grande llamado
suprasistema.

 Los sistemas son abiertos: cada sistema que se examine, recibe y descarga algo en los otros
sistemas, generalmente en los contiguos. Los sistemas abiertos se caracterizan por un proceso de
cambio infinito con su entorno, que son los otros sistemas. Cuando el intercambio cesa, el sistema
se desintegra, esto es, pierde sus fuentes de energía.

 Las funciones de un sistema dependen de su estructura: para los sistemas biológicos y mecánicos
esta afirmación es intuitiva. Los tejidos musculares por ejemplo, se contraen porque están
constituidos por una estructura celular que permite contracciones.

2
Enunciada por Ludwin von Bertalaffy (entre 1945 y 1968) con el objeto de unir el metabolismo, crecimiento,
morfogénesis y fisiología en una sola teoría dinámica aplicada a sistemas estáticos abiertos.

8
En contraposición a la TGS se puede mencionar a la visión mecanicista, impulsada, fundamentalmente
por Descartes (1596 – 1650), cuya ontología (llamada Ontología Cartesiana) propone que el mundo y lo
que en él existe se comporta como una máquina en cuanto a las relaciones rígidas causa-efecto, y en
que lo real es físico. Esta visión – de enormes éxitos a partir de las investigaciones de, entre otros,
Newton – propone sistemas cerrados y estáticos con métodos cuantitativos y explicaciones matemáticas.

Los parámetros que caracterizan cada uno de los sistemas, son


• Entrada o insumo o impulso (input).
• Salida o producto o resultado (output)
• Procesamiento o procesador o transformador (throughput) (generalmente es una caja negra)
• Retroacción o retroalimentación o retroinformación (feedback)
• Ambiente: (puede ser un recurso para el sistema, también puede ser una amenaza).

1.2 Modelos
Mediante la utilización de modelos es posible representar un sistema, resaltando los elementos
componentes y las relaciones entre ellos, pero limitando la representación solo a aquellos componentes
o relaciones que interesan al observador o que éste considera relevantes.

Hay que tener en cuenta que un modelo es un sistema en sí mismo, y que generalmente se caracteriza
por poseer menos interrelaciones y elementos que el sistema que representa.

Existen varios tipos de modelos:


 el plano, o lay out, de una planta es un Modelo icónico3.

 Los modelos analógicos son aquellos que explican las relaciones mediante la aplicación de lo
conocido o con fenómenos comparables: el modelo de la resistencia eléctrica de Ohm se utiliza
para los fenómenos de transporte de energía térmica, los economistas hablan de flujo de
dinero, en analogía con un modelo hidráulico: taponamiento, drenaje de capitales, suba de
nivel de tasas, etc.

 Los modelos matemáticos, son capaces de presentar mediante números abstractos todo lo
ocurrido durante el mes en los ingresos y egresos de la siempre en cero cuenta de caja de
ahorro (por otra parte la terminología “caja de ahorro” es un modelo analógico en sí misma).

 Los modelos simbólicos representan ciertas relaciones sistémicas mediante símbolos, como el
que utilizan los químicos, que a un fenómeno tan complejo como la reacción de ionización de
la sal gema en agua lo representan con
ClNa + H2O  Cl- + Na+ + HO- + H+,
Este mismo texto es una colección de símbolos (letras) cada una de las cuales representa un
sonido y que es diferente según la cultura. Un fonema chino, por ejemplo, puede parecer un
dibujo para un occidental y viceversa
 Los modelos deterministas son aquellos en los cuales los componentes están relacionados entre
sí por funciones conocidas y perfectamente predecibles.

 Los modelos estacionarios son los que describen sistemas y sus comportamientos
independientemente de los fenómenos que ocurren en el inicio o en el fin de las relaciones (por
ejemplo, el modelo de universo heliocéntrico describe a la tierra girando alrededor del sol, sin
tener en cuenta el resto del universo ni lo que ocurrió cuando éste comenzó, su evolución –
cómo llegó el sol a ese estado – y su futuro)

 Por último se mencionan los modelos dinámicos, que son aquellos cuyo propio comportamiento
se modifica a medida que es utilizado como representación, ya que recibe y emite información
desde y al sistema que representa a fin de adaptarse a la realidad. Generalmente se van
resolviendo secuencialmente.

El uso de modelos simbólicos y matemáticos es el más difundido, pues se construyen con elementos
baratos y simples de adaptar.

3
La palabra “ícono” proviene del griego y significa imagen o representación.(εἰκών, eikon, "imagen") Las religiones,
en general, son proclives a utilizar íconos para representar ideas muy abstractas. Los sistemas operativos los utilizan
para representar comandos.

9
En cualquier caso, el modelo será una simplificación, por lo tanto contendrá solamente algunas
variables y jamás todas (si las tuviera sería la realidad y no un modelo). Decidir que variables se usan y
cuales se descartan implica el uso de hipótesis4 y de un modelo de control5.

1.2.1 Pasos para formular un modelo:

i) Estudiar el problema, identificar las variables de control y las no controlables. Identificar


los parámetros. Evitar los prejuicios.
ii) Tratar de expresar el problema matemáticamente. (Símbolos)
iii) Definir el campo de aplicación y tratar de aislarlo de las interacciones.
iv) Verificar si el problema tiene una solución y si el modelo puede usarse en otros problemas.
v) Probar la solución: verificar el grado de descripción de la realidad.
vi) Ajustar el modelo y volver a empezar.

1.2.2 Definición del Problema


Consiste en la identificación y la capacidad de describir con precisión el problema enfrentado. Implica
conocer el objetivo global, las limitaciones fundamentales y las limitaciones que es conveniente
introducir. Muchas veces no se tiene conocimiento de estos elementos, lo cual requiere de un profundo
análisis y – generalmente – negociaciones con los miembros del equipo de trabajo.

La definición del objetivo puede ser un punto de conflicto. En un mismo caso, se da la posibilidad de
encontrar más de un objetivo deseable y que éstos, por añadidura, sean antagónicos. Es difícil elegir
uno sobre otro: el objetivo de minimizar los costos de producción suele ser antagónico con el objetivo
de maximizar la calidad del producto terminado. ¿Cuál es el objetivo global? Si hay una decisión política
o empresarial sobre los costos de producción, entonces habrá que establecer una restricción de nivel de
calidad. Y en todo caso ¿cuáles serán las unidades de medida?

4
Una hipótesis puede caracterizarse como una solución provisional (tentativa) para un problema dado. El nivel de
verdad que se le asigne a tal hipótesis dependerá de la medida en que los datos empíricos recogidos apoyen lo
afirmado en la hipótesis. Esto es lo que se conoce como contraste o proceso de validación de la hipótesis. Este
proceso puede realizarse de uno de dos modos: mediante confirmación o mediante verificación.

5
Según Fayol, 1961, "el control consiste en asegurarse de que todo lo que ocurra esté de acuerdo con las reglas
establecidas y las instrucciones dadas". El Modelo de Control parte del estudio del entorno y el análisis de la
estructura. Tal análisis permite establecer las amenazas y oportunidades que ofrece el entorno y también las
debilidades y fortalezas. Luego, se está en condiciones de realizar un diagnóstico, de proponer soluciones, de
analizar y mejorar los sistemas funcionales, planteando la situación actual, el objetivo deseado y como llegar a él.
(Dianelys Nogueira Rivera – Universidad de Matanzas, Cuba.)

10
Como una guía aceptable, el proceso de definición del problema consiste en:
1) Establecer el objetivo
2) Conocer o adaptar la política empresarial
3) Buscar los consensos necesarios
4) Reconocer las limitaciones o recursos limitados para lograr el objetivo

1.3 Desarrollo de un modelo matemático y recolección de datos.


Se presenta un caso muy simplificado con la intención de introducir en forma sencilla a la metodología
para formular un modelo, tal como fue planteada precedentemente

El Departamento de beneficios de una empresa desea determinar del total de dinero disponible, que
fracción debe invertirse cuando dispone de dos alternativas: invertir en una empresa, mediante la
compra de acciones (A), o en el Estado mediante la compra de bonos (B).
Se dispone de la siguiente información:
a. La tasa anual de crecimiento promedio para las acciones es del 10%
b. La tasa anual de crecimiento para los bonos es del 6%
c. Ninguna de las dos alternativas puede tener más del 75% de la inversión total, por razones de
seguridad.
d. La cantidad invertida en acciones no debe exceder del doble que lo que se invierte en bonos, por
razones de control fiscal.

Se pide calcular
¿Cuántas posibilidades de inversión hay?
¿Cuál sería el modelo que permite tomar decisiones?
¿Cuál sería la mejor combinación de inversiones?

1.3.1 Variables de decisión y función objetivo


Para llevar este problema a una forma de modelo matemático se debe comenzar por definir que es
aquello sobre lo cual se puede decidir. En la terminología de la Investigación Operativa se emplea el
término:
IDENTIFICAR LAS VARIABLES DE DECISIÓN:
En este caso, las variables de decisión serán dos y a cada una de ellas se les asigna, un símbolo
arbitrario y – cuando corresponde – las unidades correspondientes:

A = fracción del capital a invertir en acciones,


B = fracción del capital a invertir en bonos6

El enunciado del problema obliga a encontrar valores para A y para B que constituyan una retribución
máxima anual y que, simultáneamente, cumplan con todos los requisitos del problema.

En la terminología de la IO: esos valores serán hallados para cumplir el objetivo: maximizar la
retribución anual esperada satisfaciendo las restricciones impuestas.

¿Cómo puede plantearse el problema en forma de modelo?

Se espera que cada peso invertido en acciones tenga un rendimiento de 10 centavos y de 6 centavos en
bonos. Si A es la fracción del capital a invertir en acciones, entonces la retribución anual de ese capital
será 0,10A. Por ello la expresión matemática que demuestra el objetivo de este modelo deberá tener en
cuenta la contribución de cada una de las posibilidades: 0,10 A y 0,06 B. Con estos elementos se podrá
expresar el objetivo global, que, en la terminología que estamos presentando, será la FUNCIÓN
OBJETIVO. Esta función se puede expresar así

Maximizar 0,10A + 0,06B

Como se puede ver, la función consta de dos partes:


a) la intención (maximizar) que se denomina criterio
b) la función operativa – que se denomina función objetivo – que tiene coeficientes asociados a
variables de decisión, lo cual muestra la manera o política empleada para lograr el objetivo y satisfacer
el criterio.

6
La necesidad de identificar a estas variables como de decisión o de control permite suponer desde ahora que puede
haber variables no controlables u otro tipo de variables, como se verá más adelante

11
1.3.2 Restricciones
Pero esto solo no alcanza para definir el problema como un modelo matemático: existen las limitaciones
o restricciones, las cuales deben ser escritas utilizando las mismas variables de decisión en forma
coherente y exhaustiva:

Primera restricción: Ninguna inversión puede superar el 75%, la cual se lleva al modelo así:

A  0,75
B  0,75

ambas desigualdades representan los límites superiores de inversión en acciones y bonos,


respectivamente.

b) La inversión en acciones no debe superar el doble de la inversión en bonos, lo que se representa así:
A  2B
o también así
A  2B  0

c) No pueden haber inversiones negativas, lo que representa el límite inferior de inversión en cada
alternativa (cero es no invertir)
A0
B0
d) La fracción de dinero a invertir debe ser coherente. Olvidarse de esta restricción podría ser un error
muy fácil de cometer, pero al resolver el modelo podría dar como resultado – por ejemplo – invertir el
75% del capital en A y el 75% en B, lo cual es incoherente:
A+B=1

El modelo, ahora completo, se escribe uniendo todas estas partes:

Z  0,10 A  0,06 B  Maximo


sujeto a :
A  0,75
B  0,75
A  2,00 B  0
A B 1
A 0
B0

En este caso existen: una función objetivo y restricciones escritas en función de variables de decisión
(cuánto se habrá de invertir en cada una) y de otras informaciones conocidas (datos): cuánto rinden
cada uno de los fondos y cuánto como máximo y como mínimo se permite invertir en cada uno de ellos:
estas son variables y/o parámetros sin control.

En la práctica es difícil encontrar un problema como éste. Generalmente hay que estimar los datos. Y el
modelo va a ser tan bueno como la estimación de los datos, nunca mejor.

1.3.3 Resolución del modelo matemático.


En este caso, resolver el modelo es hallar los valores para S y para B que hagan máxima la expresión de
la función objetivo y que, en forma simultánea, cumplan con todas y con cada una de las restricciones.
Para resolver estos modelos, es decir encontrar valores satisfactorios para las variables de decisión, hay
dos tipos de técnicas:

a) Optimización: se encuentran los mejores valores para las variables, que hagan máximo el
objetivo y satisfagan simultáneamente todas las limitaciones-
b) Heurísticas: Producen valores aceptables para la función objetivo y satisfacen las restricciones.

Una solución posible para este problema, (se verá más adelante como se encuentra) es:

A = 0,6667
B = 0,3333

12
Significado: por cada unidad monetaria invertida habrá una ganancia de 0,6667 x 0,10 + 0,3333 x 0,06 =
0,08667

1.3.4 Comprobación de la validez de la solución hallada.


Puede ocurrir que el modelo haya sido imperfectamente planteado, que no hayan sido previstas todas
las restricciones, o que se omitiera o simplificara algún parámetro importante, que los datos estuvieran
mal estimados o mal cargados. En todos los casos es conveniente comprobar si la solución hallada es
válida. Para ello existen varios métodos, aunque a veces basta con un análisis preliminar simple.

Si el modelo no funciona hay que revisarlo, incluir nuevas restricciones, eliminar restricciones o
replantear con más exactitud las limitaciones reales. A veces es necesario usar la experiencia para
adaptar las soluciones dadas por el modelo. Otras veces, aun estando todo bien y con resultados válidos,
las soluciones son impracticables. Es difícil, por ejemplo, incluir en un modelo datos que tienen que ver
con conductas. Otra fuente de disturbios son los datos que cambian con el transcurso del tiempo: las
acciones pueden caer en el futuro, no dejando de ser válido el dato de su evolución anterior.

1.4 Usos de los modelos


Los modelos ayudan a tomar dos tipos de decisiones:

a) Estratégicas: son decisiones de única vez, afectan intervalos de tiempo largos.

Son del tipo:


¿Se debe abrir una nueva línea de producción? ¿Debería hacer inventarios en período regular o solo
cuando caigan los niveles?
Este tipo de decisiones implican impactos grandes, por lo cual se justifica invertir esfuerzo y tiempo en
sus modelos y resoluciones.

b) Operacionales: afectan procesos en curso y períodos más cortos de tiempo.

Son del tipo:


¿Cómo reprogramar el trabajo de la semana cada semana?
Sobre los tres productos de la fábrica, en estas condiciones de mercado y con estos recursos de
materias primas, ¿cual es la producción a realizar este mes?
Estos modelos se usan repetidamente, por lo cual también se justifica invertir en ellos.
Las ventajas de los modelos, en general, son:
1. Lograr objetivos con recursos escasos
2. Evaluar el impacto y costo de un cambio sin necesidad de gastar en producirlo previamente.
3. Se puede evaluar la fortaleza de los resultados propuestos mediante el análisis de sensibilidad: ¿qué
sucedería si...?. Por ejemplo ¿qué pasaría si el fondo de acciones diera el 8% en vez del 10%?

1.5 Técnicas para construir modelos matemáticos


Se exponen los pasos a seguir y algunas técnicas a emplear para formular modelos determinísticos. No
se pretende exhibir un método único. Simplemente es una propuesta metodológica básica.

Se propone un caso simple el que es utilizando en temas posteriores para que el lector lo conozca
adecuadamente y pueda interpretar los resultados a medida que avanza en el curso:

Planeamiento de la producción en Alcoholes Argentinos (AA).


AA produce dos alcoholes, “Guaraní” (Catálogo AA01) y “Pampa” (Catálogo AA02), en
una planta chica recién adquirida, que funciona en San Nicolás.
El sector de producción opera 40 horas semanales empleando a cinco trabajadores de
tiempo completo y a dos que trabajan quince horas semanales.
Una vez terminado el producto, éste pasa al sector de rectificado, que tiene equipos
operados por seis empleados de tiempo completo y uno de 10 horas semanales.

AA no tiene problemas de materias primas para ambos productos. Puede vender todo
lo que quiera de “Guaraní” pero tiene una demanda limitada a 120.000 litros
semanales de “Pampa”.
¿Que cantidad de cada producto debe producir AA para maximizar las ganancias si se
sabe que “Guaraní” deja una ganancia neta de 3 $ por mil litros y que “Pampa” de 5
$/1.000 litros?

13
Se propone formular el problema en forma de modelo matemático siguiendo cuatro etapas. Con este
desarrollo se busca obtener una metodología apta para aplicar a cualquier modelo:

1.5.1 Primera etapa: Identificación de las variables de decisión


Tanto el personal de producción como el de rectificación deben saber al principio de la semana cual es
el plan de producción, por tanto hay que informarles lo que deben hacer ¿Que información hay que
darles? A esos sectores hay que brindarles la especificación del número kilolitros/semana a producir de
“GUARANÍ” y de “PAMPA”. Esas son las variables de decisión.

En primer lugar se le dará un nombre simbólico a las variables de decisión, que sea fácil de identificar,
por ejemplo, P por Producción. Así sería:

P1: producción de kilolitros semanales de “GUARANÍ”


P2 producción de kilolitros semanales de “PAMPA”.

Estas variables deben ser definidas con precisión, sin dejar ambigüedades: P1 será la producción semanal
de “GUARANÍ” expresada en mil litros/semana [kl/sem] y no en otra unidad.

Para identificar las variables de decisión se deben poder identificar:

a) los elementos que afectan los costos, las ganancias o lo que represente el objetivo global del
problema.
b) los elementos que se pueden elegir y/o controlar con libertad.
c) las decisiones a tomar
d) la información que deberá disponer quien quiere llevar adelante la solución propuesta cuando
se resuelva el modelo.

1.5.2 Segunda etapa: Identificación de datos del problema


Para determinar las cantidades reales de los productos a producir a efectos de maximizar las ganancias
se necesita saber:

 Número de horas-hombre de trabajo disponibles en el sector de elaboración, o capacidad de


producción semanal en ese sector.
 Número de horas-hombre disponibles en el sector de rectificación, o capacidad de producción
semanal en ese sector.
 Ganancias por la venta de cada uno de los productos.

Como se trata de un problema determinístico, es necesario obtener estos datos o acceder a ellos en el
momento de formular el problema. Se supone que cuando se recolectan se obtienen los siguientes
datos:

Producción: 5 hombres x 40 hs/hombre semana = 200 hs/hombre semana


2 hombres x 15 hs/hombre semana = 30 hs/hombre semana
Total 230 hs/hombre semana en Producción.

Rectificado: 6 hombres x 40 hs/hombre semana = 240 hs/hombre semana


1 hombre x 10 hs/hombre semana = 10 hs/hombre semana
Total 250 hs/hombre semana en Rectificado.

 El margen de ganancia es de 3 $/klitro “GUARANÍ” y de 5 $/klitro de “PAMPA”.

Como se puede ver, la diferencia entre las variables y los datos, es que el operador no puede controlar
los valores de los datos. No se podría cambiar la capacidad de trabajo de un hombre o de una máquina,
pero sí se podría afectar a más o menos hombres o máquinas. Debería prestarse atención a este detalle,
se volverá sobre él. También ocurre que, cuando se avanza en el planteo del problema, puede ser
necesario ampliar datos, obtener valores más completos u otros que no parecieran ser necesarios al
principio e, incluso, descartar información que no es pertinente.

1.5.3 Tercera etapa: Formulación de la función objetivo.


Es el planteo del problema en forma matemática. Así como para determinar las variables de decisión se
preguntaba “¿qué hay que informar al jefe de producción?”, para formular la función objetivo deberá
plantearse la pregunta “¿qué se espera obtener con este modelo?” Es la información que se dará al
escalón jerárquico superior y se relaciona con el objetivo global. Debe notarse que se han planteado dos
reportes: el primero dirigido al nivel operativo: cuánto se fabricará; el otro al nivel superior: cuánto se
va a ganar.

14
Para formular el objetivo generalmente se puede usar el siguiente método:
1) Establecer el objetivo en forma verbal, que en este caso es:
Maximizar la ganancia semanal del total de la producción de “GUARANÍ” y de “PAMPA”, determinando las cantidades
a producir de cada uno de los alcoholes.

2) Si es posible, descomponer el objetivo en operaciones aritméticas básicas (suma, resta o producto)


de cantidades individuales:
Maximizar = (Ganancia por producir una unidad de “GUARANÍ”)x(cantidad de unidades a producir de “GUARANÍ”)
+ (Ganancia por producir una unidad de “PAMPA”)x(cantidad de unidades a producir de “PAMPA”)

3) Expresar las cantidades individuales usando las variables y los datos del problema.

Para poder efectuar esta tercera etapa es útil elegir algunos valores específicos y así poder saber como
usar la función objetivo. Esta técnica puede ser denominada trabajo con un ejemplo específico (o
especificación del modelo). Se elige un valor cualquiera – razonable – para comenzar:

En el caso, puede suponerse una producción semanal de 10 mil litros de “GUARANÍ” y de 20 mil de
“PAMPA”:
Ganancia de “GUARANÍ” x Producción semanal de “GUARANÍ” = 3 $/kl x 10 kl/sem = 30 $/sem
Ganancia de “PAMPA” x Producción semanal de “PAMPA” = 5 $/kl x 20 kl/sem =100 $/sem
Ganancia total 130 $/sem

Este análisis no resuelve el problema, pero sirve para mostrar como plantearlo. Ahora es sencillo
transformarlo:

Ganancia de “GUARANÍ” x Producción semanal de “GUARANÍ”  3P1


Ganancia de “PAMPA” x Producción semanal de “PAMPA”  5P2
Ganancia total = 3P1 + 5P2

Por tanto, la función objetivo será


Maximizar 3P1 + 5P2

1.5.4 Cuarta etapa: Identificación de las restricciones.


Es evidente que los problemas de este tipo no tienen solución si no se plantean las restricciones o
límites. Estas restricciones surgen, en general, de:

 Limitaciones físicas. (horas de trabajo, capacidad de producción, cantidad de materia prima, etc.)
 Limitaciones de ventas (por ejemplo compromisos con un cliente, políticas de ventas, etc.)
 Limitaciones externas (por ejemplo la imposibilidad de colocar en el mercado por encima de cierta
cantidad)
 Relaciones entre variables (por ejemplo la imposibilidad que la suma de variables sea superior a un
número fijo, lo que vale en porcentajes, tantos por uno o partes de una unidad productiva)
 Restricciones lógicas (por ejemplo no puede producirse –1000 litros de alcohol o no pueden
fabricarse 6,35 pianos)

Para el caso de la producción de alcoholes:

1. Limitación física: límite de horas/hombre semanales disponibles para producción y rectificado


En forma verbal: las horas totales semanales en elaboración no pueden superar las 230.
2. Descomposición: las horas usadas para “GUARANÍ” + las horas usadas para “PAMPA” no pueden
superar las 230
3. Matemática: Al llegar a este punto se evidencia que faltan datos. Falta conocer cuanto tiempo se
emplea en la elaboración de cada producto. Lo que debe notarse es que, a diferencia de los
“problemas” que se solucionan en clase (donde el enunciado incluye los datos) en los casos de la
vida real, primero debe abordarse el método de solución para recién después determinar cuales son
los datos que se necesitan.

Supóngase que se obtienen los siguientes datos, buscando en la planta:


Horas/hombre por 1000 litros
“GUARANÍ” “PAMPA”
AA01 AA02
Producción 2 1
Rectificación 1 2

15
4. Con estos datos se podrá escribir la restricción en forma genérica, para cualquier valor de las
variables establecidas al principio:

horas hombre necesarias para producir una unidad de “GUARANÍ” x unidades producidas de
“GUARANÍ”
+
horas hombres necesarias para producir una unidad de “PAMPA” x unidades de “PAMPA”
producidas
=
horas hombres usadas en el sector.

5. Limitación física 1: límite de horas/hombre disponibles en el sector Elaboración


2 P1 + 1P2  230 (dimensionalmente [hh/kl] x [kl/sem] = [hh/sem])

Se lee: gastando a razón de 2 Hh/kl elaborado de AA01 multiplicando por la cantidad de kl/sem de
AA01 que se va a elaborar más 1 Hh/kl de AA02 por la cantidad de kl/sem de AA02 a elaborar no se
deben superar las 230 Hh/sem disponibles en el sector

6. Limitación física 2: límite de horas/hombre disponibles para rectificación


1 P1 + 2P2  250

7. Limitación externa: restricción de límite de producción.


No pueden venderse más de 120 mil litros/semana de “PAMPA”:
P2  120

8. Limitaciones lógicas: restricción de no negatividad


P1 0
P2 0

1.5.5 Formulación matemática del problema:

Z  3P1  5P2  Max ganancias máximas


2 P1  1P2  230 producción
1P1  2 P2  250 rectificad o
1P2  120 demanda
P1 0 no negativida d
P2  0 no negativida d
Para verificar la validez del modelo hallado se pueden hacer las siguientes pruebas de coherencia:
1) ¿es posible decidir no fabricar nada? P1 = 0, P2 = 0.
Si. Verifica todos los componentes del modelo, aunque Z = 0 (difícil que sea un máximo) todas
las condiciones se satisfacen simultáneamente.
2) ¿es posible fabricar P2 = 120 kl/sem y no fabricar P1?
Sí. Sería emplear el criterio de fabricar todo lo que se puede del alcohol AA02 que dá la
máxima ganancia: P1 = 0; P2 = 120. Z = 600, 120 < 230; 240 < 250 y 120 = 120. Todo queda
satisfecho
3) ¿es posible fabricar P1 = 200 y P2 = 300. No es posible, si bien da un Z alto (2100), no se
satisfacen las inecuaciones.
Por tanto el modelo parece lógico y funcional

1.6 Problemas de redes

Con el objetivo de mostrar otros casos en los cuales se construyen modelos similares, se plantean en
este apartado y en el que sigue ejemplos de problemas que abordan relaciones entre grupos de nodos.

El primer caso, se refiere a nodos agrupados bajo la denominación convencional de “plantas” que se
relacionan mediante vínculos con nodos agrupados bajo la denominación “centros de distribución”.

16
Este tipo de problemas se conoce con el nombre de “Problemas de Transporte”, debido a que de esta
manera es más fácil comprenderlos. Sin embargo, la aplicación de estos modelos no se restringe solo al
transporte, sino que alcanza a varias otras situaciones, como se ve en otros capítulos.

Resulta necesario conocer ciertos datos del problema:


1. demandas de cada centro destino (cliente, mercado, etc.)
2. capacidad de elaboración de cada centro de producción (planta, fábrica)
3. costo de transporte de cada fábrica a cada destino.

CASO:

Una empresa automotriz tiene plantas en Buenos Aires, San Pablo y México DF en las cuales produce un
vehículo que se comercializa, además de localmente, en Chile, Perú, Colombia y Venezuela. La Planta
Buenos Aires produce, para exportación, 2000 unidades/mes y las otras dos 1500 unidades/mes cada
una. Chile requiere 1000, Perú requiere 500, Colombia requiere 1500 y Venezuela 2500 unidades/mes.

La tabla muestra los costos de embarque de cada unidad desde la planta a cada centro

DISTRIBUIDORES
PLANTAS CHILE PERU COLOMBIA VENEZUELA
BUENOS AIRES 5 7 10 9
SAN PABLO 7 7 8 10
MEXICO DF 10 8 5 7

Este tipo de problemas permiten que se los formule, antes de expresarlos matemáticamente, utilizando
un diagrama de redes. Cada elemento de salida o llegada (planta o centro de distribución es un nodo, y
se representa con un círculo. Cada línea indica la posibilidad de llevar un vehículo entre esos dos nodos.
Junto a cada nodo se coloca la oferta o demanda, según sea emisor o receptor y en cada línea (llamada
arco) se indica el costo de transporte.

1.6.1 Identificación de las variables de decisión

Nuevamente, hay que identificar:


a) los elementos que afectas los costos, las ganancias o lo que represente el objetivo global del
problema.
b) los elementos que puede elegir y/o controlar con libertad.
c) las decisiones que hay que tomar
d) la información que deberá disponer quien quiere llevar adelante la solución propuesta cuando se
solucione el problema.

Al identificar estos elementos, se notará que hay doce variables de decisión: el número de autos a
embarcar desde cada centro a cada distribuidor. Estas variables se pueden identificar de cualquier
manera: x1, x2, ... o bien x11, x12, x13, x14, x21,.... o bien más explícitamente xBA-CH , xBA-PE….

17
Estas variables se pueden expresar

En forma verbal: Minimizar los costos de transporte desde todas las plantas a todos los distribuidores.

Descomposición: Minimizar costo de transporte desde Buenos Aires hasta Chile, hasta Perú, hasta
Colombia y hasta Venezuela, más el costo de transporte desde San Pablo hasta Chile, hasta Perú, hasta
Colombia y hasta Venezuela, más el costo de transporte desde México hasta Chile, hasta Perú, hasta
Colombia y hasta Venezuela.

Entendiendo costo de transporte como el costo de transportar una unidad entre un origen y un destino
multiplicado por el número de unidades transportadas entre esos extremos.
Si se hace el ejemplo específico y se pasa a una expresión matemática, queda:

Minimizar (5xBA/CH + 7xBA/PE + 10xBA/CO + 9xBA/VE) +


(7xSP/CH + 7xSP/PE + 8xSP/CO + 10xSP/VE) +
(10xME/CH + 8xME/PE + 5xME/CO + 7xME/VE)

1.6.2 Identificación de restricciones.

Se analiza averiguando que elementos son los que impiden elegir cualquier valor. Por ejemplo, para
minimizar costos de transporte, lo ideal es no transportar. ¿Se puede elegir el cero?

Las restricciones surgen de considerar:


a) el embarque de cada planta no debe exceder lo que la planta produce
b) el recibo de cada centro debe ser lo que necesita para satisfacer la demanda. Pero hay que averiguar
si no se puede enviar más que lo que demanda. Parece que este no es el caso, pero no puede haber
ambigüedades.

c) el envío debe ser de números positivos enteros, (no es posible enviar 0,345 vehículos).

Todas estas restricciones deberán ser convertidas a expresiones matemáticas, para hacerlo es necesario
tener en cuenta que en cada nodo de salida no se puede superar la capacidad de producción de la
planta: desde Buenos Aires., por ejemplo, el número total de unidades despachadas será igual a la suma
de las unidades despachadas a Chile, más las enviadas a Perú, más las que fueron a Colombia más las
que fueron a Venezuela. Pero hay una restricción: esa suma no puede ser superior a 2000, aunque, por
la manera en que se plantea el problema tampoco podría ser inferior ya que no se encuentra en el
planteo la frase “el sobrante se destina a…”

xME/CH + xME/PE + xME/CO + xME/VE ≤ 2000, en el caso de que se admitan sobrantes


xME/CH + xME/PE + xME/CO + xME/VE = 2000, en el caso que haya que embarcar todo lo producido
Lo mismo para cada una de las otras dos terminales.

Luego hay que observar las restricciones de demanda: cada distribuidor recibirá lo que necesita (lo que
solicitó en firme): Las unidades recibidas en Chile serán la suma de las despachadas desde Buenos Aires
más las de San Pablo más las de México, y debe ser igual a su demanda (1000)

XBA/CH + xJSP/CH + xME/CH = 1000


y así para los otros tres distribuidores.

Finalmente hay que considerar las restricciones de no negatividad y de enteros. El resultado final será:

Minimizar (10xME/CH + 8xME/PE + 5xME/CO + 7xME/VE)


(7xSP/CH + 7xSP/PE + 8xSP/CO + 10xSP/VE) +
(5xBA/CH + 7xBA/PE + 10xBA/CO + 9xBA/VE) +
Sujeto a:
xME/CH + xME/PE + xME/CO + xME/VE = 2000 Capacidad Buenos Aires.
xSP/CH + xSP/PE + xSP/CO + xSP/VE =1500 Capacidad San Pablo
xBA/CH + xBA/PE + xBA/CO + xBA/VE = 1500 Capacidad México
xME/CH + xSP/CH + xBA/CH = 1000 Demanda Chile
xME/PE + xSP/PE + xBA/PE = 500 Demanda Perú
xME/CO + xSP/CO + xBA/CO = 1500 Demanda Colombia
xME/VE + xSP/VE + xBA/VE = 1200 Demanda Venezuela
xij  0 y entero para todo i j

18
1.7 Problemas con variables binarias.

Otro tipo de problemas de redes son aquellos derivados de tomas de decisión con alternativas
excluyentes. En ingeniería muchas veces aparecen problemas de toma de decisión que implican
estrategias definidas por acciones binarias tales como se hace o no: Compra de una planta, realizar un
proyecto, renovar un equipo. Generalmente estas decisiones se codifican con 0-1, que representan una
variable entera restringida a esos valores.

La compañía de inversores EXC recibe cuatro propuestas de inversión las cuales fueron analizadas y por
ello se sabe que tienen un rendimiento alto con un riesgo comparable entre ellas y aceptable. También
hay una buena estimación del retorno esperado en un horizonte de 4 años. Los proyectos requieren de
un programa de inversiones pautado en esos cuatro años. La compañía EXC dispone de fondos a invertir
y de un cronograma de desembolsos para cubrir esos cuatro años de los proyectos. Por otro lado, la
inversión en telecomunicaciones y en electrónica comprende algunos aspectos tecnológicos que se
superponen, por lo tanto se ha decidido invertir en uno u otro rubro pero no en ambos
simultáneamente.

Los fondos que no se usen un año no están disponibles en el año siguiente, se destinan a otros fines.
Todos los datos mencionados se sintetizan en la siguiente tabla:

PROYECTO AÑO 1 AÑO 2 AÑO 3 AÑO 4 RETORNO


FARMACÉUTICO 60 10 10 10 250
TELECOMUNICACIONES. 35 35 35 35 375
ELECTRÓNICA 10 50 50 10 275
SUPERMERCADOS 15 10 10 40 140
FONDOS DISPONIBLES 90 80 80 50

Identificación de las variables de decisión


La pregunta es ¿que se puede controlar libremente en este problema?, y la respuesta es: puede
aceptarse o rechazarse la posibilidad de invertir en cada una de las propuestas:

F  inversión en farmacia, F= 1, se invierte, F = 0 no se invierte


T  inversión en telecomunicaciones, T = 1, se invierte, T = 0, no se invierte

y así E y S las otras variables. Estas variables de decisión son diferentes a las anteriores en tanto que el
valor que pueden asumir ahora está restringido fuertemente a dos números enteros positivos, mientras
que antes eran positivos (miles de litros de alcohol) o positivos enteros (autos a transportar).

Identificación de la función objetivo


Como el rendimiento total será la suma de los rendimientos en cada una de las cuatro compañías, debe
formularse la siguiente pregunta: ¿Cuánto rendirá lo invertido en -por ejemplo- farmacia? El rendimiento
será el retorno esperado por unidad monetaria multiplicado por la decisión de invertir:

Rendimiento en farmacia = 250 F


(si la decisión, F, vale 1 el retorno es 250, caso contrario es cero)

Entonces el rendimiento total será

Rendimiento total = 250 F + 375 T + 275 E + 140 C


Identificación de las restricciones

Se pueden identificar los siguientes grupos de restricciones:

1) disponibilidad financiera anual.


2) Imposibilidad de invertir simultáneamente en electrónica y comunicaciones.
3) Restricciones lógicas.

1) La disponibilidad monetaria anual.


La limitación de fondos por año impide seleccionar los cuatro proyectos a la vez. Como la cifra es
variable, se necesita una restricción de este tipo por año:

Los fondos totales a invertir en cada proyecto seleccionado en el primer año deberán ser, como
máximo, de 90

19
Y, por otro lado, cada proyecto aporta acumulativamente al total:

Los fondos totales a invertir en el primer año = invertido en farmacia + invertido en electrónica +
invertido en telecomunicaciones + invertido en supermercado.

Si esto se expresa con símbolos matemáticos para el primer año, se tiene que la suma de lo que necesita
cada proyecto por la variable de decisión (cuyo valor será 0 o 1) dará la inversión total:
60F + 35T + 10E + 15S  90 (año 1)
con los datos de la tabla se completan los demás años:
10F + 35T + 50E + 10S  80 (año 2)
10F + 35T + 50E + 10S  80 (año 3)
10F + 35T + 10E + 40S  50 (año 4)

2) Imposibilidad de invertir simultáneamente en electrónica y en telecomunicaciones:


Se puede plantear como T E = 0
o como T + E  1

3) Restricciones lógicas
F, T, E y S son 0 o 1 y enteros.

Planteo del modelo completo:


Maximizar:
Rendimiento total 250 F + 375 T + 275 E + 140 C
Sujeto a:
(Año 1) 60F + 35T + 10E + 15S  90
(Año 2) 10F + 35T + 50E + 10S  80
(Año 3) 10F + 35T + 50E + 10S  80
(Año 4) 10F + 35T + 10E + 40S  50
(No inversión simultánea) T+E1
(Lógicas) F, T, E y S son 0 o 1 y enteros.

20
Capítulo 2
Programación Lineal. Modelo gráfico

2.1 ¿Cómo hallar una solución? Una aproximación


heurística.
2.2 Gráfica de restricciones
2.3 Casos especiales
2.4 Análisis de sensibilidad
2.5 Programación entera: una aproximación a la solución
gráfica

21
E
n este capítulo se desarrolla el método de resolución de los modelos planteados. El conjunto de
métodos básicos se denominan genéricamente como modelos de Programación Lineal. Para desarrollar
un método de manera fácil de comprender se retomará el caso ejemplo de Alcoholera Argentina
presentado en el planteo general de modelos. Recordaremos, por lo tanto, las características del caso:

Planeamiento de la producción en Alcoholera Argentina.


AA produce dos alcoholes, GUARANÍ y PAMPA, en su planta San Nicolás. La planta tiene dos secciones: producción y
rectificado.
En producción se obtiene el producto base operando 40 horas semanales y empleando cinco trabajadores de tiempo
completo y a dos que trabajan quince horas semanales. Se dispone así de un máximo de 230 horas de trabajo
semanales.
Una vez terminado el producto base, éste pasa al sector de rectificado, que tiene equipos operados por seis
empleados de tiempo completo y uno de 10 horas semanales, lo que resulta en una disponibilidad de hasta 250 horas
semanales de trabajo.
Las horas requeridas en los dos sectores para producir un kilolitro de cada alcohol son:

GUARANÍ PAMPA
Producción (hh/kl) 2 1
Rectificado (hh/kl) 1 2
Ganancias ($/kl) 3 5

En el cuadro anterior también se muestran los márgenes de ganancias para cada producto.
AA no tiene problemas de materias primas para ambos productos. Puede vender todo lo que quiera de GUARANÍ pero
tiene una demanda limitada a 120000 litros semanales de PAMPA.
¿Qué cantidad semanal de cada producto debe producir AA para maximizar las ganancias?.

Siendo x1 el número de miles de litros de GUARANÍ a producir y x2 el de PAMPA, el problema se plantea:

Maximizar: Z = 3x1 + 5x2


Sujeto a: 2x1 + x2  230 restricción 1, de producción
x1 + 2x2  250 restricción 2, de purificación
x2  120 restricción 3, de demanda
x1  0 restricción 4, de no negatividad
x2  0 restricción 5, de no negatividad

2.1 ¿Cómo hallar una solución? Una aproximación heurística.


Para poder encontrar un valor óptimo de producción de ambos alcoholes, se deben encontrar valores de
x1 y x2 que indiquen el plan de producción y la consecuente ganancia máxima.

¿Cómo lograrlo? Intuitivamente podría hacerse el siguiente análisis: si el alcohol PAMPA es el que da
máximas ganancias, se debería fabricar todo lo posible dejando de lado el otro alcohol. Observando las
restricciones e ignorando el otro alcohol (equivale a x1 = 0) vemos que x2 puede, en la primera
restricción, valer como máximo 230, o 250 en la segunda, pero ninguno de estos valores se permiten por
la tercera restricción. Por tanto, lo máximo a producir de x2 será 120 (kl de PAMPA).

En ese caso, el plan de producción será x1 = 0; x2 = 120; con una ganancia Z = 600.

Lo siguiente que podrá plantearse es: fijado el máximo de x2 ¿Qué recursos sobrantes podremos usar
para fabricar lo más posible de x1?

Para encontrar, nuevamente se deberían analizar cada una de las restricciones:

Con la primera, el máximo de x1 sería 55, lo que es incompatible con la segunda restricción, ya que si se
reemplazan los valores se obtiene a la izquierda un número mayor a 250.

Con la segunda, el máximo valor de x1 es de 10, lo que resulta un valor compatible en la primera y por
lo tanto es lo máximo que se puede elaborar de x1.

En ese caso, el plan de producción será x1 = 10; x2 = 120; con una ganancia Z = 630.

Se aprecia que se encontró un plan de producción que cumple con todas las restricciones y da una
ganancia que parece ser la mayor.

22
Sin embargo, debería buscarse un método más sistemático para encontrar la solución. Aprovechando
que este es un problema de solamente dos variables de decisión, se buscará graficar el modelo.

2.2 Gráfica de restricciones

Se considera una restricción por vez. Para graficar cada restricción se comienza ignorando el signo de la
desigualdad y tratando la función como si fuera una igualdad. Luego se incluye la desigualdad.

Las últimas dos restricciones coinciden con los ejes de coordenadas y, si se tiene en cuenta el sentido de
la desigualdad, determinan como espacio factible solamente al primer cuadrante. Si se grafican todas
las restricciones como igualdades se obtiene:

Gráfica de Restricciones

El siguiente paso es determinar, para cada restricción, cuáles son los valores factibles: aquellos valores
permitidos por la inecuación.

Para la primera restricción son aquellos que cumplen con 2x1 + x2  230, lo cual significa que la recta
graficada (2x1 + x2 = 230), es uno de los valores factibles, pero también los son todos los puntos
ubicados a la izquierda de dicha recta, que se muestran en la siguiente figura como un área sombreada:

Área permitida por la restricción 1

23
Una vez que fueron consideradas todas las restricciones queda determinada un área factible que es la
intersección de las áreas determinadas por cada restricción:

Área de soluciones factibles


Ese polígono encierra un área que contempla exactamente todas las restricciones: el eje x2 a la derecha
es la última restricción, el eje x1 hacia arriba es la anteúltima y así sucesivamente. Significa que
cualquier solución al problema debe ubicarse forzosamente dentro del área sombreada o en sus límites,
ya que este conjunto determina lo que es admitido por las restricciones.

Trazado de la Función Objetivo


En el gráfico de la figura se ha agregado la función objetivo, dibujada arbitrariamente en un valor de
x2 = 30 y de x1 = 20.

Resulta evidente que pueden graficarse para cada valor de x1 y de x2 una curva 3x1 + 5x2, a pendiente
constante e igual a -3/5 y la ordenada al origen variable e igual a . La que se muestra está igualada a
Z = 210, pero hay un manojo de esas curvas que caen dentro del espacio de soluciones factibles:

24
Función Objetivo: Igualdad de pendientes para múltiples soluciones

Obviamente será la solución óptima aquella que pase por alguno de los puntos extremos del área
sombreada, entendiendo como “extremo” a aquel punto que se encuentre lo más alejado posible del
origen.

¿De qué depende que un vértice sea el más “alejado?. Obviamente de la pendiente de la función
objetivo.

Los puntos extremos – o más alejados del origen – más el mismo origen son los vértices de ese polígono y
se designan con las letras A, B, C, D y E en la figura siguiente:

Determinación de vértices del área factible


Para determinar cuál es el vértice más alejado hay que conocer cuál es la pendiente de la función
objetivo. Por ejemplo, si el alcohol GUARANÍ, que en este caso brinda una ganancia de 3 $/kl pasara a
no dar ganancias, la pendiente pasaría a ser nula, y por tanto la recta sería horizontal: implicaría
fabricar solamente PAMPA (punto B) o, sin que cambie nada, el punto C.
Al contrario, si la ganancia en vez de 3 fuera enorme, desproporcionada en relación a los 5 $/kl de
PAMPA, la pendiente tendería a infinito, recta vertical, y el punto se ubicaría en E (no fabricar nada de
PAMPA y todo de GUARANÏ)

25
Observando la figura se ve que si la pendiente de Z fuera nula, la recta sería horizontal y el eje más
lejano sería el “B”. En ese caso la ganancia del alcohol 1 sería cero, entonces ¿Por qué fabricarlo?

Por otro lado, si la ganancia del alcohol 2 pasara de 5 a un valor nulo, la curva Z tendría pendiente
infinita, sería vertical y entonces el punto más alejando sería el vértice “E” (Obvio: si no se gana nada
por producir el alcohol 2, entonces hay que hacer todo alcohol 1)

Esto es lógico: si el origen significa “no hacer nada”, entonces, para maximizar las ganancias hay que
hacer lo más posible ya que eso permite lograr el objetivo. Cada uno de los vértices es una solución
posible (en el sentido que está permitida) y son parte de un polígono.

Para analizar el caso actual con la pendiente (-3/5) no hace falta graficar la función. Basta con estudiar
el valor de la función en cada uno de los vértices. Los valores de estos vértices para las coordenadas x 1 y
x2, y el valor de la función objetivo son:

Vértice x1 x2 Función Objetivo


(Z)
A 0 0 0
B 0 120 600
C 10 120 630
D 70 90 660
E 115 0 345

Como el problema es maximizante se seleccionará aquel vértice que corresponde al mayor valor de la
función objetivo. El vértice D presenta una respuesta máxima de la función objetivo de 660, indica, por
tanto, que lo óptimo es programar una producción de 70 y 90 mil litros de GUARANÍ y PAMPA
respectivamente.

La solución analítica de este problema se encuentra resolviendo el sistema de ecuaciones que


corresponde a las dos restricciones involucradas en cada vértice, con lo que se obtienen las coordenadas
del mismo. Particularmente en el caso del D:
2 x1  x2  230

 x1  2 x2  250
Finalmente, la expresión del resultado del modelo es:
Producción semanal de GUARANÍ: 70000 litros
Producción semanal de PAMPA: 90000 litros
Ganancia semanal: Z = 3 x 70 + 5 x 90 = $ 660

2.3 Casos especiales


Pueden presentarse los siguientes casos:
Programa lineal con una solución no factible: es un programa con una solución incapaz de satisfacer
simultáneamente todas las restricciones. Ejemplo: si se agregara una nueva restricción al problema
anterior, sea x1  220 (Se solicita producir no menos de 220000 litros de GUARANÍ) y luego se grafica el
área factible de soluciones, se verá que no hay espacio de soluciones posibles.

Modelos sin límites. Ocurre cuando por defecto de restricciones el área de soluciones factibles es
ilimitada. Para ver un ejemplo, cambiar una restricción al problema original: la restricción x2  120 pasa
a ser x2  120. Este cambio provoca un área abierta e ilimitada. Sin embargo debe observarse que un
área de este tipo no siempre significa que el problema no tenga solución. Un área abierta a la derecha
en un problema de minimización puede tener solución óptima satisfactoria para todas las restricciones.

Modelos con restricciones redundantes. Se trata de una restricción que -esté o no presente- no afecta el
área de factibilidad. Por ejemplo, la restricción
x1 + x2  300
insertada en el problema original, no altera el área de soluciones. (Nota: revisar el modelo de variables
binarias presentado en el apartado anterior. ¿Se pueden individualizar restricciones redundantes?)

26
Nueva restricción que anula las anteriores

Soluciones óptimas conjuntas: se encuentran dos vértices consecutivos como soluciones óptimas.
Significa que el segmento que une esos vértices tiene la misma pendiente del funcional, por lo tanto
cualquier punto de ese segmento (inclusive los vértices) es una solución alternativa del problema y que
se encuentran en una restricción paralela a la función objetivo

2.4 Análisis de sensibilidad gráfico


Sería de muy poca utilidad si el modelo resuelto se limitara a brindar como única información el plan de
producción semanal de los dos tipos de alcoholes. Resulta casi inevitable que, una vez resuelto, surjan
algunas preguntas relacionadas con la propuesta de producción, por ejemplo

¿Qué sucede con la solución hallada si se decide bajar el precio de GUARANÍ en $ 0,25 por cada
1000 litros? Implica cambiar el coeficiente del funcional de 3 por mil litros a 2,75 por mil litros
¿cómo afecta esto al plan de producción?

¿Qué sucede en la solución óptima y en la función objetivo si se modifica un valor del lado
derecho de las restricciones? Por ejemplo, que los dos empleados de tiempo parcial que
trabajan en producción 15 horas pasan a trabajar 10, lo que disminuye la disponibilidad de
horas de 230 a 220.

2.4.1 Análisis de sensibilidad de los coeficientes del funcional


El análisis de sensibilidad brinda información sobre la robustez de la solución hallada: explica qué ocurre
con el óptimo y con la función objetivo cuando se modifican, de a uno por vez, los coeficientes.

¿Por qué puede ser necesario modificar un coeficiente del funcional? Por ejemplo puede darse el caso
de disponer de estimaciones con un cierto porcentaje de error: ¿que ocurre cuando se sitúa en los
extremos de ese porcentaje? Por ejemplo una ganancia de 10 $ con 5% de error se calcula sobre la base
de 10 $, pero ¿qué pasa si el valor real es de 9,5 $ o de 10,5?

Área factible y recta que pasa por el punto C que corresponde a Z=660

27
En el problema de los alcoholes, la fábrica produce 70 kilolitros de GUARANÍ y 90 kl de PAMPA, pero se
analiza lo que ocurre con este plan ante la posibilidad de reducir el precio de venta de GUARANÍ en
$0,25 por cada kilolitro para hacer frente a la competencia que va poner en el mercado un producto
similar.

La solución óptima, anteriormente hallada, es:

Vértice x1 x2 Funcional
A 0 0 0
B 0 120 600
C 10 120 630
D 70 90 660 Es el vértice que corresponde al máximo
E 115 0 345

La disminución de $ 0,25 en el precio de venta de 1000 litros de GUARANÍ provoca la disminución del
margen de ganancia de $3 a 2,75, por lo tanto ¿qué pasa con la solución óptima 70 kl y 90 kl  cuando
el coeficiente de x1 pasa de 3 a 2,75?

Una forma de averiguar es hacer todo de nuevo con el nuevo coeficiente, pero se puede responder sin
necesidad de rehacer el problema.

En primer lugar se examina como cambia la función objetivo cuando se cambian los valores del
coeficiente de x1:

Cambio de coeficientes de las variables de decisión x 1

Es evidente que lo que cambia es la pendiente de la función. Si estas funciones se trasladan al gráfico
completo se observa que hay pendientes que se escapan de las restricciones: si el coefiente c1 aumenta
mucho su valor, la función objetivo tiende a ser vertical, por lo tanto el vértice extremo podría pasar a
ser el E luego que la pendiente del funcional (-c1/c2) supere a la pendiente de la restricción 2 de
rectificado.

Por otro lado, valores bajos de c1 hacen que la función objetivo tienda a ser horizontal, por lo tanto el
vértice extremo podría pasar a ser el C luego que la pendiente del funcional (-c1/c2) supere a la
pendiente de la restricción 1 de producción.

Para encontrar los valores extremos de esas pendientes se reescribe la función objetivo pero
reemplazando el coeficiente que se analiza por su símbolo, c1

C1 x1 + 5x2

así, la pendiente de Z es (c1 /5), y dado que la pendiente de la primera restricción es (2/1), el límite
se encontrará cuando ambas sean iguales, por tanto

(c1 /5) =  (2/1)


c1 = 10

lo que quiere decir que mientras el coeficiente de x1 que, inicialmente es 3, no supere el valor de 10, la
solución actual sigue siendo la óptima, aunque el valor del funcional es diferente. Por ejemplo,
cambiando el coeficiente de x1 de 3 a 4 la propuesta de elaborar 70000 litros de GUARANÍ y 90000 de
PAMPA sigue siendo óptima, pero el valor del funcional (Z) pasa de

3x1 + 5x2 = 660


a
4x1 + 5x2 = 730.

28
Por otra parte, cuando disminuye el valor del coeficiente, se observa que la pendiente de Z se acerca a
la de la restricción 2. El cálculo a realizar será entonces

( c1 /5) = (1/2)
c1 = 2,5

significa que mientras no se disminuya el coeficiente de x 1 a menos de 2,5 la solución será óptima y el
valor del funcional cambiará.

En síntesis:
Para mantener la solución óptima hallada (x1 =70; x2 =90), el coeficiente de x1 podrá variar desde 2,50
hasta 10.

La respuesta al interrogante planteado, entonces, es que la disminución de ganancias a 2,75 para


GUARANÍ se puede hacer sin alterar el plan de producción, aunque disminuirán las ganancias totales.

¿Hasta donde pueden cambiarse los coeficientes de x1 cuando Z=Zopt?

2.4.2 Análisis de sensibilidad para los valores del lado derecho

Una vez encontrada la solución y presentado el informe que indica elaborar 70 y 90 kl respectivamente
de cada alcohol, se tratará de buscar la manera de responder preguntas como las que siguen:
¿Qué pasaría con las ganancias si cada uno de los empleados de tiempo parcial de producción
trabajara 10 horas en lugar de 15?

Debido a que el recurso mano de obra se utiliza por completo ¿aumenta la ganancia si uno de
los empleados de tiempo parcial pasa a trabajar tiempo completo y se prescinde del otro?

¿Qué pasaría si se contrata otro empleado de tiempo completo en rectificado?

El planteo de estas preguntas implica la posibilidad de modificar la estructura del problema. Así, la
primera restricción que fijaba el límite de recurso disponible en horas hombre en 230 cambia a un valor
de 220. Se podría expresar así: ¿qué ocurre cuando el sector de producción dispone de un máximo de
220hh/sem?

La segunda, entonces, sería: ¿Que ocurre con la función objetivo cuando el sector de producción pasa a
tener una disponibilidad de 240 hh/sem?

La tercera: ¿Que ocurre con el funcional cuando en el sector de rectificado se disponen de 290 en lugar
de 250 hh/sem?

Si se analiza gráficamente la incidencia de cambio en una restricción se advierte que los valores del lado
derecho (los bi ) son proporcionales a la ordenada al origen de cada una de las rectas que se usaron para
limitar el espacio de soluciones factibles. La primera restricción, originalmente fijada como  230, se
puede graficar para valores distintos de la ordenada al origen como 100, 200, 300 siguiendo el criterio
de reemplazar la desigualdad por una igualdad:

29
300
250
200
150
b=100
100
x2 b=200
50
0 b=300
-50 0 20 40 60 80 100 120
-100
-150
x1

Como varía gráficamente la restricción 1 si se cambian las disponibilidades semanales de horas hombre.
Para determinar hasta que punto puede moverse la restricción, se convierte el límite derecho en una
variable:
2x1 + x2 = b1

tal como se hizo para graficar. Esta recta puede incrementarse moviéndola hacia la derecha hasta que
pase por el punto H, cuyas coordenadas son x1 = 250 y x2 = 0.

¿Por qué el punto H? porque más a la derecha no tiene sentido: la intersección entre ambas restricciones
que dan el punto óptimo (producción y rectificado) cae fuera del espacio de soluciones factibles.

En ese punto el valor de b1 se calcula reemplazando x1 y x2 por sus valores como coordenadas del punto
H y con ello se obtiene la respuesta a la pregunta ¿Qué disponibilidad de horas hombre semanales
tendría que haber dispuesto para operar la planta en el punto H?

2 x 250 + 0 = 500

Punto de máximo desplazamiento de la restricción 1

Esto se hace porque la solución primitiva es la intersección de las dos restricciones y este punto es el
último posible para encontrar una intersección dentro del primer cuadrante (espacio permitido por las
restricciones). Entonces la restricción 1 puede desplazarse paralelamente a sí misma – pendiente
constante – hasta x1 = 250 como máximo para que el punto de operación original siga siendo el
determinado por la raíz de las ecuaciones que representan a las dos restricciones (1 y 2), que es la
respuesta original.

30
Para calcular el límite inferior del desplazamiento, o sea, hasta donde puede moverse sin que la
solución sea la intersección de otro par de restricciones, por ejemplo, las restricciones 1 y 3, se procede
igual:

2x1 + x2 = b1

Las coordenadas del límite inferior serán x1 = 10 y x2 = 120:

2 x 10 + 120 = 140

que es el límite de desplazamiento inferior de la restricción 1.

Punto inferior de máximo desplazamiento de la restricción 1.

Todo el conjunto muestra los extremos de variabilidad de la restricción 1, si no cambian los otros datos
del problema.

El óptimo sigue siendo la intersección de las restricciones 1 y 2. Pero los valores que asumen las
variables cambian.

Valor del lado derecho Valor de las variables en el óptimo Valor del funcional
de la restricción 1 (b1) en el óptimo
X1 X2 Z
140 10 120 630
200 50 100 650
230 70 90 660
300 116,7 66,7 683,6
500 250 0 750

Como este cambio en el funcional sigue un incremento lineal, se puede calcular la pendiente del
cambio, por ejemplo:

Pendiente = (Ganancia cuando la restricción vale 500  ganancia cuando la restricción vale
140)/(500140)= 0,333

Lo que se interpreta que por cada hora adicional de mano de obra disponible por encima del valor de
230 y hasta 500 el margen de ganancias se incrementará en 0,33 $: este valor es el precio sombra del
recurso.

De idéntica manera podría calcularse el precio sombra asociado con la restricción 2:

31
Sensibilidad de la restricción 1

Valor del lado derecho Valor de las variables en el óptimo Valor del funcional
de la restricción 2 (b2) en el óptimo
x1 x2 Z
115 115 0 345
200 86,7 56,7 543,33
250 70 90 660
275 61,7 106,7 718,33
295 55 120 765

Pendiente = 2,33

Entonces, por cada hora adicional del recurso mano de obra en rectificado, por encima del valor de 250
y hasta 295 horas, el margen de ganancias se incrementa en $ 2,3333. Por otra parte, por cada hora de
recorte en esa mano de obra, desde 250 hasta 115, se pierde $2,3333

Calcular el margen de ganancias de AA si cada uno de los empleados de tiempo parcial de producción trabaja 10
horas en lugar de 15.
Rta.: El valor de la restricción 1 pasa de 230 a 220. Este cambio cae dentro del intervalo 140500:
Nueva ganancia = vieja ganancia  precio sombra x incremento hs mano de obra=
Nueva ganancia = 660  0,33 x 10 = 656,667

Calcular el margen de ganancias de AA si uno de los empleados tiempo parcial de producción pasa a tiempo completo
y se prescinde del otro
Rta.: El valor de la restricción 1 se incrementa a 240, aun dentro del intervalo.
Nueva ganancia = vieja ganancia + precio sombra x incremento hs mano de obra
Nueva ganancia = 660 + 0,33 x 10 = 663,33

Calcular el margen de ganancia si se contrata un obrero más de tiempo completo en rectificado.


Rta.: El valor de la restricción 2 pasa de 250 a 290 en un intervalo permisible de 115-295:
Nueva ganancia = vieja ganancia + precio sombra x incremento hs. mano de obra
Nueva ganancia = 660 + 2,33 x 40 = 753,2

2.4.3 Análisis paramétrico de los valores del lado derecho

El análisis anterior brinda respuestas ante posibles cambios siempre que los coeficientes se mantengan
dentro del intervalo de sensibilidad. Ahora se tratará de evaluar lo que ocurre fuera de ese intervalo.
Por ejemplo, puede plantearse la posibilidad de reducir el personal de elaboración a dos obreros de
tiempo completo y uno de 30 horas semanales. Es plantear el problema en los siguientes términos:

Averiguar lo que sucede con el margen de ganancias óptimo, si el valor del lado derecho de la
restricción 1 pasa de 230 a 110 (dos empleados de 40hs más uno de 30hs).

Debe observarse que el valor nuevo está fuera del intervalo de sensibilidad 140-500 calculado para la
restricción 1. El análisis paramétrico permite evaluar cualquier cambio en una restricción particular.

32
Restricciones originales

Si se examinan nuevamente las restricciones originales, se ve que mientras la restricción 1 no disminuya


debajo de 140, la solución será la intersección de las restricciones 1 y 2, pero cuando cae debajo de 140
la solución pasa a ser la intersección de las restricciones 1 y 3, por lo que el precio sombra cambia en el
punto 140

Restricción 1 desplazada por debajo de 140

Así, el nuevo precio sombra para el intervalo 120-140 será 1,5 y la ganancia nueva será:

Ganancia nueva = ganancia en 140 hs  precio sombra x número de horas debajo de 140.

Si la restricción se reduce por debajo de 120, pero arriba de cero, la solución será la intersección de las
restricciones 1 y 4

33
Restricción 1 desplazada por debajo de 120

Diagrama transaccional para la restricción 1


A partir de ese punto la ganancia será la ganancia con las 120 hs – precio sombra por número de horas
debajo de 120.

Con toda esta información es simple construir un diagrama que indique como varía cada restricción: este
diagrama denominado transaccional se muestra en las figuras para la restricción 1 y para la 2.

Obsérvese que disponer de más de 500 horas en elaboración no reporta más ganancias.

Diagrama transaccional para la restricción 2

34
2.5 Programación entera: Una aproximación a la solución gráfica

Cuando se trabaja con modelos que tienen algunas restricciones que obligan a que las variables decisión
(todas o algunas) solamente puedan asumir valores enteros, se dice que son problemas de programación
entera, lo cual lleva a que a veces el caso no puede ser resuelto por programación lineal, aunque todas
las funciones sean lineales.

Es posible interpretar que un problema de este tipo puede ser resuelto redondeando el resultado final a
los valores más próximos, pero esto no siempre significa que se encontró la solución correcta.

Para comprender mejor estas afirmaciones se presenta el siguiente caso:

Un distribuidor de productos de computación tiene en stock 6 plaquetas de memoria de 2G y de 28 hs


para armar modelos de PC para venta directa para el inicio de clases. Tiene experiencia anterior y sabe
que los modelos más vendidos son el de 4G y el de 8G, además que tiene stock de los más baratos.
Armar un modelo de 8G le lleva 2 plaquetas y 7 horas del tiempo disponible, mientras que el de 2G lleva
una sola plaqueta pero compensa el costo agregando una unidad extra de DVD, por lo que le insume 8hs
del tiempo disponible. Con el modelo 8G gana $120 y con el 4G gana $80.
¿Cuantas PC debe fabricar si desea maximizar sus ganancias?

El modelo lineal de este caso es, llamando G1 al modelo de 4G y G2 al otro:


Z  80G1  120G2  max
sujeto a
G1  2G2  6
8G1  7G2  28
G1 , G2  0, entero
El requisito de entero es evidente, ya que es difícil suponer que se puedan vender unidades sin
terminar.

La solución gráfica del caso se obtiene como en el caso anterior, haciendo igualdades con las
desigualdades y graficando el área de soluciones factibles. La única diferencia es que en este caso se
señalan los puntos de intersección de números enteros, con letras minúsculas para diferenciarlos de los
vértices que están con mayúsculas.

35
Se resuelve como fue resuelto el problema de los alcoholes analizando cada vértice y calculando Z en
cada uno de ellos.

vértice G1 G2 Z Obs
A 0 0 0 Solución trivial
B 0 3 360 Subóptimo
C 1,555 2,222 391 Óptimo “relajado”
D 4 0 320 Subóptimo

Se emplea la expresión “relajado” en el sentido que se obvia la restricción de números enteros.

La primera intención podría ser redondear 1,5 a 2 y 2,22 también a 2. Si se observa el gráfico, el punto
de coordenadas (2;2) es el marcado como “n” y no está dentro del espacio de soluciones factibles, por
lo cual habría que optar por “m” o “j”.

Para seguir un método se construye una tabla con los valores de cada uno de los planes de producción,
donde no se incluyen los puntos “h”, “l”, “i”, “e”, “f” y “g”, para dar más claridad al concepto.

vértice G1 G2 Z Obs
A 0 0 0 Solución trivial
B 0 3 360 Optimo
C 1,555 2,222 391 Óptimo “relajado”
D 4 0 320 Subóptimo
m 1 2 320 Subóptimo
j 2 1 280 Subóptimo
k 3 1 360 óptimo

Como se ve, los puntos de operación óptimos son fabricar 3 unidades de G2 o 3 de G1 más una de G2 y
ambos están sobre alguna de las rectas de las restricciones.

En realidad, para construir un algoritmo capaz de resolver este problema se debería prever que se
examinaran todas las soluciones del espacio de soluciones factibles que sean combinaciones de valores
enteros paras las variables de decisión, ya que es fácil deducir que a priori es imposible saber si el
óptimo está cerca del optimo hallado como vértice no entero – digamos, el punto m en el caso analizado
o mucho más lejos, en otro vértice, en e caso analizado.

Se advierte que es necesario establecer un método de examen: primero saber cuales son todas las
soluciones enteras posibles y luego identificar aquella o aquellas que dan un valor en el funcional mejor
(el máximo o el mínimo valor)

Un método sería enumerar todos los valores posibles de G1 y, para cada uno de ellos, enumerar los 3
valores posibles de G2, lo que hace un total de 20 combinaciones. Representándolo gráficamente:

36
La fila inferior da los posibles pares (x;y), de los cuales deben descartarse algunos que no están en el
área de soluciones factibles (nodos sombreados)

Si ahora se considera que se examina un problema con 10 variables, cada una de las cuales está
restringida entre 0 y 9 con valores enteros, entonces habrá que examinar 10.000.0000.000 nodos para
hallar la solución.

Si en lugar de hacer ese procedimiento, que es poco práctico, se examinan cada uno de los nodos que se
dibujaron se ve la siguiente singularidad: (para mejor comprender, se numera cada nodo)

Si se toma un nodo cualquiera, supóngase el nodo 4, allí la variable G1 asumió el valor de 3, por lo cual
se podría plantear un problema de programación lineal, común, sin la restricción de números enteros
aplicado a ese nodo.

Z  80  3  120G 2  max
sujeto a
3  2G 2  6
8  3  7G 2  28
G1 , G 2  0
Por lo tanto se propone reemplazar cada nodo con un problema de programación lineal a variable no
negativa continua y reemplazando cada variable por el valor que asume en cada nodo.

Para hallar un método de solución se comienza con analizar el resultado del nodo cero, sin la restricción
entera:

Z  80G1  120G 2  max


sujeto a
G1  2G 2  6
8G1  7G 2  28
G1 , G 2  0
En WinQSB7 se obtiene que G1 es 1,5556 y G2 = 2,2222 para un valor Z = 391,1111.

Supóngase ahora que se establece para G1 un valor fijo superior al óptimo, por ejemplo G1 = 3 y se
intenta resolver el problema:

7
Ver Capítulo 4 “Resolución de modelos de programación lineal en PC”

37
Z  80  3  120G2  max
sujeto a
3  2G2  6
8  3  7G2  28
G1 , G2  0
Se obtiene que G2 vale 2 para G1 = 3, lo cual está por encima de los valores hallados como máximo
irrestricto en enteros (1,556; 2,222), por lo tanto ese problema no es factible. Por tanto el nodo 4 no es
factible y todos los nodos por debajo de él serán no factibles (incluyendo el 18). Lo mismo va a ocurrir
con los nodos a la derecha (el 5), ya que representan valores aún superiores, y por tanto, fuera del
espacio de soluciones factibles. Significa de de las posibilidades a analizar (nodos desde el 6 al 25, se
eliminan los nodos 18 al 25 inclusive ambos, lo cual reduce el espacio de búsqueda.

Queda por analizar el conjunto de los nodos 1, 2 y 3, que tienen asociados sendos problemas lineales:

NODO 1
Z  120G 2  max
sujeto a
0  2G 2  6
0  7G 2  28
G1 , G 2  0
NODO 2

Z  80  1  120G2  max
sujeto a
1  2G2  6
8  1  7G2  28
G1 , G2  0
NODO 3

Z  80  2  120G2  max
sujeto a
2  2G2  6
8  2  7G2  28
G1 , G2  0
Los resultados que se obtienen son:

G1 (FIJADO) G2 (calculado) Z
NODO 1 0 3 360
NODO 2 1 2,5 300
NODO 3 2 2 240

Se observa que el nodo uno cumple con las restricciones, incluso con las de enteros, por lo tanto los
nodos que está debajo de él se desechan, ya que no es posible obtener un resultado con Z superior. En
esta etapa se eliminan entonces los nodos 6, 7, 8 y 9.

El nodo 3 también cumple con los requisitos completos, pero el valor de la función objetivo es menor
que la del nodo uno, por tanto todos los nodos debajo de él se desechan ya que no pueden tener un
funcional mayor, así se eliminan los nodos 14, 15, 16 y 17.

38
El nodo 2 no cumple con todas las restricciones, por lo cual deberían ser analizados los nodos inferiores,
pero, al ser el funcional un valor menor que el del nodo cero también se incluye en la lista de
dominados, cosa que no ocurriría si el valor de Z fuera superior al del nodo uno. En ese caso deberían
analizarse los nodos inferiores.

Este método adquiere su verdadero valor cuando se trabaja con problemas más complejos. El algoritmo
que lo resuelve va recorriendo las ramas del esquema y acotando las soluciones posibles. Si se resuelve
con WinQSB indicando que es a variable entera, se carga como un problema normal y se resuelve
inmediatamente. Sin embargo es posible “espiar” el recorrido por las ramas y los acotamientos que el
algoritmo hace.

Vista del proceso en WinQSB (el uso de este programa se describe en el Capítulo 4):
1. Se carga el problema normalmente, indicando que las variables son enteras no negativas:

2. Se selecciona en el menú “Solve and Analyse” la opción de ver los pasos mientras se resuelve (Solve
and Display Steps), con lo cual se accede a las iteraciones una a una:

El primer paso examina el nodo cero que, como se ve, es la solución óptima no restricta en enteros. El
siguiente examina el valor de X2 cuando X1 se fija en el entero más cercano (2), que arroja un valor
fraccional

Luego se fija X2 en el entero más cercano (2) y se descubre que no es factible (ver gráfico)

39
Se fija el valor de X2 en el entero menor al anterior y se resuelve para X1, obteniéndose una solución no
entera:

Y así se van obteniendo diversas alternativas:

40
41
42
Capítulo 3
Simplex Dantzig

3.1 Fundamentos
3.2 Conversión a la forma normalizada
3.3. Modelo general
3.4 Compendio de la terminología utilizada
3.5 Desarrollo del método Simplex
3.6 Interpretación de los modelos
3.6.1 Análisis de sensibilidad o análisis post óptimo
3.6.2 Límites de variación de coeficientes del funcional
3.7 Dualidad

43
3.1 Fundamentos

C
omo fue desarrollado en los capítulos anteriores, el modelo gráfico de resolución del problema de
Alcoholes Argentinos, se obtenía según:

Modelo gráfico del planeamiento de producción de AA

Vértice x1 x2 Funcional

A 0 0 0
B 0 120 600
C 10 120 630
D 70 90 660  Es el vértice que corresponde al máximo:
Optimo
E 115 0 345

Para encontrar esta solución óptima existen dos alternativas:

 Trazando sucesivas rectas que representen el funcional hasta dar con la que pasa por un punto
extremo y brinda el máximo valor. Esta alternativa no podría realizarse si se tuvieran más de
tres variables.
 Enumerando los puntos extremos del área de soluciones factibles encontrando el valor de x1 y
de x2 para cada uno de ellos, calculando luego el valor de la función objetivo en cada punto y
seleccionando el valor máximo encontrado (como se ve en la Tabla de arriba)

La última alternativa puede escribirse de manera genérica desarrollándola como un algoritmo que
permita examinar cada uno de los puntos extremos (vértices) del área de soluciones factibles:

- Determinar un punto inicial para el análisis.


- Calcular del valor del funcional en ese punto.
- Examinar los puntos vecinos inmediatos y calcular el funcional en cada uno de ellos.
- ¿Existe un valor mejor en alguno de ellos? Si la respuesta es SI, reemplazar ese punto por el
actual e ir al paso 3. Si la respuesta es NO el punto actual es la solución óptima.

44
Diagrama de flujo del algoritmo de búsqueda de vértices óptimos.
Observe que este algoritmo se presenta para un caso particular en que el problema es maximizante y en
el que las restricciones se plantean en su condición de igualdad. Puede generalizarse diciendo que esa
es la forma normal de presentación del algoritmo:

 Los valores del lado derecho de las restricciones son no negativos


 Las restricciones son igualdades
 Las variables son no negativas

Los problemas podrán, entonces ser convertidos a la forma normal equivalente, teniendo en cuenta que
todo lo que pueda pertenecer a una forma pertenecerá a la forma equivalente (solución, factibilidad,
cotas, etc.)

3.2 Conversión a la forma normalizada

3.2.1 Desigualdades Tipo I


Para convertir las restricciones en igualdades el método es introducir una nueva variable, llamada
“variable de ajuste”, “variable de exceso”, “variable slack”, que se interpreta como “lo que falta para
llegar al criterio” cuando la restricción es del tipo (≤) y convertirla en igualdad. Así, la restricción 1
original:
2 x1 + x2 ≤ 230
Se convierte en igualdad:
2 x1 + x2 + S1 = 230
En la cual, S1 asumirá el valor necesario para que la ecuación se iguale a 230 para cada uno de los
valores que se asignen a x1 y x2.

Esto se logra siempre que se cumpla con la condición de que las variables (x 1, x2 y ahora la nueva S1 )
sean no negativas.

3.2.2 Desigualdades Tipo II


En el caso que las desigualdades sean del tipo II (≥) se agregan dos nuevas variables, primero la de
ajuste, que ahora significa “lo que sobra del criterio”, por ejemplo, una restricción hipotética:
7 x1 + 4 x2 ≥ 57
Se convierte en igualdad:
7 x1 + 4 x2 = 57 + S1
7 x1 + 4 x2 - S1 = 57
Pero en este caso cuando las variables de decisión se igualen a cero, S1 pasa a ser negativa, con lo cual
no se cumple el postulado de no negatividad.

45
Para evitar que esto ocurra, se crea una nueva variable, llamada variable artificial, destinada a asumir
un valor ficticio en esta situación:
7 x1 + 4 x2 - S1 + A1 = 57
Obsérvese que A1 no tiene sentido físico (por eso se denomina artificial) y asume un valor (57)
solamente cuando x1 y x2 son nulas, lo que lleva a que, solo en ese caso, S1 también lo sea, para evitar
ser negativa.

3.2.3 Adecuación del funcional


Cada una de las variables introducidas debe evaluarse en el funcional. En el caso de las variables de
ajuste, éstas no afectan al criterio, por lo tanto se incorporan a él con un coeficiente nulo: sea cual
fuere el valor que estas variables asuman, no interfieren en el criterio.

Por ejemplo, en el problema de los alcoholes, en el punto “A” de la solución gráfica, las variables de
decisión son nulas (no se fabrica nada), por lo tanto S1 = 230, S2 = 250 y S3 = 120. Sin embargo, el valor
de Z sigue siendo cero, porque Z es función de la cantidad de cada tipo fabricada y no de los recursos
“no utilizados”.

En el caso de las variables artificiales, éstas no tienen sentido físico, por lo tanto se busca que afecten
el funcional en forma irrelevante, lo que se logra asignándoles un coeficiente que no sea compatible con
el criterio. Así, si el problema es de maximización, deberá asignárseles un coeficiente muy chico,
negativo, que haga indeseable que la artificial sea tenida en cuenta. Si es de minimización, el
coeficiente deberá ser muy grande.

El problema de los alcoholes normalizado

Z  3x1  5 x2  0s1  0s 2  0s3  max


sujeto a :
2 x1  1x2  1s1  0s 2  0s3  230
1x1  2 x2  0s1  1s 2  0s3  250
0 x1  1x2  0s1  0s 2  1s3  120
x1  0
x2  0
s1  0
s2  0
s3  0

3.2.4 Conversión del algoritmo en forma geométrica a forma algebraica


El primer paso del desarrollo consiste en calcular cada vértice (concepto geométrico) del área factible
(concepto geométrico) mediante procedimientos algebraicos. El concepto algebraico equivalente del
vértice se denominará solución factible básica (sfb) y no es otra cosa, como ya fue visto, que la raíz del
sistema de ecuaciones que determina ese vértice. Ese sistema de ecuaciones se constituye con todas las
restricciones llevadas a igualdad que forman el vértice.

En este caso, el área de soluciones factibles y los vértices se muestran en la primera figura de este
capítulo. Debe recordarse que se acepta que, de los infinitos puntos factibles, la solución se debería
encontrar en un vértice, por lo tanto estos vértices son puntos especiales.

Para identificar una sfb se comenzará observando que en el planteo hay más variables que ecuaciones:
hay un número infinito de soluciones porque puede elegirse cualquier valor arbitrario para cualquier par
de variables: hay tres ecuaciones: restricción 1, restricción 2 y restricción 3. Hay cinco variables: x 1, x2,
s1, s2 y s3. La diferencia entre ecuaciones y variables es 2, de ahí que se puede asignar un valor
arbitrario a dos variables, por ejemplo, si se asigna un valor cualquiera, x 1 = 20 y x2 = 40 se tiene
20 + 40 + s1 = 230 entonces s1 = 140
20 + 80 + s2 = 250 entonces s2 = 200
0 + 40 + s3 = 120 entonces s3 = 80

46
Generalizando: si un programa lineal normalizado tiene n variables y m ecuaciones con n>m se podrá
construir una solución eligiendo valores arbitrarios para n  m de las variables y utilizando las m
ecuaciones con m incógnitas para encontrar los valores de las restantes variables.

Para construir una sfb se comienza por elegir n  m variables, en este caso 2 (nº de variables  nº de
ecuaciones: 5 – 3 = 2), la que se conocen como variables no básicas asignándoles el valor inicial de
cero, resolviéndose el sistema de ecuaciones remanente para hallar el valor de las restantes variables, a
las que llamaremos variables básicas: por ejemplo, si se toman s2 y s3 iguales a cero, hay que encontrar
los valores de las restantes variables x1, x2 y s1, y el sistema de ecuaciones pasa a ser

2x1 + 1x2 + 1s1 = 230


x1 + 2x2 + 0s1 = 250
0x1 + 1x2 + 0s1 = 120
En el que resulta x1 = 10, x2 = 120 y s1 = 90
Como hay varias alternativas para seleccionar variables básicas y no básicas, se muestran todas en la
siguiente tabla, indicando además en la columna llamada SFB si el par hallado corresponde o no al área
de soluciones factibles:
Vértices Variable F Obj
X1 X2 S1 S2 S3 Z SFB
A 0 0 230 250 120 0
B 0 120 110 10 0 600
C 10 120 90 0 0 630 SI
D 70 90 0 0 30 660
E 115 0 0 135 120 345
H 250 0 -270 0 120 750
I 0 125 105 0 -5 625 NO
J 0 230 0 -210 -110 1150

Como se puede ver cada solución factible básica corresponde a uno de los vértices de la solución gráfica

Coordenadas de los vértices.


Este método requiere examinar todas las soluciones factibles básicas hasta encontrar la mejor, de la
misma manera que en el modo gráfico había que examinar cada uno de los vértices, lo cual es muy
complicado en caso de problemas con varias variables y restricciones. Si en un problema existen m
restricciones de igualdad y n variables, para generar una solución básica hay que elegir n  m variables
no básicas cuyos valores se toman como cero, quedando la cantidad m representando a las variables
básicas cuyos valores se encuentran resolviendo m ecuaciones con m incógnitas.

Por ejemplo, si se tienen m = 10 restricciones y n = 20 variables


las variables básicas a elegir serán n  m = 20  10 = 10
y quedarán 10 ecuaciones con 10 incógnitas a resolver. El número de soluciones básicas será

47
n! 20!
  184756.
(n  m)!m! 10! 10!
Con lo que se demuestra que el número de soluciones a analizar puede ser grande, aunque finito.

El algoritmo geométrico para examinar esas soluciones finitas es el siguiente:

La conversión a algoritmo algebraico es la siguiente:


1. INICIO
2. COMPROBACIÓN DE ÓPTIMO
Volviendo a la figura, se tomará cualquier vértice y se tratará de efectuar un traslado a un vértice
vecino:

Coordenadas de los vértices. Los recuadros indican variables básicas


Por ejemplo para ir del vértice A al B, hubo que cambiar una variable básica (s3) por una no básica (x2)

48
Para ir de A a C salió s2 de las básicas e ingresó en su lugar x1.

Para ir de C a D, sale s1 e ingresa a la base s3, nuevamente


Cerrando el ciclo, de D a E sale x2 e ingresa s2.

Como se ve, si se considera la situación desde un vértice dado cualquiera, vértice actual, el examinar
vértices adyacentes implica cambiar una variable. En cada vértice todas las variables no básicas valen
cero, para convertir esa variable en básica debe cambiarse el cero por un valor positivo.

Sin embargo resulta muy costoso examinar cada uno de los vértices adyacentes, ya que si hay m
restricciones y n variables van a existir n  m vértices factibles adyacentes para cada vértice con
solución factible (que es el número de variables no básicas). Para examinar estos vértices hay que
cambiar el valor de una básica dejando las demás variables fijas, registrar el valor y examinar otra,
hasta encontrar aquella que cumple el requisito.

Como alternativa menos costosa se dispone de un método para examinar los vértices adyacentes.
Así es posible definir un costo de cambio o costo reducido o costo de oportunidad, que se define así:

Costo de oportunidad es el cambio en el valor de la función objetivo por unidad de aumento de la


variable no básica8. Dicho en otros términos: en qué medida mejoraría Z si se decide introducir la
variable no básica examinada en la base y, por lo tanto, darle un valor diferente al cero que en ese
momento tienen por ser NO-BÁSICAS.

De esta manera, si el costo reducido es positivo, significa que la función objetivo será mayor cuando la
variable no básica pase a la base. Un costo reducido negativo indicará un valor para el funcional menor
en las mismas circunstancias.

Paralelamente, cuando se decide incrementar el valor de la variable no básica haciéndola básica, cada
una de las variables de la base comienzan a modificar su valor. Una de ellas será la primera en hacerse
nula: esa es la que pasó a la base en lugar de la que está entrando

Ejemplo intuitivo: en el problema de los alcoholes, en el vértice A, tenemos tres variables básicas: S 1,
S2 y S3 y dos variables no básicas o nulas (x1 y x2). Significa “no se produce y sobran todos los
recursos”. Ahora se decide producir y solamente se observa la función objetivo: allí se ve que el mayor
cambio en la ganancia es producir x2, ya que el Z aumenta en 5 $ por unidad fabricada. La decisión es
ingresar x2 a la base. Pero, cuando se comienza a fabricar también comienzan a gastarse los recursos
disponibles. ¿cuál se gastará primero? (se hará cero)

8
Podría llegar a confundirse el costo de oportunidad o costo reducido con el precio sombra. Debe tenerse en cuenta
que si bien ambos indican variación del funcional por unidad de cambio de lo que se examina, son conceptualmente
diferentes: el precio sombra es la variación del funcional cuando varía en una unidad el recurso (valor del lado derecho)
o un coeficiente del funcional (c j), mientras que el costo de oportunidad es la variación del funcional cuando a una
variable no – básica asuma valores por haber ingresado a la base. En este caso, ese valor por unidad asumida, se
aplica siempre a una variable (de decisión o slack) y nunca directamente a un valor del lado derecho, o recurso, que,
en todo caso son constantes que podrían cambiar de valor y no variables que estando en cero pueden asumir un valor
superior.

49
Es evidente que el valor que primero se alcanza es x2 = 120 (después sigue 125 y 230). Por tanto será S3
la primera variable básica que se haga nula: no sobra nada del recurso “demanda del alcohol 2”

Con estos conceptos se replantea el paso 2 del algoritmo, agregando estos dos puntos

2.1-Calcular el costo reducido de cada variables no básica


2.2-Si todos los costos reducidos son  0 entonces el vértice actual es el óptimo. Caso contrario
ir al paso 3.
3. CAMBIO DE VÉRTICE
Si bien es cierto que puede elegirse cualquier variable no básica con costo reducido positivo,
en general se utiliza aquella que tiene el costo reducido más grande (pendiente mayor).
3.1-Con la regla de la pendiente mayor, seleccionar la variable a ingresar a la base.
3.2-Identificar la variable que sale de la base (o valor básico que más rápidamente se hará
nulo cuando la variable a ingresar comience a incrementar su valor desde cero)
3.3-Crear una nueva solución factible intercambiando las variables seleccionadas y
recalculando el valor de todas las variables.
3.4-Ir al paso 2

En resumen el algoritmo completo queda así:

1. INICIO
2. COMPROBACIÓN DE ÓPTIMO
2.1. Calcular el costo reducido o de oportunidad de cada variables no básica
2.2. Si todos los costos reducidos son  0 entonces el vértice actual es el óptimo, ir al paso 4. Caso
contrario ir al paso 3.
3. CAMBIO DE VÉRTICE
3.1. Con la regla de la pendiente mayor, seleccionar la variable a ingresar a la base.
3.2. Identificar la variable que sale de la base (o valor básico que más rápidamente se hará nulo
cuando la variable a ingresar comience a incrementar su valor desde cero)
3.3. Crear una nueva solución factible intercambiando las variables seleccionadas y recalculando
el valor de todas las variables.
3.4. Ir al paso 2
FIN. Presentar las coordenadas del vértice actual como los valores de la solución del problema

3.2.5 Enfoque formal.


Esta sección ahonda en el algoritmo Simplex desde una presentación formal.

Para mayor claridad hemos de repetir muchos conceptos, lo cual es necesario para adaptarlos a la
propuesta.

Los fundamentos matemáticos del método deben buscarse en textos que escapan a los alcances de esta
publicación. Particularmente interesante es conocer el método de Gauss-Jordan9 para resolver matrices.

3.3 Modelo general


La expresión generalizada del modelo es

Optimizar
Z = c1x1 + c2x2 + ...+ cnxn
Sujeto a:
a11x1 + a12x2 + ... a1nxn = b1
a21x1 + a22x2 + ... a2nxn = b2
...
am1x1 + am2x2 + ... amnxn = bm

Con xj  0 j  0 j = 1, 2, ..., n

O alternativamente

9
En matemática, la eliminación Gaussiana o eliminación de Gauss-Jordan, llamada así debido a Carl Friedrich
Gauss (1777-1855) y Wilhem Jordan (1842 – 1899) es un algoritmo del álgebra lineal para determinar las soluciones de
un sistema de ecuaciones lineales, encontrar matrices e inversas. Cuando se aplica este proceso, la matriz resultante
se conoce como: "forma escalonada”.

50
Optimizar
n
Z   cjxj
j 1
Sujeto a:
m n

 a
i 1 j 1
ij x j  bi

i  1,2,..., m
j  1,2,..., n

O, en forma matricial

Optimizar z = cx
Sujeto a: Ax <=> b para x  0, donde A es una matriz de m x n

3.4 Compendio de la Terminología utilizada


Variable de decisión: Conjunto de variables cuya magnitud se desea determinar (xj). En todo modelo
hay n variables de decisión que forman un vector fila.
Restricciones: Conjunto de desigualdades limitantes de los valores de xj . En todo modelo hay m
restricciones.
Función Objetivo. Funcional. (Z) es la función matemática que expresa la relación de variables a
optimizar (política) y señala el criterio (objetivo) con el cual se enunció la política.
Criterio: objetivo del modelo propuesto
Condición de linealidad: Se expresa para las funciones matemáticas que intervienen en el problema.
Tipo de restricción. Desigualdades o igualdades limitantes: (,  o =.)
Condición de no negatividad: todas las variables de decisión deben ser no negativas (xj  0)
Vector de coeficientes del funcional: es el vector construido con el renglón cj . [c1 , c2 ,...,cn 

La longitud del vector es coincidente con la del de variables de decisión (n)


Vector de disponibilidades (recursos): es el vector columna b, bi .[b1, b2, … bn ] También se llama
vector de términos independientes, o vector de valores del lado derecho. Longitud coincidente con el
número de restricciones (m)
 b1 
b 
b  bi   2 
 ... 
 
bm 
Matriz de coeficientes tecnológicos: es la matriz de los términos aij :
 a11 ... a1n 
a ... a 2 n 
A  aij   21
 ... ... ... 
 
a m1 ... a mn 
El tamaño de A es de m x n.
Solución Factible: valores de las variables de decisión que satisfacen todas las restricciones
Solución óptima: Solución factible que optimiza el funcional (alcanza el objetivo, satisface el criterio).

3.5 Desarrollo del método Simplex – Dantzig


Como ya fue señalado, el algoritmo Simplex, creado por el matemático norteamericano George Bernard
Dantzig en 1947, es la técnica usual para dar soluciones numéricas del problema de la programación
lineal. Para explicar el algoritmo se trabajará sobre el problema de Alcoholes.

El primer paso es el planteo del modelo en la forma normalizada ya vista, agregando todas las variables
de ajuste y artificiales que sean necesarias.

Queda de esta manera:

51
Z  3x1  5 x2  0s1  0s 2  0s3  max
sujeto a :
2 x1  1x2  1s1  0s 2  0s3  230
1x1  2 x2  0s1  1s 2  0s3  250
0 x1  1x2  0s1  0s 2  1s3  120
x1  0
x2  0
s1  0
s2  0
s3  0
Con todos los elementos se construye la primera tabla del Simplex, la que constituirá la primera
solución o solución trivial:

Cj 3 5 0 0 0
Ck Xk B X1 X2 S1 S2 S3 Φk
0 S1 230 2 1 1 0 0
0 S2 250 1 2 0 1 0
0 S3 120 0 1 0 0 1
zj
c j – Zj

Como se ve, se incorporan los coeficientes del funcional (cj) en la primera fila y se construyen, dentro
de la tabla, dos matrices, la de coeficientes tecnológicos (aij) y una matriz unidad a partir de la
incorporación de las variables de ajuste (Sj).

Esta matriz unidad es la que determina la estructura de la base (Columnas de coeficientes ck y de


variables que la constituyen (Xk)), ya que cada elemento unitario de la columna correspondiente señala
la variable (Xk) y su coefiente (Ck) que se escriben en la base (lado izquierdo) copiados de lo que se lee
en el encabezado de esa columna.

En esta primera tabla, el vector columna B está completado por los valores del lado derecho que –
simultáneamente – son los valores que asumen las variables básicas, como ya fue visto.

Por lo tanto, esta primera matriz ya es una solución al problema, ya que el valor que asumen todas y
cada una de las variables es: x1 = 0; x2 = 0; s1 = 230; s2 = 250 y s3 = 120 y un valor del funcional Z = 0. La
decisión es no fabricar nada, sobran todos los recursos.

La evolución del algoritmo a partir de esta primera solución (trivial) se basa en que se debe determinar
si existe la posibilidad de que, al incorporar una variable no básica a la base se mejore el valor de Z en
el sentido del criterio fijado (maximizar, en este ejemplo). Esto significa explorar los vértices
adyacentes para verificar si alguno mejora la situación. Si hay más de uno se optará por el que más
aumento del funcional brinde.

Para ello se averigua cual es la contribución de las variables básicas a cada una de las variables del
problema y a Z.

En el renglón Zj, debajo de cada variable se evalúa la contribución de esa variable en el valor del
funcional en interacción con las variables básicas.

En la primera columna, B, aparece directamente el cálculo del funcional: la suma de los productos de
cada uno de los coeficientes de las variables básicas (ck) con el valor que éstas asumen en la solución
hallada (bk). (Las no básicas no contribuyen, su valor siempre es cero).

Hecho este cálculo, la primera tabla se va a completar en el renglón Z j haciendo la suma de los
productos ck * ai. para cada j constante: así se encuentra

52
230 x 0 + 250 x 0 + 120 x 0 = 0 en la columna B

2 x 0 + 1 x 0 + 0 x 0 = 0 en la X1 y así sucesivamente.

Cj 3 5 0 0 0
Ck Xk B X1 X2 S1 S2 S3 Φk
0 S1 230 2 1 1 0 0
0 S2 250 1 2 0 1 0
0 S3 120 0 1 0 0 1
zj 0 0 0 0 0 0
C j – Zj

El significado de esta fila es importante y se desarrolla con más detenimiento en la última tabla. Sin
embargo observe el lector en esta tabla: el cero que aparece en la columna “B” indica el valor del
funcional en esta solución. Ya se había señalado que dicho valor es nulo: al ser la solución trivial no se
está produciendo nada de x1 y x2.

El cero en la columna “X1” indica cuánto aporta en esta solución una unidad de X1. Obviamente no
aporta nada, pues se mantiene el resultado en cero: el aporte de X 1 a la solución cero es cero. Lo mismo
que X2. Sin embargo, el aporte de S1, S2 y S3, que están en la base podría ser numérico, aunque,
obviamente también es cero en este caso: los recursos sobrantes no aportan a la ganancia de
producción. Se volverá sobre el tema.

El siguiente paso es evaluar el vector rotulado c j – Zj que se denomina vector de costos de oportunidad.
Este valor determina el cambio que se registraría en el funcional por la incorporación de una unidad
para cada una de las variables no básicas. Examina la solución hallada con una posible nueva solución
que se obtendría incorporando la variable que rotula la columna.

El razonamiento es: “estamos produciendo esto (en este caso, nada), ¿que pasaría si producimos una
unidad de X1 O una de X2? (las dos que hasta ahora no están en la base)”

Por ejemplo, si se decide incorporar la variable X1, ya es sabido que por cada mil litros de alcohol Tipo 1
que se fabrican se obtienen 3 $. Este valor se compara con el obtenido en esta solución: 3 – 0 = 3.

Esto se traduce en estos términos: si en vez de la solución actual (en este caso: no fabricar nada) se
decidiera fabricar alcohol tipo 1, se ganarían 3 $ por cada unidad fabricada por encima de la situación
actual (0).

Este valor es el “costo de oportunidad de fabricar X1”. Si el valor fuera nulo, se debería a que está ya
en la base (que no es el caso) o que no interesa fabricarlo, si fuera negativo es que si se fabricara se
perderían ganancias.

La tabla se completa con los costos de oportunidad calculados para cada variable. Obsérvese que el
costo de oportunidad de las variables que están en la base es cero, por lo tanto inferimos que los costos
de oportunidad significativos son aquellos que corresponden a las variables que están en las columnas de
la matriz de coeficientes tecnológicos, ya que se evalúa la oportunidad de incluir otra variable en la
base.

Lo siguiente será evaluar todos los costos de oportunidad. Si hay valores positivos (negativos en caso de
minimización) significa que hay soluciones mejores a la encontrada. Si todos son nulos o menores que
cero, es que no hay mejora posible y la solución hallada es la óptima.

Cj 3 5 0 0 0
Ck Xk B X1 X2 S1 S2 S3 Φk
0 S1 230 2 1 1 0 0
0 S2 250 1 2 0 1 0
0 S3 120 0 1 0 0 1
zj 0 0 0 0 0 0
C j – Zj 3 5 0 0 0

Como en este caso aparecen 3 y 5, es evidente que hay soluciones mejores, y que si se incorpora X2 a la
base se obtienen 5 $ por unidad, mientras que X1 da $3. En términos prácticos, como ya fue dicho, se
tomaría también la misma decisión: se fabricará alcohol 2, que es el que más ganancia da.

53
Se ha determinado, entonces, que la candidata a entrar en la base es X2, ya que se obtendrá 5$ por
unidad de fabricación. Ahora: si se comienza a fabricar x 1 se comienzan a gastar recursos y disminuyen
los sobrantes sj , entonces, ¿Cuántas unidades se deben fabricar antes que alguno de esos “sobrantes” se
acaba – se haga igual a cero- ?

Es equivalente a preguntarse ¿Qué variable se debe sacar de la base (hacer igual a cero) para que la
candidata (actualmente cero) entre (se haga distinta de cero)?

O, dicho en otros términos: cuánto puedo crecer el valor de X2 antes de que se haga nulo el valor de una
de las variables S1, S2 o S3

En términos gráficos, la solución hallada está en el vértice A. Se ha decidido evolucionar hasta el B,


pero aún no se sabe hasta donde se puede ir. Es evidente – gráficamente hablando – que solo se podrá
avanzar hasta llegar al límite impuesto por la restricción de demanda (X 2 = 120). El segundo recurso a
“agotar” sería encontrado en el punto prohibido) (0; 125) y el tercero en el punto (0; 230). Los tres
valores (120, 125 y 230) que están en la base.

Debe observarse que también se podría haber optado por “ir” al punto E, pero con un costo de
oportunidad menor, 3.

En términos analíticos, al determinarse la candidata a entrar a la base, deberá averiguarse como se


afectan los recursos cuando se toma la decisión de fabricar X2 y cual de ellos se agota primero (en la
figura, es evidente que el recurso demanda de X2 es limitante). En la columna Φk se colocan los valores
de la tasa de “agotamiento” de la solución en función de la utilización de una nueva variable, que antes
se había fijado en cero:

k = bk / ahk

donde k es el nombre de la fila que contiene la variable analizada (la que podría llegar a salir)
h es el nombre de la columna que contiene la variable candidata a entrar a la base.
Se opta la de menor valor k.

Cj 3 5 0 0 0
Ck Xk B X1 X2 S1 S2 S3 Φk
0 S1 230 2 1 1 0 0 230/1=230
0 S2 250 1 2 0 1 0 250/2=125
0 S3 120 0 1 0 0 1 120/1=120
zj 0 0 0 0 0 0
C j – Zj 3 5 0 0 0

54
Se interpreta de la siguiente manera: Si se decidiera comenzar a fabricar X 2 se obtendrá una ganancia
de 5$ por unidad de producción y se podrá producir hasta que se agote el recurso señalado por S 3
(Recurso limitante). En este caso: si se decide fabricar X 2 se podrá hacer hasta saturar la capacidad de
demanda del mercado para el alcohol 2.

Se tiene entonces, una candidata a entrar (X2) y una a salir (S3). La celda intersección de la fila de la
que sale y la columna de la que entra se denomina “punto pivote”.
Cj 3 5 0 0 0
Ck Xk B X1 X2 S1 S2 S3 Φk
0 S1 230 2 1 1 0 0 230
0 S2 250 1 2 0 1 0 125
0 S3 120 0 1 0 0 1 120
zj 0 0 0 0 0 0
Cj – Zj 3 5 0 0 0

La siguiente tabla será construida aplicando la transformación de Gauss – Jordan, trabajando a partir del
punto pivote:

La fila del punto pivote se transcribe a la nueva tabla copiando cada elemento de la vieja tabla dividido
por el valor del punto pivote (en el caso del ejemplo, todos los elementos se dividen por uno)
Cada celda aij restante se transforma de la siguiente manera:

AC
B'  B 
P
donde B’ es el nuevo valor de aij en la tabla en construcción, B es el valor en la tabla original y A y C son
los elementos ortogonales de B y P, también en la original. Un caso particular es el vector columna de la
entrante, en el cual P = C y A = B, lo que asegura que ese vector se completa con ceros, excepto el
elemento donde estaba el pivote, que pasa a ser – en el ejemplo - uno, constituyendo así una parte de
la matriz unidad.

Punto Pivote

Por último falta incluir el nombre de las variables básicas (Xk y su correspondiente coeficiente ck), para
lo cual se seguirá el criterio inicial:

 identificar la matriz unidad


 para cada columna colocar en el xk de la fila donde está el uno, el nombre de la columna dónde
está ese mismo uno

La siguiente tabla, será:

Cj 3 5 0 0 0
Ck Xk B X1 X2 S1 S2 S3 Φk
0 S1 110 2 0 1 0 -1 110/2=55
0 S2 10 1 0 0 1 -2 10/1=10
5 X2 120 0 1 0 0 1 120/0=M
zj 600 0 5 0 0 5
C j – Zj 3 0 0 0 -5

55
El nuevo punto pivote corresponde a la entrada de X1 y la salida de S2. Otra vez es un uno. Esta solución
corresponde a la ganancia (600) obtenida al producir según el punto B. El algoritmo, ahora, propone
evolucionar hasta el punto C (fabricar todo lo que se pueda de X 1 mientras alcancen los recursos y
mantener los 120.000 l de x2.

La tercera tabla será:


Cj 3 5 0 0 0
Ck Xk B X1 X2 S1 S2 S3 Φk
0 S1 90 0 0 1 -2 3 90/3=30
3 X1 10 1 0 0 1 -2 N/A
5 X2 120 0 1 0 0 1 120/1120
zj 630 3 5 0 3 -1
C j – Zj 0 0 0 -3 1

Se observa que aún hay costos de oportunidad positivos, por lo cual deberá entrar en la base S 3 y salir
S1. (Los valores Φk negativos no se tienen en cuenta). El punto pivote es ahora el valor 3.

La cuarta tabla será:


Cj 3 5 0 0 0
Ck Xk B X1 X2 S1 S2 S3 Φk
0 S3 30 0 0 1/3 -2/3 1
3 X1 70 1 0 2/3 -1/3 0
5 X2 90 0 1 -1/3 2/3 0
zj 660 3 5 0,33 2,33 0
C j – Zj 0 0 -0,33 -2,33 0

Esta (al no haber valores no nulos positivos en el vector de costos de oportunidad) es la tabla final,
determinando que en el óptimo x1 = 70; x2 = 90; s3 = 30 y Z = 660

3.5.1 Algunas consideraciones a tener en cuenta:

Si el pivot es nulo o negativo no puede utilizarse: se trata de un caso donde el funcional crece sin
límites. El pivot debe ser siempre positivo.

Ninguna de las variables básicas xk puede ser cero. Para ellas cj – Zj es cero. Si hay una variable no
básica con cj – Zj = 0 se está en presencia de una solución alternativa.

Nueva restricción

Si hay al menos una restricción del tipo  0 significa que el origen no pertenece al espacio de soluciones
posibles. En este caso el método se divide en dos fases:

Volviendo al problema de ejemplo, el enunciado decía que lo máximo a producirse de X2 era 120
unidades. Si ese enunciado se cambia estableciendo que por lo menos se produzcan 120 unidades, el
modelo queda planteado de la siguiente manera:

Optimizar
Z = 3 x1 + 5x2  MAX
Sujeto a:
2 x1 + 1 x2  230
1 x1 + 2 x2  250
0 x1 + 1 x2  120
xj  0

56
Las primeras dos restricciones no se modifican, pero en la tercera al incorporar una variable slack debe
restarse:
0 x1 + 1 x2 – x6 = 120

En este caso, cuando x2 = 0 queda x6 = –120, lo cual contradice la restricción xj  0.

Esta contradicción se supera – como ya fue señalado – incorporando una nueva variable llamada variable
artificial , lo que lleva, en la solución trivial a que x1 = 0, x2 = 0 y x6 = 0 quedando entonces x7 = 120:

0 x1 + 1 x2 – x6 + x7 = 120

Siendo las dos primeras las variables de decisión, la tercera la variable slack y la cuarta y última la
variable artificial. Cuando x7 = 120 se está en el origen pero fuera del espacio de soluciones.
Cuando x7 = 0 se ha arribado al espacio de soluciones.

Recapitulando:
FASE I. Variables artificiales en la solución: significa que la evolución de la solución todavía está fuera
del espacio de soluciones.
FASE II. Variables artificiales nulas: significa que comenzó la exploración del espacio de soluciones en
busca del óptimo.

Se procede siempre con la misma transformada.


En conclusión, según la desigualdad se aplican las siguientes variables:

RESTRICCIÓN VARIABLES A INCORPORAR


 + SLACK
 – SLACK + ARTIFICIAL
= + ARTIFICIAL

En todo caso estas variables artificiales deberán incorporarse al funcional con un coeficiente que las
penalice cuando sean distintas de cero. A este coeficiente se lo llama M, que es número mayor que
cualquier otro coeficiente del modelo, de manera que M afecta totalmente el funcional. También
deberá tenerse en cuenta el signo de M:
Si Z es maximizante, M < 0
Si Z es minimizante, M > 0

Por lo tanto, el modelo se replantea quedando:


Optimizar:
Z = 3 x1 + 5 x2 + 0x3 + 0x4 + 0x5 –Mx6  MAX
Sujeto a
2 x1 + 1 x2 + x3 = 230
1 x1 + 2 x2 + + x4 = 250
0 x1 + 1 x2 – x5 + x6 = 120

3.6 Interpretación de los modelos

Resolver un modelo de programación lineal no significa solamente arribar a los resultados: la tabla de
SIMPLEX aporta rica información adicional que permite evaluar la factibilidad de los valores y conocer la
sensibilidad de las variables. La potencia del método reside en la interpretación correcta de los
resultados que el mismo brinda.

Retomando el ejemplo desarrollado para lograr la última tabla Simplex, cuyo objetivo es maximizar
beneficios, con restricciones de horas hombre en producción y envasado y en la demanda de X 2, cuyo
modelo es:

Optimizar:
Z = 3 x1 + 5 x2 + 0x3 + 0x4 + 0x5  MAX
Sujeto a

Restricción horas hombre de producción: 2 x1 + 1 x2 + x3 = 230


Restricción horas hombre de rectificado x1 + 2 x2 + + x4 = 250
Restricción de demanda 0 x1 + 0 x2 + x5 = 120
Mas las restricciones de no negatividad.
La tabla final del SIMPLEX es:

57
Cj 3 5 0 0 0
Ck Xk B X1 X2 S1 S2 S3 Φk
0 S3 30 0 0 1/3 -2/3 1
3 X1 70 1 0 2/3 -1/3 0
5 X2 90 0 1 -1/3 2/3 0
zj 660 3 5 0,33 2,33 0
Cj – Zj 0 0 -0,3 -2,33 0

que indica que la solución es:

x1 = 70
x2 = 90
S3 = 30
s2 = 0
s1 = 0
Z = 660  MAX

La primera reflexión es sobre la similitud entre el costo de oportunidad (siempre cero para las variables
básicas) de las variables no – básicas (-0,33 y -2,33 respectivamente) con el vector de valores Zj
correspondiente (0,33 y 2,33 respectivamente)

Al resolver la primera tabla se hicieron comentarios sobre lo que implica el vector “Zj” que se ampliarán
aquí.

Se había señalado que cada valor del vector, excepto el que está en la columna “Cj” es el aporte que la
variable hace a la solución. Véase:

X1, cuyo valor en el vector Zj es 3, debe leerse así: La variable X1 aporta al valor de Z con 3 unidades
por cada unidad que asume. Como esta es la tabla final y X1 está en la base, entonces el aporte de X1 es
3 unidades por unidad de X1 multiplicado por las unidades de X1, que se leen en la columna “Cj”: 70. Así
3 x 70 = 210.
X2, otra básica, aporta 5 x 90 = 450.
S3, la última básica, aporta 0 x 30 = 0

Pero, ¿Qué ocurre con las no – básicas? Como al ser no – básicas su valor es cero, el 0,33 que está debajo
de S1 y el 2,33 que está debajo de S2 debe leerse así: esta variable (cualquiera de las dos, por ejemplo
S1) no está en la base, sin embargo contribuye a la formación del valor Z en 0,33 unidades. Quiere decir
que si se aumentara S1 en una unidad, Z aumentará en 0,33 unidades y si se disminuyera S1 en una
unidad, Z disminuirá en 0,33 unidades.

Como la única manera es incrementar S1 o S2 en este punto – solución – es que aumenten los recursos a
los que esas variables señalan como sobrantes, por lo cual, la interpretación es: si aumenta una unidad
el recurso 1, entonces va a sobrar una unidad lo que provoca que S 1 aumente en uno para mantener la
igualdad. Entonces, por lo ya visto, el 0,33 representa el precio sombra del recurso producción y 2,33 el
del recurso rectificado.

Ahora bien, si se observa la tabla, pueden identificarse dos matrices:

1) Matriz Unidad: la que está conformada por las variables básicas.

xk x1 x2 S3
S3 0 0 1
X1 1 0 0
X2 0 1 0

2) Matriz de coeficientes tecnológicos: que incluye a las variables no básicas:

xk S1 S2
S3 1/3 -2/3
X1 2/3 -1/3
X2 -1/3 2/3

Si en particular se observa el vector que representa la variable S1 para el recurso producción, se


encuentra que a x1 corresponde un valor de 2/3. Esto indica que si se aumenta en una unidad el recurso
de producción, deberá aumentar en 0,67 unidades la producción de x1. 70 + 0,67 = 70.67 que son las

58
unidades de x1 producidas mientras que x2 baja su producción pues la relación entre x2 y s1 es
negativa (90 – 0,33=89,67), y además el recurso sobrante de demanda (s3) aumenta (30 + 0,3333) =
30,3333. (Ver el gráfico y analizar estos comentarios)

El tiempo horas hombre para producción es, entonces:


0,8 x 500 + 1 x 130,5 = 530,5
600  530,5 = 69,5  x3. = 69,5   x3. = – 0,5.

Finalmente el conjunto de soluciones queda:


x’1 = 70,67
x’2 = 89,67
S’3 = 30,33
S’1 = 1
S’2 = 0
Z’ = 3 x 70,67 + 5 x 89,67 = 660,33

siendo el valor original de Z 660 se calcula

Z = Z – Z’ = 660 – 660,33 = 0,3

Si se observa la fila cj – Zj en la columna S1 el valor que figura es 0,33.

Por lo tanto,
El valor cj – Zj es la cantidad en que se modifica el funcional por unidad de variación de la variable.

3.6.1 Análisis de Sensibilidad o Análisis Post Óptimo


Con el objetivo de analizar la estabilidad cualitativa de la solución hallada se realiza un análisis de
sensibilidad analítico, a partir de la última matriz del Simplex, de la misma manera en que se realizó en
forma gráfica, aunque, por supuesto, con una metodología adecuada a esta etapa.

Límites de variación de los términos independientes.


Significa saber cuáles son los valores extremos entre los cuales pueden variar las disponibilidades sin
que la solución óptima deje de ser estable.

Este análisis puede ser hecho sobre el vector que representan las variables slacks dado que éstas, a su
vez, están relacionadas cada una con un recurso, ya que representan las cantidades no cubiertas del
recurso.

Puede ocurrir, entonces, que cada una de estas variables se encuentre, en la matriz final, en una de dos
situaciones posible: a) que la slack esté en la solución y b) que la slack no esté en la solución.

a) La variable slack está en la solución

59
Sea el caso S3 = 30. Relacionada con el recurso demanda por lo que indica que sobran 30000 litros de
alcohol 2 para cubrir la demanda mínima en el óptimo. Significa que se utilizan bi – 30 = 120 – 30 = 90 kl
del recurso “satisfacer la demanda de alcohol 2”

Obviamente la posibilidad de disponer de más demanda de alcohol 2 en cualquier valor por encima de
120 no alterará la solución, porque ese recurso no altera ni restringe el modelo: la variable no está
saturada.
bi – x2  bk  
120 – 30  bk  
bk [90, 

b) La variable slack no está en la solución

Para analizar este caso se determina, en primer lugar, cuales son las variables de exceso que no están
en la base, lo que es lo mismo que decir las variables slacks que no están en la solución. Estas variables
son S1, que representa el sobrante del recurso de mano de obra de producción y S 2, que representa el
sobrante del recurso de mano de obra de rectificado. En la solución óptima ambas variables adoptaron
el mismo valor: cero.

Esto se interpreta que en el plan de producción óptimo se establece que se fabricarán 70 kl de alcohol
1, 90 kl del tipo 2 y que sobrarán recursos de demanda. En cambio los recursos de mano de obra tanto
en producción como en rectificado se usaron completamente (se agotaron).
Como ya se señaló, si S1 varía es que hubo un cambio en el recurso: por ejemplo alguien hizo 10 horas
extras y por lo tanto 230 pasó a 240 y S1 de cero a 10.

bk xk S1
30 S3 1/3
70 X1 2/3
90 X2 -1/3

Si se aumenta en una unidad el recurso producción, aumenta 1/3 el sobrante de demanda, en 2/3 la
producción de alcohol 1 (x1) y disminuye en -1/3 la producción de alcohol 2 (x2)

¿Hasta que valor puede disminuir x2? Como se están fabricando 90, es evidente que si se aumenta el
valor de S1 se disminuirá la fabricación de alcohol 2, o sea se irá descontando a los 90 de a tercios hasta
llegar a cero.

La pregunta pasa a ser ¿A cuánto hay que llevar S1 para que x2 sea igual a cero?

90 / (1/3) = 270
Significa que cuando S1 = 270 se encuentra una situación tal que:

de x1 = 70 se pasa a x’1 = 105


x2 = 90 x’2 = 0
S1 = 0 S’1 = 0

Que es una solución alternativa.

Para hacer un análisis comprensivo de todas las variables que no están en la base se utiliza el siguiente
método, fundamentado en el procedimiento que se acaba de ver.

Para cada uno de los elementos del vector bi

bi – INF  R  bi - SUP
bi
 INF  min
a ij aij  0

bi
 SUP  min
a ij aij  0

en este caso, se dispone de la siguiente base de cálculo:

60
Cj … 0 0
Ck Xk B … S1 S2
0 S3 30 … 1/3 -2/3
3 X1 70 2/3 -1/3
5 X2 90 -1/3 2/3
zj 660 … 0,33 2,33
C j – Zj … -0,33 -2,33

de la cual se obtienen las siguientes expresiones:


a) Para la columna S1:
S3 / S11 = 30 / (1/3) = 90
X1 / S12 = 70 / (2/3) = 105
X2 / S13 = 90 / (-1/3) = - 270
b) Para la columna S2:
S3 / S21 = 30 / (- 2/3) = - 45
X1 / S22 = 70 / (-1/3) = - 210
X2 / S23 = 90 / (2/3) = 135

Por lo tanto quedaron, en el primer grupo, un mínimo valor absoluto entre los positivos: 90 y un mínimo
valor absoluto entre los negativos: -270.

En el segundo grupo, un mínimo valor absoluto de los positivos, 135 y uno de los negativos: -45.

Estos valores deben operarse en los bi originales:


230 – ( - 270) = 500
230 – 90 = 140

250 – 135 = 115


250 – ( - 45) = 295
de esta manera, los recursos disponibles tienen los siguientes rangos de variabilidad sin que se
modifique la solución hallada:

140 ≤ 230 ≤ 500


115 ≤ 250 ≤ 295

con precios sombras de 0,33 y 2,33, respectivamente. (Comparar con los valores hallados en la solución
gráfica)

3.6.2 Límites de variación de Coeficientes del Funcional

La única posibilidad de analizar límites de variabilidad es utilizar las herramientas vistas y así analizar
las variables que no están en la base. Como esto sería restrictivo e impediría realizar el análisis de
sensibilidad para los coeficientes del funcional, en el caso del problema de los alcoholes y en la mayoría
de los problemas, se utilizar un recurso matemático: plantear el dual del problema.

3.7 Dualidad
El modelo mostrado al comienzo de la discusión del método Simplex se conoce como planteo Primal del
problema debido a que existe una segunda forma de plantear el mismo problema, forma a la que se
denomina Dual, que tiene las siguientes características:

1) Aporta elementos para la comprensión total del tema


2) Es una herramienta que permite, en determinados problemas, arribar con más facilidad a
soluciones que, de otra manera (con el Primal) sería muy dificultoso hallarlas.
3) El Dual aporta información e interpretaciones sobre los análisis marginales.
4) Se puede intentar resolver el Dual como alternativa al Primal si el tamaño del problema así lo
aconseja. Por ejemplo, si el Primal tiene más variables que restricciones, convendría resolver
el Dual, donde la situación se invierte.
5) Sin embargo, el Dual no es una alternativa opcional, es la única manera de hacer el análisis de
sensibilidad analítico de las variables no básicas

3.7.1 Pasos para convertir un Primal en Dual

Si el Primal es un problema de maximización, su Dual será de minimación y viceversa.

61
Los coeficientes de la función objetivo del problema Primal (cj ) serán los coeficientes del vector de
disponibilidades en el Dual (bj )

Los signos de las desigualdades de las restricciones del Primal serán contrarios en el Dual (de  pasan a 
y viceversa)

La matriz de coeficientes tecnológicos del Primal será la matriz traspuesta en el Dual. (a ij  aji , o bien
A AT)

Las variables xn del Primal se convierten en nuevas variables Ym en el Dual.

Las variables de decisión del Primal serán slacks en el Dual.

Las variables slacks del Primal serán de decisión en el Dual.

Mientras que el Primal analiza la distribución y utilización de los recursos, el Dual analiza el valor de los
mismos.

A partir del problema original en su forma Primal:

Z = 3 x1 + 5x2  MAX
Sujeto a:
2 x1 + x2  230
x1 + 2 x2  250
0 x1 + x2  120

Se establece su versión Dual, que es:

Z’ = 230 Y1 + 250 Y2 + 120 Y3  MIN


Sujeto a:
2 Y1 + 1 Y2 + 0 Y3  3
1 Y1 + 2 Y2 + 1 Y3  5
(Más las restricciones de no negatividad)

Cuya primera tabla Simplex es:

cj 230 250 120 0 0 M M k


ck Yk B Y1 Y2 Y3 S1 S2 A1 A2
M Y6 3 2 1 0 –1 0 1 0 3/2=1,5
M Y7 5 1 2 1 0 –1 0 1 5/1=5
Z 8M 3M 3M M -M -M M M
c j – Zj 230-3M 250-3M 120-M 0-(-M)=M M 0 0
Gran M -3 -3 -1 1 1 0 0

Debe señalarse que:

a) el problema tiene el criterio minimizante, por tanto los costos de oportunidad deseables serán los
más negativos;

b) el coeficiente de las variables artificiales es >0 por ser minimizante, c) el renglón “Gran M” se agrega
por compatibilidad con el programa WinQSB y su utiliza, simplificando la escritura, para escribir
solamente los coeficientes de M en los costos de oportunidad, lo que da más claridad a la tabla.

En caso de “empate”, como es el caso, se analiza en contexto: 230 < 250, por lo tanto candidata a
entrar Y1. En WinQSB se muestra la información de la siguiente manera: El costo de oportunidad que aca
se representó, por ejemplo 230-3M, se representa como 230 y la segunda parte se presenta como “big
M”: -3M:

c j – Zj 230 250 120 0 0 0 0


Big M -3 -3 -1 1 1 0 0

La siguiente tabla será:

62
cj 230 250 120 0 0 M M k
ck Yk B Y1 Y2 Y3 S1 S2 A1 A2
230 Y1 1,5 1 0,5 0 -0,5 0 0,5 0 1,5/0,5=3
M Y7 3,5 0 1,5 1 0,5 –1 -0,5 1 3,5/1,5=2,33
Z ...3.5M 230 115-1.5M M -115+0,5M -M -0,5M M
c j – Zj 0 135-1.5M 120-M 115+0,5M 0+M 1,5M-115 0
Gran M 0 -1.5 -1 -0,5 1 1,5 0

La nueva candidata a entrar es Y2 - La tercera tabla, final, es:

cj 230 250 120 0 0 M M k


ck Yk B Y1 Y2 Y3 S1 S2 A1 A2
230 Y1 0,33 1 0 -1/3 -2/3 1/3 2/3 -1/3
250 Y2 2,33 0 1 2/3 1/3 -2/3 -1/3 2/3
Z 660 230 250 90 -70 -90 70 -90
c j – Zj 0 0 30 70 90 M-70 M-90
Gran M 0 0 0 0 0 1 1

Si el problema primal era de maximización, sus variables de Dual (Ym ) son valores marginales de
utilidad de cada unidad adicional de entrada o de salida. Estas variables de dual se denominan costos de
oportunidad o precio sombra.

El vector de disponibilidad en el primal se utiliza para determinar si las variables del dual tienen
relación con el valor marginal de entrada o de salida. El valor absoluto de los coeficientes de la última
fila (cj – Zj ) indica esos valores: lo que aumenta Z por incremento unitario en la variable
correspondiente.

El análisis de sensibilidad se lleva a cabo, entonces, averiguando cuánto hay que variar S 1 y S2 para que
Y1 e Y2 sean cero:
(1/3) / (-2/3) = -0,5  para c1, originado en el vector S1
2,33 / (1/3) = 7  para c1, originado en el vector S1
(1/3) / (1/3) = 1  para c2, originado en el vector S2
2,33 / (-2/3) = 3,5  para c2, originado en el vector S2

Lo que indica que los coeficientes del funcional PRIMAL pueden variar de la siguiente manera:

Vinicial  V  cj  Vinicial +V

(3 – 0,5 = 2,5)  c1  (3 +7 = 10)


(5-3,5 = 1,5)  c2  (5+1 = 6)

2,5  c1(3)  10
1,5  c2 (5)  6

Esta operación ha completado el análisis de sensibilidad, comenzado con el primal.

63
64
Capítulo 4
Resolución de modelos de programación lineal en PC.

4.1 WinQSB
4.1.1 Cambios en un parámetro (Análisis de
sensibilidad)
4.1.2 Cambios en un parámetro fuera del rango de
variabilidad (Análisis paramétrico)
4.2 LINDO LINGO
4.2.1 Complemento sobre LINDO
4.2.1 Algunas consideraciones sobre LINGO
4.3 Planillas de cálculo Excel y Calc
4.3.1 EXCEL
4.3.2 CALC
4.3.3 Solver

65
E
n esta sección se desarrollan los principios básicos para resolver los problemas de programación lineal
utilizando los programas WinQSB10 (provisto por la asignatura), LINDO (se pueden obtener versiones de
evaluación en la internet) y planillas de cálculo OpenOffice.org versión 3 y superiores, LibreOffice y MS
Office EXCEL versiones hasta 97-2003 y 2007, 2010 y 2013.

El caso de la producción de alcoholes es el utilizado para ejemplificar el uso del software..

4.1 WinQSB11
1. En la barra de tareas de Windows, seleccionar INICIO – PROGRAMAS – WinQSB. Elija el módulo
“Programación Lineal y entera” (Linear and Integer Programming) del listado emergente:

Menú principal de WinQSB, donde se selecciona Programación Lineal y Entera


2. Cargar los datos del problema, utilizando el menú Archivo (File) y seleccionando Nuevo Problema
(New Problem) o Cargar Datos (Load Problem), si estos estaban previamente archivados.

Los datos pueden ingresarse manualmente o desde un archivo preexistente.

10
IMPORTANTE: WinQSB no puede ejecutarse en sistemas operativos MacOS, distribuciones Linux
como Ubuntu ni Windows de 64 bits, por lo cual se recomienda la instalación de una máquina virtual (por
ejemplo Oracle Virtual Box – gratuita – en la que es conveniente instalar Windows XP 32 bits). Para
detalles consulte “Optimiza – Tutoriales N° 1”
11
Desde 2010 se provee la versión 2.0 que incorpora diferencias en la presentación gráfica de algunos
módulos (no en aspectos visibles).

66
Aparecerá una pantalla de especificación del problema, donde deben ingresarse los datos básicos:
1) Nombre del problema (opcional)
2) Cantidad de variables
3) Cantidad de restricciones (sin contar las lógicas, solo las físicas)
4) Si el criterio es maximizante o minimizante
5) Tipo de variable (no negativas, continuas o enteras; binarias; irrestrictas). Téngase en cuenta
que este es un valor general, puede haber problemas con más de un tipo de variables diferente
al seleccionado en este paso. En ese caso es posible ajustar ese tipo individualmente para cada
variable, más adelante en la fase de carga.
6) Forma de ingreso de datos (hoja de cálculo o modelo matemático)

Pantalla de especificación del problema

Para la carga (o modificación de datos) debe considerarse que este programa transfiere el problema a la
forma normalizada. Esto quiere decir que al ingreso de datos no se realiza ninguna transformación: los
datos del problema se cargaron tal cual estaban en el enunciado. De todas maneras, en la solución
aparecerán las variables de exceso o las que hagan falta.

Carga de datos del problema

Los datos se cargan siguiendo una operación similar a la de una hoja de cálculo: una barra de tareas,
arriba, mostrará la celda de edición y dos botones permiten anular (X) o confirmar (√) la entrada, lo que
se puede hacer también con escape (anula) y enter o cursor, (confirman). Un doble clic en la celda de la
desigualdad provoca un cambio de sentido sucesivo en el orden <=; >=; =. También es posible limitar el
campo de variabilidad estableciendo límites inferiores y superiores a cada una de ellas, las que, por
defecto, están fijas entre 0 e infinito (M). El último renglón (Variable Type) permite, como se dijo en el
punto 5) más arriba, cambiar el tipo de cada variable.

También es posible cambiar el nombre por defecto de las variables y las restricciones mediante el menú
Edit – Variable Name o Constraint Name. Este menú sirve para variar algunos aspectos del problema:
cambiar el criterio de maximizante a minimizante, agregar o quitar variables y constantes, etc.

67
Cambio de datos en el problema: cambio de nombre de variables

3. Ejecutar el módulo:

Resolver el problema: métodos disponibles

Una vez ingresados los datos, se ejecuta el menú Resolver y Analizar (Solve and Analize). Se puede
optar por resolver directamente (Solve the Problem), resolverlo paso a paso (Solve and Display Steps),
resolverlo por método gráfico (Graphic Metod) y, además, cambiar las tolerancias.

Se describen las tres maneras de hallar la solución. En primer lugar, la solución gráfica, para el
problema de los alcoholes:

a) Método Gráfico12: cuando se selecciona esta variante del menú, aparece un cuadro de diálogo que
permite elegir los ejes de graficación, según se muestra en la figura. Por defecto se presentan los ejes
X1, como absisa (x), y X2 como ordenada (y), aunque pueden permutarse.

Selección de ejes para la representación gráfica

12
NOTA IMPORTANTE: Con la versión 1.0 de WinQSB en sistemas operativos como Windows XP o VISTA puede ser que
no se visualice el gráfico final. Esto se produce por la configuración local del sistema. En esos casos, particularmente
en el módulo “LP/IP” es conveniente – antes de abrir el programa - hacer clic con el botón derecho sobre el ícono del
módulo. Para obtener el menú emergente “Propiedades/configuración/compatibilidad” y elegir una resolución de
256 colores.

68
b) y se accede al gráfico al pulsar el botón OK

Representación gráfica del problema de los alcoholes

En la figura aparece el valor de Z óptimo y el que adoptan las variables de decisión.

C) Si, en cambio, se opta por hallar la solución paso a paso (segunda opción del menú), aparecerán
pantallas con cada una de las tablas del Simplex, quedando marcada la celda donde está el punto pivote
y titulada como “Ratio” la columna que en este trabajo se denomina Φk:

Solución del problema mostrando cada paso. Primera tabla.

en cada una de estas pantallas se dispone del menú Iteración del Simplex (Simplex Iteration) el que
permite acceder a la siguiente tabla, elegir una variable para entrar en la base, ir a la última tabla o ir
directamente a la final.

Método de resolución mostrando los pasos. Menú de iteraciones del Simplex

Si se opta por cualquiera de las variables a entrar en la opción “Choose…” se accede a una segunda
tabla donde se tiene en cuenta la variable seleccionada para el siguiente punto pivote.

d) Por último se muestra el resultado de resolver directamente el problema, usando la primera opción
del menú:

69
Resolución del problema: informe combinado

Puede ocurrir que el formato de la tabla no se vea completamente en el monitor, para ello existen
“botones” de control a fin de regular la tipografía, el ancho y el alto de columnas y filas.

Controles de formato de tabla de resultados

La tabla presentada, Fig. 37, es el informe combinado de los resultados del problema, en la cual se
reconocen tres sectores:

1. El primer sector (renglones 1 y 2 en la tabla de la figura) implica a las variables de decisión. La


columna “Solution Value” indica el valor óptimo a producir de cada una de las variables (70 (mil)
litros de A-1 y 90 (mil) litros de A-2). La columna “Unit Cost (cj)” indica el coeficiente original en el
funcional de cada una de las variables. La columna “Total Contibution” señala el producto cjxj en
cada uno de los j que entran en la solución, es la contribución al total del valor asumido por la
variable. La columna “Reduced cost”, en el caso de las variables x1 y x2, que son básicas (como
puede verse en la columna “Status”) no tiene significado, por lo que su valor aparece como cero. Si
fuera diferente a cero indicaría el sentido de evolución de la variable, que – además – no estaría en
la base.

Por último aparece un análisis de sensibilidad para los coeficientes de las variables de decisión,
indicándose el mínimo y máximo para cada una de ellas para que se mantenga la solución hallada.
Así, la ganancia de 3 para A-1 puede variar entre 2,5 y 10 sin que varíe el plan de producción y el 5
del A-2 entre 1,5 y 6.

2. El segundo sector simplemente presenta el valor de Z en el óptimo y el criterio utilizado. En este


caso es maximizante y el valor de Z = 660.

3. El tercer sector es similar al primero, pero referido a las restricciones. La columna “Left Hand
Side” aquí presenta los valores que tienen las restricciones cuando se halla el óptimo. Así, la
restricción 1 alcanza un valor de 230. La siguiente columna, “Direction”, indica el sentido de la
desigualdad y la tercera el valor original del vector de disponibilidades.

El valor alcanzado por las slacks en el óptimo aparece en la columna “Slack or Surplus”. La
restricción 1, (horas en el sector elaboración), presenta un valor cero, lo que significa que todas las
horas del departamento están utilizadas: no hay holgura. Lo mismo en rectificado (restricción 2). El
valor de 30 para la restricción 3 indica que hay una subocupación del recurso: se está produciendo
30 mil litros por debajo de los 120 mil que son el máximo posible.

Luego aparece la columna “Shadow price”. El precio sombra es el valor del recurso involucrado en
la restricción: 0,3333 para la restricción 1 es la ganancia adicional que se obtendría incrementando
en una hora el tiempo de elaboración. En la restricción 2 si se incrementa en 1 hora el tiempo
disponible en rectificado se obtiene una ganancia de $ 2,3333 La restricción 3 indica que si se
incrementa la demanda encima de 120 no se obtiene ganancia adicional. (Observe que la solución
está debajo del límite de 120).

70
Por último se presenta el análisis de sensibilidad del vector de disponibilidades (o restricciones en
el lado derecho), así la disponibilidad –agotada– de 230 horas en el sector producción puede variar
desde 140 hasta 500 sin que cambie la solución óptima hallada en el sentido que es la intersección
entre las restricciones 1 y 2, pero sí variando el plan de producción y la ganancia obtenida.

Es posible acceder a otras formas de ver estos informes mediante el menú Resultados (Results):

Otras presentaciones de los resultados del problema (el problema tiene que estar resuelto)

Las pantallas que se obtienen en cada caso son:

a) Sumario de la solución, solamente los valores finales y coeficientes de las variables de decisión:

Informe sumario

b) Análisis de sensibilidad de los coeficientes del funcional y del vector de disponibilidades, informe
combinado. Presenta los mínimos, máximos, actuales de cada elemento por separado o como ya fue
mostrado. (Este tema se discutirá más adelante, en este mismo capítulo).

c) Análisis paramétrico, que permite ver un análisis de los coeficientes del funcional y otro para el
vector de disponibilidades. (Este tema se discutirá más adelante, en este mismo capítulo).

Pantalla de selección del análisis paramétrico


El análisis paramétrico evalúa la manera en que cambia el valor de la función objetivo cuando se
modifican los coeficientes del funcional (cj) o el vector de disponibilidades (bi) aún más allá de los
límites mínimos y máximos indicados más arriba, cuando se discutió el informe combinado. Si se llama C
al vector de los coeficientes cj, se llamará C’ al vector de dirección de perturbaciones de dichos
coeficientes, lo mismo para B y B’. Si se considera que existe un
expresar una nueva función objetivo como
x

71
siendo x el vector de variables de decisión. Se encontrará un nuevo conjunto de valores del lado
ar una dirección de perturbaciones
para que el programa efectúe el análisis.

También se puede elegir cada uno de los coeficientes o cada uno de los valores del lado derecho. Sea,
por ejemplo, el ya visto análisis paramétrico de la primera restricción. (este tema se discutirá más
adelante, en este mismo capítulo).

Tabla de análisis paramétrico de la restricción 1

Gráfico del análisis paramétrico (Diagrama transaccional)

Estos resultados se obtienen si se encuentra primero la solución y luego se realiza el análisis


paramétrico con lo que es posible acceder al menú correspondiente:

72
Menú de análisis de resultados

Complementos útiles

Uno de los aspectos del programa es que existe la posibilidad de ver o cargar el problema en forma
normalizada, que se obtiene mediante el menú Formato (Format) ANTES de resolver el problema,

Problema de los alcoholes presentado en forma normal


o la posibilidad de convertirlo a Dual, con el mismo menú y en la misma oportunidad.

Dual del problema de los alcoholes


Como ejercicio, encontrar las matrices finales Simplex del ejemplo desarrollado en el apartado anterior
cuando se discutió dualidad, usando el menú format.

4.1.1 Cambios en un parámetro (Análisis de sensibilidad)


Siguiendo lo discutido en el análisis gráfico, se presentan los resultados del análisis paramétrico que
puede realizar WinQSB, recordando uno de los agregados al problema:

Se decide disminuir el precio de venta A-1 en $ 0,25 por kl. ¿Cómo varía el plan de producción?

El margen de ganancia pasa de $ 3 a $ 2,75. La solución hallada es x 1 = 70 y x2 = 90 y se desea averiguar


que pasa con estos valores cuando el coeficiente de x1 en la función objetivo pasa de 3 a 2,75

Análisis de sensibilidad de los coeficientes del funcional

La figura muestra el valor actual del coeficiente de cada variable (“Solution Value”) y en las dos
columnas que están a la derecha se indican los valores mínimos (“Allowable Minimum”) y máximos
(“Allowable Maximum”) que esos coeficientes pueden tener sin que cambie el resultado actual de 70 y
90 para cada variable. Debe tenerse en cuenta que el resultado x 1 = 70 Y x2 = 90 no cambia pero si
cambia el margen de ganancia que se obtiene.

73
También en el análisis gráfico oportunamente presentado se habían efectuado otras preguntas, una de
las cuales era:

¿Cambia el margen de ganancia si uno de los empleados de tiempo parcial en elaboración trabaja 10 horas en lugar
de 15 por semana?

Análisis de sensibilidad del vector de disponibilidades

Observando la figura, se verá que, para cada restricción se presenta un valor actual (“Right Hand Side”)
tal como fue cargado con los datos, y un mínimo y máximo (“Allowable Minimum” y “Allowable
Maximum”, respectivamente). Más arriba se había descrito la presentación del precio sombra. Ese
precio sombra tiene valor siempre y cuando el lado derecho de las restricciones permanezca dentro de
un cierto rango, que es el que está entre los máximos y mínimos arriba mencionados:

El precio sombra de 0,3333 para la restricción 1 tiene valor mientras el tiempo de horas de elaboración
fluctúe entre 140 y 500. (Cada hora adicional de elaboración desde la actual 230 hasta 500 incrementa
el margen de ganancia en $ 33,33. Cada hora menos de elaboración desde la actual de 230 y hasta 140
disminuye el margen de ganancia en $ 33,33).

4.1.2 Cambios en un parámetro fuera del rango de variabilidad (Análisis paramétrico)


Se accede a la opción de analizar cada restricción individualmente. En la figura se muestra la selección
de la restricción 1. Para acceder a este cuadro se selecciona el menú Result – Perform Parametric
Análisis.

Selección de la restricción a analizar.

Debe observarse cuidadosamente lo presentado en la pantalla: en la primera línea aparece el rango de


variabilidad de los valores del lado derecho, dentro de los límites ya vistos: 230 a 500, con un precio
sombra (indicado acá como pendiente) de 0,333, que produce incrementos del funcional desde los
actuales 660 (para b1 = 230) hasta 750 (para b1 = 500).

La siguiente línea, la 2, toma el tramo superior de variabilidad: los valores del lado derecho desde b 1 =
500 a infinito: la pendiente o precio sombra es cero y -por tanto- el valor de la función objetivo va de
750 a 750 (no cambia), lo que quiere decir que incrementar recursos no incrementa ganancias.

Las demás líneas, tal como fuera visto en el análisis gráfico, muestran la variabilidad de los valores del
lado derecho desde b1 = 230 a cero, en los tramos que ya el lector conoce del análisis anterior: b 1 = 230
a b1 = 140; b1 = 140 a b1 = 120 y b1 = 120 a b1 = 0. (Nótese que se presenta un tramo 0 a menos infinito,
indicado como no calculable).

74
Análisis paramétrico de la restricción 1.

Análisis paramétrico de la restricción 2

Análisis paramétrico de la restricción 3.

4.2 LINGO – LINDO


El programa LINGO es una derivación del LINDO, (ambos disponibles en la Universidad para uso en aulas
específicas), del cual se muestran pantallas correspondientes a la versión 8 para Windows, puede
obtenerse en Internet en versión de prueba. Se encuentra en la página www.lindo.com o, en el sitio de
la asignatura, www.optimiza.unlu.edu.ar.

Existe un complemento instalable en las planillas Excel que se denomina “What’sBest!” que permite
construir modelos lineales, no lineales o enteros en una planilla de manera simple y usando ecuaciones.
No es muy diferente al Solver normal.
La otra aplicación LINDO se denomina LINDO API y permite la creación de aplicaciones de optimización
escritas por el usuario.
Además hay una versión exclusiva para estudiantes, LINDO for Windows, sobre la cual se desarrollan
estos comentarios, aunque se harán algunas referencias a LINGO, fundamentalmente porque este último
es más poderoso y tiene un campo de aplicación más desarrollado.
Finalmente, la aplicación independiente para resolver problemas de optimización, actualmente se
denomina LINGO. Esta aplicación usa una sintaxis ligeramente diferente a LINDO para estudiantes, sin
embargo, esta última admite las dos maneras de expresión.

75
LINDO está orientado a programación lineal, entera, binaria, etc. y puede usarse en la mayor parte de
los temas abarcados por la asignatura, siempre que los problemas se conviertan a la forma lineal. Por
ejemplo, LINDO no tiene un módulo específico para transporte, pero pueden resolverse los problemas de
transporte.

Con el menú File – New se accede a un editor de textos donde el problema se escribe en forma directa
respetando algunas reglas sintácticas simples. El problema de los alcoholes, por ejemplo, se escribe
como se muestra en la figura:

Edición en la pantalla de ingresos del modelo

El verdadero modelo comienza con las palabras MAX o MIN, exclusivamente. Luego se escribe la función
objetivo con las constantes que pueden estar seguidas, o no, cada una de ellas, de un espacio. Luego de
la constante se escribe la correspondiente variable, que se representa como un conjunto de letras o
letras y números (XLZ, X1, C22, VARIABLE3, VAR3, etc.). Por ejemplo el funcional del problema de los
alcoholes se puede escribir de cualquiera de estas formas:
3X1+5X2 o bien 3 X1 + 5 X2 o bien 3 ALCOUNO +5ALCO2, etc.

Luego se escriben las restricciones, comenzando con la frase SUBJECT TO, las que terminan con la
palabra END.

El modelo se corre con el botón o con el menú Solve, luego de lo cual una ventana emergente
permite solicitar que se haga el análisis de sensibilidad:

Análisis de sensibilidad

y un informe de estado de la modelización resuelta:

Estado de la optimización

76
La planilla de resultados, que el programa presenta en una ventana aparte, es parecida a la que se
presenta en la siguiente figura:

Se puede observar que se denomina Dual Prices (Costos en el dual) a los precios sombra. El resto es
similar a las presentaciones ya vistas en WinQSB.

Teniendo en foco la ventana de edición del modelo es posible acceder al menú resultados (Results),
desde el cual se obtienen diferentes reportes, tal como el formato de tabla que se muestra a
continuación:

Lo que agrega al final del reporte anterior la siguiente tabla:

También es posible hacer un análisis paramétrico, para ello se accede al menú Results, Parametrics, con
lo cual se accede a un cuadro de diálogo, en el que se puede elegir la restricción a analizar, y el valor
hasta donde se analiza a partir del actual. Se obtiene una salida en texto y –
gráfico, ambas sujetas a los límites señalados. En la salida siguiente se pidió un valor tope RHS de 500,
escribiendo ese valor en la ventana RHS, que señalaba el valor actual de 230 que fue reemplazado por
500:

77
78
4.2.1 Complemento sobre LINDO

Palabras reservadas
Lindo es un Software comercial orientado casi exclusivamente a programación lineal. No está difundido
como Excel y tiene un costo considerable, sin embargo la versatilidad de plantear “coloquialmente” el
problema hace que sea una opción interesante. Se pueden obtener versiones “demo” en la página web
de la asignatura.

En la ventana de edición del modelo deben colocarse determinadas palabras a fin de indicar los
elementos estructurales del modelo, las que no se pueden usar para otro fin (por ejemplo para
denominar variables) y por ello se denominan “reservadas”. Se listan a continuación tales palabras y una
breve descripción de su uso:

¡ Se coloca en un renglón en cualquier lugar e indica que lo que sigue en ese renglón es
un comentario no ejecutable
MAX Indica que el modelo que sigue en el renglón es maximizante
MIN Idem, minimizante
TITLE Permite agregar un texto asociado al modelo de hasta 73 caracteres
SUBJECT TO Indica que todas las expresiones de los renglones siguientes son restricciones, hasta que
se encuentre una sentencia END
ST Igual que SUBJECT TO
) Indica que lo anterior al símbolo es el nombre de la restricción que sigue
+y- Operadores aritméticos válidos
>=, =, <= Operadores de restricción, si se usa < se interpreta <=
END Fin de la lista de restricciones
INT La variable indicada es binaria (0 o 1)
GIN Las variables indicadas son enteras (General Integer),(0, 1, 2, 3, …)
SLB Las variables indicadas tienen límite inferior
SUB Las variables indicadas tienen un límite superior
FREE Las variables indicadas no reconocen la restricción de no negatividad ni ninguna otra
QCP Permite declarar un modelo cuadrático

Variables
Las variables pueden escribirse en mayúsculas o minúsculas, así como los comandos. Los nombres de las
variables son de hasta ocho caracteres.

Sintaxis del modelo


El modelo debe comenzar con MAX, o max, o MIN, o min
Puede ser escrito con retornos de carro en cualquier lugar. Se muestran dos modelos idénticos:

MAX 3 C1 + 5 C2 Max
SUBJECT TO 3 C1 +
PROD) 2 C1 + C2 <= 230 5 C2 ST
RECT) C1 + 2 C2 <= 250 PROD) 2C1+C2<=230
DEM) C2 <= 120 RECT) C1+
END 2C2<=250
Dem) C2<=120 END

Archivos de Comando

Es posible generar un modelo con comandos incluidos, sea por ejemplo el siguiente que incluye en el
primer renglón la declaración de la función objetivo, en el segundo la abreviatura de subject to, en el
tercero, cuarto y quinto las restricciones, en el sexto la declaración de fin de restricciones y en el
séptimo el comando que significa resolver (GO):

MAX 3 QA1 + 5 QA2


ST
PR) 2 QA1 + QA2 <= 230
RE) QA1 + 2QA2 <= 250
DE) QA2 <= 120
END
GO

79
Esta serie de renglones debe ser escrita de la manera habitual utilizando el editor que se usó hasta acá.
Una vez escrito debe procederse al archivado con Save, usando cualquier nombre, por ejemplo
ALCOCOM.LTX.

Para esta demostración es conveniente cerrar todas las ventanas abiertas. Luego se debe seleccionar en
el menú File, el submenú TAKE COMMANDS y se observará que se carga el modelo, pero que, además, al
encontrar la sentencia GO se ejecuta y presenta el informe general.

Mediante la sentencia Load puede ser usado el mismo modelo para ensayar otros comandos, por
ejemplo, escribir comandos que permitan borrar la tercera restricción y presentar el resultado:

MAX 3 QA1 + 5 QA2


ST
PR) 2 QA1 + QA2 <= 230
RE) QA1 + 2QA2 <= 250
DE) QA2 <= 120
END
DEL DE
GO

Si luego de efectuadas las modificaciones se vuelve a guardar, se puede realizar la operación Take
commands. Deberá obtenerse la eliminación de la restricción N° 3 (QA2 <=120) y el informe estándar del
resultado del problema, igual al anterior, pues se ha eliminado una restricción que aparece en la base y
que no forma parte de las que configuran el óptimo (ver la solución gráfica del mismo problema)

Por último, se propone repetir el proceso con el fin de realizar los siguientes cambios:

MAX 3 QA1 + 5 QA2


ST
PR) 2 QA1 + QA2 <= 230
RE) QA1 + 2QA2 <= 250
DE) QA2 <= 120
TABLEAU
GO

Deberá obtenerse la tabla simplex del problema enunciado y el informe estándar del resultado.

La siguiente es una lista de algunos de los comandos disponibles:

FBR Recupera una base guardada con el comando FBS


FINS Recupera una base guardada con el comando FPUN
LEAVE Termina un texto de comando
MAX/MIN Comienza un modelo
RETR Recupera un problema guardado con SAVE
TAKE Toma un comando de un archivo de comandos
LOOK Muestra todo o parte del modelo
NONZ Muestra la solución para los valores no cero
RANGE Muestra el análisis de rango
SHOCOLUMN Muestra una columna (variable) del modelo
SOLUTION Muestra el informe normal de la solución
TABLEAU Muestra la tabla actual
DIVERT Manda la pantalla de salida a un archivo
FBS Guarda la base actual en formato LINDO
FPUN Guarda la base actual en formato MPS
SAVE Guarda el modelo actual en un archivo comprimido
SDBC Guarda la solución en formato de base de datos/columna
SMPS Guarda el modelo en formato MPS
GO Resolver el problema
PIVOT Ir a una iteración simplex
APPC Agregar una nueva columna (variable de la formulación)
DEL Borrar una restricción determinada
EXT Agrandar el problema por adición de restricciones
FREE Declara que una variable es irrestricta en su signo
SLB Establece un límite inferior a una variable
SUB Establece un límite superior a una variable
BIP Establece un límite a un modelo de programación entera

80
GIN Variable general entera (0,1,2,…)
INT Variable binaria (0, 1)
PARAMETRICS Realiza un análisis paramétrico del vector RHS
! Inserta un comentario
BATCH Indica que ejecuta por lotes
PAGE Define la longitud de la página o la pantalla
PAUSE Pausa para que se acepte una entrada por teclado
TERSE Coloca un estilo conversacional para la salida, simplificando el informe
VERB Recoloca el informe normal
WIDTH Establece el ancho de la pantalla de salidas
INVERT Invierte la base actual
STATS Muestra un resumen estadístico del modelo
TITLE establece, cambia o devuelve el título del modelo
QUIT Sale de Lindo

Listado completo de comandos:


1) INFORMACION
HELP COM LOCAL CAT TIME DATE
2) ENTRADAS
MAX MIN RETR RMPS TAKE LEAV RDBC FBR FINS
3) PRESENTACION
PIC TABL LOOK NONZ SHOC SOLU RANGE BPIC CPRI
RPRI DMPS PPIC LKLG
4) SALIDA A ARCHIVO
SAVE DIVE RVRT SMPS SDBC FBS FPUN SMPN
5) SOLUCION
GO PIV GLEX
6) EDICIÓN DE PROBLEMAS
ALT EXT DEL SUB APPC SLB FREE
7) QUIT
8) PROGRAMACIÓN ENTERA, CUADRÁTICA Y PARAMÉTRICA
INT QCP PARA POSD TITAN BIP GIN IPTOL
9) PARAMETROS DE PRESENTACIÓN
WIDTH TERS VERB BAT PAGE PAUS
10) REUTINAS DE USUARIO
USER
11) OTRAS FUNCIONES
INV STAT BUG DEB SET TITL NEWPW

4.2.2 Algunas consideraciones sobre LINGO

La sintaxis de carga del modelo es diferente, ya que permite desarrollar modelos no lineales. Se
incorporan operadores como la división y la potenciación:

Obsérvese que se incorpora el punto y coma (;) como retorno de carro (no significa que lo que sigue
deba escribirse en otra línea, significa que se interpreta que lo que sigue es otra línea). Por ejemplo, la
siguiente es el mismo modelo y funciona igual:

Haciendo clic en el botón de la diana o seleccionando Solver, se encuentra el resultado:

81
Pulsando en el menú LINGO y optando por Generate > Display Model, se convierte la entrada en un
modelo clásico: para el caso en que se había escrito todo el modelo solo separado por (;), se obtiene lo
siguiente:

Sin embargo la verdadera potencia de este programa es que permite trabajar en forma interactiva
(leyendo y escribiendo, por ejemplo, datos de una planilla Excel) y programar así problemas más
complejos o de otra índole, por ejemplo, análisis de redes, PERT con tiempo de choque, etc. El
desarrollo de estas capacidades excede los alcances del curso y de esta publicación

82
4.3 Planillas de Cálculo Excel y Calc

Introducción – Uso de MS Office Excel y de OpenOffice.org (Ooo) o LibreOffice Calc

4.3.1 EXCEL
Excel es un producto comercial que forma parte de una “suite” o conjunto de programas
interrelacionados llamado Microsoft Office. Coexisten en forma operativa varias versiones con pocas
diferencias entre ellas y conocidas por el año en que fueron lanzadas comercialmente.

Lo más común es encontrar las siguientes: Office 97, Office 2003, Office 2007, Office 2010 y Office
2013. Las dos primeras son semejantes entre si, con excepciones en la apariencia y disponibilidad o
ubicación de ciertos comandos. Las tres restantes (similares entre sí) son diferentes a las anteriores no
solo en el aspecto, sino también la funcionalidad y el sistema de archivos. Tienen, además, importantes
diferencias en el modo de carga de datos.

Las hojas de cálculo en las versiones 97-03 se podían guardar en forma predeterminada con la extensión
“.xls”, aunque hay otras opciones. En la serie 2007-13 la forma predeterminada es “.xlsx” aunque están
disponibles todas las versiones anteriores. De esta manera los archivos generados son compatibles con
otros sistemas operativos.

Hay abundante literatura respecto a su uso y posibilidades. En ediciones anteriores de este trabajo se
presentaron elementos básicos sobre su utilización a fin de aprovechar algunas de las características que
tiene y que son aplicables a los contenidos discutidos en esta publicación. En esta edición se incluye
solamente una guía para la utilización de los complementos que son necesarios para resolver los
modelos presentados. Esta decisión se basa en que este utilitario se encuentra disponible en forma
generalizada, constituyendo una herramienta prácticamente universal. No obstante, el lector puede
obtener versiones de la guía básica en la página web de la asignatura y en el Anexo II.

4.3.2 CALC
Calc es una planilla muy semejante a Excel que está incluida en los “paquetes” de utilidades
OpenOffice.org y, una versión muy semejante denominada LibreOffice que tienen prestaciones también
semejantes a Office (Ver Anexo III).

El primero de estos paquetes es un desarrollo liderado inicialmente por Sun Microsystems,


posteriormente adquirido por la firma Oracle, inscriptos en la línea de software libre, es decir software
de código abierto que puede ser modificado o no por los usuarios. No debe confundirse “software libre”
con “software gratis” sobre todo si se parte del inglés (“free”) para ambas expresiones. El software
libre puede ser vendido, aunque este no es el caso de OpenOffice.org ni de Libre Office. Este último fue
creado – precisamente – para evitar cualquier intento de Oracle en ese sentido. Por ello ambos pueden
ser obtenidos gratis aunque aceptando los términos de licencia.

Las planillas generadas por Excel son compatibles en todas sus versiones con Calc, es decir pueden ser
leídas y modificadas por este programa.

4.3.3 SOLVER
Desde las primeras versiones de Excel (y de todas las Planillas de cálculo que existían en esa época,
Lotus 1-2-3, Quattro, etc.) se encuentra una macro, o complemento, denominado Solver.

En las primeras versiones de Calc un tercero desarrolló una macro con el mismo nombre que no es
exactamente igual y que tiene ciertas limitaciones, entre ellas que debía obtenerse e instalarse por
separado (add in). Las versiones a partir de OpenOffice.org 3.0 y Libre Office vienen con un
complemento similar incluido, que se denomina indistintamente “Solucionador” y “Solver”, el cual tiene
la limitación de no realizar análisis de sensibilidad.

Se muestra13 la manera de utilizar Office-Excel y OpenOffice.org-Calc siguiendo el problema de


Alcoholes Argentinos a fin de encontrar las soluciones:

13
Las ilustraciones que acompañan este artículo se obtuvieron de Excel Versión Office 2007 operando con
Windows Vista, con Office 2010 en Windows 7. Las imágenes y configuraciones pueden variar con otros sistemas

83
z3
x1
5x2max
Sujeto a
2 x1  1x2  230
1x1  2 x2  250
0 x1  1x2  120
xj  0

Planteo del problema.

Para plantear un problema de este tipo, se deben definir, sobre una hoja de cálculo en blanco, o con
datos del problema:
1) la Celda Objetivo o la celda que contendrá la función objetivo.
2) las celdas destinadas a las variables, las que constituirán un “rango” de celdas cambiantes,
según la terminología Excel.

En la figura, se han elegido14 las celdas: D1 para la variable x1, D2 para la variable x2 y D3 para la
función objetivo. Además, se han escrito los valores de los coeficientes del funcional en las celdas C1 y
C2:

Office 2007-10-13

Calc

operativos y con otras versiones del programa. Las correspondientes a Calc son las de la versión 3.0.1. o de
LibreOffice 3.6.1.2. ambos bajo Windows 7.
14
La manera de plantear el modelo y resolverlo es totalmente personal, se optó por un diseño cualquiera en
la Hoja. Cualquier disposición alternativa puede ser utilizada. Puede el lector ensayar con otros diseños

84
La función objetivo se escribe en la celda D3 de alguna de las maneras (totalmente equivalentes)
mostradas a continuación:
=C1*D1+C2*D2
=$C$1*$D$1+$C$2*$D$2
=3*D1+5*D2
=SUMA.PRODUCTO($C$1:$C$2;$D$1:$D$2)

El problema está planteado ahora como una función de D1 y D2. Uno por uno se podrían ir probando
distintos valores para cada variable mientras que se observa en D3 cambiar el valor que adquiere el
funcional. En las figuras se comprueba que la sintaxis en Excel (arriba es enteramente compatible con
Calc (abajo).

Para completar el planteo del modelo, en primer lugar se agregan algunos elementos que son
accesorios, como color en la celda objetivo, etiquetas, etc:

Excel y Calc

En casi todas estas celdas sólo se escribieron textos, así en C7, C8 y C9, solo se escribió “<=”, como un
símbolo que no se puede operar. Solamente la columna de valores del lado derecho son números (D7, D8
y D9).

Se deben completar las celdas B7, B8 y B9 ahora sí, con funciones:


=2*D1 + D2 en la B7
=D1+2*D2 en la B8
=D2 en B9

85
Excel y Calc

El siguiente paso es utilizar el Complemento Solver, disponible en todas las versiones de Excel y de otras
hojas de cálculo y en la versión 3 de Calc.

Es probable que en el primer intento de uso, la versión de Excel disponible por el lector no se encuentre
el complemento, debido a que éste no se instala por defecto cuando se carga Excel o MS Office en la
forma normal (no personalizada). Para instalar Solver deberá seguir distintos procedimientos en función
de la versión de Excel que se está utilizando.
 Versiones anteriores a la versión 5, Excel 5, Excel 95:
Debe volver a instalarse Excel y habilitar la opción “Agregar/eliminar componentes instalados”.
Buscar el cuadro de verificación “Solver” y marcarlo. Luego debe seguirse las instrucciones de
pantalla.
 Versiones Office Excel 97 y 98:
Se deben cargar “Herramientas de Análisis” y habilitar la opción “Solver”. Si esta opción no
está disponible, ver NOTA IMPORTANTE, más adelante.
 Versiones Office Excel 2000, XP y 2003:
Debe buscarse en Herramientas, complementos y marcar “Solver”. Si no aparece, ver NOTA
IMPORTANTE.

NOTA IMPORTANTE: Si estos pasos no dieran resultado, deberá reinstalar Excel en modo
“Instalación personalizada” y habilitar la opción “Herramientas de Análisis” y/o
“Complementos” y/o “Solver”, según las versiones

 Versiones Excel 2007:


Seleccione “Personalizar barra de herramientas de acceso rápido” y luego “Mas comandos…”

Seleccione “Complementos” y luego marque “Solver” y pulse el botón “Ir”

86
El siguiente paso será seleccionar con una marca de tilde la Opción Solver y aceptar:

En la hoja de cálculo, en la solapa “Datos” aparecerá ahora el botón Solver:

 Versiones Excel 2010 y 2013:


Seleccione “Archivo” / “Opciones”

Seleccione “Complementos” y luego “Solver”.

Si no existe seleccione “Administrar” (Abajo) “Complementos de Excel” y el botón “ir”. Luego


seleccione “Solver”

87
 Calc para OpenOffice.org y para LibreOffice
Si se utiliza Calc. Deberá verificar que existe la opción “Solver” en el menu Herramientas o
“Solucionador”. Las figuras que siguen corresponden a OpenOffice (izquierda) y LibreOffice (Derecha)

Si no aparece puede deberse a que la versión en uso no es la 3 o superior o que la versión 3 instalada no
fue realizada en la modalidad “Instalación Completa”.

En todo caso puede instalar Solver como un complemento que se obtiene en el sitio del desarrollador o
bien actualizar a la versión 3 o superior, cuidando instalar la versión Completa.

Una vez que está seguro que está instalado, tendrá las opciones mostradas arriba para Office Excel
2007/10 y para OpenOffice.org Calc 3 y la de abajo para todas las versiones anteriores de Excel:

88
Cuando en el menú se selecciona “Solver” aparece una pantalla similar a las figuras que se señalan a
continuación, según la versión o programa en uso:

1) Excel hasta 2007 inclusive (puede haber pequeñas variaciones de lenguaje y aspecto en las
versiones más antiguas)

2) Excel 2010/13

3) Calc 3

89
Como se puede ver, hay que indicar cual es la celda objetivo, (en este caso D3) y marcar su valor: que
significa si se maximiza, se minimiza o se fuerza a un resultado.

Carga del modelo en Excel


El sector etiquetado cambiando las celdas requiere se ingrese el rango de la matriz de celdas donde
están las variables, en este caso esa matriz es un vector de 2 elementos (D1 y D2). Por lo cual el rango
comienza en D1 y termina en D2, (se escribe D1:D2)

Sigue un recuadro para restricciones, (originalmente aparece en blanco). Para cargar cada restricción se
debe pulsar el botón Agregar... Aparecerá el cuadro de la figura:

En la casilla Referencia de la celda, se escribe el nombre de la celda que representa la variable a


restringir. En la casilla central el tipo de restricción, al que se accede desplegando la flecha vertical y
optar por <= (opción por defecto), =, >=, int (entera), bin (binaria)

Así se puede optar por tres relaciones básicas (igual a, menor o igual a, mayor o igual a) o forzar a un
número entero irrestricto (int) o binario (bin).

Por último, la casilla derecha servirá para escribir la restricción. Si se seleccionó int o bin, allí
aparecerá la palabra ENTERO o BINARIO respectivamente.

Cada restricción que se escribe se carga apretando el botón Agregar. Cuando se escribieron todas, y
todas fueron agregadas se pulsa Aceptar. Si hay que modificar alguna, se pulsa Cambiar. Si hay que
borrar alguna, se pulsa Eliminar.

El aspecto final de la pantalla de carga será:

90
1) Excel hasta 2007 inclusive

2) Excel 2010/13

Carga del modelo en Calc

91
El sector etiquetado condiciones límites requiere se ingrese el rango de la matriz de celdas donde
están las variables, en este caso esa matriz es un vector de 2 elementos (D1 y D2). Por lo cual el rango
comienza en D1 y termina en D2, (se escribe D1:D2), así para cada restricción.

Resolver el modelo en Excel y en Calc


Antes de hacer clic en “Resolver” (Excel) o “Solucionar” (Calc), se debe seguir uno de estos pasos:
a) Para Excel, todas las versiones desde 95 a 2007, inclusive: deben verificarse las variantes
del botón Opciones15

En ese cuadro de Excel, puede establecerse un tiempo máximo de búsqueda, el error, la tolerancia y el
modelo de resolución. Pero lo que es imprescindible es que deben marcarse las casillas de verificación
“Adoptar Modelo lineal” y “Adoptar no negativos” para los problemas de Programación lineal. En el caso
de no negatividad, si esto no se hace, hay que establecer la condición como restricción para cada
variable de decisión. Una vez hecho esto se pulsa “Aceptar”

b) Para Excel 2010, en “Método de resolución” adoptar la opción “Simplex LP” y variables sin
restricciones convertirlas en no negativas:

15
Ver al final de este capítulo, en Resultados adicionales en Excel 2010 que posibilidades brinda el botón
Opciones en Excel 2010

92
c) Para Calc OpenOffice, pulsar “Opciones…” y marcar “Asume variables como no negativo” y
pulsar “Aceptar”

d) Para Calc LibreOffice, pulsar “Opciones…” seleccionar “Solucionador Lineal de LibreOffice”


y marcar “Asume variables como no negativas” y pulsar “Aceptar”

Resultados en Excel
En este punto se esta en condiciones de terminar la tarea, simplemente oprimiendo el botón Resolver.
Aparecerán las siguientes pantallas para Excel:

93
a) Excel hasta 2007 inclusive

b) Excel 2010/13

En ambos casos, aparece un mensaje donde se informa si la búsqueda fue o no satisfactoria, a la vez
que, en segundo plano, sobre la hoja, en las celdas D1, D2 y D3 ya se ven los resultados de la función
objetivo, de la variable x1 y de la variable x2, respectivamente (Comparar con los valores analíticos más
arriba señalados) y en las celdas B7, B8 y B9 aparecen los valores del lado izquierdo de las restricciones
(fuera del cuadro de la figura) que indican, directamente, cuanto “sobra” en cada recurso .

Esta ventana presenta – además – un sector denominado Informes: con tres alternativas, respuestas
(responder en 2010), sensibilidad (confidencialidad en 2010) y límites. Haciendo clic en cualquiera de
ellas se accede a esa nueva hoja en el libro Es importante notar que estas hojas se acumulan cada vez
que se usa Solver en el mismo libro agregándosele un número correlativo, con lo que es posible formar
un “historial” de resultados.

En este caso se “iluminarán” las tres. Luego se pulsa “Aceptar”.

Se muestran cada una de esas hojas y las diferencias entre todas las versiones anteriores de Excel y la
2010:
1) Informe de Respuestas

a) Excel hasta2007 inclusive

94
b) Excel 2010/13. Se cambiaron algunos términos (“Demora” por “Divergencia” – valor del
lado izquierdo- “Vinculante” por “obligatorio” para señalar las básicas)

2) Informe de sensibilidad o de confidencialidad


a. Para Excel hasta 2007 inclusive

95
Desde las primeras versiones en Excel se conservan los errores que se muestran en estas figuras:
“Aumento permisible” en la columna de la derecha en vez de “Disminución permisible” y “Sombra
precio” en vez de “Precio Sombra”

b) En Excel 2010/13

Se corrigieron algunos errores – utilizando un idioma extraño – y se reemplazaron los siguientes


aspectos: “Valor igual” pasa a ser “Final Valor” para señalar “Valor Final”; “Gradiente reducido” es
“Reducido coste” traducción (¿) literal de “Reduced Cost” y así con los demás ítems, cambiándose el
doble “Aumentar” por el más sensato “Aumentar” y “Reducir”

3) Informe de límites
a. Excel hasta 2007 inclusive

96
b. Excel 2010/13

Como se ve en esta tercera hoja no hay diferencias entre versiones. Esta planilla muestra la
contribución que hace cada variable cuando pasa del valor inicial (cero, en este caso) al valor
final (70 o 90). Cuando la variable X1 ($D$1) está en cero, la función objetivo vale 450 (que es
5 x X2 = 5 x 120) y cuando la variable X2 está en cero el resultado es 3 x X1. Cuando ambas
variables están en su valor final, Z vale 660 para ambas.

Téngase en cuenta que cada vez que se corre Solver se conservan los valores de la corrida
anterior, por lo cual es posible ir efectuando análisis progresivos. Para cada corrida abrirá
hojas nuevas de informes, conservando las anteriores, por lo que puede analizar por
comparación las variaciones de los resultados.

Resultados en Calc
En Calc debe pulsarse el botón Solucionar, apareciendo:

97
el mensaje de búsqueda satisfactoria y la opción de mantener o no los resultados, que pueden
observarse en segundo plano sobre la hoja de cálculo.

En Calc no existen análisis de sensibilidad ni hojas de resultados.

Resultados adicionales en Excel 2010/13

Si se opta por pulsar el botón “Opciones” en la ventana de carga de Solver 2010, aparece el cuadro de
diálogo separado en pestañas que se muestra en la figura de la página siguiente.

Como puede verse, hay tres solapas. La única que aplica al método elegido (Simplex LP) es la que
aparece por defecto. Lo más interesante en este caso es la posibilidad de marcar la casilla “Mostrar
resultados de iteraciones”

Si se acepta y luego se pulsa resolver, en lugar de ir directamente al final aparecerán informaciones


como las que se muestran en la sucesión de figuras a partir de la página siguiente. Puede verse que en
cada caso se muestra en la hoja la solución del vértice al que se evolucionó, primero al vértice B (0;
120), luego el C (10; 120) y por último el D (70; 90)

98
VERTICE B

VERTICE C

99
VERTICE D

100
Capítulo 5
Redes simples. Modelos de transporte.

5.1 Terminología, aplicación y métodos a emplear


5.2 Requisitos para el problema
5.3 Método heurístico de la esquina noroeste
5.4 Otros métodos heurísticos de resolución
5.4.1 Método de multiplicadores
5.4.2 Método de Vogel
5.5 El problema de Best Foods en WinQSB
5.6 El problema de Transporte resuelto con Excel y
Calc

101
C
on este nombre genérico se conoce un subconjunto de problemas solucionables con la metodología de
programación lineal, pero que, sin embargo, al ser un modelo de redes y tener un campo de aplicación
más acotado y simplificado, merecen un tratamiento específico.

El problema tipo es el de un conjunto de oferentes, llamado “orígenes” o “plantas” u “ofertas” que


deben distribuir sus existencias de productos, bienes, elementos e, incluso, acciones entre un conjunto
de demandantes, llamado “destinos” o “depósitos” o “demandas”. Unos se comunican con otros
mediante “rutas” pagando un “costo” (u obteniendo algún beneficio) para llegar.

Si bien esta descripción parece totalmente acotada, se verá que el campo de aplicación del modelo es
más amplio de lo que parece a simple vista

5.1 Terminología, aplicación y métodos a emplear


El conjunto de nodos desde donde parten las “rutas” o “vínculos” o “flechas” se denomina orígenes y
está constituido por i elementos, de 1 hasta m. El de los destinos, por j elementos, de 1 hasta n. El
problema consiste generalmente en minimizar el costo de transportar cierta cantidad de unidades desde
los orígenes a los destinos. También puede plantearse sobre esquemas de rutas apropiadas, tiempos
mínimos, máximos volúmenes de carga por viaje, etc.

Se aplica a
 traslado de mercaderías
 programación de producción
 nuevas plantas
 diversos centros de logística

Es un problema de programación lineal que se caracteriza por la singularidad que presentan algunas de
las restricciones. Para resolverlo hay varios modelos y métodos. Se muestra, a continuación, uno de
ellos pero debe tenerse en cuenta que es posible solucionar estos problemas con el método Simplex, (se
desarrolla más adelante igual que la solución con Excel), aunque es más engorroso. El software de base,
WinQSB, dispone de un módulo específico y muy simple destinado a este tipo de problemas.

Para poder comprender este caso particular, es un buen método pensar el problema de transporte
en términos de resolver como mover varias unidades desde los diversos orígenes a los diversos
destinos usando las rutas disponibles, pagando el costo unitario de transporte que presenta cada
una de esas rutas e incurriendo en el mínimo costo posible

5.2 Requisitos para el problema


Tanto la función objetivo como las restricciones deben ser lineales, ya que es un caso particular de
programación lineal. Debido a que se consideran que son mercaderías para distribución, al menos como
concepto, se presupone uniformidad y que no son intercambiables.

Otro requisito es la igualdad de oferta y demanda, dicho de otra manera, la sumatoria de las
capacidades de orígenes debe ser igual a la sumatoria de las capacidades de destinos (aunque esta
suposición es fácil de modificar si se da el caso). Estos aspectos son los que distinguen al problema de
transporte como un caso particular de la programación lineal.

Planteo general del problema


Nº de centros de oferta (ORÍGENES): m
Nº de centros de demanda (DESTINOS): n
Nº de unidades disponibles en cada uno de los i orígenes: ai (i=1,...,m)
Nº de unidades demandadas en cada uno de los j destinos: bj (j=1,...,n)
Costo unitario de transporte de un centro u origen i a un destino j: cij
Cantidad transportada de un origen i a un destino j: xij

NOTA: Tanto los cij como los xij deben ser considerados como cj y xj respectivamente: no es una
característica distintiva del problema. La conversión se hace considerando el conjunto de rutas como un
vector y no como una matriz.

Objetivo: Determinar el número de unidades a transportar desde los orígenes a los destinos a costo
mínimo.
m n
MIN  z    cij xij
i 1 j 1

102
Sujeto a
n

x
j 1
ij  a i (i  1,..., m)
m

x
i 1
ij  b j ( j  1,..., n)

xij  0, enteroi, j

Debe observarse que, a diferencia del modelo básico de programación lineal construido con vectores de
coeficientes y de variables de decisión, en este caso se ha escrito en forma matricial porque simboliza
mucho mejor el problema, aunque no necesariamente deben ser trabajadas bajo esa forma, acá es
donde aparecen las particularidades del caso que son tales que se trate como un problema específico.

Supóngase que se tienen tres oferentes (A, B y C) que disponen de 5, 6 y 7 unidades a trasladar a dos
demandas (Y y Z) que requieren cada una 10 y 8 unidades respectivamente, con costos de ruta como se
indican en la figura:

Este problema se puede plantear siguiendo la estructura matricial señalada más arriba, o simplemente
como un problema de programación lineal. Por ejemplo si a la variable de decisión “unidades a
transportar desde A hasta Y se la llama X1 y desde A hasta Z X2 y así hasta la variable unidades a
transportar desde C hasta Z es X6, queda el problema de programación lineal:

Z  1x1  2 x2  3x3  4 x4  1x5  2 x6  min


sujeto.a :
x1  x2  5
x3  x 4  6
x5  x 6  7
x1  x3  x5  10
x 2  x 4  x6  8
x i  0, entero

Lo que caracteriza, en definitiva a un modelo de Programación lineal que pretende solucionar un


problema de transporte es el conjunto de restricciones que tiene estas particularidades:
1) las restricciones son igualdades,
2) la matriz de coeficientes tecnológicos solo incluye unos o ceros, adimensionales
3) las restricciones lógicas establecen que las variables de decisión son no negativas enteras.

Para evitar las complejidades del método de resolución algorítmica señalado en capítulos anteriores se
presentan algunos métodos heurísticos y se muestra su correlación con el método Simplex.

103
5.2.1 Problema ejemplo:
Best Food cuenta con tres plantas, que tienen las siguientes ofertas de producción:
a. Munro, 72
b. Villa Mercedes, 76
c. Mar del Plata, 66
y tres Centros de Logística, que demandan:
1. Adrogué, 92
2. Rosario, 77
3. Córdoba, 45
Los costos del transporte, por mercado, ruta y cantidad de mercadería unitaria son:
Adrogué A Rosario R Córdoba C
Munro M 4 8 8
Villa Mercedes V 16 24 16
Mar del Plata P 8 16 24

Resolución
El modelo es:
Z  4MA  8MR  8MC  16VA  24VR  16VC  8PA  12 PR  24 PC  Min
sujeto _ a :
MA  MR  MC  72
VA  VR  VC  76
PA  PR  PC  66
MA  VA  PA  92
MR  VR  PR  77
MC  VC  PC  45
var  0, enteras
El primer paso consiste en elaborar una tabla de transporte, como la mostrada a continuación:
Destinos j ADROGUE ROSARIO CÓRDOBA ai
----------- (j=1) (j=2) (j=3=n) Capacidad
Orígenes i Planta
MUNRO cij=c11= 4 c12= 8 c13= 8 72
(i=1) xij =x11 X12 x13
VILLA MERCEDES c21= 16 c22= 24 c23= 16 76
(i=2) x21 X22 x23
MAR DEL PLATA c31= 8 c32= 16 c33= 24 66
(i=3=m) x31 X32 x33
bj Demanda 92 77 45

Se verifica que se trata de una tabla balanceada, ya que:


n n m m n m

b  x
j 1
j
j 1 i 1
ij    xij   a i
i 1 j 1 i 1
Puede ocurrir que no exista balance por dos motivos (estas situaciones se discutirán más adelante):
Hay más ofertas que demandas: se crea un centro artificial de demanda
Hay menos ofertas que demandas: se crea un centro artificial de ofertas

5.3 Método heurístico de la esquina noroeste


Consiste en agotar la primera celda, la x11 asignándole el máximo posible de la oferta, y luego proceder
a llenar todas las restantes: comenzando por las x12 y x13 las cuales no tendrán asignación posible y
valdrán cero, pues la oferta de esa planta fue toda al primer destino.

La x21 deberá tratar de completar la demanda de esa columna (92), como x 11 tiene asignado 72, ésta
deberá valer
92 – 72 = 20.

104
La X22 deberá de tratar de cubrir la oferta de 76, completando con 56 los veinte de la anterior. El total
es:

Destinos j ADROGUE ROSARIO CÓRDOBA ai


----------- (j=1) (j=2) (j=3=n)
Orígenes i
MUNRO cij=c11= 4 c12= 8 c13= 8 72
(i=1) x11= 72 X12 = 0 x13 = 0
VILLA MERCEDES c21= 16 c22= 24 c23= 16 76
(i=2) 92-72=20 76-20=56 x23 = 0
MAR DEL PLATA c31= 8 c32= 16 c33= 24 66
(i=3=m) x31 = 0 77 – 56 = 21 66 -21 =45
bj 92 77 45

Si se efectúa el producto de todos los cij xij se obtendrá un costo de transporte de $ 3368. Es la solución
trivial. A continuación, se evalúa si es posible analizar todas y cada una de las celdas vacías (llamando
celda vacía a aquellas cuyo xij vale cero), para lo cual se verificará que la suma de columnas más la
suma de filas menos uno sea igual al número de celdas no nulas (que tienen un valor) En este caso 3
columnas + 3 renglones - 1 = 5, que es el nº de celdas ocupadas. Entonces se dice que el problema no es
degenerado, ya que cada celda vacía tiene al menos una forma de evaluarse.

5.3.1 Método para la evaluación de celdas vacías.

Se evalúa asignando una unidad a transportar en la primera celda vacía. En el caso del problema, se
asigna una unidad a x12, sacándosela a x11. Esto implica mover una unidad en todo el entorno para
mantener las sumas de oferta y demanda. Cuando se asigna una, se indica con (+), cuando se saca, con
(-).

Destinos j ADROGUE ROSARIO CÓRDOBA ai


------------ (j=1) (j=2) (j=3=n)
Orígenes i
MUNRO M cij= 4 8 8 72
(i=1) x11=71 () X12=1 (+) x13
VILLA 16 24 16 76
MERCEDES V
(i=2) x21=21 (+) X22=55 () x23
MAR DEL 8 16 24 66
PLATA P
(i=3=m) x31 X32=21 x33=45
bj 92 77 45

¿Qué efecto tuvo esta modificación?


Aumento de costo de Munro a Rosario $ 8
Aumento de costo de V.Mer a Adrogue $ 16
Aumento total de Costo $ 24
Disminución de costo Munro a Adrogue $ 4
Disminución de costo V Mercedes a Rosario $ 24
Disminución total de costo $ 28

Balance total: Aumentos - disminuciones: 24 - 28 = -4, que, al ser <0, indica que conviene efectuar el
cambio.

Se evaluó la Celda12, de esta manera: C12 - C11 + C21 - C22.


Significa que pueden evaluarse todas y cada una de las celdas “vacías” o cero:

La celda correspondiente a c13* x13, (que se llamará MC por Munro-Córdoba)

MC - MA + VA - VR + PR – PC = 8 - 4 + 16 - 24 +16 - 24 = -12
La VC:
VC - VR + PR - PC = 16 - 24 + 16 - 24 = - 16
La PA:
PA - PR + VR - VA = 8 - 16 +24 - 16 = 0

Cada uno de los resultados es un índice de mejoramiento, por lo que hay que elegir aquella que tiene el
valor más negativo (VC = -16) La cuestión es, ¿cuántas unidades hay que enviar a VC?. Para responder se
usa el mismo ciclo que la originó: (Nótese que se están evaluando costos de oportunidad)

105
24 16
x22=56 () x23 (+)
16 24
x32=21 (+) x33=45 ()

Se elige la cantidad transportada (xij) más pequeña de las celdas marcadas (-), en este caso, 45, valor
que se suma o resta, según la celda esté marcada con (+) ó (-), a todas las demás: (nótese que se están
evaluando recursos acotantes)

24 16
x22=5645=11 (-) x23=0+45=45
16 24
x32=21+45=66 x33=4545=0

Finalmente la tabla queda así:


Destinos j ADROGUE ROSARIO CÓRDOBA ai
------------ (j=1) (j=2) (j=3=n)
Orígenes i
MUNRO M cij= 4 8 8 72
(i=1) x11=72 x12 x13
V MERCEDES V 16 24 16 76
(i=2) x21=20 x22=11 x23=45
MAR DEL PLATA 8 16 24 66
P
(i=3=m) x31 x32=66 x33=0
bj 92 77 45
Si se evalúa ( c x
ij ij ), se obtiene:
72 x 4 + 20 x 16 + 11 x 24 + 45 x 16 + 66 x 16 = 2648. (La tabla original tenía un valor de 3368)

5.3.2 Segunda etapa: reevaluación de celdas vacías


Se vuelven a analizar las celdas vacías a efectos de comprobar si hay negativas y de elegir, si las hay, la
más negativa de ellas:
MR  MR - MA +VA - VR = 8 - 4 + 16 - 24 = - 4
MC  MC - MA +VA - VC = 8 - 4 + 16 - 16 = 4
PA  PA - VA +VR - PR = 8 - 16 + 24 - 16 = 0
PC  PC - VC +VR - PR = 24 - 16 + 24 - 16 = 16

Se opera sobre la más negativa, celda12:

4 8
x11=72 () x12 (+)
16 24
x21=20 (+) x22=11 ()

Sumando y restando el valor más pequeño de las celdas marcadas con (-), queda:
4 8
x11=61 () x12=11 (+)
16 24
x21=31 (+) x22=0 ()

Así la nueva tabla será:


Destinos j ADROGUE ROSARIO CÓRDOBA ai
------------ (j=1) (j=2) (j=3=n)
Orígenes i
MUNRO cij= 4 8 8 72
(i=1) x11=61 X12=11 x13
V MERCEDES 16 24 16 76
(i=2) x21=31 X22=0 x23=45
MAR DEL PLATA 8 16 24 66
(i=3=m) x31 X32=66 x33=0
bj 92 77 45
Cuyo costo es de 2604.

106
5.3.3 Tercera etapa: reevaluación de celdas vacías en la nueva tabla
Se reevalúan todas las celdas vacías:
VR  VR - MR +MA - VA = 24 - 8 + 14 - 16 = 4
MC  MC - MA +VA - VC = 8 - 4 + 16 - 16 = 4
PA  PA - MA +MR - PR = 8 - 4 + 8 - 16 = - 4
PC  PC - PR +MR - MA + VA - VC = 24 - 16 + 8 - 4 + 16 - 16 = 12
que le otorga chances a celda31:

4 8
x11=61 () x12=11 (+)
8 16
x31 (+) x32=66 ()

que queda, al sumar y restar el más pequeño de las celdas marcadas con (-):

4 8
x11=0 () x12=72 (+)
8 16
x31=61 (+) x32=5 ()

La nueva tabla será:

Destinos j ADROGUE ROSARIO CÓRDOBA ai


------------ (j=1) (j=2) (j=3=n)
Orígenes i
MUNRO cij= 4 8 8 72
(i=1) X11=0 X12=72 X13
V MERCEDES 16 24 16 76
(i=2) X21=31 X22=0 X23=45
MAR DEL PLATA 8 16 24 66
(i=3=m) X31= 61 X32=5 X33=0
bj 92 77 45

Sobre la que se realizan los nuevos análisis sobre celdas vacías:

MA  MA - VA +PR - MR = 4 - 8 + 16 - 8 = 4
MC  MC - VC +VA - PA + PR - MR = 8 - 16 + 16 - 8 + 16 - 8 = 8
VR  VR - MA +PR - PA - VA = 24 - 16 + 8 - 16 = 0
PC  PC - VC +VA - PA = 24 - 16 + 16 - 8 = 16
Debido a que no hay un índice negativo, significa que la última es la solución óptima.

El costo de esta solución es 2360. Si se repasa el método empleado se podrá verificar que, de otra
manera, se sigue el método Simplex: ingresando una variable por vez a la base reemplazando a otra
cuyo valor pasa a ser nulo y examinando los costos de oportunidad de las candidatas a entrar.

5.4 Otros métodos heurísticos de resolución.

5.4.1 Método de multiplicadores

A diferencia del anterior, este método es menos tedioso pues no requiere evaluaciones parciales.
Para el caso, se parte de la tabla inicial obtenida por el método de la esquina nordeste.:
Destinos j ADROGUE ROSARIO CÓRDOBA ai
----------- (j=1) (j=2) (j=3=n)
Orígenes i
MUNRO cij=c11= 4 c12= 8 c13= 8 72
(i=1) x11= 72 X12 = 0 x13 = 0
V MERCEDES c21= 16 c22= 24 c23= 16 76
(i=2) 92-72=20 76-20=56 x23 = 0
MAR DEL PLATA c31= 8 c32= 16 c33= 24 66
(i=3=m) x31 = 0 77 – 56 = 21 66 -21 =45
bj 92 77 45

El siguiente paso será encontrar un índice de mejoramiento, asignando un valor Ri a cada R-englón i y
un valor Kj a cada k-olumna j, en el ejemplo, tanto i como j valen 1, 2 y 3.

107
Destinos j ADROGUE ROSARIO CÓRDOBA ai
Orígenes i k1 k2 k3
MUNRO 4 8 8 72
R1 x11=72 x12=0 x13=0
V MERCEDES 16 24 16 76
R2 9272=20 7620=56 x23=0
MAR DEL PLATA 8 16 24 66
R3 x31=0 7756=21 6621=45
bj 92 77 45

Para calcular los valores se emplea: Ri  k j  Cij


lo que se aplica sólo para las celdas no vacías:
R1 + k1 = 4
R2 + k1 = 16
R2 + k2 = 24
R3 + k2 = 16
R3 + k3 = 24
Quedando cinco ecuaciones con seis incógnitas. Si se asigna cero a R1 queda:
k1 = 4
R2 = 12
k2 = 12
R3 = 4
k3 = 20
Destinos j ADROGUE ROSARIO CÓRDOBA ai
Orígenes i k1 = 4 k2 = 12 k3 = 20
MUNRO 4 8 8 72
R1 = 0 x11=72 x12=0 x13=0
V MERCEDES 16 24 16 76
R2 = 12 9272=20 7620=56 x23=0
MAR DEL PLATA 8 16 24 66
R3 = 4 x31=0 7756=21 6621=45
bj 92 77 45

(obsérvese que tanto Ri como kj pueden ser mayores, menores o iguales que cero)

El siguiente paso es buscar el índice de mejoramiento (ime) de cada celda nula, restando al costo de esa
celda el valor del renglón y el valor de la columna.

ime = Cij - Ri - kj
Si el valor del índice es negativo, se puede mejorar el costo total del transporte, si todos los valores son
cero o positivos es una solución óptima.

Así se encuentra que


C12 - R1 - k2 = 8 - 0 - 12 = -4
C13 = -12
C23 = -16
C31 = 0
Como C23 tiene el valor más negativo, se crea un ciclo cerrado alrededor de ella, asignándole un (+), por
lo que la celda 22 tendrá un (-), la 32 un (+) y la 33 un (-).

C22 56 C23
() 0
(+)
C32 21 C33 45
(+) ()

De las marcadas (-) se elige la de valor menor, que se suma a las (+) y se resta de las (-):
C22 5645=11 C23 0 + 45=45
() (+)
C32 21+45 = C33 45  45 =
66 0
(+) ()

108
Así se obtiene una nueva tabla:
Destinos j ADROGUE ROSARIO CÓRDOBA ai
Orígenes i k1 = 4 k2 = 12 k3 = 20
MUNRO 4 8 8 72
R1 = 0 x11=72 x12=0 x13=0
V MERCEDES 16 24 16 76
R2 = 12 X21=20 X22=11 x23=45
MAR DEL PLATA 8 16 24 66
R3 = 4 x31=0 X32=66 X33=0
bj 92 77 45

Nuevamente se hace R1 = 0 y se obtienen los valores de cada columna y cada renglón, y los índices de
mejoramiento, que son:
C12 = -4
C13 = 12
C23 = 0
C31 = 16
y así hasta obtener un juego de índices de mejoramiento iguales o mayores que cero, lo que indica el fin
de la tarea.

5.4.2 Método de Vogel


Tiene como ventaja el realizar menos iteraciones. Generalmente la primera matriz es la óptima. Se
realiza calculando las diferencias entre los costos más pequeños en las columnas y los renglones. Se
muestra una tabla planteo y con las diferencias calculadas.

Depósito 1 Depósito 2 Depósito 3 Depósito 4 Oferta Diferencia


Planta 1 X11 10 X12 20 X13 6 X14 5 30 65=1
Planta 2 X21 5 X22 17 X23 29 X24 22 30 175=12
Planta 3 X31 15 X32 25 X33 5 X34 10 20 105=5
Demanda 20 20 15 25
Diferencia 105=5 2017=3 65=1 105=5

El segundo renglón muestra la diferencia más alta, y dentro de ese renglón, la celda 21 tiene el costo
unitario más bajo.

A esa celda se le asigna el máximo posible de las unidades que permita el depósito (20), por lo que
queda eliminada la primera columna (ninguna otra celda de esa columna puede tener valores no nulos).
Con el resto de la tabla se obtienen las nuevas diferencias mínimas:
Depósito 1 Depósito 2 Depósito 3 Depósito 4 Oferta Diferencia
Planta 1 X11 = 0 10 X12 20 X13 6 X14 5 30 65=1
Planta 2 X21 = 20 5 X22 17 X23 29 X24 22 30 2217=5
Planta 3 X31 = 0 15 X32 25 X33 5 X34 10 20 105=5
Demanda 20 20 15 25
Diferencia 2017=3 65=1 105=5

Como hay tres diferencias iguales (5), al azar se elige una: tercer renglón. En ese renglón el costo menor
es el de la celda33. A esa celda se le asignan 15 unidades y se elimina la columna 3.

Depósito 1 Depósito 2 Depósito 3 Depósito 4 Oferta Diferencia


Planta 1 X11 = 0 10 X12 20 X13 =0 6 X14 5 30 205=15
Planta 2 X21 = 20 5 X22 17 X23 =0 29 X24 22 30 2217=5
Planta 3 X31 = 0 15 X32 25 X33 =15 5 X34 10 20 2510=15
Demanda 20 20 15 25
Diferencia 2017=3 105=5

Nuevamente hay dos diferencias máximas iguales. Arbitrariamente se elige el renglón 3 y la celda menor
es la celda34. A esa celda se le asigna el máximo, 5, (Ya que la planta ofrece 5 y el depósito demanda
25) y se elimina por saturación el renglón (se agotó la oferta).

109
Depósito 1 Depósito 2 Depósito 3 Depósito 4 Oferta Diferencia
Planta 1 X11 = 0 10 X12 20 X13 =0 6 X14 5 30 205=15
Planta 2 X21 = 20 5 X22 17 X23 =0 29 X24 22 30 2217=5
Planta 3 X31 = 0 15 X32 =0 25 X33 =15 5 X34 =5 10 20
Demanda 20 20 15 25
Diferencia 2017=3 225=17

Ahora la mayor diferencia es la de la columna del depósito 4 y c 14 el valor más pequeño. A esa celda se
le asignan 20 unidades y se satura:

Depósito 1 Depósito 2 Depósito 3 Depósito 4 Oferta Diferencia


Planta 1 X11 = 0 10 X12 20 X13 =0 6 X14 =20 5 30
Planta 2 X21 = 20 5 X22 17 X23 =0 29 X24 =0 22 30
Planta 3 X31 = 0 15 X32 =0 25 X33 =15 5 X34 =5 10 20
Demanda 20 20 15 25
Diferencia 2017=3

Si se le asigna a celda12 y a celda22 10 unidades a cada una. El resultado final será:

Depósito 1 Depósito 2 Depósito 3 Depósito 4 Oferta


Planta 1 X11 = 0 10 X12 =10 20 X13 =0 6 X14 =20 5 30
Planta 2 X21 = 20 5 X22 =10 17 X23 =0 29 X24 =0 22 30
Planta 3 X31 = 0 15 X32 =0 25 X33 =15 5 X34 =5 10 20
Demanda 20 20 15 25

5.5 El problema de Best Foods resuelto con WinQSB

Para demostrar el uso de WinQSB en problemas de transporte se avanza en el caso desarrollado hasta
acá mostrando las imágenes de las pantallas obtenidas a con el programa

5.5.1 Carga de datos


Se selecciona el módulo “Modelizado de redes” (Network Modeling) y si se elige nuevo problema,
aparece un cuadro de diálogo en el que se pueden seleccionar distintos modelos, a saber:

Flujo en redes, Problema de transporte, problemas de asignación, problemas de camino mínimo,


problemas de máximo flujo, mínima expansión de red y problema del viajante de comercio.

Se carga el dato de número de orígenes y de destinos y se selecciona si el problema es de minimización


o de maximización, al aceptar, aparece una pantalla como la siguiente,

110
que se completa con los datos del problema y, si se desea, mediante el menú edit se establecen los
nombres de los destinos y orígenes:

con lo cual el problema está en condiciones de ser resuelto mediante el menú Solve and Analyze,
submenú Solve the problem.

también es posible seleccionar el método de solución eligiendo, en lugar de Solve the problem, el
método inicial que presenta una pantalla de opciones como la que sigue:

También existe la posibilidad de ver, paso a paso las tablas de iteración, como la primera que se
muestra en la figura siguiente y que se logra en el menú Solve and analyze, submenú Solve and display
steps, tableau.

111
5.5.2 Presentación detallada de resultados.
Se logra, una vez resuelto, mediante el menú Results, que presenta varias opciones

las salidas que se obtienen son, (en el orden que aparecen en el menú):
* Tabla de valores no nulos, es la ya presentada como solución básica.
* Tabla completa, que es la siguiente:

* Solución gráfica:

112
* Solución alternativa, que presenta, para el mismo costo, de ser posible otras variantes:

* Rangos óptimos y posibles, que son análisis de sensibilidad para la solución hallada

113
5.5.3 Análisis particulares
El menú de resultados (también el de solución) presenta dos análisis de perturbación interesantes: el
primero es el llamado que pasaría si? (what if analysis ) que comienza con un cuadro de diálogo que
permite ingresar parámetros:

Su pueden observar los cambios esperados, sin replantear los datos originales del problema, que se
producen si hay transformaciones en los costos o en las ofertas y demandas y para cada arco en
particular, a elegir de la lista derecha. En la ventana inferior aparece el valor original que se intentará
cambiar para ver que pasa… Debe notarse que hay un botón etiquetado Vector, que produce el mismo
efecto que un clic sobre el listado derecho: accede al cambio de valores, con la diferencia que se ven
los valores originales de todos los arcos (o nodos, si se seleccionó esa alternativa)

El segundo análisis es el paramétrico, el cual presenta una pantalla muy similar:

La diferencia consiste en que se puede elegir la “dirección” de la perturbación y la magnitud del


cambio. Por ejemplo, para el vector seleccionado, Munro a Rosario, cuyo valor original es 8, se analiza
lo que ocurre cuando ese valor es reemplazo sucesivamente desde 6 hasta 10 en pasos de 1

114
Para ello en starting u se coloca –2 (inicio en 8 – 2 = 6), en ending u se coloca +2 (final en 8 + 2 = 10) y
en step, un paso de 1:

Se puede verificar el cambio del valor de la función objetivo conforme va variando el coeficiente del
funcional (costo unitario de transporte de Munro a Rosario). Es posible obtener un gráfico, en el menú
resultados una vez hecho el análisis paramétrico:

115
5.6 El problema de Transporte resuelto con Excel o Calc.

El problema planteado en el comienzo del capítulo puede escribirse en una planilla de hoja de cálculo,
de la siguiente manera, remarcando que, como en casi todos los casos en que se emplee hoja de
cálculo, hay innumerables maneras de hacerlo:

En ella se vuelcan todos los datos, cuidando dar un valor inicial arbitrario, 1, en la matriz de grupo de
celdas a cambiar.

La función objetivo se escribe en forma completa en la celda destinada a obtener el valor del cálculo,
en el ejemplo, la celda B18 es la que debe poseer la función completa multiplicando elemento a
elemento: la matriz de cantidades (grupo de celdas a cambiar) (C7:E9) con la matriz de costos de
transporte por unidad (C15:E17), y efectuando la sumatoria de todos los productos, de manera tal que
el contenido en modo edición de B20 será:

=C7*C15+D7*D15+E7*E15+C8*C16+D8*D16+.E8*E16+C9*C17+D9*D17+E9*E17.

Alternativamente usando la función SUMAPRODUCTO (Excel) o SUMA.PRODUCTO (Calc):

=SUMAPRODUCTO(C7:E9;C15:E17)
=SUMA.PRODUCTO(C7:E9;C15:E17)

Para mayor claridad se ha colocado la fila de suma de lo transportado a cada almacén (fila C10:E10) y la
que muestra la demanda del almacén (C20:E20).

El contenido de la celda C10 será: =SUMA(C7:C9), y el de la D10 =SUMA(D7:D9), y así con E10.

116
De la misma manera, la suma de lo que envía cada planta (B7:B9) – donde B7=SUMA(C7:E7) – y valores
similares para las demás) es comparable con lo que produce u ofrece cada una de ellas en el vector que
está debajo, a la izquierda de la matriz de los costos (B15:B17).

A continuación se plantean las restricciones de manera matricial:


Lo que se recibe es lo que se demanda, o como máximo lo que se demanda (pruebe con ambas
alternativas).
Lo que se envía es, como máximo, lo que se produce, o todo (pruebe con ambas alternativas)
Debe haber una condición de no negatividad y la restricción de enteros.

Lo que no se ve en la ilustración anterior son los contenidos (o funciones) de:


La celda objetivo, B18, cuyo contenido se explicó más arriba.
La fila de resultados de asignaciones (C10:E10) cada una de sus celdas es la función =SUMA() de la
columna por encima de ella.
La columna de envíos (B7:B9), cada de sus celdas es la función =SUMA() de la fila a la derecha de ella.

5.6.1 Procedimiento
Se utiliza Solver y se completa el escenario como se muestra en la figura (Excel y Calc):

117
Debe marcarse la opción Minimo y, eligiendo la opción de adoptar el modelo lineal y no negatividad (en
Calc es redundante la opción de enteros, pero necesario definir no negatividad):

Finalmente se oprime “Resolver” (Solucionar) y se tiene un resultado. En ese momento aparecerá el


cuadro de diálogo que se muestra en la figura siguiente. Sin embargo, antes de pulsar Aceptar, se
observará que se ofrecen Informes. Se pueden seleccionar uno, dos o tres de los informes ofrecidos. Con
este procedimiento, al oprimir Aceptar, además de los resultados se presentarán los informes. Debe
tener en cuenta que si las restricciones son de igualdad no es posible obtener informes de
sensibilidad y de límites.

En este punto, simplemente se puede Aceptar pulsando el botón correspondiente, con lo cual se tendrá
la hoja de cálculo expresando los valores encontrados y el costo de envío en la celda B18:

118
La figura de arriba muestra el aspecto de la pantalla cuando se completó el proceso después de pulsar
aceptar.

Nota: Si se obtuvo un resultado sin los informes y posteriormente se quieren estos informes el
procedimiento es correr nuevamente Solver, partiendo de la planilla resultado (se verá que aparecen los
rangos ya cargados) y, cuando se encuentre la solución, antes de pulsar Aceptar, marcar el o los
informes deseados. (Cuando hay restricciones enteras o binarias solo se podrá obtener Informe de
Respuestas)

Pulsando Aceptar habiendo seleccionado, en este caso el informe de respuestas, y luego del proceso de
cálculo se verá que hay una nueva hoja en el libro:

Como fue señalado en capítulos anteriores, las hojas se llaman, por defecto -pues el nombre puede ser
cambiado por el usuario-: Informe de Respuestas, Informe de Sensibilidad e Informe de Límites, cada
uno de estos nombres estará seguido por un número de orden pues pueden solicitarse varios ensayando
diversos resultados o restricciones.

El informe de respuesta tendrá el aspecto de una planilla completa con los nombres de las variables y
los valores máximo, mínimo y los que corresponda. Mostrará el rango de la variación de cada variable
(en este caso desde el “1” arbitrario de inicio, pero puede ser que se hubiera comenzado desde un valor
que era una solución previa a la que se le incluyó una nueva restricción) y la lista de estado de cada
variable.

119
La ventaja de este tipo de planteo es que no es necesario hacer ajustes si hay matrices no cuadradas
(por ejemplo más depósitos o diferentes cantidades en oferta o demandas).

Intente resolver el siguiente ejercicio:


Se poseen tres Plantas (Bahía Blanca, Tres Arroyos y Santa Rosa), que producen 310, 260 y 280,
respectivamente. Los almacenes y sus demandas, son: Río Cuarto, 180; Rosario, 80; Córdoba, 200; La
Plata, 160 y Buenos Aires, 230. Los costos de transporte son:

Río Cuarto Rosario Córdoba La Plata Bs. As.


Bahía Blanca 10 8 6 5 4
Tres Arroyos 6 5 4 3 6
Santa Rosa 3 4 5 5 9

120
Capítulo 6.
Redes sencillas. Modelo binario.

6.1 Terminología
6.2 Problema de Maximización
6.3 Resolución de los casos con WinQSB
6.4 Problema de Asignación utilizando hojas de cálculo

121
E
s otro caso particular de programación lineal, denominado también modelos de asignación. Se
fundamenta en la necesidad de asignar recursos a tareas de manera tal que para cada habrá una y solo
una tarea y cada tarea debe tener asignado uno y solo uno de los recursos.

La naturaleza del problema es tal que si hay n recursos a asignar a n tareas entonces hay n! posibles
soluciones.

La forma más segura de resolver un problema de este tipo es enumerar cada una de las soluciones y
elegir la de mínimo costo. Este método también brinda información sobre el segundo menor costo, y así
sucesivamente. La desventaja es que puede ser muy grande el número de soluciones posibles. Por
ejemplo, si hay 8 trabajadores a asignar a 8 tareas, el número de posibilidades a examinar es
8! =40320.

Los requerimientos del método especifican trabajar sobre una matriz cuadrada recursos - tareas, aun
empleando variables ficticias si fuera necesario.

6.1 Terminología
Recursos a asignar: Mi. Donde i = 1, 2, ..., m
Tareas donde se requieren los recursos: Nj. Donde j = 1,2,...,n
Costo (beneficio) de asignación del recurso i a la tarea j: Cij.
La función objetivo será maximizante o minimizante y expresará la sumatoria de los productos del costo
(beneficio) por la cantidad de recursos asignados
z   cij xij  max/ min
sujeto
 xij  1
 x ji  1
xij = 0 o 1 i,j

En este caso es muy importante recordar que el haber adoptado – igual que en el caso de transporte –
una terminología matricial no implica que se desvirtuó la esencia de lo desarrollado para programación
lineal: sigue siendo la misma estructura de función objetivo. La nomenclatura matricial da una buena
visión del problema de redes, pero no altera el concepto visto que sigue siendo aplicado en este caso.

Desarrollo mediante un ejemplo:


Una empresa fabrica cuatro tipos de conservas que pueden ser producidas en cualquiera de las cuatro
líneas instaladas. El costo de adecuación y preparación de las líneas para iniciar la producción es alto.
Cada producto debe ser elaborado en una sola línea. Los costos de operación se dan en el cuadro.
Determinar la asignación de costo mínimo.

Línea Alfa Línea Beta Línea Gamma Línea Delta


Producto SONE 4 6 3 9
Producto PATO 6 3 6 4
Producto TREBOL 8 6 4 6
Producto FOR 7 5 6 8

El planteo en formato de programación lineal del problema es


Z = 4 x Sone-Alfa + 6 x Sone-Beta + 3 x Sone-Gamma + ... + 6 x For-Gamma + 8 x For-Delta =MIN
Sujeto a
Sone-Alfa + Sone-Beta + Sone-Gamma + Sone-Delta = 1
Pato-Alfa + Pato-Beta + Pato-Gamma + Pato-Delta = 1
Trebol-Alfa + Trebol-Beta + Trebol-Gamma + Trebol-Delta = 1
For-Alfa + For-Beta + For-Gamma + For-Delta = 1

Sone-Alfa + Pato-Alfa + Trebol-Alfa + For-Alfa = 1


Sone-Beta + Pato-Beta + Trebol-Beta + For-Beta = 1
Sone-Gamma + Pato-Gamma + Trebol-Gamma + For-Gamma = 1
Sone-Delta + Pato-Delta + Trebol-Delta + For-Delta = 1

Todas las variables pueden assumir el valor 0 o 1

122
Resolución: el método empleado tiene los siguientes pasos
Se determina el 4 3 3 4
costo mínimo de
cada columna:
2. Ese valor se resta en los demás costos de la misma columna:

Línea Alfa Línea Beta Línea Gamma Línea Delta


Producto SONE 44=0 3 0 5
Producto PATO 64=2 0 3 0
Producto TREBOL 84=4 3 1 2
Producto FOR 74=3 2 3 4

3. Se tachan todos los ceros con la menor cantidad posible de líneas rectas. Si el número de líneas
rectas es menor que el rango de la matriz (nº de filas o de columnas), debe continuarse con el
algoritmo:

Línea Alfa Línea Beta Línea Gamma Línea Delta


Producto SONE 0 3 0 5
Producto PATO 2 0 3 0
Producto TREBOL 4 3 1 2
Producto FOR 3 2 3 4

Como es el caso, se continúa.


4. Se resta el costo mínimo de cada renglón de los restantes del mismo renglón.

Línea Alfa Línea Beta Línea Gamma Línea Delta


Producto SONE 0 3 0 5
Producto PATO 2 0 3 0
Producto TREBOL 3 2 0 1
Producto FOR 1 0 1 2

5. Nuevamente se cubren todos los ceros con el menor número posible de líneas rectas:

Línea Alfa Línea Beta Línea Gamma Línea Delta


Producto SONE 0 3 0 5
Producto PATO 2 0 3 0
Producto TREBOL 3 2 0 1
Producto FOR 1 0 1 2

Como el número de rectas es igual al número de elementos lado de la matriz cuadrada, se ha llegado a
un óptimo.
Caso contrario, el problema debería continuar siguiendo estos pasos:
a) sobre la matriz remanente (los elementos no tachados) se selecciona el menor.
b) ese valor es restado de todos aquellos elementos no cruzados por líneas
c) ese valor es sumado a todos aquellos elementos que caen en intersecciones de líneas.
d) los demás elementos quedan iguales.
e) se vuelve al punto 1 y se sigue iterando.

6. Para finalizar el método: Se marca un solo cero en cada renglón y en cada columna, siguiendo el
orden de prioridades:
a. El único cero presente en su fila y en su columna (no hay en el ejemplo)
b. El único cero en su fila o en su columna (son los cuatro que hay en el ejemplo).
c. El cero substituible por otro de su fila o columna

Línea Alfa Línea Beta Línea Gamma Línea Delta


Producto SONE 0 3 0 5
Producto PATO 2 0 3 0
Producto TREBOL 3 2 0 1
Producto FOR 1 0 1 2

hacer la asignación final en cada uno de los ceros marcados, referido a los costos de la matriz original:

123
Producto Línea Costo
SONE Alfa 4
PATO Delta 4
TREBOL Gamma 4
FOR Beta 5
COSTO TOTAL 17

6.2 Problema de Maximización


La empresa de conservas decide crear cuatro nuevos puestos de trabajo, (un supervisor para cada línea)
y entrevista a cinco idóneos, efectuando pruebas de habilidad y aptitud para cada línea, calificándose
su desempeño de 1 a 10. Los resultados de las pruebas son:
Alfa Beta Gamma Delta
Juan 6 9 5 7
Pedro 5 1 7 5
José 2 6 9 9
Oscar 2 9 7 3
Beto 4 5 6 6

Como no es una matriz cuadrada se crea un puesto ficticio (F), para el que todas las personas califican
con cero.
Alfa Beta Gamma Delta F
Juan 6 9 5 7 0
Pedro 5 1 7 5 0
José 2 6 9 9 0
Oscar 2 9 7 3 0
Beto 4 5 6 6 0

Se procede a aplicar el algoritmo de resolución:


1. Se ubica el valor máximo de la tabla, 9 en el ejemplo. A este valor se le resta cada uno de los
componentes de la tabla: (cij=MAX)
Alfa Beta Gamma Delta F
Juan 3 0 4 2 9
Pedro 4 8 2 4 9
José 7 3 0 0 9
Oscar 7 0 2 6 9
Beto 5 4 3 3 9

A partir de esta tabla se procede como una minimización:


Se restan los mínimos por columna
Alfa Beta Gamma Delta F
Juan 0 0 4 2 0
Pedro 1 8 2 4 0
José 4 3 0 0 0
Oscar 4 0 2 6 0
Beto 2 4 3 3 0
Se cruzan todos los ceros con el menor número posible de líneas
Alfa Beta Gamma Delta F
Juan 0 0 4 2 0
Pedro 1 8 2 4 0
José 4 3 0 0 0
Oscar 4 0 2 6 0
Beto 2 4 3 3 0

Son cuatro líneas, que es menos que el número de filas o columnas.

El paso siguiente sería restar el mínimo de cada fila, pero el que la columna F sea de valores nulos, hace
que esta operación no tenga sentido, ya que no cambiaría el valor de los coeficientes de la matriz.

Se selecciona el coeficiente más pequeño no cruzado por una línea, el que se resta a todos los demás no
cruzados y se suma a todos los que están en intersecciones. Los demás se dejan iguales:

124
Alfa Beta Gamma Delta F
Juan 0 0 4 2 1
Pedro 0 7 1 3 0
José 4 3 0 0 1
Oscar 4 0 2 6 1
Beto 1 3 2 2 0

Se vuelve a cruzar el menor número de líneas posibles por todos los ceros:
Alfa Beta Gamma Delta F
Juan 0 0 4 2 1
Pedro 0 7 1 3 0
José 4 3 0 0 1
Oscar 4 0 2 6 1
Beto 1 3 2 2 0

Como siguen siendo cuatro líneas se itera


Alfa Beta Gamma Delta F
Juan 0 0 3 1 1
Pedro 0 7 0 2 0
José 5 4 0 0 2
Oscar 4 0 1 5 1
Beto 1 3 1 1 0

Al haber cinco líneas se ha llegado al óptimo

Alfa Beta Gamma Delta F


Juan 0 0 3 1 1
Pedro 0 7 0 2 0
José 5 4 0 0 2
Oscar 4 0 1 5 1
Beto 1 3 1 1 0

Se seleccionan celdas nulas a razón de una para cada columna y cada fila:

La tabla de asignación final, será:

Operario Línea Calificación


Juan Alfa 6
Pedro Gamma 7
José Delta 9
Oscar Beta 9
Beto F 0
UTILIDAD TOTAL 31

125
6.3 Resolución de los casos con WinQSB

1. Primer caso: líneas de producción

Se ingresa por el módulo de redes, seleccionando problema de asignación, minimizante con cuatro
objetos y cuatro asignaciones a cada uno.

La solución del problema se obtiene en el menú Solve the problem.

También puede realizarse un análisis paramétrico y un análisis del tipo que pasaría si, exactamente
igual que para los casos anteriores. Utilizando el menú Results, range of optimality se obtiene un
análisis completo para cada variable:

126
6.4 Problema de Asignación utilizando hoja de cálculo

Ejemplo demostrativo
Una sección de la planta tiene 7 turnos y, por convenio, los empleados en cada turno deben trabajar
cinco días corridos con dos días de descanso. Los turnos se agrupan según los días de descanso en:

Turno Días de descanso


A DOMINGO Y LUNES
B LUNES Y MARTES
C MARTES Y MIÉRCOLES
D MIÉRCOLES Y JUEVES
E JUEVES Y VIERNES
F VIERNES Y SÁBADO
G SÁBADO Y DOMINGO

El número total máximo de empleados disponible es de 32, y en principio están asignados 4 a cada
turno, excepto para los turnos D y E, que tiene 6 en cada uno. Si se pueden lograr economías hay otros
sectores de la planta que tienen déficit de empleados.
Las necesidades de horas son:
Domingo: 22
Lunes: 17
Martes: 13
Miércoles: 14
Jueves: 15
Viernes 18
Sábado: 24

Resolución:
Se completa una hoja de cálculo con todos los datos del problema:

Se plantea el problema y sus restricciones como se detalla en la siguiente tabla:

127
Nombre Celda(s) Contenido Observaciones
Celda Objetivo C20 =C15*C19 Objetivo: minimizar costo
Celdas a cambiar C7:C13 Empleados en cada
horario
Restricciones C7:C13>=0 El número de empleados
no puede ser negativo
C7:C13=Entero ni fraccionario
D15:J15>=D17:J17 El número de empleados
que trabaja cada día debe
ser igual o mayor que los
que se necesitan
Horarios D7:J13 0o1 El 1 significa que el
empleado trabaja ese día
Cálculos básicos C15 =SUMA(C7:C13) Es la suma de asignación
de horarios
D15:J15 =SUMA.PRODUCTO($C$7:$C$13;D7:D13) Es la cantidad asignada al
(Una expresión en cada celda. La día
mostrada es para D15, para E15 y las
demás hasta J se extiende la mostrada
y se reemplazarán los D por E y así
hasta J)

Se llama la macro y se completa como en la figura:

128
Luego se solicita un informe de resultados (si se solicita informe de sensibilidad y de límites trabajando
con enteros Excel, en versiones anteriores a 2010, informa error y no avanza la solución)
La hoja de solución será:

Donde puede verse una reasignación completa y menor costo total

El informe de respuestas es:

129
A modo de ejercicio:
1) Córrase nuevamente Solver a partir de la solución ya hallada y se encontrará un resultado alternativo
en el que se elimina un turno pero mantiene el mismo costo.
2) Modifíquese el problema de manera tal que los costos del empleo sean diferentes según el día de
descanso asignado.

130
Capítulo 7.
Redes complejas. Transporte: modelos de flujo.

7.1 Redes con nodos intermedios (Trasbordo)


7.2 Problemas no equilibrados
7.2.1 Costos de fabricación diferenciales
7.3 Transporte con capacidad limitada
7.4 Límites

131
L
os casos vistos en los dos capítulos anteriores se caracterizan por ser redes con dos niveles de nodos
(orígenes y llegadas) unidos por arcos. Es posible suponer que se podrían estudiar modelos más
complejos con niveles de nodos intermedios y con posibilidad de ir de un nodo al otro por caminos con
doble sentido de circulación. El mismo caso del modelo de transporte puede abordarse con situaciones
que lo haga más complejo, por ejemplo, rutas (o arcos que unen nodos) con capacidad máxima o
mínima, rutas no válidas, etc.

En este capítulo se discutirán algunos casos siguiendo ejemplos demostrativos concretos.

7.1 Redes con nodos intermedios. (Transporte con trasbordo)


Una empresa fabricante de aceite comestible dispone de tres líneas de refinado, de dos líneas de
acondicionado, de dos de desodorizado y de cuatro de envasado. Las líneas de refinado son:
 R1, que produce 200 l/h
 R2, hasta 400 l/h
 R3, hasta 300 l/h

La línea de Envasado E1 procesa 300 l/h, la E2 160 l/h, la E3 140 l/h y la E4 300 l/h.

La producción puede ser enviada a cualquiera de los dos acondicionadores A1 o A2 que a su vez pueden
remitir a cualquiera de los dos desodorizadores D1 y D2. Ninguno de estos procesos tiene capacidad
pulmón y debe despachar todo lo recibido: No tiene problemas de proceso pues están dimensionados
para volúmenes mayores que todo el recibo combinado.

E2 y E3 pueden recibir de cualquier acondicionador. Por el lay out existente en la planta, E1 debe
recibir desde F1 y E4 solamente de F2.

Se dan los costos de bombeo a fin de realizar el plan de logística de menor costo:
1. Costos de envío de planta a acondicionadores ($/1000 l)
de planta A planta
A1 A2
R1 2 4
R2 3 4
R3 N/D 5
2. Costos de envío de acondicionador a desodorizado
de A planta
D1 D2
A1 8 6
A2 7 4
3. Costos de envío de desodorizado a envasado
De A planta
E1 E2 E3 E4
D1 7 6 8 N/D
D2 N/D 7 5 6

El diagrama en red resultante es:

132
El modelo es:

z  2 x1.4  4 x1.5  3x2.4  4 x2.5  5x3.5 


 8 x4.6  6 x4.7  7 x5.6  4 x5.7 
 7 x6.8  6 x6.9  8 x6.10  7 x7.9  5x7.10  6 x7.11  min
sujeto a:
1) Restricciones de oferta
a. De R1 x1.4  x1.5  200
b. De R2 x2.4  x2.5  400
c. De R3 x3.5  300 11
2) Restricciones de acondicionado
a. De A1 x4.6  x4.7  x1.4  x2.4
que queda: x4.6  x4.7  x1.4  x2.4  0
b. De A2 x5.6  x5.7  x1.5  x2.5  x3.5
que queda: x5.6  x5.7  x1.5  x2.5  x3.5  0
3) Restricciones de desodorizado
a. De D1 x6.8  x6.9  x6.10  x4.6  x5.6  0
b. De D2 x7.9  x7.10  x7.11  x4.7  x5.7  0
4) Restricciones de demanda
a. De E1 x6.8  300
b. De E2 x6.9  x7.9  160
c. De E3 x6.10  x7.10  140
d. De E4 x7.11  300
5) Restricciones lógicas
xiji  0  ent.i, j

Se puede arribar a una solución mediante computadora de varias maneras: con Excel usando Solver,
como un problema de programación lineal, con WinQSB, usando el módulo de Programación Lineal –
Entera, o con ese mismo programa usando el módulo de redes.

En primer lugar se obtiene una solución cargando en WinQSB el módulo de Programación lineal, y
seleccionando en el menú nuevo problema, variables enteras no negativas:

133
luego se cargan los datos como se muestra en la figura, debiendo cuidar, dado el alto número de
restricciones y de variables, de no olvidar los coeficientes correctos:

la solución que se obtiene es:

134
Con WinQSB también es posible resolverlo como un problema de redes. Mediante el módulo Network
Modeling, se selecciona el menú Nuevo Problema.

Debe cuidarse de seleccionar la opción Flujo de Red (Network Flow). En este caso se planteará el
problema en forma gráfica (Graphic Model Form). También debe ingresar el número de nodos (ver la
figura correspondiente, son 11 nodos)

Luego se dibuja la red, mediante la opción Edit se seleccionan primero los nodos y
luego los arcos. Para cada nodo se puede elegir
 el nombre,
 la ubicación en el plano de dibujo en coordenadas renglón-columna
 y la capacidad: por ejemplo, la capacidad de R1 es 200, la de A1 es cero y
la de E1 es –300, ya que de A salen 200 l/h, en H1 no se almacena nada ni se produce
nada y a E1 llegan 300 l/h y no sale nada. Como se ve es un planteo de balance.

El siguiente paso es seleccionar los arcos, como ya se anotó, en el menú Edit,


buscando esta alternativa.

El nuevo cuadro de diálogo es más complejo: aparecen dos ventanas cada una de las
cuales tiene todo el listado de nodos. Se hace clic sobre un nodo de la ventana
superior para seleccionar el nodo origen y se hace clic en la ventana inferior para
seleccionar el nodo destino. Una vez seleccionado el par de nodos que configura el
arco, se ingresan los datos: coeficiente del arco –en este caso costo de transporte–
que por ejemplo corresponde un 2 al arco que une R1 con A1. Luego se puede completar la capacidad
mínima o máxima de transporte, cuyos valores por defecto en el programa son cero –mínima – e infinito
(M) –máxima–.

la solución que se encuentra una vez cargados los datos y solicitada la resolución es:

135
También es posible obtener un informe detallado con los costos de oportunidad.

7.2 Problemas no equilibrados

Se dispone de dos plantas que producen 5000 unidades anuales cada una y remiten a tres almacenes que
demandan 4000, 2000 y 2500 unidades en el período de análisis. Los costos de transporte son:

Plantas Almacenes
A B C
I 7 5 10
II 3 11 4

Como primer paso se introduce un cliente figurado que reciba 1500 unidades de manera tal que el
problema sea equilibrado, y POR EJEMPLO se asigna un costo de transporte resultante del precio de
venta de remanentes en fábrica, evidentemente, también podría haberse dado un valor de transporte
nulo.

Se resuelve utilizando la forma de Problema de transporte y cargando los datos como sigue,

136
la solución obtenida es:

Si no se hubiera colocado un nodo figurado en este problema, WinQSB lo hubiese colocado asignándole
un costo de transporte nulo.

7.2.1 Costos de fabricación diferenciales


La ventaja de WinQSB es la enorme facilidad de carga que ofrece para el modelo típico de transporte,
por ello es interesante ver que se lo puede usar para resolver algunas variantes.

El primer caso a analizar se ejemplifica con el problema anterior con una pequeña modificación: la
producción de cada una de las plantas puede ser de hasta 5000 unidades.

Cuando, en estas circunstancias, se equilibra el problema se crea un nodo figurado con costo de envío
cero cuyo significado físico es que la planta I no necesita producir la cantidad a enviar a ese nodo, por
tanto no hay costo de envío

Si este problema se resuelve así como está planteado, se obtiene la solución de enviar 1500 unidades
desde I hasta A, 2000 unidades desde I hasta B y 1500 unidades de I a fig, 2500 de II a A y 2500 de II a
B. Se interpreta así: la planta I fabricará 1500 unidades menos que las 5000 que podría fabricar y la

137
planta II fabricará las 5000. Se ha resuelto como un problema de transporte (restricciones como
igualdad) un problema con desigualdades limitantes.

Pero supóngase ahora que los costos de producción de la planta I fueran de $30 y los de la planta II de
$40 (ambas por unidad). Se podría intentar resolver un problema de planificación de la producción
incorporando los costos de producción al costo al precio del transporte:

que presenta la siguiente solución:

También podría ocurrir que las ganancias sean diferentes en cada uno de los destinos, o combinaciones
de ambas alternativas. Para cada caso en particular se puede establecer el modelo adecuado.

7.3 Transporte con capacidad limitada

Si es necesario abordar el caso de redes con limitaciones superiores o inferiores en la capacidad de


transporte de alguno de los arcos (rutas) es posible también sacar ventaja de la simplicidad del modelo
para resolverlos, sea por ejemplo:

Se disponen de dos líneas elaboradoras de jugos que deben bombear el producto a los tanques pulmón
de cuatro envasadoras. Se presentan los datos de producción, consumo y gastos operativos de envíos en
$ por 1000 litros:

Elaboradores Tanques pulmón disponibles Producción


A B C D (litros/mes)
I 0,10 0,05 0,07 0,09 300000
II 0,05 0,11 0,08 0,07 500000
Demanda 200000 100000 400000 300000

Se resuelve generando un nodo figurado proveedor del faltante, capaz de “producir” 200000 litros/mes.
¿Cómo se valoriza el costo de transporte? Si la decisión es que no se produce el faltante, no se valoriza,
pero si se opta por comprar jugo a terceros, el costo de esa compra puede ser incluido en el transporte,
por ejemplo con valores que se incluyen en la tabla siguiente:

Elaboradores Tanques pulmón disponibles Producción


A B C D (litros/mes)
I 0,10 0,05 0,07 0,09 300000
II 0,05 0,11 0,08 0,07 500000
fig. 21,00 19,00 22,00 20,00 200000
Demanda 200000 100000 400000 300000

Si se resuelve con WinQSB módulo de Redes, Transporte, el resultado que se obtiene es el siguiente:

138
Se revisará el mismo problema, pero agregando capacidades en los transportes.

En el problema en análisis, el tramo I-C, por el que circulaban 300000 unidades según el resultado
mostrado arriba, se restringe ahora a un flujo máximo de 200000 litros/mes (por ejemplo porque se
cambió la bomba de circulación).

El mismo problema se replantea usando ahora la opción Network Flow, con las siguientes alternativas en
la carga:

El procedimiento a seguir es el siguiente: En primer lugar aparece una planilla de ingreso de datos en
formato tradicional. Deben completarse solo los elementos matriciales válidos, como se ve en la figura:

Luego, con el menú Edit se seleccionan capacidades de flujo:

139
Con lo que se puede acceder a un cuadro de ingreso de límites de circulación máximos y mínimos para
cada uno de los arcos posibles, en la figura se agregó un tope de 200 al arco I-C:

y por último en el menú resolver el problema se obtiene la planilla con los resultados y costos

se verifica que aumenta el costo de transporte y se redistribuye la salida de la planta I, que ahora
remite a C y a D.

También puede ocurrir que en determinado momento se “prohíba” una ruta, por ejemplo porque se
averió la bomba, entonces, supóngase que la ruta I-C pasa a no existir: simplemente se anula el costo de
la ruta colocando como coeficiente la letra M, que se interpreta como de costo muy grande y, por tanto,
no elegible:

140
7.4 Límites
Pueden presentarse límites superiores e inferiores en un problema de este tipo. Se ejemplificará
siguiendo el siguiente problema modificando un caso ya visto:

Se poseen dos plantas (I y II), cada una de las cuales produce hasta 5000 unidades y tres almacenes (A, B
y C) que demandan 4000, 2000 y 2500 unidades. Los costos de transporte son:

Almacenes
Plantas A B C
I 7 5 10
II 3 11 4

Lo que se ha hecho respecto a la versión original es que se ha colocado un límite superior a la


producción de cada planta. Repasando los resultados anteriores se tiene que:
1. Si los resultados solamente se basaban en los costos de transporte, la planta I debía fabricar
menos cantidad (1500), que era la cantidad enviada al cliente figurado.
2. Si el análisis se basaba en costos de producción y de transporte, era la planta II la que absorbía
el exceso.

Como existe la posibilidad de generar otros límites se agregará –como ejemplo– que las plantas no
pueden estar ociosas debajo de un nivel de capacidad de producción instalada. Estas consideraciones
pueden ser política empresarial o cuestiones legales, imposibilidades técnicas, etc. Así podrá suponerse
que se establece que la planta I debe producir al menos el 80% de la capacidad instalada y la planta II el
75%.

Así el problema se transformó en uno con límites superiores e inferiores:

Planta Límite Inferior Límite Superior


I 4000 5000
II 3750 5000

Dadas estas condiciones es evidente que ninguna de las plantas por sí sola puede soportar una reducción
de 1500 unidades en su plan de producción, por lo que los dos resultados anteriores pasan a ser
inválidos.

El problema se debe replantear en términos de límites a los flujos de salida de cada planta al nodo
ficticio. El programa WinQSB, genera un nodo ficticio si hay desbalanceo (Unused_Suply) pero siempre
es conveniente informar la existencia del ficticio y tener el control sobre él. En la siguiente figura se
muestra una carga con un nodo figurado y límites superiores de envíos a los nodos ficticios, que en
realidad son unidades menos a fabricar en cada origen:

141
Se encuentra la siguiente solución:

donde se ve que el sobrante se canaliza repartiendo entre las dos plantas para respetar sus límites
inferiores.

También debe analizarse la imposibilidad de resolver un problema mediante límites simultáneamente a


la asignación de costos negativos a los tramos que vinculan el nodo figurado: en ese caso el programa no
reconocería esos nodos como figurados ya que trataría de llevar a ellos la mayor cantidad de unidades
posible, y no detectaría que en realidad no se fabrican esas unidades y, por tanto, no se violan los
límites inferiores (intente el lector resolver y analizar los resultados con esta alternativa) lo cual no es
compatible con los objetivos del problema.

142
Capítulo 8.
Redes con secuencias: El problema del viajante de comercio

8.1 Métodos heurísticos


8.1.1 Heurística de mejoramiento

143
S
e trata de una variante del problema de transporte basado en que el recorrido debe realizarse por todos
los nodos, secuencialmente, partiendo de un nodo determinado y finalizando en ese mismo nodo. Este
problema se diferencia del resto en que no hay múltiples arcos simultáneos, sino una cantidad de arcos
que deben unir todos los nodos en forma secuencial (en serie) a fin de hallar la secuencia del recorrido
que presente el costo mínimo

En este caso no se dispone de un algoritmo definido para resolverlo, por lo cual se apela a un método de
resolución mencionado en el Capítulo1: heurístico.

Como en los casos anteriores, se trabaja con ejemplos fáciles de comprender, por ello, en el caso del
vocablo costo debe pensarse en descriptor general: puede ser tiempo, distancia, gastos, etc.

Sea el caso de una empresa de empanadas preelaboradas que diariamente debe hacer entregas en los
cinco locales de la cadena mediante una camioneta. El tiempo de recorrido entre la planta distribuidora
y los locales se muestran en la tabla:

Distrib Local 1 Local 2 Local 3 Local 4 Local 5


Distrib  40 55 45 60 65
Local 1  60 55 60 50
Local 2  55 70 90
Local 3  50 70
Local 4  70
Local 5 

El tiempo de detención para descarga en cada local es de 30 minutos ¿es posible hacer el reparto con un
chofer que trabaje 8 horas?

Si este problema se representara en notación nodal debería ser dibujado como en la figura, con arcos
con dos flechas, una cada extremo o, como se muestra, con los coeficientes (costos) en cada extremo.

Si se expresa el problema en términos de modelo, el siguiente paso es considerar que, de los 480
minutos disponibles en 8 horas, 150 se emplean en carga y descarga, por tanto quedan para conducir
330 minutos.

Si se eligiera un ciclo cualquiera, se podrá calcular el tiempo que demanda ese ciclo, por ejemplo, sea
el ciclo
Distribuidor  Local 3  Local 4  Local 5  Local 2  Local 1  Distribuidor

Ese ciclo cumple con los requisitos: visitar todos los nodos, en forma sucesiva y volver al inicial. El
tiempo de transporte es la suma de los tiempos del ciclo: 45 + 50 + 70 +90 + 60 + 40 = 355 minutos, que
superan los 330 disponibles. Otro ciclo posible, a efectos de comparar sería el siguiente:

Distribuidor  Local 5  Local 4  Local 3  Local 2  Local 1  Distribuidor

Que cumple con los requisitos y demanda 65 + 70 + 50 + 55 + 60 + 40 = 340 que es menor tiempo que el
anterior pero aún superior a los 330.

Para determinar si existe un ciclo mejor se demostrará el uso de WinQSB, en el módulo de redes, el
ítem Traveling Salesman Problem.

144
Este problema se marca como de minimización, y se carga con el método matricial o gráfico. Si se opta
por el último debe especificar que los arcos son simétricos (igual coeficiente en ambos sentidos: el costo
de ir es igual al de volver) Esta definición hará que se complete la matriz simétricamente como se ve en
la figura, aunque el lector debe ingresar solo un valor para cada par Local-Local:

Se resuelve seleccionando alguno de los métodos de solución ofrecidos y se obtiene el siguiente


recorrido, que no puede ser llamado óptimo pero sí el mejor hallado:

cuya solución gráfica es:

8.1 Métodos heurísticos

Desarrollando el siguiente ejemplo se aproximará al lector a uno de los métodos heurísticos disponibles
para solucionar problemas de este tipo. Se tomará el caso de una pequeña planta productora de piezas
maquinadas que dispone de una máquina herramienta capaz de efectuar múltiples operaciones y con la
cual se fabrican semanalmente 5 tipos de piezas que son componentes destinados a la industria
automotriz. Para pasar de fabricar una pieza a otra se requiere un cierto tiempo de adecuación de los
cabezales y programas de control numérico, como se muestra en la siguiente tabla, el que depende de
la pieza que se acaba de producir y de la pieza que se va a producir:

A:
Pasar de: Botadores Agarraderas Obturadores Reguladores Niveladores
Botadores (B)  150 120 100 110
Agarraderas (A) 170  110 90 100
Obturadores (O) 200 170  80 100
Reguladores (R) 220 190 100  90
Niveladores (N) 300 210 180 130 

Como se ve la matriz no es simétrica, significa que el recorrido en un sentido (ida) no tiene el mismo
costo que en sentido inverso (vuelta). El planteo en forma de nodos es el que se muestra en la figura
siguiente:

145
El objetivo es producir cíclicamente todas las piezas empleando la secuencia que insuma el menor
tiempo posible de preparación de la máquina.

No es posible emplear ninguno de los métodos discutidos hasta ahora, ya que aún no se determinó el
algoritmo más eficiente para resolver estos problemas. En problemas sencillos se pueden encontrar
buenas soluciones pero con más de 20 nodos resulta poco práctico aun contando con buenas
herramientas de cómputo. Por ello se han diseñado diferentes heurísticas para estos problemas, las
cuales ofrecen soluciones aceptables, pero no pueden asegurar que sean “óptimas”.

Se muestra la heurística de construcción de un recorrido a manera de ejemplo:

Se comienza con un ciclo de dos nodos y se van creando ciclos sucesivamente mayores seleccionando un
nuevo nodo y el lugar donde éste se insertará. Como se selecciona el par inicial y el nuevo nodo y su
lugar de inserción es producto de diferentes métodos.

Por ejemplo se mostrará el método de la inserción menos costosa. Se desarrolla el ejemplo:

Para seleccionar el ciclo inicial se debe buscar aquel cuyo costo sea menor. Observando el diagrama se
ve que la conexión más económica es la de O  R que vale 80 y de R  O que vale 100, por lo que
construye un ciclo inicial
ORO
Cuyo costo es de 80 + 100 = 180 minutos.

Luego debe elegirse un nuevo nodo. Por ejemplo se podría pensar en el nodo B. ¿Dónde se inserta? Hay
dos posibilidades:
OBRO
Cuyo costo es 200 + 100 + 100 = 400

O bien
ORBO
Cuyo costo es 80 + 220 + 120 = 420

Convendría insertarlo entre O y R, pero también existen los otros nodos, cada uno de los cuales se debe
examinar en todas sus posibles inserciones. Un examen de este tipo daría los siguientes datos:

Nodo B OBRO 400


ORBO 420
Nodo A OARO 360
ORAO 380
Nodo N ONRO 330
ORNO 350

Resulta lo mejor insertar el nodo N entre O y R, quedando un nuevo ciclo inicial O  N  R  O


En este punto deben ensayarse inserciones para los nodos restantes:

Nodo B OBNRO 540

146
ONBRO 600
ONRBO 570
Nodo A OANRO 500
ONARO 500
ONRAO 530

Como hay dos posibilidades del mismo costo se opta arbitrariamente por una de ellas, O  A  N  R,
y se reinicia el ciclo:
Nodo B O  B  A  N  R  O 680
O  A  B  N  R  O 680
O  A  N  B  R  O 770
O  A  N  R  B  O 740

Cualquiera de las dos primeras rutas es la mejor, aunque este ciclo final puede resultar que no es el
óptimo.

8.1.1 Heurística de mejoramiento


Para mejorar el ciclo encontrado se utilizan varios métodos, entre ellos el de intercambio de arcos, que
consiste en eliminar dos arcos creando un nuevo ciclo al ser reemplazados. El problema anterior había
llegado a la mejor solución como se ve en la figura:

A continuación se seleccionan dos arcos no adyacentes, por ejemplo el O  A y el B  N, con lo cual el


ciclo original queda fragmentado en dos partes:

Luego debe reconstruirse el ciclo completo invirtiendo en uno de los dos fragmentos los arcos originales
y añadiendo los arcos necesarios para reunir los fragmentos.

147
Los arcos a agregar no pueden ser otros (debe el lector verificarlo mediante ensayos) que los que van de
O a B y A a N. Calculando el costo del ciclo se obtiene 680.

Si ahora se procede desde el principio, con los fragmentos separados pero invirtiendo el sentido de
circulación del otro fragmento y reuniéndolos se obtiene el ciclo:

cuyo costo es de 670. Este proceso se repite en todas las combinaciones posibles de arcos no adyacentes
hasta encontrar aquella que sea la menor posible, que es el caso ilustrado.

El mismo problema se planteará ahora en WinQSB:

148
Se cargan los datos cuidando de realizar una matriz no simétrica y luego se selecciona el método de
solución:
En primer lugar se seleccionará, del menú Solve and Analyse, la alternativa de Heurística de
intercambio de dos recorridos con lo que se obtendrá una primera solución cuyo valor es de 680:

con la alternativa Cheapest Insertion… se obtendría el mismo resultado, mientras que con Nearest … se
obtendría

149
En cambio, el último ítem, que propone el método de Corte e inserción, se obtendrán los siguientes
resultados cuando se solicita que se efectúe el proceso paso a paso:

que representa la ruptura de un primer ciclo de 680, en dos sectores similares al ejemplo realizado. El
siguiente paso será un ciclo que sigue teniendo un valor subóptimo:

el siguiente paso será una nueva ruptura sobre el nuevo ciclo:

150
y se encuentra el ciclo final, como el hallado manualmente arriba:

151
152
Capítulo 9.
Toma de decisiones

9.1 Problemas clásicos de decisión


9.2 Modelos para tomas de decisión
9.3 Modelos para condiciones de incertidumbre
9.3.1 Criterio de Wald, maximin, pesimista
9.3.2 Criterio Maximax, optimista
9.3.3 Criterio de Savage, minimax
9.4 Modelos para condiciones de riesgo
9.4.1 Predicción de los estados de la
naturaleza
9.4.2 Resolución con WinQSB
9.4.3 Toma de decisiones bajo riesgo con
variable continua
9.5 Optimización con demanda aleatoria

153
9.1 Problemas clásicos de decisión

E
l problema de elegir una entre varias alternativas posibles con un fin determinado en el mundo de los
negocios, de las acciones militares, de las definiciones políticas o de gobierno, constituye la base
temática para la obtención de modelos de optimización en teoría de la decisión. Los modelos actuales
se construyen a partir de las características de la información disponible:

9.2 Modelos para tomas de decisiones en función de la información


1. CERTEZA. Se parte de información determinística.
2. INCERTIDUMBRE. No se conoce la probabilidad de ocurrencia de los eventos asociados, sin
posibilidades de efectuar una asignación subjetiva de esa probabilidad.
n
3. RIESGO. Se conoce la probabilidad asociada a cada evento y se sabe que  P( N )  1 lo que N
j 1
j i

son riesgos mutuamente excluyentes.

Para construir un modelo de toma de decisiones se comienza por ordenar la información en una matriz
de posibilidades, en donde Ai son las acciones o alternativas a seguir y Ni son los distintos estados
posibles o estados de la naturaleza. bij son los resultados de tomar una acción para cada estado. Estos
resultados se expresan de diferente manera, según el objeivo planteado. Por ejemplo, en términos
económicos, pueden ser los beneficios asociados a cada par Ai ; Nj .

Ai Nj N1 N2 ... Nn
A1 b11 b12 b1n
A2 b21 b22 b2n
...
Am bm1 bm2 bmn

Ejemplo: Una empresa considera la posibilidad de incorporar una nueva caldera, sobre la base de tres
posibilidades: Grande (G), Mediana (M) o Chica (C). El éxito o fracaso de la inversión depende de las
condiciones económicas de la próxima temporada, que pueden ser: MUY BUENAS, BUENAS, REGULARES o
MALAS.

Se establece la siguiente matriz de beneficios expresada en unidades arbitrarias:

Ai Nj Muy Buenas Regular Malas


buenas
G 2,5 0 -2,5 -4,1
M 1,6 0,3 -1,2 -2,1
C 0,6 0,4 -0,3 -0,3
NADA -0,4 0 0 0

Como no son conocidas las probabilidades para cada Nj ni resulta oportuno inventar subjetivamente se
debe resolver con alguno de los modelos para condiciones de incertidumbre que se desarrollan a
continuación.

9.3 Modelos para condiciones de incertidumbre


9.3.1 Criterio de Wald (maximin), (pesimista)

Consiste en buscar el mínimo de cada acción y en recomendar la acción que tenga el máximo de esos
mínimos:
 = maxi (minj (bij))
MIN
G -4,1
M -2,1
C -0,3
NO -0,4

Como el máximo de estos mínimos es -0,3, corresponde comprar la más pequeña. Este método, en la
práctica, no se utiliza en acciones contra la naturaleza.

154
9.3.2 Criterio Maximax, (optimista)

Es el método opuesto al de Wald: se buscan los máximos y se recomienda el máximo de todos ellos:
 = maxi (maxj (bij))
MAX
G 2,5
M 1,6
C 0,6
NO 0

Por consiguiente se recomendará la acción asociada con 2,5: comprar la caldera grande.
9.3.3 Criterio de Hurwicz
Introduce un coeficiente de optimismo  y se define, para cada acción un

Hi =  MAX + (1 - ) MIN

luego se selecciona el máximo de estos Hi.

Por ejemplo si se toma  = 0,4,


H1 = 0,4 * 2,5 + (1 - 0,4) * - 4,1 = - 1,46
H2 = 0,4 * 1,6 + (1 - 0,4) * - 2,1 = - 0,62
H3 = 0,4 * 0,6 + (1 - 0,4) * - 0,3 = 0,06
H4 = 0,4 * 0 + (1 - 0,4) * - 0,4 = - 0,24
 = maxi Hj =0,06 (recomienda la acción 3)

9.3.4 Criterio de Savage, (minimax)

Es el criterio de aplicación. Se basa en que, al definir que es lo que interesa, (por ejemplo, ganar lo más
posible) se asume que, para cada acción posible de ser tomada – al ser aleatoria la ocurrencia de
estados de la natura – cuanto mayor sea el beneficio en el éxito, tanto mayor será el costo en el
fracaso. Savage plantea que lo que interesa es que después que todo pase, quien decide no tenga que
lamentarse por la decisión tomada, para lo cual se define una función monetaria: el arrepentimiento.

En el problema: supóngase que se compró la caldera P y en la naturaleza se da MUY BUENA. Se ganó 0,6
pero lo mejor hubiera sido, para ese estado de la natura (MUY BUENA), una caldera grande. Así se
establece una diferencia:

Máximo beneficio posible - lo realmente ganado

A esa diferencia se la denomina arrepentimiento. Con cada una de ellas, se puede construir una matriz
de arrepentimientos:

Ai Nj Muy Buenas Regular Malas


buenas
G 0 0,4 2,3 4,1
M 0,9 0,1 1,2 2,1
C 1,9 0 0,3 0,3
NADA 2,9 0,4 0 0

y se procede a elegir el mínimo de los máximos arrepentimientos:

 = mini (maxj (Arrij))


MAX Arr
G 4,1
M 2,1
C 1,9
NO 2,9

Corresponde a la acción 3, comprar la chica.

Este criterio es el que normalmente se utiliza en la práctica, a veces también si se disponen de


probabilidades (ver más adelante).

155
EJEMPLO
Se decide lanzar al mercado un producto que tiene un costo de 32 y se recibe por él 47. No se sabe nada sobre la
demanda, salvo que hay una demanda mínima de 200 unidades y además se sabe que la planta puede producir desde
ese mínimo de 200 unidades hasta un máximo de 2000. Las demandas insatisfechas no provocan pérdidas
La matriz a construir sería el beneficio correspondiente a cada unidad producida, desde 200 hasta 2000 y a cada
unidad demandada, desde 200 a 2000:

P X 200 201 ... 2000


200 3000 3000 3000
201 2968 3015 3015
...
2000 -54600 -54553 30000

por lo que conviene reescribir todo en forma de ecuación:


xP B = vx - cP
x>P B = (v - c) P

El punto 1 es el mejor acto cuando x = P

El punto 2 es la realidad de x < P, luego, 1 es el arrepentimiento para este caso

El punto 3 es el mejor acto.


El punto 4 es la realidad y 2 es el arrepentimiento de este caso

Fijado un arrepentimiento a la derecha y a la izquierda, se tiene

xP Ar1 = (v - c)x - (vx - cP) = c(P - x) 1


x>P Ar2 = (v - c)x - (v - c)P = (v - c)(x - P) 2

Se observa que hay arrepentimientos máximos en los extremos a y b.

Se van cambiando los valores de P entre a y b, y cuando el arrepentimiento por derecha es igual al arrepentimiento
por izquierda, se trata del óptimo.

c (P - a) = (v - c) (b - P)
32 (P-200) = (47-32) (2000-P)
P = 774

Despejando P es el óptimo.

9.4 Modelos para condiciones de riesgo


Se aplica cuando se conocen las probabilidades asociadas a cada estado de la naturaleza, el criterio
empleado es el de máximo beneficio esperado, consiste en calcular la esperanza matemática del
beneficio de cada acción y elegir aquella que lo maximiza.

Se plantea nuevamente la matriz inicial, a la que se agrega la columna de las esperanzas matemáticas,
E(B), y la fila de las probabilidades P(xj):

156
P(xj)  0,2 0,2 0,4 0,2
Ai  \ Nj Muy buenas Buenas Regulares Malas E(B)
Grande G 2,5 0 2,5 4,1 1,32
Mediana M 1,6 0,3 1,2 2,1 0,52
Chica C 0,6 0,4 0,3 0,3 0,02
NADA 0,4 0 0 0 0,08

n
E ( B)   P( x j )bij
j

  max E ( Bij )
El máximo de las E(B) es 0,02, asociado con la compra de una caldera pequeña. Si se trabajara con
arrepentimientos se deben calcular los
E ( Arr )   P( x j ) Arrij
  min E ( Arrij )

9.4.1 Predicción de los estados de la naturaleza.

Se analiza a continuación lo que ocurre si se cuenta con alguien con capacidad de pronosticar el futuro,
lo que es lo mismo que decir saber cual es el subíndice j que prevalecerá en los Nj estados posibles.

Obviamente la capacidad de predicción del futuro varía desde el extremo de la no predicción hasta la
predicción perfecta (o, en términos realistas, la predicción más confiable). La predicción se perfecciona
con investigación, por lo tanto aparece un costo asociado a la predicción: este costo aumenta con el
grado de perfección, pues aumenta la necesidad de investigación asociada con ese grado de perfección.

Aparece ahora un Beneficio esperado con información perfecta (BEIP):


n
BEIP   P( x j ) max Bij
j
que aplicada al caso anterior brinda un
BEIP = 2,5 x 0,2 + 0,4 x 0,2 + 0 x 0,4 + 0 x 0,2 = 0,58

Debe establecerse entonces la diferencia de beneficios obtenida antes con la que se obtendría con la
información perfecta:
BEIP - maxE(Bij) = VEIP
siendo este el valor esperado con información perfecta, siendo en este caso:
0,58 - 0,02 = 0,56
que es la diferencia entre lo que se obtiene con pronóstico y lo que se obtiene sin ese pronóstico: es el
máximo que puede pagarse por dicho pronóstico.

El VEIP es proporcional a .
9.4.2 Resolución del caso con WinQSB
Se debe utilizar el módulo “Decision Analysis”.

157
Al seleccionar “New poblem” se completa la pantalla de carga como se muestra en la figura:

La pantalla de carga incluye la posibilidad de ingresar las probabilidades de los estados de la natura y se
pueden editar los nombres de esos estados y de las alternativas disponibles. En este caso se ingresaron
tales nombres a través del menú “Edit…”

Luego se procede a solicitar la solución, con lo que aparece un resumen de los resultados que se
obtendrán más la solicitud de inclusión del coeficiente de optimismo  de Hurwicz.

El resultado final del proceso será:

(De arriba abajo: Maximin, Maximax, Hurwicz, Esperanza matemática, equiprobabilidad, esperanza de
arrepentimiento, Valor esperado sin información, Valor esperado con Información Perfecta VEIP, Valor esperado de la
información perfecta)

158
También es posible obtener un árbol de decisiones:

9.4.3 Toma de decisiones bajo riesgo con variable continua.


En estos casos el criterio que se utiliza es el de máximo beneficio esperado. Para ello – tomado como un
caso particular - es necesario calcular la esperanza matemática del beneficio para cada alternativa,
trabajando bajo la hipótesis de que se conoce el modelo probabilístico al que puede ser ajustado el
sistema.

Ejemplo
Una empresa proveedora de tecnología ha establecido un negocio para la instalación de una planta
procesadora de leche, llave en mano, por un monto de $ 600000 con un plazo de entrega de 210 días.

La obra tiene un costo fijo de $ 330000 y un costo variable de 500 $/día. En el contrato se establece
una penalización de 2500 $/día de atraso y un premio de 1500 $/día de adelanto.

Se ha establecido que el tiempo medio de duración es  = 195 días con  = 25, siendo la variable
aleatoria el tiempo de duración de la obra, con una distribución normal.
Calcular el beneficio esperado.
x = tiempo de duración de la obra
 = tiempo medio de duración de la obra = 195 días
 = 25
plazo de entrega = 210 días

Para x  210

B = 600000  330000  500x + 1500 (210  x)

159
Para x > 210
B = 600000  330000  500x  2500(x  210)

que corresponde a
B = 585000  2000x para x  210
B = 795000  3000x para x > 210


E ( B)   585000  2000x f ( x)dx  210 795000  3000x f ( x)dx
210


 
E ( B)  585000 f ( x)dx  2000 xf ( x)dx  795000 f ( x)dx  3000 xf ( x)dx
210 210

  210 210

que puede ser escrita, reemplazando


x
f ( x )dx  F ( x)  ( z)


E ( B)  585000F ( x)  2000 xf ( x)dx  795000G( x)  3000 xf ( x)dx
210

 210

expresa la esperanza matemática del beneficio. Aparece aquí una novedad: existe una variable de corte
en la expresión funcional del beneficio, lo que da lugar a nuevas definiciones:

EXPECTATIVA PARCIAL IZQUIERDA


x
xf ( x)dx  H ( x)

EXPECTATIVA PARCIAL DERECHA

 xf ( x)dx  J ( x)
x

de manera tal que se cumple la condición



H ( x)  J ( x)     xf ( x)dx

Luego
1   1  x   2 
H ( x)   xf ( x)dx   x exp 2    dx
x


 2  
Desarrollando la integral y efectuando cambio de variable :
x
z

x    z
dx
dx  dz  dz 

resolviendo queda
 2z
2

H ( x)  ( z)  e
2
volviendo al cálculo de E(B)

E(B) = 585000 F(210)  2000 H(210) + 795000 G(210)  3000 J(210)

160
x 210  195
z   0,6
 25
(0,6)  F (210)  0,7257
0 , 6 2
25
H ( x)  H (210)  195  0,7257   e 2  133,18
2
J (210)    H (210)  195  133,18  61,82
G(210)  1  F (210)  1  0,7257  0,2743
E ( B)  190784

9.5 Optimización con demanda aleatoria


Para resolver estos casos, es necesario conocer el modelo de distribución de probabilidad de la variable
aleatoria, para lo cual, por ser difícil, generalmente se ajusta a una distribución conocida. En general
para períodos cortos de tratamiento la distribución puede ser gamma y para períodos largos normal.

Básicamente son necesarias dos tipos de informaciones:


1) INFORMACIÓN ECONÓMICA. Determinística.
a) c Costo unitario
b) v Precio de venta unitario
c) vR Valor residual de las unidades sobrantes
d) cs Costo de escasez de las unidades faltantes
2) INFORMACIÓN ESTADÍSTICA
a) Modelo de distribución
i) 
ii) 

Se trata de hallar el óptimo con un concepto de decisión de máximo beneficio esperado.

Se tiene un producto perecedero con demanda aleatoria, que tiene etiquetado un plazo de vida útil.
Pasado el tiempo puede tener cierto valor residual diferente de cero. Existe un costo de escasez. Hallar
la cantidad de producto óptima a fabricar, suponiendo un modelo normal de media  y varianza 

Si el lote a producir es P, el problema consiste en hallar P con un concepto óptimo.

xP B = vx  cP + vR (P  x) = (v  vR) x (c  vR) P


x>P B = vP  cx  cs (x  P) = (v c + cs) P  cs x

v  vR x  c  vR P f ( x)dx  P v  c  cs P  csx fxdx



E ( B)  
P



E ( B)  (v  vR ) H ( P)  (c  vR ) PF ( P)  (v  c  cs) P(1  F ( P))  cs(   H ( P))


dy( P) dy( P) 2
E ( B)  y ( P)   0  P  Poptimo si y solo si  0 dado que en P hay
dP dP2
un maximo

 (v  vR ) H ' ( P)  c  vR PF ' ( P)  (c  vR ) F ( P) 


dE( B)
dP
 (v  c  cs)(1  F ( P))  (vc  cs) PF ' ( P)  csH ' ( P)

pero como

161
dF ( x) d
F ( x )   f ( x)dx 
dx 
x
 f ( x)dx  f ( x)
 dx
dH ( x) d
H ( x)  
dx 
x
f ( x)dx   xf ( x )dx  xf ( x)
 dx
resulta:

dE ( B)
 (v  c  cs)  (v  v R  cs) F ( P)  0
dP
(v  c  s)
F ( P) 
(v  v R  cs)
d 2 E ( B)
 (v  v R  cs) F '( P)  0
dP 2
luego P es óptimo, maximizando el beneficio esperado. Reemplazando F(P) en E(B)

maxE ( B)  (v  v R  cs) H ( P)  cs


donde
 z2
e 2
H ( P)  ( z) 
2
Para una distribución normal N. ¿Cuál es el mejor actor?
Cuando x = P, entonces B = (v  c)x
E((v  c)x) = BEIP = v  c E(x) = (v  c)
BEIP = (v  c)

Entonces:
VEIP BEIP  E ( B)
VEIP  (v  c)   (v  v R  cs) H ( P)  cs
   z2 

VEIP  (v  c)   v  v R  cs  ( z)     cs
2
e
  2 
  
 z2
e 2
VEIP  (v  v R  cs)
2
Si  aumenta el VEIP: cuando mayor es la dispersión de la información mayor es el costo a pagar por ella

EJEMPLO

Una panificadora desarrolla un nuevo producto a lanzar al mercado. El producto tiene un costo unitario de 12 y un
valor de venta de 20. El producto no vendido se destina a pan rallado y tiene un valor de 8. La demanda sigue una
distribución normal estable de  = 3233 unidades y de  = 22750 unidades semanales.

1. Determinar la cantidad óptima a producir semanalmente


2. El beneficio que arrojaría esa producción
3. El VEIP

162
v  c  cs 20  12
F ( P)    0,66
v  v R  cs 20  8
x
z  x    z

F ( P)  0,66  ( z) por tabla z = 0,4316
luego x = Popt = 22750 + 0,4316 * 3233 = 24144 unidades

163
164
Capítulo 10.
Investigación de mercados y decisiones multinivel

10.1 Análisis de mercado


10.1.1 Valor esperado de la información de
muestra
10.1.2 Diseño de la Investigación de
mercados
10.1.3 Desarrollo en WinQSB
10.2 Cuánto pagar por la investigación de mercados
10.3Árboiles de decisión. Toma de decisiones
multinivel
10.4 Teoría de Utilidades
10.4.1 Toma de decisión utilizando tabla de
utilidades
10.4.2 Funciones de utilidad
10.4.3 Sensibilidad
10.4.4 Análisis de sensibilidad para las
probabilidades condicionales

165
10.1 Análisis de Mercado.
10.1.1 Valor esperado de la información de muestra.

S
ea un caso de toma de decisiones, en el cual, basándose en la experiencia que se tiene sobre el negocio,
se estiman las siguientes probabilidades para la aceptación de un nuevo producto: 0,4 fracaso; 0,4 para
éxito y 0,2 para un gran éxito. Se debe decidir entre una inversión Baja (B), Media (M) o Alta (A).

Utilizando el criterio de la esperanza matemática (probabilístico) se obtiene la decisión de inversión


Media:

RESULTADOS
PROBABILIDAD 0,4 0,4 0,2
FRACASO – F ÉXITO – E GRAN ÉXITO – G

DECISIÓN ↓
BAJA – B -2 5 8
MEDIA – M -5 10 12
ALTA – A -8 6 15

Alternativa seleccionada: Inversión Media (M) con una ganancia esperada de $4,4

Podría ocurrir que la estimación de probabilidad cambie, lo que conduciría a una decisión distinta: si la
nueva probabilidad de fracaso fuera 0,7, la de éxito 0,25 y la de gran éxito fuera 0,05, la decisión sería
la de inversión Baja con una ganancia esperada de $ 0,25.

Como los cambios en las probabilidades producen cambios en la decisión y en la ganancia esperada, se
entiende que la estimación de ella debe realizarse con la mayor precisión posible.

El análisis de mercado ofrece herramientas para la determinación más precisa posible de la probabilidad
asociada a la toma de decisión. Obviamente esta herramienta tiene un costo de utilización que es el
limitante.
10.1.2 Diseño de la Investigación de Mercados
El objetivo es encontrar un indicador o estimador del proyecto propuesto.

Un indicador podría ser, por ejemplo, un puntaje de 1 a 10 que represente el grado de conveniencia del
proyecto. También puede ser Éxito, Fracaso, 0, 1, Favorable, Desfavorable, muy conveniente, poco
conveniente, inconveniente, muy inconveniente, etc.

Supóngase que se establece un indicador de recomendación Favorable (SF) o Desfavorable (NF), que se
define –arbitrariamente– así:

INDICADOR DEFINICIÓN
Más del 10% del mercado objetivo acepta el producto
SF Menos del 10% del mercado objetivo acepta el producto

NF

El resultado de la investigación de mercado será uno de los dos indicadores y se utilizará para evaluar
las probabilidades de los diferentes indicadores de modo de poder tomar una decisión.

Sin embargo puede haber resultados incorrectos, porque la investigación de mercado se realiza sobre
una muestra aleatoria y no sobre todo el mercado objetivo. Por lo tanto se debe saber cual es el grado
de confiabilidad de la investigación realizada.

La investigación será confiable cuando sea pequeña la probabilidad de obtener el indicador equivocado
(por ejemplo, se obtuvo el indicador NF y el producto resultó un éxito)

Para ello cada investigación deberá ser contrastada con experiencias anteriores similares. Se elaboran
tablas partiendo de ciertas deducciones:

Si el producto va a ser un éxito, se cree que el 90% de las veces la investigación del mercado va a llegar
al indicador SF, lo que es deseable, y se expresa así:

166
P(SF | G) = probabilidad condicional de que se obtenga SF dado que el producto es un gran éxito) = 0,90

de igual manera, la probabilidad condicional de que la investigación tenga como resultado el indicador
NF si el producto es un fracaso será, por ejemplo, 0,80.

La tabla ejemplo sería:


TABLA 1
RESULTADO
F E G
NF 0,8 0,3 0,1
SF 0,2 0,7 0,9

Con esta tabla se puede construir un árbol de probabilidades estructurado con nodos y arcos:

Ahora bien, supóngase que se hace la investigación de mercado, con la cual es posible obtener dos
resultados: Favorable (SF) o Desfavorable (NF). Deben calcularse las nuevas estimaciones de las
probabilidades de cada resultado: por ejemplo, si el resultado es Favorable, SF ¿qué probabilidad hay
que el producto sea un fracaso?

Se definen probabilidades posteriores para cada caso:


Si el resultado es SF:
P( FySF )
P( F | SF ) 
P( SF )
P( EySF )
P( E | SF ) 
P( SF )
P(GySF )
P(G | SF ) 
P( SF )
Si el resultado es NF:

167
P( FyNF )
P( F | NF ) 
P( NF )
P( EyNF )
P( E | NF ) 
P( NF )
P(GyNF )
P(G | NF ) 
P( NF )
Donde el numerador es la Probabilidad conjunta, que es la probabilidad de que se presente una pareja
de resultado e indicador. Por ejemplo la probabilidad conjunta de F y SF será

P( FySF )  P( SF | F )  P( F )  0,2  0,4  0,08


lo que significa que existe un 8% de probabilidades que el indicador sea Favorable y el producto sea un
fracaso.

El denominador es la probabilidad marginal, que es la suma de cada renglón de la tabla de


probabilidades de indicadores de la Tabla 1:
P(NF)=0,32 + 0,12 + 0,02 = 0,46
P(SF)=0,08 + 0,28 + 0,18 = 0,54

Con estos parámetros se obtiene la probabilidad revisada de los resultados basados en la investigación
de mercado:

Si la investigación resultó NF:


P(F|NF) = 0,69565
P(E|NF) = 0,26087
P(G|NF) = 0,04348
Si la investigación resultó SF:
P(F|SF) = 0,14815
P(E|SF) = 0,51852
P(G|SF) = 0,3333

10.1.3 Desarrollo en WinQSB


Hasta este punto el problema puede desarrollarse mediante el módulo Análisis de decisiones de WinQSB,
seleccionando la opción Análisis Bayesiano, e indicando tres estados de la natura y dos indicadores en la
pantalla de arranque:

Con estos datos se procede a cargar la matriz de probabilidades en la pantalla de carga:

Seleccionando el menú Resolver el Problema se accede a la ventana de probabilidades revisadas:

168
Con el menú resultados se puede acceder a:
Probabilidades marginales:

o a Probabilidades conjuntas:

o al árbol de decisiones (nótese la diferencia con el de probabilidades):

El siguiente paso es identificar la decisión óptima:

a) Si la investigación de mercado resultó en el indicador NF:

DECISIÓN GANANCIA ESPERADA


Baja 0,69565 (–2) + 0,26087 ( 5) + 0,04348 ( 8) = 0,26089
Moderada 0,69565 (–5) + 0,26087 (10) + 0,04348 (12) = –0,34779
Alta 0,69565 (–8) + 0,26087 ( 6) + 0,04348 (15) = –3,34778

b) Si la investigación de mercado resultó en el indicador SF:


DECISIÓN GANANCIA ESPERADA
Baja 0,14815 (–2) + 0,51852 ( 5) + 0,33333 ( 8) = 4,96294
Moderada 0,14815 (–5) + 0,51852 (10) + 0,33333 (12) = 8,44441
Alta 0,14815 (–8) + 0,51852 ( 6) + 0,33333 (15) = 6,92587

En el caso a), la decisión óptima será la inversión baja y en el b) la moderada.

10.2 Cuánto pagar por la investigación de mercado

Como ya fue discutido con la información perfecta, el valor óptimo se calcula así:

169
Valor esperado de ganancia esperada con la Ganancia esperada
la Información de = información de – sin la información de
Muestra muestra muestra

La ganancia esperada sin la información de muestra es 4,4, como ya se dijo antes

Para calcular la ganancia espera con la información con muestra, se procede así:

Ganancia esperada Ganancia esperada Ganancia esperada


con la información = cuando el x P(NF) + Cuando el indicador x P(SF)
de muestra indicador Es SF
es NF

Lo que da:

Ganancia… con la información de muestra = 0,26089 x 0,46 + 8,44441 x 0,54 = 4,67999

Y se calcula
Valor esperado de la información de muestra = 4,67982 – 4,4 = 0,27999.

Se lee: la ganancia esperada aumentará 0,27999 si se usan los resultados de la investigación de


mercado: la empresa no debería gastar más de 0,27999 en hacer la investigación de mercado.

Se define Eficiencia de la investigación de mercado (o información de muestra) im:

valor.esperado.de.la.in.de.muestra
im 
valor.esperado.de.la.in. perfecta
que para este caso será:
0,2799
im   100  15,56
1,8
lo que significa que la información de muestra proporciona un valor del 15,56% del que se tendría de
tener la información perfecta. Cuanto mayor sea el porcentaje, más útil es la investigación de mercado.

10.3 Árboles de decisión. Toma de decisiones multinivel.

Se desarrolla el tema siguiendo el ejemplo anterior. Si se recuerda la tabla original del problema

RESULTADOS
DECISIÓN ↓ FRACASO – F ÉXITO – E GRAN ÉXITO – G
0,4 0,4 0,2
PROBABILIDAD
BAJA – B -2 5 8
MEDIA – M -5 10 12
ALTA – A -8 6 15

Estos datos pueden resumirse en un árbol que comienza con un nodo cero que representa el momento
en el cual se debe tomar una decisión: se debe elegir una de las tres alternativas de inversión. Cada
alternativa tiene tres resultados posibles. Así, el nodo cero conecta con el nodo 1, con el 2 y con el 3. Si
se llegó al nodo 1, hay tres arcos, uno al nodo 4, otro al 5 y el último al 6.

Si se llegó al 4 se obtuvo una “ganancia” de –2 (Inversión baja con resultado Fracaso). La probabilidad
de encontrar este resultado es:

P(fracaso | inversión baja) = P (F|B) = 0,4.

Para utilizar el árbol se debe comenzar con calcular la ganancia esperada con cada alternativa de los
nodos 1, 2 y 3. Por ejemplo:

170
Ganancia Ganancia Probabilidad Ganancia Probabilidad Ganancia Probabilidad
Esperada = Esperada x Asociada con + esperada x Asociada con + esperada x Asociada
En el En el nodo el en el el en el con el
nodo 1 4 Arco 1–4 Nodo 5 Arco 1–5 Nodo 6 Arco 1–6

Ganancia
Esperada = –2 x 0,4 + 5 x 0,4 + 8 x 0,2
En el nodo
1

Ganancia Esperada (GE) en el nodo 1 = 2,8

Este valor calculado para cada alternativa se incorpora al árbol:

La mejor alternativa resulta ser la inversión moderada, que promete una ganancia de 4,4. Es un
resultado congruente con los obtenidos, ya que se usan los mismos cálculos. Sin embargo este método
permite calcular tomas de decisiones más complejas, como aquellas en que las probabilidades de los
resultados se afectan por la decisión tomada.

10.3.1 Desarrollo en WinQSB:

Se selecciona la opción Análisis de Tabla de Pagos:

se carga la matriz de datos:

171
y se obtiene el conjunto de resultados por todos los métodos, de los cuales interesa el de valor
esperado:

y el árbol de decisiones:

Se puede analizar el mismo problema desde otro punto de vista: suponer que si se realiza una inversión
alta las probabilidades de éxito son mayores que si se realizara una baja inversión. Se puede suponer
que se rediseña la tabla inicial con probabilidades que están relacionadas con el nivel de inversión:

RESULTADOS
DECISIONES FRACASO – F ÉXITO – E GRAN ÉXITO – G
BAJA – B 0,6 0,3 0,1
MODERADA – M 0,4 0,4 0,2
ALTA – A 0,2 0,5 0,3

Ahora la ganancia esperada para el nodo 1 pasa a ser –2 x 0,6 + 5 x 0,3 + 8 x 0,1 = 1,1

172
En este caso se verifica que la mejor inversión es la alta.

10.3.2 Resolución con WinQSB:


Se opta por “Análisis de árbol de decisiones”, se informa que son 13 nodos y se carga la planilla
correspondiente al árbol:

Obsérvese que la columna Tipo de Nodo lleva una letra C si es opción (por Choice), D si es decisión o
nada si es terminal. Luego se procede a encontrar una solución en tabla y otra gráfica. La tabla indica
que la decisión es inversión alta (A):

173
10.3.3 Árboles Multinivel
Mediante esta introducción se puede comenzar a trabajar en árboles multinivel, que permiten tomar
decisiones en varios puntos del tiempo, de manera tal que la decisión tomada en un momento dado
influye en las que se deben tomar en momentos posteriores.

Se replantea el problema ejemplo, suponiendo que solo pueden existir dos resultados: Fracaso (F) o
éxito (E), con las siguientes estimaciones de ganancias:

Ganancias de los Resultados


Fracaso – F Éxito – E
Baja – B –2 5
Moderada – M –5 8
Alta – A –5 10

Y con las siguientes probabilidades condicionadas para cada resultado:

Probabilidades de los Resultados


Fracaso – F Éxito – E
Baja – B 0,7 0,3
Moderada – M 0,6 0,4
Alta – A 0,3 0,7

El árbol de decisiones correspondiente será:

Supóngase que luego de lanzar el producto se esperan 8 semanas a efectos de tomar una segunda
decisión sobre el resto de la inversión que se utilizará con fines publicitarios para completar el año.

174
Esta segunda decisión depende de cuál fue la primera y de qué resultado se obtuvo al cabo de las ocho
semanas, por ejemplo, si la primera decisión fue hacer una inversión alta, las alternativas para la
segunda decisión serán:
Primera decisión Segunda Decisión
Decisión Tomada Resultado Alternativas
A F Abandonar
A E Seguir con inversión en
publicidad Moderada M o
Seguir con inversión Alta A

Esta tabla se completa cuando se agregan todas las posibilidades, quedando:


Primera Decisión Segunda Decisión
Decisión Resultado Decisión Resultado Probabilidad Ganancia
Baja Fracaso Abandonar – – 1
Baja Éxito Seguir con M Fracaso 0,4 –2,5
Exito 0,6 8

Seguir con A Fracaso 0,2 –4


Éxito 0,8 7

Moderada Fracaso Abandonar – – –2


Moderada Éxito Seguir con M Fracaso 0,3 –4
Éxito 0,7 4

Seguir con A Fracaso 0,1 –5


Éxito 0,9 4

Alta Fracaso Abandonar – – –3


Alta Éxito Seguir con M Fracaso 0,2 –5
Éxito 0,8 3

Seguir con A Fracaso 0,1 –6


Éxito 0,9 2

Con ella se puede construir el árbol de decisiones:

175
El objetivo es calcular la ganancia en cada nodo como la ganancia óptima esperada de ahí en adelante.
Sea por ejemplo el nodo 11, que es un nodo conectado con los nodos terminales del árbol, como lo son
los nodos 12, 14, 15 17 y 18.

La ganancia en el nodo 11 es cero, por lo que la ganancia esperada será:

Ganancia total Ganancia Ganancia


esperada en el = En el nodo + Futura en el =
nodo 11 11 Nodo 11

Ganancia total Probabilidad Ganancia Probabilidad Ganancia


esperada en el = 0 + Del arco x En el + Del arco x En el
nodo 11 11 – 19 Nodo 19 11 – 20 Nodo 20

= 0 + 0,4 x –2,5 + 0,6 x 8 = 3,8

Este valor puede incluirse en el árbol y calcularse en forma similar para cada uno de los demás nodos.

El árbol, en esta etapa, representa las GANANCIAS FUTURAS ESPERADAS (GFE)

Procediendo hacia atrás en el tiempo, en este punto es necesario calcular las ganancias totales
esperadas en los nodos 4 a 9, utilizando las ganancias de los nodos 10 a 18. Por ejemplo, el nodo 5, que
es un punto de decisión de segundo nivel, representa una inversión baja que dio un resultado exitoso.

En ese punto se pueden realizar cualquiera de las siguientes acciones: Invertir en publicidad
moderadamente, con una ganancia esperada de 3,8 o invertir en un nivel alto, con una ganancia
esperada de 4,8 (nodos 11 y 12, respectivamente) Se debería elegir el mejor resultado esperado, 4,8, el
cual sumado a la ganancia propia del nodo, 5, arroja un total esperado de 9,8.

El conjunto de los nodos se analiza de la misma manera y queda el árbol que sigue:

176
Se sigue retrocediendo en el tiempo, analizándose ahora los nodos 1 a 3. Por ejemplo, para el nodo 1, la
ganancia futura esperada es:

Ganancia total Ganancia Ganancia


Esperada en el = en el nodo + Futura en el =
Nodo 1 1 Nodo 1

Ganancia total Probabilidad Ganancia Probabilidad Ganancia


Esperada en el = 0 + Del arco x En el + Del arco x En el
Nodo 1 1–4 Nodo 4 1–5 Nodo 5

GE N1 = 0 + 0,7 x (–3) + 0,3 x 9,8 = 0,84

Con lo cual el árbol queda:

El último paso será calcular el valor del nodo cero, que significa evaluar los nodos 1, 2 y 3:
a) Inversión Baja, B, con una ganancia esperada de 0,84  Nodo 1
b) Inversión moderada, M, con una ganancia esperada de 0,24  Nodo 2
c) Inversión alta, A, con una ganancia esperada de 4,68  Nodo 3
Significa que la primera decisión, el primer nivel de decisiones, será la inversión alta, y conduce al nodo
3. En ese momento la nueva decisión se tomará en función de los resultados obtenidos, que conduce a

177
los nodos 8 o 9: si fue un fracaso, ir al nodo 8, abandonar, con una ganancia de –11 (pérdida de 11). Si
fue éxito, ir al nodo 9, inversión publicitaria moderada, con una ganancia de 11,4.

10.3.4 Resolución con WinQSB:


Se ingresa en análisis de árbol de decisiones con 31 nodos:

debe considerarse con cuidado el carácter del nodo: si a partir de él salen flechas para cada decisión se
debe marcar con D, si es un estado de la naturaleza, con C. Se arriba al siguiente resultado:

178
10.4 Teoría de utilidades
Hasta este punto el criterio de decisión fue el de maximizar las ganancias, y particularmente, en los
casos recién vistos, las ganancias esperadas. Sin embargo pueden existir casos en que este criterio no
sea el más apropiado: por ejemplo, una persona que quiere tomar la decisión de jugar al Loto o a
cualquier juego de lotería, sabe que la ganancia esperada es un valor negativo (si no fuera así la
empresa de Lotería no ganaría dinero), por lo tanto si la decisión se tomara con el criterio de ganancia
esperada esa persona no jugaría.

Los que toman la decisión de jugar lo hacen porque aceptan la altísima probabilidad de perder poco
dinero frente a la despreciable probabilidad de ganar mucho dinero.

Otro caso es la decisión de adquirir un contrato de seguro de incendios. El resultado esperado es


negativo (las compañías aseguradoras ganan dinero), pero el asegurado gasta dinero por la pequeña
probabilidad de tener que gastar mucho dinero en reparaciones grandes.

Las diferencias que existen entre los que juegan y los que no o entre los que aseguran y los que no,
radica en un criterio distinto al de la ganancia y que se puede expresar como el valor que le dan al
dinero: para algunos el valor de perder unos pocos pesos en el Loto en muy pequeño comparado con el
valor de la posible ganancia de varios millones, mientras que otros consideran que no vale la pena
perder esos pesos porque los valoran más que la remota posibilidad de ganar. Obviamente esto es un
criterio subjetivo, que –sin embargo podría ser cuantificado utilizando un planteo sistemático al que se
llamará utilidad.

Una empresa fabrica grandes muebles de oficina desde hace muchos años y decide ampliar su campo
incorporando la representación de una marca de computadoras por cinco años. Las alternativas
presentadas son:

1. Adquirir la representación de una empresa con productos bien conocidos. Ofrece alta
probabilidad de ganar mercado, pero los costos son altos. ALTERNATIVA B.

179
2. Adquirir la representación de una empresa sin renombre. La probabilidad de ganar el mercado
es menor pero los costos son más bajos. ALTERNATIVA N.
3. Adquirir la representación de una empresa nueva que tiene un desarrollo innovador y cuya
política es avanzar en sistemas que otras empresas no poseen. La alternativa es riesgosa pero si
el producto es aceptado en el mercado, las ganancias serán altas. ALTERNATIVA I

Se tabula la participación en el mercado como:


a) Baja, L
b) Promedio, A
c) Alta, H

Estas probabilidades están condicionadas por la decisión primaria: de qué tipo de representación fue
elegida.

Con estos datos se obtienen tablas de ganancias expresadas en unidades arbitrarias:


Ganancias en función de Resultados en la
participación del mercado
Decisiones Baja (L) Promedio (A) Alta (H)
B– –5 4 7
N– –1 2 5
I– –1 3 15

Probabilidades condicionales de los


Resultados dada una decisión
Decisiones Baja (L) Promedio (A) Alta (H)
B– 0,3 0,5 0,2
N– 0,4 0,4 0,2
I– 0,6 0,3 0,1

Para determinar la mejor alternativa primero se debe elegir un criterio de decisión. Supóngase que se
decide el criterio de maximizar la ganancia esperada, cuyos resultados serán:

DECISIÓN GANANCIA ESPERADA


B –5 x 0,3 + 4 x 0,5 + 7 x 0,2 = 1,9
N –1 x 0,4 + 2 x 0,4 + 5 x 0,2 = 1,4
I –1 x 0,6 + 3 x 0,3 + 15 x 0,1 = 1,8

Con estos resultados sería la decisión B la recomendable. ¿Se pueden correr riesgos y optar por otras
alternativas?

Para poder valorizar numéricamente las ganancias esperadas como utilidades se sigue el siguiente
método:

1. Orden de ganancias
Se clasifican las ganancias en orden descendente: 15, 7, 5, 4, 3, 2, –1, –1, –5. Se puede asignar un valor
relativo cualquiera, por ejemplo 100 a la mayor ganancia (15 en este caso) y cero a la menor (–5)

2. Convertir las ganancias en utilidades


Si se desea estimar cuánto representa, por ejemplo, la ganancia de 7 respecto a los extremos, se
debería comenzar con una encuesta entre los que toman decisiones.

Esa encuesta puede diseñarse, por ejemplo, solicitando se considere un juego de lotería que ofrece la
ganancia potencial de 15 con una probabilidad de 0,05 y la ganancia potencial de –5 con una
probabilidad de 1–0,05=0,95 y efectuando la pregunta en estos términos: ¿preferiría jugar a la lotería o
aceptar dar garantías por una ganancia de 7? Es casi seguro que los encuestados contestarían a favor de
los 7, y que se volcarían a favor de la lotería si las probabilidades fueran las inversas a las planteadas.

Por tanto el objetivo es determinar la probabilidad p de ganar los 15 y la probabilidad 1 – p de ganar –5


de manera tal que a los encuestados le sea indiferente optar por la lotería o por los 7 de ganancia,
presentando diferentes valores de probabilidad cada vez que se hace la pregunta.

Como ejemplo, supóngase que el resultado de las entrevistas arroja un valor de p = 0,40. A los que
toman la decisión les resulta indiferente obtener una ganancia de 7 o participar de un juego donde hay
una probabilidad de 0,4 para obtener 15 de premio y una probabilidad de 0,6 para obtener –5.

En ese ejemplo, la utilidad de los 7 es 100p = 100 x 0,4 = 40.

180
La ganancia esperada en la lotería será 15p + (–5)(1–p) = 15 x 0,4 – 5 x 0,6 = 3

Esto indica que el encuestado estaría dispuesto a pagar 7 para jugar una lotería cuya ganancia esperada
es solo de 3, ¿por qué? Porque le dan un valor mayor a la oportunidad de ganar 15.
Con este método se puede hallar un valor de utilidad a cada una de las ganancias. Se muestra en la
tabla un ejemplo:
Ganancia P Utilidad
(100p)
15 – 100
7 0,40 40
5 0,30 30
4 0,25 25
3 0,20 20
2 0,16 16
–1 0,10 10
–1 0,10 10
–5 – 0

En este punto se puede reemplazar la tabla de ganancias por una tabla de utilidades, reemplazando la
ganancia por la utilidad asociada:
Ganancias en función de Resultados en la
participación del mercado
Decisiones Baja (L) Promedio (A) Alta (H)
B– 0 25 40
N– 10 16 30
I– 10 20 100

10.4.1 Toma de decisión usando la tabla de utilidades

Utilizando la tabla de probabilidades y la utilidad en lugar de la ganancia, se busca la decisión que


maximice las utilidades:
Decisión Utilidad esperada
B– 0x0,3 + 25x0,5 + 40x0,2 = 20,5
N– 10x0,4 + 16x0,4 + 30x0,2 = 16,4
I– 10x0,6 + 20x0,3 + 100x0,1= 22,0

Lo que arroja como resultado la alternativa innovadora, diferente a la encontrada con el criterio
conservador anterior.

10.4.2 Funciones de utilidad


Si se grafican las utilidades versus las ganancias, como se ve en la figura siguiente, se observa que la
función de utilidad obtenida está por debajo de la línea recta que une los puntos extremos de las
ganancias: una función de este tipo indica tomas de decisiones agresivas y con riesgos. Si la curva
estuviera por encima, sería indicativa de decisiones conservadoras.
Utilidad y = 0,2072x2 + 2,828x + 10,602
100
90
80
70
60
50
40
30
20
10
0
-10 -5 0 5 10
Ganancia 15 20

Esta función fue obtenida graficando los valores de utilidad de la tabla y obteniendo la línea de
tendencia polinomial para este ejemplo. Con la función es posible calcular la utilidad asociada a
cualquier valor de ganancia.

181
Cuando las funciones de utilidad halladas son del tipo de las del ejemplo, que trazan por debajo de la
línea recta que une los valores extremos se trata de decisiones buscadoras de riesgo, o tomadores de
decisión que prefieren alternativas de inversión relativamente agresivas.

Por contrario, si la función de utilidad fuera la del gráfico siguiente, se tendría una función
conservadora o contrario al riesgo, en el sentido que se le da mayor utilidad a las ganancias más bajas y,
consecuentemente, más seguras:

y = -0,2651x2 + 7,7004x + 44,201


100 Ganancia Utilidad
-5 0
80 -1 35
-1 35
60
2 59
3 65
40
4 72
20 5 77
7 84
0 15 100
-10 -5 0 5 10 15 20
-20

Una tercera alternativa es la neutralidad, cuya función de utilidad es la línea recta que une los
extremos, en ese caso la función de utilidad es lineal.
10.4.3 Sensibilidad

Las probabilidades que se usan en la toma de decisiones son simplemente estimaciones, por lo cual
puede resultar necesario poseer información adicional sobre la validez de las soluciones halladas cuando
cambian las probabilidades utilizadas para hallarlas. Si la decisión óptima hallada es muy sensible a un
cambio de probabilidad puede justificar una mayor inversión en encontrar las probabilidades adecuadas.

Se retorna al caso de desarrollo, del cual se reproduce la tabla original de probabilidades:

RESULTADOS
DECISIONES FRACASO – F ÉXITO – E GRAN ÉXITO – G
BAJA – B 0,6 0,3 0,1
MODERADA – M 0,4 0,4 0,2
ALTA – A 0,2 0,5 0,3

Se trata de averiguar cuanto puede cambiar la probabilidad de los tres resultados posibles obtenidos por
haber decidido hacer una inversión alta sin que se altere el resultado que llevó a tomar esa decisión.

Se reemplaza la fila de probabilidades asociadas con la inversión alta por los valores p1, p2 y p3, o sea
convirtiendo las probabilidades en variables.

p1  p 2  p3  1
p3  1  p1  p 2

182
Las ganancias esperadas son:
PARA EL NODO 1:
GE(1) = 0,6 x GE (4) + 0,3 x GE(5) + 0,1 x GE(6) = 0,6 x (-2) + 0,3 x 5 + 0,1 x 8 = 1,1

PARA EL NODO 2:
GE(2) = 0,4 x (-5) + 0,4 x 10 + 0,2 x 12 = 4,4

PARA EL NODO 3:
GE(3) = p1 x (-8) + p2 x 6 + (1 – p1 – p2) x 15 = 15 – 23 p1 – 9 p2

Para que la inversión alta siga siendo la decisión óptima la ganancia asociada debería ser de al menos el
mismo valor que el de una inversión baja de 1,1 o moderada de 4,4. Ambas condiciones son restricciones
que se aseguran satisfaciendo

15 – 23 p1 – 9 p2  4,4
o sea
– 23 p1 – 9 p2  10,6
además
0  p1  1 y 0  p2  1
y
p3 = 1 – p1 – p3  0 que resulta p1 + p2  1

En síntesis se puede suponer que se posee un conjunto de restricciones como el siguiente:

1) 23 p1 + 9 p2  10,6
2) p1  1
3) p2  1
4) 0  p1 y 0  p2

183
Como se ve en la figura, las probabilidades dadas caen dentro del área de soluciones factibles.
Cualquier cambio en esas probabilidades debería caer en esa misma área para que la solución óptima
hallada sea la misma. Por ejemplo si ambas probabilidades aumentaran a 0,25 y 0,55, la decisión óptima
ya no sería inversión alta, sino que sería inversión moderada.

23 p1  9 p 2  10,6
23  0,2  9  0,5  9,1  10,6
23  0,25  9  0,55  10,7  10,6
como se ve con la probabilidad original se satisface la inecuación, pero con un desvío de 0,05 no se
satisface.

10.4.4 Análisis de sensibilidad para las probabilidades condicionales


Con un procedimiento similar se puede determinar la sensibilidad de la decisión tomada, inversión alta
en este ejemplo, a los cambios en las probabilidades condicionales asociadas con una de las otras
inversiones y suponiendo que las de las demás permanecen sin variaciones.

Se convierten en variables las probabilidades de la segunda fila de la tabla: p1, p2 y p3, determinando los
valores de p1 y de p2 de manera tal que la decisión siga siendo inversión alta. Esto ocurre cuando la
ganancia esperada para la inversión alta excede a la de las inversiones baja y moderada, cosa que
ocurre cuando se satisfacen las siguientes condiciones:

1) 17p1 + 2p2  6,1


2) p1 1
3) p2  1
4) p1 + p2  1

184
Siempre que los pares de probabilidad p1 y p2 caigan dentro de la región sombreada se obtendrá que la
decisión óptima sigue siendo la inversión alta.

Este mismo proceso se puede realizar para la inversión baja, sustituyendo sus valores de probabilidad
por variables (1er. Renglón de la tabla) y graficando.

185
186
Capítulo 11.
Teoría de Juegos

11.1 Historia de la teoría de juegos


11.2 Definiciones
11.3 Juegos rectangulares
11.4 Hipótesis de Von Neumann
11.5 Juego de información completa o estrictamente
determinado
11.6 Juego no estrictamente determinado
11.6.1 Como elige el Jugador I el vector x
11.6.2 Planteo para el jugador II
11.6.3 Resolución en WinQSB
11.7 Estrategia mixta
11.8 Teoría de juegos y programación lineal

187
H
ay un cierto tipo de problemas que se generan en situaciones de
conflicto o de competencia directa que son conocidos como
“juegos” en los cuales intervienen el azar y también factores
humanos. Muchos pensadores trataron, a lo largo de los años, de
modelizar la estructura de los juegos comúnmente llamados de
azar, tanto para encontrar métodos para ganar como para
entender como se toman las decisiones en el medio de la
competencia. Uno de los que tenía estas inquietudes fue Blas
Pascal16, quien desarrolló algunas teorías. En 1928 Von
Neumann17 (Fotografía a la izquierda) enuncia el teorema
Minimax, que constituye el primer modelo que desarrolló la
teoría de juegos, profundizándose posteriormente, al presentar
en 1944 junto a Oskar Morgenstern el trabajo Teoría de Juegos y
el Comportamiento Económico. Posteriormente, en 1994, John
Nash obtuvo un premio Nobel al realizar modelos de juego con
equilibrios inestables.

El modelo de von Neumann18 intenta abordar el conflicto de dos o más partes enfrentadas (beligerantes,
en el campo militar, competidoras en el campo económico), en donde intervienen aspectos emotivos,
psicológicos, o de coyuntura, los cuales son acotados para formalizar un modelo matemático.

Desarrollada en sus comienzos como una herramienta para entender el comportamiento de la economía,
la teoría de juegos se usa actualmente en muchos campos, desde la biología a la filosofía. Experimentó
un crecimiento sustancial antes y durante la Guerra Fría, debido sobre todo a su aplicación a la
estrategia militar, en particular a causa del concepto de destrucción mutua garantizada. Desde los
setenta, la teoría de juegos se ha aplicado a la conducta animal, incluyendo el desarrollo de las especies
por la selección natural. A raíz de juegos como el dilema del prisionero, en los que el egoísmo

16
Nacido el 19 de junio en Clermont (ahora Clermont-Ferrand), Auvernia, Francia y fallecido el 19 de agosto de 1662
en París, Francia, a la edad de 39 años. Blaise Pascal fue un matemático y filósofo francés muy influyente que
contribuyó a muchas de las áreas de las matemáticas. Trabajó en las secciones cónicas, en geometría proyectiva y
carteándose con Fermat sentó los cimientos de la teoría de la probabilidad. También desarrolló trabajos en física,
sobre presión atmosférica y probó que existe el vacío. Escribió tratados religiosos (Provinciales) y vivió períodos
alejado de las ciencias y dedicados a analizar la relación con Dios de los seres humanos.

Pascal inventó la primera calculadora digital para ayudar a su padre en la tarea de la recaudación de impuestos.
Trabajó en ella durante tres años desde 1642. El aparato, llamado Pascalina, se parecía a una calculadora mecánica
de los años 1940. La primera calculadora mecánica fue inventada por Schickard en 1624.

Publicó un desafío, ofreciendo dos premios por la solución de problemas matemáticos a Wren, Laloubère, Leibniz,
Huygens, Wallis, Fermat y otros matemáticos. Wallis y Laloubère entraron en la competición pero las soluciones
fueron erróneas. Sluze, Ricci, Huygens, Wren y Fermat comunicaron sus descubrimientos a Pascal sin entrar en la
competición. Wren había estado trabajando en el reto de Pascal y este retó a su vez a Pascal, Fermat y Roberval a
descubrir la longitud del arco y la longitud de la bóveda del cicloide. Pascal publicó sus propias soluciones a sus retos
en Cartas a Carcavi. Después de esa época perdió el interés por la ciencia y empleó sus últimos años en atender a los
pobres y en ir de iglesia en iglesia en París atendiendo un servicio religioso tras otro
17
John von Neumann zu Margitta, nació el 28 de diciembre de 1903 y falleció el 8 de febrero de 1957. Fue un
matemático húngaro-estadounidense, que realizó contribuciones importantes en física cuántica, análisis funcional,
teoría de conjuntos, informática, economía, análisis numérico, fluidodinámica de explosiones, estadística y muchos
otros campos de la matemática. Recibió su doctorado en matemáticas de la Universidad de Budapest a los 23 años.
Fue una de las cuatro personas seleccionadas para la primera facultad del Institute for Advanced Study (Instituto para
Estudios Avanzados). Trabajó en el Proyecto Manhattan. Junto con Edward Teller y Stanislaw Ulam, resolvió pasos
fundamentales de la física nuclear involucrada en reacciones termonucleares y la bomba de hidrógeno. Es
considerado el padre de la teoría de juegos y publicó el clásico libro Theory of games and economic behavior, junto a
Morgenstern, en 1944. También desarrolló el concepto de "MAD" (Mutually Assured Destruction o 'destrucción mutua
asegurada'), que dominó la estrategia nuclear estadounidense durante los tiempos de la guerra fría.

18
Hasta la década de 1930, el campo de la economía parecía involucrar el uso de una gran cantidad de matemáticas
y números, pero casi todo era superficial o irrelevante. La economía era usada, sobre todo, con el objetivo de
proveer, inútilmente, formulaciones precisas y soluciones a problemas que eran, de hecho, intrínsecamente
imprecisos e indeterminados. La economía se encontraba en un estado similar al de la física del siglo XVII: todavía
esperando por el desarrollo de un lenguaje apropiado a través del cual expresarse y resolver sus problemas. Mientras
la física, por supuesto, había encontrado su lenguaje en el cálculo infinitesimal, von Neumann propuso el lenguaje de
la teoría del juego y la teoría del equilibrio general para la economía.

188
generalizado perjudica a los jugadores, la teoría de juegos se ha usado en ciencia política, ética y
filosofía. Finalmente, ha atraído también la atención de los investigadores en informática, usándose en
inteligencia artificial y cibernética.

Aunque tiene algunos puntos en común con la teoría de la decisión, la teoría de juegos estudia
decisiones realizadas en entornos donde interaccionan. En otras palabras, estudia la elección de la
conducta óptima cuando los costos y los beneficios de cada opción no están fijados de antemano, sino
que dependen de las elecciones de otros individuos.

No debe confundirse esta teoría con la teoría psicológica de juegos, que se arraiga en la escuela
psicoanalítica del análisis transaccional.

11.1 Historia de la teoría de juegos


La primera discusión conocida de la teoría de juegos aparece en una carta de James Waldegrave en
1713, en la cual proporciona una solución minimax de estrategia mixta a una versión para dos personas
de un juego de cartas. No se publicó un análisis teórico de teoría de juegos en general hasta un trabajo
de Cournot en 1838.

La teoría de juegos no existió como campo singular de estudio hasta que John von Neumann publicó una
serie de artículos en 1928. Estos resultados fueron ampliados más tarde en su libro de 1944, escrito con
19
Oskar Morgenstern . En ese trabajo contiene un método para encontrar soluciones óptimas para juegos
de suma cero de dos personas. Durante ese período, el trabajo sobre teoría de juegos se centró, sobre
todo, en teoría de juegos cooperativos. Esta formulación de la teoría de juegos analiza las estrategias
óptimas para grupos de individuos, asumiendo que pueden establecer acuerdos entre sí acerca de las
estrategias más apropiadas.

20
En 1950, aparecieron las primeras discusiones del dilema del prisionero , y se emprendió un
experimento acerca de este juego en la corporación RAND. Alrededor de esta misma época, John Nash
desarrolló una definición de una estrategia óptima para juegos de múltiples jugadores donde el óptimo
no se había definido previamente, conocido como equilibrio de Nash. Este equilibrio es suficientemente
general, permitiendo el análisis de juegos no cooperativos además de los juegos cooperativos.

La teoría de juegos experimentó una notable actividad en la década de 1950, al desarrollarse los
conceptos básicos y aparecer las primeras aplicaciones en la filosofía y las ciencias políticas.

En 1965, Reinhard Selten introdujo su concepto de solución de los equilibrios perfectos, que más
adelante concretó Nash. En 1967 John Harsanyi desarrolló los conceptos de la información completa y
de los juegos bayesianos. Él, junto con John Nash y Reinhard Selten, ganaron el Premio Nobel de
Economía en 1994.

En la década de 1970 la teoría de juegos se aplicó extensamente a la biología, en el su concepto de


estrategia estable evolutiva. En 2005, los teóricos de juegos Thomas Schelling y Robert Aumann ganaron
el premio Nobel de Economía. Schelling trabajó en modelos dinámicos, los primeros ejemplos de la
teoría de juegos evolutiva. Por su parte, Aumann contribuyó más a la escuela del equilibrio.

11.2 Definiciones

Juego queda definido por un conjunto de reglas, denominadas “modelo del juego”, que establecen:
 número de jugadores
 información que cada jugador posee acerca del juego y de los demás
 como se establecen sus relaciones
 cual es el resultado del juego
El juego se desarrolla a través de movimientos: cada jugador realiza, por turno, una selección. El
conjunto completo de movimientos se denomina Partida.

Estrategia: es el modo de acción por el cual cada jugador efectúa sus selecciones a lo largo de una
partida.

Clasificación de los juegos:


 Desde el punto de vista de la cantidad de jugadores:
a. Unipersonales

19
Nacido en Austria en 1902, estudió en Viena, Harvard y Nueva York, fallecido en Nueva Jersey en 1977
20
Ver desarrollo en el Capítulo 12

189
b. Bipersonales
c. Multipersonales
En a. no se puede diferenciar un adversario concreto: la naturaleza, el medio ambiente, etc.
Constituye un capítulo en la teoría de toma de decisiones.
En b. y en c. hay oponentes (2 o más), enfrentados, los cuales toman sus decisiones
individualmente.

 Desde el punto de vista de la cantidad de estrategias posibles:


a. Finitos, cuando se tiene un conjunto numerable de estrategias.
b. Diferenciales, cuando hay una cantidad de estrategias dentro del conjunto de los números
reales.

 Desde el punto de vista de los pagos:


a. De suma cero: los oponentes están enfrentados por un objetivo excluyente: ganar. Todo lo
que gana uno es lo que no podrá ganar el otro.
b. Cooperativos: se da una oscilación permanente entre enfrentamiento y cooperación
(paritarias, p.e.), pero los acuerdos se cumplen
c. No cooperativos, donde no se cumplen acuerdos (equilibrio de Nash, Capítulo 12)

LA FORMULACIÓN MATEMÁTICA COMPRENDE A JUEGOS BIPERSONALES, FINITOS Y DE SUMA CERO.

11.3 Juegos Rectangulares


Si se toma como caso una partida de ajedrez, existen dos jugadores: Blancas y Negras. Cada uno de
ellos puede explicitar un número n de estrategias: S1, S2,... Sn, para las Blancas. T1, T2, Tn para las
negras.

Existen tres resultados posibles: 1) Gana Blancas (B), 2) Gana Negras (N), 3) Tablas (T).

Conociendo las estrategias se podría decir cual es el resultado de la partida. Esta información puede ser
llevada a una Matriz de Estrategias: en cada elemento se encuentra el resultado de confrontar la
estrategia Si con la estrategia Tj:
T1 T2 ... Tn
S1 B T
S2 N N
...
Sn
Donde B es Gana Blancas. N es Gana Negras y T es Tablas.

Para utilizar nomenclatura cuantificable, se puede escribir la misma tabla reemplazando B = Gana
blancas por 1; N = Gana Negras por -1 y T = Tablas por 0. Estos valores son arbitrarios. Pueden ser
cualquier otro valor convenido.

Con estos valores se construye la Matriz de Pagos:

T1 T2 ... Tn
S1 1 0
S2 -1 -1
...
Sn

Resolver el juego significa poder decir que estrategia conviene a cada uno de los jugadores, cual es
valor de pago resultante de esa acción. Es un problema de optimización: cual es la jugada óptima y que
valores están en juego.

11.4 Hipótesis de Von Neumann

Para poder plantear el caso de dos jugadores, von Neumann formula las siguientes hipótesis previas:
1. ambos jugadores tienen intereses opuestos
2. ambos jugadores poseen la información completa para construir la matriz de pagos
3. ambos jugadores son igualmente sagaces.

190
4. ambos jugadores son conservadores: buscan la máxima seguridad en sus jugadas

Si se construye la matriz de pagos con los valores de pago del Jugador II al I, como la del siguiente
ejemplo:

II
E1 E2 E3 E4 E5
E1 8 3 5 7 9
I E2 6 4 3 6 8
E3 4 3 5 2 6
E4 2 4 1 4 7

El valor de cada estrategia se obtiene teniendo en cuenta las hipótesis y estableciendo para cada una el
menor valor posible.

El jugador I elegirá el mínimo de cada fila, con lo que construirá un vector. De ese vector elegirá ahora
el máximo:
E1 3
I E2 3
E3 2
E4 1

Siendo los dos elementos 3 el máximo de los mínimos, a los que llamaremos vI..
Por otra parte, el jugador II querrá minimizar los pagos (o dicho de otra manera minimizar lo máximo a
perder): El jugador II elegirá el mínimo de los máximos de cada columna, construyendo un vector fila:

II
E1 E2 E3 E4 E5
8 4 5 7 9

vII = 4.

Como el juego está planteado como una matriz de pagos del Jugador II al I, vI implica el máximo de lo
mínimo que puede ganar para todas sus estrategias y vII implica el mínimo de lo máximo a perder en
todas sus estrategias.

11.5 Juego de información completa o estrictamente determinado

Si en la matriz original se cambia la celda [I-E2:II-E3] de su valor original, 3 a un nuevo valor, diferente,
supóngase, 8; queda:

II
E1 E2 E3 E4 E5
E1 8 3 5 7 9
I E2 6 4 8 6 8
E3 4 3 5 2 6
E4 2 4 1 4 7

siendo el vector de las filas:

E1 3
I E2 4
E3 2
E4 1

donde vI = 4
y el de las columnas

191
II
E1 E2 E3 E4 E5
8 4 8 7 9

donde vII = 4.

Por tanto vI = vII, lo que significa que lo que el jugador I está dispuesto a ganar es lo que el jugador II
está dispuesto a perder. Este juego se denomina JUEGO DE INFORMACIÓN COMPLETA O
ESTRICTAMENTE DETERMINADO
(vI = vII).

11.6 Juego no estrictamente determinado

El caso que se examina tiene vI = 3 y vII = 4, no está estrictamente determinado. Cuando está
determinado, el punto I = II es el valor del juego y se llama punto de MINIMAX.

Para una matriz con m filas (cada una es i) y n columnas (cada una es j), se tiene:

II
1 2 ... j ... n
1 a11 a12 ... a1j ... a1n
I 2 a21 a22 ... a2j ... a2n
... ... ... ... ... ... ...
i ai1 ai2 ... aij ... ain
... ... ... ... ... ... ...
m am1 am2 ... amj ... amn

El jugador I busca el mínimo de cada fila, construye un vector y busca el máximo de ese vector:

v I  max min(aij )


i j
El Jugador II busca el máximo de cada columna, construye un vector en el que busca el mínimo:

j

vII  min max(aij )
i
 .

Que se tenga la igualdad vI = vII implica que existe un punto de minimax. Sin embargo la matriz no
tiene porqué tener un punto minimax único: ya que puede haber en varios lugares los mismos valores
numéricos.

Si esto ocurre, pueden aparecer varias estrategias óptimas. Si E1, E2, E3, son estrategias óptimas para el
jugador I, toda combinación lineal convexa es también una estrategia óptima:

E *  E1  E 2  E 3 (lineal)
    1 (convexa)
Esta es una manera de darle peso a diferentes Ei.

Cuando existe la desigualdad vI < vII se dice que hay juegos no estrictamente determinados. Con una
cantidad grande de jugadas, existiendo o no un valor esperado del juego, debe determinarse con que
frecuencia juega cada estrategia.

Si se llama x a la frecuencia relativa al jugador I e y a la frecuencia relativa al jugador II, se tienen


vectores llamados de estrategias mixtas:
Jugador I: x = (x1 x2 x3 )
Jugador II: y = (y1 y2 y3)
quedando una matriz como la siguiente:

192
II
y1 y2 y3
x1 a11 a12 a13
I x2 a21 a22 a23
x3 a31 a32 a33

11.6.1 Cómo elige el Jugador I el vector x

Jugador I, juega con vector x, Jugador II juega con estrategia 1: E(x,1)

 Si el jugador II juega la estrategia E1, la ganancia esperada será:


n
E (x ,1)  a11 x1  a 21 x 2  a 31 x 3   a i 1 xi (y1)
i
 Si el jugador II juega con la estrategia E2

n
E (x ,2)  a12 x1  a 22 x 2  a 32 x 3   a i 2 xi (y2)
i
 y con la estrategia E3
n
E (x ,3)  a13 x1  a 23 x 2  a 33 x 3   a i 3 xi (y3)
i

Luego, la ganancia esperada del Jugador I será:


GEI  E (x,1) y1  E (x ,2) y 2  E (x ,3) y 3  E (x , y)
 
GEI  E (x, y )     a ij xi  y j
j  i 
11.6.2 Planteo para el Jugador II
Se juega con el vector y, haciendo un análisis como el anterior:
m
E (1, y )  a11 y1  a12 y 2  a13 y 3   a1 j yi
j
m
E (2, y )  a 21 y1  a 22 y 2  a 23 y 3   a 2 j yi
j
m
E (3, y )  a 31 y1  a 32 y 2  a 33 y 3   a 3 j yi
j

pero con el vector x de frecuencias relativas. La Pérdida Esperada por II será

PEII  E (1, y )x1  E (2, y )x 2  E (3, y )x 3  E (x , y )


 
PEII  E (x , y )     a ij y j  xi
i  ji 

Existe un vector x optimo: x y un vector y óptimo: y que darán un valor de juego E( x , y ) que es
único. Este valor es el teorema de Von Neuman (minimax para juego no estrictamente determinado).

EJEMPLO
Sea la siguiente matriz:
II
y1 y2
I x1 5 3 3
x2 6 8 6
5 8

193
donde
v I = 3
vII = 5
x = (x1, x2)
y = (y1, y2)
E(x,1) = a21x1 + a21x2 = 5 x1  6x2
E(x,2) = a21x1 + a22x2 = 3 x1 + 8x2
x1 + x2 = 1

Si se grafica E(x,j) vs x1, de donde x2 = 1  x1 resulta


E(x,1) = 5 x1  6 (1  x1) = 11 x1  6
E(x,2) = 3 x1 + 8 (1  x1) = 11 x1 + 8

AOB es el lugar geométrico de las mínimas ganancias esperadas.


El máximo de todos los mínimos es el punto O, cuyas coordenadas son
x*1 = 7/11
x*2 = 4/11
Valor del juego = E(x*1, 1) = E (x*1, 2) = 1 = vI.

Para el jugador II
E(1, y) = 5 y1 + (3) y2
E(2, y) = 6 y1 + 8 y2
y2 = 1  y1

E(1, y) = 8 y1  3
E(2, y) = 14 y1 + 8

Donde COD es el lugar geométrico de las máximas pérdidas de II. Como se busca minimizar las pérdidas
corresponde al punto O: y*1 = 0,5
vI = vII = E(x, y).

11.6.3 Resolución en WinQSB


Se debe optar en el módulo Análisis de Decisiones (Decision Analisys) por Juegos de suma cero (Two
player. Zero-sum game) en el menú “Nuevo Problema”, con lo que se tiene la siguiente pantalla de
carga, al especificar que se tienen dos jugadores y dos estrategias :

194
Obteniéndose el siguiente resultado:

Donde se ve que cada jugador dispone de una probabilidad asociada a su estrategia (7/11, 4/11, ½ y ½,
respectivamente) y el valor del juego queda determinado en 1.

11.7 Estrategia mixta


Es la regla de decisión que permite elegir una estrategia cuando el juego no está estrictamente
determinado.

11.8 Teoría de Juegos y programación lineal


Sea la siguiente matriz de pagos
II
y1 y2
I x1 a11 a12
x2 a21 a22

Si I juega una estrategia mixta al máximo de los mínimos, v I, es lo que menos recibe:
min aij x j  v I  v
i
significa que como mínimo recibe v, por lo tanto
E(x,j)  v
a11 x1 + a12 x2  v
a21 x1 + a22 x2  v
como v es funcional y además x1 + x2 = 1, dividiendo por v se origina una nueva variable
x’i = xi/v
z=v-1

El programa lineal es
1
z  x '1  x2  MIN
v
a11 x '1 a 21 x ' 2  1
a 21 x '1 a 22 x ' 2  1
el valor del juego, v, es la inversa del funcional z., por lo que deberá interpretarse la solución del
problema para el cálculo de x1 y de x2.
El dual permite calcular y1 e y2 dado que cj – Zj de las slacks corresponden a los valores y’1 e y’2.
Este modelo puede ser generalizado.

Para el ejemplo anterior:

II
y1 y2
I x1 5 3 3
x2 6 8 6
5 8

195
z = x’1 + x’2  MIN (=v-1)
5x’1 + (6) x’2  1
3x’1 + 8 x’2  1

5x’1  6 x’2  x’3 + 1 =1


3x’1 + 8 x’2  x’4 + 2 = 1

EJEMPLO I
Dos jugadores muestran simultáneamente 1, 2 o 3 dedos uno al otro. Si la suma es par, el jugador II
paga al I esa suma en dinero. Si es impar el jugador II recibe esa suma.
a) Construcción de la matriz de pagos y del valor del juego

II
E1 E2 E3 min
E1 2 3 4 3
I E2 3 4 5 5
E3 4 5 6 5
max 4 4 6

vI = maxj (mini aij ) = 5


vII = minjj(maxijaij ) = 4
Se debe hallar v = E(x,y), siendo x e y los vectores óptimos.

196
EJEMPLO II
Dos cadenas de supermercados se proponen construir cada una un supermercado en la región rural W,
que comprende tres ciudades.

Aproximadamente el 45% de la población de W vive cerca de la ciudad A, 35% cerca de la B y 20% de la


C. La cadena I es más prestigiosa y grande que la II, por lo que controlará la mayoría del negocio
siempre que sus ubicaciones sean comparativas. Ambas cadenas conocen los intereses de la otra y
ambas han terminado estudios de mercado que dan proyecciones idénticas.

Si ambas cadenas se sitúan en la misma ciudad o equidistantes de una, la I controlará el 65% del negocio
de esa ciudad. Si la I está más cerca de una ciudad que la II, controlará el 90% del negocio de esa
ciudad.

En cambio, si la I se encuentra más alejada de una ciudad que la II, atraerá el 40% del negocio de ese
pueblo. El resto de las operaciones, bajo cualquier circunstancia, irá a la cadena II.
La política de la cadena I, conocida por la II, es no ubicarse en lugares con menos de 20000 habitantes,
lo que desecha la posibilidad de hacerlo en la ciudad B, que tiene 15000.

Plantear la matriz de pagos.

197
198
Capítulo 12.
Teoría de Juegos. Juegos no cooperativos

12.1 El dilema de los prisioneros


12.2 Duopolios y teoría de juegos
12.3 Modelo halcón paloma
12.4 Modelo de la guerra de los sexos

199
A
hora parece que he vuelto a pensar racionalmente de nuevo, en el estilo característico de los
científicos. Sin embargo eso no es algo de lo que haya que alegrarse como si alguien con alguna
limitación física hubiera recuperado su buena salud. Un aspecto de esto es que la racionalidad
del pensamiento impone un límite al concepto que tiene una persona de su relación con el
cosmos. Por ejemplo, un no-zoroastriano podría considerar a Zaratustra simplemente como un
loco que arrastró a millones de ingenuos seguidores a un culto de adoración ritual del fuego.
Pero sin esa "locura" Zaratustra habría sido solo otro de los millones o billones de individuos
que han vivido y después han sido olvidados.

John F. Nash, Autobiografía tras la concesión del Premio Nobel, 1994

En 1994 se otorgó el Premio Nobel en Economía a Nash, Harsanyi y Selten 21 por sus desarrollos en el
campo de la teoría de juegos. La economía tradicional se ha basado casi exclusivamente en perspectivas
provenientes de la competencia perfecta y el monopolio como casos polares y la competencia
monopolística como combinación de ambos, excluyendo el problema de la competencia real. Tanto en
la competencia perfecta como en el monopolio todo está en equilibrio y no hay amenazas de entrada de
nuevos competidores, de guerra de precios, de nuevas tecnologías o de nuevas políticas
gubernamentales, ni interacciones entre las reacciones y decisiones de los participantes en el mercado
en condiciones usuales estáticas de corto plazo. A pesar de que hay antecedentes en la teoría
económica en términos de reacciones e interacciones entre los participantes, es un hecho que el

21
John F. Nash. Estadounidense, nació en 1928. Licenciatura y maestría por el Carnegie Institute of Technology,
doctorado por Princeton. Profesor en el Massachusetts Institute of Technology (MIT) de 1951 a 1959.
Desde niño, su comportamiento reveló su extraordinaria capacidad intelectual y sus dificultades para relacionarse
con los demás. A lo largo de su vida, su mayor característica fue un impedimento para relacionarse con los demás en
términos de igualdad. A los catorce años empezó a mostrar interés por las Matemáticas y la Química.
En junio de 1945 entró al “Carnegie Institute" para estudiar Ingeniería Química y comenzó a destacar en
Matemáticas. Su profesor lo convenció para que se especializara en ellas. En 1948 aceptó una beca de la Universidad
de Princeton, para realizar sus estudios de doctorado en Matemáticas, donde trabajaban en ese momento genios
como Einstein o Von Neumann, lo que hizo aumentar su ansia por destacar, por superarse a sí mismo y a los demás y
por obtener reconocimiento. En 1949, propuso el sistema de equilibrio de mercados vigente en la actualidad,
rebatiendo las teorías de Adam Smith. A los ventiún años, en 1950, se doctoró con una tesis de menos de treinta
páginas sobre "Juegos No-Cooperativos", lo que desde entonces se llamó "el equilibrio de Nash", que tuvo un
inmediato reconocimiento entre todos los especialistas. Nash comenzó a trabajar para la RAND, institución dedicada
a la investigación estratégica.
En 1958 le diagnosticaron esquizofrenia, cuando la enfermedad era ya manifiesta, aunque posiblemente llevaba años
desarrollándose e internado por cincuenta días un año después y varias veces en otras oportunidades. Nash recibió el
premio Nobel de economía en 1994
Sus teorías han influido en las negociaciones comerciales globales, en los avances en Biología evolutiva, o en las
relaciones laborales nacionales.
Varios años después, consiguió regresar a la Universidad. Hasta unos pocos años atrás impartía clases de
matemáticas. Su vida se resume en la película de 2001 “Una mente maravillosa”, con Russell Crowe en el papel de
Nash y ganadora de varios premios Oscar
John C. Harsanyi. Nacido en Budapest, Hungría en 1920. Emigró a Estados Unidos de América en 1961. Largamente
asociado con la Universidad de California.
Reinhard Selten. Alemán, nacido en 1930. Licenciatura y doctorado por la Universidad de Frankfurt. Profesor en la
Universidad Libre de Berlín, Universidad de Bielefeld y en la de Bonn.

200
pensamiento económico ha estado dominado en los análisis en períodos cortos por las visiones de la
competencia perfecta donde la competencia ya se dio y el monopolio, donde por definición no se
puede dar. Por supuesto, tanto en el caso del monopolio puro como en el de los carteles, los
economistas han estado conscientes de la posibilidad de que a mediano y largo plazos, la perspectiva de
la sustitución tecnológica, de los consumos o la entrada de nuevos productores, erosionen los modelos
usados, pero los modelos polares, en base sobre todo a su mayor simplicidad y determinación de
resultados y a que las inferencias analíticas no difieren substancialmente de los modelos mixtos, han
dominado la manera de pensar.

La mayor importancia de las estructuras de mercado de pocos productores y de la competencia global,


así como el reconocimiento de las decisiones de política económica entre pocos líderes dentro y entre
países, han puesto de manifiesto la necesidad de estudiar situaciones en las que hay estrategias. Una
empresa toma sus decisiones de precios o de expansión de su producción tomando en cuenta las
reacciones de sus posibles competidores, que a su vez actúan considerando las reacciones de los demás.
Esto es en esencia la competencia estratégica, que caracteriza precisamente la toma de decisiones en
muchos e importantes casos de la economía y la política económica.

La ausencia de rigor y de resultados definidos en los modelos de pocos participantes inhibió en el pasado
el pensamiento estratégico formal en la economía. Con el desarrollo de la teoría de juegos por los
autores distinguidos con el Nobel de Economía en 1994 se ha creado un instrumento matemático
apropiado para la competencia estratégica, con el resultado previsible de impulsar tanto el análisis
matemático como el analítico de las decisiones estratégicas, tomando más en serio la competencia
entre pocos.

Asimismo, al reconocer formalmente la existencia de equilibrios potenciales múltiples, la posibilidad de


resultados alternativos posibles, dependiendo de situaciones probables o inciertas (situaciones riesgosas
o con incertidumbre), alienta la credibilidad de enfoques previos en esta dirección y amplía las
perspectivas en el análisis de las decisiones económicas, de política económica y de economía política.

Los principios para aplicar la teoría de juegos a la economía fueron presentados por Oskar Morgenstern y
John Von Neumann en su Teoría de Juegos y el Comportamiento Económico (1944) (Ver Capítulo 11).
Nash distinguió entre juegos cooperativos, en los que existen acuerdos que se cumplen, y no
cooperativos, donde no los hay. El equilibrio de Nash se refiere al equilibrio de juegos no cooperativos
en los que los jugadores tienen información completa de las ganancias esperadas y de las estrategias de
los participantes.

El punto de equilibrio de Nash es una situación en la que ninguno de los jugadores siente la tentación de
cambiar de estrategia ya que cualquier cambio implicaría una disminución en sus pagos. Von Neumann y
Oskar Morgenstern habían ya ofrecido una solución similar pero sólo para los juegos de suma cero. Para
la descripción formal del problema y su solución, Nash utilizó funciones de mejor respuesta y el teorema
del punto fijo de los matemáticos Brouwer y Kakutani.

En los años siguientes publicó nuevos escritos con originales soluciones para algunos problemas
matemáticos y de la teoría de juegos, destacando la "solución de regateo de Nash" para juegos
bipersonales cooperativos. Propuso también lo que se ha dado en llamar "el programa de Nash" para la
reducción de todos los juegos cooperativos a un marco no cooperativo.

Selten desarrolló los aspectos dinámicos. Así, los equilibrios no cooperativos múltiples encontrados por
Nash han sido clarificados por Selten al eliminar aquellos que no son razonables en términos
económicos. Por ejemplo, una situación macroeconómica típica de desequilibrio externo con desempleo
puede considerarse un equilibrio de Nash, en tanto los inversionistas extranjeros estén dispuestos a
financiar el déficit, de otro modo no. En el caso del equilibrio con desempleo, un mal equilibrio
definitivamente, es a pesar de ello un equilibrio de Nash, en tanto que la amenaza de los afectados por
deshacer el juego y romper las estrategias instrumentadas no sean creíbles. Selten ha trabajado
suponiendo conocimiento de las probabilidades de los diferentes eventos, analizando también juegos
con probabilidad de errores en el juego y su impacto en el equilibrio.

Harsanyi prosiguió el mejoramiento de la teoría de juegos considerando situaciones en las que no se


conocen completamente las retribuciones de las estrategias o las estrategias mismas. Es decir, juegos
con ignorancia, incertidumbre o información incompleta.

Lo anterior, incidentalmente, clarifica tesis incomprendidas de Keynes y los post-keynesianos, en el


sentido de diagnosticar el desempleo como situación de equilibrio bajo incertidumbre, incomprensión

201
que ha obstaculizado el enriquecimiento de puntos de vista, vulgarizando el pensamiento de Keynes e
induciendo políticas económicas incongruentes con las reglas mismas del sistema económico capitalista.

La teoría de juegos es aplicable y ha sido aplicada al resultado de subastas, al análisis de estrategias


industriales, al comportamiento de los bancos centrales, etc. En general, en toda decisión de pocos
participantes en interacción, con información completa, probable o incierta. También en la definición
de reglas que eviten conductas depredatorias, por ejemplo, en la subasta pública de derechos en ramas
que por razones tecnológicas, del consumo del bien, o de otro tipo, requieren de la protección de la
amenaza de competidores potenciales para que la subasta sea atractiva.

Al clarificar la existencia de equilibrios estables pero malos y la posibilidad de resultados no


deterministas, abre el horizonte para el pensamiento de alternativas no dogmáticas, al considerar que
hay equilibrios sub-óptimos o de sub-juegos, para los cuales habría que buscar nuevos arreglos, pero
evaluando racionalmente los costos y resultados de diferentes opciones. El desarrollo de instituciones,
leyes, arreglos organizacionales, ideas e ideologías, programas y políticas que fomenten la creatividad y
cooperación sobre bases realistas, es un panorama en el que muchos pensadores han creído como parte
de su visión del mundo y que, ahora, con el prestigio y rigor analítico de la teoría de juegos, gana
credibilidad. La teoría de juegos puede contribuir a vencer la cerrazón y esterilidad del pensamiento
determinista, mecánico y dogmático, quizá no tanto en términos exclusivamente matemáticos, por la
enorme dificultad de formalizar matemáticamente situaciones relativamente sencillas, sino como modos
y actitudes de ver la realidad. Es probable que esta sea la contribución más importante de la teoría de
juegos.

12.1 El dilema de los prisioneros

Dos delincuentes son detenidos y encerrados en celdas de aislamiento de forma que no pueden
comunicarse entre ellos. El fiscal sospecha que han participado en el robo del banco, delito cuya pena
es diez años de cárcel, pero no tiene pruebas. Sólo tiene pruebas y puede culparles de un delito menor,
tenencia ilícita de armas, cuyo castigo es de dos años de cárcel. Promete a cada uno de ellos que
reducirá su condena a la mitad si proporciona las pruebas para culpar al otro del robo del banco.

Las alternativas para cada prisionero pueden representarse en forma de matriz de pagos. La estrategia
"lealtad" consiste en permanecer en silencio y no proporcionar pruebas para acusar al compañero. Por
tanto, "traición", es la estrategia alternativa.

Dilema del Preso Y


Prisionero
Matriz de Pagos Lealtad Traición
(años de carcel)
Lealtad 2/2 10/1
Preso X
Traición 1/10 5/5

Los pagos a la izquierda o a la derecha de la barra indican los años de cárcel a los que es condenado el
preso X o Y respectivamente según las estrategias que hayan elegido cada uno de ellos.

En vez de expresar los pagos en años de cárcel, se puede indicar simplemente el orden de preferencia
de cada preso de los correspondientes resultados, con lo que el modelo pasa a tener aplicación más
general.

Dilema del Preso Y


Prisionero
Matriz de Pagos Lealtad Traición
(orden de preferencias)
Lealtad 2/2 4/1
Preso X
Traición 1/4 3/3 (*)

La aplicación de la estrategia maximín conduce en este juego a un resultado subóptimo. Al no conocer


la decisión del otro preso, la estrategia más segura es traicionar. Si ambos traicionan, el resultado para
ambos es peor que si ambos hubieran elegido la lealtad. Este resultado es un punto de equilibrio de
Nash y está señalado en la matriz mediante un asterisco. Como se ve, es un resultado peor que el
“cooperativo” (ambos leales)

202
El dilema del prisionero, tal como lo hemos descrito, es un juego de suma no nula, bipersonal,
biestratégico y simétrico. Fue formalizado y analizado por primera vez por A. W. Tucker en 1950. Es
posiblemente el juego más conocido y estudiado en la teoría de juegos. En base a él se han elaborado
multitud de variaciones, muchas de ellas basadas en la repetición del juego y en el diseño de estrategias
reactivas.

12.2 Duopolios y Teoría de Juegos


Extractado de Martínez Coll, Juan Carlos (2001): "La teoría de juegos" en La Economía de Mercado, virtudes e
inconvenientes http://www.eumed.net/cursecon/8/La%20Teoria%20de%20Juegos.htm consultado diciembre de 2002.

En el oligopolio, los resultados que obtiene cada empresa dependen no sólo de su decisión sino de las
decisiones de las competidoras. El problema para el empresario, por tanto, implica una elección
estratégica que puede ser analizada con las técnicas de la Teoría de Juegos.

Suponga que dos empresas, Hipermercados Xauen y Almacenes Yuste, constituyen un duopolio local en
el sector de los grandes almacenes. Cuando llega la época de las tradicionales rebajas de enero, ambas
empresas acostumbran a realizar inversiones en publicidad tan altas que suelen implicar la pérdida de
todo el beneficio. Este año se han puesto de acuerdo y han decidido no hacer publicidad por lo que cada
una, si cumple el acuerdo, puede obtener unos beneficios en la temporada de 50 millones. Sin embargo
una de ellas puede preparar en secreto su campaña publicitaria y lanzarla en el último momento con lo
que conseguiría atraer a todos los consumidores. Sus beneficios en ese caso serían de 75 millones
mientras que la empresa competidora perdería 25 millones.

Los beneficios o pérdidas mostrados a la izquierda de cada casilla son los que obtiene Xauen cuando
elige la estrategia mostrada a la izquierda y Yuste la mostrada arriba. Los resultados a la derecha en las
casillas son los correspondientes para Yuste.

Yuste
Cooperar Traicionar
Xauen Cooperar 50/50 25/75
Traicionar 75/25 0/0

El que lo máximo que se puede obtener sea 75 o 85 no tiene mucha influencia sobre la decisión a
adoptar, lo único que importa en realidad es la forma en que están ordenados los resultados. Si
substituimos el valor concreto de los beneficios por el orden que ocupan en las preferencias de los
jugadores, la matriz queda como la mostrada en el cuadro. Las situaciones como las descritas en esta
matriz son muy frecuentes en la vida real y reciben el nombre de Dilema de los Presos.

Yuste
Cooperar Traicionar
Xauen Cooperar 2°/2° 4°/1°
Traicionar 1°/4° 3°/3°

Veamos cuál debe ser la decisión a adoptar por esos almacenes. El director de la división de estrategia
de Xauen pensará: "Si Yuste no hace publicidad, a nosotros lo que más nos conviene es traicionar el
acuerdo, pero si ellos son los primeros en traicionar, a nosotros también nos convendrá hacerlo. Sea
cual sea la estrategia adoptada por nuestros competidores, lo que más nos conviene es traicionarles".

El director de la división de estrategia de Yuste hará un razonamiento similar. Como consecuencia de


ello ambos se traicionarán entre sí y obtendrán resultados peores que si hubieran mantenido el acuerdo.
La casilla de la matriz de pagos marcada con un asterisco es la única solución estable: es un punto de
equilibrio de Nash. Contrariamente a las argumentaciones de Adam Smith, en las situaciones
caracterizadas por el Dilema de los Presos si los agentes actúan buscando de forma racional su propio
interés, una "mano invisible" les conducirá a un resultado socialmente indeseable.

12.3 Modelo Halcón Paloma

En el lenguaje ordinario entendemos por "halcón" a los políticos partidarios de estrategias más agresivas
mientras que identificamos como "paloma" a los más pacifistas. El modelo Halcón-Paloma sirve para

203
analizar situaciones de conflicto entre estrategias agresivas y conciliadoras. Este modelo es conocido en
la literatura anglosajona como el "hawk-dove" o el "chicken" y en español es conocido también como
"gallina".

Supongamos ahora otra situación ligeramente diferente. Si ambas empresas se enredan en una guerra de
precios, haciendo cada vez mayores rebajas, ambas sufrirán importantes pérdidas, 25 millones cada
una. Han llegado al acuerdo de no hacer rebajas con lo que cada una podrá ganar 50 millones. Si una de
ellas, incumpliendo el acuerdo, hace en solitario una pequeña rebaja, podrá obtener un beneficio de 75
millones mientras que la otra perdería muchos clientes quedándose sin beneficios ni pérdidas.

Yuste
Cooperar Traicionar
Xauen Cooperar 50/50 0/75
Traicionar 75/0 25/25

Si, como en el caso anterior, substituimos los valores concretos por su orden en la escala de
preferencias obtenemos una matriz que es conocida en Teoría de Juegos como Gallina o Halcón-
Paloma.

Yuste
Cooperar Traicionar
Xauen Cooperar 2°/2° 3°/1°
Traicionar 1°/3° 4°/4°

El razonamiento de los estrategas será ahora diferente: "Si nuestros competidores cooperan, lo que más
nos interesa es traicionarles, pero si ellos nos traicionan será preferible que nos mostremos cooperativos
en vez de enredarnos en una guerra de precios. Hagan lo que hagan ellos, nos interesará hacer lo
contrario".

En el juego "Gallina" el orden en que actúen los jugadores es muy importante. El primero en intervenir
decidirá Traicionar, forzando al otro a Cooperar y obteniendo así el mejor resultado. La solución de
equilibrio puede ser cualquiera de las dos marcadas con un asterisco en la matriz de pagos, dependiendo
de cuál haya sido el primer jugador en decidirse. Ambas soluciones son puntos de equilibrio de Nash.

En casi todos los modelos, sea cual sea la forma de la matriz, el protocolo o reglas del juego influirá
mucho en la solución. Además del orden de intervención de los jugadores, habrá que tener en cuenta si
el juego se realiza una sola vez o si se repite cierto número de veces, la información de que disponen en
cada momento, el número de jugadores que intervienen y la posibilidad de formar coaliciones, etc.

En la filmografía holywoodiense se han representado en varias ocasiones desafíos de vehículos


enfrentados que siguen este modelo. Los dos vehículos se dirigen uno contra otro en la misma línea
recta y a gran velocidad. El que frene o se desvíe ha perdido. Pero si ninguno de los dos frena o se
desvía...

También se ha utilizado este modelo abundantemente para representar la guerra fría entre
superpotencias. La estrategia Halcón consiste en este caso en proceder a una escalada armamentística y
bélica. Si un jugador mantiene la estrategia Halcón y el otro elige la estrategia Paloma, el Halcón gana y
la Paloma pierde. Pero la situación peor para ambos es cuando los dos jugadores se aferran a la
estrategia Halcón. El resultado puede modelizarse con la siguiente matriz de pagos.

Jugador Y
Cooperar Traicionar
Jugador X Cooperar 2°/2° 3°/1°
Traicionar 1°/3° 4°/4°

Obsérvense las sutiles pero importantes diferencias de este modelo con el Dilema del Prisionero. En
principio la matriz es muy parecida, simplemente se han trocado las posiciones de los pagos 3º y 4º,
pero la solución y el análisis son ahora muy diferentes.

204
Hay aquí dos resultados que son equilibrios de Nash: cuando las estrategias elegidas por cada jugador
son diferentes; en la matriz aquí representada esas soluciones están marcadas con un asterisco.
Compruébese, por el contrario, que en el Dilema del Prisionero el equilibrio de Nash está en el punto en
que ambos jugadores traicionan.

Otra notable diferencia de este juego con otros es la importancia que aquí adquiere el orden en que los
jugadores eligen sus estrategias. Como tantas veces en la vida real, el primero que juega, gana. El
primero elegirá y manifestará la estrategia Halcón con lo que el segundo en elegir se verá obligado a
elegir la estrategia Paloma, la menos mala.

12.4 Modelo de la Guerra de los Sexos


El modelo de "La guerra de los sexos" es un ejemplo muy sencillo de utilización de la teoría de juegos
para analizar un problema frecuente en la vida cotidiana.

Hay dos jugadores: "ÉL" y "ELLA". Cada uno de ellos puede elegir entre dos posibles estrategias a las que
llamaremos "Fútbol" y "Discoteca".

Supongamos que el orden de preferencias de ÉL es el siguiente:

1º (lo más preferido) ÉL y ELLA eligen Fútbol.


2º ÉL y ELLA eligen Discoteca.
3º ÉL elige Fútbol y ELLA elige Discoteca.
4º (lo menos preferido) Él elige Discoteca y ELLA elige Fútbol.

Supongamos que el orden de preferencias de ELLA es el siguiente:

1º (lo más preferido) ÉL y ELLA eligen Discoteca.


2º ÉL y ELLA eligen Fútbol.
3º ÉL elige Fútbol y ELLA elige Discoteca.
4º (lo menos preferido) Él elige Discoteca y ELLA elige Fútbol.

La matriz de pagos es como sigue:

ELLA
Fútbol Discoteca
Fútbol 1/2 3/3(*)
EL
Discoteca 4/4 2/1
Los pagos representan el orden de
preferencias. A la izquierda de la barra, los
pagos a EL. A la derecha los pagos a ELLA

Este juego, tal como lo hemos descrito, es un juego sin repetición y sin transferencia de utilidad. Sin
repetición significa que sólo se juega una vez por lo que no es posible tomar decisiones en función de la
elección que haya hecho el otro jugador en juegos anteriores. Sin transferencia de utilidad significa que
no hay comunicación previa por lo que no es posible ponerse de acuerdo, negociar ni acordar pagos
secundarios ("Si vienes al fútbol te pago la entrada").

El problema que se plantea es simplemente un problema de coordinación. Se trata de coincidir en la


elección. Al no haber comunicación previa, es posible que el resultado no sea óptimo. Si cada uno
de los jugadores elige su estrategia maximín el pago que recibirán (3\3) es subóptimo. Esa solución,
marcada en la matriz con un asterisco, no es un punto de equilibrio de Nash ya que los jugadores están
tentados de cambiar su elección: cuando ELLA llegue a la discoteca y observe que ÉL se ha ido al fútbol,
sentirá el deseo de cambiar de estrategia para obtener un pago mayor.

El modelo que hemos visto es un juego simétrico ya que jugadores o estrategias son intercambiables sin
que los resultados varíen. Podemos introducir una interesante modificación en el juego convirtiéndolo
en asimétrico a la vez que nos aproximamos más al mundo real. Supongamos que las posiciones 2ª y 3ª
en el orden de preferencias de ÉL se invierten. ËL prefiere ir solo al Fútbol más que ir con ELLA a la
Discoteca. La matriz de pagos queda como sigue:

205
ELLA
Fútbol Discoteca
Fútbol ½ (*) 2/3
EL
Discoteca 4/4 3/1

Si ELLA conoce la matriz de pagos, es decir, las preferencias de ÉL, el problema de coordinación
desaparece. Está muy claro que ÉL elegirá siembre la estrategia Fútbol, sea cual sea la elección de
ELLA. Sabiendo esto ELLA elegirá siempre la estrategia Fútbol también, ya que prefiere estar con ÉL
aunque sea en el Fútbol que estar sola aunque sea en la Discoteca. La estrategia maximín de ambos
jugadores coincide. El resultado, marcado con un asterisco, es un óptimo, un punto de silla, una
solución estable, un punto de equilibrio de Nash. Obsérvese que esta solución conduce a una situación
estable de dominación social del jugador que podríamos calificar como el más egoísta.

206
Capítulo 13.
Modelos de Inventario

13.1 Demanda
13.2 Faltantes
13.3. Tiempo de espera
13.3.1 Estrategias de pedido
13.4 Cantidad a ingresar al inventario
13.5 Punto de reposición
13.6 Costos
13.6.1 Costo de trámite de compra
13.6.2 Costo unitario de la compra
13.6.3 Costo de inventario
13.6.4 Costo de faltante
13.7 Modelos determinísticos
13.7.1 EOQ
13.7.2 EOQ con descuentos por cantidad
13.7.3 Modelo de cantidad de pedidos de
producción
13.8 Modelos con demanda probabilística
13.8.1 Modelos de revisión continua
13.8.2 Modelos de revisión periódica
13.9 Inventarios justo a tiempo
13.10 Problema de demanda probabilística en un
período simple (problema del canillita)

207
L
a administración de inventarios es una técnica que permite mantener en depósito los materiales
necesarios para la producción de bienes, servicios o ventas directas sin caer en problemas de escasez,
aprovechando economías por compra de cantidades en determinados momentos, mantener un adecuado
flujo en la corriente principal del establecimiento (flujo productivo, flujo de servicios, flujo de ventas,
etc.) y evitar costos de mantenimiento de almacenes sobrecargados, o pérdidas por vencimiento de
productos perecederos. El administrador de inventarios debe saber en cualquier momento cuándo y
cuánto reponer de cada uno de los ítems que componen su almacén.

En esta primera parte, se presentan los términos usuales y las características generales de los modelos
de inventario. En algunos de estos términos puede aparecer el símbolo con que se trabaja en el resto de
la discusión.

13.1 Demanda (D).


Lo primero que debe establecerse es si los diferentes artículos que componen un inventario están o no
relacionados entre sí. Por ejemplo, la mayor parte de los artículos de una casa que vende
electrodomésticos son independientes entre sí. La demanda de televisores de la semana no afecta la
demanda de heladeras de la próxima semana. Por el contrario, los elementos de almacén de una
terminal automotriz están relacionados entre sí, son dependientes, y su demanda sigue la demanda de
producto terminado: por cada automóvil que se demanda se requerirán cinco ruedas completas, y para
cada una de ellas, una llanta, una cubierta, cinco bulones...

Se tomará el supuesto de que la demanda es siempre independiente.

La demanda también puede ser clasificada según sea determinística (se conoce la demanda de cada
artículo por unidad de tiempo) o probabilística (no se conoce con certeza la demanda).

13.2 Faltantes
En ciertas ocasiones puede existir falta de material en almacén en el momento que es demandado. Lo
que puede ser admisible o ser inadmisible, según la incidencia e importancia del suministro faltante
(pueden faltar televisores de 42” en un negocio que vende todo tipo de electrónicos pero es diferente
que falte leche en una hospital de niños), también puede ser generadora de pérdidas o de satisfacción
retrasada y de otros costos, como penalizaciones (el negocio de los televisores perdió la venta de uno de
42”, pues el cliente fue a otro negocio, una fábrica puede compensar una falta de provisión cuando ésta
se regulariza).

13.3 Tiempo de espera (L)


Es el lapso que transcurre desde que se efectúa el pedido de artículos hasta que se dispone de esos
artículos. La demanda de bienes continúa mientras se desarrolla el tiempo de espera.
13.3.1 Estrategias de pedido
La forma de determinar cuándo y cuanto hay que pedir obedece a una de dos estrategias posibles:

1. Pedido en lapsos de tiempo fijos. Se solicita la cantidad que arroja el nivel de inventario en el
momento en que se realiza el pedido. La cantidad varía. El tiempo es constante.
2. Pedido por número fijo: se deja caer el inventario hasta un número fijo y entonces se realiza un
pedido que también es un número fijo. La cantidad es fija, el tiempo varía.

13.4 Cantidad a ingresar al inventario (Q).


Es la cantidad de unidades que se solicitará al proveedor o que se fabricarán para reponer el inventario.
Debe tenerse presente que esta cantidad no significa que es el número de unidades disponibles en
almacén, ya que ese número varía en el tiempo a una tasa D.

13.5 Punto de Reposición (R)


Es el remanente en inventario que indica que llegó el momento de reponer, ya sea mediante una orden
de reposición o una orden de producción.

13.6 Costos
13.6.1 Costo de trámite de compra. (K)
Es el asociado con cada pedido, es un costo fijo independiente del número de unidades solicitadas.
Engloba los costos administrativos, de puesta a punto, a veces de flete, etc.

208
13.6.2 Costo unitario de la compra (C)
Es el costo de cada artículo, si se multiplica por el número de artículos solicitados se obtiene el gasto de
compra del inventario. Contablemente no es un costo estricto, ya que este, generalmente, se recupera
cuando el artículo sale del almacén. Si es de producción propia también debe registrarse como si se
comprara a un proveedor externo. Puede presentar valores que se modifican con la cantidad solicitada
tales como descuentos por cantidad u ofertas.

Descuentos por cantidad


El precio de un artículo puede ser función de la cantidad adquirida. Puede ser beneficioso pagar menos
comprando más en lapsos mayores si el costo de almacén lo permite.
13.6.3 Costo de tener un inventario (H).
Incluye
 costos de almacenamiento, (valor de alquiler del depósito o amortización, cuidados especiales como
frío u otros, robos, depreciación, obsolescencia o vencimiento, etc.). Generalmente se establece el
costo como una fracción del valor unitario.
 costos de inmovilización de dinero invertido. Si se supone que una prestigiosa agencia de venta de
autos desea mantener un inventario de 30 vehículos por los que abonaron por cada uno $ 90000,
significa que disponen de un capital cercano a 3 millones que está inmovilizado y que en el mercado
financiero le hubiera reportado por lo menos $ 300000 anuales a muy bajo riesgo. Este valor es un
costo de oportunidad.

Estos costos se calculan como una fracción (i) del costo unitario (C): H = i * C

La fracción i se denomina tasa de transferencia y, en general, es un término contable global que


incluye la incidencia de costos en términos de inversión en un negocio alternativo seguro (baja tasa).
Contablemente, la tasa de transferencia no solo se refiere al valor del capital inmovilizado, sino
también a la incidencia de otros costos tales como seguros, frío, mantenimiento de productos en stock,
riesgo de obsolescencia, etc.
13.6.4 Costo de faltante (B).
Es el costo asociado con la falta de un artículo:
 costos de faltante explícitos: se asocian a cada unidad faltante. Incluye descuentos en el valor por
demora en la entrega o costos extras para conseguir los faltantes de urgencia.
 costos de faltante implícitos: se asocian con la no satisfacción de la demanda: lo que se perdió de
vender, la pérdida de prestigio. Generalmente se estima.
 costos de faltante compuestos: son los costos anteriores a los que se suman sanciones contractuales
por no entregar en fecha.

13.7 Modelos determinísticos


Para trabajar con inventarios se utilizan algunos modelos básicos que son capaces de dar información
sobre cantidad óptima de pedidos, frecuencia de revisión, costos asociados, puntos de stock críticos, y
otros datos.
13.7.1 Modelo de cantidad de pedidos económicos (EOQ)
Características del modelo:
1. El inventario es para un solo artículo
2. La demanda es determinística de D unidades del artículo por unidad de tiempo
3. El tiempo de espera L es determinístico y se conoce
4. No se permiten faltantes. (Condición asociada con la demanda determinística)
5. Los pedidos se hacen en una cantidad fija Q cuando el inventario llega a un cierto punto R, llamado
punto de reposición. Esto quiere decir que hay que revisar el inventario para saber cuando se
alcanza la cantidad R. Los valores de Q y de R se eligen para tener un costo total mínimo compuesto
por:
* costo fijo de pedido, K, [$/pedido]
* costo de compra, C, [$/unidad], sin descuento por cantidad
* costo de conservación, H = i*C, [$/unidad x tiempo de almacén]
* No hay costo por faltante.

EJEMPLO:
Una panadería de la ciudad de Pergamino requiere un suministro fijo de levadura que es provista por
una empresa de Rosario. Se debe determinar cómo hacer los pedidos para que nunca falte la levadura
manteniendo los costos lo más bajos posible.

Se identifican las características del inventario según lo expuesto más arriba:


1. Un solo artículo: levadura

209
2. Se provee en lotes
3. La demanda es constante y determinística, D = 15 kg/mes
4. El proveedor entrega en una semana, L = 1 semana
5. No puede dejar de elaborar pan. No se permite faltante.
6. El costo de pedido fijo K = $100
7. La levadura tiene un precio de $ 20/kg sin descuentos por cantidad C = 20$/kg
8. La tasa de transferencia i es de 30% anual (calculada sobre la base de que hay ciertos costos como
mantener la levadura en freezer, el costo de capital inmovilizado, etc.) i = 0,30

Como primer paso hay que homogeneizar unidades, porque aparecen lapsos de tiempo diferentes. Si se
supone que la panadería trabaja todas las semanas del año, entonces tiene una actividad de 52 semanas
por año:
1. Demanda D = 15 kg/mes x 12 mes/año = 180 kg/año
 7 dia semana
2. Tiempo de espera L = 1 semana = 0,019 año  L  365 dia 
 año 
3. Tasa de transferencia i = 0,30 año-1
4. Costo del pedido K = 100 $/pedido
5. Costo unitario de mercadería pedida C = 20 $/ kg
6. Costo de almacén H = iC = 0,30 x 20 = 6 $/kg año

Para analizar el caso, supóngase que se establece – arbitrariamente - que se piden lotes de 45 kg de
levadura (Q = 45 kg). Esa es la cantidad inicial de inventario. Si se grafica el inventario en función del
tiempo Q vs. t:

Como la demanda es determinística, la disminución de inventario a razón de 180 kg/año lleva a agotar
el stock en un cuarto de año. Como no está permitido tener faltante, el pedido de renovación del
almacén debe llegar exactamente en el momento en que se acaba el inventario anterior: 0,25 de año.

El costo anual asociado con esta estrategia es:

Costo Costo Costo Costo


anual = anual de + anual de + anual de
total pedidos compra almacén
donde
costo anual de pedidos = costo por pedido X cantidad de pedidos anuales =
= K (D/Q) =
= 100 x (180/45) = 400
costo anual de compra = costo unitario X demanda =
=CD=
=20 X 180 = 3600
costo anual de almacén = inventario promedio X costo anual de almacén =
=(Q/2) H = (Q/2) (i C) =
= 22,5 X 0,30 X 20 = 135.
Entonces, el costo total anual, será:
400 + 3600 +135 = 4135

210
El siguiente paso es analizar lo que ocurre para diferentes cantidades de pedido de inventario (Q)
identificando aquel que minimice el costo anual.

Generalizando se grafica para cualquier cantidad de reposición, Q, para lo cual la expresión resultante
para el Costo anual total se presenta de la siguiente manera:

Costo total anual = (KD/Q) + (CD) + ( ½ Q i C )

que se puede representar, en un plano $ vs. Q, cada monomio comenzando por el término KD/Q,
siguiendo por el costo de compra, que permanece constante cuando aumenta la cantidad de compra y
terminando con el costo de conservación, que varía linealmente con la cantidad adquirida. Como el
objetivo es encontrar la cantidad de pedidos más económica, Q, habrá que buscar el mínimo de la
función compuesta por estos tres costos. Debe observarse que el término CD no es función del nivel de
inventario Q, ya que la demanda debe disponerse completa independientemente del inventario
establecido. En el caso del ejemplo, los 180 kg de levadura deben adquirirse ya sea todos de una vez o
en compras diarias o semanales.

Por esa razón y por la escala utilizada, el monomio CD no se grafica.

La solución para el pedido económico se obtiene derivando CT respecto de Q e igualando a cero:

211
1 d 1
d (CT )  KDd   (CD)  HdQ 
 Q  dQ 2
KD H
 2 
Q 2
KD H
0 2 
Q 2

2DK 2DK 2  180  100


Q    77,46
H iC 0,30  20
el siguiente paso será calcular el costo total anual de esta política de inventario:

Costo total anual = K(D/Q) + CD + (QiC)/2 =


= 100 x 180/77,46 + 20 x 180 + 77,46 x 0,3 x 20 / 2 = 4064,76

El número de pedidos por año, que es obtenido dividiendo la demanda por período entre cantidad del
pedido
D/Q = 180 / 77,46 = 2,32 pedidos por año.

El tiempo entre pedidos será


T = Q / D = 77,46/180 = 1/ 2,32 = 0,43 año.

Cálculo del momento de realizar pedidos

Hay que determinar el nivel de inventario (R) para realizar un nuevo pedido de manera tal que cuando
ese nivel se agote llegue el nuevo pedido.

En el caso de la levadura, el tiempo de espera L es de 1/52 de año, por lo que se necesita saber cuanta
levadura hace falta disponer en ese lapso para cubrir la demanda:

212
R = DL
R = 180 Kg/año x (1/52) año = 3,46 kg de levadura.

por lo tanto, cuando queden 3,46 kg de levadura hay que solicitar un nuevo embarque de 77,46 (o 78)
kg.

Cálculo avanzado de R
Corresponde tener presente que en el caso de calcular el Punto de Reposición se pueden dar dos
alternativas. La primera de ella se analiza más adelante en el modelo de Pedidos Económicos de
Producción (POQ).

La segunda posibilidad es que el tiempo guía (L) sea igual o mayor que el tiempo entre pedidos (o la
duración de un ciclo de inventario)

En ese caso, a la demanda total del período L (que originalmente es R) se le debe restar el número de
ciclos de inventario completos que abarca este tiempo L multiplicado por la cantidad óptima a pedir (Q)
lo cual daría el verdadero punto de reposición:

[ ( )]
Tres ejemplos:
1) D = 180
L = 0,019
Q = 77,5
R = 180 x 0,019 – (entero (180 x 0,019/77,5) x 77,5) = 3,42 – 0 x 77,5 = 3,42

El primer ejemplo tiene un ciclo de espera de 0,019 año (problema original), por tanto cuando existan –
en CUALQUIER MOMENTO DEL AÑO – 3,42 kg en el depósito hay que hacer el pedido. Es exactamente
igual a como está desarrollado en el modelo anterior.

2) D = 180
L = 1 (año)
Q = 77,5
R = 180 – (entero (180/77,5) x 77,5) = 180 – 2 x 77,5 = 180 – 155 = 25

El segundo ejemplo tiene un ciclo de espera de un año, por tanto cuando existan – en CUALQUIER
MOMENTO DEL AÑO – 25 kg en el depósito hay que hacer el pedido. Mientras se espera ese pedido va a
llegar el pedido anterior hecho un tiempo antes

3) D = 180
L = 4 años
Q = 77,5
R = 180 X 4 – (entero(180 X 4/77,5) x 77,5 = 720 – 9 x 77,5 = 720 – 697,5 = 22,5

El tercer ejemplo tiene un ciclo de espera de cuatro años, por tanto cuando existan – en CUALQUIER
MOMENTO DEL AÑO – 22,5 kg en el depósito hay que hacer el pedido. Mientras se espera ese pedido van
a llegar pedidos anteriores

Resolución del modelo con WinQSB


En WinQSB se utiliza el módulo Inventory Theory and System y en ese módulo se elige el método EOQ.
(NOTA: las siglas EOQ corresponden a Modelo de Inventario de Cantidad de Pedido Económico – por
Economic Ordering Quantity

213
Observar que la unidad de tiempo solicitada puede ser ingresada con cualquier sintaxis, pues no es
operable. Los datos se cargan en forma simple y en el orden desarrollado en el texto:

El tercer renglón de la tabla de entrada corresponde al producto de i por C, o sea, H.

Con estos datos se procede a resolver el problema mediante el menú Solve and Analyse, obteniéndose
como resultado:

Esta planilla confirma el pedido óptimo de 77,46 y el punto de nuevos pedidos (R = 3,42), el intervalo
entre pedidos (0,4303) y la información Máximo número de pedidos en espera (Maximum backorder)
indica que en cualquier momento del año, no habrá pedidos anteriores en espera. Además se presentan
los costos anuales derivados de esta estrategia de compras.

Los valores incluyen el costo de comprar los 180 kg de levadura anuales (Total material cost) que se
presenta separado de los costos “puros” del inventario que son el costo de orden y el costo de almacén
con su subtotal.

La suma de todo brinda un grand total (obsérvese que los costos de almacén y de pedido son iguales
¿poqué?).

214
También es posible obtener un análisis gráfico del inventario en la opción correspondiente del menú
Resultados, como se muestra a continuación para dos ciclos de inventario:

Mediante el mismo menú se puede obtener un análisis gráfico de los costos:

por último puede realizarse un análisis paramétrico sobre algunos de los valores ingresados, tales como
la demanda. A título de ejemplo se muestra en la figura que se selecciona entre 170 y 190 kg y se
analiza en cambios de 5 kg:

se obtiene la siguiente planilla de análisis paramétrico:

215
En resumen...
El Modelo de pedido en cantidades económicas se maneja con los siguientes datos:
D = demanda por período
L = Tiempo de espera para recibir el pedido
i = tasa de transferencia por período
K = costo fijo de pedido
C = costo de compra por unidad
H = i C = costo de almacén por unidad de tiempo
2DK 2DK
Q 
H iC
promedio pedidos por u de tiempo = D/Q
tiempo entre pedidos = Q/D
punto de nuevos pedidos = R = DL o bien
[ ( )]

13.7.2 Modelo de cantidad de pedidos económicos con descuento por cantidad


Siguiendo el mismo ejemplo de la sección anterior, con el que fue hallada la estrategia de
almacenamiento óptimo para levadura comprada a 20 $/kg, se supone ahora que se recibe una oferta de
descuento por cantidad. Se replantea el problema con los datos anteriores y los descuentos ofertados:

Demanda anual D = 180 kg


Tiempo de espera L = 1/52 año
Tasa de transferencia anual i = 0,3
Costo fijo de pedido K = $ 100/pedido
Costo de compra C = $ 20/kg de 1 a 49 kg
C = $ 18/kg de 50 a 99 kg
C = $ 16/kg de 100 o más kg
Costo de conservación anual H = i.C

Se resuelve siguiendo estos pasos:


a) Determinando el Q (cantidad de pedido óptimo) para cada uno de los costos unitarios C.
2DK
Para costo de compra C = 20 $/kg Q  77,5
iC
C = 18 $/kg Q = 81,6
C = 16 $/kg Q = 86,6

Debe observarse que en el caso de C = 16$/kg el resultado obtenido (86,6 kg) está por debajo del límite
donde ese precio es válido (que es de 100 kg) y que en el caso de C = 20 $/kg, la cantidad a solicitar
(77,5 kg) está por encima del período de validez de la oferta de precio, que son 50 kg.

Para encontrar el óptimo, se aplica el siguiente criterio:


 Si la cantidad de pedidos Q es más alta que el límite superior del intervalo de validez de
precios, se toma ese límite superior como óptimo para el intervalo.
 Si la cantidad de pedidos Q es más baja que el límite inferior de validez del precio, se toma el
límite inferior como óptimo para el intervalo.
 Obviamente cualquier valor que se encuentre dentro de los límites será el óptimo de ese
intervalo.

b) Calculando el costo anual total para cada costo unitario C hallado en a)


costo total anual = costo anual de pedidos + costo anual de compras + costo anual de conservación

costo total anual = KD/Q + CD + ½ (iCQ)

216
(Nota: en este caso debe computarse el monomio CD porque C es variable)

Se obtiene:

Intervalo C ($/kg) Q Costo total anual ($)


1 - 49 20 49 4114,35
50 - 99 18 81,6 3680,91
99 - 100 16 100 3300,00

c) Seleccionando el menor costo anual total


como se ve en la tabla anterior corresponde a un pedido de 100 kg, pues tiene el costo asociado menor.
El número de pedidos promedio = D/Q = 180/100 = 1,8
Punto de reposición R = DL = 180/52 = 3,46

Con WinQSB, el análisis puede ser realizado a partir de la pantalla de inicio del módulo:

se llena la planilla de entrada (la misma que en el modelo anterior) pero agregando en el anteúltimo
renglón (Number of discount breaks) que habrá dos puntos de corte de descuento, ya que si se analiza la
oferta, se presenta un corte de descuento en 50 unidades y otro en 100:

se especifica el tipo de descuento, para ello se accede al Menú Edición, Puntos de descuento a fin de
explicitar los puntos de descuento y el porcentaje que, a partir de esa cantidad, se aplica como
descuento:

Posteriormente se debe optar en el menú Edición, Características del descuento la opción que permite
que el descuento se aplique al costo de inventario (Holding Cost – Also discount) y que vale para todas
las unidades en Discount Type:

217
Se está en condiciones de solicitar la solución del problema, con lo que se encuentra el análisis
completo, similar al ya hallado anteriormente, con la recomendación de una orden de 100 unidades:
13.7.3 Modelo de Inventario de cantidad de pedidos de producción

Este modelo, cuya sigla es POQ, por sus iniciales en inglés, se diferencia del anterior en que la
reposición del almacén no es por lotes sino que se van entregando las unidades a medida que llegan o
son producidas, sin que se interrumpa la demanda, tal como ocurriría en el caso en que el inventario
está al final de una línea de producción destinada a satisfacer la demanda de otra línea.

El problema consiste en determinar:


 Momento a emitir la orden de producción del artículo
 Cantidad del artículo a producir

Como en el caso anterior se deben considerar los siguientes supuestos básicos del modelo:
 El inventario es de un solo artículo
 La demanda del artículo es determinística y ocurre a una tasa conocida de D unidades por período.
 El tiempo de espera es determinístico y conocido L
 El pedido se produce con una tasa de producción conocida P
 El costo de producción por unidad es fijo y no depende de la cantidad de unidades producidas, se
incluye en el costo del pedido K
 Cada unidad producida tiene un valor o costo C
 No se permiten faltantes
 Cuando el inventario alcanza un nivel R se emite el pedido de producción de Q unidades. Tanto R
como Q se eligen para que el costo anual total sea mínimo, compuesto por
o costo fijo por pedido (incluye el costo de producción) K
o costo de almacén o conservación por período H = iC
o no hay costo por faltantes: no se permiten faltantes.
Mediante un ejemplo se ve el desarrollo del modelo

Autopop, produce un modelo “fuera de línea” que tiene altos costos de ensamblaje con una demanda
fija de 6000 unidades por año. Se planea producirlo a mínimo costo. Para iniciar una corrida de
producción se necesita un tiempo de espera L = 1 semana y se producen a una tasa de P = 900
unidades/mes.

El costo de producción no varía con el número de unidades producidas, que tiene que ser un promedio
de 6000/año.

El costo de organización de producción es de $ 5100 por corrida de producción, el valor de cada unidad
C es de $ 15000. La tasa de transferencia i (costo de oportunidad del dinero invertido en almacén) es de
0,24.

En resumen y en unidades coherentes, el problema se plantea con los parámetros:

P = 900 unidades/mes Tasa de producción


D = 6000 u/año x 1/12 año/mes = 500 u/mes Demanda anual
L = 1 semana = 12/52 mes Tiempo de espera
K = $ 5000 Costo de organización
C = $ 15000 Costo de un vehículo
i = 0,24 /año = 0,24/12 = 0,02/mes Tasa de transferencia
H = i. C = 0,02 x 15000 = $ 300/vehículo Costo de almacén

218
Para estudiar el caso se parte de la suposición de inventario cero e inicio de una corrida de producción
que, tentativamente, es establecida en Q = 450 unidades, que se producen a razón de P = 900 /mes, lo
que requiere un tiempo de producción de
Q/P = ½ mes.

Durante ese tiempo los autos se están entregando a razón de 500/mes, por lo que el almacén acumula
desde el comienzo de la producción hasta el final un total de
(P - D) Q/P = (900 - 500) x 450 / 900 = (400 u/mes) x (½ mes) = 200 unidades

Como los autos se entregan a una tasa de 500 al mes, este almacén se agota en 200/500 = 0,4 meses,
dando un ciclo completo de 0,9 mes.

Si el tiempo de espera es de 12/52 = 0,231 mes, el pedido debe realizarse


0,9  0,231 = 0,669 mes.

Para evaluar el costo de esta propuesta de producir 450 autos, se calcula:


costo mensual total = costo de organización + costo de conservación

costo de organización: es lo que cuesta un pedido por el número de pedidos mensuales:


K (D/Q)
costo de conservación: es el inventario medio por el costo de almacén (iC) de cada unidad:
½ ((P  D) Q/P)iC =
= ½ ((900  500) 450/900) iC

Costo mensual total = K D/Q + ½ ((P  D) Q/P)iC =


= 5000 x 500 / 450 + 100 x 0,02 x 15000 = 35555,56

Para generalizar el análisis económico a cualquier cantidad Q producida, se procede con los siguientes
parámetros:
1. Organización de producción por (unidad de tiempo) = D/Q
2. Costo de organización por (udt) = K D/Q
3. Duración de la producción = Q/P
4. Incremento neto de inventario durante la producción = (P  D)
5. Nivel de inventario máximo = (P  D)Q/P
6. Inventario promedio (1/2)(P  D) Q/P
7. Costo de inventario por (udt) = inventario promedio x H = (1/2)(P  D) (Q/P) H =
8. = (1/2)(P  D) (Q/P) i C
9. Costo total = costo de organización por (udt) + costo de conservación por (udt)
costo total = K D/Q + ( ½ )(P  D ) (Q/P) i C

219
Para encontrar el mínimo, es decir la cantidad óptima a producir para lograr el mínimo costo de
almacén se utiliza:
2 DK 2 DK
Q 
 P D P D
H  iC  
 P   P 
Para el ejemplo que seguimos, P = 900; D = 500; K = 5000; i = 0,02 y C = 15000, por lo que

2  500  5000
Q  193,65
 900  500 
0,02  15000  
 900 
Puede observarse que la expresión anterior es conceptualmente idéntica a la de EOQ, ya que en aquella
se considera que la tasa de producción es muy alta (pendiente de la recta infinita), que, por otra parte
es el valor M que se ingresa en WinQSB. Eso da un ritmo de acumulación instantáneo y el paréntesis del
denominador pasa a ser unitario, por lo que queda el modelo EOQ.

El número promedio de pedidos es D/Q = 500/193 = 2,6.

Resta ahora determinar el momento de realizar el pedido de producción, de manera tal que el stock
llegue a cero cuando se entregue la primera unidad producida. El tiempo de espera es 1 semana, (0,231
mes), y debe calcularse la demanda de unidades en ese período de tiempo, lo que es función del tiempo
de espera: en efecto, si el nuevo pedido se realiza
 después de haber terminado la corrida de producción anterior, la demanda durante el tiempo de
espera será satisfecha por el almacén.
 antes de haber terminado la corrida anterior, la demanda se satisface con la producción y debe
acumularse hasta el final de producción la cantidad necesaria en el depósito para cubrir la demanda
remanente.

220
En todo caso, si R vale, por ejemplo 5 unidades, hay dos momentos en el tiempo en que en el inventario
hay cinco unidades: cuando se acumula stock y cuando se está agotando. El valor R = 5 no indica cual de
los dos es. La figura muestra ambas alternativas:

El primer caso se resuelve como en el modelo EOQ, donde R = DL. En el segundo, deben seguirse estos
pasos:

a) Determinar el tiempo T que se requiere en cada ciclo de producción para que el nivel de
inventario vuelva a cero (ciclo de inventario)

T = Q / D = 193/500 = 0,386

b) Encontrar el tiempo en que termina la producción anterior:

t = Q (vehículos)/P(vehículos/mes) = 193/900 = 0,214. mes.

c) Se resta el tiempo de espera, (L = 0,231 mes) del ciclo completo (T = 0,386), para hallar el
momento en que hay que efectuar el nuevo pedido

T  L = 0,386  0,231 = 0,155 mes,

este momento ocurre antes de que se termine la producción anterior que tenía un tiempo t (que es
0,214 mes)

d) Calcular el punto de nuevos pedidos, encontrando el inventario acumulado durante el tiempo


de producción al momento de emitir la orden, o sea lo acumulado en 0,155 mes a una tasa de
P - D = 900  500 = 400 unidades/mes,

así que hay que hacer el pedido cuando en el almacén se encuentren

400 unidades/mes x 0,155 mes = 62 unidades.

En ese momento hay que solicitar Q = 193 unidades, que comenzarán a producirse cuando el stock
se agota.

221
Este problema puede ser resuelto con WinQSB, utilizando también el modelo EOQ pero ahora
completando la tasa de reposición que deja de tener una pendiente infinita (lote) para pasar a tener un
valor que corresponde al ritmo de producción (900). La unidad informada en este caso fue mes:

222
13.8 Modelos con Demanda Probabilística
13.8.1 Modelo de revisión continua
Cuando se discutió, en este mismo capítulo, el modelo EOQ se hizo notar que se trabajaba sobre una
demanda conocida determinística. Para presentar un modelo basado en demanda probabilística se
retoma el mismo problema de la provisión de levadura visto en ese párrafo.

La demanda de 180 kg anuales de levadura, en el caso visto, obedecía a una previsión. Digamos que ese
valor puede ser un muy buen promedio anual, pero puede ocurrir que exista la posibilidad de que se den
fluctuaciones en la demanda y que generen incertidumbre.

Para poder resolver un caso de este tipo sería necesario conocer la distribución de probabilidad de la
demanda, lo que es difícil de lograr, por eso, en general, se usan distribuciones normales como una
razonable aproximación.

Así el problema de la levadura se resuelve pidiendo 77 kg cuando quedaran 3,46 kg. Debe tenerse en
cuenta que esta estrategia se basa en que el inventario se agota justo cuando llega la reposición. Una
demanda de 1 kg de más, que ocurra en el lapso que media entre el momento en que se hizo el pedido
y el momento en que llega, agotaría el stock antes de tiempo.

Puede ocurrir que el tiempo entre pedidos varíe si el momento de realizar un nuevo pedido depende de
una demanda probabilística desconocida. Como la demanda puede ser fluctuante mientras transcurre el
tiempo de espera, puede haber déficit. Por ello resulta conveniente tratar de conocer la posibilidad de
agotar el stock antes de tiempo.

Una forma de controlar el faltante es establecer un nivel de servicio (), que podría definirse como la
mínima probabilidad deseada de satisfacer la demanda.

 = P(satisfacer la demanda en un ciclo de inventario)

o, mejor aún, la probabilidad de que la demanda durante el tiempo de espera L (DL) sea menor o igual a
lo que hay en el inventario cuando se realizó el pedido (R):

 = P(DL  R)

Por ejemplo, especificar un nivel de servicio  = 0,95 significa que se satisface la demanda de levadura
en, por lo menos, el 95% de los ciclos de inventario, o, que en no más del 5% de los ciclos de inventario
habrá faltante.

La existencia de seguridad, S, es un inventario adicional que se dispone para cubrir las fluctuaciones
de la demanda durante el tiempo de espera. Se determina S en conjunto con R (punto de nuevo pedido,
de manera tal que R + S en el inventario durante el tiempo de espera cubra por lo menos el nivel de
servicio 
P(DL  R + S)  

Esta solución aumenta el costo de almacén, pues se eleva el nivel de inventario, por lo cual hay que
determinar el mínimo S, que equivale a “satisfacer el nivel de servicio adoptado con el mínimo costo
posible”. Para ello es necesario, como se dijo, conocer la función de probabilidad de la demanda, o
describirla adoptando una distribución como la normal.

223
Caso 1. Demanda probabilística. A iguales tiempos de espera (L) pueden ocurrir faltantes

Caso 2. El mismo inventario con la adición de existencias de seguridad (S)

Para utilizar la distribución normal y así determinar la cantidad S se debe estimar la media, L, como la
demanda promedio durante el tiempo de espera L
L = R
y la desviación estándar, L, de la demanda durante el tiempo de espera L

Volviendo al ejemplo de la levadura, se supondrá ahora que el dato de la demanda era, en realidad, una
demanda promedio D’ = 180 kg/año, que tenía, por ejemplo, una varianza σ2 de 100 kg/año.

Estos valores deben ser convertidos, ya que tanto la media como la varianza están dados en valores
anuales, por lo tanto ambos deberán calcularse durante el tiempo de espera L (1/52 año). Para hacer
esto se puede suponer que la media y la varianza en esa fracción de tiempo es la misma fracción de los
valores anuales. Por ejemplo:
Para el año:  = 180 kg, σ2 = 100,  = 10
Para ¼ de año  = 180/4 = 45,  = 10/4 = 2,5
Así se puede calcular:
L = R = D’ L
2L = 2 L
L =  L1/2
Para el ejemplo de las levaduras:
L = 180 x (1/52) = 3,46
L =  L1/2 = 10 x (1/52)1/2 = 1,4

224
Como se busca que la probabilidad de la demanda durante el tiempo de espera menor o igual a R + S sea
 se debe encontrar un valor R+S para el que el área debajo de la curva a la izquierda del mismo sea
igual a 

Para un  = 0,95, se busca el valor de Z en tablas de distribución normal: a 0,95 se le resta la mitad del
intervalo (0,5) y el resultado (0,45) se lo busca como área (es el área a la izquierda de Z cuyo valor es
igual a ). Con ese valor se busca el Z que le corresponde: 1,64 para 0,4495 y 1,65 para 0,4505.
Interpolando es 1,645.

También puede calcularse con Excel (la figura superior corresponde hasta versiones 2007, la inferior a
las posteriores):

( R  S)   L S
z 
L L
S  z L  1,645  1,4  2,303
Esto significa que para asegurar un nivel de servicio de 0,95, se deben solicitar 77 kg de levadura cada
vez que el inventario disminuya hasta R + S = 3,46 + 2,303 = 5,76 kg de levadura.

Obsérvese que el nivel de seguridad, en realidad NO se adquiere como tal, sino que se hace el nuevo
pedido cuando queda la cantidad R más el nivel de seguridad.

¿Cuál es la diferencia con el modelo determinístico? En aquel se puede calcular el momento (tiempo) en
que se debía hacer el pedido, en cambio en este caso para saber cuando solicitar levadura hay que
revisar el inventario continuamente hasta encontrar que cae por debajo de - en números redondos - 6
kg.

Al agregar una cantidad extra al inventario, S, aumentan los costos:

Costo anual total = Costo de pedidos anual + costo de compra anual + costo de conservación anual =

225
 D'   Q  
Costo anual total =  K   (CD)    S iC 
 Q  2  
 180  77  
  100    (20  180)    3  0,30  20  4082,77
 77   2  
(Se redondeó S en 3 kg). Debe observarse que el costo original de 4064,77 se incrementó en 3 kg por la
tasa i de 0,30 por el costo por kg de la levadura. También es interesante resaltar otros dos aspectos: la
cantidad a solicitar, Q, es la misma, por lo tanto los ciclos de inventario no varían y el costo asociado
con el primer monomio no cambia (costo por comprar). El único que varía es el costo de almacén
afectado por el nivel de seguridad S.
13.8.2 Modelo de revisión periódica.
El modelo de revisión periódica presenta una alternativa a la necesidad de revisar los inventarios
continuamente, ya que se basa en una revisión única en un lapso de tiempo fijo. También se ejemplifica
mediante el problema de la levadura, cuyos principales datos son:

Demanda con distribución normal con media D’ = 180 kg/año y  = 10 kg.


Tiempo de espera L = 1/52 año
Tasa de transferencia anual i = 0,30
Costo de pedido K = 100 $/pedido
Costo de compra C = 20 $/kg
Costo de conservación anual H = iC = 0,30 x 20 = 6 $/kg año
Nivel de servicio  = 0,95
Se debe hacer inventario cada mes (cuatro semanas)

La Ilustración muestra como opera la variación en el tiempo del inventario:


Se supone que al fin de un período de 4 semanas se encontró que hay una existencia de I1 kg de
levadura. Con este dato se piden q1 kg de levadura. Esta cantidad se incorpora al inventario luego de
transcurrido el tiempo de espera L de una semana, mientras tanto se usa la levadura que había (I1 ).
Cuando pasó la semana del tiempo de espera, el nivel de inventario se eleva en lo que quedaba después
de consumir durante una semana la cantidad I1 más el pedido q1.

A partir de ese momento el inventario decrece según una demanda probabilística hasta que se llega al
nuevo punto de revisión T de 4 semanas. (3 semanas después que llegó el pedido anterior). Nuevamente
el nivel de almacén se incrementa en q2 kg.

226
Generalizando, si la existencia al momento de revisar es I y se solicita q, la cantidad I + q debe durar
hasta que llegue el siguiente pedido que lo hace después de un tiempo T + L. Por ejemplo: si hay un
inventario de I = 4 kg, la demanda esperada durante las siguientes
T + L = 4 + 1 = 5 semanas es
180 kg/año x 5/52 semanas/(semanas/año) = 17,31 kg.

Esta demanda se satisface con q = 17,31  I = 17,31  4 = 13,31 kg adicionales.


Como la demanda es probabilística, hay un 50% de probabilidad que esa cantidad no alcance, así que
debe solicitarse más de 13,31 kg.

Para saber cuánto más, hay que recordar que se estableció un  = 0,95, que significa que en el 95% de
las veces debe alcanzar para satisfacer la demanda, (que anualmente se distribuye con una media D’ =
180 y una desv. estándar de 10), en el tiempo T + L.= 5 semanas, cuya distribución será normal con
media
T+L = D’ (T + L) = 180 x 5/52 = 17,31
y desviación estándar
T + L = ((T + L)2)1/2 = ((5/52)x100)1/2 = 3,1

La cantidad q debe elegirse de tal manera que el área bajo la curva normal con una media de 17,31 y
una desviación estándar de 3,1 a la izquierda de I + q sea igual a un nivel de  = 0,95.

Para poder hallar q hay que utilizar el valor Z asociado a 0,95= 1,645.
Con ello se puede calcular q de la siguiente manera:
( I  q )  T  L
z
 T L
q  T  L  ( z T  L )  I 
q  17,31  (1,645  3,1)  4  18,409
También se puede calcular q utilizando en Excel la función DISTRIBUCIÓN NORMAL INVERSA y restando
los 4 kg que se habían encontrado en el almacén:
=DISTR.NORM.INV(P;;) – 4 (Excel anterior a 2007)
=INV.NORM(P;;) – 4 (Excel 2010 y posteriores)

quiere decir que debe realizarse un pedido de 18 o 19 kg para tener un 95% de probabilidades de
satisfacer la demanda en las próximas cinco semanas antes que llegue el siguiente pedido. Este pedido,
junto a la existencia proporciona un nivel de stock de zT+L = 1,645 x 3,1 = 5 kg por arriba de la
demanda media esperada de 17,31 kg.

Si se decide hacer una revisión cada 8 semanas, se verá que aumenta T+L y por tanto la existencia de
seguridad: cuanto menos frecuentes sean las inspecciones, más caro será el inventario pues aumenta la
existencia de seguridad.

227
Por otro lado debe tenerse en cuenta que la cantidad necesaria para satisfacer la demanda durante el
período T + L en el  especificado es q + I. Esta cantidad, q + I, debe ser siempre la misma:

I  q   T  L  ( z T  L )  17,31  (1,645  3,1)  22,41

Cuando se revisa el inventario y se encuentra que quedan I kg de levadura, hay que pedir

q = (22,41  I ) kg de levadura,

por ello es sencillo mantener una hoja de cálculo con una celda destinada a ingresar el nivel del
inventario encontrado en la revisión y que opere por diferencia con la constante (en este caso 22,41)
brindando el monto a reponer. En la figura se muestra una posible hoja y la función que, por arrastre,
permite calcular los posibles pedidos en función del inventario encontrado:

Costos
En el ejemplo, la frecuencia de pedidos será 1 cada 4 semanas (T = 4 semanas  4/52 año), por lo tanto el costo
anual es:
Costo anual de pedido = costo del pedido X número de pedidos (promedio) = K/T = 100 X 52/4 = $ 1300

Costo anual de compra = demanda (promedio) X costo unitario = D’C = 180 X 20 = 3600

Costo anual de conservación = inventario (promedio) X costo unitario de conservación =


= (½ (demanda esperada del período T) + existencia de seguridad) H =
= ( ½ (D’ T) + S) iC = ( ½ (D’T) + Z (T+L))iC = ((180 x 2 / 52) + 5,1 ) X 0,3 X 20 =
= 72,14

COSTO TOTAL ANUAL = K/T + D’C + ( ½ (D’T) + Z (T+L))iC


COSTO TOTAL ANUAL = 1300 + 72,14 + 3600 = 4972,14

228
Este costo debe compararse con el obtenido en el caso anterior ($4082,77) y será un indicativo de la
posibilidad de realizar o no revisión continua. También debe observarse que el único miembro que varía
es el que corresponde al costo de almacén, tercer monomio.

Modelo de revisión periódica: Ejemplo de Tabla de pedidos en Excel


Sea el siguiente caso:
Demanda promedio: 180 kg/año
Desviación estándar: 10
Costo unitario: 20 $
Tasa de Transferencia: 0,3
Costo de almacén: 6$
Costo de pedido: $100
Tiempo de revisión: T=4 semanas
Tiempo de entrega, L=1 semana
Nivel de servicio:  = 0,95
T+L = D (T + L) = 180 x 5/52 = 17.31
T+L = ((T+L)2)1/2 = ((5/52)x100)1/2 = 3,1
como:
q  T  L  (Z T  L )  I
se construye la siguiente tabla Excel:
Inventario por revisión periódica - ejemplo

T (semanas) 4 8 10
D media 17,31 31,15 38,08
sigma T+L= 3,10 4,16 4,60
CTA 25,53 38,81 44,90
Cantidad Pedido de Pedido de Pedido de
Inventariada Reposición reposición reposición
0 22,41 38,00 45,64
2 20,41 36,00 43,64
4 18,41 34,00 41,64
6 16,41 32,00 39,64
8 14,41 30,00 37,64
10 12,41 28,00 35,64
12 10,41 26,00 33,64
14 8,41 24,00 31,64
16 6,41 22,00 29,64
18 4,41 20,00 27,64
20 2,41 18,00 25,64
22 0,41 16,00 23,64
24 14,00 21,64
26 12,00 19,64
28 10,00 17,64
30 8,00 15,64
32 6,00 13,64
34 4,00 11,64
36 2,00 9,64
38 0,00 7,64
40 5,64

Revisión periódica con tiempo de espera (L) más largo que el tiempo del
período de revisión (T)
Se debe tener en cuenta que la cantidad I en inventario debe incluir no solo que está en el almacén sino
también lo que está en camino. Por lo demás se calcula igual.

229
13.8.3 Resumen
Revisión Continua
1 Calcular la cantidad óptima a pedir
2D' K
Q
iC
2 Calcular el punto de nuevos pedidos R=D’L
3 Determinar la media como demanda promedio durante el L = R = D’L
tiempo de espera L
4 Determinar la desviación estándar durante el tiempo de L
espera L teniendo como dato la desviación estándar de la
demanda por período
5 Con el nivel de servicio  calcular existencias de seguridad S
encontrar z de forma tal que el área bajo la curva normal
estándar sea 

calcular S = ZL

6 Calcular el punto de nuevos pedidos R+S


Calcular el costo promedio por período
 D' 

  K   CD'  12 Q  S iC
 Q

Revisión periódica
Obtener la desviación estándar de la demanda por período 

El tiempo de revisión T
El tiempo de espera L
El nivel de servicio deseado 
Los componentes de los costos: de pedido, por pedido K
de compra, por unidad C
tasa de transferencia, por período i
Calcular la cantidad para satisfacer la demanda durante el I+q
tiempo T + L
1 Calcular media y desv. estándar
 T  L  D' ( T  L )
 T  L  (T  L)
2 Calcular Z asociada con el nivel de servicio  en una tabla de
distribución normal
3 Calcular la cantidad “correcta” de pedidos I + q =  T+L + (ZT+L)
4 Implementar la estrategia de revisión periódica
5 Revisar el inventario cada T tiempo y ver el nivel de I
unidades que contiene
6 Solicitar q unidades de manera tal que q + I sea la cantidad  T+L + (zT+L) - I
“correcta” de pedidos:
7 Calcular el costo asociado

 K   1    K   1  
     D' T   S iC  D' C      D' T   z T  L iC  D' C
 T   2    T   2  

13.9 Inventarios “Justo a Tiempo” (JIT)


El objetivo es eliminar o reducir los inventarios en procesos de producción: los artículos se obtienen en
el momento en que van a ser utilizados. Se eliminan existencias de seguridad y revisiones innecesarias.
La ventaja es la economía de recursos y la desventaja es que no hay respaldo.
Son condiciones:
1. Proceso de producción repetitivo con demanda relativamente estable
2. Los proveedores deben ser muy confiables. Capaces de entregar con muy poco tiempo de espera (o
con ningún tiempo de espera)
3. La planta debe ser capaz de recibir pedidos pequeños en frecuencias altas
4. Eficiente diseño del lay out de la planta capaz de mantener un flujo armónico de producción
mientras que se recibe en cualquier sector de demanda el artículo necesario
5. Calidad total. No hay respaldo de inventario para reemplazar artículos defectuosos.

El modelo JIT funciona arrastrando el proceso de producción: la demanda del producto final se usa para
accionar la demanda de sus partes componentes en el paso precedente, que -a su vez- activan la
demanda de sus propios componentes. Lo contrario es un modelo de empuje que funciona con
inventarios que activan la producción y el paso siguiente en ella.

230
13.10 Problema de demanda probabilística en un período simple.
(Problema del canillita)

Se dan estos casos cuando no se tiene certeza de la demanda y, además, ésta se da en un único período.
Si no hay existencias para satisfacerla, hay pérdidas de ventas. Estas pérdidas se cuantifican por la
ganancia neta que se dejó de tener (precio de compra menos precio de venta) a la que se le suman los
cargos o multas por faltantes:

C  falt   P  C  B
Si, por contrario, hay exceso de almacén respecto a la demanda (sobrantes) existe un costo por
depreciación del producto representado por la diferencia entre costos y retorno efectivamente obtenido
por reventa a un precio remanente o de saldo. Si el producto no se pudo vender el costo de almacén
será el costo del producto.

C (exc)  C  S
En este caso la demanda es una función aleatoria D = (x). La variable x tiene una función de densidad
de probabilidad que debe especificarse. Los demás parámetros son :

C: costo unitario
P: Precio de venta
S: Precio de saldo por obsolescencia
B: costo por faltante
C(e): costo unitario por exceso de almacén, C(e) = C - S
C(f): costo unitario por falta de almacén, c(f) = P - C + B
 Nivel de Servicio (Probabilidad de que no va a haber faltante ).
Ps: Probabilidad de falta, =1-Ps

Sea el caso de la organización de un Congreso de Aditivos y Colorantes donde se pretende vender una
escultura alegórica a $ 50 con un costo de 20. Se pretende entregar una a cada participante del
Congreso cuya capacidad está estimada en 2000 congresales con una desviación estándar de 300. Si no
alcanzaran las estatuillas se debe abonar una multa de $ 20 a los organizadores. La orden de compra se
tramita con un desembolso de $ 200 y las estatuillas sobrantes se pueden vender a $ 10 a refundidores.
¿Cuántas estatuillas se deben solicitar?

Se utiliza WinQSB en la opción correspondiente (Single period Stochastic Demand (Newsboy) Problem)
Problema del Canillita: Demanda estocástica – período simple.

231
Puede observarse que se calcula el nivel óptimo de inventario (2290) y se establece un nivel de servicio,
, que corresponde al nivel de inventario calculado y no al revés. Se podría haber fijado en la carga de
datos un nivel de servicios, por ejemplo 60% y otro con 95%. Los resultados serían, para el primero,

como se ve se agregó el grupo al nivel solicitado para comparar resultados. Si se corre con el nivel 95%
se obtiene:

232
Capítulo 14.
Técnicas de Administración de proyectos

14.1 CPM
14.2 Proyectos con técnica de choque
14.3 PERT
14.4 Ejemplo integrador

233
C
uando se realiza un proyecto de ingeniería es necesario saber el tiempo de ejecución total del proyecto,
cuales son las tareas a realizar para concretarlo, quienes son los responsables de dicha ejecución,
cuanto tiempo requieren y cuánto cuesta realizar cada una de esas tareas, sus márgenes de tiempo y
costos, cuáles de esas tareas al retrasarse demoran todo el proyecto, y los costos adicionales que
podrían provocar demoras o adelantos en cada una de ellas.

Las técnicas existentes para administrar proyectos complejos fueron desarrolladas en la década de mil
novecientos cincuenta por la empresa química Dupont (Método de camino crítico - CPM ) y por la
marina de guerra de EE.UU. en el desarrollo del proyecto Polaris (Técnica de evaluación y revisión de
proyectos - PERT)22. Ambas técnicas son similares, excepto que CPM utiliza tiempos determinísticos
para la realización de cada tarea, mientras que PERT utiliza tiempos probables.

No obstante, se pueden utilizar diagramas específicos como los Diagramas de Gantt que permiten ver
un proyecto o parte de él como un conjunto de tareas graficadas en una escala de tiempo y las
relaciones temporales entre eventos diferentes.

Tarea A
Tarea B
Tarea C
Meses: ENE FEB ABR MAY JUN JUL AGO SET OCT NOV DIC

14.1 CPM
El método del camino crítico es, realmente, un método base con el cual se pueden desarrollar otras
técnicas administrativas, como se va desarrolla a lo largo del capítulo. Con éste método es posible
obtener en forma muy segura datos de tiempo de realización de un proyecto, costos, tareas críticas,
entre otros.

Para desarrollar el método CPM y la base conceptual de administración de proyectos, supóngase que se
desea saber cual es la fecha de finalización de una obra a fin de lanzar al mercado un nuevo producto.

Se puede determinar el tiempo siguiendo estos pasos:

1. Identificar las tareas individuales que componen el proyecto


2. Obtener el tiempo estimado de conclusión de cada tarea
3. Identificar las relaciones entre tareas: cuales deben terminarse para que puedan comenzar otras
4. Dibujar una red del proyecto.
5. Calcular la fecha de finalización e individualizar aquellas tareas que son críticas.
14.1.1 Identificación de las tareas individuales
Cada tarea puede ser diferente en cuanto a tiempos requeridos como a complejidad o cantidad de
subtareas que conlleva su realización. Por ejemplo, el diseño de una línea de producción puede tener
incorporado el desarrollo de un sistema de control por computadora, tarea que es en si misma un
proyecto y que puede subdividirse en las necesarias para completar ese proyecto. Obviamente no hay
límites ni reglas para decidir el grado de generalización de una tarea, pero se pueden seguir algunas
pautas:

1. Cada tarea debe tener un comienzo y un final claro. Probar una línea tiene inicio claro y final claro.
Vender el producto terminado tiene inicio claro pero no tiene un final definido.

22
La planificación y programación de proyectos complejos, sobre todo grandes proyectos unitarios no repetitivos,
comenzó a ser motivo de especial atención al final de la Segunda Guerra Mundial, cuando se difundió el Gráfico de
Gantt. Hasta finales de los cincuenta ésta fue la única herramienta que se tenía; en esa época, la Oficina de
Proyectos Especiales de la Marina de los Estados Unidos, en colaboración con la Lockheed (fabricantes de proyectiles
balísticos y aviones) y La Booz, Allen & Hamilton (ingenieros consultores), se plantean un nuevo método para
solucionar el problema de planificación, programación y control del proyecto de construcción de submarinos atómicos
armados con proyectiles Polaris, a fin de coordinar y controlar, durante un plazo de cinco años a 250 empresas, 9000
subcontratistas y numerosas agencias del gobierno.
En julio de 1958 se publica el primer informe del programa, denominado Proqramme Evaluation and Review
Technique (PERT - Evaluación de Programas y Revisión Técnica), decidiéndose su aplicación en octubre del mismo
año y obteniendo un adelanto de dos años sobre los cinco previstos.
En 1960 se construyeron en Estados Unidos los primeros submarinos que transportaban y lanzaban mísiles balísticos
de combustible sólido (SLBM, del inglés solid-propellant submarine-launched ballistic missiles). Estos mísiles de
cabeza nuclear (mísiles Polaris) puedían alcanzar objetivos situados a 4.000 km de un submarino sumergido. A
mediados de la década de 1960, la Marina estadounidense desarrolló un misil antisubmarino de gran alcance guiado
por inercia. Este misil podía ser disparado por los tubos para torpedos de cualquier submarino. A finales de la década
de 1960, los misiles Polaris fueron sustituidos en parte por un nuevo tipo de SLBM de más largo alcance: el misil
Poseidón, que puedía transportar hasta diez cabezas nucleares.

234
2. Cada tarea debe estar terminada cuando se termina el proyecto y debe representar un hito en el
proyecto.
3. El tamaño de la tarea debe ser acorde con el nivel de control de quien evalúa y administra el
proyecto: la preocupación del administrador puede ser la instalación de una prensa y su puesta en
marcha, pero no la colocación de los tornillos de basamento. Por lo contrario, el contratista que
coloca la prensa deberá preocuparse por cada aspecto del conjunto.
4. Debe haber responsables de cada tarea.

Así, en el caso del ejemplo a desarrollar, se pueden identificar las siguientes tareas, codificadas A; B, …
hasta H:

TAREA Descripción
A Preparación de los planos y documentación técnica
B Diseño de los materiales de propaganda del nuevo producto
C Producción de la publicidad
D Revisión de los planos y documentación
E Obra base
F Instalación del equipo y prueba
G Permisos y registros legales
H Capacitación de operarios y vendedores

El orden de las tareas en esta tabla no es necesariamente cronológico, pero sí deben preverse todas las
tareas.

14.1.2 Tiempos estimados para cada tarea

La estimación de tiempo para cada tarea se realiza confiando en la experiencia en tareas y proyectos
similares, consultando con quienes las hacen o las han hecho o recurriendo a archivos y datos
anteriores. Se supone por ahora que los tiempos se conocen con bastante seguridad, entonces éstos se
agregan a la lista de tareas anterior en una nueva columna:

TAREA Descripción TIEMPO EST. (sem)


A Preparación de los planos y documentación técnica 30
B Diseño de los materiales de propaganda del nuevo producto 6
C Producción de la publicidad 4
D Revisión de los planos y documentación 5
E Obra base 10
F Instalación DEL Equipo y prueba 8
G Permisos y registros legales 14
H Capacitación de operarios y vendedores 2

14.1.3 Creación de tabla de precedencia

El tiempo de conclusión del proyecto difícilmente sea igual a la suma de los tiempos de conclusión
individuales de cada actividad. Para calcular el tiempo total habrá que conocer las relaciones entre
cada actividad. Por ejemplo, para comenzar la tarea F – Instalación del equipo y prueba, deben haber
concluido otras tareas, verificándose que:

1. se preparó la documentación técnica (A)


2. Se revisaron los planos y la documentación (D)
3. Se realizó la obra base (E)
4. Se obtuvieron los permisos legales (G)

Si se observa con atención se descubrirá que la tarea D (revisión de documentación) no puede comenzar
hasta que los planos y la documentación (A) no hayan sido entregados. La tarea E, realización de la obra
base, no puede comenzar hasta que los planos fueron entregados (A) y corregidos (D). Por último, la
tramitación de permisos, G, no podrá realizarse hasta que los planos hayan sido recibidos (A).

Así, es correcto afirmar que la tarea F podrá comenzarse cuando se concluyan las tareas G (permisos
legales) y E (obra base).

Estas dos tareas G y E, son entonces las tareas predecesoras de la tarea final F.

Hay que construir una lista de tareas predecesoras, identificando, para cada tarea, cuales son las que
deben estar concluidas antes de comenzarla, para lo cual hay que conocer el proyecto en su conjunto y
las relaciones entre las tareas que lo componen.

Se construye una tabla de precedencias agregando a la tabla anterior una nueva columna:

235
TAREA Descripción TIEMPO EST. (sem) Predecec.Inmed.
A Preparación de los planos y documentación técnica 30 ninguna
B Diseño de los materiales de propaganda del nuevo producto 6 A
C Producción de la publicidad 4 B,G
D Revisión de los planos y documentación 5 A
E Obra base 10 D
F Instalación DEL Equipo y prueba 8 E,G
G Permisos y registros legales 14 A
H Capacitación de operarios y vendedores 2 C,F

14.1.4 Diagrama de red

Una red consiste en una colección finita de nodos y arcos, siendo un arco la flecha que conecta cada uno
de los nodos. Hay dos posibilidades:

a) Los arcos representan una actividad. Los nodos representan el inicio y el fin de la actividad.
b) Los nodos representan una actividad. Los arcos conectan las actividades.

Es indiferente el tipo de diagrama que se realice. Sin embargo no es exactamente igual el


procedimiento de solución.

Antes de seguir con el proyecto se muestran ejemplos más simples:

TAREA PREDECESORA INMEDIATA


A Ninguna
B A
C B

Resolución por tarea en arcos:

En este caso, los nodos indican que se inicia o se finaliza una actividad. La actividad A inicia en el
momento 0 y termina en el 1 y está representada con un arco.

Si se representara con nodos, el mismo diagrama anterior se convertiría en el siguiente:

En cualquiera de estos casos queda claro que la actividad B solo puede comenzar cuando finaliza la
actividad A y que la actividad C solo puede comenzar cuando finaliza la B.

Puede ocurrir que sea necesario establecer actividades figuradas, Para mostrar con que criterio se
incluyen estas actividades se dejará momentáneamente el problema que se está siguiendo y se
desarrollará como ejemplo el siguiente caso:

TAREA Predecesora Inmediata


A Ninguna
B Ninguna
C A
D B
E C, D

Las tareas A y B pueden comenzar directamente. Cuando finaliza A, según la tabla de arriba, debe
comenzar C (renglón C, predecesora A) y cuando finaliza B debe comenzar D.

Sin embargo para analizar lo que se debe hacer cuando finaliza la tarea C, se encuentra que el requisito
para seguir es que haya finalizado también la tarea D y así comenzar la tarea E. Si se adopta la
nomenclatura arco-tarea, puede hacerse coincidir en un solo nodo el tiempo de finalización de C y de D:

236
También puede realizarse una actividad figurada de manera tal que uno de los nodos signifique que es
el tiempo para que las dos tareas C y D -ambas- estén terminadas.

O también generando dos actividades figuradas que convergen a un nodo figurado que representa el
momento en que las dos tareas terminaron:

Así –cuando se agrega la actividad E– se tienen, en este caso, tres diagramas que representan
exactamente la misma tabla y que son correctos, el primero sin actividades figuradas y los otros dos con
una o con dos actividades figuradas:

También puede ser necesario estar forzado a añadir actividades figuradas, como lo que ocurre con el
siguiente ejemplo:

TAREA Predecesoras Inmediatas


A Ninguna
B Ninguna
C A
D B
E A,B

Si se utiliza el método habitual para las primeras cuatro tareas, se obtiene la siguiente red:

237
Debe buscarse una manera para indicar que la tarea E debe comenzar cuando A y B, ambas estén
terminadas.

Se muestras algunas alternativas INCORRECTAS:

Esta Red es incorrecta pues, si bien representa un punto de inicio para la actividad E, no es cierto que
las actividades C y D, cada una, requieran que las A y B, ambas, estén finalizadas.

Por otro lado es necesario evitar que dos tareas comiencen y finalicen en nodos únicos: entre 0 y 1 se
han planteado dos caminos paralelos que dificultan el cálculo final del diagrama y que la mayoría de los
programas de computación no pueden resolver.

En este caso se añadió una actividad figurada entre 1 y 2.

En este caso aparece que la actividad D no puede comenzar hasta que A y B, ambas, no estén
terminadas, lo que contraría a la tabla de precedencia.

238
Este diagrama representa una forma correcta: se agregan dos actividades figuradas que convergen a un
nodo figurado (que luego será el inicio de la actividad E).

Pero hay tres nodos, el 3, el 6 y el 4 que figuran como finales del proyecto, lo cual, si bien no es
incorrecto confunde ya que resulta difícil de identificar el nodo que indica la finalización de la tarea.
Una manera más clara de representar todo el conjunto es:

La siguientes figuras muestran los dos ejemplos precedentes en graficación nodal:

Como una guía general, se mencionan situaciones permitidas y sencillas para la notación en arcos:

239
La actividad B puede comenzar al finalizar A

Las actividades B y C no pueden comenzar hasta que


termine A, pero se pueden hacer simultáneamente

La actividad C solo puede comenzar cuando ambas


actividades A y B estén terminadas. A y B pueden
realizarse simultáneamente.

A y B son simultáneas. C y D son simultáneas pero no


pueden comenzar hasta que A y B (ambas) estén
terminadas.

B No puede comenzar hasta que terminen A y C


D puede comenzar cuando termine solamente C

y también se algunos casos incorrectos de diagramación:

INCORRECTOS CORRECTOS

Continuando con el caso de la nueva línea de producción planteado en las páginas anteriores, la figura
presenta dos redes posibles:

240
TAREA Descripción TIEMPO EST. (sem) Predecec.Inmed.
A Preparación de los planos y documentación técnica 30 ninguna
B Diseño de los materiales de propaganda del nuevo producto 6 A
C Producción de la publicidad 4 B,G
D Revisión de los planos y documentación 5 A
E Obra base 10 D
F Instalación DEL Equipo y prueba 8 E,G
G Permisos y registros legales 14 A
H Capacitación de operarios y vendedores 2 C,F

14.1.5 Cálculo de tiempo de terminación del proyecto


Se utiliza la primera de las redes de la figura anterior para calcular el tiempo de terminación del
proyecto. El tiempo de cada tarea se anota junto a la etiqueta de la tarea en cada arco de la red:

Se procede desde el principio, determinando para cada tarea: Tiempo de inicio más temprano (Ti) y
tiempo en que esa tarea puede realizarse (Te).

Con estos datos se puede encontrar el tiempo de terminación más rápido (Tf) que es la suma de Ti más
Te.

241
Se debe recorrer la red desde el principio, anotando los tiempos encontrados. En general el Ti de una
tarea es el máximo de los tiempos de terminación más rápido (Tf) de las tareas precedentes. Aplicando
estas reglas se tendrán los tiempos de cada tarea y el del proyecto.

Cada nodo ahora representa un punto de tiempo o momento en que todos los arcos entrantes han
concluido sus tareas.

Se coloca en cada arco el Ti al comienzo de la flecha, y el Tf en la punta de ella. Con lo que queda
expresado:
La actividad A comienza en 0, dura 30, y finaliza en 0 + 30 = 30.
Tf = Ti + Te
30 = 0 + 30

Con las siguientes tareas no hay inconvenientes en este ejemplo, ya que todas deben comenzar cuando
finalice la tarea A, y, por tanto todas tienen un Ti común, 30

Así el Tf de la actividad A se convirtió en el Ti de las actividades B, G y D, cuyas duraciones nos


permiten calcular sus Tf:

Para B, Tf = Ti + Te = 30 + 6 = 36
Para G: 30 + 14 = 44
Para D: 30 + 5 = 35

Con estos datos se completan las siguientes actividades:

En este punto es claro que no se puede seguir con el nodo 2 porque si bien está completo el arco B falta
completar el arco f1, que corresponde a una actividad figurada.

En cambio el nodo 3 sí puede calcularse, pues todos los arcos entrantes han sido calculados (todos,
porque solo es el arco D).

Por tanto para la actividad E, Ti + Te = Tf = 35 + 10 = 45.

242
Lo mismo puede hacerse con el nodo 4. Todos sus arcos entrantes están completos, por lo tanto para la
actividad f1 y para la actividad f2 se pueden calcular sus Tf:
para f1: 44 + 0 = 44 y para f2: 44 + 0 = 44

Para resolver el nodo 5, se aplica la regla de elegir el máximo de los tiempos Tf entrantes como Ti de
las actividades que comienzan en ese nodo (F). Esto lleva a elegir 45, lo que sumado a 8 da 53 como Tf
de la actividad F.

En el nodo 2, ocurre algo similar. Se debe elegir entre 36 y 44, y se rotula la actividad C con 44 + 4 = 48.
En el nodo 6 nuevamente se debe elegir el valor máximo, 53, que sumado a la duración de la actividad
arroja 55. Este último valor será la duración del proyecto.

que en notación nodal será:

Este, en sí mismo ya es un resultado. Se puede afirmar que el proyecto durará 55 semanas.

Resta hacer alguna pregunta. La actividad G, que es una actividad que depende de muchos factores
externos, si su duración cambia, ¿puede afectar la duración del proyecto?. Es de difícil respuesta, pues
es una actividad que quedó en el medio de la red a diferencia de actividades como la A o la H que están
en extremos y donde se ve claramente que si se alargan o acortan se alarga o acorta la duración de todo
el proyecto.

14.1.6 Actividades críticas

Si en vez de analizar la tarea G se analiza la H, se nota que cualquier retraso o adelanto en ésta
retrasaría o adelantaría todo el proyecto, por lo tanto se dice que H es una actividad crítica.

Para determinar cuáles son tareas críticas en una red se debe proceder desde el final de la red hasta el
inicio, calculando para cada una de ellas, lo siguiente:

1. Lo más tarde que puede terminar una tarea siempre y cuando el proyecto se complete lo más pronto
posible: Tt último tiempo de terminación.

243
2. Último tiempo de inicio Tui que es lo más tarde a iniciar una tarea para que termine en su Ultimo
tiempo de terminación Tt.

Tui = Tt  Te  Ultimo tiempo de inicio = Tiempo de terminación  tiempo de la tarea

Se recorre la red, en esta etapa, en sentido inverso, colocando en la punta de la flecha el último
tiempo de terminación Tt y en la base el último tiempo de inicio:

El arco H tenía en 55 su Tt, con lo que su Tui queda en 53.

Se selecciona el nodo 6, pues están completos todos los arcos que salen , por los cuales se arriba
recorriéndolos en sentido inverso (en este caso, solo el H)

Para la tarea C, se tendrá

Ultimo tiempo de terminación – tiempo de tarea = Tui


53  4 = 49, Tui: ultimo tiempo de inicio
y para la tarea F, 53  8 = 45, último tiempo de inicio

No es posible seleccionar el nodo 4, pues los arcos salientes no están completos, pero sí puede
seleccionarse el nodo 2 y también el nodo 5.

Para la tarea B: 49  6 = 43
Para la tarea f1: 49  0 = 49.
Y en el nodo 5
Para la tarea f2: 45  0 = 45
Para la tarea E: 45  10 = 35

244
Luego se pueden seleccionar los nodos 4 y 3, pues ambos tienen todos sus arcos salientes completos.
En el nodo 4, el último tiempo de terminación será el mínimo de los últimos tiempos de inicio de los
arcos que salen o sea el mínimo entre las actividades f1 y f2 = min (49,45) = 45
La tarea G, tendrá entonces
Tui= Tt  Te = 45  14 = 31

En el nodo 3 se calcula la tarea D: 35  5 = 30

Una vez más se toma el mínimo de los tiempos en el nodo 1, que es 30 y se arriba al nodo 0 con 0.

Con estos datos se construye una tabla de actividades y de camino crítico. El camino crítico se
determina seleccionando aquellas tareas que son críticas: si no hay diferencias entre los tiempos de
inicio y de finalización más tempranos o más tardíos, es decir, si no hay sobrantes de tiempo (slacks),
entonces la tarea es crítica. Por ejemplo, la tarea D se inicia en un nodo 30-30 y finaliza en un nodo 35-
35, por lo tanto es crítica. La tarea B inicia en un nodo 30-30 y finaliza en uno 49-44, no es crítica.

245
TAREA Tiempo Inicio Tiempo de Ultimo Ultimo Retraso
temprano terminación más tiempo de tiempo de Tui  Ti
Ti rápido inicio terminación
Tf Tui Tt
A 0 30 0 30 0
B 30 36 43 49 13
C 44 48 49 53 5
D 30 35 30 35 0
E 35 45 35 45 0
F 45 53 45 53 0
G 30 44 31 45 1
H 53 55 53 55 0
f1 44 44 49 49 5
f2 44 44 45 45 1

El conjunto de arcos que corresponde a tareas críticas constituye el camino crítico del proyecto.

14.1.7 Resolución empleando WinQSB

Se presentan las pantallas sucesivas de WinQSB para este mismo caso:

Se emplea el módulo PERT/CPM. En el menú inicial se consigna CPM determinístico, usando tiempos
normales, y a continuación se completa la pantalla inicial, para lo cual se deberá haber diseñado la red
y tener claro cuales son los nodos precedentes y consecuentes de cada actividad.

246
La pantalla inicial es, simplemente, la tabla de predecesoras. (El nombre de las actividades puede
cambiarse):

Luego de esa carga, seleccionando el menú “Solve and analyze”, “Solve Critical Path”, puede
encontrarse la solución de la red:

Si bien esta es la solución se pueden obtener más datos utilizando las opciones que brinda el menú
“results”, las que se presentan en las siguientes figuras:

1) Ver el camino crítico:

247
2) Diagrama de Gantt:

3) Ver el diagrama en nodos:

4) y por último, realizar un análisis de cuán completo está el proyecto en una determinada fecha. Por
ejemplo, hemos seleccionado el análisis de terminación a las 47 semanas:

248
La información obtenida es el porcentaje de ejecución total y de cada tarea, según fue planteado el
problema, a la fecha solicitada.

14.2 Proyectos con técnicas de choque

Puede ocurrir que el tiempo de finalización encontrado no sea el deseable. Mediante programación
lineal se puede buscar una alternativa de menor tiempo agilizando algunas tareas y sabiendo el costo de
tal agilización.

Continuando con el mismo ejemplo anterior, se supondrá que la solución encontrada (55 semanas) no es
aceptada y se quiere acortar a 47 semanas (2 meses menos).

Acortar tareas seguramente requiere recursos adicionales: horas extra, más personal, etc. Por tanto a
cada tarea hay que agregar:

a. Tiempo de choque: tiempo mínimo posible en que la tarea se puede realizar usando recursos
adicionales.
b. Costo de los recursos adicionales necesarios para reducir el tiempo desde normal al de choque.

En el caso del ejemplo, si se toma la tarea B, que originalmente estaba estimada en 6 semanas, se
descubre que usando horas extras, se puede realizar en 4 semanas. Estas 4 semanas son el tiempo de
choque: menos es imposible. Falta determinar el costo de esas dos semanas de ahorro. Si se supone que
el costo inicial de la tarea B en 6 semanas es de $ 6000, se puede suponer también que el nuevo costo,
en 4 semanas pasa a ser $ 9000. Significa que con el importe adecuado, entre $ 6000 y $ 9000 la tarea se
podrá finalizar en cualquier momento entre 4 y 6 semanas. Sin embargo calcular el costo asociado con
cada alternativa no es simple. Generalmente se utiliza la suposición de que el costo varía linealmente
entre los extremos citados, por lo que el costo por unidad de tiempo para el ejemplo sería:

costo por unidad de tiempo = diferencia entre costo al tiempo de choque y costo al tiempo normal dividido entre
diferencia entre tiempo normal y tiempo de choque.

costo por unidad de tiempo = (9000  6000) / (6  4) = 1500

lo que significa que, por cada semana de acortamiento de la tarea B se aumenta en $ 1500 el costo de la
tarea.

Con estas hipótesis se plantea una tabla de costos de choque para el problema:

249
TAREA TIEMPO COSTO TIEMPO DE COSTO DE REDUCCIÓN COSTO POR
NORMAL NORMAL CHOQUE CHOQUE MÁXIMA SEMANA
A 30 5000 26 9000 4 1000
B 6 6000 4 9000 2 1500
C 4 10000 3 10500 1 500
D 5 5000 3 6500 2 750
E 10 4500 7 6300 3 600
F 8 20000 6 22500 2 1250
G 14 10000 12 15000 2 2500
H 2 25000 2 25000 0 -
Nota: la tarea H no puede acortarse.

14.2.1 Desarrollo del modelo de choque

Identificación de variables de decisión


Para establecer cuales son las variables de decisión, habrá que preguntarse que se puede controlar o se
necesita saber: en este caso es el número de semanas a reducir en cada actividad. Así se identifican las
siguientes variables:

YA = Número de semanas a acortar la actividad A


YB = Número de semanas a acortar la actividad B
...
YH = Ídem en la actividad H

Función objetivo
El objetivo será minimizar el gasto adicional total requerido para satisfacer el tiempo de ejecución
solicitado para el proyecto:
Minimizar:   1000YA  1500YB  500YC  750YD  600YE  1250YF  2500YG  0YH

Restricciones
Se identifican tres grupos de restricciones:
1. Cantidad máxima que puede acortarse cada tarea
2. Tiempo de conclusión establecido al proyecto (47 semanas)
3. Que se respete la tabla de precedencia

1. El primer grupo de restricciones es simple: son los límites de variabilidad de los Yj siendo j= A ... H.
Cada variable podrá adquiri valores entre cero (no acortar) al máximo acortamiento posible.
Para la primer tarea, esto sería:
0  YA  4
Pero como la condición Yj ≥ 0 es la condición lógica de no negatividad, por lo cual no se escribe.

YA 4
YB 2
YC 1
YD 2
YE 3
YF 2
YG 2
YH =0

2. El segundo grupo requiere establecer los tiempos de inicio de las tareas que salen de un nodo. Por
ejemplo, el tiempo de inicio de todas las tareas que salen del nodo 0 es X0 , y el de inicio de las tareas
que salen del nodo 1 será X1 . La restricción del grupo 2 será entonces, que se inicie el proyecto en el
momento 0 y que se termine en no más de 47 semanas:
X0 = 0
X7  47

3. El tercer grupo, se establece con el diagrama en red, y con la siguiente sintaxis:

El tiempo de inicio de todas las tareas que salen del nodo 1  tiempo de terminación de todas las tareas
que entran al nodo 1.

250
Específicamente:
Tiempo de inicio de B, G y D  tiempo de terminación de A + tiempo acortado para la tarea A
Simbólicamente:
X1  X0 + (30  YA )
Para el nodo 2 hay dos restricciones, ya que entran 2 tareas: la B y la f1
X2  X1 + (6  YB )
X2  X4 + 0
Se procede igual para cada nodo, quedando el modelo terminado

Modelo de choque terminado


Minimizar:   1000YA  1500YB  500YC  750YD  600YE  1250YF  2500YG  0YH
Sujeto a:
Restricciones de límite (debe tenerse en cuenta que el lado izquierdo de estas restricciones se elimina
con la restricción de no negatividad)
YA  4
YB  2
YC  1
YD  2
YE  3
YF  2
YG  2
YH = 0
Restricciones de inicio y final:
X0 = 0
X7  47
Restricciones de la red
X1  X0 + (30  YA )
X2  X1 + (6  YB )
X2  X4 + 0
X3  X1 + (5  YD )
X4  X1 + (14  YG )
X5  X4 + 0
X5  X3 + (10  YE )
X6  X2 + (4  YC ).
X6  X5 + (8  YF )
X7  X6 + (2  YH )
Restricciones lógicas
Xj  0 j j = 0, 1, ... , 7

Resolviendo el problema con WinQSB, módulo LP-ILP, se encuentra la siguiente tabla de solución

251
Por tanto es posible finalizar el proyecto en 47 semanas con un costo total de $ 10200. ¿Se puede
mejorar este tiempo? ¿Es posible terminar en menos semanas? ¿a que costo?.
Utilizando técnicas adecuadas de análisis de sensibilidad podrá responder estas preguntas

Técnica de choque con WinQSB

Es posible resolver el problema usando el módulo PERT-CPM de WinQSB, para lo cual hay que seleccionar
en la ventana inicial la opción tiempos y costos de choque:

La planilla que se debe completar es similar a la construida en la presentación del tema:

252
La solución al problema presenta, en el menú Solve and Analyze, dos opciones: encontrar la solución
con el costo y tiempos normales, lo cual presentará la solución ya hallada con el agregado del costo
total del proyecto, que es la suma de los costos de todas las actividades:

La otra alternativa es encontrar camino crítico usando el tiempo de choque, lo que dará un proyecto
llevado al extremo de todas las actividades reducidas al tiempo de choque:

Para realizar un análisis de choque como el ya expuesto, se selecciona la opción Perform crashing
Analysis del menú Solve y Analyze, lo que lleva a un resultado semejante al obtenido por programación
lineal: el costo de la reducción a 47 semanas, el costo original y el nuevo costo. La siguiente secuencia
de figuras muestra la selección de la opción, la carga de la pantalla inicial y la planilla de resultados:

253
En la pantalla de opciones de choque, lo único que se hace es seleccionar el tiempo deseado, 47,
disponiéndose información sobre el tiempo y costo normal y sobre el choque máximo y su costo. Una vez
aceptado se dispone de la información de aceleración:

254
14.3 PERT

Evidentemente pueden existir retrasos imprevistos en la ejecución de una tarea particular de las que
componen un determinado proyecto, ocasionando demoras en todo el tiempo calculado. Es razonable
esperar contingencias probables que influyen en los tiempos estimados. Esas contingencias pueden ser
de índole variada: desde meteorológicas hasta falta de insumos o interrupciones por efecto de una
huelga.

A fin de disponer de una herramienta que permita evaluar el proyecto teniendo en cuenta las
probabilidades de que se cumpla o no el tiempo estipulado, se dispone de la técnica PERT, la cual se
desarrollará siguiendo un ejemplo concreto.
Una empresa constructora de viviendas unifamiliares desea establecer una metodología de proyecto
para cada emprendimiento. Se presenta el programa general y se realizan los pasos ya vistos para
establecer la tabla de precedencia y el diagrama en red del proyecto.

TARE DESCRIPCIÓN PREDECESORAS


A
A CIMIENTOS NINGUNA
B ESTRUCTURA H° A° A
C TECHOS B
D PLOMERÍA A
E INSTALACIÓN ELECTRICA C
F CARPINTERÍA D,E
G REVOQUES INTERIORES F
H REVOQUES Y REVESTIM F
EXTERNOS
I INSPECCIÓN G,H

Con estos datos se construye la red del proyecto:

14.3.1 Estimación de tiempos

La variabilidad de las tareas enunciadas proviene de la incertidumbre sobre condiciones meteorológicas,


abastecimiento de materiales, el ausentismo del personal, condiciones particulares de obra, etc. Esta
variabilidad se tiene en cuenta conociendo la distribución de probabilidad de los tiempos asignados a
cada tarea. Es difícil obtener este dato, ya que implica conocer la media y la varianza como parámetros
que caracterizarán esa distribución, suele ser utilizada una distribución conocida, la distribución beta,
o, más comúnmente una distribución de los tres tiempos:

255
Se obtienen tres estimaciones de tiempo para cada tarea:
 tiempo más optimista (a), o el tiempo más corto en que la tarea puede hacerse
 tiempo más pesimista (b), dentro de un lapso razonable, lo más que se puede tardar en hacer
una tarea
 tiempo más probable (m), es el tiempo en que con más frecuencia se sabe que se realiza la
tarea.

Con estos datos se calcula:


Tiempo esperado: te y desviación estándar s
a  4m  b
te 
6
ba
s
6
Obteniendo los datos necesarios, la tabla se convierte en:
TAREA DESCRIPCIÓN PREDECESORAS a m b te s
A CIMIENTOS NINGUNA 2 3 4 3 0,333
B ESTRUCTURA H° A° A 4 7,5 8 7 0,667
C TECHOS B 3 5,5 11 6 1,333
D PLOMERÍA A 2,5 4 5,5 4 0,500
E INSTALACIÓN ELECTRICA C 2 3 4 3 0,333
F CARPINTERÍA D,E 3 5 7 5 0,667
G REVOQUES INTERIORES F 3 3,5 7 4 0,667
H REVOQUES Y REVESTIM EXTERNOS F 2 5 8 5 1,000
I INSPECCIÓN G,H 1 1 1 1 0,000

14.3.2 Cálculo de tiempo de terminación usando te


De la misma manera que se calculó con CPM, se toma el tiempo esperado como un tiempo
determinístico y se calcula la duración del proyecto:

Utilizando WinQSB se ve que el tiempo de terminación te del proyecto es de 30 semanas, con una s de
1,972 y con excepción de las tareas D, G y f1, todas las demás son críticas, quedando la posibilidad de
atrasar 12 semanas la D y 1 la G.

Para utilizar WinQSB es necesario cargar el problema con la Opción PERT y la distribución por defecto
“estimación por tres tiempos”:

256
Al seleccionar “Solve and analize” y “Solve the problem” se obtiene

Si se solicita en el menú resultados que muestre el camino crítico, puede observarse que en la última
línea aparece el valor de la desviación estándar del proyecto.

14.3.3 Probabilidad del tiempo de terminación

El tiempo calculado precedentemente es el tiempo esperado, pero se sabe que el tiempo de


terminación general del proyecto puede variar porque los tiempos de las tareas son efectivamente
variables. Se podría querer disponer de la probabilidad de terminación de la obra en otro tiempo.

Para saber los datos relacionados con las probabilidades debería conocerse la distribución del tiempo de
terminación del proyecto, lo que es prácticamente imposible, por lo que se aproxima a una distribución
normal, suponiendo que:

257
1. Las tareas que resultaron críticas utilizando los te siguen siendo críticas aunque varíen los tiempos
de terminación reales de esas tareas.
Esta suposición puede ser aplicable o no. Por ejemplo en el caso anterior, si los tiempos reales de
todas las tareas son los tiempos esperados pero la actividad G en lugar de 4 semanas requirió 6,
entonces la actividad G ahora es crítica y la actividad H ya no lo es. Lo que ocurre es que cambió el
camino crítico.
2. El tiempo de finalización de cualquier tarea es independiente de los demás tiempos de terminación
aplicados a las diferentes tareas.
Entonces:

te del proyecto = suma de todos los te de cada tarea crítica

varianza s2 del tiempo de terminación del proyecto = suma de las varianzas de los te de las tareas
críticas

en el ejemplo:
te = teA + teB + teC + teE + teF + teH + teI = 3 + 7 + 6 +3 + 5 + 5 + 1 = 30
s2 = sA2 + sB2 + sC2 + sE2 + sF2 + sH2 + sI2 =
s2 = 0,3332 + 0,6672 + 1,3332 + 0,3332 + 0,6672 + 1,0002 + 02 = 3,889
s2 = 3,889 y desviación estándar s = s1/2 = (3,889)1/2 = 1,9720

En el caso que el proyecto tenga más de un camino crítico debe elegirse aquel que tiene la varianza
mayor.

3. El tiempo de finalización tiene una distribución normal con media y desviación estándar según lo
calculado en la suposición anterior.

Por tanto, el proyecto que se desarrolla tiene una distribución normal con media en 30 semanas y
desviación estándar de 1,9720.

Se pide:

a) Encontrar la probabilidad de finalizar la obra en 32 semanas;


b) Indicar la duración de la obra con un 95 % de confianza.

Resolución:

a) Se debe encontrar el área a la izquierda de 32 en una curva de distribución normal con media 30 y
desviación estándar de 1,972. (Por razones de claridad usaremos como desviación estándar el símbolo σ
– poblacional – en lugar se s)

32   32  30
z   1,014
 1,972

Si se emplea una tabla de distribución normal, se encuentra:

258
Z 0,00 0,01 0,02 0,03 0,04 0,05 0,06 0,07 0,08 0,09
0,0 0,0000 0,0040 0,0080 0,0120 0,0160 0,0199 0,0239 0,0279 0,0319 0,0359
0,1 0,0398 0,0439 0,0478 0,0517 0,0557 0,0596 0,0636 0,0675 0,0714 0,0753
0,9 0,3159 0,3186 0,3212 0,3238 0,3264 0,3289 0,3315 0,3340 0,3365 0,3389
1,0 0,3413 0,3438 0,3461 0,3485 0,3508 0,3531 0,3554 0,3577 0,3599 0,3621

En la tabla se obtiene 0,3447 (interpolando), valor que representa el área bajo la curva en el tramo (z -
media), por lo que se debe sumar el correspondiente a los 30 días (0,5): 0,5 + 0,3447 = 0,8447. Por tanto
la probabilidad de construir en 32 semanas es del 84,47%.

Este análisis se puede hacer en PC usando el menú resultados de WinQSB y ejecutando el análisis
probabilístico:

Una vez seleccionado, aparecerá el siguiente cuadro de diálogo, que se obtiene ingresando la cifra 32 y
haciendo clic en el botón “Compute Probability”:

También se puede usar Excel, con la función DISTR.NORM (hasta 2007) o DISTR.NORM.N (desde 2010)

259
donde el primer parámetro es el tiempo buscado (32), el segundo es la media (30), el tercero es la
desviación estándar (1,972) y un parámetro lógico que permite obtener la probabilidad acumulada.

b) Se determina el punto x donde el área bajo la curva de distribución normal a la izquierda es de 0,95.
En la tabla de distribución normal se busca el valor que corresponde a 95%, 0,95. Como la tabla se
maneja con el intervalo por encima de la media, es 0,95  0,5 = 0,45. El valor que corresponde a 0,45
será z = 1,645.
x x  30
z  1,645  
 1,972
x  1,972  1,645  30  33,24

significa que se puede informar con 95% de confianza que la obra finaliza en 33,24 semanas.

También puede utilizarse Excel, empleando la función DISTR.NORM.INV (o INV.NORM desde 2010) e
ingresar el valor de la media, de la desviación estándar y de la probabilidad deseada:

Se puede aprovechar Excel y construir la siguiente tabla:

260
14.4 Ejemplo integrador

Se firma un contrato para realizar un clip con dibujos animados y que contiene una secuencia inicial con
imágenes de los artistas. Las tareas a llevar a cabo son:

TAREA DESCRIPCIÓN PREDECESORES TIEMPO


(s)
A Hacer la animación - 12
B Preparar títulos - 2
C Instrumentar la música - 8
D Grabar la música C 2
E Mezclar música y animación A,B,D 1
F Preparar la secuencia inicial - 8
G preparar un corto publicitario E 1
H Editar E,F 2
I Hacer las copias G,H 1

Siendo el modelo de red y la solución obtenida en WinQSB:

261
14.4.1 Análisis Administrativo

Se supone que la empresa decide invertir $ 7500 adicionales para acortar el tiempo de realización del
proyecto, con lo que resulta necesario recolectar nuevos datos para poder establecer un análisis de
choque.

TAREA DESCRIPCIÓN Tiempo Tiempo de Costo de


Normal Choque choque ($/s)
A Hacer la animación 12 10 5000
B Preparar títulos 2 1 1000
C Instrumentar la música 8 6 1500
D Grabar la música 2 1 1000
E Mezclar música y animación 1 1 -
F Preparar la secuencia inicial 8 4 2000
G preparar un corto publicitario 1 1 -
H Editar 2 1 500
I Hacer las copias 1 1 -

Sin embargo, lo visto hasta ahora permitía saber el costo de adelantar, que es diferente a saber cuánto
adelantar dentro de un presupuesto dado.
Se presentan dos técnicas.

Técnica 1. Choque con análisis paramétrico


1. Formular el modelo de choque habitual con un tiempo de terminación en 16 semanas.
El modelo de resolución es:
Minimizar: 5000 YA + 1000 YB + 1500 YC + 1000 YD + 0 YE + 2000 YF + 0 YG + 500 YH + 0 YI
Sujeto a restricciones de:
límite:
Yj  0, para todo j=A, B, ...,I
YA  2
YB  1
YC  2
YD  1
YE  0
YF  4
YG  0
YH  1
YI  0
de inicio y final
X0 = 0
X7  16
de nodos:
X1  X0 + (12  YA)
X2  X0 + (2  YB)

262
X2  X3 + (2  YD)
X2  X1 + 0
X3  X0 + (8  YC)
X4  X5 + 0
X4  X0 + (8  YF)
X5  X2 + (1  YE)
X6  X5 + (1  YG)
X6  X4 + (2  YH)
X7  X6 + (1  YI)
de lógica
Xi  0 para todo i=0,1,...,7

2. Resolver el problema. Se observa que con 16 semanas ninguna tarea necesita acortarse

3. Se obtiene el informe de análisis paramétrico sobre la restricción “Tiempo de Terminación”


(restricción 22 en nuestra corrida)

4. Con el informe se crea un diagrama de equilibrio costo - tiempo. Para encontrar el tiempo de
terminación t que se logra con $ 7500, en el informe se ve que 13 semanas cuestan $ 10500 adicionales y
15 semanas cuestan $ 5000, por lo que t está entre esos dos valores. El precio sombra en el intervalo de
13 a 15 es de 5000.
El costo adicional por cualquier tiempo t de ese intervalo será
Costo adicional = 10500 + (t  13) * (5000)
De donde se despeja t = 13,6
lo que significa que, con $ 7500 extra se puede realizar el proyecto en 13,6 semanas, pero no se sabe
cuales son las tareas que deben acortarse. Una forma de hacer esto es cambiar la restricción de
finalización (C22 en la figura), y resolver de nuevo.

Se ve que la tarea A y la tarea H deben ser acortadas en 1,4 y 1 semana.

263
Técnica 2: Modificar el modelo
Se plantea un modelo nuevo donde el objetivo sea minimizar el tiempo de terminación del proyecto, X7
y se agrega una nueva restricción que asegure que los costos totales de choque no superen los $ 7500.
De esta manera el problema se replantea así:

Minimizar: X7

Sujeto a restricciones:
De presupuesto:
5000 YA + 1000 YB + 1500 YC + 1000 YD + 0 YE + 2000 YF + 0 YG + 500 YH + 0 YI  7500

De límite:
Yj  0 para todo j=A, B,...,I YA  2
YB  1 YC  2
YD  1 YE  0
YF  4 YG  0
YH  1 YI  0

de inicio:
X0 = 0

de nodos:
X1  X0 + (12  YA) X2  X0 + (2  YB)
X2  X3 + (2  YD) X2  X1 + 0
X3  X0 + (8  YC) X4  X5 + 0
X4  X0 + (8  YF) X5  X2 + (1  YE)
X6  X5 + (1  YG) X6  X4 + (2  YH)
X7  X6 + (1  YI)

Lógicas:
Xi  0, para todo i=0, 1,...,7

La solución que se obtiene es:

264
Puede observarse que esta solución es coincidente con la del método anterior: tanto la tarea A como la
H son óptimas para acortar a un costo de $ 7500.

Nueva red y camino crítico

Al tener un tiempo de terminación fijado ahora en 13,6 semanas por acortamiento de las actividades A y
H, se modifica la red primitiva, quedando con los nuevos tiempos, por lo que hay que resolverla
nuevamente. Esto se puede lograr sabiendo el valor de las variables X que se obtuvieron. Por ejemplo,
en el listado, X4 tiene un valor de 11,6 semanas, que indica el momento en que puede comenzar H.
También puede obtenerse un resultado mediante la utilidad PERT-CPM, cuya salida indica que las
actividades A, E, G, H, I son críticas.

Problema extractado de ”Investigación de Operaciones”, Daniel Solow, McGrawHill.

Avance de un proyecto
Cuando el proyecto ya está en marcha, estas herramientas sirven para monitorear el avance y cambios
necesarios que se producen en los proyectos. A medida que el proyecto se desarrolla, se obtendrán
indicadores de avance. Con ellos se procede realizando nuevos diagramas de red, en los que se asigna
tiempo cero a las tareas realizadas completamente y tiempos equivalentes a los estimados para
finalizarlas a aquellas no terminadas. Con PERT/CPM se obtendrá el tiempo restante para finalizar el
proyecto y las tareas críticas. Los resultados darán no solo el tiempo restante, sino que sumando este al
original, se obtiene el tiempo total del proyecto y una idea de costos extraordinarios por demoras.

265
266
Capítulo 15.
Utilización de Software en Administración de Proyectos.

15.1 Microsoft Project


15.1.1 Principios generales
15.1.2 PERT
15.2 OpenProj
15.3 Otros programas disponibles
15.3.1 ORGANIZER
15.3.2 PLANNER

267
M
ás allá del clásico (y quizá antigüo) WinQSB, se dispone de software especializado en administración de
Proyectos. Al fin del capítulo se mencionan otras opciones, pero la discusión se centrará en dos
opciones: el clásico MS Project y el más nuevo, en versión de open source, OpenProj.

15.1 Microsoft Project


15.1.1 Principios Generales

Project es un software dedicado a la Administración de Proyectos y forma parte de la familia MS Office.


En las últimas versiones está incorporado en el paquete (versión “profesional”) de ese software, cosa
que hasta la versión 2000 no ocurría, ya que debía adquirirse por separado.

En general el programa presenta la estructura de la figura siguiente: una barra vertical, a la derecha,
que puede ocultarse o no accionando sobre el botón “1” de la figura. Esa barra se denomina “Guia de
proyectos”. Los Botones que se encuentran a la derecha (“Tareas”, “Recursos”, “Seguimiento” e
“Informe”), permiten ver en la Guía otra información.

Por otra parte, en el menú Ver se indican las vistas disponibles. En el caso mostrado se tiene
seleccionada la vista Diagrama de Gantt, generalmente seleccionada por defecto en el programa.

268
El sector derecho de la pantalla presenta una planilla tipo Excel, con una columna donde
automáticamente Project asignará los números de nodo (debe tenerse presente que Project adopta la
nomenclatura nodal, no en arcos), el nombre de tarea, la duración (por defecto en días, pero si se
ingresa, por ejemplo, 30s, tomará 30 semanas), la fecha de comienzo y terminación, (generalmente
estos campos no se llenan pues lo calcula el programa automáticamente), la tabla de precedencia
(números de nodo: si son más de uno, se los separa con comas, si no hay precedentes no se llena). El
último sector presentará en tiempo real un diagrama Gantt. (Generalmente, además de estar habilitada
la vista “Diagrama Gantt”, está habilitada la tabla “Entrada”, por defecto).

Se puede trabajar sobre las tareas de diferente manera: Por el Botón “Tareas”, haciendo clic derecho
sobre una tarea y sobre diferentes botones, según se muestra en las siguientes figuras.

269
270
La última opción de acceso señalada, a través del menú Proyecto, opción Información de la tarea
permite editar una serie de datos sobre cada una de las tareas, para acceder a esta opción debe situarse
en cualquier campo de la tarea que quiere editarse.

Aparece un cuadro con varias solapas. La primera se muestra en la figura. En ella está la información
general y permite ir colocando el grado de avance en una posterior administración. La segunda brinda la
lista de predecesoras inmediatas.

271
Escala de tiempo
Pulsando en el menú Formato se puede acceder al cuadro de Escala temporal de diagrama de Gantt,
estableciendo las escalas primaria (en este caso semanas) y secundaria. En el caso desarrollado como
ejemplo, se puede observar en las primeras figuras que el diagrama está dividido en semanas y las
semanas en días. A continuación, a modo de ensayo, se pasará el diagrama a semanas divididas en
semanas (se marca solo la semana).

Completando la carga de datos

En la figura ya se ha completado la carga de datos del primer ejemplo en forma completa. La columna
Nombre de los Recursos a la derecha se ha utilizado para asignar letras A, B, a fin de vincular este
diagrama con los ya realizados, esta columna es útil para identificar responsables, equipos u otros
recursos. Cuando se accede a este campo aparece un elemento de despliegue que permite ver la lista de
todos los recursos existentes.

Diagrama de Gantt
Ya fue dicho que en tiempo real y a la derecha va apareciendo el diagrama de Gantt.

272
Generalmente no es posible ver todo el proyecto simultáneamente, por lo cual es útil acudir a la
herramienta zoom que está disponible en el menú Ver. Si se selecciona Todo el Proyecto, podrá tener
una vista en conjunto:

Finalmente si se selecciona la Vista Pert, podrá accederse a un diagrama con fechas de inicio y final de
cada nodo-actividad donde se señala en color el camino crítico.

Cuando se está en el modo “diagrama de Gantt” existen al menos tres alternativas más para ver el
camino crítico de un proyecto, a saber:

1) seleccionando el botón “Asistente para diagramas Gantt” en la barra de herramientas o en el


menú “Formato”. El Paso 2 del asistente ofrece opciones para el diagrama, entre las cuales
está “Ruta crítica”

273
2) Utilizando un filtro de tareas, en el menú Proyecto y eligiendo Tareas Críticas. (Luego se puede
volver a ver el esquema original siguiendo el mismo método y seleccionando Todas Las Tareas)

3) Eligiendo la modalidad “Gantt de Seguimiento”, que mostrará el camino crítico y los


porcentajes de avance del proyecto

274
Información del Proyecto y Costos.
Finalmente, se puede asignar un costo a cada tarea, seleccionando el menú Ver, la Opción Tablas y en
ella la tabla de Costos.

Con todos los datos ya ingresados es posible la opción Información del Proyecto, a la cual se accede en
el menú Proyecto. Como puede observarse en la siguiente figura, hay un botón marcado Estadísticas con
el cual se puede obtener el costo del proyecto y datos de avance.

275
15.1.2 PERT

Para utilizar el método PERT debe habilitarse la barra de herramientas PERT, que se encuentra en el
menú Ver, Barras de Herramientas, Análisis PERT.

Cuando se habilita esta barra, presenta los botones mostrados en la figura,

276
Ingresar en tabla PERT.

Se puede comenzar cargando todos los datos, excepto el tiempo de duración en la forma de Vista Gantt
y Tabla Entrada como fue realizado hasta ahora. Una vez hecho esto, es posible situarse en cada tarea y
presionar el botón “Entrar tiempos PERT”, con lo que aparece el cuadro de diálogo que sigue:

Luego de aceptar la entrada se presiona el botón “Calcular PERT”

Y así para cada una de las tareas. Se podrá ver que los tiempos pasan a ser los esperados para cada una
de las tareas y se tendrá un diagrama Gantt correspondiente a ellos. En las figuras siguientes se ve que
está señalada la tarea 9, Inspección en el modo Tabla. En el modo diagrama aparece también señalada

277
Duración esperada (campo de tareas)

El campo Duración esperada contiene el periodo de tiempo total de trabajo activo previsto para una
tarea, es decir, el tiempo comprendido entre el comienzo y el final previstos de una tarea. Puede
indicar la duración prevista como parte del cálculo del análisis PERT, que toma la media de las fechas y
duraciones esperada, pesimista y optimista, o puede dejar que lo calcule Microsoft Project. Este campo
sólo se encuentra disponible en la tabla Caso esperado o en la vista Gantt esperado.

Cuando se crea una tarea por primera vez, el campo Duración esperada no contiene valores. Cuando se
indica una fecha de comienzo esperada y una fecha de fin esperada y se hace clic en Calcular PERT en la
barra de herramientas Análisis PERT, se calcula una fecha de duración probable y se sitúa en el campo
Duración esperada.

Se puede utilizar este campo en la tabla Caso esperado o la vista Gantt esperado para estimar las
probabilidades de fechas de tareas. De manera predeterminada, el cálculo del análisis PERT proporciona
el mayor peso (4) a la información esperada y el menor peso (1 a cada uno) a la información pesimista y
optimista.

Si se supone que se dispone de varias tareas críticas para las que desea ver las duraciones mejores,
peores y esperadas, se deben escribir las fechas de comienzo y de fin esperadas de esas tareas, así como

278
sus fechas de comienzo y de fin optimistas y pesimistas y, a continuación, realizar el cálculo del análisis
PERT.

Se puede cambiar la forma en que Microsoft Project calcula el promedio de las tres duraciones.
Haciendo clic en Pesos PERT podrán establecerse nuevos valores para las tres duraciones estimadas. Los
tres valores deben sumar un total de seis. Debido a que los valores de peso predeterminados
representan desviaciones estándar de las probabilidades PERT, si se cambian los valores
predeterminados es posible que las duraciones estimadas sean menos exactas. Para calcular duraciones
nuevas, se hace clic en Calcular PERT.

Cuando Microsoft Project calcula las duraciones estimadas de las tareas, se pueden ver las duraciones
optimistas, pesimistas y esperadas haciendo clic en Gantt optimista, Gantt pesimista y Gantt esperado
en la barra de herramientas Análisis PERT.

Fechas del proyecto

Se pueden ver rápidamente las fechas de fin de las tres programaciones resultantes si les agrega una
barra de tarea de resumen del proyecto. En el menú Herramientas, haciendo clic en Opciones, se elige
la ficha Vista y, a continuación, se activa la casilla de verificación Tarea de resumen del proyecto.

279
15.2 OpenProj
15.2.1 Introducción

OpenProj es un software de código abierto desarrollado por Serena. En este artículo se ofrecen algunas
instrucciones básicas de uso que se basan en la versión 1.4 descargada desde
http://sourceforge.net/projects/openproj/ en abril de 2012

El programa OpenProj pretende emular al componente de la suite Microsoft Office denominado Project.
Brinda, básicamente, las mismas prestaciones y características generales, con una más que obvia
diferencia de costos a favor de OpenProj.

Si bien no es objetivo de la asignatura efectuar comparaciones y mucho menos recomendaciones sobre


el uso de uno u otro, se considera de interés general que el lector acceda a opiniones externas antes de
tomar la decisión de cuál va a utilizar. Un artículo encontrado en Wikipedia pareció valioso por su
objetividad y grado de análisis, por lo cual se transcriben algunos pasajes:

En comparación con MS Project, software al que imita, OpenProj tiene una interfaz de usuario similar y un
enfoque parecido para la construcción de un plan de proyecto: crear una lista de tareas o estructura
detallada con sangría (diagrama de Estructura de descomposición del trabajo, EDT), establecer las
duraciones, crear vínculos (ya sea mediante (a) arrastre de ratón, (b) selección y botones, o (c) escritura
manual en la columna 'predecesor'), asignar recursos. Las columnas (campos) son los mismos que para MS
Project. Los usuarios de un programa deberían estar ampliamente cómodos utilizando el otro. Los costos
son los mismos: trabajo, tiempo, uso de material y los costes fijos: todos éstos son proporcion ados por
OpenProj.

Sin embargo, existen pequeñas diferencias en la interfaz (observaciones que se aplican a la versión 1.4),
que requieren alguna adaptación para quienes están familiarizados con MS Project, concretamete,
OpenProj no puede vincular al alza con método (c), insertar tareas es más difícil que en MSProject y en
OpenProj no se pueden crear recursos sobre la marcha (hay que crearlos en primer lugar en la hoja de
recursos). También hay varias limitaciones más graves en OpenProj; el principal es la falta capacidad de
uso de informes de MS Project y vistas más detalladas. Por ejemplo, aunque los campos de coste existen,
no hay ninguna forma rápida para mostrarlos que insertarlos manualmente. Esto requiere que el usuario
sea relativamente avanzado: alguien que sabe lo que podrían llamarse los campos y cómo utilizarlos.

Para explicar algunos fundamentos de su utilización se supone que el software está instalado y
funcional. Dudas sobre instalación, requerimiento u errores se pueden aclarar accediendo a
http://www.serena.com/products/openproj/ o dirigiendo un correo-e a los docentes de la asignatura.

15.2.2 Abrir el programa

Cuando ya está instalado se puede lanzar la aplicación desde un acceso directo

Que lleva a una pantalla de bienvenida con un “Tip” diario23.

23
Existen algunas dificultades de traducción en la versión en español del producto a la fecha de este
artículo.

280
Cuando se comienza a trabajar hay que optar por un nuevo proyecto o abrir desde un archivo uno
existente:

15.2.3 Nuevo proyecto

La carga de un nuevo proyecto es simple, solo hay que darle un nombre y una fecha de inicio, o dejar la
que aparece por defecto que es el día actual:

281
Una vez que se comienza, generalmente se posiciona, por defecto, en una vista “diagrama de Gantt”, a
la que siempre se puede acceder fácilmente con el botón lateral izquierdo “Gantt” señalado con una
flecha negra en la figura siguiente.

También es posible acceder a esa vista en el Menú “Vista/Gantt”, como se muestra en la segunda
figura.

15.2.4 Carga de Tareas

En esta vista se puede comenzar a cargar cada una de las actividades del proyecto, para lo cual,
simplemente se escribe el nombre de la tarea en el primer renglón de la planilla en la columna
“Nombre”. Se observará que aparece una duración propuesta con un signo de pregunta: 1 day? Y una
fecha de inicio que coincide con la que se colocó al definir el proyecto (por defecto, el día de la fecha).
Luego una fecha de finalización (un día después, mientras no se modifique la duración de 1 día
propuesta por el programa)

282
Para modificar la duración de la tarea se puede ingresar cualquier valor y la unidad correspondiente, sin
embargo el programa convertirá todo a horas o a días: así es posible ingresar 4h o 4 horas, 3 d o 3 días,
1 semana etc. En cada caso la presentación, al pulsar “enter”, será convertida a días, lo que el
programa señala usando la palabra “day”:
4h  0,5 day
8 horas 1 day
3d  3 days
Sobre la tabla de conversión a días se volverá más adelante. Paralelamente, a la derecha, en la ventana
de diagrama Gantt comenzarán a dibujarse las barras de cada tarea cargada.

Luego se ingresa en la columna Predecesores el número de renglón de la o las tareas predecesoras,


separadas por punto y coma (;):

Con cualquier celda de una tarea seleccionada, se puede hacer doble clic en ella, o – lo que da el mismo
resultado – hacer clic en el botón señalado por flecha, para acceder

283
a la información de la tarea, que es modificable en el mismo cuadro de diálogo. Hay varias pestañas: la
primera, información general, permite ver fechas de inicio y de final, porcentaje completado,
prioridad, etc.

En la pestaña “Predecesoras” se pueden ver y cambiar las predecesoras y que tipo de tarea son (por
defecto todas son Fin a Principio – FS -).

Luego hay otras pestañas que informan las tareas que siguen dependiendo de la actual, los recursos
asignados y/o necesarios para esta tarea, editor de notas y comentarios. En la pestaña “Recursos” es
posible asignar nuevos recursos a la tarea mediante el botón de la figura (Estos recursos deben estar
declarados previamente, ver más adelante):

284
La pestaña “Advanced” permite ignorar el calendario (días corridos) forzar el terminado, cambiar a
agotamiento de recursos y otras herramientas.

15.2.5 Conversión de unidades de tiempo de trabajo

Volviendo al calendario y a la conversión de horas, semanas o meses a días, se puede utilizar el botón
“Cambio del tiempo de trabajo” que señala la flecha de la figura:

Devuelve un cuadro de diálogo con un calendario almanaque centrado en el día de inicio y la posibilidad
de seleccionar varios parámetros: El primero, “Para” que por defecto se muestra en “Estandar” puede
seleccionarse en 24 horas o Cambio nocturno

285
El botón “Nuevo…” permite editar un nuevo calendario y el botón “Opciones…” finalmente es el que
permite establecer las conversiones de horas, semanas o meses a días:

Así, si alguien deja el valor por defecto, 8 hs son 1 día, 12 hs son 1,5 días, una semana son 5 días, 1,6
semanas son 8 dias, un mes son 20 días y un mes y medio son 30 dias.

15.2.6 Recursos de las tareas

Una vez cargada la información de todas las tareas, se estará en condciones de asignar responsables:

286
Para ello se pulsa el botón, indicado con la flecha en la siguiente figura, que permite el cambio vista a
“Recursos” (también accesible en el menú “Vista/Recursos”)

En la nueva planilla se pueden cargar los nombres de cada recurso, datos y disponibilidad. En este caso
se han colocado 3 personas y papel, asignando disponibilidad ilimitada a dos personas y de un 50% a la
tercera. Esto permitiría evaluar la duración del proyecto si se optara por evaluarlo por disponibilidad de
recursos y no por uso de tiempo proyectado:

Volviendo a la vista “Gantt”, recién ahora podrá accederse a la asignación de recursos.

Los recursos deben estar registrados en la vista anterior para que puedan ser escritos en esta vista. Si
hay más de uno, se escriben separados por comas y puede agregarse una disponibilidad, por ejemplo:
Juan y Pedro tienen a su cargo una tarea con un 50% de dedicación. Se agrega a uno de ellos el
porcentaje entre corchetes.

287
La vista Gantt resultante es:

15.2.7 Otras vistas

Vista “Red”

Pulsando el botón izquierdo señalado en la figura o el elemento de menú “Vista/Red” se puede acceder
a la vista en red del proyecto:

288
Si se pasa el cursor sobre la vista podrá observarse que cambia a forma de una cruz delgada negra sobre
los conectores entre bloques. Si se hace clic allí aparece un cuadro con información detallada de las
tareas vinculadas

Por otra parte, haciendo clic en un cuadro de tareas se puede editar su contenido, por ejemplo,
cambiar los días de duración de la tarea.

Vista “Recursos”

Esta vista fue accesada al cargar los recursos que podrían ser usados. No pueden ser asignados recursos
si previamente no figuran en esa lista. Es lógico que pueda haber recursos no utilizados.

289
Como se ve, la vista ahora aparece coloreada sobre los recursos utilizados, marcados con un símbolo en
la columna “i”- Si se pasa el cursor sobre el recurso aparece una indicación de que el recurso se usa en
el proyecto, como se ve en la figura.

Vista “WBS”

WBS son las siglas en inglés de “Work Breakdown Structure” cuyo equivalente en español es EDT o
“Estructura de Descomposición del Trabajo” lo que permite analizar el proyecto en niveles de análisis
de elementos de trabajo o niveles de tareas.

Una vez que se dispone de la vista es posible organizar las tareas en niveles, simplemente haciendo clic
en el cuadro origen, por ejemplo, “Estudio de caso” y arrastrando la línea que se genera hasta el cuadro
de nivel inferior, por ejemplo “Análisis Bibliográfico”, lo mismo se realizó entre “Estudio de caso” y
“Desarrollo de Temas” y entre este e “Impresión Final”

290
Vista “RBS”

RBS son las siglas en inglés de “Resourse Breakdown Structure” cuyo equivalente en español es EDR o
“Estructura de Descomposición de Recursos” lo que permite analizar el proyecto en niveles de
dependencia de los recursos.

Los recursos se ordenan como en la vista anterior.

Vista “Informes”

Mediante esta vista es posible ver e imprimir un resumen de todo el proyecto, dividido en ítems:

291
Fechas (dates) de inicio y fin; Duración y tiempo remanente; horas de trabajo y costos.

Vista “Detalle Uso de Tareas”

292
Permite obtener un resumen de horas dedicadas por cada recurso en cada Tarea del proyecto y un
calendario de ocupación.

Vista “Detalle uso recursos”

Permite obtener un resumen de horas dedicadas en cada tarea por cada Recurso afectado al proyecto y
un calendario de ocupación.

Vistas “Histograma” y “Uso de recursos”

293
Aparece una ventana con un esquema en árbol de los recursos ordenados por niveles de dependencia. Si
se marca uno de ellos, en la ventana a la derecha aparece un histograma del tiempo que ese recurso
afecta al proyecto, en un color, comparado con el tiempo disponible del recurso, en otro color.

En el caso de uso de recursos puede obtenerse un histograma o grafico acumulado del tiempo afectado
por cada uno de los recursos al proyecto, visible solamente cuando ya se esta desarrollando el proyecto.

15.2.8 Administración del proyecto

Volviendo a la Vista Gantt podrá seleccionarse cada tarea y pulsando el botón derecho es posible dividir
las tareas para saltear, por ejemplo, los feriados:

294
15.2.9 Introducción de costos

El proceso de introducción de costos se realiza eligiendo, en la Vista Gantt una columna que estará a la
derecha de la que se quiere insertar y sobre el encabezado pulsar el botón derecho, para elegir:
“Inserta Columna”

Ahora es posible introducir el costo de cada tarea:

295
15.2.10 Información y avance proyecto
Es posible administrar el proyecto, para lo cual se trabaja en cada tarea, seleccionando y con el botón
“Tarea” acceder a las solapas ya vistas:

Ejemplo con la tarea 1:

Supóngase que se informa un avance del 60%:

296
El Gantt reflejará el avance:

Luego se accede a “Información de Proyecto” del Menu “Proyecto”:

297
En estas pestañas se observa el avance y grado de costos, incluir notas y averiguar los costos
remanentes.

Como se puede ver no hay posibilidad de análisis probabilístico PERT.

15.3 Otros programas disponibles

15.3.1 ORGANIZER
Es el sucesor (mejorado) de PLANNER (ver más adelante), ofrece la posibilidad de crear una jerarquía de
proyectos (carpetas) y trabajar con una variedad de tipos de elementos. Esto permite subdividir los
proyectos para mantener una visión general de todas sus ideas y acciones. Tiene tareas y diagramas de
Gantt. Es un software de gestión de proyectos dedicados a aquellos que no necesita un software
totalmente dedicado a la planificación como Microsoft Project.

La última versión es la versión 3.3 (24 de octubre de 2011).

Ventajas:
• Una alternativa gratuita y más simple de Microsoft Project para proyectos en los que requieren
menos información estadística (aunque los proyectos no necesariamente tienen que ser
pequeños).
• Fácil agrupación de todas las acciones y las tareas relacionadas en carpetas y subcarpetas que
se definen y se ajustan fácilmente
• Los elementos soportados se incluyen sencillamente. Todo, los contactos, los hechos, acuerdos,
acciones (tareas con fechas de inicio y fin), lugares (sitios web, ubicaciones de las carpetas o
archivos, incluso individuales), correo, llamadas y recordatorios de pago.
• Interfaz de usuario amigable e intuitiva.
• Las tareas pueden ser 'Waiting For' para obtener una visión general de las cosas que aún
requieren de los recursos
• Gestión de proyectos usando diagramas de Gantt para obtener un aspecto visual en su
planificación, incluyendo la visualización del progreso de acción / acciones pendientes, etc

298
15.3.2 PLANNER:

Es un proyecto de software libre para la gestión y planificación que intenta cerrar la brecha entre la
planificación de las hojas de cálculo sencillas (tipo Excel) y productos complejos, como Microsoft
Project. Lo hace mediante una interfaz sencilla sin dejar de ofrecer una visión general clara y concisa
de las cosas que hay que hacer.

Planner se recomienda para:


• Las pequeñas empresas que realizan trabajos para varios clientes, proyectos múltiples por
cliente.
• Personas que tratan de organizar sus listas de tareas, tanto privados como empresarialmente.
• Las tareas están basadas en el tiempo (Planner no maneja tareas basadas en fechas todavía)

299
300
Capítulo 16.
Modelos de colas

16.1 Características de un sistema de colas


16.2 Indicadores del rendimiento en un sistema de
colas
16.3 Sistemas de un canal, una línea con llegada y
procesos de servicio exponencial (M/M/1)
16.4 Servidores en un sola cola, de canal múltiple
16.5 Análisis económico
16.6 Sistemas con población finita (M/M/c//K)
16.7 Sistemas con capacidad de espera limitada
(M/M/c/L)
16.8 Otros modelos
16.9 Resumen y Notación
16.10 Apéndice al Capítulo 16

301
C
on este modelo se describen las relaciones que se establecen durante la prestación de un servicio o
proceso al que acceden clientes interesados en recibir ese servicio o proceso en forma aleatoria. El
servicio está instalado en una estación de trabajo, o sitio específico donde hay un lugar (real o virtual)
de atención (una boletería, un cajero, un equipo, etc.) al que se denomina canal de atención y es
prestado por un servidor. Cuando el cliente es atendido abandona el sistema.

Por ejemplo:
Los clientes llegan al banco, hacen fila, que puede ser una o más de una, frente a una
ventanilla, o más de una, así puede haber una fila para dos ventanillas o cada ventanilla tener
su propia fila. Cada ventanilla es un canal de atención y el cajero es el servidor.

Procesos productivos que convergen en un equipo, donde las partes deben esperar para
terminar su incorporación al producto final.

Las colas en las cajas de los supermercados, donde los clientes, luego de concluir con sus
compras, eligen un canal de atención y esperan ser atendidos para finalmente salir del sistema
o supermercado.

El Administrador de Impresión de un sistema operativo es un caso de atención por colas de


espera de los clientes (documentos a imprimir por orden de llegada o con ciertas convenciones
de prioridad en algunos casos). Este Administrador irá conduciendo a los clientes cuando el
servidor esté disponible (servidor “on line”, servidor desocupado, etc.) y en el orden en que
deben ser atendido.

Una red de computadoras donde una cantidad de ellas acceden a los recursos o a la
administración de una de ellas que cumple el rol de servidor, mediante peticiones de servicio
que son atendidas por orden de llegada.

Una planta fabril con máquinas herramienta que operan todas simultáneamente pero que
requieren atención técnica aleatoria. El personal técnico las atiende por orden de llegada de
los pedidos.

Una etiquetadora de botellas PET que acaban de ser colmadas con aceite de girasol.

Una cooperativa eléctrica del interior que dispone de dos móviles para atender solicitudes de
reparaciones que efectúan los clientes y en el orden en que éstos llaman.

Sea cual fuere el caso, siempre surgen problemas alrededor de las colas y las esperas relacionadas con
ellas: Puede ser necesario determinar si hay que agregar una nueva estación de trabajo o aún quitarla.
Para tomar esa decisión será necesario saber:
1. ¿Cuánto tiempo tiene que esperar un cliente promedio para ser atendido?
2. ¿Cuánto tiempo demora la atención de un cliente?
3. ¿Se puede predecir ese tiempo?
4. ¿Cuántos clientes hay -en promedio- en la cola?
5. ¿Cuál es el máximo que puede haber?
6. ¿Es posible que todos puedan esperar?
7. ¿Cuántas ventanillas darán un servicio aceptable?
8. ¿Que es un servicio aceptable en el contexto?
9. ¿Conviene que los clientes hagan una sola fila -modelo banco-? ¿o es preferible que sean varias filas -
modelo supermercado-?
10. ¿Cuál es el espacio necesario para que los clientes puedan esperar?24

16.1 Características de un sistema de colas


Un sistema con colas se caracteriza por los siguientes componentes:
a. Los clientes, que son los elementos que conformarán la cola. El total es la población de clientes.
b. Un proceso de llegada, que es la forma en que llegan los clientes
c. Un proceso de cola, que es:
1) la manera en que esperan los clientes para ser atendidos y
2) la disciplina o política de la cola que es la forma en que el cliente es elegido para ser atendido
d. Un proceso de salida que puede ser
1) el cliente abandona el sistema inmediatamente después de ser atendido (cola de un paso) o
2) los clientes que son atendidos pasan a otra cola (red de colas).

24
Este espacio puede ser físico (sala de espera, hall de banco, playón de materiales y productos) o en otro soporte
(buffer de memoria, capacidad de retención de líneas telefónicas rotativas, etc.)

302
Sistema de una fila, tres servidores y de un paso (luego de la atención, el cliente abandona el sistema)

Sistema de cuatro servidores, donde el acceso al servidor 2 o 3 se realiza luego de la atención por el servidor 1.
Al servidor 4 llegan clientes atendidos por los 2 y 3. Recién después de la atención por parte de 4, el cliente
abandona el sistema.

16.1.1 Población de clientes

Conocer la población de clientes es tener una idea general el tamaño potencial de la base de clientes.
Un banco o un supermercado poseen una base grande de clientes, es una población infinita. Este
término se presta a confusiones, por lo que resulta necesario aclararlo: el número de clientes, como tal,
es finito, pero la posibilidad de demanda de servicios no lo es: una vez satisfecho el servicio requerido
por un cliente en particular, éste no se excluye del sistema y está en condiciones de volver a
demandarlo. Como esto ocurre potencialmente con todos y cada uno de los clientes, hace que esa
población finita se convierta en infinita. Un conjunto de 20 máquinas que operan 16 hs diarias pero que
tienen una probabilidad de atascarse en un tiempo medio de 1 hora cada una durante 5 minutos,
independientemente de si se atascó antes o no, es una población infinita. Al contrario, si se instala una
oficina de empadronamiento general en una ciudad de 3 millones de habitantes, cada “cliente”, una vez
empadronado, no volverá a demandar el servicio. Esta es una población finita.

16.1.2 Proceso de llegada

Como en otros modelos ya estudiados, se definen los procesos en función de la certeza de ocurrencia.
Así tendremos llegadas (clientes que solicitan servicio) determinísticas o estocásticas.

Proceso de llegada determinístico: dos clientes sucesivos llegan en intervalos de tiempo idénticos y
conocidos, por ejemplo una etiquetadora donde los clientes llegan en intervalos iguales de tiempo (ciclo
de tiempo)

Proceso de llegada probabilístico: el tiempo entre llegadas sucesivas es variable. En estos casos la
determinación de la distribución de llegadas real es dificultosa, por lo cual se adopta una distribución
de probabilidades conocida que se adapte razonablemente bien al tipo de eventos. Se utiliza,
generalmente, la distribución exponencial. Así, la función de densidad para las llegadas de clientes, que
se denomina , (número promedio de llegadas por unidad de tiempo) está dada por
 1
f (t )    e  T
 

303
Para una cantidad T de tiempo se usa la función de densidad para calcular la probabilidad de que el
siguiente cliente llegue dentro de las T unidades de tiempo a partir de la llegada del anterior:
P(tiempo entre llegadas  T) = 1 - e-T

Caso
Los clientes llegan al banco a una tasa promedio diaria de 20 clientes cada hora,  = 20 clientes/h. Si en este
instante ingresa un cliente, ¿Cuál es la probabilidad de que llegue un cliente nuevo en los próximos 10 minutos?
El tiempo entre llegadas máximo, T, es de 10 minutos (T=1/6h), por tanto debe calcularse

P(tiempo entre llegadas  1/6 h) = 1 - e-20 x (1/6) = 0,964

CALCULO CON EXCEL: =DISTR.EXP(0,16667;20;VERDADERO) – (hasta 2003)


DISTR.EXP.N(0,16667;20;VERDADERO) – (desde 2007)
Debe observarse que se busca la probabilidad acumulada, indicado con VERDADERO (Ver Apéndice del Capítulo 16)

Otra manera de abordar esta cuestión es refiriéndose al número de clientes que llegan. Por ejemplo, la
probabilidad de que dos clientes lleguen dentro de los diez minutos siguientes, en este caso, al ser una
variable discreta, la distribución de probabilidad para el número de llegadas será una distribución de
Poisson:
e T (.T ) k
P(que _ en _ tiempo _ T _ lleguen _ k _ clientes ) 
k!
Siguiendo el caso anterior, con  = 20 clientes/h y T = 1/6 h. La probabilidad de que lleguen dos clientes (k = 2) en
los próximos 10 minutos es:
e 20 x1/ 6 (20 / 6) 2
P(que_ en_10_ minutos_ lleguen_2_ clientes)   0,20
2 x1
CÁLCULO CON EXCEL:
=POISSON(A1;A2;FALSO) (hasta 2003)
=POISSON.DIST(A1;A2;FALSO), (desde 2007)
donde en A1se colocó en número de eventos k = 2, y en A2 el producto T = 20/6 = 3,3333. FALSO indica que no se
busca la probabilidad acumulada. (Ver Apéndice del Capítulo 16)

Si se busca la probabilidad acumulada la expresión a usar es:


k
e T (.T ) k
P(tiempo _ entre _ llegadasT  k )  
0 k!
o en Excel incluir el valor lógico Verdadero en la función presentada en el recuadro anterior.

16.1.3 Proceso de colas

Parte del proceso de colas tiene que ver con el tipo de colas: el cliente puede elegir entre una u otra
cola cuando hay más de una o no puede elegir, como en algunos bancos.

El número de clientes que hace cola (el largo de la cola) tiene importancia: en un banco el espacio se
puede considerar infinito: no importa cuantos clientes estén esperando, siempre hay lugar, aunque sea
en la vereda, en telefonía, un sistema de 0800 con líneas rotativas tiene capacidad finita de mantener
llamadas en espera, lo que es notado por el que llama porque le hacen escuchar una grabación diciendo
que espere, si hay lugar en el recinto de espera o recibe tono de ocupado si no lo hay.
También forma parte del proceso la política de la cola, hay varias alternativas:
1. Primero en llegar, primero en salir (FIFO por sus siglas en ingles, First Input-First Output). Caso
supermercado.
2. Último en llegar, primero en salir (LIFO), caso de almacén de productos apilados.
3. Selección aleatoria de servicio (RSS por sus siglas en inglés Random service selection o SIRO por
Service in random orden)
4. Por prioridades. Caso de consultorio odontológico con una fila de pacientes en tratamiento y una fila
de urgencias por dolor.

16.1.4 Proceso de servicio

Define la manera en que son atendidos los clientes.


Por las estaciones:
 Un supermercado con varias cajas es un sistema de cola múltiple. Los servidores pueden ser
idénticos (cada caja funciona a la misma velocidad) o no.
 La otra alternativa es la de sistema de cola única (no confundir con servidor único, ya que se
puede aceptar en una sola cola varios servidores que, en conjunto, realicen la misma tarea)

304
Por el número de clientes atendido en forma simultánea:
 La cola del supermercado, o de un banco son sistemas donde se atiende a un cliente por vez.
 La cola del colectivo es un sistema de atención por lotes.
Por la prioridad en la atención:
 Significa que los lugares en la cola pueden alterarse ante llegada de clientes con diferentes
grados de prioridad.
En cualquier caso, se necesita conocer el tiempo que demanda la atención del cliente. Este tiempo
puede ser determinístico o probabilístico. En los probabilísticos es difícil conocer la distribución de
probabilidad real, se puede utilizar, por ejemplo, una distribución exponencial, cuya función de
densidad depende de un parámetro () y es:
 1
s(t )    e   .t
 
donde  es el número promedio de clientes atendido por unidad de tiempo y -1 será el tiempo medio de
atención a un cliente. Todo lo expuesto para el proceso de llegadas en cuanto a funciones y métodos,
tiene un tratamiento similar en los procesos de servicio, en los que se reemplaza λ por .

16.1.5 Modelos de colas

La simbología utilizada para diferenciar los diferentes modelos es X/Y/c/L/K, donde


X:llegada/Y:servicio/c:canales/L:espacio/K:población
Proceso de llegada
D Tiempo entre llegadas determinístico
X M Tiempo entre llegadas probabilísticos con distribución exponencial
G Tiempo entre llegadas probabilísticos con otra distribución diferente a la exponencial (gral)
Proceso de Servicio
D Tiempo de servicio determinístico
Y M Tiempo de servicio probabilísticos con distribución exponencial
G Tiempo de servicio probabilísticos con otra distribución diferente a la exponencial (general)
Proceso de Colas
c Número de canales o servidores paralelos existentes (todos son idénticos en su velocidad)
Espacio de espera finito y/o población de clientes finita
L Número total de clientes que pueden estar en el sistema en cualquier momento (haciendo cola más
número de servidores)
K Número máximo de clientes de la población

Así, un sistema M/M/2 indica que es un sistema con tiempos de llegadas probabilísticos con distribución
exponencial, el tiempo de atención a un cliente también es probabilístico con distribución exponencial y
tiene 2 servidores en paralelo, capacidad de espera no acotada (infinita) y sirve a una población infinita
de clientes.
Si se le agregaran los demás elementos, como K=1 y L=10 sería M/M/2/10/1,
si K= y L= sería M/M/2,
si K= y L=10 sería M/M/2/10/
si K=100 y L= sería M/M/2//100.

16.2 Indicadores del rendimiento en sistemas de colas


Solamente se hace referencia a sistemas de una cola y en estado estacionario: No interesa la evolución
de la cola del supermercado desde que llega el primer cliente de la mañana hasta una hora después ni
desde que se cerraron las puertas de ingreso hasta que se despachó el último cliente.

Los siguientes son los indicadores más utilizados:

1. Cola no explosiva: cuando  (total del sistema de atención)   Define que el estado estacionario
es posible. Si los arribos son mayores que las salidas se dice que el sistema es explosivo.
2. Tiempo promedio de espera, Wq: es el tiempo promedio que el cliente que llega tiene que esperar
para ingresar al canal (ser atendido).
3. Tiempo promedio en el sistema, W: es el tiempo promedio que el cliente debe esperar desde que
ingresa hasta que es despachado, termina su atención y sale del sistema.
4. Longitud media de la cola, Lq: Cantidad promedio de clientes que están esperando en la cola para
ser atendidos.
5. Promedio de clientes en el sistema, L Cantidad promedio de clientes en la cola más los que están
siendo atendidos.
6. Probabilidad de bloqueo, Pw: Probabilidad de que un cliente que llegue tenga que esperar a ser
atendido. Es equivalente a Pb: Probabilidad de que el servidor esté ocupado

305
7. Probabilidad de que el (los) servidor(es) estén libres P0 Probabilidad de que el cliente que llega
no deba esperar
8. Fracción de tiempo de uso del servidor, U: Probabilidad de que en un tiempo dado el servidor esté
ocupado.
9. Distribución de probabilidad de estado, Pn: es la probabilidad de que existan n clientes en el
sistema, siendo n = 0, 1, 2, ....
10. Probabilidad de denegación de servicio, Pd: probabilidad de no atención por saturación de espacio
finito.

Todas estas definiciones deben conducir a relaciones vinculadas a los procesos de llegada, salida y
servicio. Inclusive si no se conocen las distribuciones de probabilidades asociadas, simplemente
conociendo  y  (promedios de llegadas por unidad de tiempo y de clientes atendidos por unidad de
tiempo, respectivamente).

Así en sistemas con K y L infinitos, el tiempo total que un cliente está en el sistema será

Tiempo promedio en el sistema = tiempo promedio de espera + tiempo promedio de servicio


1
W  Wq 

(si el promedio de atención  es por ejemplo 4 clientes/h, la tiempo de atención será -1 = ¼
h/cliente)

También puede establecerse que


Número promedio de clientes en el sistema = número promedio de llegadas por unidad de tiempo x
tiempo promedio en el sistema
L=W

(Si para un cliente que acaba de llegar se espera que esté en el sistema ½ hora, en esa media hora
llegarán otros clientes a una tasa, por ejemplo,  = 6/hora. Cuando el cliente se va, deja detrás un
promedio de ½ x 6 = 3 clientes nuevos. En promedio existen 3 clientes en el sistema en cualquier
momento).

También:
Número promedio de clientes en la cola = número promedio de llegadas por unidad de tiempo x tiempo
promedio en la cola
Lq =  Wq

Sea un sistema con  = 6 clientes/h y  = 4 clientes/h, con un número promedio de clientes en la cola,
Lq = 2, se tiene:

Wq = Lq /  = 2 / 6 = 1 / 3 Tiempo promedio en la cola, 1/3 h

W = Wq + -1 = 1 / 3 + 1 / 4 = 7 / 12 Tiempo promedio en el sistema, 7/12 h

L =  W = 6 x 7 / 12 = 3,5 Número de clientes en el sistema, 3,5

16.3 Sistemas de un canal, una línea con llegada exponencial y proceso de


servicios exponencial (M/M/1)

Las condiciones de aplicación del modelo son


Población finita
Llegada con distribución de Poisson a tasa promedio 
Una sola cola, con capacidad infinita y política FIFO
Proceso de servicio de un solo servidor con distribución exponencial con promedio  clientes/u
tiempo

Se busca definir si es posible el estado estacionario, para lo cual debe ocurrir que la tasa de atención
sea superior a la de arribos:   .

306
Desarrollo de un caso
Banco Arroyo ha instalado un sistema de cinco cajeros automáticos en un centro comercial de 5 plantas que funciona
24 horas al día y desea comprender el funcionamiento del conjunto, para lo cual analiza un cajero en las horas pico.
Se estima entonces que a ese cajero arriba un promedio de sesenta clientes por hora,  = 60 y tiene una capacidad
de atención promedio de  = 66 clientes por hora. Como 66 > 60 se podrá hacer un análisis de estado estacionario.

a. Factor de tráfico, o intensidad de tráfico,  =  /  = 60/66 = 0,9091


Como lo que se analiza es el número de clientes que llegan por cada cliente que es atendido, el factor de tráfico es,
en realidad la probabilidad de que esté ocupado el servidor.
b. Probabilidad de que no haya clientes en el sistema (sistema no ocupado) (P0 )
P0 = 1 -  = 1 - 0,9091 = 0,0909 (el 9% de las veces el cliente encuentra el cajero vacío, el 91% de las veces está
ocupado)

c. Largo promedio de la fila

2 0,90912
Lq    9,0909
1   1  0,9091
El cajero tendrá nueve clientes haciendo cola, sin contar el que está siendo atendido.

d. Tiempo promedio de espera en la cola


Lq 9,0909
Wq    0,1515
 60
cada cliente que llega debe esperar aproximadamente 9 minutos antes de poder pasar al cajero.

e. Tiempo de espera en el sistema


1 1
W  Wq   0,1515   0,1667
 66
cada cliente invierte 10 minutos en el trámite: hacer la cola y ser atendido

f. Promedio de clientes en el sistema: los 9 que hacen cola más el que está siendo atendido
L =  W = 60 x 0,1667 = 10

g. Probabilidad de que un cliente tenga que esperar


Pw = 1 - P0 =  = 0,9091.

h. Probabilidad de que haya n clientes cuando un cliente llegue al sistema


Pn = n P0

Se construye la siguiente tabla


n Pn
0 0.0909
1 0.0826
2 0.0751
3 0.0683
... ...

La probabilidad de que no haya más de tres clientes en el sistema cuando llega un determinado cliente es
Pi = P0 +P1 +P2 + P3 = 0,0909 + 0,0826 + 0,0751 + 0,0683 = 0,3169

i. Utilización del cajero


U =  = 0,90901
El 91% del tiempo el cajero está en uso.

A continuación se presenta el mismo problema utilizando el software WinQSB, luego de lo cual se


realizan modificaciones analíticas que permiten no solo comprender mejor el modelo sino también
utilizar sus potencialidades de análisis de sensibilidad.

WinQSB presenta dos módulos relacionados con Colas: uno es Análisis de Colas y el otro Simulación de
Colas. Se utilizará el primero, Análisis de Colas, Queueing Análisis:

307
Seleccionado el módulo de colas “Queueing Analysis”, se especifica el modelo y las unidades de tiempo.

Carga de datos. Los valores no completados indican que no se conocen. Las letras M indican infinito para
capacidad de la cola y población de clientes.

Se solicita la resolver los rendimientos mediante el menú correspondiente

Pantalla de indicadores.

Distribución de probabilidades de n

308
Supóngase ahora que se detecta un aumento en la llegada promedio de clientes, que pasaría de 60 a 70,
lo que motiva cambiar el equipo del cajero a un modelo capaz de atender 73 clientes por hora en lugar
de los 66 del anterior. Este aumento de demanda se debe a que al lado del cajero se instaló un cine y
por lo cual se cree que si la cola es muy larga puede generar confusión. Se quiere evaluar que
probabilidad hay de que la cola sea de 16 o más personas (más una persona dentro del cajero). Se
muestra la pantalla de carga con los datos del problema modificado:

Carga de datos del problema modificado.

Indicadores del problema modificado con  = 70 y  = 73. Ahora hay 22 clientes en la cola y deben esperar 20
minutos (0,33 h).

Es evidente que con estos indicadores, los niveles de espera como de cantidad de gente haciendo cola
son muy altos, por lo cual se deberá pensar en poner estaciones con dos cajeros, dos servidores. Esto ya
no puede resolverse con este método, que trabaja con 1 servidor.

16.4 Servidores en una sola cola, de canal múltiple, llegada exponencial y


proceso de servicio exponencial (M/M/c)

Las condiciones generales del sistema son:

1. Población de clientes infinita


2. Proceso de llegadas que sigue una distribución de Poisson con tasa  clientes/unidad de tiempo
3. Una cola sola de capacidad infinita, política FIFO.
4. Servicio compuesto por c servidores idénticos, cada uno de los cuales atiende con distribución
exponencial a  clientes/unidad de tiempo.
5. La tasa total de servicio promedio debe ser mayor que la tasa de arribos para que el sistema esté en
estado estacionario, c  > 

Se reconvierte el ejemplo:

309
c = 2 servidores
 = 70 clientes/hora
 = 40 clientes/hora

1. Cálculo del factor de tráfico


 = / = 1.75

2. Probabilidad de que ningún cliente esté en el sistema (P0)


1
P0 
     c  c 
c 1 n
      
 n0 n!   c!  c    donde:

 c1   
n
 0 1 c 1
      ... 
 n0 n!  0! 1! (c  1)!
por lo tanto P0 = 0,0667
(7% del tiempo la estación de cajeros estará vacía)

3. Número promedio en la cola (Lq )

 c1 1
Lq  P0  5,7167
(c  1)! (c   ) 2
4. Tiempo promedio de espera en la cola (Wq )
Wq = Lq /  = 0,081667

5. Tiempo promedio de espera en el sistema. (W )


W = Wq + (1/) = 0,10667

6. Número de clientes promedio en el sistema (L)


L =  W = 7,4667

7. Probabilidad de que un cliente que llega tenga que esperar (pw )


1 c c
pw   P0 
c! c  
1 2
  1,75 2   0,0667  0,81667
2! 2  1,75
el 82% de las veces un cliente tendrá que esperar.

8. Probabilidad de que n clientes estén en el sistema (Pn )


a) si n  c, se aplica:
n
Pn  P0
n!
y se obtiene:
n Pn
0 0,06667
1 0,11667
2 0,10210

b) si n > c, se aplica
n
Pn  P0
c!.c nc
y se obtiene
n Pn
3 0,08932
4 0,07816
... ...

310
Ejemplo, ¿cual es la probabilidad de que un solo cajero esté funcionando (o que un cajero esté vacío)?,
es lo mismo que preguntar si hay menos de dos clientes en el sistema: se contesta sumando
P0 +P1 = 0,06667 + 0,11667 = 0,18334

9. Grado de uso del sistema (U )


  c  1  c  2  1 
U  1   P0    P1    P2 ...  Pc1  
  c   c   c 
  1 
U  1   P0    P1   1  0,06667  (0,5  0,11667)  0,875
  2 

16.4.1 Interpretación de indicadores

Aplicando WinQSB se analizan los indicadores obtenidos:

Carga de datos en el problema de dos cajeros y una sola cola.

Indicadores: las primeras tres líneas son el enunciado del problema: llegan 70 clientes por hora y la velocidad de
atención de las dos cajas es de 40 clientes por hora.

Cabría preguntarse que ocurre si la cola es muy larga, digamos que en algún momento haya más de 17
clientes en el sistema. Para resolver esta cuestión deberá efectuarse un análisis de probabilidad
(Probability Summary), en el menú Resultados (Results), obteniéndose una tabla como la de la figura
siguiente:

311
Si se suma la probabilidad de cada valor de n por encima de 17, 18 (0,0121), 19 (0,0105), da la
probabilidad de que se encuentren más de 17 personas, lo que es lo mismo que 1 – P(17) = 1 – 0,9036 =
0,096 = 9,6%

16.5 Análisis económico


Hasta ahora, en el ejemplo anterior, la decisión de agregar o no un cajero se basaba en consideraciones
de servicio: tiempo de esperas y largos de la fila que fueran aceptables. Pero también se podrían tomar
decisiones a partir de análisis de costos.

Sea una planta de envasado con un alto número de máquinas ensachetadoras automáticas que frecuentemente se
atascan. Las máquinas se reparan en el mismo orden en que reclaman el servicio (FIFO) por una dotación de siete
técnicos que recorren la planta. Se observa que en promedio las máquinas atascadas son de 10 a 12 en cualquier
momento con una tasa de roturas de 25 máquinas/h. Se reparan en tiempos del orden de los 15 minutos. Se sabe que
aumentando el personal de reparaciones aumentaría la producción de la planta por disminución del número de
máquinas detenidas, pero no se sabe a cuántas personas más habría que contratar.
16.5.1 Reconocimiento del modelo
Las máquinas conforman un modelo de colas, siendo los clientes las que están atascadas. Como hay un
gran número de máquinas y que se atascan independientemente de que previamente se hayan atascado
o no, se puede suponer que la población es infinita. Hay siete servidores idénticos que operan bajo la
política FIFO. El modelo es el de una sola fila de clientes esperando a ser atendidos por el primer
servidor disponible.

1. la aparición de máquinas atascadas puede ser aproximada a un modelo de Poisson con una tasa
promedio de 25 clientes/hora
2. Cada máquina es reparada en una cantidad aleatoria de tiempo aproximada a una distribución
exponencial con un promedio de servicio de 15 minutos, lo que da una tasa de 4 clientes/hora para
la atención.

Por tanto es un sistema:


M/M/7
 = 25 clientes/hora
 = 4 clientes/hora
población infinita

El resultado, obtenido con WinQSB es el de la ilustración siguiente:

312
Indicadores del problema de servicio de ensachetadoras con sistema M/M/7.

Esto indica que hay 12 máquinas en espera y que la cada máquina no funciona por 0,48 hora (aprox.
media hora). A continuación de hacen sucesivas corridas aumentando el número de servidores hasta 11.

NÚMERO DE SERVIDORES 7 8 9 10 11
Overall system utilization (%) 89.2857 78.1250 69.4444 62.5000 56.8182
Average number of customers in the 5.8473 1.4936 0.5363 0.2094 0.0830
queue (Lq)
Average number of customers in the 12.0973 7.7436 6.7863 6.4594 6.3330
system (L)
Probabilidad de espera (Pw)(Pb) 0.7017 0.4182 0.2360 0.1257 0.0630
Average time in the queue (Wq) 0.2339 0.0597 0.0215 0.0084 0.0033
Average time in the system (W) 0.4839 0.3097 0.2715 0.2584 0.2533

Evidentemente, a medida que se agregan servidores disminuyen los tiempos de espera y el número de
máquinas fuera de servicio (con 11 servidores se logra algo así como 6 a 7 máquinas detenidas).
16.5.2 Costos asociados
Hay dos costos básicos:

Costo total de personal/u.de tiempo = Costo/hora de cada servidor x número de servidores

Costo total de espera = Costo de cada máquina fuera de servicio x promedio de máquinas fuera de
servicio

que permite calcular un costo total


Costo total = costo total de personal/u. de tiempo + costo total de espera

si se asigna, por ejemplo, un costo - una pérdida – de $100 por hora/máquina detenida (estos valores
son difíciles de calcular, incluyen costos directos por ventas no realizadas e indirectos como
insatisfacción del cliente o cesión de mercado por falta de stock) y a la mano de obra un costo de $50
por hora/hombre, se puede recalcular cada alternativa de las estudiadas arriba:

Servidores Clientes en el sistema Cálculo del costo/hora Costo/hora


7 12,0973 50x7+100x12,0973 1559,73
8 7,7436 50x8+100x7,7436 1174,36
9 6,7863 50x9+100x6,7863 1128,23
10 6,4594 50x10+100x6,4594 1145,94
11 6,3330 50x11+100x6,3330 1183,30

Como se puede observar, el punto de mínimo costo es utilizar 9 servidores.

Se arriba a un resultado similar, sin pasos intermedios, utilizando WinQSB, según se muestra en las
siguientes pantallas:

313
A la pantalla de carga de datos se le agregan los costos de espera y de cada servidor, pero manteniendo el
número original de servidores, siete. Debe observarse que el costo de cada servidor está dividido en ocupado y
libre, pues puede ocurrir que sean diferentes. Los costos de espera también pueden ser diferentes entre espera
simple y en atención.

Se pide un análisis de capacidad. Se seleccionan los parámetros: comenzar con 7 servidores (start from) y
finalizar en 11 con un paso de 1 por vez. También se podría variar la capacidad de la cola.

La pantalla presenta la valorización del sistema con siete a once servidores. Nueve resulta óptimo.
(Sobredimensionando el actual, en este caso).

16.6 Sistemas con población finita (M/M/c//K)


La característica principal de estos modelos es que, al ser una población limitada, es de esperar que la
tasa de arribos de clientes disminuya en el tiempo. Si se supone que hay 100 máquinas ensachetadoras,
y que luego de reparadas no se atascan más, es evidente que, a razón de 12 máquinas/h en reparaciones
el remanente se va achicando a medida que transcurren las horas.

314
Los extremos de variación de las tasas de arribo serán entonces desde un máximo, que ocurre cuando el
sistema no tiene clientes, a cero, que ocurre cuando todos los clientes están en el sistema, y por tanto
no puede llegar ninguno más. Por tanto el proceso de llegadas se tomará para cada cliente en
particular: hay que determinar la tasa en que una máquina requiere ser atendida.

Si se supone que la frecuencia con que una máquina requiere atención es de una vez cada cuatro horas,
se trabaja como si fuera una tasa. Por tanto, si la tasa de arribos anterior ( = 25/h) ahora se la refiere
a cada una de las máquinas, se tendrá
’ =  / población finita = (25 h-1 / 100 máquinas) = 0,25 reparaciones/hora.máquina

Junto con los datos anteriores:


 = 4 máquinas/hora
costo por servidor = $50/hora servidor
costo de pérdida de producción = $100/hora máquina
se ingresa a WinQSB:

Carga de datos, a los ya existentes se agregan: la población finita (100) (marcado) y la tasa de arribos que ahora
representa la tasa de requerimientos de servicio de cada máquina (Customer Arrival rate), (0,25, marcado).

Indicadores del problema: el número de máquinas en espera pasó de 12,0973 a 7,5885.

315
Búsqueda del óptimo: 8 servidores con un costo de 1051,45

16.7 Sistemas con capacidad de espera limitada (M/M/c/L)


Para sistemas de este tipo se agregan dos indicadores nuevos:

 La probabilidad de denegación de servicio que tiene un cliente que llega y es rechazado porque el
área de espera está completa. Pd.
 El costo asociado con la pérdida de un cliente no atendido, que se agrega al costo por servidor y al
costo por espera
CASO:

Una empresa decide lanzar una oferta de venta masiva telefónica por cinco días para lo cual debe
decidir que tipo de sistema telefónico debe alquilar a la compañía telefónica. Esta ofrece sistemas de
líneas rotativas de 15 y de 20 líneas con opciones de espera de 5 y de 10 llamadas o sin opciones de
espera para cada una:

SISTEMA LÍNEAS LLAMADAS EN ESPERA ALQUILER ($/DIA)


1500 15 0 150
1505 15 5 180
1510 15 10 225
2000 20 0 220
2005 20 5 264
2010 20 10 330

En sistemas telefónicos se demuestra históricamente como razonablemente buena, la distribución de


Poisson para la tasa de llegada. Se suponen los siguientes datos:

Llegadas,  = 150 llamadas por hora


Servicio por línea telefónica  = 12 llamadas por hora.
Se sabe que la compra promedio por llamada (incluyendo los que desisten) es de $50
Cuando al cliente le da ocupado, se estima que el 80% llama de nuevo, el costo de perder un
cliente será:
Cd = costo de la llamada perdida x probabilidad de perder al cliente = $ 50 x 0,20 = $ 10.

Se cargan los datos, en primer lugar para la central de 15 líneas sin capacidad de espera (Sistema 1500).

Carga de datos para 15 servidores sin capacidad de espera. Tasa de servicio: 12 clientes por hora, tasa de arribo
150 clientes por hora, población infinita, costo por servidor ocupado/libre –iguales– 1,25, costo de

316
espera/atención (iguales) 0 y costo por cliente perdido $10. Los renglones “Busy (idle) server cost per hour”
(costo por servidor, ocupado y libre) se calculan como se muestra a continuación.

Ya se estimó el costo por pérdida de un cliente. Falta estimar el costo por servidor:
150$ / dia
Cs   1,25$ / h. linea
8h / dia  15lineas
(debe tenerse en cuenta que línea es equivalente, en este caso, a servidor)
El costo total de los servidores será 1,25 $/hora.linea x 15 líneas = 18,75 $/hora.

El costo de espera no existe, por lo tanto el costo por hora de clientes en el sistema que es el producto
del costo de espera por el número de clientes que esperan, no existe tampoco. Cw = 0

El costo total por denegación del servicio será el producto del costo de negación de un cliente Cd por el
número de llegadas , por la probabilidad de negación del servicio pd .:

costo total por negación = Cd  pd = 10 x 150 x 0,1005 = 150,75 $/h

Indicadores en un sistema M/M/15/0. La novedad es el renglón 14 donde aparece pb . En este sistema hay un 10%
de probabilidades de que el servicio sea negado por falta de capacidad de espera.

Así el costo total por hora para un sistema de 15 líneas sin capacidad de espera será:

Costo total = Costo de los servidores + costo de la espera + costo de la negación del servicio
Costo total =Cs . . c + Cw L + Cd pd = 1,25 x 15 + 0 x 11,2439 + 10 x 150 x 0,1005 = 169,50 $/h

Si se realiza un análisis de este tipo para los demás sistemas telefónicos se tiene:

Sistema
1500 1505 1510 2000 2005 2010
Líneas 15 15 15 20 20 20
Espera 0 5 10 0 5 10
Cs 1,2500 1,5000 1,8750 1,3750 1,6500 2,0625
Cw 0,0000 0,0000 0,0000 0,0000 0,0000 0,0000
Cd 10,0000 10,0000 10,0000 10,0000 10,0000 10,0000
L 11,2350 12,7220 13,5650 12,3310 12,5270 12,5550
pd 0,1005 0,0311 0,0114 0,0135 0,0013 0,0001
Costo total 169,5000 69,08 45,2600 47,7800 34,9000 41,4300
($/h)

Lo que indica que la elección es el equipo 2005: 20 líneas con una capacidad de espera de 5 clientes.

317
16.8 Otros modelos
El modelo M/D/c es aquel en que el tiempo de servicio es Determinístico, donde cada cliente requiere
el mismo tiempo de servicio por ejemplo una línea en la que hay una envasadora-formadora. Un
sistema M/G/c presenta una distribución de probabilidad de servicio distinta de la exponencial o abarca
aquellos casos en que la distribución de probabilidad no es conocida. En estos casos la distribución se
denomina General (G). Estas posibilidades se extienden a las llegadas y ambos procesos pueden tener
cualquier combinación. Por ejemplo D/G/c o G/M/c.

En caso de adoptar la distribución General, se debe conocer, además de la tasa de arribos promedio, ,
la cantidad media de tiempo de servicio y la desviación estándar del tiempo de servicio. Si es cero,
entonces el tiempo es determinístico. (M/D/c)

Sea un sistema de una cola con tres servidores, cuyos clientes llegan con distribución de Poisson de  =
46 clientes/hora. Un estudio del tiempo de servicio arroja que cada servidor necesita un promedio de 5
minutos (0,08333 h) para atender un cliente con una desviación estándar de 2 minutos (0,0333 h). Esto
indica que cada servidor puede procesar un promedio de  = 12 clientes /hora.

En este caso, al ingresar los datos se debe seleccionar:


1. Formato de entrada General Queuing System
2. En el renglón Service Time distr (in hours), distribución de tiempo de servicio, se debe
buscar la distribución General, (haciendo doble clic sobre la palabra exponential) lo
que hace que se habiliten dos renglones, uno para la media y el otro para desviación
estándar.
3. Las unidades a cargar deben ser coherentes: la media será 1/12 (horas), la desviación
estándar será 0,03333 horas y  será 1/46.
4. El renglón Interarrival Time distr. Debe ser puesto en Exponencial (generalmente
aparece por defecto), con el parámetro de locación, a, igualado a cero y el parámetro
de escala, la media, b = 1/
5. Por último, cuando se pide la resolución debe optarse por el método general y no por la
simulación Monte Carlo. (la cual se discutirá en el siguiente capítulo).

Observe las diferencias en la carga y resultados:

Carga de datos con distribución de servicio G-eneral/Arbitraria

318
Indicadores en un sistema M/G/c

Notas
1) estos sistemas sólo son aplicables a una sola fila, con política FIFO, y el cliente atendido abandona el
sistema. Otros sistemas, no contemplados en esta publicación, pueden comprender múltiples filas,
atención en lotes, llegada en lotes, atención con discriminación, sistemas en los que el cliente al llegar y
ver que la cola es grande deciden retirarse, etc. Generalmente se abordan por simulación (ver capítulo
siguiente).
2) En el tema Simulación se desarrolla un modelo de colas con velocidades de atención distintas
para cada servidor y distribuciones de probabilidad diferentes para cada cola.

16.9 Resumen y Notación


Notación de clasificación de sistemas de colas: A/B/c/L/K, donde las dos primeras letras (A y B) son M si
el tiempo entre arribos y de servicios respectivamente, son distribuciones exponenciales. Es lo mismo
que decir que la tasa de arribos o de servicio son exponenciales. Se usa D si el tiempo es constante y G
si siguen una distribución con media y variancia conocidos.

La letra c indica el número de servidores idénticos y en paralelo.


L indica el máximo número de clientes en el sistema. Es la capacidad de la cola más el número de
servidores.
K especifica el tamaño de la población de clientes. Si se OMITEN, K y/o L se asumen infinitos
 es la tasa de arribos
 es la tasa de servicio
 es el factor de tráfico (/)

319
16.10 Apéndice al Capítulo 16
Algunas funciones de distribución de probabilidad en Excel aplicables al tema de colas
Para conocer los cambios introducidos a partir de 2010, consulte:
http://office.microsoft.com/es-ar/excel-help/novedades-cambios-realizados-en-las-funciones-de-excel-
HA010355760.aspx
Uso de la función DISTR.EXP en EXCEL
Devuelve la probabilidad de una variable aleatoria continua siguiendo una distribución exponencial. Se usa
para calcular el tiempo entre dos sucesos, tal como el tiempo que tarda una máquina de cajero automático
en entregar efectivo.

La función DISTR.EXP puede usarse para determinar la probabilidad de que el proceso tarde un determinado
lapso de tiempo como máximo.
SINTAXIS
DISTR.EXP(x; ; acum)
DISTR.EXP.N(x, ; acum)
X es el valor de la función.
 es el valor del parámetro.
Acum es un valor lógico que indica qué forma de la función exponencial debe proporcionarse. Si el
argumento acum es VERDADERO, DISTR.EXP devuelve la función de distribución acumulada; si es FALSO,
devuelve la función de densidad de la probabilidad.

La ecuación para la función de densidad de la probabilidad es:

La ecuación para la función de distribución acumulada es:

Uso de la función POISSON en EXCEL


Devuelve la probabilidad de una variable aleatoria siguiendo la distribución de Poisson. Una de las
aplicaciones comunes de la distribución de Poisson es la predicción del número de sucesos en un
determinado período de tiempo, como por ejemplo, el número de automóviles que se presenta a una zona
de peaje en el intervalo de un minuto.
La distribución de Poisson se caracteriza por
1. la media es pequeña respecto al número total posible de casos (condición de suceso raro)
2. la incidencia de un suceso es independiente de incidencias previas (condición de aleatoridad)
La función se construye con una serie
1  2 3 r
; ; , ;...;
e  1!e  2!e  3!e  r!e 
donde cada término es la frecuencia relativa esperada del suceso raro x, para x = 0, 1, … , r.
y la media  se considera igual a la media  y a la varianza 2
SINTAXIS:
POISSON(x; ; acumulado)
POISSON.DIST(x; ; acumulado)
X es el número de sucesos.
 es el valor numérico esperado. (Es el producto  T en los apuntes)
Acumulado es un valor lógico que determina la forma de la distribución de probabilidad devuelta. Si el
argumento acumulado es VERDADERO, POISSON devuelve la probabilidad de Poisson de que un suceso
aleatorio ocurra un número de veces comprendido entre 0 y x inclusive; si el argumento acumulado es
FALSO, la función devuelve la probabilidad de Poisson de que un suceso ocurra exactamente x veces.
POISSON se calcula como:

Si el argumento acumulado = FALSO: Si el argumento acumulado =VERDADERO:

320
Capítulo 17.
Simulación

17.1 Simulación en computadora


17.1.1 Simulando la raspadita en Excel
17.1.2 Uso de Visual Basic para construir
macros
17.1.3 Segundo ejemplo
17.1.4 Código completo en VBA
17.1.5 Nota sobre Excel
17.2 Metodología
17.2.1 Clasificación del sistema
17.2.2 Identificación de componentes
17.2.3 Componentes generales
17.3 Generación de números aleatorios
17.3.1 Distribución uniforme
17.3.2 Serie continua no uniforme
17.4 Simulando colas con WinQSB

321
C
uando se construyen modelos matemáticos que se aplican a describir realidades muy complejas, puede
ocurrir que – paradójicamente – los modelos resultantes resulten complicados o grandes, por lo que
resulta poco práctico utilizarlos y aplicarlos. Si, por ejemplo, se revisa el modelizado de colas discutido
en el capítulo anterior y se pretende analizar un sistema en el que los servidores trabajen a velocidades
diferentes y que los clientes pudieran optar por un determinado servidor, por ejemplo, basando su
elección en gustos personales o circunstancias particulares, esos modelos no podrían ser utilizados.

Alternativamente se puede diseñar en computadora un modelo que imite el argumento real y someterlo
a cambios del estado de la naturaleza a fin de observar comportamientos. Se pueden aplicar estos
modelos en casos como:

1. Un hospital, para comprender el impacto de agregar más personal de enfermería y de apoyo


2. Un proceso productivo para identificar cuellos de botella en cada línea de producción
3. La administración de un aeropuerto, para ver la influencia de cambios de tarifas o de horarios sobre
el congestionamiento de tránsito
4. Una empresa de comunicaciones que decida establecer una política de captación de clientes.

La definición de R.E. Shannon es: "La simulación es el proceso de diseñar un modelo de un sistema real y
llevar a término experiencias con él, con la finalidad de comprender el comportamiento del sistema o
evaluar nuevas estrategias -dentro de los limites impuestos por un cierto criterio o un conjunto de ellos
- para el funcionamiento del sistema".

Existen varias aplicaciones derivadas de esta definición: los juegos, por ejemplo, permiten simular
estrategias con diversos grados de complejidad: los deportes extremos o juegos de supervivencia, los
juegos de guerra en los colegios militares, o la teoría de juegos aplicada en decisiones discutida en otro
capítulo.

También es aplicable el concepto a equipos que permiten analizar comportamientos en situaciones de


alto riesgo sin poner en peligro la vida o la propiedad: los simuladores (entrenadores) de vuelo, de
conducción de equipamiento, de entrenamiento, etc.

Por último se pueden describir los simuladores de realidades mucho más complejas, como los
simuladores de desarrollos sociales (un ejemplo comercial y muy conocido es el software “Sim-City”,
que se vende como un juego para PC pero que es capaz de simular un desarrollo social cambiante ante
hechos o decisiones determinadas)

La posibilidad de realizar este tipo de modelos ha dado origen a varios desarrollos conceptuales y a
profundizaciones de la teoría de sistemas. Desde este punto de vista se los clasifica en tres grupos:
 sistemas estables: aquellos que tienden, en el tiempo a una posición puntual o espacial
(órbita): reconocen un atractor
 sistemas inestables: aquellos que no reconocen o escapan de los atractores
 Sistemas caóticos: manifiesta los dos comportamientos: es atraído por un atractor y hay
elementos que lo alejan de él.

Una de las mayores características de un sistema inestable es que tiene una gran independencia de las
condiciones iniciales. De un sistema del que se conocen sus ecuaciones características, y con unas
condiciones iniciales fijas, se puede conocer exactamente su evolución en el tiempo. Pero en el caso de
los sistemas caóticos, una mínima diferencia en esas condiciones hace que el sistema evolucione de
manera totalmente distinta. Ejemplos de tales sistemas incluyen la atmósfera terrestre, el Sistema
Solar, las placas tectónicas, los fluidos en régimen turbulento y los crecimientos de población.

En 1963, Lorenz, describió un modelo meteorológico basado en tres ecuaciones diferenciales bien
definidas. Supuso que, conociendo las condiciones iniciales se podría predecir el clima en el futuro. Sin
embargo, al ser éste un sistema caótico, y no poder conocer nunca con exactitud los parámetros que
fijan las condiciones iniciales (en cualquier sistema de medición, por definición, siempre se comete un
error, por pequeño que éste sea) hace que aunque se conozca el modelo, éste se aleja de la realidad
pasado un cierto tiempo. Por otra parte, el modelo atmosférico es teórico y puede no ser perfecto, y el
determinismo, en el que se basa, es también teórico.

Estas consideraciones muy simples llevarían a suponer que cuando se habla de Teoría del Caos se habla
de una teoría y a presumir que Caos es ausencia de orden: No necesariamente es una teoría sino que
puede entenderse como un campo de investigación, que abarca diferentes líneas de pensamiento.

Caos está entendido como cierto tipo de orden de características impredecibles, pero descriptibles en
forma concreta y precisa. Es decir: un tipo de orden de movimiento impredecible.

322
La idea de la que parte la Teoría del Caos es simple: en determinados sistemas naturales, pequeños
cambios en las condiciones iniciales conducen a enormes discrepancias en los resultados

Simulador militar de conducción.

Efecto Mariposa

Es un concepto que hace referencia a la sensibilidad de un sistema a las condiciones iniciales. Su


nombre proviene supuestamente de un proverbio chino: "el aleteo de las alas de una mariposa se puede
sentir al otro lado del mundo", aunque también hay quienes mencionan a Lorenz y Ray Bradbury (“El
ruido de un trueno”) en la génesis del nombre25.

La idea es que, dadas unas condiciones iniciales de un determinado sistema natural, la más mínima
variación en ellas puede provocar que el sistema evolucione en formas totalmente diferentes.

Cuando Lorenz presenta su trabajo en la Academia de Ciencias de Nueva Cork, tratando de predecir el
clima a través de modelos matemáticos que relacionaban variables, lograba predecir la meteorología del
día siguiente. Al revisar los datos se dio cuenta que, haciendo pequeñísimos cambios en ellos, se
lograban resultados absolutamente diferentes26.

Consecuencia de este efecto es el abandono de la idea determinista de una naturaleza mecánica y un


tratamiento dentro de la Teoría General de Sistemas de Bertalaffy. La naturaleza no se asemeja a
modelos previsibles y determinados, sino que existe un orden aparentemente aleatorio en los
acontecimientos, que incapacita al hombre y su saber científico a predecir y controlar la realidad.

17.1 Simulación en computadora


En realidad la utilización de simulaciones se puede aplicar a problemas determinísticos o determinados
y tratar de encontrar la “realidad”. Por ejemplo, en el remanido caso del informe médico: “Lo suyo no
es grave, ya que solamente se complica en un paciente cada 1000”, si bien tiene una base estadística
correcta, al paciente no le da ninguna información concreta sobre lo que le puede pasar. La
probabilidad de buena suerte es del 100% si le fue bien y del 0% si le fue mal. Sin matices.

Se verá un ejemplo, para ilustrar una aplicación posible: Lotería del Oeste diseña un juego consistente
en una raspadita, con tarjetas con tres filas, en cada una hay dos casillas, una con un valor oculto de $
1 y la otra con uno de $ 5. El jugador debe raspar solamente una de cada renglón. Si obtiene los tres

25
En 1952 Ray Bradbury escribió un cuento titulado El ruido de un trueno (A sound of Thunder). En él,
unos cazadores viajan en el tiempo, en la prehistoria y sin darse cuenta, matan a una mariposa. En
consecuencia y debido a ello, cuando vuelven al presente se dan cuenta que el mundo en que se
encuentran es diferente al que habían dejado cuando partieron. Esa muerte no histórica habría
provocado un efecto en cadena de dimensiones inmensurables a lo largo de los milenios.
26
Este tema dió (y da) argumentos para muchas películas, historias y especulaciones (el libro de Michael Crichton,
Jurassic Park – llevado al cine – se basa en una interpretación del caos, las películas “efecto mariposa”, “Torre de
Babel” y otras, hasta un episodio de la serie Los Simpson, tratan estos temas). En esta publicación se incluye el
cuento completo de Bradbury mencionado, al que consideramos pionero (Anexo II).

323
renglones con números iguales se gana la cantidad indicada. ¿Cuál es la mínima cantidad que se debe
cobrar por tarjeta para obtener una ganancia esperada?

Como el problema es simple es posible aplicar la teoría de probabilidades y construir el modelo que
permita obtener la respuesta: la cantidad a cobrar debe ser al menos igual a las ganancias esperadas por
los apostadores, que es lo que la Lotería debe pagarles. La ganancia esperada se calcula como la
esperanza matemática:

Ganancia esperada = $ 1 x (probabilidad de ganar $ 1) + $ 5 x (probabilidad de ganar $ 5)

La probabilidad que tiene un apostador de ganar $1 (o $5) es la probabilidad de que la casilla raspada en
las tres filas tenga 1 (o 5):

P($1) = P(fila1,$1) x P(f2,$1) x P(f3,$1) = ½ x ½ x ½ = 1/8 ,


P($5) = P(fila1,$5) x P(f2,$5) x P(f3,$5) = ½ x ½ x ½ = 1/8 ,

por tanto

Ganancia esperada = $ 1 x (1/8) + $ 5 x (1/8) = $ 0,75

Como se ve, cobrando ese importe es posible equilibrar los gastos.

Es un modelo aceptable. Otro modelo aceptable es – aplicando el mismo concepto – disponer de un dado
y pretender averiguar si, al arrojarlo, va a salir un as. Se puede afirmar que tirándolo repetidas veces,
en uno de cada seis tiros se obtendrá el as. Eso es formalmente correcto, pero, en la realidad, tirando
realmente un dado, el as ¿va a salir en el primer tiro y en el séptimo? ¿Va ha haber un as en seis tiros?
Vemos, haciendo la prueba que a veces en el primer tiro sale y otras veces se tiran diez o doce veces el
dado y no sale ninguno, o salen cinco veces. Estos resultados que parecen erráticos, sin embargo, no lo
son, ya que tirando muchas más veces se obtendrá una proporción de salidas que, efectivamente, tiende
a ser de 1 en 6.

Sería interesante conocer, por un lado lo que el modelo predice: un as cada seis tiros, basado en que,
en muchos tiros se va a dar esa proporción, por otro lado, frente a un tirador determinado, en un
número acotado de tiros, ¿Cuántos ases van a salir? ¿tiene “suerte”?

En el caso de la raspadita se puede intentar conocer que va ocurrir simulando que ya se emitieron los
cartones y se los entregó, en carácter de prueba, a una cierta cantidad de apostadores. Esta sería una
simulación física, realizada imprimiendo, por ejemplo 200 tarjetas, dándoselas a determinadas personas
para que raspen y tabular los resultados. Usando las ganancias obtenidas se puede calcular un promedio
y una desviación. Se obtiene una estimación de ganancia y se pueden usar esos datos para tomar
decisiones. ¿Porqué se querría hacer esto? El modelo probabilística no incluye cosas vagas e imposibles
de definir como “la buena (mala) suerte del jugador” “la corazonada” “una buena (mala) racha” y otras
cosas por el estilo que tratan de explicar los desvíos puntuales y en números acotados de ensayos que se
apartan del modelo.

324
Otra manera es mediante simulación analógica: por ejemplo lanzando al aire monedas (p = ½) : tres
lanzamientos cara son $1, tres cruz son $5, los demás son $ 0. Este enfoque u otro similar, evita
imprimir tarjetas.

La simulación por computadora es ideal para estos problemas, ya que se pueden arrojar las monedas,
tabular los resultados y calcular lo necesario mediante una sola operación simple.

17.1.1 Simulando “la raspadita” en Excel


Como se señala en los capítulos de Programación lineal, hay innumerables maneras de plantear este
problema en Excel sin utilizar programación con VBA. Con fines demostrativos se propone una para que
el lector ensaye optimizarla:

1) Se establece que a partir de un reglón cualquiera (en este ejemplo del renglón 7) simula una
tarjeta de juego. Así el 7 será la primera tarjeta, el 8 la segunda y el 107 la centésima.

2) La columna A, representa el resultado, para cada renglón, de la primera raspada, la B la de la


segunda y la C la de la tercera, pero en formato de número aleatorio.

3) Las columnas D, E y F adoptan valores de “1” y de “5” en función de los resultados de las A, B y
C respectivamente.

4) La columna G le da un valor al juego (0, si no hay coincidencias, 1, si las coincidencias son de


unos y 5 si las coincidencias son de cincos):

CELDA FORMULA COMENTARIOS


A7 =ALEATORIO() Calcula un nº aleatorio entre 0 y 1
B7 =ALEATORIO() Ídem
C7 =ALEATORIO() Ídem
D7 =SI(A7<0,5;1;5) Si el nº en A7 es menor que 0,5 escribe 1,
si es mayor escribe 5
E7 =SI(B7<0,5;1;5) Ídem para B7
F7 =SI(C7<0,5;1;5) Ídem para C7
G7 =SI(Y(D7=E7;E7=F7);SI(D7=1;1;5);0) Si los tres son iguales y si
valen 1 escribe 1,
valen 5, escribe 5
si son distintos escribe 0
I2 =CONTAR(A7:A1000) num. de ensayos, hasta un máximo de 1000-7
I3 =CONTAR.SI(G7:G1000;"<>0") Cuenta solo las ganadoras (distinto de cero)
I4 =SUMA(G7:G1000) Cálculo del importe total ganado por los
apostadores
I5 =PROMEDIO(G7:G1000) Cálculo del premio medio de todas las
tarjetas

Usando las funciones de arrastre esta planilla se escribe en pocos segundos, ya que solo se escribe la fila
7 en todas las columnas A, B, C. D, E, F y G, y luego se arrastra hasta el renglón deseado a fin de tener
el número de renglones equivalentes a la cantidad de tarjetas que se simulan.

En las celdas I2, I3, I4 e I5 se presentan los resultados de la contabilidad del modelo. En el caso
ejemplificado se estableció que se habilitarán los renglones que van del 7 al 1000 (993 tarjetas como
máximo, aunque puede simularse desde una a ese valor cualquier cantidad). Obviamente este valor de
1000 fue puesto por razones de buena visibilidad en la tabla anterior y podría ser cualquier otro hasta el
límite físico de la hoja de cálculo.

Una vez desarrollada esta planilla se debería obtener un resultado como el que se muestra en la figura.
Téngase en cuenta que la función ALEATORIO() es volátil, esto quiere decir que se recalcula cada vez
que el programa tiene que revisar la hoja activa a efectos de recalcular todas las celdas, lo que se
desencadena con cualquier evento como, por ejemplo, cambiar un valor en una celda cualquiera, esté o
no relacionada con otras.

325
17.1.2 Uso de Visual Basic para construir macros en Excel

También es posible escribir una macro en Visual Basic para Office. No es objeto de esta publicación
ahondar en el lenguaje comercial de programación Visual Basic for Aplications. Quien quiera utilizar el
lenguaje puede intentar, con un libro abierto, usar la opción “Herramientas/Macros/Editor de Visual
Basic”. Una vez abierto el editor seleccionar nuevo módulo o, simplemente hacer clic en el botón que
recuerda la tecla Play de un grabador, con lo cual, al no haber macros solamente se abrirá el primer
módulo disponible y se podrá comenzar a escribir código siguiendo la ayuda del programa.

Todos los lenguajes de programación son capaces de generar números aleatorios con distribución
uniforme. Se muestra a continuación un pequeño programa en Visual Basic for Aplications capaz de
hacerlo:

Sub Raspadita()
'
' Raspadita Macro
'

Rnd (-1)
Randomize (2)
For i = 1 To 200
a = Rnd
b = Rnd
c = Rnd
If a > 0.499 Then a = 1 Else a = 5
If b > 0.499 Then b = 1 Else b = 5
If c > 0.499 Then c = 1 Else c = 5
If a = b And b = c Then
gano = gano + a
aciertos = aciertos + 1
End If
Next i
'
Range("a3").Value = "Aciertos : "
Range("c3").Value = aciertos
Range("a4").Value = "% de ac. : "
Range("c4").Value = aciertos * 100 / 200
Range("a6").Value = "Ganancias : "
Range("c6").Value = gano
Range("a7").Value = "Promedio : "
Range("c7").Value = gano / 200

End Sub
El conjunto de instrucciones utilizadas indica al programa los siguientes pasos que cumplirá uno a uno:
1) RND(-1) es una instrucción especial que se utiliza en VBA para obtener un número aleatorio con
un argumento negativo cualquiera (en este caso -1). Este llamado, antes de “Randomize”,
provoca que cada vez que se corre el programa se genera la misma secuencia de números
aleatorios. Esto es útil para comprobar que el programa funciona predeciblemente.
2) RANDOMIZE ()

326
Prepara una secuencia de números aleatorios, para lo cual el operador debe proveer una
semilla (número cualquiera entre –32000 y 32000 aprox.). Si no se provee, (se usa solo
RANDOMIZE) el programa usa como semille una función llamada “TIMER” que provee un número
generado por el reloj del sistema. En este caso se usa 2, junto al negativo anterior, para
mostrar valores comparables.
3) FOR I=1 TO 200
Establece que va a realizar un ciclo en el cual se dará a la variable I un número inicial de 1,
realizará las instrucciones que siguen hasta el punto 8), incrementará el valor de I en una
unidad, repetirá las instrucciones que siguen hasta el punto 8) y así hasta que cuando I alcance
el valor de 200 pasará al renglón siguiente (PRINT…)
4) a=RND; b=RND; c=RND
Guarda en tres variables (a, b y c) un número aleatorio obtenido de la secuencia preparada en
el paso 1.
5) IF a > .499 THEN a=1
Compara el contenido de la variable a con 0,499. Si es mayor supone que se obtuvo un “1”,
valor que guarda en la misma variable a, reemplazando el número aleatorio
ELSE a = 5
Si no es mayor supone que se obtuvo un “5”, valor que guarda en esa variable a, reemplazando
el número aleatorio.
6) Se repite el paso 4 con las otras dos variables, b y c.
7) IF a=b AND b=c THEN
Se compara el contenido de las tres variables para verificar si son iguales, si sí lo son entonces
se ejecutan los renglones que siguen, si no lo son se ejecuta lo que sigue a la instrucción END
IF, que es avanzar al nuevo valor de I (punto 8)
8) gano = gano + a
Renglón que se ejecuta si a=b y b=c equivalente a (a=b=c): en la variable llamada gano se
agrega el importe ganado, que está en a, en b y en c, por lo cual se toma de cualquiera de
ellas, a en este caso, y se lo suma al valor previo de esa variable
aciertos = aciertos + 1
En la variable aciertos se lleva un contador de las veces que alguien ganó, sumándole un uno al
valor que esa variable tenía (incrementando en uno el valor de la variable). Obsérvese que este
paso solamente se realiza si las tres variables son iguales, o sea, si alguien ganó $1 o $5.
9) NEXT i
Tanto si el apostador ganó como no, se realiza un nuevo ciclo hasta llegar a 200. Si ya se llegó a
200 se realizan las instrucciones que siguen, que son la presentación en la pantalla (PRINT) de
los resultados o contenidos de cada variable.
10) Los resultados se “imprimen” en celdas de la hoja de cálculo (Range(“Xy”).value=””)

La siguiente es la salida obtenida con la semilla27 de 2 y RND (-1)

La ventaja de este programa es que se puede simular para, por ejemplo, 11200 intentos. Los resultados con la
misma semilla son:

27
Se denomina semilla a cualquier número que debe ingresarse para que el algoritmo pueda generar una serie de
números aleatorios. En otra sección se volverá al tema, pero se puede suponer que a igualdad de semilla se obtiene
identidad de serie. Muchos programadores proveen una semilla que, si bien no es aleatoria, es impredecible. Por
ejemplo leer la hora del sistema (en Basic es la función TIMER).

327
O una de 1000000 tarjetas, con igual semilla:

Como se puede observar, un simple programa permite hacer cualquier tipo de ensayo y, aún disponer de
distintos resultados. Se puede, además, concluir que a medida que avanza el número de apostadores
hay una tendencia a un 25% de aciertos y a un promedio de ganancia por tarjera de 0,75, que son los
valores que se obtendrían por aplicación lisa y llana del modelo estadístico.
17.1.3 Segundo Ejemplo:
En el primer ejemplo se encontraba un acontecimiento provocándolo a partir de conocer la probabilidad
de ocurrencia. En este segundo ejemplo se presenta una importante variación de la manera de provocar
el acontecimiento: Un “Video Club” que se dedica exclusivamente a estrenos compra películas en DVD
a $ 25 la copia y las alquila a $ 3 por día, luego de un mes las pasa a otra sucursal a un precio residual
de $5 la copia. Las probabilidades de demanda diaria de las películas son:

COPIAS PROBABILIDAD
0 0,15
1 0,25
2 0,45
3 0,10
4 0,05

¿Cuantas copias deben comprarse?

Si se llama n al número de copias adquiridas, se puede formalizar el problema así:


Ganancia esperada = ingresos mensuales esperados + precio de venta de las copias  costo de las copias
Ganancia esperada = ingresos diarios esperados x 30 días + $5 x n  $25 x n
a su vez, los ingresos diarios esperados serán (si se tienen las 4 copias):

ingresos diarios esperados = (ingreso por película) x P(número de películas demandadas)


ingresos diarios esperados = $0 x P(0 pedidos) + $3 x P(1 pedido) + $6 x P(2) + $9 x P(3) + $12 x P(4)
ingresos diarios esperados = $0 x 0,15 + $3 x 0,25 + $6 x 0,45 + $9 x 0,10 + $12 x 0,05 = $ 4,95

con lo cual se tiene:


Ganancia esperada = $4,95 x 30 días + $5 x n  $25 x n = 144 (n)  20n

esa ganancia será función de las copias existentes:


0 copias $0 x 0,15 + $0 x 0,25 + $0 x 0,45 + $0 x 0,10 + $0 x 0,05 = $ 0
1 copias $0 x 0,15 + $3 x 0,25 + $3 x 0,45 + $3 x 0,10 + $3 x 0,05 = $ 2,55
2 copias $0 x 0,15 + $3 x 0,25 + $6 x 0,45 + $6 x 0,10 + $6 x 0,05 = $ 4,35
3 copias $0 x 0,15 + $3 x 0,25 + $6 x 0,45 + $9 x 0,10 + $9 x 0,05 = $ 4,80
4 copias $0 x 0,15 + $3 x 0,25 + $6 x 0,45 + $9 x 0,10 + $12 x 0,05 = $ 4,95

Generando una tabla con valores de número de copias n de 0 a 4:

328
n Ganancia esperadas
0 0
1 56,50
2 90,50
3 84,00
4 68,50

Se puede comprobar que con 2 copias se obtiene un máximo de ganancias esperadas.

Si este problema se lleva un modelo de simulación de pedidos de clientes, para cada uno de los días del
mes se tienen que realizar los siguientes pasos:

a. Generar la demanda diaria de acuerdo con la distribución de probabilidad dada en el enunciado


b. Calcular el ingreso por alquiler basado en que se decidió disponer de dos copias de la película.
c. Calcular la ganancia total:
Ganancia esperada total = ingresos totales por alquiler + ingresos por reventa  costo de
compra =
= ingresos totales por alquiler + 2 x 5  2 x 25 =
= ingresos totales por alquiler  40

para obtener los ingresos totales por alquiler se genera una tabla de números aleatorios uniformes,
pero dividiendo los intervalos con la probabilidad del número de copias:

a = RND

IF a < .15 THEN a = 0 : Goto final


IF a < .40 THEN a = 1
IF a < .85 THEN a = 2
IF a < .95 THEN a = 3
IF a < 1 THEN a = 4
final:

como se puede ver, el intervalo uniforme de los números aleatorios fue dividido en intervalos
proporcionales a la distribución enunciada: si se genera un número aleatorio 0,34342, la demanda diaria
que le corresponde es 1, ya que cae entre 0,15 y 0,40.

En el problema anterior, la sucesión de números aleatorios uniformemente distribuida entre 0 y 1 se


dividía en dos, como la distribución uniforme de una moneda: todos los números menores que 0,5 eran
cara y los mayores eran seca. En ese caso el número aleatorio se utilizaba para simular los que ocurría
raspando la tarjeta con una probabilidad del 50%. En este caso el número aleatorio se utiliza para
establecer que probabilidad tiene un evento y proceder según esa probabilidad.

A continuación se debe generar un programa que cubra los 30 días.

1. Generar el número aleatorio para establecer la probabilidad de eventos del día

2. Determinar la demanda asociada

3. Calcular los ingresos diarios basados en las dos copias disponibles.

Un programa posible, para simular que ocurre con las ganancias si se tienen DOS copias, escrito
simplificadamente en VBAc se muestra a continuación:

RANDOMIZE
FOR i = 1 TO 30
a = RND
IF a < .15 THEN a = 0: GOTO final
IF a < .4 THEN a = 1
IF a < .85 THEN a = 2
IF a < .95 THEN a = 3
IF a < 1 THEN a = 4
final:
IF a = 0 THEN diaria = 0
IF a = 1 THEN diaria = 3
IF a >= 2 THEN diaria = 6
acumula = acumula + diaria

329
NEXT i

Range(“XY”).Value = "Ingresos totales : " & acumula

Range(“XY”).Value = "Ganancia total : "& acumula - 40

(Donde XY es un valor genérico que significa, por ejemplo celda A1, en ese caso XY = A1).
Ejemplo de salida:

Ingresos totales : 126

Ganancia total : 86

Con este método existe la posibilidad de construir una tabla de ganancias suponiendo que se disponen
de 0, 1, 2, 3 o 4 copias:

DIM diaria(4)
DIM acumula(4)
CLS
RANDOMIZE
FOR i = 1 TO 30
a = RND
IF a < .15 THEN a = 0: GOTO final
IF a < .4 THEN a = 1
IF a < .85 THEN a = 2
IF a < .95 THEN a = 3
IF a < 1 THEN a = 4
final:
IF a = 0 THEN diaria(1) = 0: diaria(2) = 0: diaria(3) = 0: diaria(4) = 0
IF a = 1 THEN diaria(1) = 3: diaria(2) = 3: diaria(3) = 3: diaria(4) = 3
IF a = 2 THEN diaria(1) = 3: diaria(2) = 6: diaria(3) = 6: diaria(4) = 6
IF a = 3 THEN diaria(1) = 3: diaria(2) = 6: diaria(3) = 9: diaria(4) = 9
IF a = 4 THEN diaria(1) = 3: diaria(2) = 6: diaria(3) = 9: diaria(4) = 12
FOR w=1 to 4
Acumula(w) = acumula(w) + diaria(w)
NEXT w
NEXT i
Range(“XY”).Value = " *** VIDEO OPERATIVA ***"
Range(“XY”).Value = " Ingresos Ganancia neta "
Range(“XY”).Value = " -----------------------------------------------"
Range(“XY”).Value = " 0 copia :"; 0
FOR w=1 to 4
Range(“Xw”).Value = w;" copias :"; acumula(w);" menos ";25*w;" más ";5*w;" :"; acumula(w) – 25*w + 5*w
NEXT w

La ventaja es que es posible simular varias veces o en períodos de más días.

Como ejercitación el lector puede introducir cambios en el código para obtener resultados partiendo de
otras hipótesis, por ejemplo: cambio de las probabilidades según el mes del año, según el día de la
semana, según una determinada probabilidad de lluvias, etc.

Por otra parte, en el CD, en la carpeta Software, subcarpeta Excel hay un libro llamado simulación.xls
donde está esta macro junto con otras dos: una demostración de la raspadita y una sobre el problema
de alquiler de video.

330
Pantalla de inicio del libro de macros Simulación.xls que está en Software/Excel en el CD
17.1.4 Código completo en VBA
Se transcribe el código en VBA del problema del video club tal como figura en la macro del libro
Simulación.xls. Es tarea del lector, comparando con el código trascripto más arriba, interpretar cada
uno de los pasos:

Sub Video()
'
' Video Macro
' Macro grabada el 17/06/2005 por Alejandro Roberti
'' Acceso directo: CTRL+s
'
Dim diaria(1000)
Dim acumula(5)
Sheets("Hoja2").Select
Cells.Select
Selection.ClearContents

io = "Investigación Operativa"
Cells.Select
Selection.ClearContents
Range("A1").Select
Selection.Font.Bold = True
ActiveCell.FormulaR1C1 = "PROBLEMA DEL VIDEO CLUB EN HOJA DE CÁLCULO"
meses = InputBox("Ingrese el número de meses a simular (max 50)", io, 1)
If meses = "" Then End
If meses = 0 Then End
If meses > 50 Then End
For m = 1 To meses
For i = 1 To 30
a = Rnd
If a < 0.15 Then a = 0: GoTo final
If a < 0.4 Then a = 1: GoTo final
If a < 0.85 Then a = 2: GoTo final
If a < 0.95 Then a = 3 Else a = 4
final:
If a = 1 Then
diaria(1) = 3
diaria(2) = 3
diaria(3) = 3
diaria(4) = 3
End If
If a = 2 Then
diaria(1) = 3
diaria(2) = 6
diaria(3) = 6
diaria(4) = 6
End If
If a = 3 Then
diaria(1) = 3
diaria(2) = 6

331
diaria(3) = 9
diaria(4) = 9
End If
If a = 4 Then
diaria(1) = 3
diaria(2) = 6
diaria(3) = 9
diaria(4) = 12
End If
For w = 1 To 4
acumula(w) = acumula(w) + diaria(w)
Next w

Next i
Next m
Range("B3").Value = "Meses simulados: " + Format(meses)
Range("B4").Value = "Ingresos obtenidos en función del número de copias:"
Range("B5").Value = "copias"
Range("C5").Value = "Alquiler"
Range("D5").Value = "Compra"
Range("E5").Value = "Venta"
Range("F5").Value = "TOTAL"
For i = 1 To 4
Range("B" + Format(i + 5)).Value = i
Range("C" + Format(i + 5)).Value = acumula(i)
Range("D" + Format(i + 5)).Value = i * 25
Range("E" + Format(i + 5)).Value = i * 5
Range("F" + Format(i + 5)).Value = acumula(i) - i * 25 + i * 5
Next i

End Sub
17.1.5 Nota sobre Excel
Excel genera números aleatorios que cambian al recalcular la celda. Puede fijarse un número obtenido
mediante la función ALEATORIO() si escribe esa función en la barra de fórmulas y, en lugar de Enter se
pulsa F9. Esto hace que en la celda se escriba el número y no la función. También es posible generar
números aleatorios entre otros valores diferentes a cero y uno, usando la sintaxis =ALEATORIO()*(b-
a)+a siendo a y b los extremos entre los cuales se quiere generar el número real aleatorio. Por ejemplo
para generar un número entre 0 y 100 debe usarse =ALEATORIO()*100.

17.2 Metodología
Uno de los inconvenientes de la simulación es que se basa en conjuntos definidos de datos, por tanto
puede dar lugar a estimaciones erróneas (sobreestimar el valor de la ganancia de la raspadita, por
ejemplo). Estos casos se solucionan aumentando la base de ensayos, en el ejemplo, realizar hasta 1
millón de apuestas. Otra corrida del problema de las cintas de video iniciada con una semilla 23, dio $
92 de ganancia para dos copias y $ 96 para tres copias. Por otro lado, cada problema requiere su propio
diseño de simulación.

Obviamente la solución sería, si fuera posible, utilizar técnicas analíticas, sin embargo las técnicas de
simulación se utilizan muy a menudo, aprovechando las ventajas que tienen:
1. Cuando el problema es complejo, la simulación permite resolverlo, aunque no se conozcan los
métodos analíticos adecuados: en el caso del alquiler de películas, por ejemplo, en vez de suponer
una distribución de probabilidades igual para cada día, en la práctica es seguro que la demanda varía
en los fines de semana, o algunos podrían devolverla a los dos días. Este esquema es posible de
resolver por simulación, pero muy difícil -aun conociendo la distribución de la devolución-
analíticamente.
2. La posibilidad de modificar varios parámetros para experimentar sin por ello aumentar costos o
impactar al mundo real
3. Se pueden hace ensayos comprimiendo el tiempo, por ejemplo: impacto sobre la economía de una
obra social al cabo de un año si se disminuye el precio a pagar por el afiliado en los medicamentos.
Esto se puede simular con pocos minutos sin esperar un año en un ensayo piloto, por ejemplo.

17.2.1 Clasificación del sistema


Es el primer paso en el diseño de un modelo de simulación. Los sistemas son:
1) De eventos discretos. El estado del sistema solo cambia en determinados puntos del tiempo.
Ejemplo un modelo de colas: el estado del sistema cambia solo cuando un cliente es atendido (sale
de la cola o del sistema) o cuando un nuevo cliente llega.
Pueden ser:
a) Sistemas de terminación son los que tienen puntos definidos de inicio y finalización: se
compran las películas (inicio) y se venden 30 días después (terminación). En estos casos la

332
longitud de la simulación (o cantidad de tiempo sobre la cual se hará la simulación) va desde
el punto de inicio al de terminación y se debe determinar cuantas veces se repite el análisis.

b) Sistemas sin término al contrario de los anteriores no tienen esos puntos: un proceso de
fabricación en donde las condiciones de finalización del día lunes serán las de inicio del martes.
En estos casos habrá que determinar las repeticiones y también la longitud de cada simulación.

2) Continuo. El sistema cambia continuamente en el tiempo. Este sistema no se trata en este texto.

17.2.2 Identificación de componentes


1) Condiciones iniciales: valores que expresan el estado del sistema al principio de la simulación.

2) Datos determinísticos. Valores conocidos necesarios para calcular la salida del modelo. (por
ejemplo el número de empleados disponibles y las horas diarias de labor de cada uno de ellos).

3) Datos probabilísticos. Por ejemplo, en un restaurante, si se conocen cuantos empleados


trabajan y cuanto tiempo cada uno, la llegada de clientes y el tiempo de permanencia en el
local, son datos probabilísticos, cuyo valor es incierto pero que su comportamiento general se
conoce a través de una función de probabilidad (si el valor es discreto) o de densidad, (si el
valor es continuo)

17.2.3 Componentes generales


En resumen el sistema de simulación contará con los siguientes componentes:

Estos componentes se pueden identificar en el primer ejemplo visto de alquiler de película, para lo cual
se transcribe la parte del código que solo tiene que ver con el problema (se quitan por ejemplo las
definiciones de variables o el limpiado de la pantalla) y se le agregan comentarios:

RANDOMIZE :’generación del número


FOR i = 1 TO 30
a = RND
IF a < .15 THEN a = 0: GOTO final :’distribución del número
IF a < .4 THEN a = 1: GOTO final :’generado en grupos discretos
IF a < .85 THEN a = 2: GOTO final :’de probabilidad
IF a < .95 THEN a = 3 ELSE a = 4
final:
IF a = 0 THEN diaria = 0 :’clasificación contable de
IF a = 1 THEN diaria = 3 :’la probabilidad de alquiler:
IF a >= 2 THEN diaria = 6 :’número de películas por ganancia.
acumula = acumula + diaria :’Acumulación de la ganancia.
NEXT i

Range(“XY”).Value = "Ingresos totales : " & acumula ’Salida con los valores
Range(“XY”).Value = ingresos totales ’ buscados
Range(“XY”).Value = "Ganancia total : "& acumula – 40 ’y ganancia neta

17.3 Generación de números aleatorios


En los ejemplos vistos se utilizaron números aleatorios distribuidos entre 0 y 1 a fin de obtener salidas
con una distribución de probabilidad discreta y conocida donde el número aleatorio debía tomar un
valor entre un número finito de posibilidades.

333
Cuando se estudiaron los fenómenos de colas se observó que hay casos en los que las distribuciones de
probabilidad son continuas. Por ejemplo, el proceso de llegadas es una distribución exponencial:

1
f (t )  e  t

17.3.1 Generación de números aleatorios con distribución uniforme
La función de densidad f(x) de los números usados hasta ahora es: f(x) = 1
La función de distribución acumulativa es: F(x) = 1

Los lenguajes de computación generan series aleatorias28 mediante un algoritmo. Requieren de un valor
inicial que determina la serie y que se denomina semilla. Los números generados están distribuidos
uniformemente entre cero y uno y son estadísticamente independientes entre sí.

17.3.2 Generación de una serie continua distinta de la uniforme.


En el ejemplo de las películas se usaron números de una serie uniforme para generar una serie discreta
conocida enunciada con el problema y que variaba de entre 0 y 4.

Para generar una distribución continua, se mostrará un método con el siguiente ejemplo:

Se dispone de un servidor capaz de atender 12 clientes/hora () en promedio y se supone que hay una
variable aleatoria asociada, T, que sigue la misma función exponencial con media en 12.

1
f (t )  et  12e12t

F (T )  P(T  t )  1  et  1  e12t

28
Es más correcto decir que generan números pseudoaleatorios.

334
Se genera un número aleatorio uniforme (W), con el cual se usa una F(t) para que permite hallar el valor
de t que satisfaga F(t) = W. El número t hallado será el número aleatorio con distribución continua:

F (t )  W
1  e  t  W
e t  1  W
1
t   ln(1  W )

También es posible generar números aleatorios con distribución normal con media  y desviación
estándar :

 Se genera un número aleatorio uniforme entre 0 y 1: W


 Se usa ese número para encontrar el valor de t tal que
F(t) = P(n  t) = W
O sea, se encuentra el valor de t para que el área bajo la curva normal a la izquierda de t sea W. Con
una tabla se encuentra el valor de z y se calcula t:
t
z

t    z
Ejemplo
Generar la llegada de clientes (n) con una distribución normal de media 830 clientes/dia y desviación
estándar de 100 clientes:
Sea por ejemplo que se obtuvo el número aleatorio W = 0,1515
Si se usa la tabla de Z o mediante Excel, la función
=DISTR.NORM.ESTAND.INV(W) hasta 2007
=INV.NORM.ESTAND(W) desde 2010
se obtendrá el valor de Z buscado, ya que W representa la probabilidad y es el nombre de la
celda donde se generó.

En tablas comunes, como la que luce en el apéndice de problemas de este texto deberá restar
a 0,5 el valor de W (si W<0,5) para buscar Z cambiado de signo o restarle a W 0,5 si W>0,5 y
buscar Z con su signo.
En este caso Z = –1,03
t =  +  z = 830 + 100 x (1,03) = 727 clientes
O, directamente, con Excel, utilizando la función:
=DISTR.NORM.INV(W;830;100)
=INV.NORM(w;830;00)
donde W es el nombre de la celda (por ejemplo, $C$4) que contiene el número aleatorio (en el
ejemplo 0,1515), lo que da 726,997 clientes, con una media de 750 y una desviación estándar
de 100.

335
En general se aplica el siguiente teorema: Si la función de densidad f(t) tiene una función de
distribución acumulativa F(t), y R es una variable aleatoria uniformemente distribuida entre 0 y 1,
entonces el valor T que satisface R = F(T) es una variable aleatoria cuya distribución acumulativa es
F(t).

17.4 Simulando colas con WinQSB


Los problemas de modelos de colas son típicamente aplicables a simulación. Con WinQSB se puede
acceder a simulaciones mediante los módulos Queuing Analysis y Queuing System Simulation. En primer
término se analizará el módulo de análisis, utilizado en el capítulo de colas, para lo cual se retoma el
problema del alquiler de una central telefónica de 15 líneas sin capacidad de espera cuyos datos están
en la siguiente figura:

cuya solución por el método analítico es:

336
También es posible resolverlo con una simulación. Para ello se selecciona el menú Solve and analyze, y
allí el submenú Simulate the system. Apareciendo un cuadro de diálogo como el de la figura, donde se
puede acceder a las siguientes opciones:

1) Elegir la semilla, entre la que propone el programa (27437, en este caso), que el operador
incluya manualmente una semilla o usar el reloj de la máquina.

2) Elegir la disciplina de la cola entre FIFO, LIFO o aleatoria

3) Elegir un tiempo de simulación, en este caso aparece por defecto que se va a simular un lapso
de 1000 horas de operación de la central

4) Elegir el momento en que se comienza a recolectar datos, en este caso al inicio de la


simulación, aunque se puede optar por otro momento, por ejemplo a la mitad del período de
utilización simulada, suponiendo que recién allí hay estabilidad.

El programa comenzará una corrida de simulación que arranca en cero con la recolección de
datos y termina, en este caso, en 1000. Se puede interrumpir el proceso en cualquier momento,
presionando Q e ir a la pantalla de resultados.

Cuando finalmente se termina la simulación, aparece la planilla de informes, como la que se


muestra a continuación y que debe ser comparada con la obtenida por proceso:

337
338
Capítulo 18.
Estudios de Casos:
a) Inventarios
b) Rentabilidad proyectada.

18.1 Caso A) Inventarios


18.1.1 Condiciones de simulación
18.2 Caso B) Rentabilidad proyectada
18.2.1 Desarrollo y búsqueda de datos
18.2.2 Generación de valores aleatorios

339
18.1 Caso A) Inventarios

E
l siguiente caso se desarrolla sobre un problema de inventarios donde no se conoce el tiempo L y hay un
plazo máximo de permanencia del producto en el almacén, por lo cual no se pueden utilizar los modelos
vistos en el Capítulo 13 y se desarrolla mediante técnicas de simulación:

Una empresa provee pan de molde a varias bocas de venta el cual es comprado a terceros a $ 1,5 el kg y
lo almacena en su depósito. De ahí el pan es distribuido a los puntos de venta por demanda a $ 2 el kg.
La demanda diaria puede ser considerada como buena aproximación a una distribución normal con una
media de 750 kg y una desviación estándar de 100.

Cada pedido a los terceros cuesta $100 y cubre los gastos de entrega y de procesamiento.

El 80% de las veces que se pide el pan a los fabricantes por la mañana la entrega se produce a la mañana
siguiente, y el 20% restante a la mañana subsiguiente (dos días después de hecho el pedido)

El costo de mantenimiento del almacén es de H = $ 0,02 por kg y por día.


Si el pan permanece más de siete días sin ser distribuido se vende como descarte a $ 0,5 el kg.

Política de inventario

Como la política de inventario puede ser de revisión continua o de revisión periódica, se opta por la
segunda, ya que, cada mañana se debe satisfacer una demanda y, por tanto revisar el inventario en ese
momento parece apropiado. Esto se realiza de la siguiente manera:
a) Se recuenta el inventario de pan disponible en la mañana, I, y se suman los kg de pan que
fueron pedidos y que aún no se recibieron (B).
b) Se hace el nuevo pedido si la suma de I + B está por debajo del nivel mínimo establecido (R). En
ese caso se pide una cantidad tal que se tenga un total de S kg en inventario y en espera de
entrega. Significa que se pide q = S – (I + B)

El objetivo es determinar los valores de R y de S que minimicen el costo de inventario y maximicen las
ganancias.

18.1.1 Condiciones de simulación


Para poder desarrollar este caso, se deben establecer condiciones de partida y es conveniente trabajar
sobre algunos valores concretos para verificar que no se cometen errores.

Se eligen los siguientes valores:


Inventario actual más la cantidad pedida y las entregas en curso debe ser igual a S = 4000 kg. (S = q +
(I+B))
Nivel mínimo de inventario aceptable al inicio del día, R = 900 kg.
Costo del producto, C = 1,50 $/kg
Costo del pedido K = 100 $
Costo de almacén H = 0,02 $/kg dia
Valor de reventa V = 0,50 $/kg
Demanda de pan: D’ = 750 kg/dia σ = 100
Tiempo guía L = 1 o 2 días. Probabilidad de 0,8 y 0,2, respectivamente.

Ejemplo del panorama que se puede encontrar quien revisa el inventario una mañana cualquiera, la que
se llamará Día 1:

No solo se revisa cuanto pan hay, sino cual es la antigüedad de ese pan. En el desarrollo del siguiente
ejemplo se verifica que no hay pedidos pendientes de entrega y existe en inventario la siguiente
cantidad de pan:
Días de almacén Inventario (kg)
0 I0 0
1 I1 500
2 I2 300
3 I3 0
4 I4 0
5 I5 100
6 I6 100

340
Luego se generará otro número aleatorio uniforme. Si el número es menor a 0,8 se establece L = 1 día,
si es igual o mayor a 0,8 entonces L = 2 días.

Con estos pasos se han generado los eventos demanda y plazo de entrega del pedido.

Se comienza a trabajar sobre el día 1:


a) no se recibe pan porque no hay pedidos pendientes
b) el inventario inicial es el que está en la tabla (0+500+300+0+0+100+100 = 1000), que está por
encima de los 900 establecidos como piso
c) generación de la demanda del día. Para ello:
En primer lugar se generara un número aleatorio uniforme y con él se encontrará el Z que
corresponde (el número uniforme es el área a la izquierda de una curva de distribución
normal).
La demanda esperada para ese día es:
Dem = D’ + σ Z = 750 + 100Z
Supóngase que Dem = 823 kg
d) actualización de inventario: la demanda ¿se cubre con la existencia?. Como este es el caso, hay
que distribuir la venta: los 823 kg se cubren con los 100 kg de pan I6, más 100 kg de pan I5 más
300 kg de pan I2 y 323 kg de pan I1.

e) Ahora hay que actualizar el inventario, llevar a condiciones de “día siguiente”

Dias de almacén Inicio Dia 1 Entregas Inicio día 2

0 I0 0 0 -
1 I1 500 323 -
2 I2 300 300 500-323=177
3 I3 0 0 300-300=0
4 I4 0 0 0
5 I5 100 100 0
6 I6 100 100 100-100=0
7 I7 0 0 100-100=0

Si un kg de pan se vende en boca deja una ganancia de 0,50 $ y si se vende a descarte una pérdida que
en términos de ganancias es de – 1 $

La ganancia neta será la proveniente de las bocas + ganancia (-) de la venta a descarte – costo del
pedido diario – costo de mantenimiento de inventario diario

En este caso:
Ganancia en bocas: 823 x 0,50 = 411,50
Ganancia descarte: kg de descarte x (– 1) = 0
Costo del pedido: 100 x pedidos del dia 1 = 0
Costo mantenimiento: kg de pan con menos de 7 días al fin del día 1 x H = 177 x 0,02 = 3,54
Ganancia neta: 411,50 – 0 – 0 – 3,54 = 407,96

Ahora se trabaja sobre el Dia 2:


No se recibe pan, ya que no hubo pedidos anteriores. El inventario está igual que al fin del día 1: hay un
inventario total de 177 kg.

Se debe hacer un pedido para que el inventario suba a S = 4000. El pedido se hace así:
q = S – I + B = 4000 – 177 + 0 = 3823 kg

Cálculo del día de llegada del pan: Dia 3 (80%) de probabilidades o Día 4 (20%). Se genera un NA.
Supóngase que se obtuvo un NA menor que 0,8, por lo tanto el nuevo pedido llega a inicio del día 3.

Cálculo de la demanda: se genera otro NA. Supongamos que se obtienen 560 kg de pan demandados.

Cálculo de cumplimiento de la demanda: No se cumple, pues el número de kg a entregar es mayor que


la existencia. Todo el inventario queda en cero.

Ganancia del día 3: 177 x 0,5 – 0 x 1 – 100 – 0 = – 11,50 $

Día 3:
Se recibe pan, ya que hay un pedido del día anterior:

341
Días de almacén Inventario (kg)
0 I0 3823
1 I1 0
2 I2 0
3 I3 0
4 I4 0
5 I5 0
6 I6 0

El inventario total está por encima de 900, no hay que pedir más pan.

Demanda del día: se genera con un NA, supóngase que se obtiene una demanda de 607 kg de pan.

Cálculo de cumplimiento de la demanda, se cumple pues se necesitan 607 kg y hay 3823 kg.

Actualización del inventario


Dias de almacén Inicio Dia 3 Entregas Inicio día 4

0 I0 3823 607 -
1 I1 0 0 3823 – 607 =3216
2 I2 0 0 0
3 I3 0 0 0
4 I4 0 0 0
5 I5 0 0 0
6 I6 0 0 0
7 I7 0 0 0

Cálculo de la ganancia neta:


607 x 0,50 – 0 x 1 – 3216 x 0,02 = - 239,18 $

De esta manera se puede calcular una ganancia diaria neta para cada día subsiguiente y, una vez
terminado el ensayo, dividiendo por el número de ganancias netas obtenidas se encuentra una ganancia
neta promedio.

Obviamente hay que encontrar aquellos valores de s y de S que maximicen la ganancia neta promedio
diaria y hacer simulaciones para determinadas cantidades de días a efectos de elegir la combinación R /
S mejor.

Se propone una alternativa para solucionar el problema que puede ser válida:
1) Calcule el valor de R como si el inventario fuera determinístico y con L conocido de 1 día, R1:
R1 = DL = 750x1 = 750
2) Calcule igual para L de 2 días, R2 = R2 = 750 x 2 = 1500
3) Calcule la E(R) = 750 x 0,8 + 1500 x 0,2 = 900 (que es valor supuesto como inicial)
4) Calcule, con WinQSB la cantidad Q suponiendo un problema determinístico con demanda diaria
de 750. (debe dar Q = 2738,6 kg)
5) Calcule el stock de seguridad para alfa 0,95, S = Zσ = 1,645 x 100 = 164,5 en un modelo de
revisión continua
6) Establezca un primer Q usando el hallado más S más la demanda media del tiempo de revisión:
750 + Zσ + Q = 750 + 164.5 + 2738,5 = 3653 (se redondeó en 4000)
7) Ingrese valores variando R y S hasta encontrar el óptimo.

18.2 Caso B) Rentabilidad Proyectada

La empresa TeleStar desea lanzar una campaña bajo el de ventas con el método de llamadas telefónicas
personalizadas a una cartera de clientes personalizada.

Debido a que los resultados y datos son inciertos, se desea establecer un modelo para comprender
mejor el comportamiento y pronosticar la estrategia y sus resultados económicos.

La información disponible es la siguiente y el análisis preliminar de la situación es la siguiente:


a) Se utilizará simulación con el método de Montecarlo con el objetivo de evaluar posibilidad de
rentabilidad y de riesgos.
b) El modelo matemático básico empleado será “Beneficio = ingreso – gastos”, que aunque son
parámetros sencillos, son inciertos en este negocio.

342
18.2.1 Desarrollo y búsqueda de datos:
En primer lugar se debe establecer el parámetro “Ingreso”, el cual dependerá de la cantidad de ventas
(Q) multiplicada por el ingreso de cada venta (P), que es una ganancia conocida en cada caso respecto a
los costos de todos los estados previos a la venta en análisis, aunque variable en términos de la manera
en que el vendedor cierra con el cliente.

Queda entonces la expresión:

El rango de variación de P es de 47$ a 53

Para estimar el valor de las ventas efectuadas se utilizará la experiencia en purchasing leads utilizando
una tasa de conversión (R) que varía del 1 al 5% aplicada sobre una cartera de clientes potenciales que
varía entre 1200 y 1800 en función de la posibilidad de contacto en un mes.

Entonces

Para

Quedando:

Los gastos se calculan en base a costos fijos (H) aplicados en el equipo de ventas y un costo que
dependerá de cada contacto (exitoso o no) con los potenciales clientes (C).

Siendo que los costos unitarios de contacto con un cliente dependen de varios factores, tales como
búsqueda, necesidad de repetir el contacto, etc. Por ello está sujeto a incertidumbre y pueden variar:

Finalmente, el modelo general inicial queda expresado de la siguiente manera:

Que puede expresarse como una función

18.2.2 Generación de valores aleatorios en cada variable

El primer paso consiste en generar valores aleatorios dentro de los rangos permitidos que satisfagan
cada una de las variables, según la siguiente tabla:

Variable Valor medio Mínimo Máximo


Tasa de conversión R 0,03 0,01 0,05
Cartera mensual de 1500 1200 1800
clientes L
Beneficio por venta P 50 47 53
Costo de contacto C 0,50 0,20 0,80
Costo fijo mensual H 800

Si se utiliza una planilla de Excel o Calc, solamente deberá habilitarse una columna para cada variable.
En el ejemplo:
 Columna A, variable L, expresión en A2: “=ALEATORIO.ENTRE(1200;1800)” (Estos valores
conviene referenciarlos a un grupo de celdas donde figuren los máximos y mínimos de cada
variable – tabla anterior -))
 Columna B, variable C, expresión en B2: “=0,20 + ALEATORIO()*(0,80-0,20)” Ídem.
 Columna C, variable R, expresión en C2: “=0,01 + ALEATORIO()*(0,05-0,01)”. Ídem.

343
 Columna D, variable P, expresión en D2: “=47 + ALEATORIO()*(53-47)”. Idem
 Columna E, valor de H (800)
 Columna G, valor de Ganancia, expresión en G2: “=C2*A2*D2-(E2+C2*A2)”

Debería quedar este encabezado:

Para realizar la simulación simplemente se arrastran estos valores (Cuidando si las referencias están o
no ancladas) de manera tal de realizar aproximadamente 5000 ensayos, que podrán repetirse cada vez
se pulse F9.

El aspecto terminado es el siguiente:

La siguiente tarea, será realizar un gráfico de barras, para lo cual se puede habilitar una parte de la
hoja con los siguientes datos:

344
Donde las celdas tienen las siguientes funciones:

Celda J2: “=MIN(G:G)”


Celda J3: “=MAX(G:G)”
Celda J4: “=CONTAR(G:G)” para saber cuál es el número exacto de ese “aproximadamente 5000”

 La primera celda de la columna “I” bajo la etiqueta “Abscisa” copia el valor de J2, (Mínimo) y
es el extremo izquierdo del eje de abscisas.

 En este caso la decisión fue dividir dicho eje en 40 valores, por lo tanto, la segunda celda
tendrá como función, si la celda anterior era “I8”, la siguiente: “=I8 + ($J$3 - $J$2)/40”

 Las demás celdas de esa columna se arrastran desde la segunda hasta totalizar las 40 del rango.

 En la columna “Frecuencia”, y seleccionando previamente todo el rango de 40 celdas, se


escribe la función matricial “=FRECUENCIA(G:G;I8:I47)” donde G:G es el rango donde están los
datos e I8:I147 es donde están las referencias. (Tener en cuenta que esta función, por ser
matricial, se acepta pulsando CTR+SHIFT+ENTER en lugar de Aceptar)

 La columna “Escala” se usa para que el histograma muestre una área sumatoria de las barras
igual a 1. Para ello se escribe en la primera celda la siguiente función “=L8/$J$4)/($J$3 -
$J$2)”

En este punto se está en condiciones de hacer una análisis estadístico de los resultados.

Para lo cual se comienza graficando los datos con columnas:

345
Y luego se agrega una tabla de resultados:

Para repetir el ensayo basta pulsar F9 tantas veces como se quiera repetir.

346
Anexos
Anexo I. Repaso muy breve de nociones elementales
de Estadística
Anexo II. Notas sobre Microsoft Excel
Anexo III. Notas sobre Apache OpenOffice y LibreOffice
Anexo IV. Alfabeto Griego
Anexo V. Tabla de Z
Anexo VI. El ruido de un trueno

347
Anexo I
Repaso muy breve de nociones elementales de estadística.
Definiciones:

Conjunto estadístico: Es el conjunto de elementos sometidos a la investigación estadística. No existe


una definición rigurosa, sino que solo se puede afirmar, dado un elemento cualquiera, que pertenece o
no al conjunto. Los elementos constitutivos pueden ser objetos, mediciones, acontecimientos
enumerados. Cada elemento puede ser en sí mismo un conjunto.

Acontecimiento: Es la ocurrencia de un hecho observable o fenómeno. El resultado de una prueba.

Frecuencias Absolutas: La frecuencia absoluta de un carácter o de una medición dentro de un conjunto


numerable, es el número de individuos a los cuales está ligado este carácter o esta medición.

Frecuencia Relativa: Es la razón entre la frecuencia absoluta y el total efectivo del conjunto, es decir,
la fracción del conjunto que presenta determinadas características

Prueba: El conjunto de todas las pruebas que son posibles dentro del mismo sistema de acontecimientos
que son ciertos o a los que hacemos ciertos.

Equivalencia: Dos acontecimientos son equivalentes si uno es la condición necesaria y suficiente del
otro

Operaciones: Si A y B son dos acontecimientos,


(A y B) = (AB) Es el acontecimiento que consiste en la realización de A y de B. Intersección.
(A o B) = (AB) Es el acontecimiento que consiste en la realización de al menos uno de los
acontecimientos. Unión.

Probabilidad: Es un término que designa, a la vez:


1. Un símbolo matemático sometido a reglas de cálculo particulares definido por axiomas de cálculo de
probabilidades
2. El valor numérico asignado a ese símbolo cuando el cálculo se emplea en aplicaciones prácticas.

En cada caso particular este valor se determina en función de la lógica del sistema axiomático. La
probabilidad de un acontecimiento A se escribe P(A) .

Según la definición clásica de Laplace, 1812, la probabilidad de un suceso es la razón entre el número
de casos favorables y el número de casos igualmente posibles. Como esta definición no es aplicable en
conjuntos cuyos elementos – casos posibles – sean infinitos, en vez de “número” se debería usar el
vocablo “medida” a efectos de poder calcular la razón.

Principio de las probabilidades totales: si dos sucesos A y B son incompatibles, la probabilidad de que
ocurra A o B es igual a la suma de la probabilidad de cada suceso:
P(A o B) = P(A) + P(B)

Principio de las probabilidades compuestas: si dos sucesos A y B son independientes entre sí, la
probabilidad de que ocurran A y B a la vez es igual al producto de las probabilidades de cada suceso:
P(A y B) = P(A) * P(B)

Frecuencia, probabilidad experimental o probabilidad estadística: los casos favorables son obtenidos
por la experiencia.

Teorema de Bernoulli:
Sea P la probabilidad de un acontecimiento A y f es la frecuencia relativa de ese acontecimiento en un
conjunto de N pruebas idénticas e independientes. Si el número de pruebas crece indefinidamente
entonces la frecuencia converge hacia la probabilidad.

348
El teorema permite:
1. Una interpretación concreta de la noción de probabilidad
2. Obtener a partir de resultados experimentales la estimación de la probabilidad con un margen de
error predeterminado.

Es de uso constante en estadística matemática considerar al conjunto estadístico observado como


muestra perteneciente a un universo infinito, del cual forma parte. El universo de referencia puede ser
expresado en términos de un modelo probabilístico, lo que es caracterizado por funciones de reparto y
de distribución de probabilidad.

Axiomas

1. Espacio muestral (E) es el conjunto de todos los resultados posibles de un experimento.


Ejemplo, se tiran tres monedas para ver si caen cara (C) o cruz (*). El espacio muestral es el
siguiente conjunto:
{(C,C,C), (C,C,*), (C,*,C), (*,C,C), (C,*,*), (*,C,*), (*,*,C), (*,*,*)}
Experimento aleatorio: es un experimento que genera un espacio muestral.
2. P(A)  0
3. Si A y B son equivalentes, P(A) = P(B)
4. Si A es imposible P(A) = 0
5. Si A es cierto P(A) = 1
6. Si A, B, ... , L son mutuamente excluyentes P(AB...L) = P(A) + P(B) + ... + P(L)
7. Para el espacio muestral
P(E) = P(A1) + P(A2) + … + P(An) = 1
siempre que A1, A2, … An es un número finito de sucesos.
El espacio muestral E = A1  A2  …  An

Variables aleatorias: son aquellas que provienen de un experimento aleatorio. A cada elemento de E
corresponde un número real.
EJEMPLO: Se realiza un experimento aleatorio arrojando dos monedas y verificando si sale cara o cruz.
Interesa solo saber el número de caras (C).
Espacio muestral:
(C,C) (C,*) (*,C) (*,*)
Se Define la función X = n° de caras. Los valores de X son:
X(C,C) = 2
X(C,*) = X(*,C) = 1
X(*,*) = 0
Por tanto existe un nuevo conjunto de números reales {(2), (1), (0)} con una probabilidad para cada uno:
P(2) = P(C,C) = ¼
P(1) = P(C,*) + P(*,C) = ¼ + ¼ = ½
P(0) = P(*,*) = ¼

Por tanto habrá una función de probabilidad que será f(x1) = P(X = x1)
La función de probabilidad del suceso x1 será a probabilidad de que los sucesos buscados X sean x1 y se
debe cumplir que  f ( x )  1, y que f(x ) 0 i
i
i i

Si lo buscado es la probabilidad de que X sea menor o igual que xk y los xi están ordenados de manera tal
que x1  x2  …  xn, entonces se tendrá
n
F ( xh )  P( X  xh )   f ( xw ) que es la función de distribución de probabilidad.
i 1
EJEMPLO
Se arrojan tres monedas y se analiza la variable aleatoria X = número de caras:
C,C,C C,C,* C,*,C *,C,C
C,*,* +,c,* *,*,C *,*,*
Como cada uno de los elementos tiene una probabilidad P = 1/8, los números de caras posibles son:

x1 = 0
x2 = 1
x3 = 2
x4 = 3
por tanto se tendrá:

349
X f(x) F(x)
0 1/8 1/8
1 3/8 1/8+3/8=1/2
2 3/8 ½+3/8=7/8
3 1/8 7/8+1/8=1

Distribución de probabilidades

Si se define
Función de distribución izquierda como P x  x   F ( x)
Función de distribución derecha como P x  x   G( x)
Si la variable aleatoria es discreta: F + G > 1 dado que el punto tiene probabilidad distinta de cero.
Si es continua, F + G = 1 dado que, por convención, la probabilidad puntual es cero.

Se define función de densidad o frecuencia como


dF ( x)
f ( x)   F '( x)
dx
si con los datos se construye la función de densidad se obtiene las siguientes formas generales:

En general las distribuciones normales se presentan cuando existe poca dispersión en los valores de x. Si
la variable x es, por ejemplo, salarios de empleados de una fábrica, entonces la dispersión es grande y
será una distribución asimétrica positiva.
En general alta asimetría es alta dispersión de la variable, lo que es medible a través de la varianza.
 
El cociente: es la dispersión relativa o coeficiente de variación. Puede decirse que, si < 0,15, el
 
modelo responde a una distribución normal.

si 0,15 < < 0,25, el modelo puede ser o no normal.


si  0,25 el modelo responde a una distribución asimétrica.

Esperanza matemática
Para una variable aleatoria finita X que toma los valores x1, x2, … , xn cuyas probabilidades son f(x1),
f(x2),…,f(xn), se denomina esperanza matemática o valor medio de la función G(x) de la variable
aleatoria X a la expresión
n n
E (G( X ))   G( xi ) f ( xi )   G( xi ) P( xi )
i 1 i 1
EJEMPLO
Sea X el número obtenido al lanzar un dado:

350
1 1 1 1 1 1
E ( X )   1   2   3   4   5   6  3,5
6 6 6 6 6 6
1 2  3  4  5  6
E( X )   3,5
6

Momentos de una variable aleatoria


Se denomina momento de orden k de la variable aleatoria finita X a la esperanza matemática de Xk.
n
 k  E ( X k )   xtk f ( xt )
t 1
en particular, si k=1 se tiene la expresión del punto anterior, valor medio. Sobre esta definición, 1, se
construyen los momentos centrados:
n
 k  E (( X  1 ) k )   ( xt  1 ) k f ( xt )
t 1
Varianza: es el momento centrado de segundo orden:

Var( X )   2   2 ( X )  E (( X  1 ) 2 )   ( xt  1 ) 2 f ( xt )
La raíz cuadrada de la varianza se llama desviación típica o desviación estándar de la variable aleatoria
X.

Covarianza: Si se tienen dos variables aleatorias, X e Y, cuyas medias son, respectivamente, 1 y 1, la
covarianza es:
cov(X , Y )  E (( X  1 )(Y  1 ))   ( xt  1 )( y j  1 ) P( xt , y j )
Correlación: si las variables aleatoria X e Y son independientes, la cov(X,Y)=0. Esto significa que la
covarianza mide el grado de dependencia entre las dos variables. Si se conoce la desviación típica de
cada variable ((X) y (Y)), se llama coeficiente de correlación a:
cov(X , Y )
 que es un número real que varía entre – 1 y + 1. Cuando  = 1 o  = -1 significa que
 ( X ) (Y )
entre X e Y existe una dependencia lineal. Si  = 0 las variables son independientes.

Regresión: Si para dos variables aleatorias X e Y se tiene que la probabilidad de encontrar un par x1, y1
es P(x1, y1) , entonces
P( xi , y j )  P( xi ) P( y j xi )
para cada valor de X, por ejemplo X = x1 se tendrá la esperanza matemática de Y:
yi'   y j P( y j x1 ) que es una función cuyo dominio es el conjunto de valores de X y que se llama
j
regresión de Y sobre X.
Se aproxima esta función a una recta de forma y = ax + b de manera que al determinar las constantes a
y b la esperanza sea mínima, siendo tal esperanza:
E   ( y j P( y j xi )  a  bxi ) 2 P( xi )
i j

para minimizar hay que tener en cuenta que f


i, j
ij  1 y derivar respecto de a y de b. Así se obtienen

los coeficientes de la recta de regresión de Y sobre X. (b se denomina coeficiente de regresión)

cov(X , Y )
a  E (Y )  E( X )
 2 (X )
cov(X , Y )
b
 2 (X )

351
Fórmula de Bayes
Considérese un espacio muestral E que contenga todos los posibles resultados de una prueba. Si A y B
son dos acontecimientos de E, entonces la probabilidad condicional de A, dado que B ha ocurrido, y la
probabilidad condicional de B, dado que A ha ocurrido, están definidas por:

P( A B )  P( B ) * P( A|B )  P( A) * P( B| A)

P( A|B ) P( B ) (1)
P( B| A) 
P( A)

en donde P(A) > 0. Esta ecuación se lee así: Siempre que haya ocurrido un evento A, la probabilidad del
evento B es la probabilidad de que los eventos A y B ocurran simultánea o sucesivamente dividido por la
probabilidad de A.

Se tienen tres urnas. Una de ellas con 3 fichas


rojas y 6 blancas, a la que se llama URNA 1. Si
de la URNA 1 se extrae una ficha roja hay que
extraer de la URNA 2 una ficha de entre las 5
Azules y 4 Verdes que contiene. Si, en cambio,
se extrae una ficha blanca, hay que extraer de
la URNA 3 una ficha entre las 2 Naranjas y 7
Amarillas que contiene.

¿Que probabilidad hay de sacar una ficha azul?

Solución

Primera extracción Segunda extracción: Condicional.

Si fue roja: Si fue blanca:

P(ROJA) = 3/9 = 0,333 P(AZUL|ROJA) = 5/9 = 0,556 P(AMARILLA|BLANCA) = 7/9 = 0,778


P(BLANCA) = 6/9 = 0,667 P(VERDE|ROJA) = 4/9 = 0,444 P(NARANJA|BLANCA) = 2/9 = 0,222
1,000 1,000 1,000

Resta resolver P(A|B) xP(B) = P(AZUL|ROJA) x P(ROJA) = 0,556 x 0,333 = 0,185 29

Si todos los resultados se tabulan se encuentra:

Evento Probabilidad Marginal Probabilidad condicional Probabilidad conjunta


P(B) P(A|B) P(B) x P(A|B)
Azul si fue roja P(R) = 0,333 P(AZ|R) = 0,556 0,185
Verde si fue roja P(R) = 0,333 P(V|R) = 0,444 0,148
Amarilla si fue blanca P(BL) = 0,667 P(AM|BL) = 0,778 0,519
Naranja si fue blanca P(BL) = 0,667 P (N|BL) = 0,222 0,148
1,000

29
En algunos textos encontrará P(B|A) x P(A) = P(BA)

352
Bayes evalúa la carga dado el efecto:
Si P(A|B) = P(A) y si P(B|A) = P(B),. Si A y B son independientes, entonces
P(A  B) = P(A) * P(B)

En definitiva, el análisis Bayesiano es un procedimiento para estimar las probabilidades de situaciones


en las que se dispone de información muestral. La terminología usada es:

Estados de la natura (estados de la naturaleza): generalmente representa un acontecimiento o


situación posible en el futuro. Por ejemplo, un estado de la naturaleza para quien toma decisiones
puede ser la demanda esperada, las preferencias del consumidor, las condiciones económicas, un rango
de temperaturas, etc. Con Si se representan los i estados de la naturaleza, para i=1 hasta n.

Probabilidad inicial: representa la posibilidad de que un estado de la natura ocurra, sin tener
información. P(Si) es la probabilidad del estado de la naturaleza Si.

Información de muestra: usualmente es la información adicional que se obtiene cuando se realiza un


estudio o muestreo. Los datos obtenidos se representan con diferentes indicadores. Ij representa el
indicador j de la muestra obtenida para j = 1,...,m.

Probabilidad condicional: representa la posibilidad de que se dé un particular suceso si otro ha


ocurrido. En el análisis bayesiano usualmente se representa la probabilidad de un indicador de un
muestreo si se dá un determinado estado de la naturaleza. P(Ij/S) es la probabilidad condicional de Ij
dado Si. La probabilidad condicional puede ser un indicador del nivel de confianza de la información de
muestra.

Probabilidad marginal: es la probabilidad general de un indicador muestral Ij.


P(Ij) = S P(Si) P(Ij/Si) para i =1 a n.

Probabilidad conjunta: es la probabilidad de que múltiples sucesos ocurran simultáneamente. La


probabilidad conjunta de que ocurran Ij y Si simultáneamente es P(Ij,Si) = P(Si) P(Ij/Si)

Probabilidad revisada: es la probabilidad condicional de que se de un estado de la naturaleza dado un


resultado muestral.

P(Si/Ij) = P(Ij,Si) / P(Ij)

Función de densidad o frecuencia normal

353
1  1  x    2 
f ( x)  exp    
 2  2    
x  ( , )
los parámetros de la distribución son  y :

   xf ( x)dx


 2   x 2 f ( x)dx

y además


f ( x )dx  1
Si se fija una media muestral x , interesa
hallar el área a la izquierda de esa media, es
decir:
 1   1  x    2 
P ( x  x)   f ( x)dx   exp 2    dx

 2  
se resuelve efectuando un cambio de variables
x
z

x    z
dx  dz
entonces
P ( x  x )  F ( x )  ( z )
z2
1  
( z) 
2 
e 2
dz
esta integral depende de un solo dato, z, siendo que además los datos con z medio en cero están
tabulados.

A1  ( z)  F ( x )  P( x  x )

354
Anexo II.
Notas sobre Microsoft Excel
Microsoft Excel es un producto comercial sobre el cual hay abundante literatura respecto a su uso y
posibilidades, forma parte de un “paquete” o familia de software denominado MICROSOFT OFFICE XXXX
donde XXXX en general es el año de edición (actualmente están en uso las versiones 2003, similar a
todas las anteriores (denominadas 97 y 2000) y las versiones “mejoradas” a partir de 2007 que fueron
evolucionando con cambios en el manejo de las ventanas y los menúes en 2007, en las funciones en 2010
y con un uso basado en trabajo en la red en la 2013. El más notable de los cambios, es que graba los
archivos en formato .xlsx para hacerlos compatibles con los sistemas operativos más avanzados, aunque
mantiene la posibilidad de trabajar y leer el modo 97/2003.

A su vez, cada vez que se edita y pone en el mercado un paquete de MS Office se ofrecen en “versiones”
que se diferencian por la cantidad de elementos que constituyen el paquete. Así hay versiones de muy
pocos componentes hasta profesionales.

El lanzamiento Microsoft Office 2013 tiene las siguientes versiones:

http://trial.trymicrosoftoffice.com/trialspain/product.aspx?sku=3082915&culture=es-ES
Y más información en
http://www.microsoftstore.com/store/mslatam/es_MX/cat/ThemeID.30633200/categoryID.61249000?td
uid=7e0840559f5b29cb0e76e51ac314b297

355
Anexo III.
Notas sobre Apache OpenOffice/LibreOffice “Calc”
Dentro de la corriente denominada “Software libre” o “fuente abierta” se ha desarrollado una familia
de utilidades semejante en aspecto y funcionalidad a Microsoft Office, pero que puede ser obtenido a
muy bajo o nulo costo.

La “suite” original (OpenOffice.org) fue desarrollada en forma abierta por Sun. Como esa empresa pasó
a ser controlada por Oracle, los usuarios y desarrolladores, temiendo que dejara de ser un desarrollo
abierto, clonaron la versión y generaron un producto denominado “LibreOffice”. Hoy coexisten ambos
productos.

Apache OpenOffice

Desde hace un tiempo la denominación oficial dejó de ser OpenOffice.org (OOo) y


pasó a ser Apache OpenOffice (AOO). El sitio oficial es http://www.openoffice.org/es/
y en él se puede descargar el programa, obtener ayuda, participar en el
desarrollo y en foros.

En la web de la asignatura se incluye la versión 4.0 (julio 2013)

El paquete incluye los siguientes componentes:


 Writer un procesador de textos.
 Calc una hoja de cálculo con todas las herramientas necesarias para calcular, analizar y
presentar datos en informes numéricos o en gráficos
 Impress para crear presentaciones multimedia.
 Base permite la manipulación de bases de datos. Crear y modificar tablas, formularios,
consultas e informes.
 Math permite crear ecuaciones matemáticas con una interfaz de usuario o escribiendo las
fórmulas directamente en el editor de ecuaciones
 Draw para generar desde diagramas hasta ilustaciones 3D dinámicas

Es compatible con Office. Una de las características más importantes es la capacidad de Calc de abrir
hojas de cálculo Excel de cualquier versión, ya sea de aquellas con extensión xls o su familia como las
más recientes de Office 2007 para Windows Intel o Mac Intel xlsx o docx en el caso de Writer.

También es capaz de “imprimir” archivos pdf.

En la página oficial del producto se ofrecen comparaciones sobre compatibilidad y prestaciones de este
producto, por ejemplo, los siguientes cuadros:

Atributo OpenOffice.org Microsoft Office


Soporte de plataformas
 Linux

 Windows  Windows

 Macintosh OSX  Macintosh OSX

 Solaris

Requisitos de Sistema Minimo de espacio 320 MB Mas de espacio 610MB


y memoria 128Mb RAM y memoria de 256Mb RAM
Soporte a estandares OASIS OpenDocument
Contratos restrictivos Ninguno Restricciones en licencia y dependencia
tecnologica.

356
Atributo OpenOffice.org Microsoft Office
Procesador de Textos
Hoja de Calculo
Presentador
Cliente de correo Integración con Thunderbird o Outlook.
Base de datos Solo disponible en edición Profesional
Diseño y Gráfico
Calendario y contactos
Editor de formulas Matemáticas
Efectos 3D Soporte completo Soporte parcial
Exportación a PDF
Soporte a XForms

LibreOffice

LibreOffice llega, en agosto 2013, a la versión 4.1. Salvo detalles menores, es exactamente igual a AOO.

Está distribuido por The Document Foundation, y se puede descargar gratis desde el sitio:
http://es.libreoffice.org/descarga/

Tiene complementos pero, ambos productos, siguen sin resolver análisis de sensibilidad en Solver (AOO)
o Solucionador (LO)

357
Anexo IV.
Alfabeto Griego

  Alfa   Ny
  Beta   Xi
  Gamma   Omnicron
  Delta   Pi
  Epsilon   Ro
  Zeta   Sigma
  Eta   Tau
  Theta   Ipsilon
  Iota   Fi
  Kappa   Xi
  Lambda   Psi
  My   Omega

358
Anexo V. Tabla de Z

Distribución Normal Estándar


Obtenida con Excel [=DISTR.NORM.ESTAND(n)+0,5]
0,00 0,01 0,02 0,03 0,04 0,05 0,06 0,07 0,08 0,09
0,0 0,0000 0,0040 0,0080 0,0120 0,0160 0,0199 0,0239 0,0279 0,0319 0,0359
0,1 0,0398 0,0438 0,0478 0,0517 0,0557 0,0596 0,0636 0,0675 0,0714 0,0753
0,2 0,0793 0,0832 0,0871 0,0910 0,0948 0,0987 0,1026 0,1064 0,1103 0,1141
0,3 0,1179 0,1217 0,1255 0,1293 0,1331 0,1368 0,1406 0,1443 0,1480 0,1517
0,4 0,1554 0,1591 0,1628 0,1664 0,1700 0,1736 0,1772 0,1808 0,1844 0,1879
0,5 0,1915 0,1950 0,1985 0,2019 0,2054 0,2088 0,2123 0,2157 0,2190 0,2224
0,6 0,2257 0,2291 0,2324 0,2357 0,2389 0,2422 0,2454 0,2486 0,2517 0,2549
0,7 0,2580 0,2611 0,2642 0,2673 0,2704 0,2734 0,2764 0,2794 0,2823 0,2852
0,8 0,2881 0,2910 0,2939 0,2967 0,2995 0,3023 0,3051 0,3078 0,3106 0,3133
0,9 0,3159 0,3186 0,3212 0,3238 0,3264 0,3289 0,3315 0,3340 0,3365 0,3389
1,0 0,3413 0,3438 0,3461 0,3485 0,3508 0,3531 0,3554 0,3577 0,3599 0,3621
1,1 0,3643 0,3665 0,3686 0,3708 0,3729 0,3749 0,3770 0,3790 0,3810 0,3830
1,2 0,3849 0,3869 0,3888 0,3907 0,3925 0,3944 0,3962 0,3980 0,3997 0,4015
1,3 0,4032 0,4049 0,4066 0,4082 0,4099 0,4115 0,4131 0,4147 0,4162 0,4177
1,4 0,4192 0,4207 0,4222 0,4236 0,4251 0,4265 0,4279 0,4292 0,4306 0,4319
1,5 0,4332 0,4345 0,4357 0,4370 0,4382 0,4394 0,4406 0,4418 0,4429 0,4441
1,6 0,4452 0,4463 0,4474 0,4484 0,4495 0,4505 0,4515 0,4525 0,4535 0,4545
1,7 0,4554 0,4564 0,4573 0,4582 0,4591 0,4599 0,4608 0,4616 0,4625 0,4633
1,8 0,4641 0,4649 0,4656 0,4664 0,4671 0,4678 0,4686 0,4693 0,4699 0,4706
1,9 0,4713 0,4719 0,4726 0,4732 0,4738 0,4744 0,4750 0,4756 0,4761 0,4767
2,0 0,4772 0,4778 0,4783 0,4788 0,4793 0,4798 0,4803 0,4808 0,4812 0,4817
2,1 0,4821 0,4826 0,4830 0,4834 0,4838 0,4842 0,4846 0,4850 0,4854 0,4857
2,2 0,4861 0,4864 0,4868 0,4871 0,4875 0,4878 0,4881 0,4884 0,4887 0,4890
2,3 0,4893 0,4896 0,4898 0,4901 0,4904 0,4906 0,4909 0,4911 0,4913 0,4916
2,4 0,4918 0,4920 0,4922 0,4925 0,4927 0,4929 0,4931 0,4932 0,4934 0,4936
2,5 0,4938 0,4940 0,4941 0,4943 0,4945 0,4946 0,4948 0,4949 0,4951 0,4952
2,6 0,4953 0,4955 0,4956 0,4957 0,4959 0,4960 0,4961 0,4962 0,4963 0,4964
2,7 0,4965 0,4966 0,4967 0,4968 0,4969 0,4970 0,4971 0,4972 0,4973 0,4974
2,8 0,4974 0,4975 0,4976 0,4977 0,4977 0,4978 0,4979 0,4979 0,4980 0,4981
2,9 0,4981 0,4982 0,4982 0,4983 0,4984 0,4984 0,4985 0,4985 0,4986 0,4986
3,0 0,4987 0,4987 0,4987 0,4988 0,4988 0,4989 0,4989 0,4989 0,4990 0,4990

Notas:
Esta tabla brinda el valor del área bajo la curva normal estándar entre la media (z=0) y el valor de z
elegido. Por ejemplo para z = 1,01, el área correspondiente es 0,3438.
Si se desea el área total debe sumarse el valor del área correspondiente a los z negativos. En el caso
anterior sería 0,3438 + 0,5 = 0,8438

2
z
e 2
f ( z;0,1) 
2 2
corresponde al área de una curva

359
Anexo VI. El ruido de un trueno
[Cuento. Texto completo]

Ray Bradbury
El anuncio en la pared parecía temblar bajo una móvil película de agua caliente. Eckels sintió que parpadeaba, y el
anuncio ardió en la momentánea oscuridad:
SAFARI EN EL TIEMPO S.A.
SAFARIS A CUALQUIER AÑO DEL PASADO.
USTED ELIGE EL ANIMAL NOSOTROS LO LLEVAMOS ALLÍ, USTED LO MATA.

Una flema tibia se le formó en la garganta a Eckels. Tragó y duro. Sintió un temblor en los brazos y bajó los ojos y vio
saliva empujando hacia abajo la flema. Los músculos que sus manos apretaban el fusil. Había otros cuatro hombres
alrededor de la boca formaron una sonrisa, mientras alzaba en esa máquina. Travis, el jefe del safari, su asistente,
lentamente la mano, y la mano se movió con un cheque de Lesperance, y dos otros cazadores, Billings y Kramer. Se
diez mil dólares ante el hombre del escritorio. miraron unos a otros y los años llamearon alrededor.
-¿Este safari garantiza que yo regrese vivo? -¿Estos fusiles pueden matar a un dinosaurio de un tiro? -se
-No garantizamos nada -dijo el oficial-, excepto los oyó decir a Eckels.
dinosaurios. -Se volvió-. Este es el señor Travis, su guía safari -Si da usted en el sitio preciso -dijo Travis por la radio del
en el pasado. Él le dirá a qué debe disparar y en qué casco-. Algunos dinosaurios tienen dos cerebros, uno en la
momento. Si usted desobedece sus instrucciones, hay una cabeza, otro en la columna espinal. No les tiraremos a éstos,
multa de otros diez mil dólares, además de una posible y tendremos más probabilidades. Aciérteles con los dos
acción del gobierno, a la vuelta. primeros tiros a los ojos, si puede, cegándolo, y luego dispare
Eckels miró en el otro extremo de la vasta oficina la confusa al cerebro.
maraña zumbante de cables y cajas de acero, y el aura ya La máquina aulló. El tiempo era una película que corría hacia
anaranjada, ya plateada, ya azul. Era como el sonido de una atrás. Pasaron soles, y luego diez millones de lunas.
gigantesca hoguera donde ardía el tiempo, todos los años y -Dios santo -dijo Eckels-. Los cazadores de todos los tiempos
todos los calendarios de pergamino, todas las horas apiladas nos envidiarían hoy. África al lado de esto parece Illinois.
en llamas. El roce de una mano, y este fuego se volvería El sol se detuvo en el cielo.
maravillosamente, y en un instante, sobre sí mismo. Eckels La niebla que había envuelto la Máquina se desvaneció. Se
recordó las palabras de los anuncios en la carta. De las brasas encontraban en los viejos tiempos, tiempos muy viejos en
y cenizas, del polvo y los carbones, como doradas verdad, tres cazadores y dos jefes de safari con sus metálicos
salamandras, saltarán los viejos años, los verdes años; rosas rifles azules en las rodillas.
endulzarán el aire, las canas se volverán negro ébano, las -Cristo no ha nacido aún -dijo Travis-. Moisés no ha subido a
arrugas desaparecerán. Todo regresará volando a la semilla, la montaña a hablar con Dios. Las pirámides están todavía en
huirá de la muerte, retornará a sus principios; los soles se la tierra, esperando. Recuerde que Alejandro, Julio César,
elevarán en los cielos occidentales y se pondrán en orientes Napoleón, Hitler... no han existido.
gloriosos, las lunas se devorarán al revés a sí mismas, todas Los hombres asintieron con movimientos de cabeza.
las cosas se meterán unas en otras como cajas chinas, los -Eso -señaló el señor Travis- es la jungla de sesenta millones
conejos entrarán en los sombreros, todo volverá a la fresca dos mil cincuenta y cinco años antes del presidente Keith.
muerte, la muerte en la semilla, la muerte verde, al tiempo Mostró un sendero de metal que se perdía en la vegetación
anterior al comienzo. Bastará el roce de una mano, el más salvaje, sobre pantanos humeantes, entre palmeras y
leve roce de una mano. helechos gigantescos.
-¡Infierno y condenación! -murmuró Eckels con la luz de la -Y eso -dijo- es el Sendero, instalado por Safari en el Tiempo
máquina en el rostro delgado-. Una verdadera máquina del para su provecho. Flota a diez centímetros del suelo. No toca
tiempo. -Sacudió la cabeza-. Lo hace pensar a uno. Si la ni siquiera una brizna, una flor o un árbol. Es de un metal
elección hubiera ido mal ayer, yo quizá estaría aquí huyendo antigravitatorio. El propósito del Sendero es impedir que
de los resultados. Gracias a Dios ganó Keith. Será un buen toque usted este mundo del pasado de algún modo. No se
presidente. salga del Sendero. Repito. No se salga de él. ¡Por ningún
-Sí -dijo el hombre detrás del escritorio-. Tenemos suerte. Si motivo! Si se cae del Sendero hay una multa. Y no tire contra
Deutscher hubiese ganado, tendríamos la peor de las ningún animal que nosotros no aprobemos.
dictaduras. Es el antitodo, militarista, anticristo, -¿Por qué? -preguntó Eckels. Estaban en la antigua selva.
antihumano, antintelectual. La gente nos llamó, ya sabe Unos pájaros lejanos gritaban en el viento, y había un olor de
usted, bromeando, pero no enteramente. Decían que si alquitrán y viejo mar salado, hierbas húmedas y flores de
Deutscher era presidente, querían ir a vivir a 1492. Por color de sangre.
supuesto, no nos ocupamos de organizar evasiones, sino -No queremos cambiar el futuro. Este mundo del pasado no
safaris. De todos modos, el presidente es Keith. Ahora su es el nuestro. Al gobierno no le gusta que estemos aquí.
única preocupación es... Tenemos que dar mucho dinero para conservar nuestras
Eckels terminó la frase: franquicias. Una máquina del tiempo es un asunto delicado.
-Matar mi dinosaurio. Podemos matar inadvertidamente un animal importante, un
-Un Tyrannosaurus rex. El lagarto del Trueno, el más terrible pajarito, un coleóptero, aun una flor, destruyendo así un
monstruo de la historia. Firme este permiso. Si le pasa algo, eslabón importante en la evolución de las especies.
no somos responsables. Estos dinosaurios son voraces. -No me parece muy claro -dijo Eckels.
Eckels enrojeció, enojado. -Muy bien -continuó Travis-, digamos que accidentalmente
-¿Trata de asustarme? matamos aquí un ratón. Eso significa destruir las futuras
-Francamente, sí. No queremos que vaya nadie que sienta familias de este individuo, ¿entiende?
pánico al primer tiro. El año pasado murieron seis jefes de -Entiendo.
safari y una docena de cazadores. Vamos a darle a usted la -¡Y todas las familias de las familias de ese individuo! Con
más extraordinaria emoción que un cazador pueda sólo un pisotón aniquila usted primero uno, luego una
pretender. Lo enviaremos sesenta millones de años atrás docena, luego mil, un millón, ¡un billón de posibles ratones!
para que disfrute de la mayor y más emocionante cacería de -Bueno, ¿y eso qué? -inquirió Eckels.
todos los tiempos. Su cheque está todavía aquí. Rómpalo. -¿Eso qué? -gruñó suavemente Travis-. ¿Qué pasa con los
El señor Eckels miró el cheque largo rato. Se le retorcían los zorros que necesitan esos ratones para sobrevivir? Por falta
dedos. de diez ratones muere un zorro. Por falta de diez zorros, un
-Buena suerte -dijo el hombre detrás del mostrador-. El señor león muere de hambre. Por falta de un león, especies
Travis está a su disposición. enteras de insectos, buitres, infinitos billones de formas de
Cruzaron el salón silenciosamente, llevando los fusiles, hacia vida son arrojadas al caos y la destrucción. Al final todo se
la Máquina, hacia el metal plateado y la luz rugiente. reduce a esto: cincuenta y nueve millones de años más tarde,
Primero un día y luego una noche y luego un día y luego una un hombre de las cavernas, uno de la única docena que hay
noche, y luego día-noche-día-noche-día. Una semana, un en todo el mundo, sale a cazar un jabalí o un tigre para
mes, un año, ¡una década! 2055, 2019, ¡1999! ¡1957! alimentarse. Pero usted, amigo, ha aplastado con el pie a
¡Desaparecieron! La Máquina rugió. Se pusieron los cascos de todos los tigres de esa zona al haber pisado un ratón. Así que
oxígeno y probaron los intercomunicadores. Eckels se el hombre de las cavernas se muere de hambre. Y el hombre
balanceaba en el asiento almohadillado, con el rostro pálido de las cavernas, no lo olvide, no es un hombre que pueda

360
desperdiciarse, ¡no! Es toda una futura nación. De él nacerán - Lesperance miró su reloj de pulsera.
diez hijos. De ellos nacerán cien hijos, y así hasta llegar a -Adelante. Nos cruzaremos con él dentro de sesenta
nuestros días. Destruya usted a este hombre, y destruye segundos. Busque la pintura roja, por Cristo. No dispare hasta
usted una raza, un pueblo, toda una historia viviente. Es que se lo digamos. Quédese en el Sendero. ¡Quédese en el
como asesinar a uno de los nietos de Adán. El pie que ha Sendero!
puesto usted sobre el ratón desencadenará así un terremoto, Se adelantaron en el viento de la mañana.
y sus efectos sacudirán nuestra tierra y nuestros destinos a -Qué raro -murmuró Eckels-. Allá delante, a sesenta millones
través del tiempo, hasta sus raíces. Con la muerte de ese de años, ha pasado el día de elección. Keith es presidente.
hombre de las cavernas, un billón de otros hombres no Todos celebran. Y aquí, ellos no existen aún. Las cosas que
saldrán nunca de la matriz. Quizás Roma no se alce nunca nos preocuparon durante meses, toda una vida, no nacieron
sobre las siete colinas. Quizá Europa sea para siempre un ni fueron pensadas aún.
bosque oscuro, y sólo crezca Asia saludable y prolífica. Pise -¡Levanten el seguro, todos! -ordenó Travis-. Usted dispare
usted un ratón y aplastará las pirámides. Pise un ratón y primero, Eckels. Luego, Billings. Luego, Kramer.
dejará su huella, como un abismo en la eternidad. La reina -He cazado tigres, jabalíes, búfalos, elefantes, pero esto,
Isabel no nacerá nunca, Washington no cruzará el Delaware, Jesús, esto es caza -comentó Eckels -. Tiemblo como un niño.
nunca habrá un país llamado Estados Unidos. Tenga cuidado. - Ah -dijo Travis.
No se salga del Sendero. ¡Nunca pise afuera! -Todos se detuvieron.
-Ya veo -dijo Eckels-. Ni siquiera debemos pisar la hierba. Travis alzó una mano.
-Correcto. Al aplastar ciertas plantas quizá sólo sumemos -Ahí adelante -susurró-. En la niebla. Ahí está Su Alteza Real.
factores infinitesimales. Pero un pequeño error aquí se La jungla era ancha y llena de gorjeos, crujidos, murmullos y
multiplicará en sesenta millones de años hasta alcanzar suspiros. De pronto todo cesó, como si alguien hubiese
proporciones extraordinarias. Por supuesto, quizá nuestra cerrado una puerta.
teoría esté equivocada. Quizá nosotros no podamos cambiar Silencio.
el tiempo. O tal vez sólo pueda cambiarse de modos muy El ruido de un trueno.
sutiles. Quizá un ratón muerto aquí provoque un De la niebla, a cien metros de distancia, salió el
desequilibrio entre los insectos de allá, una desproporción en Tyrannosaurus rex.
la población más tarde, una mala cosecha luego, una -Jesucristo -murmuró Eckels.
depresión, hambres colectivas, y, finalmente, un cambio en -¡Chist!
la conducta social de alejados países. O aun algo mucho más Venía a grandes trancos, sobre patas aceitadas y elásticas. Se
sutil. Quizá sólo un suave aliento, un murmullo, un cabello, alzaba diez metros por encima de la mitad de los árboles, un
polen en el aire, un cambio tan, tan leve que uno podría gran dios del mal, apretando las delicadas garras de relojero
notarlo sólo mirando de muy cerca. ¿Quién lo sabe? ¿Quién contra el oleoso pecho de reptil. Cada pata inferior era un
puede decir realmente que lo sabe? No nosotros. Nuestra pistón, quinientos kilos de huesos blancos, hundidos en
teoría no es más que una hipótesis. Pero mientras no gruesas cuerdas de músculos, encerrados en una vaina de piel
sepamos con seguridad si nuestros viajes por el tiempo centelleante y áspera, como la cota de malla de un guerrero
pueden terminar en un gran estruendo o en un imperceptible terrible. Cada muslo era una tonelada de carne, marfil y
crujido, tenemos que tener mucho cuidado. Esta máquina, acero. Y de la gran caja de aire del torso colgaban los dos
este sendero, nuestros cuerpos y nuestras ropas han sido brazos delicados, brazos con manos que podían alzar y
esterilizados, como usted sabe, antes del viaje. Llevamos examinar a los hombres como juguetes, mientras el cuello de
estos cascos de oxígeno para no introducir nuestras bacterias serpiente se retorcía sobre sí mismo. Y la cabeza, una
en una antigua atmósfera. tonelada de piedra esculpida que se alzaba fácilmente hacia
-¿Cómo sabemos qué animales podemos matar? el cielo, En la boca entreabierta asomaba una cerca de
-Están marcados con pintura roja -dijo Travis-. Hoy, antes de dientes como dagas. Los ojos giraban en las órbitas, ojos
nuestro viaje, enviamos aquí a Lesperance con la Máquina. vacíos, que nada expresaban, excepto hambre. Cerraba la
Vino a esta Era particular y siguió a ciertos animales. boca en una mueca de muerte. Corría, y los huesos de la
-¿Para estudiarlos? pelvis hacían a un lado árboles y arbustos, y los pies se
-Exactamente -dijo Travis-. Los rastreó a lo largo de toda su hundían en la tierra dejando huellas de quince centímetros
existencia, observando cuáles vivían mucho tiempo. Muy de profundidad. Corría como si diese unos deslizantes pasos
pocos. Cuántas veces se acoplaban. Pocas. La vida es breve. de baile, demasiado erecto y en equilibrio para sus diez
Cuando encontraba alguno que iba a morir aplastado por un toneladas. Entró fatigadamente en el área de sol, y sus
árbol u otro que se ahogaba en un pozo de alquitrán, anotaba hermosas manos de reptil tantearon el aire.
la hora exacta, el minuto y el segundo, y le arrojaba una -¡Dios mío! -Eckels torció la boca-. Puede incorporarse y
bomba de pintura que le manchaba de rojo el costado. No alcanzar la luna.
podemos equivocarnos. Luego midió nuestra llegada al -¡Chist! -Travis sacudió bruscamente la cabeza-. Todavía no
pasado de modo que no nos encontremos con el monstruo nos vio.
más de dos minutos antes de aquella muerte. De este modo, -No es posible matarlo. -Eckels emitió con serenidad este
sólo matamos animales sin futuro, que nunca volverán a veredicto, como si fuese indiscutible. Había visto la evidencia
acoplarse. ¿Comprende qué cuidadosos somos? y ésta era su razonada opinión. El arma en sus manos parecía
-Pero si ustedes vinieron esta mañana -dijo Eckels un rifle de aire comprimido-. Hemos sido unos locos. Esto es
ansiosamente-, debían haberse encontrado con nosotros, imposible.
nuestro safari. ¿Qué ocurrió? ¿Tuvimos éxito? ¿Salimos -¡Cállese! -siseó Travis.
todos... vivos? -Una pesadilla.
Travis y Lesperance se miraron. -Dé media vuelta -ordenó Travis-. Vaya tranquilamente hasta
-Eso hubiese sido una paradoja -habló Lesperance-. El tiempo la máquina. Le devolveremos la mitad del dinero.
no permite esas confusiones..., un hombre que se encuentra -No imaginé que sería tan grande -dijo Eckels-. Calculé mal.
consigo mismo. Cuando va a ocurrir algo parecido, el tiempo Eso es todo. Y ahora quiero irme.
se hace a un lado. Como un avión que cae en un pozo de -¡Nos vio!
aire. ¿Sintió usted ese salto de la Máquina, poco antes de -¡Ahí está la pintura roja en el pecho!
nuestra llegada? Estábamos cruzándonos con nosotros mismos El Lagarto del Trueno se incorporó. Su armadura brilló como
que volvíamos al futuro. No vimos nada. No hay modo de mil monedas verdes. Las monedas, embarradas, humeaban.
saber si esta expedición fue un éxito, si cazamos nuestro En el barro se movían diminutos insectos, de modo que todo
monstruo, o si todos nosotros, y usted, señor Eckels, salimos el cuerpo parecía retorcerse y ondular, aun cuando el
con vida. monstruo mismo no se moviera. El monstruo resopló. Un
Eckels sonrió débilmente. hedor de carne cruda cruzó la jungla.
-Dejemos esto -dijo Travis con brusquedad-. ¡Todos de pie! -Sáquenme de aquí -pidió Eckels-. Nunca fue como esta vez.
Se prepararon a dejar la Máquina. La jungla era alta y la Siempre supe que saldría vivo. Tuve buenos guías, buenos
jungla era ancha y la jungla era todo el mundo para siempre safaris, y protección. Esta vez me he equivocado. Me he
y para siempre. Sonidos como música y sonidos como lonas encontrado con la horma de mi zapato, y lo admito. Esto es
voladoras llenaban el aire: los pterodáctilos que volaban con demasiado para mí.
cavernosas alas grises, murciélagos gigantescos nacidos del -No corra -dijo Lesperance-. Vuélvase. Ocúltese en la
delirio de una noche febril. Eckels, guardando el equilibrio Máquina. -Sí.
en el estrecho sendero, apuntó con su rifle, bromeando. Eckels parecía aturdido. Se miró los pies como si tratara de
-¡No haga eso! -dijo Travis.- ¡No apunte ni siquiera en broma, moverlos. Lanzó un gruñido de desesperanza.
maldita sea! Si se le dispara el arma... -¡Eckels!
Eckels enrojeció. Eckels dio unos pocos pasos, parpadeando, arrastrando los
- ¿Dónde está nuestro Tyrannosaurus? pies. -¡Por ahí no!

361
El monstruo, al advertir un movimiento, se lanzó hacia ¡Decenas de miles de dólares! Garantizamos que nadie
adelante con un grito terrible. En cuatro segundos cubrió dejaría el Sendero. Y él lo dejó. ¡Oh, condenado tonto!
cien metros. Los rifles se alzaron y llamearon. De la boca del Tendré que informar al gobierno. Pueden hasta quitarnos la
monstruo salió un torbellino que los envolvió con un olor de licencia. ¡Dios sabe lo que le ha hecho al tiempo, a la
barro y sangre vieja. El monstruo rugió con los dientes Historia!
brillantes al sol. -Cálmate. Sólo pisó un poco de barro.
Eckels, sin mirar atrás, caminó ciegamente hasta el borde del -¿Cómo podemos saberlo? -gritó Travis-. ¡No sabemos nada!
Sendero, con el rifle que le colgaba de los brazos. Salió del ¡Es un condenado misterio! ¡Fuera de aquí, Eckels!
Sendero, y caminó, y caminó por la jungla. Los pies se le Eckels buscó en su chaqueta.
hundieron en un musgo verde. Lo llevaban las piernas, y se -Pagaré cualquier cosa. ¡Cien mil dólares!
sintió solo y alejado de lo que ocurría atrás. Travis miró enojado la libreta de cheques de Eckels y
Los rifles dispararon otra vez. El ruido se perdió en chillidos y escupió.
truenos. La gran palanca de la cola del reptil se alzó -Vaya allí. El monstruo está junto al Sendero. Métale los
sacudiéndose. Los árboles estallaron en nubes de hojas y brazos hasta los codos en la boca, y vuelva.
ramas. El monstruo retorció sus manos de joyero y las bajó -¡Eso no tiene sentido!
como para acariciar a los hombres, para partirlos en dos, -El monstruo está muerto, cobarde bastardo. ¡Las balas! No
aplastarlos como cerezas, meterlos entre los dientes y en la podemos dejar aquí las balas. No pertenecen al pasado,
rugiente garganta. Sus ojos de canto rodado bajaron a la pueden cambiar algo. Tome mi cuchillo. ¡Extráigalas!
altura de los hombres, que vieron sus propias imágenes. La jungla estaba viva otra vez, con los viejos temblores y los
Dispararon sus armas contra las pestañas metálicas y los gritos de los pájaros. Eckels se volvió lentamente a mirar al
brillantes iris negros. primitivo vaciadero de basura, la montaña de pesadillas y
Como un ídolo de piedra, como el desprendimiento de una terror. Luego de un rato, como un sonámbulo, se fue,
montaña, el Tyrannosaurus cayó. Con un trueno, se abrazó a arrastrando los pies.
unos árboles, los arrastró en su caída. Torció y quebró el Regresó temblando cinco minutos más tarde, con los brazos
Sendero de Metal. Los hombres retrocedieron alejándose. El empapados y rojos hasta los codos. Extendió las manos. En
cuerpo golpeó el suelo, diez toneladas de carne fría y piedra. cada una había un montón de balas. Luego cayó. Se quedó
Los rifles dispararon. El monstruo azotó el aire con su cola allí, en el suelo, sin moverse.
acorazada, retorció sus mandíbulas de serpiente, y ya no se -No había por qué obligarlo a eso - dijo Lesperance.
movió. Una fuente de sangre le brotó de la garganta. En -¿No? Es demasiado pronto para saberlo. -Travis tocó con el
alguna parte, adentro, estalló un saco de fluidos. Unas pie el cuerpo inmóvil.
bocanadas nauseabundas empaparon a los cazadores. Los -Vivirá. La próxima vez no buscará cazas como ésta. Muy
hombres se quedaron mirándolo, rojos y resplandecientes. bien. -Le hizo una fatigada seña con el pulgar a Lesperance-.
El trueno se apagó. Enciende. Volvamos a casa. 1492. 1776. 1812.
La jungla estaba en silencio. Luego de la tormenta, una gran Se limpiaron las caras y manos. Se cambiaron las camisas y
paz. Luego de la pesadilla, la mañana. pantalones. Eckels se había incorporado y se paseaba sin
Billings y Kramer se sentaron en el sendero y vomitaron. hablar. Travis lo miró furiosamente durante diez minutos.
Travis y Lesperance, de pie, sosteniendo aún los rifles -No me mire -gritó Eckels-. No hice nada.
humeantes, juraban continuamente. -¿Quién puede decirlo?
En la Máquina del Tiempo, cara abajo, yacía Eckels, -Salí del sendero, eso es todo; traje un poco de barro en los
estremeciéndose. Había encontrado el camino de vuelta al zapatos. ¿Qué quiere que haga? ¿Que me arrodille y rece?
Sendero y había subido a la Máquina. Travis se acercó, lanzó -Quizá lo necesitemos. Se lo advierto, Eckels. Todavía puedo
una ojeada a Eckels, sacó unos trozos de algodón de una caja matarlo. Tengo listo el fusil.
metálica y volvió junto a los otros, sentados en el Sendero. -Soy inocente. ¡No he hecho nada!
-Límpiense. 1999, 2000, 2055.
Limpiaron la sangre de los cascos. El monstruo yacía como La máquina se detuvo.
una loma de carne sólida. En su interior uno podía oír los -Afuera -dijo Travis.
suspiros y murmullos a medida que morían las más lejanas de El cuarto estaba como lo habían dejado. Pero no de modo tan
las cámaras, y los órganos dejaban de funcionar, y los preciso. El mismo hombre estaba sentado detrás del mismo
líquidos corrían un último instante de un receptáculo a una escritorio. Pero no exactamente el mismo hombre detrás del
cavidad, a una glándula, y todo se cerraba para siempre. Era mismo escritorio.
como estar junto a una locomotora estropeada o una Travis miró alrededor con rapidez.
excavadora de vapor en el momento en que se abren las -¿Todo bien aquí? -estalló.
válvulas o se las cierra herméticamente. Los huesos crujían. -Muy bien. ¡Bienvenidos!
La propia carne, perdido el equilibrio, cayó como peso Travis no se sintió tranquilo. Parecía estudiar hasta los
muerto sobre los delicados antebrazos, quebrándolos. átomos del aire, el modo como entraba la luz del sol por la
Otro crujido. Allá arriba, la gigantesca rama de un árbol se única ventana alta.
rompió y cayó. Golpeó a la bestia muerta como algo final. -Muy bien, Eckels, puede salir. No vuelva nunca.
-Ahí está- Lesperance miró su reloj-. Justo a tiempo. Ese es Eckels no se movió.
el árbol gigantesco que originalmente debía caer y matar al -¿No me ha oído? -dijo Travis-. ¿Qué mira?
animal. Eckels olía el aire, y había algo en el aire, una sustancia
Miró a los dos cazadores: ¿Quieren la fotografía trofeo? química tan sutil, tan leve, que sólo el débil grito de sus
-¿Qué? sentidos subliminales le advertía que estaba allí. Los colores
-No podemos llevar un trofeo al futuro. El cuerpo tiene que blanco, gris, azul, anaranjado, de las paredes, del mobiliario,
quedarse aquí donde hubiese muerto originalmente, de modo del cielo más allá de la ventana, eran... eran... Y había una
que los insectos, los pájaros y las bacterias puedan vivir de sensación. Se estremeció. Le temblaron las manos. Se quedó
él, como estaba previsto. Todo debe mantener su equilibrio. oliendo aquel elemento raro con todos los poros del cuerpo.
Dejamos el cuerpo. Pero podemos llevar una foto con ustedes En alguna parte alguien debía de estar tocando uno de esos
al lado. silbatos que sólo pueden oír los perros. Su cuerpo respondió
Los dos hombres trataron de pensar, pero al fin sacudieron la con un grito silencioso. Más allá de este cuarto, más allá de
cabeza. Caminaron a lo largo del Sendero de metal. Se esta pared, más allá de este hombre que no era exactamente
dejaron caer de modo cansino en los almohadones de la el mismo hombre detrás del mismo escritorio..., se extendía
Máquina. Miraron otra vez el monstruo caído, el monte todo un mundo de calles y gente. Qué suerte de mundo era
paralizado, donde unos raros pájaros reptiles y unos insectos ahora, no se podía saber. Podía sentirlos cómo se movían,
dorados trabajaban ya en la humeante armadura. más allá de los muros, casi, como piezas de ajedrez que
Un sonido en el piso de la Máquina del Tiempo los endureció. arrastraban un viento seco...
Eckels estaba allí, temblando. Pero había algo más inmediato. El anuncio pintado en la
-Lo siento -dijo al fin. pared de la oficina, el mismo anuncio que había leído aquel
-¡Levántese! -gritó Travis. mismo día al entrar allí por vez primera.
Eckels se levantó. De algún modo el anuncio había cambiado.
-¡Vaya por ese sendero, solo! -agregó Travis, apuntando con SEFARI EN EL TIEMPO. S. A. SEFARIS A KUALKUIER AÑO DEL
el rifle-. Usted no volverá a la Máquina. ¡Lo dejaremos aquí! PASADO USTE NOMBRA EL ANIMAL NOSOTROS LO LLEBAMOS
Lesperance tomó a Travis por el brazo. -Espera... AYI. USTE LO MATA.
-¡No te metas en esto! -Travis se sacudió apartando la mano-. Eckels sintió que caía en una silla. Tanteó insensatamente el
Este hijo de perra casi nos mata. Pero eso no es bastante. grueso barro de sus botas. Sacó un trozo, temblando.
Diablo, no. ¡Sus zapatos! ¡Míralos! Salió del Sendero. ¡Dios -No, no puede ser. Algo tan pequeño. No puede ser. ¡No!
mío, estamos arruinados Cristo sabe qué multa nos pondrán.

362
Hundida en el barro, brillante, verde, y dorada, y negra,
había una mariposa, muy hermosa y muy muerta.
-¡No algo tan pequeño! ¡No una mariposa! -gritó Eckels.
Cayó al suelo una cosa exquisita, una cosa pequeña que podía
destruir todos los equilibrios, derribando primero la línea de
un pequeño dominó, y luego de un gran dominó, y luego de
un gigantesco dominó, a lo largo de los años, a través del
tiempo. La mente de Eckels giró sobre si misma. La mariposa
no podía cambiar las cosas. Matar una mariposa no podía ser
tan importante. ¿Podía?
Tenía el rostro helado. Preguntó, temblándole la boca:
- ¿Quién... quién ganó la elección presidencial ayer?
El hombre detrás del mostrador se rió.
-¿Se burla de mí? Lo sabe muy bien. ¡Deutscher, por
supuesto! No ese condenado debilucho de Keith. Tenemos un
hombre fuerte ahora, un hombre de agallas. ¡Sí, señor! -El
oficial calló-. ¿Qué pasa?
Eckels gimió. Cayó de rodillas. Recogió la mariposa dorada
con dedos temblorosos.
-¿No podríamos -se preguntó a sí mismo, le preguntó al
mundo, a los oficiales, a la Máquina,- no podríamos llevarla
allá, no podríamos hacerla vivir otra vez? ¿No podríamos
empezar de nuevo? ¿No podríamos...?
No se movió. Con los ojos cerrados, esperó estremeciéndose.
Oyó que Travis gritaba; oyó que Travis preparaba el rifle,
alzaba el seguro, y apuntaba.
El ruido de un trueno.

363
Índices
Contenido
Introducción: Investigación Operativa ............................................................................................ 5
Capítulo 1 Sistemas, Modelos y Problemas .................................................................................... 7
1.1 Sistema....................................................................................................................................... 8
1.2 Modelos ...................................................................................................................................... 9
1.2.1 Pasos para formular un modelo: .................................................................................... 10
1.2.2 Definición del Problema ................................................................................................. 10
1.3 Desarrollo de un modelo matemático y recolección de datos. .......................................... 11
1.3.1 Variables de decisión y función objetivo ...................................................................... 11
1.3.2 Restricciones .................................................................................................................... 12
1.3.3 Resolución del modelo matemático. ............................................................................. 12
1.3.4 Comprobación de la validez de la solución hallada. .................................................... 13
1.4 Usos de los modelos ................................................................................................................ 13
1.5 Técnicas para construir modelos matemáticos .................................................................... 13
1.5.1 Primera etapa: Identificación de las variables de decisión ........................................ 14
1.5.2 Segunda etapa: Identificación de datos del problema ................................................ 14
1.5.3 Tercera etapa: Formulación de la función objetivo. ................................................... 14
1.5.4 Cuarta etapa: Identificación de las restricciones. ....................................................... 15
1.5.5 Formulación matemática del problema: ....................................................................... 16
1.6 Problemas de redes ................................................................................................................ 16
1.6.1 Identificación de las variables de decisión ................................................................... 17
1.6.2 Identificación de restricciones. ..................................................................................... 18
1.7 Problemas con variables binarias. ......................................................................................... 19
Capítulo 2 Programación Lineal. Modelo gráfico ......................................................................... 21
2.1 ¿Cómo hallar una solución? Una aproximación heurística. ................................................. 22
2.2 Gráfica de restricciones ......................................................................................................... 23
2.3 Casos especiales ...................................................................................................................... 26
2.4 Análisis de sensibilidad gráfico .............................................................................................. 27
2.4.1 Análisis de sensibilidad de los coeficientes del funcional ........................................... 27
2.4.2 Análisis de sensibilidad para los valores del lado derecho .......................................... 29
2.4.3 Análisis paramétrico de los valores del lado derecho.................................................. 32
2.5 Programación entera: Una aproximación a la solución gráfica .......................................... 35
Capítulo 3 Simplex Dantzig ............................................................................................................. 43
3.1 Fundamentos ........................................................................................................................... 44
3.2 Conversión a la forma normalizada....................................................................................... 45
3.2.1 Desigualdades Tipo I ....................................................................................................... 45
3.2.2 Desigualdades Tipo II ...................................................................................................... 45
3.2.3 Adecuación del funcional ............................................................................................... 46
3.2.4 Conversión del algoritmo en forma geométrica a forma algebraica .......................... 46
3.2.5 Enfoque formal................................................................................................................ 50
3.3 Modelo general ........................................................................................................................ 50
3.4 Compendio de la Terminología utilizada .............................................................................. 51
3.5 Desarrollo del método Simplex – Dantzig ............................................................................. 51
3.5.1 Algunas consideraciones a tener en cuenta: ................................................................ 56
3.6 Interpretación de los modelos ............................................................................................... 57
3.6.1 Análisis de Sensibilidad o Análisis Post Óptimo ............................................................ 59
3.6.2 Límites de variación de Coeficientes del Funcional..................................................... 61
3.7 Dualidad ................................................................................................................................... 61
3.7.1 Pasos para convertir un Primal en Dual ........................................................................ 61
Capítulo 4 Resolución de modelos de programación lineal en PC. ......................................... 65
4.1 WinQSB ..................................................................................................................................... 66
4.1.1 Cambios en un parámetro (Análisis de sensibilidad).................................................... 73
4.1.2 Cambios en un parámetro fuera del rango de variabilidad (Análisis paramétrico) .. 74
4.2 LINGO – LINDO ......................................................................................................................... 75

365
4.2.1 Complemento sobre LINDO ............................................................................................. 79
4.2.2 Algunas consideraciones sobre LINGO ........................................................................... 81
4.3 Planillas de Cálculo Excel y Calc ........................................................................................... 83
4.3.1 EXCEL ................................................................................................................................ 83
4.3.2 CALC ................................................................................................................................. 83
4.3.3 SOLVER ............................................................................................................................. 83
Capítulo 5 Redes simples. Modelos de transporte. ................................................................... 101
5.1 Terminología, aplicación y métodos a emplear ................................................................. 102
5.2 Requisitos para el problema ................................................................................................ 102
5.2.1 Problema ejemplo:........................................................................................................ 104
5.3 Método heurístico de la esquina noroeste .......................................................................... 104
5.3.1 Método para la evaluación de celdas vacías. ............................................................. 105
5.3.2 Segunda etapa: reevaluación de celdas vacías .......................................................... 106
5.3.3 Tercera etapa: reevaluación de celdas vacías en la nueva tabla ............................. 107
5.4 Otros métodos heurísticos de resolución. .......................................................................... 107
5.4.1 Método de multiplicadores ........................................................................................... 107
5.4.2 Método de Vogel ............................................................................................................ 109
5.5 El problema de Best Foods resuelto con WinQSB............................................................... 110
5.5.1 Carga de datos ............................................................................................................... 110
5.5.2 Presentación detallada de resultados. ........................................................................ 112
5.5.3 Análisis particulares ...................................................................................................... 114
5.6 El problema de Transporte resuelto con Excel o Calc. ..................................................... 116
5.6.1 Procedimiento ............................................................................................................... 117
Capítulo 6. Redes sencillas. Modelo binario. ............................................................................ 121
6.1 Terminología ......................................................................................................................... 122
6.2 Problema de Maximización .................................................................................................. 124
6.3 Resolución de los casos con WinQSB ................................................................................... 126
6.4 Problema de Asignación utilizando hoja de cálculo .......................................................... 127
Capítulo 7. Redes complejas. Transporte: modelos de flujo.................................................. 131
7.1 Redes con nodos intermedios. (Transporte con trasbordo) .............................................. 132
7.2 Problemas no equilibrados ................................................................................................... 136
7.2.1 Costos de fabricación diferenciales ............................................................................. 137
7.3 Transporte con capacidad limitada ..................................................................................... 138
7.4 Límites ................................................................................................................................... 141
Capítulo 8. Redes con secuencias: El problema del viajante de comercio ........................... 143
8.1 Métodos heurísticos .............................................................................................................. 145
8.1.1 Heurística de mejoramiento......................................................................................... 147
Capítulo 9. Toma de decisiones ................................................................................................... 153
9.1 Problemas clásicos de decisión............................................................................................ 154
9.2 Modelos para tomas de decisiones en función de la información .................................... 154
9.3 Modelos para condiciones de incertidumbre ...................................................................... 154
9.3.1 Criterio de Wald (maximin), (pesimista)..................................................................... 154
9.3.2 Criterio Maximax, (optimista) ...................................................................................... 155
9.3.3 Criterio de Hurwicz ....................................................................................................... 155
9.3.4 Criterio de Savage, (minimax) ..................................................................................... 155
9.4 Modelos para condiciones de riesgo .................................................................................... 156
9.4.1 Predicción de los estados de la naturaleza. ............................................................... 157
9.4.2 Resolución del caso con WinQSB .................................................................................. 157
9.4.3 Toma de decisiones bajo riesgo con variable continua. ............................................ 159
9.5 Optimización con demanda aleatoria ................................................................................. 161
Capítulo 10. Investigación de mercados y decisiones multinivel ........................................... 165
10.1 Análisis de Mercado. ........................................................................................................... 166
10.1.1 Valor esperado de la información de muestra. ........................................................ 166
DECISIÓN ↓ .............................................................................................................................. 166

366
10.1.2 Diseño de la Investigación de Mercados .................................................................... 166
10.1.3 Desarrollo en WinQSB.................................................................................................. 168
10.2 Cuánto pagar por la investigación de mercado ................................................................ 169
10.3 Árboles de decisión. Toma de decisiones multinivel. ..................................................... 170
PROBABILIDAD ...................................................................................................................... 170
10.3.1 Desarrollo en WinQSB: ................................................................................................ 171
10.3.2 Resolución con WinQSB:.............................................................................................. 173
10.3.3 Árboles Multinivel ........................................................................................................ 174
10.3.4 Resolución con WinQSB:.............................................................................................. 178
10.4 Teoría de utilidades ............................................................................................................ 179
10.4.1 Toma de decisión usando la tabla de utilidades ...................................................... 181
10.4.2 Funciones de utilidad .................................................................................................. 181
10.4.3 Sensibilidad .................................................................................................................. 182
10.4.4 Análisis de sensibilidad para las probabilidades condicionales............................... 184
Capítulo 11. Teoría de Juegos ..................................................................................................... 187
11.1 Historia de la teoría de juegos .......................................................................................... 189
11.2 Definiciones ......................................................................................................................... 189
11.3 Juegos Rectangulares ......................................................................................................... 190
11.4 Hipótesis de Von Neumann................................................................................................. 190
11.5 Juego de información completa o estrictamente determinado ..................................... 191
11.6 Juego no estrictamente determinado ............................................................................... 192
11.6.1 Cómo elige el Jugador I el vector x ........................................................................... 193
11.6.2 Planteo para el Jugador II .......................................................................................... 193
11.6.3 Resolución en WinQSB ................................................................................................. 194
11.7 Estrategia mixta .................................................................................................................. 195
11.8 Teoría de Juegos y programación lineal ........................................................................... 195
Capítulo 12. Teoría de Juegos. Juegos no cooperativos.......................................................... 199
12.1 El dilema de los prisioneros ............................................................................................... 202
12.2 Duopolios y Teoría de Juegos............................................................................................. 203
12.3 Modelo Halcón Paloma ....................................................................................................... 203
12.4 Modelo de la Guerra de los Sexos...................................................................................... 205
Capítulo 13. Modelos de Inventario............................................................................................. 207
13.1 Demanda (D). ...................................................................................................................... 208
13.2 Faltantes .............................................................................................................................. 208
13.3 Tiempo de espera (L).......................................................................................................... 208
13.3.1 Estrategias de pedido.................................................................................................. 208
13.4 Cantidad a ingresar al inventario (Q). .............................................................................. 208
13.5 Punto de Reposición (R) ..................................................................................................... 208
13.6 Costos ................................................................................................................................... 208
13.6.1 Costo de trámite de compra. (K) ............................................................................... 208
13.6.2 Costo unitario de la compra (C) ................................................................................. 209
13.6.3 Costo de tener un inventario (H). .............................................................................. 209
13.6.4 Costo de faltante (B). ................................................................................................. 209
13.7 Modelos determinísticos ..................................................................................................... 209
13.7.1 Modelo de cantidad de pedidos económicos (EOQ).................................................. 209
13.7.2 Modelo de cantidad de pdos económicos con descuento por cantidad.................. 216
13.7.3 Modelo de Inventario de cantidad de pedidos de producción................................. 218
13.8 Modelos con Demanda Probabilística ................................................................................ 223
13.8.1 Modelo de revisión continua....................................................................................... 223
13.8.2 Modelo de revisión periódica. .................................................................................... 226
13.8.3 Resumen ....................................................................................................................... 230
13.9 Inventarios “Justo a Tiempo” (JIT) ................................................................................... 230
13.10 Problema de demanda probabilística en un período simple. (Problema del canillita)
...................................................................................................................................................... 231
Capítulo 14. Técnicas de Administración de proyectos ........................................................... 233

367
14.1 CPM....................................................................................................................................... 234
14.1.1 Identificación de las tareas individuales ................................................................... 234
14.1.2 Tiempos estimados para cada tarea .......................................................................... 235
14.1.3 Creación de tabla de precedencia ............................................................................. 235
14.1.4 Diagrama de red .......................................................................................................... 236
14.1.5 Cálculo de tiempo de terminación del proyecto ...................................................... 241
14.1.6 Actividades críticas ..................................................................................................... 243
14.1.7 Resolución empleando WinQSB .................................................................................. 246
14.2 Proyectos con técnicas de choque .................................................................................... 249
14.2.1 Desarrollo del modelo de choque .............................................................................. 250
14.3 PERT ..................................................................................................................................... 255
14.3.1 Estimación de tiempos ................................................................................................ 255
14.3.2 Cálculo de tiempo de terminación usando te ........................................................... 256
14.3.3 Probabilidad del tiempo de terminación .................................................................. 257
14.4 Ejemplo integrador ............................................................................................................. 261
14.4.1 Análisis Administrativo................................................................................................ 262
Capítulo 15. Utilización de Software en Administración de Proyectos. .............................. 267
15.1 Microsoft Project ................................................................................................................ 268
15.1.1 Principios Generales.................................................................................................... 268
15.1.2 PERT.............................................................................................................................. 276
15.2 OpenProj .............................................................................................................................. 280
15.2.1 Introducción ................................................................................................................. 280
15.2.2 Abrir el programa ........................................................................................................ 280
15.2.3 Nuevo proyecto............................................................................................................ 281
15.2.4 Carga de Tareas ........................................................................................................... 282
15.2.5 Conversión de unidades de tiempo de trabajo ......................................................... 285
15.2.6 Recursos de las tareas................................................................................................. 286
15.2.7 Otras vistas .................................................................................................................. 288
15.2.8 Administración del proyecto ...................................................................................... 294
15.2.9 Introducción de costos ................................................................................................ 295
15.2.10 Información y avance proyecto ................................................................................ 296
15.3 Otros programas disponibles .............................................................................................. 298
15.3.1 ORGANIZER ................................................................................................................... 298
15.3.2 PLANNER: ..................................................................................................................... 299
Capítulo 16. Modelos de colas .................................................................................................... 3010
16.1 Características de un sistema de colas ............................................................................. 302
16.1.1 Población de clientes .................................................................................................. 303
16.1.2 Proceso de llegada ...................................................................................................... 303
16.1.3 Proceso de colas .......................................................................................................... 304
16.1.4 Proceso de servicio...................................................................................................... 304
16.1.5 Modelos de colas.......................................................................................................... 305
16.2 Indicadores del rendimiento en sistemas de colas .......................................................... 305
16.3 Sistemas de un canal, una línea con llegada exponencial y proceso de servicios
exponencial (M/M/1)................................................................................................................... 306
16.4 Servidores en una sola cola, de canal múltiple, llegada exponencial y proceso de
servicio exponencial (M/M/c)..................................................................................................... 309
16.4.1 Interpretación de indicadores .................................................................................... 311
16.5 Análisis económico .............................................................................................................. 312
16.5.1 Reconocimiento del modelo ....................................................................................... 312
16.5.2 Costos asociados .......................................................................................................... 313
16.6 Sistemas con población finita (M/M/c//K) ....................................................................... 314
16.7 Sistemas con capacidad de espera limitada (M/M/c/L) .................................................. 316
16.8 Otros modelos ..................................................................................................................... 318
16.9 Resumen y Notación ........................................................................................................... 319
16.10 Apéndice al Capítulo 16 ................................................................................................... 320

368
Capítulo 17. Simulación .............................................................................................................. 3211
17.1 Simulación en computadora............................................................................................... 323
17.1.1 Simulando “la raspadita” en Excel ............................................................................ 325
17.1.2 Uso de Visual Basic para construir macros en Excel ................................................ 326
17.1.3 Segundo Ejemplo:........................................................................................................ 328
17.1.4 Código completo en VBA............................................................................................. 331
17.1.5 Nota sobre Excel.......................................................................................................... 332
17.2 Metodología ......................................................................................................................... 332
17.2.1 Clasificación del sistema ............................................................................................ 332
17.2.2 Identificación de componentes .................................................................................. 333
17.2.3 Componentes generales .............................................................................................. 333
17.3 Generación de números aleatorios.................................................................................... 333
17.3.1 Generación de números aleatorios con distribución uniforme ............................... 334
17.3.2 Generación de una serie continua distinta de la uniforme..................................... 334
17.4 Simulando colas con WinQSB ............................................................................................. 336
Capítulo 18. Estudios de Casos: .................................................................................................. 339
18.1 Caso A) Inventarios ............................................................................................................. 340
18.1.1 Condiciones de simulación ......................................................................................... 340
18.2 Caso B) Rentabilidad Proyectada ...................................................................................... 342
18.2.1 Desarrollo y búsqueda de datos: ................................................................................ 343
18.2.2 Generación de valores aleatorios en cada variable ................................................. 343
Anexos.............................................................................................................................................. 347
Anexo I Repaso muy breve de nociones elementales de estadística. ................................... 348
Anexo II. Notas sobre Microsoft Excel........................................................................................ 355
Anexo III. Notas sobre Apache OpenOffice/LibreOffice “Calc” .............................................. 356
Anexo IV. Alfabeto Griego............................................................................................................. 358
Anexo V. Tabla de Z ....................................................................................................................... 359
Anexo VI. El ruido de un trueno .................................................................................................. 360

VERSION 10.0.0 14 AGOSTO 2013

369

Potrebbero piacerti anche