OPCHAIN-SAAM OPTIMIZING THE VALUE CHAIN STOCHASTIC ADVANCED ANALYTICS MODELLING OPCHAIN-SAAM STOCHASTIC ADVANCED MATHEMATICAL MODELING Bogotá, May 2019 P - CHAIN OPTIMIZING THE VALUE CHAIN
OPCHAIN-SAAMOPTIMIZING THE VALUE CHAIN
STOCHASTIC ADVANCED ANALYTICS MODELLING
OPCHAIN-SAAM
STOCHASTIC ADVANCED MATHEMATICAL MODELING
Bogotá, May 2019
P-CHAINOPTIMIZING THE VALUE CHAIN
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
1. PREDICTIVE ADVANCED ANALYTICS
1.1. ADVANCED ANALYTICS MODELING FRAMEWORK
Tras la publicación del libro "Compitiendo en Analytics", escrito por Tomas Davenport, las aplicaciones
relacionadas con la Investigación de Operaciones, Minería de Datos, Inteligencia Artificial y el Modelaje Probabilístico se han integrado bajo un nuevo nombre: Advanced Analytics (AA), que considera tres
tipos de análisis: descriptivos, predictivos y prescriptivos. En la siguiente imagen presenta el concepto dado por IBM para los tipos de aplicaciones de AA, en ella se puede notar que todas las aplicaciones
relacionadas con la analítica avanzada están relacionadas con lo que anteriormente se denominaba
como Investigacion de Operaciones.
1.2. ANALYTICAL PROFESSIONALS
Un robot es un agente artificial que actúa en lugar de una persona para hacer las cosas. Robots son generalmente máquinas controladas por un programa de computador o por un circuito electrónico.
De acuerdo con el desarrollo de la Analítica Avanzada (la evolución comercial de Investigación de
Operaciones) la automatización ha llegado para quedarse en el campo de los modeladores y los
analistas quienes recibirán ayuda de robots cognitivos para hacer su trabajo.
Analytical Robot:Professionals that create
Expert Computer Algorithms that create
Advanced Analytics Algorithms
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
Davenport en su libro fundamental, consideran tres tipos de practicantes involucrados con Analytics: i)
amateur, ii) semi-profesional y iii) profesionales; doce años después de la publicación del libro, viene un nuevo tipo de profesional: doce años después de la publicación del libro, aparece un nuevo tipo de
profesional amateur: el constructor de robots (algoritmos cognitivos) que escriben, a su vez, algoritmos
analíticos avanzados, lo que acelera, la penetración de la analítica avanzada para aquellas organizaciones que creen en ella, y amplían la brecha productiva con aquellas empresas amateurs.
1.3. OPCHAIN-SAAM (STOCHASTIC ADVANCED ANALYTICS MODELLING)
OPCHAIN-SAAM (Stochastic Advanced Analytics Modelling) es un conjunto de modelos (“suite”)
desarrollados DW para soportar aplicaciones de “Predictive Advanced Analytics” en:
i) Empresas de consultoría y de producción de software científico,
ii) Departamentos de Analítica y Big Data en las grandes empresas iii) Aplicaciones de Analítica Avanzada Predictiva en PYMEs en la nube.
OPCHAIN-SAAM complementa los servicios ofrecidos por OPTEX Expert Optimization System (OPTEX) para desarrollar modelos de Analítica Avanzada Predictiva integrando Modelos Genéricos de
Analítica Avanzada Predictiva a partir de los cuales se pueden construir nuevos modelos, utilizando las
capacidades robóticas de OPTEX.
1.4. OPCHAIN-SAAM – A COGNITIVE ROBOT
Como robot cognitivo OPCHAIN-SAAM: ▪ Tiene una base de datos de modelos de análisis predictivo avanzado
▪ Facilita al profesional en Advanced Analytics incluir nuevos modelos
▪ Carga la base de datos de nuevos modelos de las plantillas de MS Word, MS-Excel y/o archivos CSV ▪ Integra los nuevos modelos con los viejos modelos por medio de una base de datos
▪ Escribe los algoritmos en múltiples lenguajes de computación ▪ Escribe algoritmos utilizando múltiples metodologías matemáticas
▪ Integra modelos en un nuevo algoritmo en un programa de computadora de alto nivel ▪ Genera el modelo de metadatos del sistema de información
▪ Genera automáticamente la interfaz de usuario para consultar los datos del usuario final
▪ Integra múltiples algoritmos para un proceso de análisis avanzado ▪ Genera la conectividad SQL automática a las bases de datos del usuario
1.5. PREDICTIVE ADVANCED ANALYTICS FRAMEWORK
Hay muchas aplicaciones que pueden implementarse utilizando los modelos matemáticos en incluidos en OPCHAIN-SAAM; en términos generales, estas aplicaciones constituyen lo que se conoce como
Data Mining (DM), hoy más conocido como Predictive Advanced Analytics (AA).
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
Data Mining es el proceso de descubrir patrones ocultos en grandes conjuntos de datos con
metodologías matemáticas de machine “learning, artificial intelligence, statistics, optimization & database systems”. Por lo general, DM está integrado por las siguientes aplicaciones conceptuales
(Wikipedia, https://en.wikipedia.org/wiki/Data_mining):
▪ Anomaly Detection (detección de valores atípicos, o anomalías): la identificación de registros de datos inusuales, que pueden ser interesantes o errores de datos, que requieren más investigación;
por ejemplo, ataques de hackers, los datos de error, ▪ Association Rule (modelamiento de dependencias): busca relaciones entre variables asociadas a
un sistema. Por ejemplo, un supermercado puede recoger datos sobre los hábitos de compra de
sus clientes; mediante el aprendizaje de reglas de asociación el supermercado puede determinar qué productos se compran con frecuencia juntos y utilizarán esta información para fines de
marketing. Esto se refiere a veces como análisis de cesta de la compra (market basket analysis). ▪ Clustering/Segmentation (unsupervised learning): es la tarea de descubrir grupos y estructuras
en los datos que son de alguna manera u otra "similar", sin necesidad de utilizar estructuras
conocidas en los datos, implica descubrir grupos y estructuras en los datos que son "similares", sin necesidad de utilizar estructuras conocidas en los datos. El objetivo es descubrir patrones internos
en un conjunto de datos utilizando uno o varios algoritmos que pueden agrupar entidades (muestras) en función de su similitud. Por ejemplo: segmentación clientes de según su
comportamiento comercial (para una línea aérea: VIP, ejecutivos, turistas, eventuales, … ) ▪ Classification (supervised learning): es la tarea de vincular una estructura matemática con las
entidades (muestras) de cada uno de los segmentos en que se divide un conjunto de entidades.
Este proceso se basa en aprendizaje supervisado. Sus resultados, reglas matemáticas o ecuaciones, se utilizan para clasificación de nuevas entidades (no incluidas en la muestra) en un segmento. Por
ejemplo, los modelos de “scoring” de un cliente del sistema financiero, … ▪ Identification (regression): orientada a definir una función matemática (función de respuesta)
que representa el comportamiento de un sistema basado en un espacio continuo que es función
de las variables exógenas o endógenas (datos). Su objetivo es identificar la “mejor” función teniendo como referencia indicadores de la bondad del modelo. Ejemplo: i) identificar la ecuación
de demanda de un mercado, ii) la función de respuesta de una cuenca, iii) el precio de un portafolio de activos, …
▪ Behavior Analysis. Un modelo de comportamiento es utilizado para representar un sistema estocástico discreto; su objetivo es predecir los estados futuros del sistema. Ejemplo: de este tipo
de modelamiento es el análisis del comportamiento de: i) el cliente para propósitos de gestión del
cliente (contento, indiferente, descontento, … ), ii) las empresas para determinar su supervivencia y rentabilidad, y iii) un equipo/máquina para establecer políticas de mantenimiento.
▪ Summarization: es un concepto clave de DM orientado a encontrar una descripción compacta de un conjunto de datos, para facilitar su análisis, visualización y reporte. Por ejemplo, se utiliza en el
análisis de bases de datos no estructurados; por ejemplo, análisis de los correos electrónicos de
manera masiva. ▪ Pattern Recognition: es el reconocimiento automatizado de patrones y de regularidades en los
datos. Estos modelos están estrechamente relacionados con ML y ANN; sin embargo, algoritmos de programación matemática pueden usarse para este propósito. Ejemplo: identificación de
imágenes, sonidos, comportamientos.
▪ Efficiency: Eficiencia es hacer el mejor uso posible de recursos. El análisis de la eficiencia a partir de los datos trata de identificar las unidades productivas más eficientes dentro de un conjunto de
unidades cuyos datos de entradas y de salidas no son fácilmente comparables. ; así, las empresas eficientes maximizan sus resultados buenos (outputs) para un conjunto dado entradas (inputs).
Ejemplo: Análisis de eficiencia de entidades (sucursales bancarias, ATM, hospitales,) para identificar las mas productivas y los “outliers”, por eficientes o por ineficientes.
1.6. ADVANCED ANALYTICS APPLICATIONS
A continuación, se enumeran los algoritmos implementados en OPCHAIN-SAAM y un resumen de sus
principales características:
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
1. System Identification:
Modelos matemáticos orientados a identificar cómo responde un sistema teniendo en cuenta las
variables, endógenas o exógenas, que lo afectan. Los resultados de estos modelos son: ▪ Predicción de variables que representan el estado del sistema.
▪ Estimación de los parámetros de las funciones que representan el comportamiento de un
sistema; Por ejemplo: ▪ Mercados (demanda, precios, cuota de mercado, elasticidad, ...).
▪ Sistemas físicos (variables climáticas, ) Las metodologías matemáticas utilizadas son:
▪ Advanced Probabilistic Models
▪ Generalized Support Vector Regression ▪ State Estimation
▪ Bayesian Ensemble of Models
2. Ensemble Algorithms
Meta-algoritmos para combinar múltiples algoritmos de identificación, se basan en la combinación probabilística de modelos utilizando como soporte el Teorema de Bayes.
El resultado es un modelo combinado resultado de la ponderación de varios modelos, cuyos pesos provienen de la probabilidad a posteriori de que cada modelo sea el modelo verdadero.
Las metodologías matemáticas utilizadas son: ▪ Bayesian Combination
3. Segmentation & Classification: El proceso de clasificar entidades, conocidas o no conocidas consta de tres pasos:
▪ Cluster Analysis: definición de los grupos (clusters, categorías, segmentos, … ) en los que
las entidades pueden agruparse. ▪ Segmentation: Modelos que determinan las reglas matemáticas que deben cumplir cada
entidad/muestra para formar parte de un segmento ▪ Classification: Procesos/modelos para clasificar nuevas entidades en grupos/segmentos ya
definidos
3.1. Cluster Analysis:
Dado un conjunto de entidades, análisis Cluster busca grupos, homogéneos o bien separados. Homogeneidad significa que entidades dentro del mismo cluster deben parecerse entre sí y
que entidades en diferentes grupos deben diferenciarse una de la otra. Los resultados de estos modelos son:
▪ La cantidad de clusters
▪ La clasificación de entidades conocidas en los grupos. Las metodologías matemáticas utilizadas son:
▪ Mathematical Programming Reference: Hanssen P. and Jaumard, B. “Cluster Analysis and Mathematical
Programming”. Mathematical Programming”· October 1997.
3.2. Segmentation:
Dado un conjunto de muestras de entrenamiento, cada uno marcado como pertenecientes a un grupo de varias categorías se establecen las reglas matemáticas o ecuaciones a seguir
para clasificar una nueva entidad en un segmento. Los resultados de estos modelos son: ▪ Las reglas para clasificar entidades.
Las metodologías matemáticas utilizadas son:
▪ Non-Probabilistic Binary Classifier ▪ Generalized Support Vector Machine (GSVM)
Para el caso de segmentación binaria, dos segmentos, GSVM es una representación de las entidades como puntos en un espacio multidimensional en el que se separaran
las muestras de ejemplos de las distintas categorías de forma tal que están divididos
por un vector que separa dos categorías de forma tal que el espacio de separación (brecha) es tan amplio como sea posible. Las nuevas entidades son asignadas a un
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
cluster en ese mismo espacio teniendo como referencia en qué lado de la brecha
están. ▪ Probabilistic Binary Classifier
En estadística, la regresión binomial (binomial regression) es utilizada para modelar una
variable dependiente binaria (0 o 1); hay al menos tres metodologías para enfrentar el problema:
▪ Discriminant Analysis ▪ Logistic Model (Logit model)
▪ Probit Model
Estos modelos maximizan la verosimilitud de la muestra (maximum likelihood) y difieren en sus supuestos probabilísticos.
3.3. Classification:
Dado un conjunto de nuevas entidades (muestras) cada una se clasifica en un segmento
utilizando las reglas matemáticas identificadas en el proceso de segmentación.
4. Discrete Behavior Analysis:
Un modelo de comportamiento discreto es un modelo utilizado para representar un sistema estocástico en un espacio de estados discretos; su objetivo es predecir los estados futuros. La
metodología utilizada se basa en cadenas de Markov (MC, Markov Chains) que se soportan en conceptos probabilísticos para definir las transiciones entre los estados discretos. Adicionalmente,
las cadenas de Markov han sido estudiadas como parte de procesos de toma de decisiones dando
lugar al modelamiento Markov Decision Process (MDP, conocido como Reinforced Learning). Este proceso implica los siguientes pasos:
1. Definición de los Estados del sistema; para ello pueden utilizarse algoritmos de clustering 2. Estimación de las probabilidades de transición de Markov Chain entre períodos discretos (de t
a t+1) 3. Estimación de las probabilidades de transición de Markov Chain entre períodos discretos
considerando el proceso de decisión.
4. Optimización de la política de decisiones del sistema markovian. Las metodologías matemáticas utilizadas son:
▪ Stochastic Programming ▪ Stochastic Dynamic Programming
5. Pattern Recognition: Es el reconocimiento automatizado de patrones y/o de regularidades en los datos.
Las metodologías matemáticas utilizadas son:
▪ Machine Learning ▪ Mathematical Programming
▪ Artificial Neural Nets
6. Anomaly Detection:
Se refiere a la identificación de elementos o eventos que no se ajustan a un patrón esperado o a
otros elementos presentes en un conjunto de datos, que puede ser interesante o errores de datos que requieren investigación adicional.
Pueden ser contestadas las siguientes preguntas: ▪ Identificación de registros de datos inusuales que pueden ser: error en datos, problemas
médicos, errores en un texto, intrusiones de hackers,.... ▪ Anomalías también denominan outliers, novedades, ruido, desviaciones y excepciones.
Las metodologías matemáticas utilizadas son:
▪ Machine Learning ▪ Multi-State Kalman Filter (MS-KF)
▪ Bayesian Inference ▪ Data Envelopment Analysis
7. Operational Efficiency:
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
Estudio de la eficiencia operativa de unidades de producción (Decision-Making Units, DMUs)
Ejemplos de DMUs son: sucursales bancarias, jugadores de fútbol, ATM, departamentos, plantas de producción; en general cualquier entidad incluida en un proceso de producción.
Pueden ser contestadas las siguientes preguntas:
▪ Identificación de DMUs anómalas/extrañas/interesantes (outliers) ▪ Ordenamiento de las DMUs de acuerdo con una medida de eficiencia
▪ Fronteras de producción eficientes como función de los recursos utilizados y de los “productos producidos”.
Las metodologías matemáticas utilizadas son:
▪ Data Envelopment Analysis (DEA) es un método no paramétrico (basado en los datos observados) para la estimación de fronteras
de producción Pareto. Se utiliza para medir empíricamente la eficiencia productiva de las DMUs. Corresponde a un modelo de programación matemática.
▪ Stochastic Frontier Analysis (SFA)
es un método paramétrico (basado en una función matemática) de identificación de modelos económicos de producción. La función de producción más utilizada en economía es la de Cobb-
Douglas. Se resuelve con base en un proceso de modelos probabilísticos avanzados.
1.7. A TYPICAL APPLICATION
El proceso de desarrollar modelo predictivos con base en Analítica Avanzada implica varios pasos que
si se pueden organizar en dos grandes etapas. ▪ Conocimiento Predictivo: Actividades orientadas a desarrollar el conocimiento con base en la
aplicación de metodologías matemáticas orientadas para tal fin, este proceso es previa a la toma de decisiones
▪ Conocimiento Prescriptivo: Actividades orientadas a soportar la toma de decisión, teniendo como
base las capacidades predictivas desarrolladas en el paso anterior.
La Analítica Avanzada Predictiva esta soportada en las múltiples metodologías matemáticas, y múltiples algoritmos que se derivan de las metodologías, las más conocidas son: Machine Learning, Artificial
Neural Nets y Advanced Probabilistic Models. Este proceso se lleva a cabo con el robot de analítica avanzada predictiva OPCHAIN-SAAM, el cual integra varios algoritmos orientados a soportar el
proceso de capitalizar la información que se encuentra en las bases de datos a las que puede acceder
la organización.
El proceso no se puede reducir a un solo modelo que se ejecuta y directamente produce los resultados; por lo tanto, es necesario integrar múltiples pasos, que si bien se pueden sistematizar, dependen de
cada tipo de negocio.
El objetivo es responder las siguientes preguntas específicas acerca de:
▪ Cuáles son los impactos que se derivan de ciertas condiciones del entorno de decisiones. ▪ Los patrones de comportamiento de las personas/empresas.
▪ Las probabilidades de que ocurran determinados eventos.
Los actividades asociadas al proceso son:
1. Obtención y Análisis de las Bases de Datos 2. Diseño del Modelo de Metadatos
3. Carga Bases de Datos i) Base Datos Relacional
ii) Tablas de Trabajo Tipo Panel
4. Caracterización de Clientes i) Análisis de Anomalías (Anomaly Detection)
ii) Análisis de Eficiencia Operacional (Data Envelopment Analysis, DEA) iii) Segmentación (Clustering)
iv) Identificación (Machine Learning, ML)
▪ Support Vector Regression, SVR, ▪ Advanced Probabilistic Models, APM
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
v) Clasificación
5. Modelamiento de clientes i) Modelamiento Markoviano Dinámico
El diagrama presenta el flujo de datos y de modelos en los cuatro primeros pasos, cuyo resultado final es evaluar el impacto en el proceso del entorno de decisiones.
SyndicatedDatabases
ENTERPRISEDatabase
OthersDatabases
Meta-Data Model Design
LoadingInformation System
Operational EfficiencyData Envelopment
Analysis
ClusteringSegmentation
Anomaly Detection
Market CharacterizationClients – Competitors
by Segment
Historical DataSegment
Classification
Model IdentificationSegment of New Data
New Data Base
ClassificationNew Clients
Bottom-Up ForecastingMarket Variables
Multi-Product by Segment
Segments
Clean/Work Data Base
Original Data Base
SegmentsHistorical Clients
Identification Math Model
SegmentsNew Clients
ImpactMath Model
ImpactNew Clients
ML
DEA
MP
ML: Machine LearningPM: Probabilistic Models
DEA: Data Envelopment AnalysisMP: Mathematical Programing
MLPM
MLPM
ML
El proceso involucra diferentes tecnologías, las cuales en un “trabajo en equipo” realizan todo el trabajo
de análisis predictivo del sistema objeto del estudio. Dependiendo del caso la metodologías pueden
cambiarse dependiendo del problema de cada usuario.
Posteriormente al análisis predictivo básico, se sigue al proceso de optimización de las decisiones, el cual se puede realizar con dos tipos de modelos básicos:
2. MATHEMATICAL METHODOLOGIES
Hoy en día la clasificación de los modelos de matemática predictiva puede ser muy confusa; en general
no es fácil ordenar los algoritmos relacionados con: i) Artificial Intelligence (AI), ii) Data Mining (DM), y iii) Machine Learning (ML).
En la práctica la confusión se mantiene, ya que existen muchas metodologías que pueden utilizarse
para obtener un mismo fin; a continuación, se presentan dos ejemplos: ▪ Reconocimiento de patrones (imágenes, e-mails, ….) el cual puede realizar con algoritmos
claramente identificados con: i) ML (Generalized Vector Support Machines, GSVM), y con ii) AI
(Artificial Neural Nets, ANN). ▪ Predicción de variables continuas (demanda, precios, velocidad del viento, … ) la cual se puede
realizar con algoritmos de: i) ML (Generalized Support Vector Regressions, GSVR), ii) AI (redes ANN), y iii) Advanced Probabilistic Models (APM, S-ARIMAX-GARCH) y iv) State Estimation
(Kalman Filter, KF)
En los anteriores casos no se puede definir una metodología como la mejor, ya que es fácil encontrar ejemplos contradictorios.
En esta sección se describe el marco de referencia matemático que se ha seguido en la implementación
de OPCHAIN-SAAM … que es un conjunto de modelos matemáticos para analizar conjuntos de datos históricos y/o en línea utilizando herramientas de analítica avanzadas basadas en las siguientes
metodologías matemáticas:
▪ Machine Learning ▪ Generalized Support Vector Machines (GSVM)
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
▪ Generalized Support Vector Regression (GSVR)
▪ Artificial Neural Nets (ANN) ▪ Deep Neural Networks (DNN)
▪ Markovian Process
▪ Markovian Nets ▪ Markovian Decision Process (MDP)
▪ Clustering Analysis (CA) ▪ Advanced Probabilistic Models (APM)
▪ Simultaneous Equations Regression
▪ S-ARIMAX-GARCH Models ▪ Discriminant Analysis (DA)
▪ Logistic Regression (LR) ▪ Bayesian Methods (BM)
▪ State Estimation (SE)
▪ Kalman Filter ▪ Standard Kalman Filter (KF)
▪ Multi-State Kalman Filter (MS-KF) ▪ Dual Kalman Filter (D-KF)
▪ Bayesian Ensemble of Models (BEM) ▪ Data Envelopment Analysis (DEA)
Los modelos matemáticos de OPCHAIN-SAAM están fundamentados en procesos de optimización y, por lo tanto, se requiere de una tecnología de optimización (CPLEX, GUROBI, COIN-MP, … ) y de un
lenguaje de modelamiento algebraico (GAMS, IBM OPL, MOSSEL, C, PYTHON, AMPL, GMPL, … ). El soporte técnico de esta decisión se basa en que, en los últimos 25 años, la investigacion en
programación matemática, unido a la evolución de la informática, han dado como resultado avances
algorítmicos en optimización significativos, como es el caso de programación entera mixta (MIP), con un asombroso speed-up de 800 billones de veces más rápido.
Para conocer más de la visión de DecisionWare en la programación matemática se sugiere consultar
▪ The Future: Mathematical Programming 4.0 https://www.linkedin.com/pulse/future-mathematical-programming-jesus-velasquez/
2.1. MATHEMATICAL PROGRAMMING
Mathematical Programming (MP) normalmente está vinculada a: i) problemas de optimización, ii) problemas de equilibrio o iii) la integración de estas dos metodologías bajo programación matemática
con Mathematical Programing with Equilibrium Constraints (MPEC) models. Sin embargo, este
concepto puede ampliarse a todas las metodologías matemáticas que se apoyan en fórmulas algebraicas.
El problema estándar MP: es formulado como:
MP: = { Min z = f(x) | b - G(x) :: 0 ; xS }
donde x representa las variables de decisión y el operador :: la relación que existe entre la función
vectorial de las variables de decisión G(x) y el vector de recursos , b, de la ecuación con respecto a
cero, esta relación puede ser , , o =.
La optimización soporta, como un concepto fundamental, las metodologías orientadas a estudiar
procesos estocásticos que minimizan una función de pérdida/penalización u objetivos multicriterio de construida con los errores de predicción.
Un problema genérico MP-EP: para estimar los parámetros, , de una metodología orientada a
identificar modelos de un sistema estocásticos se puede formular basado en problema de programación
matemática que incluye: i) ecuaciones que definen los errores de estimacióni ii) una función objetivo
que penalice los errores, iii) un modelo matemático del sistema, y iv) restricciones que deben cumplir
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
los parámetros. Un modelo para estimar un modelo para una variable dependiente y puede formularse
como:
MP-EP: = { Min z = i |i|p
|
yi - Fi(|i) = i i=1,M
G() = 0
S }
where
Vector de parámetros
yi Valor de la muestra i de la variable dependiente
Fi(|i) Proyección de la muestra variable i
i Vector de variables independientes asociadas a la muestra i de la variable dependiente
i Error de predicción de la muestra i de la variable dependiente
M Numero de muestras de la variable dependiente
G() Función vectorial que define las restricciones que deben satisfacer
S Espacio de existencia de los parámetros
El enfoque de programación matemática presenta ventajas significativas, ya que facilita el modelado de las variaciones en las metodologías básicas. Por ejemplo, para estimar los modelos de "market
share" para múltiples proveedores (V), actuando en varias regiones (R), donde venden múltiples
categorías de productos (C); se deben resolver VRC modelos estadísticos simultáneamente, con las
siguientes restricciones: i) una restricción común que garantice que la suma de las participaciones en
RC mercados debe ser igual a 1 y ii) que la cuota de mercado de cada proveedor, en los mercados de
todo RC, debe ser mayor o igual que cero. En este caso Simultaneous Constrained Least Squares es
fácil de modelar usando MP.
La unión de metodologías matemáticas (machine learning, advanced probabilistic models, optimization,
… ) utilizando MP tiene la gran ventaja de la facilidad de integración de las fórmulas algebraicas. Esto se soporta en el hecho que la unión de los modelos MP produce un nuevo MP, por lo tanto, es fácil
mezclar las fórmulas algebraicas de múltiples metodologías en un único modelo.
2.2. MACHINE LEARNING
Machine Learning (ML) es el estudio científico de los algoritmos y de los modelos estadísticos que
utilizan sistemas informáticos para mejorar progresivamente su rendimiento en una tarea específica
(wikipedia en inglés). Uno de los fundamentos de ML son las máquinas de vectores soporte (SVM, del inglés Support Vector Machines) tienen su origen en los trabajos sobre la teoría del aprendizaje
estadístico y fueron introducidas en los años 90 por Vapnik y sus colaboradores [Boser et al., 1992, Cortes & Vapnik, 1995]. Aunque originariamente las SVMs fueron pensadas para resolver problemas
de clasificación binaria, actualmente se utilizan para resolver otros tipos de problemas (regresión, agrupamiento, multi-clasificación). También son diversos los campos en los que han sido utilizadas con
éxito, tales como visión artificial, reconocimiento de caracteres, categorización de texto e hipertexto,
clasificación de proteínas, procesamiento de lenguaje natural, análisis de series temporales, … .
En OPCHAIN-SAAM, ML se relaciona directamente con los SVM, sus variaciones y sus extensiones.
2.2.1. GENERALIZED SUPPORT VECTOR MACHINES (GSVM)
Para ello consideremos una clasificación binaria para una muestra que depende de varios factores
(peso, volumen, ruta, tipo carga, … ) y que se puede clasificar en ÉXITO y NO-ÉXITO. El problema desde el punto de vista de ML es separar el espacio por medio de un hiperplano (SVM) que divida los
objetos (entidades, muestras, … ) entre ÉXITO y NO-ÉXITO; tal como lo muestra la siguiente figura.
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
SUPPORT VECTOR MACHINES
?
Precio
Peso, Volumen, Ruta, Tipo Carga, …
ÉXITO
NO-ÉXITO
Precio
Peso, Volumen, Ruta, Tipo Carga, …
ÉXITO
NO-ÉXITO
Fuente: E. Carmona, “Tutorial sobre Máquinas de Vectores de Soporte (SVM)”
El problema matemático está relacionado con el hecho que, en ciertos casos, pueden existir infinito
número de hiperplanos que pueden dividir el espacio y por lo tanto se requiere seleccionar el “mejor” de ellos.
SUPPORT VECTOR MACHINES
Precio
Peso, Volumen, Ruta, Tipo Carga, …
ÉXITO
NO-ÉXITO
Precio
Peso, Volumen, Ruta, Tipo Carga, …
ÉXITO
NO-ÉXITO
Fuente: E. Carmona, “TUTORIAL SOBRE MÁQUINAS DE VECTORES DE SOPORTE (SVM)”
ML permite determinar el hiperplano óptimo como aquel que maximiza la distancia del punto más cercano de cada grupo al SVM. Por lo tanto, determinar el SVM corresponde a un problema de
optimización.
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
SUPPORT VECTOR MACHINES
Precio
Peso, Volumen, Ruta, Tipo Carga, …
ÉXITO
NO-ÉXITO
Precio
Peso, Volumen, Ruta, Tipo Carga, …
ÉXITO
NO-ÉXITO
Fuente: E. Carmona, “TUTORIAL SOBRE MÁQUINAS DE VECTORES DE SOPORTE (SVM)”
Precio
ÉXITO
NO-ÉXITO
Consideremos un conjunto separable de dos tipos de objetos
S = { (X1 ; y1) ; . . . ; (Xn; yn) }
donde yi{+1,-1} y XiRd, con componentes xi,d, se puede definir un SVM como una función lineal
que es capaz de separar dicho conjunto sin error:
D(xi) = ( w1 xi,1 + … + wd xi,d ) + b =d wd xi,d + b = <w,Xi> + b
donde wi son coeficientes reales (componentes del vector W), b es un coeficiente real y el operador <w,x> representa el producto punto entre w y x.
El SVM cumplirá las siguientes restricciones para todo Xi del conjunto de objetos:
<w,Xi> + b ≥ 0 si yi = +1
<w,Xi> + b ≤ 0 si yi = - 1
yi (<w,Xi> + b ) ≥ 0
o también
yi (<w,Xi> + b ) ≥ 0 i=1,n
o de forma algebraica
yi D(xi) ≥ 0 i=1,n
La distancia , entre un hiperplano de separación D(x) y un objeto/vector x’ viene dada por
= | D(x’) | / ǁ w ǁ
siendo |.| el operador valor absoluto, ǁ . ǁ el operador norma de un vector y w el vector que junto
con el parámetro b define el hiperplano D(x) y que, además, tiene la propiedad de ser perpendicular al hiperplano considerado. Dada la definición de hiperplano de separación, se debe cumplir distancia
es menor que cualquier otra distancia a los puntos al interior de la frontera, esto es:
≤ | D(x’) | / ǁ w ǁ
o sea que todos los objetos de entrenamiento cumplirán
ǁ w ǁ ≤ | D(x’) |
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
De la expresión anterior, se deduce que encontrar el hiperplano óptimo w* es equivalente a encontrar
el valor de w que maximiza el margen/distancia . Sin embargo, existen infinitas soluciones que
difieren solo en la escala de w. Así, por ejemplo, todas las funciones lineales (<w,Xi> + b), con
R, representan el mismo hiperplano. Para limitar el número de soluciones a una sola, se fija la escala
del producto de y por la norma de w, de forma arbitraria, a la unidad
ǁ w ǁ = 1
Por lo tanto, maximizar el margen es equivalente a minimizar la norma de w, lo que es equivalente
a minimizar d wd2, que corresponde a un problema de programación cuadrática:
{ Min ½ d wd2
|
D(xi) = d wd xi,d + b ≥ 1 si yi = +1
D(xi) = d wd xi,d + b ≤ -1 si yi = -1
}
Si el anterior problema tiene solución factible, el problema se denomina como de clasificación separable. El hiperplano así definido se denomina vector de soporte de margen duro (HARD-
SVM); si no tiene solución factible, implica que no existe un hiperplano que pueda dividir el espacio dimensional en dos partes, de forma tal de agrupar todos los objetos de un mismo tipo en un mismo
semi-espacio; en ese caso el problema de clasificación se denomina como cuasi-separable.
En este caso se propone resolver un problema que tenga incluya un error de ajuste (“holgura”), i, y
el problema matemático a resolver se formula como:
{ Min ½ d wd2 + C i |i|
|
D(xi) = d wd xi,d + b + i ≥ 1 si yi = +1
D(xi) = d wd xi,d + b - i ≤ -1 si yi = -1
}
donde C es una constante, suficientemente grande que permite controlar en qué grado influye el término de penalización de los objetos no-separables en la minimización de la norma. El hiperplano así
definido se denomina vector de soporte de separación de margen blando (SOFT-SVM).
Hasta ahora, se ha asumido que los hiperplanos se definían como funciones lineales en el espacio-
x de los objetos; sin embargo, es posible usar de forma eficiente de funciones kernel, no lineales, para
definir espacios transformados de alta dimensionalidad y así obtener Generalized Support Vector Machines (GSVM) óptimos en dichos espacios transformados. La siguiente gráfica resume lo dicho.
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
Espacio Original Espacio Proyectado
GENERALIZED SUPPORT VECTOR MACHINES
Fuente: E. Carmona, “Tutorial sobre Máquinas de Vectores de Soporte (SVM)” Los kernels (o funciones kernel) permiten construir versiones no lineales de los algoritmos lineales,
dotándolos de mayor potencia. Su uso es común en ML y ANN, pero también pueden incluirse en modelos APM. La siguiente tabla presenta ejemplos de las funciones kernel más comunes; sin embrago
se debe tener en general cualquier usuario puede crear sus propias funciones kernel; sin embargo, el exceso de funciones kernel puede conllevar problemas de interpretación en los parámetros estimados.
Los kernels se interpretan como productos escalares en espacios de alta dimensionalidad; con la cantidad de dimensiones aumenta la complejidad obteniendo algoritmos de gran capacidad expresiva,
pero con los problemas de estimación y posible sobre entrenamiento del modelo.
2.2.2. GENERALIZED SUPPORT VECTOR REGRESSION (GSVM)
De acuerdo con los principios vectores de soporte se puede formular un modelo tipo Generalized
Support Vector Regression (GSVR), que incluya los conceptos de regresión estadística convencional y las máquinas de soporte vectorial.
Para ello se propone resolver un modelo de minimización de errores de predicción para los cuales se
establece una zona “insensible” en la que los errores de predicción no se consideran en la función de
penalización. El modelo de optimización a resolver se formula como
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
{ Min z = i |+
i|p
|
yi - Fi(|i) = i i=1,M
- ≤ i - i ≤
}
donde
½ del ancho de la zona insensible.
i Error del proceso de estimación
i Violación/error de la zona insensible
p Potencia de penalización de los errores.
La diferencia entre Support Vector Regression (SVR) y Generalized Support Vector Regression (GSVR) radica en la inclusión o no de las funciones kernel no lineales.
SUPPORT VECTOR REGRESSION
Cuando es igual a cero y p es igual a 2 el problema matemático a resolver es igual a estimación por
Ordinary Least Squares (OLS).
2.3. CLUSTER ANALYSIS
Cluster Analysis implica el problema de la partición óptima de un determinado conjunto de entidades en un número (previamente asignado) de grupos mutuamente exclusivos y colectivamente exhaustivos.
Se debe notar que este problema no tiene solución única, ya que el concepto de cuál es la mejor agrupación es subjetiva.
La implementación realizada en OPCHAIN-SAAM sigue los lineamientos de Rao (1969) quien, con base en la función de distancia utiliza modelos de programación matemática formulados de dos
objetivos diferentes: i) C-SG: minimizar la sumas de las distancias entre los elementos de los grupos y
ii) C-DG: minimizar la distancia máxima dentro de los grupos.
▪ C-SG: MINIMIZAR LA SUMAS DE LAS DISTANCIAS
El problema C-SG: busca minimizar la suma de las distancias entre las entidades de un grupo, se
formula como:
C-SG: = { z = Min k=1,M ( i=1,N-1 j=i+1,N i,j2 CLUi,k CLUj,k / nk )
|
k=1,M CLUi,k = 1
i=1,N
i=1,N CLUi,k = nk
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
i=1,M
k=1,M nk = N
CLUi,k{0-1}
i=1,N , k=1,M
}
donde
M Número de clústeres (pre-especificado) N Número de objetos, entidades
i,j Distancia entre la entidad i y la entidad j
CLUi,k Variable binaria que será igual a 1 si la entidad i pertenece al cluster k
C-SG: corresponde a un problema de programación binaria fraccional difícil de resolver. A partir de la
anterior formulación se debe analizar cuál es el enfoque apropiado para resolver el problema, lo que depende del número de entidades que se deben agrupar.
▪ C-DG: MINIMIZAR LA DISTANCIA MÁXIMA
Con este criterio se busca reducir al mínimo la distancia máxima dentro de los grupos. La formulación matemática es
C-SG: = { z = Min
|
k=1,M CLUi,k = 1
i=1,N
i,j CLUi,k + i,j CLUj,k - i,j ≤
i=1,N-1 , j=i+1,N , k=1,M
CLUi,k{0-1}
i=1,N , k=1,M
}
donde representa el máximo de las distancias al interior de cada grupo. Esta formulación tiene la ventaja que corresponde a un problema de programación mixta lineal (MIP) más fácil de resolver que el
anterior; pero, desafortunadamente su tamaño crece rápidamente con N y M, por lo tanto, también se
requieren metodologías avanzadas para su solución.
2.4. ANOMALY DETECTION
Support Vector Data Description (SVDD) es una variación de SVM orientada a detectar anomalías
(outliers) encontrando la hiperesfera más pequeña que contiene la mayoría de los registros de entrenamiento, dejando fuera algunos puntos que deben ser excluidos por ser clasificados como
anomalías (Erfani et al, 2016, “High-Dimensional and Large-Scale Anomaly Detection using a Linear One-Class SVM with Deep Learning”). El problema de programación cuadrática SVDD:
se formula como:
SVDD: = { z = Min R2 + [1/(M)] k=1,M k
|
║(xk) - a║2 - R2 ≤ k
k=1,M
0 ≤ k
k=1,M
}
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
donde a Centro de la hiperesfera
R Radio de la hiperesfera
Xd Vector de datos de entrada X={x1, x2, x3, … , xM}, XRd
xk Vector de datos de entrada
Factor de regularización que gobierna la relación inversa entre el tamaño de la hiperesfera y
la fracción de puntos de datos que pueden caer fuera de la hiperesfera.
(xk) Función kernel no lineal que asigna los datos xk a un espacio dimensional más alto RM→RQ,
donde M<Q.
k Variables de holgura asociada a xk que permite que algunos de los puntos de datos que se
encuentran fuera de la hiperesfera.
Las variables duales k de ║(xk) - a║2 - R2 ≤ k de determinan el tipo de objeto/muestra:
i) si k=0, xk es interior,
ii) si 0<k<1/M , xk está en la frontera
iii) si k=1/M , xk es una anomalía.
Una alternativa a SVDD son los Plane-Based One-Class Support Vector Machine (PSVM), una clase de SVM. PSVM identifica anomalías encontrando el hiperplano que separa mejor los datos desde el
punto origen. En otras palabras, la función de decisión de PSVM devuelve 1 en una región donde se
producen la mayoría de los puntos de datos (donde la densidad es alta) y -1 en el resto. Para separar los datos del origen, PSVM resuelve el siguiente problema de programación cuadrática:
PSVM: = { z = Min ½ ║s║2+ [1/(M )] k=1,M k -
|
(s . xk) ≥ - k
k=1,M
0 ≤ k
k=1,M
}
donde
s Es un vector de pesos
Offset
PSVM: penaliza las variables de holgura k: lo que maximiza la distancia de todos los puntos de datos
al punto de origen en el espacio transformado. La figura visualiza lo descrito.
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
2.5. ARTIFICIAL NEURAL NETS
Una Deep Neural Networks (DNN) es una Artificial Neural Network (ANN) con múltiples capas (layers)
entre la capas de entrada y salidas. OPCHAIN-SAAM permite el modelamiento de DNN utilizando
modelos de programación matemática. La formulación tiene como referencia los lineamientos de: ▪ Tjeng y Tedrake, (), “Verifying Neural Networks with Mixed Integer Programming”
▪ Fischetti y Jo, (2018, “Deep Neural Networks and Mixed Integer Linear Optimization”
Una DNN está integrada por K+1 capas numeradas de 0 a K. La capa 0 es ficticia y corresponde a las
entradas de la DNN, mientras que la última capa, K, corresponde a las salidas. Cada capa k={1, K} se compone de unidades de Nk (neuronas o nodos de redes), numeradas de 1 a Nk. UNIT(j,k)
representa j-ésima la unidad de la capa k. Xk es el vector de salida de la capa k, Xk={ xk,1, xk,1, xk,1,
… xk,1 }, donde XK de la DNN como un todo.
INPUT LAYERk=0
OUTPUT LAYERk=K
HIDDEN LAYERk=1
HIDDEN LAYERk=K-1
. . . . .
UNIT(0,1)
UNIT(0,N0)
UNIT(0,j)
UNIT(1,1)
UNIT(1,j)
UNIT(1,2)
UNIT(1,N1)
UNIT(K-1,1)
UNIT(K-1,j)
UNIT(K-1,2)
UNIT(K-1,NK-1)
UNIT(K,1)
Para cada capa (layer) k≥1, UNIT(j,k) calcula su vector de salida Xk a través de la fórmula
Xk = (Wk-1 Xk+1 + bk-1)
donde (.) es una función vectorial de activación no lineal (kernel), Wk es una determinada matriz de
pesos incluye la topología de la DNN y bk un vector de sesgos.
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
Las funciones de activación se pueden clasificar como “cuasi lineales” (Rectified Linear (ReLu), Leaky Rectified Linear ()) o como no-lineales (Sigmoid, Hyperbolic Tangent, Exponential Rectified Linear). Si
se utilizan funciones no-lineales el problema resultante será un MINLP (Mixed Non-Linear
Programming), si se utilizan funciones “cuasi lineales” el problema será de MIP (Mixed Integer Programming).
Un operador utilizado comúnmente es ReLU (Nair and Hinton, 2010, “Rectified Linear Units
improve Restricted Boltzmann Machines”) cuya salida es sólo el máximo entre el valor de su
entrada y cero. En este caso las ecuaciones que rigen la DNN son:
Yk = Wk-1 Xk+1 + bk-1
Yk= { yk,1, yk,1, yk,1, … yk,1 }
Xk = RELU(yk,j) = Max (0, yk,j)
Las matrices Wk y los vectores bk pueden tener valores negativos, mientras que todos los valores de
salida xk,j son no-negativos, excepto el vector x0,j que representa la entrada a la DNN en su conjunto.
Para separar la parte positiva de la negativa de la ReLU, las condiciones lineales se pueden escribir
como
Yk + bk-1 = Xk - Sk
Xk ≥ 0 ; Sk ≥ 0
La solución <xk,j , sk,j> debe satisfacer la condición de complementariedad xk,j sk,j ≤ 0 que es
equivalente a xk,j sk,j = 0 dado que ambos términos deben ser no negativos. Este modelo se puede
resolver con solver orientados a resolver problemas de equilibrio o Mathematical Models with Equilibrium Constraints (MPEC).
Una alternativa es introducir una zk,j variable binaria e imponer las siguientes condiciones lógicas
sk,j ≤ ∞ zk,j ; xk,j ≤ ∞ (1 - zk,j)
k=1,K , j=1,Nk
Para calibrar una DNN teniendo como referencia una serie de datos de salida j, uno para cada una
unidad/neurona del layer K, el error de estimación es
j = xK,j - wj
j=1,NK
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
La función objetivo podría ser la minimización de la suma de los errores al cuadrado; el problema DNN: a resolver sería del tipo de programación cuadrática mixta:
DNN: = { j=1,NK j
2
|
yk,j + bk-1,j = wk,j xk,j - sk,j
k=1,K , j=1,Nk
sk,j ≤ ∞ zk,j ; xk,j ≤ ∞ (1 - zk,j)
k=1,K , j=1,Nk
j = xK,j - j
j=1,NK
xk,j ≥ 0 ; sk,j ≥ 0
k=1,K , j=1,Nk
k,j{0-1}
k=1,K , j=1,Nk
}
Como opción, la función objetivo puede ser del tipo Support Vector Regression (SVR) que incluye minimizar la suma de errores cuadrados como un caso particular.
Además de activaciones, la formulación puede ajustarse para incorporar DNNs modernas como
Convolutional Neural Networks (CNN) con unidades con agrupación de múltiples entradas que
sintetizan el funcionamiento por medio del total, la media o el máximo.
También es posible adecuar la formulación para diseñar la topología de la DNN, incluyendo variables de activación de las unidades y un costo por activación, el cual puede asociarse a un índice de
rendimiento que tenga en cuenta la cantidad de neuronas para evitar sobreajuste de la red.
2.6. MARKOVIAN PROCESS
Un proceso de Márkov, llamado así por el matemático ruso Andréi Márkov (1856-1922), es un
fenómeno aleatorio dinámico para el cual se cumple la Propiedad Markoviana: no tiene memoria, o sea que es un proceso para el cual la probabilidad condicional sobre el estado presente, el futuro y el
pasado del sistema son independientes de la trayectoria que siga un sistema.
La importancia práctica es el uso de la propiedad de Márkov es que se puede utilizar con el fin de
construir modelos estadísticos de un proceso estocástico, de tal manera que permita transitar por un grupo de estados en el que la influencia de estar un estado decline a lo largo del tiempo.
2.6.1. CADENAS DE MARKOV
Frecuentemente el término Cadena de Márkov se usa para dar a entender que un proceso de Márkov tiene un espacio de estados discreto (infinito o numerable). Usualmente una cadena de Márkov sería
definida para un conjunto discreto de períodos (es decir, una Cadena de Márkov de Tiempo Discreto),
aunque algunos autores usan la misma terminología donde "tiempo" y/o los estados puede tomar valores continuos. A continuación, se presentan dos ejemplos simples de Cadenas Markovianas.
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
HYDROCLIMATIC PROCESS
MARKOV CHAIN
MARKET PROCESS
Las dos anteriores cadenas están relacionadas con dos sistemas diferentes: un mercado de activos y con un proceso hidro-climático; cada uno de ellos puede modelarse como de estados discreto y tiempo
discreto, o como, de tiempo continuo y estado continuo. La decisión de cómo se realiza el modelamiento
depende de los datos, del problema específico y del modelador. Uno de los usos actuales de la teoría markoviana es uso para representar el comportamiento de las personas en sus relaciones con una
organización y de las organizaciones.
Se pueden considerar dos tipos de modelos de Markov:
▪ Markovianos: Las probabilidades de transición se suponen constantes a lo largo del tiempo, lo
que se puede expresar como
P(xt+1 = j | xt = i) = i,j
donde xt representa el estado del sistema durante el período t, P(A|B) la probabilidad condicionada de A condicionada en B y la probabilidad de una transición del estado i al estado j.
▪ Semi-markovianos: Las probabilidades de transición entre estados pueden variar a medida que
transcurren más ciclos; un ejemplo claro es el modelamiento de la esperanza de vida, el riesgo de
muerte, cuya probabilidad aumenta con la edad. Matemáticamente se expresa como
P(xt+1 = j | xt = i) = i,j(t)
Se puede decir que la realidad es semi-markoviana, ya que casi todos los procesos son dinámicos en
su parte aleatoria, y la forma de responder un sistema puede evolucionar tendencial o cíclicamente a
lo largo del tiempo
Para modelar un Proceso Markoviano, se requiere: ▪ Estados: Las condiciones en las cuales se encuentra el sistema
▪ Probabilidad de Transición: La probabilidad de pasar de un estado actual i al estado j en una transición, o período. La cual puede ser estacionaria o variante a lo largo del tiempo.
El diagrama presenta los elementos de un sistema markoviano.
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
STATE TRANSITION DIAGRAM FOR A MARKOV CHAIN MODEL
STATE TRANSITION MATRIX
Para modelar un proceso como markoviano se deben identificar las dos anteriores características: los
estados, que en muchos casos no son evidentes y pueden provenir de un estudio de segmentación que puede realizarse con metodologías de clustering o de ML; posteriormente a la definición de los estados,
se requiere un muestra en la que se puedan estimar las transacciones entre estados, el proceso será más complejo en la medida que se consideren matrices de transición dinámicas.
A continuación, se presenta un modelo de programación matemática para estimar las probabilidades de transición de una cadena de Markov estacional, definida como una cadena en la que las
probabilidades varían estacionalmente a lo largo del tiempo; por ejemplo, probabilidades de transición dependientes del mes.
Para estimar las probabilidades se puede resolver el problema de programación cuadrática MK-P(m):, uno para cada mes m:
MK-P(m): = { z = Min i=1,N j=1,N i,j(m)2 |
j=1,N i,j(m) = 1
i=1,N
i,j(m) = tPME(m) xi,j(t) / tPME(m) j=1,N xi,j(t)
i=1,N , j=1,N, m=1,12
i,j(m) - i,j(m) = i,j(m)
i=1,N , j=1,N
0 ≤ i,j(m) , i=1,N , j=1,N
}
donde N Número de estados
PME(m) Período t asociado al mes m
xi,j(t) Muestra observada de la transición de i a j durante el período t
i,j(m) Probabilidad de transición de i a j durante el mes m
i,j(m) Probabilidad muestral de transición de i a j durante el mes m
i,j(m) Error/diferencia entre la probabilidad estimada i,j(m) y la probabilidad muestral i,j(m)
La función objetivo corresponde a la suma del cuadrado de los errores.
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
2.6.2. MARKOV CHAIN DECISION PROCESS
Los procesos decisorios basados en un modelaje markoviano (Markov Chain Decision Process,
MCDP), hoy en día también conocidos como Reinforcement Learning, son el objetivo final del
modelamiento matemático del proceso de toma de decisiones.
Estos procesos incluyen las acciones de decisión tratando de afectar el proceso estocástico, entendido como la trayectoria a través de los estados del sistema. Una aplicación clara de estas metodologías
puede asociarse a las decisiones de las empresas para tratar de manejar el ciclo de vida de sus clientes.
Para lograr esto se incluye: 1. El concepto de probabilidades de transición condicionadas en las decisiones
2. La remuneración/ganancia/pérdida por estar/visitar en un estado específico.
El siguiente diagrama describe un MCDP en el que se tienen:
1. Tres estados para un cliente: S1 (first time), S2 (repeated purchase) y S3 (loyal customer). 2. Para cada estado se definen las acciones de control del decisor, así para cada estado:
▪ S1: special offer or nothing ▪ S2: club membership or nothing
▪ S3: nothing 3. Para cada decisión se tienen probabilidades de transición y remuneraciones diferentes.
El objetivo del modelamiento es implementar un modelo que maximiza a corto/largo plazo las ganancias del decisor.
MARKOV CHAIN DECISION PROCESS
(REINFORCEMENT LEARNING)
El objetivo del modelamiento es implementar un modelo que maximiza a corto/largo plazo las ganancias
del decisor. Las decisiones se toman con base en una política estacionaria en la que siempre que se llega a un estado i se toma una decisión DCSi,d (será 1 si al llegar al estado i se toma la decisión d).
Existen varias alternativas para resolver el problema de optimización asociado al modelo MDP:; quizás
los métodos más utilizados son Approximate Dynamic Programming (ADP, Bertsekas and Tsitsiklis, 1996; Sutton and Barto, 1998) y Approximate Linear Programming (ALP, Schweitzer and Seidmann,
1985).
En OPCHAIN-SAAM se utiliza un modelo basado en optimización estocástica no-anticipativa (por
escenarios), cuya formulación se basa en considerar múltiples escenarios (trayectorias) en las que los estados de llegada se basan en la simulación sintética Montecarlo y se generan con base en las
probabilidades de transición asociadas a las decisiones. La formulación algebraica del problemas MDP:
es:
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
MDP: = { z = Min eESC i=1,N d=1,DES(i) i,j,d EDEi,j,d,e |
dDEST(i) DCSi,d = 1
i=1,N
EDEi,j,d,e ≤ i,j,d,e DCSi,d
i=1,N , j=1,N, dDES(i) , eESC
DCSi,d{0-1}
i=1,N , j=1,N , dDES(i)
EDEi,j,d,e{0-1}
i=1,N , j=1,N, dDES(i) , eESC
}
donde
N Número de estados DES(i) Conjunto de decisiones asociadas al estado i
ESC Conjunto de escenarios
DCSi,d Variable binaria que será igual a 1 si se toma la decisión d si se llega al estado i
i,j,d Ganancia que se produce si en el estado i se toma la decisión d y se va al estado j
i,j,d,e Series sintéticas de transiciones generadas utilizando simulación Montecarlo. Se debe
cumplir i=1,N i,j,d,e = 1 para cualquier tupla <i,d,e>
EDEi,j,d,e Variable binaria será igual a 1 si se llega al estado j proveniente del estado i si se toma la
decisión d y ocurre el escenario e.
El anterior problema puede resolver un gran número de escenarios si se utilizan metodologías de
optimización de gran escala.
2.7. ADVANCED PROBABILISTIC MODELS
2.7.1. CONTINUOUS DEPENDENT VARIABLES
Para el análisis de variables continuas, OPCHAIN-SAAM se soporta en un modelo genérico de que
permite al usuario configurar múltiples modelos específicos de acuerdo con las particularidades de los procesos aleatorios que afectan a las variables representativas del sistema que se está estudiando. Las
metodologías estadísticas utilizadas para generar el pronóstico se dividen de acuerdo con los elementos
que se modelan: la media y la varianza.
Para modelar la media se utilizan: i) modelos de regresión multivariada y ii) modelos estacionales autorregresivos y de promedios móviles (S-ARIMA); para modelar la varianza se utilizan modelos
GARCH (Generalized AutoRegressive Conditional Heteroskedasticity). Estos modelos se soportan en métodos de optimización, más explícitamente en modelos que minimizan el error cuadrático medio de
la serie “proyectada” para los valores observados, comúnmente conocidos como Ordinary Least
Squares (OLS). Bajo ciertas hipótesis de comportamiento probabilístico, los parámetros y los errores de predicción OLS pueden asociarse a funciones de distribución de probabilidad normal multivariada
coincidiendo con estimadores de máxima verosimilitud (parámetros y errores que maximizan la función de verosimilitud de la muestra) y a estimadores BLUE (Best Linear Unbiased Estimators).
Los modelos matemáticos de OPCHAIN-SAAM se soportan en dos ecuaciones fundamentales: la que explica el comportamiento de la media y la que explica el comportamiento de la varianza. La primera
ecuación es siempre necesaria, en tanto que la segunda, debido a las complejidades matemáticas que implica, en muchos casos es ignorada, lo que conlleva implícitamente que se asume que la varianza del
error de estimación es constante a través todo el período de análisis. Dependiendo de la complejidad
del análisis y del comportamiento de un sistema se elige utilizar un tipo de técnica.
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
2.7.1.1. MODELAMIENTO DINÁMICO DE LA MEDIA
▪ REGRESIÓN MULTIVARIADA
La Regresión Multivariada (RX) es una técnica que relaciona variables independientes con la variable de estudio (variable dependiente). Para su aplicación se necesita la información histórica de la variable
dependiente y de las variables independientes. Matemáticamente se tiene un modelo de la siguiente manera:
yt = xt + t
donde yt representa la variable independiente en el período t, xt el vector de observaciones para el
período t, el vector de parámetros del modelo y t el error de predicción para el período t. El objetivo
del modelo es determinar el conjunto de parámetros “óptimos” que explican la relación entre yt y xt.
Algebraicamente la anterior ecuación puede escribirse como
yt = vVEX v xt,v + t
donde v representa la variable exógena, v el parámetro estimado para dicha variable y VEX el conjunto
de variables exógenas incluidas en el modelo.
Para caracterizar probabilísticamente el comportamiento del término de error, los modelos RX se soportan en la hipótesis de “homocedasticidad” que asume sigue una función de distribución normal
con media cero y varianza constante igual a 2, siendo un parámetro que se debe estimar en el
proceso de estimación de parámetros, consumiendo un grado de libertad del proceso de estimación de parámetros.
Los modelos de optimización asociados a la RX son del tipo de programación cuadrática convexa.
▪ MODELOS ARIMA
Los modelos ARIMA (AutoRegressive Integrated Moving Average) se basan en identificar el tipo de
proceso estocástico que genera la serie de tiempo de una variable dinámica estacionaria sin recurrir a variables explicativas exógenas.
Se parte de una formulación general: un modelo ARMA(p,q) (AutoRegressive Moving Average) donde
figuran tanto p rezagos de la variable estacionaria (componente autorregresivo) y q rezagos de sus
errores estocásticos (componente de promedios móviles), la formulación matemática es:
yt = + i=1,p i yt-i + i=1,q i t-i + t
donde yt representa la variable endógena y los parámetros del modelo son el valor promedio, y i y
i los coeficientes asociados los rezagos de la variable en estudio y t a la serie de errores.
Estos modelos requieren que la serie de tiempo en cuestión sea estacionaria, normalmente es necesario
diferenciar la serie original d veces (componente de integración) hasta obtener una serie estacionaria, dando origen a los denominados modelos ARIMA(p,d,q). Todos estos modelos se soportan en la
hipótesis de “homocedasticidad” del término de error el cual se asume sigue una función de distribución
normal con media cero y varianza constante igual a 2.
Los modelos de optimización asociados a los procesos ARIMA son del tipo de programación cuadrática
con restricciones cuadráticas.
▪ MODELOS ARMAX
La mezcla de los modelos de regresión multivariada (RX) con los modelos ARMA(p,q) da origen a los
denominados modelos ARMAX(p,q) que integran en una ecuación los dos tipos de modelos para
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
explicar el comportamiento de la media del proceso estocástico que rige el comportamiento de la
variable dependiente.
yt = + i=1,p i yt-i + i=1,q i t-i + vVAR v xt,v +t
Los modelos ARMAX(p,q) se soportan en la hipótesis de “homocedasticidad” del término de error y se resuelven por medio de modelos de programación cuadrática con restricciones cuadráticas.
2.7.1.2. MODELAMIENTO DINÁMICO DE LA VARIANZA
La familia de modelos ARCH (AutoRegressive Conditional Heteroskedasticity) y GARCH (Generalized AutoRegressive Conditional Heteroskedasticity) surge, en 1982, posteriormente a los modelos ARIMA,
de la mano de Robert Engle. El modelo ARCH modelo constituyen el primer método formal para determinar un patrón de comportamiento dinámico (variable a lo largo del tiempo) para la varianza. El
planteamiento básico reside en modelizar la varianza de una variable dependiente en función de los
valores pasados de la propia variable y de las variables independientes (exógenas) que se incluyan en el modelo. Esta familia de modelos ha sido comúnmente utilizada para modelar series temporales de
rendimientos de instrumentos financieros, divisas, tasas de interés y otros activos financieros similares.
Las series temporales de alta frecuencia (por ejemplo, diaria, horaria) vienen caracterizadas por ser
asimétricas, leptocurtopicas, con agrupamiento y con una elevada persistencia en volatilidad, con correlaciones en los cuadrados, efecto leverage (apalancamiento); esto aplica principalmente las series
que se observan en los mercados financieros y cambiarios. Para recoger estas características se han planteado una serie de modelos no lineales, entre los que destacan los modelos de la familia ARCH
que tienen como principal objetivo relajar la hipótesis de homocedasticidad, permitiendo variabilidad en el tiempo.
Consideremos un modelo para una serie temporal univariada con base en un sistema de dos ecuaciones que representen simultáneamente la evolución de la media de los rendimientos y su volatilidad, es
decir:
yt = + t
2t = + i=1,p i × 2
t-i + i=1,q j × 2t-j
t N(0,2t)
donde yt representa la variable de interés (la demanda, el rendimiento, el precio, … ) en el período t y
t el desvío estándar asociado a dicha variable. Los parámetros del modelo son el valor promedio,
la varianza mínima, los coeficientes i asociados a los p rezagos de t definen la parte ARCH del
modelo, en tanto que los coeficientes j asociados a los q rezagos de t definen la parte GARCH de la
volatilidad. El anterior modelo se denomina GARCH(p,q).
En este modelo la varianza no condicionada del error es:
Var(t) = (1 - i=1,p i - i=1,q j )
en consecuencia, si no se cumple i=1,p i + i=1,q j < 1 la varianza del error no se encuentra definida.
En tal caso, un choque en la volatilidad no se desvanece a medida que avanza el tiempo, lo que implica
que el proceso no puede predecirse en el futuro. Por lo tanto, para que la varianza del error esté definida la suma de los coeficientes debe ser menor que uno, lo que se convierte en una condición
necesaria y suficiente para garantizar la existencia, estabilidad, de un modelo GARCH.
Existe una gran cantidad de variaciones alrededor del modelo GARCH las cuales se diferencia en la
forma de estimar la varianza 2t. Estos modelos implementados en OPCHAIN-SAAM no se presentan
en este documento.
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
La generalización de los modelos ARIMA y GARH da origen a la familia de modelos ARMAX-GARCH
(Autoregresive Moving Average Model with EXogenous Variables and Generalized Autoregressive Conditional Heteroskedasticity) que tienen la siguiente estructura:
yt = + i=1,p i yt-i + i=1,q it-i + i=1,m k xt,k + t
2t = + i=1,p i 2
t-i + i=1,q j 2t-j
t N(0,2t)
en la que se integran los modelos ARMAX con los GARCH.
Convencionalmente, los modelos GARCH y sus extensiones se estiman por el método de máxima verosimilitud (maximum likelihood), lo cual requiere de supuestos acerca del comportamiento del error
t; sin embargo, bajo hipótesis de normalidad, el proceso de estimación se puede realizar bajo un
enfoque de mínimos cuadrados no-lineales, esto último debido a que los errores son estimados como
parte del modelo básico.
2.7.1.3. FUNCIONES KERNEL NO LINEALES
De manera similar a como se incorporan en los modelos GSVR y ANN las funciones kernel para manejar relaciones no-lineales entre la variable dependiente y las variables independientes, APM se pueden
incluir funciones kernel.
2.7.1.4. MODELOS ESPECIALES
En ciertos casos es conveniente introducir restricciones en el proceso de identificación de parámetros
con la finalidad de corregir ciertos “efectos” que se consideran no deseables y que se pueden controlar
por parte del usuario para producir resultados más “razonables”.
OPCHAIN-SAAM permite incluir restricciones sobre el proceso; por ejemplo: ▪ Proyecciones positivas: restringe el espacio solución a parámetros que producen en el modelo de
positiva (demanda/precios positivos) para todo el período de la muestra histórica;
▪ Parámetros de tendencia positivos: restringe el espacio solución a parámetros positivos para el efecto de tendencia;
▪ Parámetros de elasticidad demanda-precio negativos: restringe el espacio solución a parámetros positivos para el efecto de elasticidad precio.
▪ Condiciones de Coherencia: restringe la solución de los parámetros a valores que son coherentes desde el punto de vista técnico-económico, como es el caso de los modelos de market-share.
El efecto de estas restricciones se refleja en modelos más “coherentes” pero con sesgos, lo que se
visualiza cuando la suma de los errores para el período de calibración es diferente de cero (error sistemático).
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
2.7.1.5. FUNCIONES OBJETIVO
1. MÍNIMOS CUADRADOS
Convencionalmente, los modelos estadísticos se estiman por el método de máxima verosimilitud (maximum likelihood), lo cual requiere de supuestos acerca del comportamiento probabilístico del error
t. Sin embargo, bajo hipótesis de normalidad, el proceso de estimación es equivalente a un enfoque
OLS, lo que convierte a este método en el más utilizado en los procesos de identificación de procesos
estocásticos.
La estimación de parámetros basada en mínimos cuadrados puede ser de varios tipos, dependiendo de la función objetivo que seleccione el usuario. Las posibilidades consideradas son:
▪ Mínimos Cuadrados Ordinarios (OLS, Ordinary Least Squares): corresponde al caso
“normal” en el que la función objetivo a optimizar corresponde a la suma de los cuadrados de los
errores.
z = t t2
▪ Mínimos Cuadrados Ponderados (WLS, Weighted Least Squares): corresponde al caso
especial en que el usuario desea ponderar los errores del modelo de acuerdo con un criterio en el
que la función objetivo a optimizar corresponde a la suma ponderada de los cuadrados de los errores.
z = t t t2
donde t representa el factor de ponderación del error. Este factor de ponderación puede
responder a muchas razones, que pueden provenir de razones estadísticas y/o de razones de toma
de decisiones. A continuación, se planean dos ejemplos:
o Errores heterocedasticos: la heterocedasticidad está relacionada con el hecho de que las varianzas de los errores del modelo no son constantes. En este caso, los errores asociados a
los “puntos” de mayor varianza tendrán mayor peso en la función objetivo, simplemente
porque su magnitud es mayor, una forma de atenuar este efecto es ponderar los errores por un factor cuya magnitud es inversa a su varianza esperada.
o Razones de decisión: En ciertos casos, el usuario, por razones de criterios propios, decide
dar más importancia a un producto, o a una bodega o a un determinado período.
▪ Mínimos en Dos Etapas (2SLS, Two-Stage Least-Squares): corresponde al caso de una
estimación de parámetros en dos etapas: i) Se estiman parámetros con base en el método de mínimos cuadrados ordinarios (OLS),
ii) Se estiman los parámetros por medio mínimos cuadrado ponderados (WLS) utilizando como
factor de ponderación los inversos de los coeficientes de la matriz de covarianza de los errores del modelo OLS.
▪ Minimizar Suma del Valor Absoluto (SVA): se determinan los parámetros de tal forma de
minimizar la suma del valor absoluto de los errores
z = t |t|
▪ Minimizar el Máximo Error: se determinan los parámetros de tal forma de minimizar el valor absoluto del máximo error de estimación
z = MAXt |t|
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
2. MAXIMUM LIKELIHOOD
La estimación de parámetros por el método de máxima verosimilitud (maximum likelihood) se requiere
la definición de la función de verosimilitud de los errores del modelo la cual debe ser maximizada. La
función de verosimilitud corresponde a la función de probabilidad conjunta de los errores del modelo, esto, para errores independientes (no-correlacionados), es:
= LIK(1, 2, 3, … T) = t=1,T pdf(t|)
donde corresponde a la verosimilitud, LIK(1, 2, 3, … T) a la función de verosimilitud y pdf(t|)
a la función de probabilidad de los errores t condicionado en el vector de parámetros . La idea es
maximizar el valor de . Alternativamente se puede maximizar el logaritmo de la función de
verosimilitud lo que es igual a:
Log() = t=1,T Log[pdf(t|)]
Para el caso de una función normal multivariada maximizar el logaritmo equivale a minimizar la suma
de los cuadrados de los errores.
2.7.2. DISCRETE DEPENDENT VARIABLES
En estadística, la regresión binomial (binomial regression) es utilizada para modelar una variable
dependiente binaria (0 o 1); hay al menos tres metodologías para enfrentar el problema: ▪ Discriminant Analysis (DA)
▪ Logistic Regression (LR) ▪ Probit Model
Estos modelos maximizan la verosimilitud de la muestra (maximum likelihood) y difieren en sus
supuestos probabilísticos.
2.7.3. ORDINARY LEAST SQUARES Y SUPPORT VECTOR REGRESSION
Desde el punto de vista de optimización para identificación de parámetros, la diferencia entre Support
Vector Regression (SVR) y Ordinary Least Squares (OLS) es que cuando es igual a cero y p
es igual a 2 el problema matemático a resolver es igual, esto se traduce en que SVR permite una zona
“insensible” de tamaño por debajo del cual los errores “pequeños” se ignoran, lo que da mayor
importancia a los errores “grandes”, esto conlleva que los errores grandes disminuyan aumentando el
valor de los errores pequeños en la zona insensible.
SUPPORT VECTOR REGRESSION
SVR
OLS
OLS Ordinary Least SquaresSVR Support Vector Regression
=0
>0
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
2.8. STATE ESTIMATION
A continuación, se presenta los fundamentos matemáticos básicos del modelaje de estimación de
estado utilizando como referencia la teoría desarrollada por R.E. Kalman (1960) comúnmente conocida
como Kalman Filter (KF, Filtro de Kalman).
2.8.1. MARCO DE REFERENCIA
El enfoque de Estimación de Estado (State Estimation) se soporta en una concepción de los
procesos estocásticos en los que están claramente diferenciadas las variables aleatorias de sus medidas, entendiéndose que lo que dispone el modelador son medidas de las variables aleatorias y
no del verdadero valor de dichas variables.
Por lo tanto, todas las observaciones disponibles son consideradas como variables aleatorias, de las
que se tiene información de sus medidas, pero que, por razón del sistema de medición son sujetas de errores de precisión; por lo tanto, asumirlas como ciertas (determinísticas) induce errores; más aún,
podría existir más de una medida para una misma variable aleatoria, obtenidas por diferentes sistemas de medición.
En el modelaje de estimación de estado se consideran dos tipos de ruidos (errores):
▪ (t), errores debidos al modelaje del sistema, que reflejan la incertidumbre con respecto al
conocimiento de las funciones (ecuaciones y/o parámetros) que determinan el comportamiento del
sistema que se está modelando; y
▪ (t), errores de medición que provienen de la precisión con la que se miden las variables aleatorias
asociadas al sistema.
Desde este punto de vista, los modelos estadísticos convencionales, basados en estadística clásica, solo
consideran un tipo de error, (t), que integra los errores de modelaje y los de medición, en tanto que
el modelaje de estimación de estado diferencia claramente los dos tipos de errores.
La mayor ventaja del enfoque de estimación de estado radica en: DIFERENCIAR LOS CONCEPTOS
DE VARIABLE DE ESTADO Y DE SU MEDIDA.
Otras ventaja es la posibilidad de asumir hipótesis sobre la dinámica de variación de los parámetros de
los modelos matemáticos; Desde este punto de vista deben tenerse en cuenta los siguientes aspectos: ▪ Los estimadores de los parámetros de un sistema son variables aleatorias dependientes de las
observaciones, y por lo tanto deben ser sujetos de ajuste de acuerdo con la información que se va
obteniendo. ▪ Los parámetros de un sistema varían a lo largo del tiempo, ya que muchos de ellos cambian como
consecuencia su evolución técnico-socio-económico y por su evolución natural.
En OPCHAIN-SAAM se utilizan técnicas de estimación de estado para modelamiento de señales continuas. La metodología matemática más conocida es el denominado Kalman Filter (KF) la cual tiene
múltiples variaciones. En OPCHAIN-SAAM se utilizan:
▪ Standard Kalman Filter (KF) ▪ Multi-State Kalman Filter (MS-KF)
▪ Dual Kalman Filter (D-KF)
Los detalles matemáticos de esta metodología no se describen en este documento. Para más
información: ▪ Dynamic Machine Learning using a Multi-State Kalman Filter
https://www.linkedin.com/pulse/dynamic-machine-learning-using-multi-state-kalman-filter-velasquez/
2.9. BAYESIAN ENSEMBLE OF MODELS
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
La Inferencia Bayesiana es un método basado en el Teorema de Bayes que se utiliza para actualizar la
probabilidad de una hipótesis teniendo en cuenta la información que se adquiere como consecuencia de un evento. como más evidencia o información disponible. La inferencia bayesiana ha encontrado
aplicación en una amplia gama de actividades, incluyendo la ciencia, ingeniería, filosofía, medicina,
deporte y derecho.
El Teorema de Bayes resuelve el problema conocido como "de la probabilidad inversa". Esto es, valorar probabilísticamente las posibles condiciones que rigen el evento que se ha observado. Los seguidores
de la inferencia bayesiana afirman que la trascendencia de la probabilidad inversa reside en que es ella
la que realmente interesa a la ciencia, dado que procura sacar conclusiones generales (enunciar leyes) a partir de lo objetivamente observado, y no viceversa.
El Teorema de Bayes expresa la probabilidad condicional de un evento aleatorio A dado B en términos
de la distribución de probabilidad condicional del evento B dado A y la distribución de probabilidad
marginal de sólo A.
Matemáticamente se formula como {A1, A2, A3, … AT} un conjunto de sucesos/eventos mutuamente excluyentes y colectivamente exhaustivos, tales que la probabilidad de cada uno de ellos es distinta de
cero (0); y sea B un evento cualquiera del que se conocen las probabilidades condicionales de B dado un eveto Ai, P(B|Ai); entonces, la probabilidad condicionada de un evento Ai dado el evento B,
P(Ai|B), viene dada por la expresión:
P(Ai|B) = P(Ai) P(B|Ai) / P(B)
donde P(Ai) Probabilidad a priori de Ai
P(B|Ai) Probabilidad a priori de B dado Ai
P(Ai|B) Probabilidad a posteriori de Ai dado B P(B) Probabilidad de B
El Teorema de Bayes puede escribirse como:
P(Modelo|Data) = P(Modelo) [ P(Data|Modelo) / P(Data) ]
o
Probabilidad a Posteriori = Probabilidad a Priori
[ Función de Verosimilitud / Probabilidad de la Evidencia ]
El enfoque bayesiano es particularmente importante en el análisis dinámico de una secuencia de datos, y por sí mismo implica un proceso de aprendizaje a partir de los datos.
Para mayor conocimiento de este enfoque, se sugiere revisar el siguiente documento:
▪ Dynamic Machine Learning using a Multi-State Kalman Filter
https://www.linkedin.com/pulse/dynamic-machine-learning-using-multi-state-kalman-filter-velasquez/
2.10. EFFICIENCY ANALYSIS
La descripción que a continuación se presenta ha sido tomada fundamentalmente del trabajo de Sellers, Nicolau y Más (2002).
En el ámbito de la Economía, la eficiencia hace referencia a un juicio acerca de la relación entre los
medios empleados y los fines obtenidos (Bosch, Pedraja y Suárez, 1998). Una técnica, un procedimiento, una persona o un sistema de producción será eficiente si, dada una determinada
disponibilidad de inputs, es capaz de producir la máxima cantidad de output posible o, alternativamente,
si para alcanzar determinado nivel de output utiliza la menor cantidad de inputs. La unidad organizativa,
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
en adelante DMUs (Decision Making Unit), para las cual se desea medir su eficiencia puede ser de
variados tipos: unidades productivas dentro de una organización, firmas o empresas dentro de un sector, personas/proyectos dentro de una organización.
Para la estimación de las funciones frontera se han propuesto dos tipos básicos de modelos: paramétricos y no paramétricos. La diferencia entre ambos es que los primeros especifican una relación
funcional entre los inputs y los outputs, en tanto que los segundos no imponen relación alguna.
La ventaja de los paramétricos es que, si la frontera está correctamente definida, existen mayores
garantías de que lo que se está identificando como ineficiencia realmente lo sea. Como inconveniente presentan la necesidad de especificar una determinada tecnología de producción que, a priori, puede
ser desconocida. Adicionalmente, no permite analizar de forma sencilla procesos de producción con más de un output. El más conocido es el denominado Stochastic Frontier Analysis (SFA). Por su
parte, la principal ventaja de los modelos no paramétricos es que no requieren de la especificación de
una tecnología de producción, ya que la frontera eficiente es construida a partir de las observaciones existentes en la realidad. El más conocido de los métodos no-parámetricos es el denominado Data
Envelopment Analysis (DEA).
2.10.1. DATA ENVELOPMENT ANALYSIS
El análisis no paramétrico de eficiencia DEA (Data Envelopment Analysis) fue desarrollado por Charnes,
Cooper y Rhodes en 1978 (Charnes et al., 1978) y ha sido utilizado para estimar la eficiencias de DMUs sobre diversos campos de aplicación, como puede observarse en el trabajo publicado por Cooper et al.
en 1999. DEA es un modelo de medición de eficiencia, apoyado en técnicas de programación lineal, que tiene como objetivo evaluar la eficiencia relativa de diferentes DMUs homogéneas. La aplicación
de un modelo específico para cada DMU evaluada, permite obtener una medida de la eficiencia para
cada una de ellas.
La idea básica de DEA es determinar la eficiencia relativa de una DMU a partir del análisis de datos (muestras) de múltiples DMUs que pueden ser comparables. Para analizar la eficiencia de una DMU
en particular, ésta se considera relativamente eficiente si ninguna otra DMU es capaz de producir un nivel superior de outputs utilizando los mismos inputs o producir el mismo nivel de output a partir de
un menor nivel de inputs. Así, se podrá distinguir en principio aquellas unidades que se comportan de
forma eficiente de aquellas que no lo son, de forma que las unidades eficientes definen la “frontera eficiente”.
La frontera eficiente corresponde a la menor envolvente convexa (convex hull) que contiene todos los
datos de las DMUs; las DMUs que quedan sobre la envolvente son eficientes en el sentido que no
existe una experiencia real (datos) que indique que para el input dado/consumo que puede producir un mayor output/producción. En la gráfica se puede observar que las DMUs L5, L6 y L7 son
ineficientes ya que visualmente se identifican mejores posibilidades de uso de los recursos de dichas DMUs; por ejemplo, el área limitada por las líneas rojas implica posibilidades mejor uso de los recursos
(“inputs”) utilizados por la DMU L5.
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
0
1
2
3
4
5
6
7
8
9
0 1 2 3 4 5 6 7 8 9 10 11
Input
Out
put
L1
L2
L3
L4
L5
L6
L7
DEA: DATA ENVELOPMENT ANALYSIS
EFFICIENT FRONTIER
INPUT
OU
TP
UT HIGHER
CONSUMPTION THAN REQUIRED
LESS PRODUCTION THAN POTENTIAL
DEA calcula los índices de eficiencia técnica mediante la solución de múltiples modelos de programación lineal planteados a partir de los datos que representan el “universo” de DMUs que se quiere evaluar.
El objetivo es obtener un escalar que representa la mínima proporción a la que se pueden reducir los consumos de inputs sin que se disminuya la cantidad producida de output.
La mayor ventaja de DEA es su flexibilidad, en el sentido que impone condiciones menos restrictivas
sobre la tecnología de referencia y también en cuanto a que se adapta a contextos multi-producto con
relativa sencillez. Otra ventaja es que permite relacionar simultáneamente todos los inputs con los outputs (Fraser y Cordina, 1999), pudiendo identificarse cuales inputs están siendo infrautilizados.
Una limitación que debe mencionarse sobre DEA es la dificultad conceptual de separar los efectos de
las variables ambientales (no controlables) de los efectos que resultan debido a diferencias de manejo
de los inputs.
Charnes et al. (1978) proponen un modelo orientado a los inputs, con rendimientos a escala constantes, denominados CRS (Constant Return-to-Scale) que considera que si una DMU h utiliza un input
(Inputh) y produce un output (Outputh), la eficiencia relativa de la DMU (Eficiencia-DMUh) consiste
en calcular los cocientes que miden la relación input-output:
Eficiencia-DMUh = Outputh / Inputh
La DMU h más eficiente será la que maximice el anterior valor; sin embargo, en la realidad las DMUs emplean varios inputs para obtener simultáneamente varios outputs. En este caso, se presenta un
problema asociado con la definición de la medida de la eficiencia, dada la falta de homogeneidad
dimensional de los diferentes outputs e inputs. El problema puede resolverse, introduciendo un sistema de pesos adecuados que normalice tanto el numerador como el denominador de tal manera que la
definición de eficiencia es igual a:
Eficiencia-DMU = Suma Ponderada Outputs / Suma Ponderada Inputs
Para el caso de M outputs y N inputs la anterior expresión puede escribirse como:
h = r=1,M h.r Yh.r / i=1,N h.i Xh.i
donde:
h Índice asociado a la DMU r Índice asociado a los outputs
i Índice asociado a los inputs
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
h,r Eficiencia relativa de la DMU h
h,r Peso asociado al output r en la DMU h
h.i Peso asociado al input i en la DMU h
Yh.r Cantidad de output r producido en la DMU h Xh.i Cantidad de intput i en la DMU h
La definición de eficiencia relativa se plantea como el problema de determinar los conjuntos de pesos
h.r y h.i que permiten normalizar tanto los outputs como los inputs. Una primera cuestión consiste en
dilucidar si los pesos a aplicar a las diferentes DMUs deben o no ser los mismos. Los primeros trabajos
en este campo (Farrell, 1957, Farrell y Fieldhouse, 1962) abordan este problema intentando establecer un mismo conjunto de pesos para ponderar los outputs e inputs de todas las DMUs. Por el contrario,
Charnes et al. (1978) sostienen que cada DMU puede valorar sus outputs e inputs de la manera más conveniente.
La forma de determinar los pesos h.r y h.i se constituye el núcleo analítico de DEA. Para el caso de
rendimientos constantes (CRS, sin economías de escala) Charnes et al. proponen un modelo de programación fraccional, cuyas variables representan los pesos más favorables para la DMU h. La
estructura algebraica del modelo es la siguiente:
CRSh: = { Maximizar h = r=1,M h.r Yrh / i=1,N i.h Xih
|
r=1,M h.r Yrh i=1,N i.h Xih
0 ≤ h.r r=1,M
0 ≤ h.i i=1,N
}
La solución del modelo anterior proporciona la cuantificación de la eficiencia relativa de la DMU h con
respecto a las restantes DMUs, así como los valores de los pesos que maximizan la eficiencia. Si en el
óptimo h es igual a 1, la DMU h es eficiente en términos relativos con respecto a las otras DMUs. Por
el contrario, si h es menor que 1 ello significa que, aun eligiendo los pesos más favorables, existen
DMUs que convierten sus inputs en outputs de una manera más eficiente.
Para resolver el modelo de programación fraccional se debe proceder a su linealización teniendo en cuenta que en la maximización de una fracción lo que realmente importa no son los valores individuales,
sino los valores relativos que alcanzan el numerador y el denominador de la fracción. Es decir, se
alcanzará el mismo valor óptimo maximizando la fracción h que maximizando el numerador de esta e
igualando el denominador a una constante. Existen infinitas soluciones óptimas todas ellas
caracterizadas por la colinealidad de los vectores y .
Por lo tanto, se adopta la siguiente formulación lineal:
CRSh: = {
Maximizar h = r=1,M r Yh.r
|
i=1,N i Xh.i = 1
r=1,M r Yh.r - i=1,N i Xh.i 0
0 ≤ h.r r=1,M
0 ≤ h.i i=1,N
}
que genera los pesos óptimos para cada DMU. Para generar las curvas de eficiencia se deben resolver tantos problemas de programación lineal, como DMUs.
Como se mencionó previamente, Los modelos propuestos por Charnes et al. eran modelos inputs-
orientados, con rendimientos a escala constantes, denominados CRS (Constant Return-to-Scale);
posteriormente se extendieron a modelos output-orientados permitiendo estudiar rendimientos a escala variables por medio de los modelos VRS (Varying Return-to-Scale) (Banker et al, 1984) y NIRS (Non-
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
Increasing Returns to Scale) (Bymes et. al., 1984). Posteriormente se desarrolló el modelo FDH (Free-
Disposal Hull (Tulkens, 1993). La formulación de estos modelos no se presenta en el presente documento.
2.10.2. STOCHASTIC FRONTIER ANALYSIS
Stochastic Frontier Analysis (SFA) es una metodología paramétrica de modelamiento económico de la eficiencia que considera la frontera eficiente como una función paramétrica basada en las características
tecnológicas del proceso productivo. Se trata de estimar la función de producción y sus parámetros a
partir de las observaciones existentes en la realidad. Normalmente la forma funcional se basa en funciones de producción tipo Cobb-Douglas o similares. SFA tiene su punto de partida en los modelos
de introducidos simultáneamente por Aigner, Lovell y Schmidt (1977) y Meeusen y Van den Broeck (1977) quienes proponen el siguiente modelo.
Yh = f(xh , ) + h = f(Xh , ) + h - h
donde Xh representa el vector de inputs, Yh el output de la DMU h, el vector de parámetros y f(Xh ,
) la frontera eficiente para la trasformación de inputs en outputs. h representa las desviaciones de la
frontera que están compuestas por h, término de desviación positivo (h 0) que captura la
ineficiencia en el procesamiento de los inputs y h error aleatorio.
Si se dispone de una muestra de inputs y de outpus de varias DMUs, es posible determinar una frontera
eficiente por medio de un enfoque de regresión basados en Mínimos Cuadrados Ordinarios (Ordinary Least Squares, OLS) determinando los errores de predicción, resolviendo el problema SFA-OLS:
SFA-OLS: = { Min z = h h2 h = yh - f (xh , ) }
Para describir gráficamente el anterior caso consideremos un sistema productivo donde y representa
la producción y existe un solo input, x, que representa el costo definiendo como función de producción
y = 0 + 1 x + i
A partir de la recta OLS es posible determinar la DMU más eficiente como aquella que establece el menor costo para producir una unidad de y, la cual correspondería al punto A; de manera general la
DMU más eficiente (A) se determina como aquella que tenga el máximo error negativo en el sentido de la eficiencia. A partir de la anterior información es posible obtener el límite de una frontera eficiente
que pase por el punto (yA,xA) y tenga la misma forma funcional; este método se denomina Corrected
Least Squares (COLS) asociado al problema SFA-COLS:
SFA-COLS: = { Min z = i i2 i = yi - f (xi , ) ; yA = f (xA , ) }
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
OLS
SFA
COLS
Costox
A
Error Datos
Error Datos
Ineficiencia
B
ORDINARY LEAST SQUARES (OLS) - CORRECTED LEAST SQUARES (COLS)STOCHASTIC FRONTIER ANALYSIS (SFA)
Produccióny
El mayor inconveniente es que las desviaciones de la frontera eficiente todas son atribuidas a
ineficiencias, pero algunas diferencias pueden deberse a los datos y a errores de la medida. Así, esta frontera determinística es muy sensible a observaciones “especiales” que tienen un efecto
desproporcionado determinando el valor de los parámetros estimados. Esto se puede resolver incluyendo modelamiento estocástico en el análisis. Este tema no se toca en este documento. Todos
los modelos SFA pueden resolverse con modelos APM y/o GSVR.
2.11. ÁRBOL DE DECISIÓN
Un árbol de decisión es un modelo de predicción utilizado en diversos ámbitos que van desde la
inteligencia artificial hasta la economía. Dado un conjunto de datos se fabrican diagramas de construcciones lógicas, muy similares a los sistemas de predicción basados en reglas, que sirven para
representar y categorizar una serie de condiciones que ocurren de forma sucesiva, para la resolución
de un problema.
Bertsimas y Dunn (“Optimal Classification Trees”, 2015) analizan con detenimiento la aplicación de programación matemática para determinar los arboles de decisión “óptimos”. Los modelos presentados
no se analizan en este documento.
El modelamiento de Arboles de Decisión en OPCHAIN-SAAM está en proceso de estudio.
3. TECHNOLOGY PLATFORM
OPCHAIN-SAAM was implemented using OPTEX Optimization Expert System, it can produce
program algorithms in various optimization technologies. This implies that it inherits all the
characteristics of OPTEX. For more information: https://www.linkedin.com/pulse/optex-optimization-expert-system-new-approah-make-models-
velasquez/
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
3.1. BASIC ALGORITHMS
OPTEX separates completely the mathematical models of optimization technologies, storing the models
in normalized database, allows the user to interact with OPCHAIN-SAAM models to update the
equations according to the changes in its modeling environment. OPCHAIN-SAAM may include
services to design, to implement, to support and to solve quickly optimization models in multiples optimization technologies like GAMS, IBM ILOG CPLEX OPTIMIZATION STUDIO, MOSEL, C,
AMPL, GMPL … .
Next image presents a GAMS and a C computer programs generated by OPTEX.
OPCHAIN-E&GGAMS PROGRAM
GENERATED BY OPTEX
3.2. INFORMATION SYSTEMS
As a complement to other computer systems that require organizations, OPCHAIN-SAAM architecture
is open (the user knows the data-model) to facilitate their integration with other solutions and/or existing technological tools in organizations (ERP, TMS, WMS, GIS).
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
TECHNOLOGICAL CONNECTIVITY
OPCHAIN-SAAMSUPPLY CHAIN OPTIMIZATION
ODBC
MAPING
USERSOPERATIONS
USERSADMINISTRATOR
OPCHAIN-SAAM
DECISION
SUPPORT
INFORMATION
SYSTEM
ERP TMS WMS
INFORMATION
SYSTEMS
GAMS
OPL
LINGO
GMPL
OPCHAIN-SAAM integrate input-output data models around a common data-model, it permits to
connect them automatically through the database.
COMMON
DATA MODEL
INFORMATIONSYSTEM
OPCHAIN-SAAM-ANNArtificial Neural Nets
OPCHAIN-SAAM-MMarkovian Process
OPCHAIN-SAAM-DEAData Envelopment
Analysis
OPCHAIN-SAAM-BAYBayesian
Ensemble of Models
OPCHAIN-SAAM-CLUClustering
OPCHAIN-SAAM-MLMachine Learning
OPCHAIN-SAAM
OPCHAIN-SAAM-KALMANKalman Filtering
OPCHAIN-SAAM-APMAdvanced Probabilistic
Modeling
The data base may be installed any SQL (Standard Query Language) database, including DBF, EXCEL and .csv text files.
OPCHAIN-SAAM takes advantage of the facilities of visual environments found in personal computers,
the ever-greater speed offered by the new family of servers and technological advances in mathematical optimization. The basic user interface (generate by OPTEX) provides an easy environment and the
ability to integrate OPCHAIN-SAAM with the requirements of each client.
4. OPCHAIN-SAAM DOCUMENTS
Below, some applications developed using the OPCHAIN-SAAM algorithms are:
1. OPCHAIN-DCO-DEM: Scientific Marketing Advanced Demand Chain Optimization
https://www.linkedin.com/pulse/scientific-marketing-advanced-demand-chain-jesus-velasquez/
OPCHAIN-SAAM
STOCHASTIC ADVANCED ANALYTICS MODELING
2. OPCHAIN-DCO-MKS: Market Modeling Via Syndicated Databases
https://www.linkedin.com/pulse/market-modeling-via-syndicated-databases-case-jesus-velasquez/
3. OPCHAIN- MS-KF: Dynamic Machine Learning using a Multi-State Kalman Filter
https://www.linkedin.com/pulse/dynamic-machine-learning-using-multi-state-kalman-filter-velasquez/