Transcript DSS-4(opt2

Decision Support System
(DSS)
Curso basado en material de Kathryn Blackmond Laskey
Elementos de un DSS:
El subsistema modelo (2)
Otras técnicas de modelamiento
Resumen
• Otras Tecnologías para modelar sistemas
– Métodos Heuristicos para resolver problemas de
optimización
– Inteligencia Artificial y sistemas expertos
– Métodos estadísticos
– Otros métodos
• Asociando tipos de problemas a tipos de métodos
Modelos para apoyar decisiones
• Los modelos pueden apoyar las decisiones de varias maneras:
–
–
–
–
•
Asistir en la formulación del problema
Encontrar la solución óptima (o cercana a la óptima, según el problema)
Asistir en la composición de soluciones a subproblemas
Representar información relevante para la decisión de una forma que a los
tomadores de decisión les quede clara las implicaciones
– Sacar conclusiones de los datos (datos ->información -> conocimiento)
– Predecir los resultados de las soluciones propuestas
– Evaluar las soluciones propuestas
Diferentes técnicas de modelamiento son útiles para diferentes tipos de apoyo
Ejemplo de Heurísticas
• Greedy hill climber
– Empezar con una solución candidata
– Cambiar en la dirección que mejora más la solución
– Nunca ir para atrás
• Descomposición; Divide and conquer
– Partir el problema en subproblemas más simples
– Resolver los problemas por separado
– Recomponer las soluciones
• Búsqueda heurística
– El espacio de búsqueda se puede construir como un árbol
– Políticas para expandir el árbol: depth-first breadth first, best-first
• Aproximar y ajustar
– Usar métodos de aproximación rápidos/baratos/disponibles
– Ajustar la solución
– Usar técnicas de LP en problemas enteros y ajustar la solución a
valores enteros.
Heu. de analogía con la naturaleza
• La naturaleza es un optimizador eficiente
– Aplicación de métodos basados en analogía a los sistemas
naturales
• Cocimiento simulado
– Modificar la solución actual al azar y evaluar la función
objetivo
– Aceptar la nueva solución si es mejor que lo anterior. De lo
contrario, aceptar con probabilidad dependiendo de la
“temperatura” del sistema
– Disminuir poco a poco la temperatura (que sea más difícil de
aceptar peores soluciones)
• Los algoritmos evolutivos
– Mantener una "población" de soluciones
– Reproducir las soluciones con # crías dependiendo de la
función objetivo (supervivencia del más apto)
– Aplicar los operadores de la evolución para cambiar las
soluciones de generación en generación (por ejemplo, cruce,
mutación)
Sistemas basados en el
conocimiento
• La premisa básica: la solución inteligente de problemas
requiere una aplicación flexible de los conocimientos
• La función clave: la representación por separado del
conocimiento con la aplicación para resolver problemas
• Ventajas:
– La aplicación oportunista de los conocimientos
– Flexibilidad para tratar las diferentes estrategias de solución
– Facilita la modularidad, facilidad de mantenimiento, la capacidad de
explicar el razonamiento a los usuarios
Elementos de un sistema genérico
basado en el conocimiento
• Base de conocimiento
– Hace generalizaciones sobre el dominio
– R1: “si GPA de <x> es inferior a 5,0 entonces <x> no es
elegible para el programa de MS/BS combinado "
• La memoria a largo plazo
– Datos sobre el mundo
– F1: “el GPA de G12345678 es de 4.75"
• Motor de Inferencia
– Usa R1 y la F1 y los pasos lógicos para concluir
"G12345678 no es elegible para el programa combinado
de BS/MS“
• La memoria de trabajo
– Guarda los resultados de los cálculos
– Recibe entradas del mundo exterior
– Datos son leídos y escritos en LTM y KB
• Estrategia de control
– Establece prioridades
– Decide en qué orden hacer las tareas
Representación del conocimiento
del dominio
•
El conocimiento es diferente de la información
•
Problemas difíciles en una representación pueden ser fáciles en otra:
•
Una base de conocimientos contiene las estructuras que representan:
•
– Estructuras de conocimiento reflejan la estructura del dominio
– Razonadores acceden y manipulan estas estructuras
– La representación es un sustituto de las entidades
– Ejemplo: aritmética en números romanos y árabes
–
–
–
–
–
Tipos de entidades que pueden existir en el mundo
Atributos de cada tipo de entidad
Relaciones que las entidades tienen entre sí
Procesos en que participan las entidades
Instancias individuales de las entidades con tipos, relac., atrib., y comp.
Una representación formal de un conocimiento acerca de un dominio es
también llamada ontología
– Ontologías representan semánticas que facilitan el re-uso, compartir e
interoperabilidad semántica
•
Razonadores usan el conocimiento guardado e información entrante para
generar nuevo conocimiento
Ejemplo de Estructuras de
Conocimiento
• Reglas
– Conocimiento del tipo IF-THEN
– Permite al sistema derivar consecuencias del conocimiento
– Sistema basado en reglas
• Representa el conocimiento como reglas y razones aplicando reglas
• Una de las primeras y más populares tecnologías de la Inteligencia
Artificial
• Clases de Objetos e Instancias
– Representan tipos de entidades y atributos específicos del tipo
– Sub-sistemas pueden heredar la estructura y propiedades de los
tipos padres
– Instancias representan entidades específicas de un tipo
• Redes Semánticas
– Organizan el conocimiento como relaciones entre entidades
– Nodos representan entidades, arcos representan relaciones, los
arcos están etiquetados con el tipo de relación
Estadística
• La estadística es el uso de datos para extraer inferencias
acerca de fenómenos poco conocidos
– Muchos métodos de representación del conocimiento, el
análisis de decisiones, y de IA usan distribuciones de
probabilidad de representar resultados inciertos
– Las distribuciones son especificadas usando una combinación de
teoría, conocimientos especializados y observaciones
– La Estadística proporciona métodos para derivar inferencias bien
justificadas a partir de los datos
• La estadística incluye también la creación de resúmenes
de observaciones que serán útiles para los DM
– Muestras gráfica
– Resúmenes numéricos
Métodos Estadísticos
• Análisis exploratorio de datos
–
–
–
–
Herramientas gráficas para la visualización de datos
Métodos de transformación de datos
Métodos de detección de valores atípicos
Métodos exploratorios robustos para la identificación de las tendencias y los
patrones
– Agrupación (clustering)
• Construcción de modelos estadísticos y evaluación
–
–
–
–
Estimación de parámetros
Prueba de las hipótesis y el modelo de evaluación
Selección del modelo
Reconocimiento de patrones estadísticos
• Métodos de diseño de muestreo
– El diseño experimental
– Diseño de la encuesta
– El diseño de los estudios observacionales
Tipos de modelos estadísticos
• Regresión
– Estimación de una ecuación que relaciona una variable
dependiente con una o más variables independientes
- Ejemplo: examinar la relación entre el ingreso (monetario) de las
familias de los estudiantes y su ingreso a la universidad
• Análisis de la varianza
– Evaluar si el valor promedio de una respuesta es diferente para
distintos grupos de individuos
– Ejemplo: evaluar si los pacientes que toman un medicamento no
se mejoran mas rápido que los pacientes que tomaron un placebo
• Modelos de series temporales
– Examinar las tendencias y/o ciclos de datos a largo plazo
– Ejemplo: predecir el precio de una acción
Regresión lineal en Excel
•
Los datos sobre el alquitrán, la nicotina, el peso y el CO en 25 marcas de cigarrillos descargados de
http://www.mste.uiuc.edu/regression/cig.html
– Componentes independientes de valor (evitar consideraciones dobles)
Redes neuronales
• Filosofía conexionista
– Comportamiento complejo proviene de las interacciones
entre las simples las unidades de cómputo
– Analogía natural: simular el comportamiento inteligente,
utilizando el proceso del modelo del cerebro humano
• Una red neuronal consiste en
– Un amplio conjunto de unidades de cómputo simples o
nodos
– Vínculos o conexiones entre los nodos
• El aprendizaje se produce mediante el ajuste de los
fuerzas de las conexiones
– Aprendizaje supervisado: Regresión
– Aprendizaje no supervisado: clustering
Una red feedforward simple
Podemos pensar en una red neuronal
feedforward como una
modelo de regresión no lineal:
y ~ f (y | x, w) en que y denota el nodo (s)
de salida, w denota el vector de peso
x denota el nodo de entrada . Aprender los
pesos corresponde a la estimación de los
parámetros del modelo de regresión
Una buena discusion de las relaciones entre redes neuronales y métodos
estadísticos se puede encontrar en
http://www.faqs.org/faqs/ai-faq/neural-nets/part1/section-15.html
Machine Learning
• Machine Learning (Aprendizaje automático) es la disciplina
dedicada al desarrollo de métodos que permiten a los
computadores "aprender" (mejorar el rendimiento sobre la
base de los resultados de los resultados anteriores)
• Machine Learning se basa en la inteligencia artificial, métodos
de la informática, y las estadísticas
– Extracto de las regularidades de las muestras de datos
– Construcción de estructuras de conocimiento (por lo
general normas) que caracterizan las regularidades
– Evaluar el desempeño contra de las muestras no vistas
antes
Data Mining
• La revolución informática ha creado los vastos archivos de datos
• La minería de datos es una colección de métodos de las estadísticas,
ciencias de la computación, la ingeniería y la inteligencia artificial para
identificar patrones interesantes
• Hay gran solapamiento con Machine Learning
– En la Machine Learning se hace hincapié en el uso de datos para
mejorar el rendimiento en una tarea bien definida de acuerdo con
alguna medida de desempeño (inducción)
– En la minería de datos se hace hincapié en la identificación de
patrones interesantes en los grandes volúmenes de datos
(descubrimiento)
– Tanto el aprendizaje automático y minería de datos requieren un gran
uso de métodos estadísticos
• El término minería de datos a largo plazo se utiliza a veces
peyorativamente, en el sentido de la pesca de patrones de espurios para
preparar explicaciones post-hoc
Knowledge Discovery &Data Mining
Fuente: Data Mining to Knowledge Discovery in Databases (PDF), Usama Fayyad, Gregory PiatetskyShapiro, and Padhraic Smyth, AI Magazine 17(3): Fall 1996, 37-54 http://www.kddnuggets.com
Métodos de la Economía
•
•
•
•
Modelos microeconómicos
– Analizan los sistemas económicos en los que las empresas y agentes se
modelan como maximizadores de utilidad
– Estático: análisis de equilibrio
– Dinámico: analizar el comportamiento en el tiempo
Teoría de Juegos
– Varios jugadores cada uno las acciones posibles y funciones objetivos
– La economía es un juego de muchas personas
Los modelos macroeconómicos (econometría)
– Una estimación estadística de las relaciones entre las variables económicas
Costo / beneficio
– Beneficios de la opción política propuesta se cuantifican en términos
monetarios y son evaluados en relación con los costos
Análisis costo-beneficio vs.
Utilidad multiatributo
•
Conceptualmente ambos abordan el mismo problema
•
Ambos traducen costos y beneficios a una misma unidad
– ACB: traduce todo a unidades monetarias
– UMA: traduce todo a unidades de utilidad
•
Problemas de ACB:
– Tendencia a ignorar atributos no medibles
– Mide costos sociales como “disposición a pagar”
•
Objetivo
– ACB maximiza la razón costo/beneficio (bueno para asignar recursos limitados a
múltiples proyectos)
– elige la opción con la utilidad esperada más alta (bueno para la selección de la
mejor opción única)
Métodos de la ciencias de la
administración
• Planificación de proyectos y la programación de los métodos
- Cartas de Milestone
- Los diagramas de Gantt
- Método del Camino Crítico (CPM)
•
Métodos de seguimiento de los proyectos
- Análisis del valor acumulado
Métodos de contabilidad y
finanzas
•
•
En realidad, no son una categoría separada de modelado de métodos
– Usa métodos de la optimización, estadística, economía, y otras disciplinas
Ejemplos de tipos de modelo común
– Análisis de rendimiento de la inversión
• Identificar el período de tiempo para pagar la inversión
– Análisis del punto de equilibrio
• Identificar los ingresos necesarios para cubrir los costos de un producto
– Predicción de suministro, la demanda, las tasas de interés, etc.
– Estimación de Costos
• Ejemplo : COCOMO es un modelo para estimar el costo de software proyectos
• Ver http://www.softstarsystems.com/overview.htm para una descripción
Algo de Filosofía
• El resultado más valioso de un buen modelo es el “insight”
que provee del problema
• aceptación ciega de la "respuesta de la computadora" es casi
siempre un error
– A veces un examen más detallado del resultado poco
intuitivo revela aspectos no modelados del problema
• A menudo se puede ganar mucho en “insight” con un análisis
menos que completo
Análisis de sensibilidad
• Implica variar los parámetros del modelo para ver cómo
cambia la respuesta
• Es una componente muy importante en modelos
exploratorios
– Ayuda a que el modelo no sea considerado como
“correcto”
– Ayuda a explorar implicancias de supuestos alternativos
– Es difícil modelar la interacción humano computador para
un buen análisis de sensibilidad
• En muchos modelos tenemos que hacer supuestos que no
podemos probar
Evaluación del Modelo
• Verificación: evaluar si el modelo implementado es
correcto y produce los resultados para los que fue
diseñado
• Validación: evaluar si el modelo reproduce el
fenómeno que se está modelando
• ¿Por qué la verificación y la evaluación en sí son
insuficientes para la evaluación del modelo?
Algunos enfoques de evaluación
de modelos
• Compara resultados del modelo con la realidad
– Calidad de los resultados
– Cuantos casos cubre
– Cubre todas las condiciones relevantes
– Podemos instrumentalizar todas las variables?
– Fidelidad de las condiciones de testeo con la realidad
• Comparar resultados del modelo con juicio de expertos
Evaluación de modelos para DSS
• En un entorno de apoyo a la decisión estamos
preocupados de la calidad de la combinación Modelo + Decision Maker
• Tenemos que evaluar si el apoyo a
la toma de decisiones funciona mejor que
– El DM solamente
– Modelo único
• Parámetros incluyen
– Calidad de resultados
– Tiempo para la solución
– Conocimiento de la solución por las partes interesadas
– Compra por la organización
Selección del método
• Problema tipo 1: apoyo a la decisión general
de problemas mal estructurados
–
–
–
–
–
–
• No hay incertidumbre, objetivos múltiples -> MAU
• Hay incertidumbre , objetivo simple -> diagrama de influencias
• Hay incertidumbre, objetivos múltiples -> MAU combinado con diagrama
de influencia
Sistemas expertos para sugerir los valores por defecto para parámetros
(reduce la carga de obtención)
Resolver diagrama de influencia
Modelo MAU
Métodos de análisis de sensibilidad
Brainstorming de ideas o mapas cognitivos para definir el problema
Sistema Expertos basado en reglas para sugerir enfoques de solución y ayudar
en la construcción de modelo
Selección del método
• Problema tipo 2: Problema de optimización con
restricciones y función objetivo complejos
– Uso simplificado modelo de programación matemática que
no toma en cuenta todos los aspectos del problema
– Utilizar búsqueda heurística para modificar los resultados
del modelo
– Utilizar estimación estadística de parámetros y/o sistema
expertos y/o de ingreso de valores de parámetros por el
usuario (restricciones, función objetivo)
Selección del método
• Problema tipo 3: diseño de un plan o mejora de un sistema
complejo
– Construir el modelo causal del sistema existente
– Utilizar los métodos estadísticos para estimar los
parámetros del modelo
– Uso de simulación para predecir la evolución del sistema
– Utilice los experimentos diseñados para probar la causa y
el efecto de los supuestos
– Utilizar el análisis de sensibilidad para investigar cómo
afectan distintos valores a los resultados
Selección del método
•
Problema tipo 4: Identificación de los patrones en grandes base de datos de
datos de alta dimensión
– Redes neuronales (aprendizaje no supervisado)
– Análisis de clusters
– Análisis exploratorio de datos en gráficos
•
Problema tipo 5: Clasificar nuevas observaciones
en categorías, donde se definen las categorías
de acuerdo con una amplia muestra de ejemplares
– Análisis discriminante
– Red neuronal
– Algoritmo genético
– Recocido simulado
– Red de aprendizaje bayesiano
Selección del método
• Problema tipo 6: Clasificar observaciones en categorías cuando no hay una
base de datos pre-definida de ejemplares
– Sistemas expertos
– Redes bayesyanas
– Redes neuronales (entrenada por ejemplos generadas por humanos
• Problema tipo 5: seleccionar opciones de grandes bases de datos
clasificadas en muchas dimensiones
– Utilidad de múltiples atributos
– proyecciones
– Políticas de captura
Selección del método
• Problema Tipo 8: Seleccionar la mejor opción de
un espacio de opciones implícitamente dada por una
medida del rendimiento
- Programación matemática
- Búsqueda heurística
- Algoritmo genético
- Recocido simulado
• Problema Tipo 9: Predicción de valores futuros
de alguna variable o variables
- Métodos de series de tiempo
- Métodos macroeconómicos
- Métodos de simulación
Administración del Modelo
• DBMS permiten al usuario almacenar y recuperar los datos independiente
de la representación física en el computador
• MBMS permite al usuario a invocar y ejecutar modelos independiente de
la implementación particular de los modelos
– Paradigma de los modelos como datos está ganando terreno
– Parámetros y supuestos representados explícitamente en lugar de
estar escondidos los códigos del computador
• Facilita la aplicación flexible y la reutilización
• A diferencia de DBMS, no han surgido MBMS estandarizados
– Hay muchos tipos diferentes de modelos, cada uno con estructuras,
usos y métodos especializadas,
– Construcción y aplicación de modelos requiere conocimientos
especializados
Actividades apoyadas por los MBMS
• Acceder y recuperar los modelos de
• Ejercitar los modelos
– Especificar los parámetros del modelo
– Relacionar los modelos
– Control de ejecución de los modelos
• Manipulación de modelos
– Cambiar los supuestos y/o valores de los parámetros
– Guardar modelos y sus resultados
• Mantener los modelos, Crear nuevos modelos