Cómo utilizar el Módulo Predictor en Crystal Ball para Promedio Móvil Simple y Suavizado Exponencial Simple

El software Oracle Crystal Ball (conocida comúnmente como Crystal Ball) es una aplicación compatible con hojas de cálculo para la elaboración de modelos predictivos, simulación y optimización. Una de sus características principales es que incorpora un módulo para el análisis de datos y proyecciones denominado Predictor sobre el cual presentaremos en este artículo algunos antecedentes básicos respecto a su funcionamiento.

Una vez instalado Crystal Ball se habilitará una nueva pestaña en el menú de navegación en la interfaz de Excel con nombre Crystall Ball donde se muestran las distintas herramientas que incorpora dicho programa. La siguiente imagen muestra un extracto de la visualización anterior con foco especial en el módulo Predictor en Crystal Ball según lo descrito anteriormente:

menu-crystal-ball-excel

A continuación para ilustrar respecto a la utilización del módulo Predictor para los métodos de Promedio Móvil Simple y Suavizado Exponencial Simple consideraremos los siguientes datos de demanda real de un producto tipo que utilizamos anteriormente en el artículo Error Porcentual Absoluto Medio (MAPE) en un Pronóstico de Demanda.

serie-de-tiempo-predictor

Luego seleccionamos el módulo Predictor.

predictor-crystal-ball

Crystal Ball reconoce automáticamente los datos de la serie de tiempo al menos que existan más de una serie en la hoja de cálculo, caso en el cual siempre estará disponible la opción de seleccionar los datos de origen. En nuestro ejemplo el rango de datos se encuentra entre la celda B2 y C14 de la planilla de cálculo. Las opciones y ajustes en este nivel están disponibles en el menu Datos de entrada.

seleccion-datos-predictor

A continuación seleccionamos Siguiente para pasar a las opciones de Atributos de datos. Por ejemplo se puede especificar que los datos están en meses (o según sea el caso), además de incluir información respecto a eventos relevantes en la serie de tiempo y el ajuste de valores atípicos u outliers. Para seguir avanzando se selecciona Siguiente.

atributo-de-datos-predictor

En el menú Métodos muestra los distintos métodos disponibles para su ejecución asociados a los datos de entrada. En este artículo arbitrariamente hemos decidido acotar el análisis a 2 métodos de series de tiempo ampliamente utilizados: Promedio Móvil Simple y Suavizado Exponencial Simple (conocido este último también como suavizamiento o alisamiento exponencial).

metodos-predictor

En el caso del método de medias móviles se ha considerado un promedio de 3 períodos o n=3 (sólo para fines ilustrativos, por cierto se puede seleccionar otro valor para n). Para ello se hace doble clic en el icono Promedio Móvil Simple:

promedio-movil-simple-predi

Para implementar la opción de n=3 se activa la casilla Parámetros de bloqueo y se ingresa Orden 3 y Aceptar.

parametros-de-bloqueo-3

Finalmente al seleccionar Siguiente se accede al menú de Opciones se puede seleccionar la medida de error que se desea utilizar para efectos de comparación de los métodos seleccionados en el paso anterior. En este caso hemos seleccionado el MAD o Desviación Absoluta Media no obstante también se puede seleccionar el Error Cuadrático Medio (RMSE) o Error de Porcentaje Medio Absoluto (MAPE).

opciones-predictor

Para terminar se debe Ejecutar (obtendremos una advertencia respecto a que existen muy pocos datos en la serie para generar proyecciones fiables. Si bien este comentario es válido, omitiremos su advertencia debido a que en esta instancia nos interesa mostrar cómo se utiliza la herramienta Predictor de Crystal Ball más que discutir lo adecuado que resulta realizar pronósticos con una baja densidad de datos).

resultados-predictor-cb

De los 2 métodos utilizados se obtiene que según el criterio del MAD (MAD=46,10) el que tiene mejor desempeño es Suavizado Exponencial Simple con alfa α=0,8439. El detalle de los pronósticos se puede consultar en el menú Ver y Tabla según se muestra a continuación:

ver-tabla-predictor
suavizamiento-crystal-ball

Observación: Si bien el cálculo del MAD no es explícito (sólo aparece el resultado de 46,10), se puede obtener fácilmente siguiendo el procedimiento que se muestra a continuación y que hemos abordado en el Blog anteriormente (cualquier diferencia menor se debe exclusivamente a los criterios de aproximación).

calculo-mad-crystal-ball

Rotaciones de Inventario y su impacto en el Costo de Almacenamiento Unitario

El término rotaciones de inventario (o renovaciones de inventario) corresponde a la inversa de los días de inventario, es decir, 1/días de inventario. Intuitivamente si sacamos una foto de la bodega y esperamos un tiempo y volvemos a sacar una foto, si no coincide ningún artículo en la bodega, entonces hubo una renovación completa de inventario. La importancia de la estimación de las rotaciones de inventario radica entre otros aspectos en la correcta estimación de los costos unitarios de almacenamiento, siendo éste uno de los componentes de los costos de inventario.

En efecto la fórmula que da cuenta de la estimación del costo de almacenamiento unitario (o holding cost unitario) esta dada por:

costo-de-almacenamiento-uni

Por ejemplo consideremos la siguiente información de un producto donde se ha estimado que los días de inventario son 2,10 meses (aproximadamente 63 días).

tabla-calculo-dias-inventar

Las rotaciones o renovaciones de inventario para el ejemplo anterior son:

formula-rotaciones-de-inven

De esta forma si para el ejemplo anterior el costo de almacenamiento anual es de un 24% de la valorización del producto, el costo unitario de almacenamiento sería aproximadamente de un 4,2% (24%,5,71).

El número de rotaciones de inventario depende del tipo de actividad o industria donde participa una empresa. La evidencia empírica sugiere que aquellas empresas que participan de mercados que se caracterizan por una relativa baja rotación del inventario (por ejemplo una joyería) compensan este fenómeno con un margen de comercialización más alto. Por otro lado empresas con una rotación de inventario relativamente alta pueden ser rentables aun con margenes de comercialización relativamente bajos:

rotaciones-inventario-retai

De acuerdo a lo anterior queda en evidencia la importancia de las rotaciones de inventario dentro de una competitividad de una empresa y la comparación del desempeño propio deberá estar orientado a los resultados de la competencia relevante en el sector industrial.

Qué es y cómo se calcula los Días de Inventario

Los días de inventario equivale al número de días que en promedio cada artículo o SKU (Stock-Keeping Unit) permanece en inventario. Su estimación resulta necesaria debido a que nos permite una correcta asignación de los costos de almacenamiento del inventario (los costos de almacenamiento o holding cost son parte de los costos de inventario). Mientras menos tiempo pasa cada artículo en inventario menor es el costo de almacenamiento. Por ejemplo si un producto tiene un costo de almacenamiento anual de un 24%, pero si sólo permaneció 4 meses en inventario, entonces ¿cuánto se pagó en costos de holding para este artículo?. La respuesta es un 8% (24%/4). Cabe recordar que típicamente el costo de almacenamiento de un artículo se representa como un porcentaje de su valorización (en el ejemplo anterior un 24%).

Formalmente los días de inventario se obtienen a través de la siguiente fórmula:

formula-dias-de-inventario

Por ejemplo, supongamos que en promedio tenemos 10 unidades en inventario. Además sabemos que vendemos en promedio 2 unidades por día, entonces ¿cuántos días cada unidad permanece en inventario?.

ejemplo-dias-de-inventario

Consideremos ahora otro ejemplo que establece un grado mayor de dificultad. A continuación se presenta la información relativa a un producto, detallando el inventario disponible al inicio de cada mes, la demanda enfrentada durante el mes y las ventas del mes.

tabla-dias-de-inventario

Cabe destacar que cuando el inventario al inicio del mes es suficiente para enfrentar los requerimientos de la demanda, entonces las ventas del mes son igual a la demanda. En caso contrario las ventas son igual al inventario. Adicionalmente con asterisco * se muestra aquellos mes donde se ha recepcionado inventario. El detallo del cálculo de los días de inventario se muestra a continuación:

tabla-calculo-dias-inventar

Notar que el inventario inicial promedio a inicio de cada mes es de 28,58 unidades. Por otra parte las venta promedio realizada mensualmente equivale a 13,58 unidades. En consecuencia los días de inventario son 2,10 meses (en promedio, a comienzo de mes, se dispone de 2,10 meses de inventario). Notar que el procedimiento anterior corresponde a una aproximación ya que el promedio calculado dependerá del día en que se revise el inventario.

Cálculo de los Beneficios Esperados de un Proyecto utilizando PERT

Un aspecto usual en la Gestión de Proyectos es enfrentar incentivos económicos por entregas anticipadas o a tiempo en base a la planificación preliminar y adicionalmente multas o cargos por entregas atrasadas o tardías. En este contexto el método PERT (Program Evaluation and Review Technique) permite incorporar de forma explícita la incertidumbre asociada a los tiempos requeridos para completar cada una de las actividades de un proyecto.

Beneficios Esperados de un Proyecto utilizando PERT

En el siguiente ejemplo se presenta la situación de un proyecto que consta de 9 actividades, cuyas relaciones de precedencia y tiempos en días (pesimista, más probable y optimista) se resumen a continuación:

tabla-proyecto-pert

Donde N\sim (\mu ,\sigma ^{2}) y los tiempos están en días.

Se desea completar el proyecto al cabo de 40 días a contar del inicio de las actividades. En caso de terminar antes de dicho plazo se estima que se accederá a un incentivo monetario de $200.000, no obstante, en caso contrario se asumirá una pérdida de $15.000 por cada día de atraso con un tope máximo de $30.000 (sobre los beneficios estimados). ¿Cuál es la ruta crítica del proyecto?, ¿Cuáles son los beneficios esperados del proyecto?.

Sabemos que el tiempo esperado para cada actividad se obtiene de Te=\frac{(a+4m+b)}{6}, por ejemplo, Te_{A}=\frac{(6+4*7+8)}{6}=7. Adicionalmente la varianza se obtiene de \sigma ^{2}=\frac{(b-a)^{2}}{36}, por ejemplo, \sigma ^{2}_{A}=\frac{(8-6)^{2}}{36}=\frac{1}{9}\cong 0,111. Con la ayuda de Excel resulta sencillo replicar el procedimiento para el resto de las actividades como se muestra a continuación:

pert-con-tiempo-esperado-y-

Considerando el Tiempo Esperado (Te) para cada una de las actividades generamos un diagrama de proyecto que nos permita identificar la Ruta Crítica y las holguras (en días) para cada una de las actividades. De esta forma se obtiene que A-D-F-H es la ruta crítica del proyecto con un tiempo esperado para completar éste de 39 días.

diagrama-proyecto-pert

Donde los valores con color rojo en la esquina superior izquierda de cada nodo representan el inicio más cercano; los valores con color azul de la esquina superior derecha el término más cercano; los valores de la esquina inferior izquierda con color naranjo el inicio más lejano y finalmente los números con color verde en la esquina inferior derecha representan el término más lejano.

A continuación se requiere estimar la probabilidad de completar el proyecto antes de 40 días, caso en el cual se accede a un beneficio de $200.000.

\mathbb{P}[T<40]=\mathbb{P}[Z_{\alpha }<\frac{40-39}{\sum {\sigma _{RC}}^{2}}]=\frac{40-39}{\sqrt{(\frac{1}{9})+(\frac{4}{9})+(\frac{16}{9})+4}}\cong0,6544

El beneficio esperado en este escenario sería $200.000*0,6544=$130.880.

Por otra parte la probabilidad de que el proyecto demore más de 41 días se obtiene de la siguiente forma:

\mathbb{P}[T>41]=\mathbb{P}[1-Z_{\alpha }<\frac{41-39}{\sum {\sigma _{RC}}^{2}}]=\frac{41-39}{\sqrt{(\frac{1}{9})+(\frac{4}{9})+(\frac{16}{9})+4}}\cong0,2134

Con un beneficio esperado de $170.000*0,2134=$36.278.

Finalmente evaluamos el caso donde el tiempo del proyecto se encuentra en el intervalo entre 40 y 41 días.

\mathbb{P}[T\geq40]+\mathbb{P}[T\leq 41]=0,1322

Siendo el beneficio esperado de este escenario $185.000*0,1322=$24.457.

En consecuencia el beneficio esperado asociado a completar el proyecto es de $191.615 ($130.880+$36.278+$24.457).

Problema de Inversión y Selección de Proyectos

Los modelos de Programación Entera constituyen una alternativa eficiente para apoyar la toma de decisiones en aquellos problemas donde se debe implementar (o no) una alternativa o curso de acción que no admite soluciones intermedias. Tal es el caso del Problema de Selección de Cartera de Proyectos donde no es razonable, por ejemplo, si se destina la mitad de los fondos requeridos para un proyecto, asumir que de éste se obtendrá la mitad de sus beneficios o Valor Presente Neto (VPN). Dicho de otro modo, el cumplimiento del supuesto de la proporcionalidad de la Programación Lineal no es adecuado.

El problema que se presenta a continuación aborda estos aspectos y adicionalmente se busca proponer distintas alternativas al momento de establecer las restricciones o condiciones del problema.

Problema de Inversión y Selección de Proyectos

Una empresa está pensando invertir en cuatro proyectos diferentes, cada proyecto se finaliza a lo más en 3 años. Los flujos de caja requeridos en cada año junto con el Valor Presente Neto (VPN) de cada proyecto, concluidos los años de ejecución, y las disponibilidades de recursos financieros se resumen en la siguiente tabla:

tabla-inversion-y-vpn-proye

Interesa determinar en cuáles proyectos invertir de modo de conseguir el mayor VPN de la inversión.

Variables de Decisión: Se desea determina en cuáles proyectos invertir de las 4 alternativas posibles.

variables-decision-inversio

Función Objetivo: Maximizar la sumatoria del Valor Presente Neto (VPN) de los proyectos en los cuales se decida invertir.

maximizar-vpn-inversion

Restricciones: Se proponen 3 escenarios para definir las restricciones del problema.

Alternativa 1: Reinvirtiendo el dinero no utilizado en un período, es decir, el dinero que eventualmente quede disponible al final del año 1 y año 2 se puede considerar como parte del presupuesto disponible para el año siguiente. Lo anterior se representa a través de las variables s_{1} y s_{2}, respectivamente.

alternativa-1-inversion-pro

La implementación computacional del problema haciendo uso de Solver de Excel nos entrega los siguientes resultados:

solucion-optima-inversion-1

Se debe invertir en los proyectos 1 y 4. El VPN total es de $51.

Alternativa 2: Sin invertir el dinero no utilizado en un período, pero utilizando el retorno de los proyectos concluidos.

alternativa-2-inversion

En este caso se debe invertir en los proyectos 1, 2 y 4, alcanzando un VPN total de $69.

solucion-optima-inversion-2

Alternativa 3: Reinvirtiendo el dinero no utilizado en un período y también el retorno de los proyectos concluidos.

alternativa-3-inversion

En este caso la solución óptima y valor óptimo es equivalente al escenario planteado en la Alternativa 3.

solucion-optima-inversion-3

Cabe destacar que la Alternativa 3 es la que provee mayor flexibilidad (en cuanto a los presupuestos para inversión) en comparación a las Alternativas 1 y 2, en consecuencia era razonable esperar en este caso que el VPN total de la Alternativa 3 sea mayor o igual que los VPN de las Alternativas 1 y 2.

Notar que el conjunto de las soluciones factibles es finito. Esto ocurrirá generalmente con los problemas de Programación Entera (puros). En el ejemplo, el número de soluciones factibles no supera el número de las soluciones binarias del problema (variables restringidas sólo a valores 0 o 1) que son 2^{4}=16, dado el número de variables utilizadas, de hecho las soluciones factibles son menos de 16 pues en particular x_{i}=1 para i=1,2,3,4 no satisface las disponibilidades de capital en cualquiera de las tres alternativas.