martes, 21 de octubre de 2008

Calendario actualizado!

Hola a todos ...

Viendo como han avanzado las clases durante este inicio de semestre, he actualizado el calendario de actividades del mismo. En este nuevo calendario podran observar los cambios que explico a continuacion:
  • Se aplazo el primer parcial: Anteriormente el parcial estaba tan adelantado motivado por mi ausencia durante el mes de diciembre, pero como no quiero desmotivarlos con un examen apresurado he resuelto algo para el mes de diciembre.

  • El segundo parcial fue sustituido por un trabajo: La idea es que en sustitucion de un segundo parcial, hagan un trabajo de investigacion, en grupos pequenos. Igual dictare las clases de diciembre (que estan resaltadas con verde en el calendario) a traves del Blog. La fecha de entrega del trabajo esta en el calendario y es inaplazable. El metodo de entrega lo discutiremos luego.

Entre otras cosas, pueden ver que el primer parcial esta bastante cargado en contenido. Les comento que todo ese contenido se relaciona, pero sigue siendo bastante. Les recomiendo no dejar para el final el estudio de los temas. No acumulen.

Saludos

PD: Disculpen la acentuacion pero estoy escribiendo en un teclado bien particular.

miércoles, 15 de octubre de 2008

Ejemplo prototipo: Fábrica de artículos de vidrio

Enunciado:

Una fábrica de artefactos de vidrio elabora varios tipos de productos en sus tres plantas. La planta UNO elabora todo los elementos de aluminio, la planta DOS elabora todo lo de madera, mientras la planta TRES elabora el vidrio y ensambla los artefactos.

Debido a una reducción en las ganancias, la gerencia ha decidido reorganizar la linea de producción de la fábrica. Se descontinuaran varios productos no rentables y se dejara libre una parte de la capacidad de producción para emprender la fabricación de dos nuevos productos que tienen ventas potenciales grandes:
  1. Producto UNO: una puerta de vidrio de 8 pies, con marco de aluminio.
  2. Producto DOS: una ventana corrediza con marco de madera de 4 x 6 pies.
Para elaborar estos productos, se requiere que cada planta dedica parte de su capacidad de producción para elaborar los elementos que requieren y ensamblarlos. Por la constitución de cada producto se puede ver que:
  • El producto UNO requiere capacidad productiva de la planta UNO y TRES, nada de la planta DOS porque no tiene madera.
  • El producto DOS requiere capacidad productiva de la planta DOS y TRES, nada de la planta UNO porque no tiene aluminio.
Como el departamento de ventas considera que se pueden vender todos las unidades elaboradas de estos dos productos, la gerencia quiere producir todas las cantidades que se puedan. Pero como se ve, estos dos productos, UNO y DOS, compiten por la capacidad productiva de la planta TRES, por lo cual la gerencia no tiene claro cual es la combinación mas rentable.

Asi que el problema queda definido asi:

Determinar que tasas de producción deben tener los dos productos con el fin de maximizar las utilidades totales, sujetas a las restricciones impuestas por las capacidades de producción limitadas disponibles en las tres plantas. Entiendase como tasa de producción como el número de lotes que se producen a la semana. Se permite cualquier combinación de los productos, incluso NO fabricar uno de los productos y elaborar todo lo que sea posible del otro.

Ahora, con el problema definido, faltan datos para poder modelar el problema (EJ: cuanto es la ganancia por lote del producto UNO y DOS). Suponiendo que se hizo este levantamiento se llegó a las siguientes informaciones:
  1. Número de horas disponibles semanales en cada planta para la producción de estos nuevos productos: Se determinó que la planta UNO tiene disponibles cuatro (4) horas, la planta DOS tiene disponible doce (12) horas, miemtras que la planta TRES tiene dieciocho horas (18) disponibles.
  2. Número de horas de frabicación que emplea cada lote producido de cada artículo nuevo en cada una de las plantas: El producto UNO consume una (1) hora semanal en la planta UNO y tres (3) horas en la planta TRES. El producto DOS, en cambio, consume dos (2) horas en la planta DOS, y dos (2) horas en la planta TRES.
  3. La ganancia (venta - costos) por lote: Se estimó que cada lote del porducto UNO dejará una ganancia de 3000 $ mientras que cada lote del producto DOS dejará 5000 $.
Formulación:

Usualmente los problemas teoricos/académicos de IO siempre tendrán bien definido el problema y los datos, pero esto está muy lejos de parecerse al mundo real. Recordando los 5 pasos que usualmente se aplican en IO, en los "problemas de libro" no podrán desarrollar habilidades para ejecutar el paso 1 (Definición del problema y recolección de datos).

Sabiendo eso, pasemos directamente a ejecutar el paso 2: Formulación del problema de forma matemática. Para eso deben tener claro primero que los problemas de optimización modelados matemáticamente tienen estas características:
  1. Función objetivo: representa el comportamiento de lo que queremos optimizar cuando cambian las variables del problema. En este caso, la función objetivo deberia decirnos como se comportan las ganancias cuando cambiamos la cantidad de lotes producidos de los productos nuevos.
  2. Variables de decisión: representan los elementos que afectan a la función objetivo, y por ende hay que conseguir los valores de estas variables que la optimizen. Se les llaman variables "de decisión" porque es la gerencia de las empresas las que usualmente "deciden" el valor de estas variables. El uso de las IO es hacer que esos valores sean óptimos y no meras intuiciones. En el problema prototipo, hay dos variables de decisión, que representan la cantidad de lotes semanales a elaborar del producto UNO y DOS.
  3. Restricciones: representan límites a los que están sujetos los valores que pueden tomar las variables de decisión. Usualmente son más de una y estan representadoas como un sistemas de inecuaciones. En el ejemplo actual, la cantidad de lotes de los nuevos artículos a producir están limitados por la capacidad productiva de las plantas.
Sabiendo esto, podemos decir que la formulación matemática del problema es:

MAX F(x,y) = 3000 x + 5000 y
sujeto a:
(1) x <= 4
(2) 2 y <= 12
(3) 3 x + 2 y <= 18


Se ve, que la función objetivo representan las ganancias semanales de la fábrica por la producción de los nuevos artículos, ya que como se vió en la recolección de datos, la fábrica ganará 3000 $ por cada lote del producto UNO ( 3000 x) y 5000 $ por cada lote del producto DOS (5000 y). Entonces es obvio que las variables de decisión son la cantidad de lotes a producir semanalmente de ambos productos ( x, y).

Ahora, la producción de estos artículos esta limitada por la capacidad productiva de las plantas, y de alli vinieron las restricciones. Veamos:
  1. Como el producto UNO consume una (1) hora semanal en la planta UNO por cada lote, y en la planta UNO solo hay cuatro (4) horas disponibles, tenemos que la cantidad de lotes del producto UNO no puede exceder de cuatro (x <= 4).
  2. Como el producto DOS consume dos (2) horas semanales en la planta DOS por cada lote, y en la planta DOS solo hay doce (12) horas disponibles, tenemos que la cantidad de lotes del producto DOS no puede exceder la cantidad de horas disponibles ( 2 y <= 12)
  3. Como en la planta TRES se presenta la competencia por los recursos, tenemos que ver que la combinación (usualmente representado como una suma) no exceda las dieciocho horas (18) disponibles. Tomando en cuenta que el producto UNO consume tres (3) horas semanales en la planta TRES y el producto DOS consume dos (2) horas semanales en la planta TRES, tenemos que esta porducción combinada no puede exceder las dieciocho horas disponibles ( 3 x + 2 y <= 18)
Ahora, recuerden que siempre hay ciertas restricciones que son conceptuales o que usualmente la persona que tiene el problema no las considera por ser muy obvias. En el caso actual ¿se podrá producir -1 lote del producto UNO o DOS? Lo que si sabemos es que la gerencia esta dispuesta a NO producir alguno de los productos (variable de decisión igual a cero), con lo que tenemos estas dos nuevas restricciones:

x >= 0 y >= 0

NOTA: problema prototipo basado en el libro "Introducción a la Investigación de Operaciones". Octava edición. Hiller-Lieberman.

martes, 14 de octubre de 2008

Mañana 15 de Octubre de 2008 no habrá clases

Hola a todos ...

Les comunico que mañana miercoles 15 de Octubre de 2008 se me es imposible asistir a la clase de investigación de operaciones en la UCAB por razones laborales. Disculpen las molestias causadas.

Además, por favor comuniquen a sus compañeros de clases que quizá no lean este mensaje.

Con respecto a lo que haremos, hoy en la noche igualmente creare un entrada con el contenido de la clase que tocaría para mañana, asi que por favor no dejen de leerla para asi avanzar mas rápido el dia viernes y así no atrasarnos en el cronograma (que ya llevamos un dia de atraso).

Trataré hoy mismo, sino mañana, de montar el problema prototipo que vimos en clase, asi como otros dos para que ejerciten un poco.

Saludos y gracias por su entendimiento

martes, 7 de octubre de 2008

Introducción a la Programación Lineal (PL)


La programación lineal (PL) es "el procedimiento mediante el cual, se obtienen los máximos y mínimos de un problema expresado como una función lineal, cuya solución esta restrigida por un sistema de inecuaciones lineales".

En otras palabras, son procedimientos de optimización de funciones matemáticas lineales. Ahora, la idea es que esas "funciones matemáticas lineales" representen un problema de la vida real, como las compras de materiales para la contrucción de una casa. Para esto tenemos que hacer la "formulación" del problema en un modelo matemático, y si este modelo resulta ser una función lineal, puede ser resuleto con algoritmos de PL.

NOTA: recuerda que una función lineas es aquella cuyas variables tienen exponente uno (1) . Ej: f(x,y,z) = x + 2y + 2z + 3


¿Qué NO es programación lineal?

Muchos principiantes confunden la palabra "programación" con muchas otras actividades (como codificación) asi que aquí listo algunos de estos errores de interpretación que he apreciado.

  • Codificación o implementación de software. En Investigación de Operaciones, cuando se refiere a "Programación Lineal", debe interpretarse como "Planificación Lineal". Esto se debe a que la naturaleza de la mayoria de los problemas de PL son de toma de desiciones para planificar actividades.
  • Resolución secuencial de un problema. El termino "Lineal" se refiere a la forma de la función matemática a optimizar, no a una secuencia de pasos o tareas.
  • Modelación matemática de un problema. La modelación matematica (formulación) es un paso previo a la resolución de problemas de PL. Recuerda que es posible que la modelación matemática del problema te de una función matemática NO lineal.
¿Cuándo un problema es de Programación Lineal?

Puedes guiarte con estas dos sencillas caractrísticas:
  1. El objetivo del estudio es maximizar o minimizar (optimizar)
  2. Si el modelo matemático que representa el problema solo tiene expresiones lineales
Si un modelo matemático cumple con estas dos características, es un candidato para ser optimizado mediante algoritmos de PL. Ahora, es posible que el modelo matematico sea de PL, pero por su particularidad, exista otro tipo de técnicas para su resolución (EJ: Modelo de Asignación, que es un caso particular de PL)

Forma general de un problema de Programación Lineal (PL)

Los problemas de optimización siempre tienen algo que maximizar o minimizar (función objetivo) y un grupo de limitantes (restricciones) que enmarcan la optimización. Esto es necesario, porque si no se limita el problema, no habrá soluciones factibles.

Ejemplo: Si defines como un problema de PL tus compras del mercado, quieres minimizar tus gastos y no pones ninguna limitación, la respuesta al problema sera que no compres NADA, ya que asi tu gasto será mínimo ... pero ¿eso tiene sentido? Obviamente no, ya que si vas al mercado es porque tienes unas necesidades mínimas que cubrir, como por ejemplo, tu dieta diaria debe tener como mínimo 2000 calorias. Esta ultima parte del problema, es una restricción.

Asi que un problema de PL esta expresado como:
  1. Función objetivo. Expresión matemática lineal a optimizar.
  2. Restricciones. Conjunto de inecuaciones lineales que limitan la optimización.
Supuestos de Programación Lineal (PL)

Las "suposiciones" deben ser entendidas por la persona que trabaje sobre un problema de PL, ya que son estas la que definen formalmente a un problema de este tipo. Si alguno de estos supuestos no tienen sentido en el problema a solucionar, no puede ser resuelto por PL, o va a requerir un post-procesamiento y análisis para que el resultado tenga sentido.

NOTA: En mi opinión, la idea de usar IO es obtener resultados deterministicos. Así que debe ser meta de todo investigador de operaciones, tratar de evitar situaciones que requieran interpretaciones adicionales, mientras las circuntacias lo permitan (El mundo real es bien complicado, y modelarlo matemáticamente es muy difícil).

Vamos a enumerar aquí los tres (3) supuestos mas importantes de la programación lineal.

  1. Suposición de proporción. La contribución al objetivo de cualquier variable de desición "X" es proporcional al valor de "X".
  2. Suposición de adición. La contribución al objetivo de cualquier variable de desición "X" es independiente a la contribución de cualquier otra variable "Y".
  3. Suposición de divisibilidad. Los valores numéricos de las variable de desición deben tener sentido incluso con valores fraccionados (Ej: X = 2,3).
NOTA: Hay más suposiciones, pero estas son las tres más resaltantes en mi opinión.

Calendario Octubre - Febrero 2008


La asignatura Investigación de Operaciones I inicia a los estudiantes en metodologías fundamentales de esta ciencia, específicamente: Modelos de Colas, Programación Lineal, Redes y Teoría de Decisiones.

Para comenzar, se estudian los modelos de Programación Lineal, desde el planteamiento general de los problemas, pasando por la solución gráfica y algebraica, hasta el Método Simplex en todas sus variantes (Tabular, Revisado y Simplex Dual). Se estudia el concepto de Dualidad y su aplicación en el Análisis de Sensibilidad. Luego se continúa con modelos derivados de problemas de Programación Lineal, pero con metodologías propias como: Transporte, Trasbordo y Asignación.

Luego se toman los conceptos fundamentales de los problemas de líneas de espera (colas) analizando los conceptos fundamentales y, en particular, los modelos de colas de Poisson en diversas situaciones.

Se estudia la Teoría de Grafos (Redes), en donde se aplican sus conceptos a problemas como: árboles de expansión mínima, ruta más corta y flujo máximo. Se estudian, además, las metodologías de Ruta Crítica (CPM) y PERT, haciendo hincapié en los estudios de costos y valoración de las redes PERT/CPM. Y finalmente, se analiza la Teoría de Decisiones con base en los criterios de decisión y los árboles de decisión.

OBJETIVOS:
  • Formular, analizar y resolver problemas de: Colas, Redes de Grafos, Programación Lineal, Transporte, Asignación, y Teoría de Decisiones, dentro de los conceptos y metodologías de Investigación de Operaciones.
  • Plantear y resolver problemas de colas mediante el uso de los modelos de Poisson con uno o más canales de servicio.
  • Dibujar redes de grafos y aplicar algoritmos de solución de problemas de redes.
  • Formular y resolver, por diversos métodos, problemas sencillos de Programación Lineal
  • Realizar un análisis de sensibilidad en soluciones de problemas de Programación Lineal e inferir las posibles soluciones, ante cambios en las características iniciales de cada problema.
  • Formular y resolver problemas de Transporte, Trasbordo y Asignación.
  • Dibujar redes PERT y determinar el camino crítico de la red, así como valorar tiempos y costos de desarrollo de un proyecto, incluyendo posibles cambios en sus actividades y duraciones.
CONTENIDO PROGRAMÁTICO:
  1. Introducción. Origen de la Investigación de Operaciones. Modelo general de Investigación de Operaciones.
  2. Programación Lineal. Definición de problemas de Programación Lineal. Solución Gráfica. Método Simplex: álgebra y forma tabular. Rompimiento de empates en el Método Simplex. Otras formas del modelo:Minimización, Restricciones tipo igual y mayor e igual, Variables sin restricción de signo. Método Simplex Revisado
  3. Dualidad y Análisis de Sensibilidad. Problema Primal y Problema Dual. Análisis de sensibilidad. Método Dual Simplex.
  4. Modelo de Transporte. Conceptos. Avance de soluciones. El algoritmo de transporte. Soluciones degeneradas. Modelo de trasbordo. Problemas de Asignación.
  5. Líneas de Espera (colas). Características. Probabilidades de llegadas. Modelo de probabilidades estables. Modelos de Colas de Poisson: Un servidor y cola infinita, Un servidor y cola finita, Más de un servidor y cola infinita, Más de un servidor y cola finita, Modelos de colas con tiempo de servicio constante.
  6. Teoría de Grafos. Conceptos de grafos y redes. Problemas de grafos (Árboles de expansión mínima, Distancia más corta y Flujo máximo). PERT/CPM (Ruta Crítica, Valoración de redes y proyectos)
  7. Teoría de Decisiones. Fases del proceso de decisión. Decisiones bajo incertidumbre: Máximas, Maximin, Hurwicz, Laplace, Mínimas. Decisiones bajo riesgo:Valor económico esperado. Valor esperado información perfecta. Pérdida por oportunidad esperada. Árboles de decisión.
EVALUACIÓN:

Materia Teórico-Práctico que se evalúa con tres(3) exámenes parciales y posibles proyectos. Sin final y sin reparación.

BIBLIOGRAFÍA:

  • MÉTODOS CUANTITATIVOS PARA LOS NEGOCIOS.Render Barry, Stair Ralph, jr., Hanna Michael. Pearson/Prentice Hall.
  • INTRODUCCION A LA INVESTIGACION DE OPERACIONES. Frederick S. Hillier y Gerald J. Liberman. Mc Graw Hill.
  • INVESTIGACION DE OPERACIONES. Hamdy A. Taha. Prentice Hill.
  • METODOS Y MODELOS DE INVESTIGACION DE OPERACIONES. Juan Prawda. Limusa.
  • INTRODUCCION A LA INVESTIGACION DE OPERACIONES. Robert J. Thierauf. Limusa.
  • INVESTIGACION DE OPERACIONES. Serie Schaum. Richard Bronson. Mc Graw Hill.
  • FUNDAMENTOS DE INVESTIGACION DE OPERACIONES. Ackoff Sasieni. Limusa.
  • TEORIA DE DECISIONES POR MEDIO DE INVESTIGACION DE OPERACIONES. Robert J. Thierauf. Limusa.
  • PROGRAMACION LINEAL Y FLUJO DE REDES. Barraza. Limusa.

jueves, 2 de octubre de 2008

Introducción a la Investigación de Operaciones


A mi parecer, la forma de entender algo, es saber para que fue creado, su objetivo, su razón de ser. Asi que antes de hablar de investigación de operaciones, hablemos de que resuelve ...

¿Cuál es el problema?

Veamos como ejemplo una empresa que tiene departamentos para separar operaciones que consumen recuros. Cada departamento se fija un objetivo particular buscando alcanzar el objetivo general de la empresa. ¿Cuáles son los principales retos?

  1. ¿Cómo se distribuyen los recursos entre las operaciones de la empresa?
  2. ¿Cómo garatizar la disponibilidad de recursos para las operaciones de la empresa?
  3. ¿Cómo impacta a la distribución de los recursos la aparación o desaparición de una operación?
Pues, la mayorias de las organizaciones dejan todo a la suerte. Cuando algo pasa, improvisan una solución, sin poder saber si es buena o mala (y quizá nunca lo sepan). Sabiendo que en cualquier organización, las operaciones compiten por los recursos disponibles, cambian en el tiempo y son usualmente complejas, no se puede dejar a la "suerte" la toma de desiciones, ya que los resultados de cualquier desición toamda así suelen ser incuantificables.

¿Qué es la Investigación de Operaciones?

Una definición medio formal puede ser: "Es la aplicación del método científico para la exploración de los problemas operacionales de una organización". Es la aplicación de modelo matematicos para resolver situaciones reales y poder tomar desiciones con indicadores cuantitativos. Adiós a la intuición, bienvenida la razón.

Toda aplicación de esta rama de la ciencia, está enmarcada en cinco grandes pasos o fases:

  1. Definición del problema y recolección de datos relevantes. Lo primero que hay que hacer, es determinar que es lo que esta mal, y obtener datos cuantificables que permitan corroborar nuestra definición.
  2. Formulación del modelo que representa el problema. Elaborar un modelo matemático que simule la situación real que tiene el problema.
  3. Determinar una solución al problema basado en el modelo. Aplicar métodos matemáticos para solucionar el modelo formulado.
  4. Prueba y mejoramiento del modelo. Una vez solucionado, se debe retocar y perfeccionar el modelo, usualmente realizando cambios para observar y corregir los efectos de dichos cambios.
  5. Implementación. La solución puesta en marcha, que usualmente es una decisión tomada basada en los resultados. La solución se considera incompleta si no incluye mecanismos para su modificación y actualización según los nuevos estados de la situación solucionada.
Ahora, explicando un poco mas, la idea fundamental de las investigación de operaciones es determinar el problema a resolver, definiendo objetivos, restricciones y datos históricos. Con esto, se formula una función matemática (llamada función objetivo) que contiene las variables de desición, parametros y restricciones. Considere las variables de desición como la incognita a buscar, son las variables cuyos valores se deben determinar para mejorar el comportamiento de la función objetivo o modelo matemático.

Para conseguir los valores de las variables de desición, se debe aplicar algoritmos de Investigación de Operaciones (IO) para conseguir el mejor valor para ellas, buscando minimizar o maximizar la función objetivo.

Maximizar o minimizar se puede resumir en una palabra, y para mi es la palabra clave que resume el objetivo principal de las IO: OPTIMIZAR.