Title: Inteligencia Artificial Ingenier
1Inteligencia Artificial Ingeniería del
conocimiento y metodologías de resolución de
problemas
- Primavera 2009
- profesor Luigi Ceccaroni
2Fases de la ingeniería del software modelo en
cascada
3Fases de la ingeniería del software modelo en
espiral
4Diferencias de los SBCs
- Sistemas software convencionales
- Algoritmos conocidos y de uso común
- Fácil estimar la naturaleza y cantidad del
conocimiento - SBC
- Conocimiento
- Incompleto
- Impreciso
- Heurístico
- Difícil estimar la naturaleza y cantidad del
conocimiento
5Diferencias de los SBCs
- Solución diseño incremental y prototipado rápido
- Objetivo desarrollar un prototipo funcional que
recoja las funcionalidades básicas del sistema - El análisis y la especificación deben tener en
cuenta el sistema completo. - El diseño e la implementación se limitan al
prototipo inicial. - Este prototipo se completa incrementalmente
- Ventaja se dispone de un sistema funcional
durante todo el proceso.
6Ciclo de vida de un SBC
7Ciclo de vida de un SBC
- Análisis del problema Recopilar información
sobre el proyecto y determinar su viabilidad. - Especiación de requerimientos Fijar los
objetivos y métodos para conseguirlos. - Diseño preliminar Decisiones a alto nivel sobre
el diseño - formalismo de representación del conocimiento
- herramientas
- fuentes de conocimiento
8Ciclo de vida de un SBC
- Prototipo inicial y evaluación Construir un
prototipo con cobertura limitada evaluar las
decisiones de diseño a partir del prototipo. - Diseño final Validar las decisiones y proponer
el diseño del sistema de manera que permita un
desarrollo incremental.
9Ciclo de vida de un SBC
- Implementación Completar la adquisición del
conocimiento, ampliar incrementalmente el
prototipo inicial. - Validación y verificación Comprobar que el
sistema cumple las especificaciones. - Ajustes de diseño Realimentar el proceso.
- Los cambios en el diseño deben se mínimos
- Mantenimiento del sistema
10Una metodología simplificada
- Para aplicaciones pequeñas se puede aplicar una
metodología en cascada que integra todo el
proceso de desarrollo - Identificación del problema
- Conceptualización
- Formalización
- Implementación
- Validación y prueba
11Fases de la ingeniería del conocimiento
Buchanan et al., 1983
Reformulación
Requerimientos
Conceptos
Rediseño
Estructura
Refinamiento
Reglas
12Identificación
- Viabilidad de la construcción del sistema basado
en el conocimiento (SBC) - Búsqueda de les fuentes de conocimiento
(expertos, libros, artículos) - Determinación de los datos necesarios para
resolver el problema - Determinación de los objetivos (soluciones) y de
los criterios que determinan la solución
13Conceptualización
- Esta fase debe proporcionar la perspectiva del
problema desde el punto de vista del experto - Detallar los elementos básicos para caracterizar
el dominio (hechos relevantes) y su relaciones
borrador ontología - Detallar y distinguir entre evidencias, hipótesis
y acciones y descubrir sus relaciones. - Descomponer el problema en sub-problemas
- Caracterizar el sistema de razonamiento
14Formalización
- Esta fase transforma la perspectiva del experto
en la perspectiva del ingeniero del conocimiento - Determinar los esquemas de razonamiento
necesarios - clasificación, diagnosis, planificación temporal,
estructuras causales - Identificar el espacio de búsqueda y el tipo de
búsqueda - Identificar la metodología de la resolución
- clasificación heurística, resolución
constructiva, hipótesis y prueba jerárquica - Analizar la necesidad de tratamiento de la
inexactitud (incertidumbre, imprecisión) y la
completitud
15Implementación
- Ontología formal y completa
- Base de hechos
- Estructura modular de la base de conocimiento
- Reglas de inferencia de los módulos
- Decisiones sobre el control de la resolución
- Meta-reglas
16Validación y prueba
- Determinar un conjunto de casos de prueba y
resolverlos mediante el sistema. - Evaluar el funcionamiento del sistema
(prototipo) - exactitud, completitud, credibilidad
(explicaciones)
17Clasificación de los SBC según las tareas
- Hayes-Roth et al., 1983
- Sistemas de interpretación
- Sistemas de predicción
- Sistemas de diagnóstico
- Sistemas de diseño
- Sistemas de planificación
- Sistemas de supervisión
- Sistemas de corrección/reparación
- Sistemas de control
18Clasificación de los SBC según las tareas
Operaciones de análisis interpretación de un
sistema
Tareas genéricas
Operaciones de síntesis construcción de un
sistema
19Metodologías de resolución de problemas
Clasificación heurística
Resolución de problemas constructiva
Formación de hipótesis y pruebas organizadas
jerárquicamente
20Clasificación heurística
- Es una asociación no jerárquica entre datos y
soluciones, que requiere inferencias intermedias.
- Tiene que existir un conjunto finito de
soluciones a priori. - Es aplicable en operaciones de análisis
- clasificaciones, diagnosis, identificaciones,
monitoreo - Se usa en problemas complejos.
- Si el problema es simple, una asociación directa
entre los datos i las soluciones es suficiente.
21Clasificación heurística
Asociación heurística
Refinamiento y adaptación de la solución
Abstracción de datos
22Clasificación heurística
- Abstracción de datos
- Abstraer los datos del caso concreto para obtener
un caso más general - Tipos de abstracción/generalización
- Abstracción basada en la definición abstraer
características esenciales a partir de una clase
de objetos (taxonomía) - Abstracción cualitativa abstraer sobre medidas
cuantitativas para pasar a medidas cualitativas - Temperatura (P) 38 ºC
- Si Temperatura (x) gt 37.5 ºC entonces
Temperatura (x) es alta
23Clasificación heurística
- Asociación heurística (matching)
- Determinar las relaciones/coincidencias entre
casos abstractos y soluciones abstractas - Ejemplo
- Si Temperatura (x) es alta entonces
tiene-fiebre (x)
24Clasificación heurística
- Refinamiento/adaptación de la solución
- Identificar las soluciones concretas a partir de
las soluciones abstractas y ciertos datos
complementarios - Excluir soluciones poco probables
- Ejemplo
- Si tiene-fiebre (x) ? otros datos entonces
tiene-gripe (x) - P tiene-gripe
25Clasificación heurística ejemplos
MYCIN
26Clasificación heurística ejemplos
- Concesión de créditos para fundar una nueva
empresa - Atributos (ejemplos)
- Apoyo financiero (tiene avales, es-rico...)
- Petición concreta
- Bienes (cuentas-corrientes, casas, coches,
yates...) - Fiabilidad-de-la-devolución (morosidad,
cheques-sin-fondos...) - Compromiso (créditos-anteriores...)
- Soluciones
- Denegación
- Aceptación
- Aceptación con rebaja
- Aceptación con interés preferente
27Clasificación heurística ejemplos
- Reglas de abstracción (ejemplos)
- Bienes lt 10 petición ? Bienes insuficientes
- Bienes 10 petición ? Bienes lt 20 petición ?
Bienes suficientes - Bienes 20 petición ? Bienes excelentes
- Avales 10 petición ? Es-rico ?
Apoyo-financiero bueno - Avales lt 10 petición ? Avales petición ?
Apoyo-financiero moderado
28Clasificación heurística ejemplos
- Reglas de abstracción (ejemplos)
- Cheques-sin-fondos ? Moroso ? Fiabilidad-de-la-dev
olución baja - Empresa es churrería ? Empresa es tienda de roba
? Viabilidad buena - Empresa es hamburguesería cerca de universidad ?
Viabilidad buena - Crédito lt petición ? Compromiso bajo
- Crédito petición ? Crédito lt 10 petición ?
Compromiso mediano
29Clasificación heurística ejemplos
- Reglas de asociación heurística (ejemplos)
- Apoyo-financiero bajo ? Bienes insuficientes ?
Denegación - Apoyo-financiero moderado ? Bienes suficientes ?
Aceptación con rebaja - Apoyo-financiero bueno ? Bienes suficientes ?
Compromiso mediano ? Viabilidad buena ?
Aceptación - Apoyo-financiero bueno ? Bienes excelentes ?
Compromiso alto ? Viabilidad muy buena ?
Aceptación con interés preferente
30Clasificación heurística ejemplos
- Regles de refinamiento/adaptación de las
soluciones (ejemplos) - Aceptación con rebaja ? Petición lt 500k ?
Bienes lt 5 Petición ? Rebaja a 0.6 Petición - Aceptación con interés preferente ? Petición
500k ? Bienes 10 Petición ? Interés
preferente 2 inferior al del mercado
31Clasificación heurística ejemplos
32Resolución constructiva
- No se pueden determinar a priori las soluciones,
que pueden ser infinitas. - Las soluciones se tienen que construir, y no
seleccionar una entre varias posibles. - Es aplicable en operaciones de síntesis
- Planificación
- Diseño
- Diagnosis de múltiples fallos
33Resolución constructiva
- Las soluciones son combinaciones de ciertos
elementos que satisfacen unas restricciones - Planificación Los elementos son acciones y las
soluciones secuencias de acciones que consiguen
un cierto objetivo. - Diseño Los elementos son componentes y las
soluciones combinaciones de componentes que
forman un objeto complejo. - Diagnosis de múltiples fallos Los elementos son
fallos y las soluciones conjuntos de fallos que
concuerdan con los síntomas.
34Resolución constructiva
- La construcción de la solución implica tener
- Un modelo de la estructura del objeto complejo
- Un modelo del comportamiento del objeto complejo
- Un conjunto de restricciones sobre el objeto
complejo
35Resolución constructiva
- Les restricciones pueden ser
- Sobre la configuración de los componentes de la
solución - Restricciones físicas/espaciales cómo se puede
coger un objeto, no se puede colocar un objeto
en un cierto lugar,... - Restricciones temporales qué acción se hace
primero... - Sobre las entradas/salidas de los procesos
constructivos - Pre-condiciones y post-condiciones de
operadores/acciones
36Resolución constructiva ejemplo
- Planificación de la trayectoria (óptima) de un
robot para salir de una habitación con obstáculos - Operadores/acciones
- Avanzar (m)
- Girar (grados)
- Retroceder (m)
- Restricciones
- No puede chocar con ningún obstáculo.
- Al final tiene que estar en la salida.
- Puede hacer sólo los movimientos que indiquen los
operadores.
R
37Resolución constructiva ejemplo
- Configurar/colocar un conjunto de muebles/objetos
en una habitación - Operadores/acciones
- Colocar (mueble, posición)
- Quitar (mueble, posición)
- Intercambiar (mueble1, mueble2)
- Desplazar (mueble, posición 1, posición 2)
- Restricciones
- No se pueden tapar puertas y ventanas de la
habitación - Al final se tienen que haber colocado todos los
muebles - Delante de la pantalla de la Wii tiene que haber
un espacio vacío de 10 m2.
Wii
Sofá
38Sub-métodos de resolución constructiva
- Proponer y aplicar
- Seleccionar un operador para extender soluciones
parciales, partiendo desde cero - Menor compromiso
- Seleccionar el operador de menor compromiso para
extender soluciones parciales, partiendo de una
solución parcial inicial o desde cero
39Proponer y aplicar
- Se busca en el espacio de soluciones parciales.
- Se parte de una solución inicial vacía o una
solución incompleta. - Cada paso va completando la solución.
- Siempre se elige el mejor operador.
- Nos mantenemos en el espacio de soluciones.
40Proponer y aplicar
- Necesitamos conocimiento exhaustivo sobre
- Operadores de resolución del problema
- Restricciones y relaciones entre los componentes
de la solución - Evaluación del efecto de los operadores en la
solución - Evaluación de la bondad de la solución
41Proponer y aplicar
- Podemos plantear la resolución de diferentes
maneras - Construcción secuencial (necesita mucho
conocimiento para ser eficiente) - Descomposición jerárquica de tareas (mas
eficiente, pero requiere obtener operadores de
descomposición)
42Proponer y aplicar
- Inicializar el objetivo (de la tarea a alcanzar)
se crean los elementos necesarios para
identificar el estado inicial. - Proponer operadores se proponen todos los
operadores que pueden actuar sobre el estado
actual. - Eliminar operadores se eliminan ciertos
operadores de acuerdo con criterios globales. - Evaluar operadores se comparan los efectos de
los operadores sobre la solución. - Seleccionar un operador se selecciona el mejor
de los operadores evaluados. - Aplicar el operador se aplica el operador
seleccionado. - Evaluar el objetivo si ya se ha llegado al
objetivo se para, si no se vuelve al paso 2.
43Menor compromiso
- En general, se explora el espacio de soluciones
completas. - Se modifica la solución mejorándola o
corrigiéndola. - La elección del operador a aplicar la define la
estrategia de mínimo compromiso. - Se permite pasar entre el espacio de soluciones y
no soluciones
44Menor compromiso
- Si es posible, comenzar con una solución
completa (o parcial) (que satisfaga las
restricciones), si no comenzar desde cero. - Modificar la solución parcial aplicando el
heurístico del menor compromiso escoger el
operador que imponga menos restricciones sobre
las acciones futuras. - Si la modificación anterior viola alguna
restricción entonces proponer algún cambio
deshaciendo alguno de los pasos anteriores,
procurando que las modificaciones sean mínimas. - Si se ha llegado al objetivo se para, si no se
vuelve al paso 2.