Inteligencia artificial
tificial
Sistemas de producción/razonamiento
R
n: SI condición ENTONCES acción
condición = {afirmaciones simples-identidad objeto}
acción = {conclusión identificación del objeto}
Inteligencia Artificial
Pares de condición-acción
SI condición (o premisa o antecedente) ocurre;
ENTONCES acción (resultado, conclusión o consecuente) deberá (o debería) ocurrir.
Pueden ser vistas como una simulación del
comportamiento cognitivo de especialistas humanos.
Cada regla representa un “pedazo” de conocimiento independiente.
Representan el conocimiento de forma modular.
tificial
Sistemas de razonamiento
Utilizan:
Lenguaje de representación de conocimiento (KRL)
Lenguaje lógico
¾ Lógica proposicional
¾ Lógica de 1er orden
¾ Lógica temporal
Lenguaje objetos
¾ Frames (marcos)
¾ Redes semánticas
¾ Scripts (guiones) - De clases - De actores
Reglas de producción
Inteligencia Artificial
Deducción: a partir de hechos de conocimiento representados adecuadamente, se utilizan reglas de inferencia válidas para generar nuevos hechos.
Ej.: SI hay fuego, habrá humo.
Abducción: inverso de deducción.
Ej.: SI hay humo, hay fuego.
Tipos de inferencia
tificial
Inducción: Se parte de los hechos en reglas generales.
Ej.: SI Isabel no canta bien, y también Sheila no canta bien, ENTONCES ninguna alumna canta bien.
Analógico: Resolución basada en experiencias pasadas.
Ej.: Demostración automática de teoremas.
Inteligencia Artificial
Probadores de teoremas
9 Utilizan resolución para probar sentencias en lógica de 1er orden.
Usados para tareas matemáticas y de razonamiento científico.
Ejemplos: SAM, AURA, OTTER.
Lenguajes de programación lógica
Restringen a la lógica, no permiten el tratamiento completo de la negación, disyunción y/o igualdad.
Generalmente usan encadenamiento regresivo.
Pueden poseer algunas características no lógicas de los lenguajes de programación.
Ejemplos: Prolog, MRS, Life.
Sistemas de razonamiento
tificial
Sistemas de redes semánticas
9 Consisten en nodos conectados por arcos, donde los nodos representan usualmente objetos del mundo y los arcos una relación binaria entre ellos.
9 Ejemplos: SNEPS, NETL, Conceptual Graphs.
Sistemas frames
9 Consisten en una jerarquía de frames (marcos) conectados por atributos, donde los frames representan objetos del mundo y los atributos muestran usualmente la relación entre ellos.
Ejemplos: OWL, FRAIL, KODIAK.
Sistemas de razonamiento
Inteligencia Artificial
Sistemas de lógica descriptiva
9 Expresan y razonan con definiciones complejas de objetos y clases y, relaciones entre ellas, utilizando redes semánticas como principio de organización.
9 Ejemplos: KL-ONE, CLASSIC, LOOM.
Sistemas de producción
Son representaciones de patrones de sistemas que usan implicaciones.
Las acciones son consecuencias de las implicaciones.
Las acciones pueden ser insertadas y removidas de las bases de conocimiento.
Utilizan encadenamiento progresivo.
Usualmente poseen mecanismos de resolución de conflictos.
Ejemplos: OPS-5, CLIPS, SOLAR.
Sistemas de razonamiento
tificial
Arquitectura: sistema de razonamiento
Agente
sensores
efectores
a m b i e n t e
Base de conocimiento Máquina de inferencia Mecanismo de aprendizaje
Inteligencia Artificial
Operaciones básicas en los sistemas de razonamiento
Adicionar un hecho nuevo a la base de conocimiento.
Adicionar nuevas reglas (Un hecho nuevo, genera nuevas conclusiones).
Decidir si una base de conocimiento atiende a una consulta realizada.
Decidir si una consulta está explícitamente almacenada en la base de conocimiento.
Remover hechos y reglas de la base de conocimiento.
tificial
Mantenimiento: base de conocimiento
Técnicas para mantener una base de conocimiento con recuperación eficiente:
Unificación
Recuperación
Indexación
Basada en tablas
Basada en árboles
Inteligencia Artificial
Encadenamiento progresivo y regresivo
A través del encadenamiento, poder adicionar un nuevo hecho p a una base de conocimiento.
A través de inferencia, encontrar respuestas para las cuestiones hechas a la base de conocimiento.
Usar denominación.
Ex.:
Practica (x, Natación) y Practica (y, Natación) - son denominaciones
Practica (x, x) e Practica (x,y) - no son denominaciones Usar composición de sustituciones.
tificial
Modos de razonamiento
Encadenamiento progresivo (Forward Chaining):
Se parte de sentencias (reglas de inferencia) de la base de conocimiento para producir conclusiones (afirmaciones);
También se llama procedimiento dirigido a datos (Data Driven), pues el proceso de inferencia no es direccionado para resolver un problema particular.
Encadenamiento regresivo (Backward Chaining):
Se parte de una hipótesis a probar, procurando reglas en la base de conocimiento retroactivamente para analizar las asertivas que soportan la hipótesis en cuestión;
SI la premisa (antecedente) es una conjunción, sus términos son procesados uno a uno para que sea obtenido o sea unificador.
Inteligencia Artificial
Conocimiento
• hechos
• reglas de producción
• Redes semánticas
• Frames
• estrategias de resolución de problemas
• estrategias de recuperación ...
Conocimiento del problema
* aserciones relevantes
• reglas relevantes ...
Metaconocimiento
• como activar un
conocimiento relevante Base de conocimiento
Datos simbólicos
• hipótesis actuales
• objetivos actuales
• estado actual del problema
...
Agenda
• conjunto de posibles reglas a ser aplicadas
Memoria de trabajo
Mecanismo de
Inferencia
Arquitectura
tificial
Componentes
Memoria de trabajo de un sistema consiste en una colección de asertivas verdaderas.
Base de reglas es el conjunto de sentencias (reglas de inferencia) que determinan las acciones que deben tomarse de acuerdo con las percepciones.
Motor de inferencia es la parte del sistema que determina el método de razonamiento, utiliza estrategias de búsqueda y resuelve conflictos.
Sistemas de producción
Inteligencia Artificial
Funcionamiento de los sistemas de producción
Tres fases: casamiento, resolución de conflictos y ejecución.
Casamiento
El sistema, en cada ciclo computa un subconjunto de reglas cuya izquierda es satisfecha por los contenidos actuales de la memoria de trabajo.
La forma más simple de realizar unificación y eficiencia, entonces como solución tenemos el algoritmo Rete (rede).
Ventajas del algoritmo Rete:
elimina duplicación entre reglas;
elimina duplicación a lo largo del tiempo.
tificial
Resolución de conflictos
El sistema decide cuáles reglas deben ser activadas.
En esta fase podemos utilizar algunas estrategias de control:
No duplicación: no ejecutar la misma regla ni los mismos argumentos dos veces.
Regencia: preferir reglas que se refieren a elementos de la memoria de trabajo creados recientemente.
Especificidad: preferir reglas que son mas específicas.
Prioridad de operación: preferir acciones con prioridad mayor, especificada por alguna categoría.
Ejecución de acciones
Funcionamiento de los sistemas de producción
Inteligencia Artificial
Un sistema deductivo que identifica animales:
ZOOKEEPER
Características de ZOOKEEPER:
Utiliza reglas con antecedentes;
Genera asertivas intermedias a partir de las reglas;
Combina estas asertivas con las originales para producir una conclusión;
Observa hábitos y características físicas para identificar los animales;
tificial
Reglas:
Q R1: SI x es carnívoro, x es color leonado, x tiene manchas oscuras
Q ENTONCES x es una ONZA
Q R2: SI x da leche
Q ENTONCES x es mamífero
Q R3: SI x tiene plumas
Q ENTONCES x es ave
Q R4: SI x vuela, x pone huevos
Q ENTONCES x es ave
Inteligencia Artificial
Q R5: SI x es ave, x no vuela,
Q x tiene cuello largo
Q ENTONCES x es AVESTRUZ
Q R6: SI x es mamífero, x tiene garras, x tiene dientes agudos.
Q ENTONCES x es carnívoro.
Q R7: SI x es mamífero, x tiene pezuñas
Q ENTONCES x es ungulado.
Q R8: SI x es mamífero, x rumia.
Q ENTONCES x es ungulado.
tificial
Q R9: SI x tiene pelo
Q ENTONCES x es mamífero
Q R10: SI x es carnívoro, x es color leonado, x tiene franjas negras
Q ENTONCES x es TIGRE
Q R11: SI x es ungulado, x tiene patas largas, x tiene cuello largo, x es color leonado, x tiene manchas oscuras
Q ENTONCES x es JIRAFA
Inteligencia Artificial
Q
R
12: SI x es mamífero, x come carne
Q
ENTONCES x es carnívoro
Q
R
13: SI x es ungulado, x es color blanco,
Q
x tiene franjas negras
Q
ENTONCES x es CEBRA
Q
R
14: SI x es ave, x no vuela, x nada
Q
ENTONCES x es PINGUINO
tificial
Q
R
15: SI x es ave, x vuela, x vive en rocas
Q
ENTONCES x es ALBATROS
Q
R
16: SI x es ave, x vuela, x tiene garras
Q
ENTONCES x es AGUILA
Q
R
17: SI x es ave, x vuela, x vive hogar
Q
ENTONCES x es GALLINA
Inteligencia Artificial
Q
R
k: SI xx
1, xx
2, xx
3,
Q
ENTONCES yyy
Q
R
n: SI zz
1, zz
2, zz
3,
Q
ENTONCES cxs
tificial
Encadenamiento progresivo en ZOOKEEPER
Para identificar un animal con ZOOKEEPER:
Hasta que las reglas no produzcan nuevas asertivas;
Hasta que el animal sea identificado.
Para cada regla
Concordar cada uno de los antecedentes de las reglas con los hechos conocidos.
SI todos los antecedentes de reglas están confrontados,
ejecute el consecuente, a menos que ya exista una asertiva idéntica.
Repetir las alternativas que deben ser consultadas.
Inteligencia Artificial
Encadenamiento hacia delante (Progresivo)
Q
Hechos
Q
H
1: z tiene pelo
Q
H
2: z tiene patas largas
Q
H
3: z rumia
Q
H
4: z tiene cuello largo
Q
H
5: z es color leonado
Q
H
6: z tiene manchas oscuras
tificial
Q
R
9establece que z es un mamífero
Q
R
8concluye que z es ungulado,
Q
porque z rumia y es mamífero.
Q
R
11conduce a que z es una jirafa,
Inteligencia Artificial
El flujo de información se da a través de una serie de reglas antecedente-consecuente, a partir de las asertivas para las conclusiones.
R9 Tiene
pelo
Rumia R8
R11 es un mamífero
es un ungulado
es una jirafa Tiene piernas largas
Tiene cuello largo Tiene color leonado Tiene manchas oscuras
tificial
Algoritmo
Q Enc_adelante()
Q HQ ninguna regla produzca una afirmación o el objeto sea identificado
– Seleccionar regla
– Comprobar cada antecedente contra hechos conocidos
– Si corroborados los antecedentes de la regla, instancie el valor de la variable en el consecuente (nuevo hecho)
Q FHQ
Q FinEnc_adelante.
Inteligencia Artificial
Encadenamiento hacia atrás
Q
hipótesis: ¿Z es ONZA?
Q
hechos:
Q
Y tiene pelo,
Q
Y es de color leonado,
Q
Y tiene manchas oscuras
Inteligencia Artificial
Q
R
1= necesita: Z sea carnívoro, de color leonado y tiene manchas oscuras
Q
se busca que Z es carnívoro.
Q
Existen 2 reglas
Q
R
6= debe verificar que Z es mamífero
Q
de nuevo existen dos alternativas R
2y R
9.
Inteligencia Artificial
Q
R
9= Z tiene pelo, luego Z es mamífero
Q
para cumplir que sea carnívoro se requiera que Z coma carne o que tenga garras o.
Q
Aunque se tienen los hechos de : Z es de color leonado y Z tiene manchas oscuras
Q
no se cumple carnívoro
Q
se concluye NO Z es ONZA.
Inteligencia Artificial
Algoritmo
Q Enc_atrás()
Q HQ todas las hipótesis se hayan intentado y alguna no se pueda comprobar o hasta que los objetos sean
identificados
– Para cada regla cuyo consecuente coincida con la hipótesis
Q confronte antecedentes con hechos,
Q SI se cumple V: continúe
Q F: considere el antecedente como hipótesis
– SI todos los antecedentes se corroboraron con hechos
– V: anuncie ÉXITO (hipótesis es verdadera)
– F: anuncie FALLO Q FHQ
Q Fin_alg_enc_atrás.
Inteligencia Artificial
¿Cuál encadenamiento emplear?
Encadenamiento regresivo
Conjunto antecedentes lleve a muchas conclusiones.
Si hechos conducen a conclusiones, pero número de reglas es reducido muchos consecuentes.
Si no tiene hechos, y le interesa saber si una conclusión es verdadera.
tificial
Q Una hipótesis conduce a muchas preguntas
Q Si número de reglas es grande, número de conclusiones es reducido;
Q Si tiene los hechos y desea saber que puede concluir.
Encadenamiento progresivo
Inteligencia Artificial
Ventajas y desventajas de los sistemas de producción
Ventajas
Las reglas son de fácil comprensión.
Inferencia y explicaciones son fácilmente derivadas.
El mantenimiento es relativamente simple, debido a la modularidad.
La “Incertidumbre” es fácilmente combinada en las reglas.
Cada regla es (normalmente) independiente de las otras.
Desventajas
Conocimiento complejo requiere muchas (millares de) reglas.
El exceso de reglas crea problemas para utilizar y mantener el sistema.
No es robusto y no aprende.
La adquisición del conocimiento es difícil.
tificial
Sistemas de inferencia dirigidos a patrones
Programas
IA Convencional
PDIS Otros Orientados a Objetos
Imperativos Funcionales
SBR
PS TS
SBN
Sistemas Lógicos
Sistemas Gramaticales
Donde:
PDIS - Sistemas de inferencia dirigidos a patrones
SBR - Sistemas basados en reglas SBN - Sistemas basados en redes PS - Sistemas de producción
TS - Sistemas de transformación
Inteligencia Artificial
Preguntas
¿Se razona de manera natural con reglas?
¿Las reglas son fáciles de construir?
Sistemas de producción versus Programación lógica.
tificial
S istemas de R eacción B asados en R eglas
Q
La parte del SI
– especifican condiciones que deben satisfacerse.
Q
La parte ENTONCES
– especifica una acción o una operación que debe realizarse (conclusiones).
Inteligencia Artificial
Necesitan:
Q
Memoria de trabajo
Q
Afirmaciones sobre los objetos a manipular
Q
Cuál es el paso que se esta efectuando
Q
Qué objetos ha manipulado
Q
Cuáles falta por manipular.
tificial
BAGGER (pasos)
1. Verificación de la orden: Analiza los productos, detecta cuáles productos lleva y sugiere al cliente productos que faltan.
2. Empaque de productos grandes: Empaca los productos grandes. Botellas primero.
3. Empaque de productos medianos: Empaca
productos de tamaño mediano, productos congelados en empaque especial.
4. Empaque de productos pequeños: Empaca los productos de tamaño pequeño.
Inteligencia Artificial
P roducto T ipo de
em paque
T am año C ongelado
G alletas envase cartón M ediano no
Y ogurt vaso plástico pequeño no
Papas fritas bolsa plástico mediano no
H elado envase cartón mediano si
Pollo bolsa plástico mediano si
G aseosa botella grande no
B ocadillo caja madera grande no
Artículos
tificial
BAGGER requiere saber
Q Cuál es el paso que esta efectuando.
Q Cuál bolsa es la que se está llenando.
Q Qué productos se han empacado.
Paso = verificar orden Bolsa actual = 1
artículos bolsa actual = 0 artículos por empacar = 7
Galletas Yogurt Papas fritas Helado Pollo Gaseosa Bocadillo
Inteligencia Artificial
Q
B
1: SI Paso = verificar orden
Q
Papas fritas se van a empacar
Q
No existe gaseosa en los productos
Q
ENTONCES sugiera llevar gaseosa
Q
B
2: SI Paso = verificar orden
Q
ENTONCES Paso = no verificar orden
Q
Paso = empacar productos grandes
Inteligencia Artificial
Q B2: SI Paso = verificar orden
Q ELIMINE Paso = verificar orden
Q ADICIONE Paso = empacar productos grandes
Q B3: SI Paso = empacar productos grandes
Q Empacar producto grande
Q Producto grande es botella
Q Bolsa con menos de 6 productos
Q ELIMINE Empacar producto grande
Q ADICIONE Producto grande en bolsa actual
Inteligencia Artificial
Q B4: SI Paso = empacar productos grandes
Q Empacar producto grande
Q Bolsa con menos de 6 productos
Q ELIMINE Empacar producto grande
Q ADICIONE Producto grande en bolsa actual
tificial
B5: SI Paso = empacar productos grandes Empacar producto grande
Bolsa vacía disponible ELIMINE Bolsa actual
ADICIONE Bolsa vacía es bolsa actual B6: SI Paso = empacar productos grandes
ELIMINE Paso = empacar productos grandes
ADICIONE Paso = empacar productos medianos
Inteligencia Artificial
Paso = empacar productos medianos
Bolsa actual = 1
artículos bolsa actual = 2 artículos por empacar = 5 Galletas
Yogurt
Papas fritas Helado
Pollo
Inteligencia Artificial
B7: SI Paso = empacar productos medianos Empacar producto mediano
Producto congelado, no empaque especial
ELIMINE Producto congelado no empaque especial ADICIONE Producto congelado empaque especial.
B8: SI Paso = empacar productos medianos Empacar producto mediano
Bolsa actual vacía y sin productos grandes Bolsa con menos de 12 productos
ELIMINE Empacar producto mediano
ADICIONE Producto mediano en bolsa actual
Inteligencia Artificial
B9: SI Paso = empacar productos medianos Empacar producto mediano
Bolsa vacía disponible
ELIMINE Bolsa actual
ADICIONE Bolsa vacía es bolsa actual
B10: SI Paso = empacar productos medianos
ELIMINE Paso = empacar productos medianos ADICIONE Paso = empacar productos pequeños
tificial
Paso = empacar productos pequeños Bolsa actual = 2
artículos bolsa actual = 4 artículos por empacar = 1 Yogurt
Inteligencia Artificial
B11: SI Paso = empacar productos pequeños Empacar producto pequeño
Bolsa actual sin productos grandes Bolsa actual sin productos medianos Bolsa con menos de 18 productos
ELIMINE Empacar producto pequeño
ADICIONE Producto pequeño en bolsa actual
tificial
B12: SI Paso = empacar productos pequeños Empacar producto pequeño
Bolsa vacía disponible ELIMINE Bolsa actual
ADICIONE Bolsa vacía es bolsa actual
B13: SI Paso = empacar productos pequeños
ELIMINE Paso = empacar productos pequeños ADICIONE Empaque finalizado
Terminar
Inteligencia Artificial
Paso = empaque finalizado Bolsa actual = 3
artículos bolsa actual = 1 artículos por empacar = 0
tificial
Sistemas Basados en Casos
Inteligencia Artificial
Sistemas Basados en Casos
El ingeniero observa el mensaje de error que
existe en pantalla, apaga el computador,
busca en su maletín algo. Un diskette. Lo
coloca en la unidad. Prende el computador,
contesta rápidamente a un conjunto de
mensajes y luego dice, listo.
Inteligencia Artificial
El ingeniero nuevo observa el mensaje de error que existe en pantalla, busca en su maletín un libro, pasa cerca de 15 minutos leyendo algunos apartes, pasado ese tiempo, apaga el computador.
Busca un diskette en el maletín, comparando la referencia o titulo del diskette con el que esta en el libro.
Al fin coloca uno en la unidad, prende el computador, contesta cada uno de los mensajes en pantalla después de leerlos adecuadamente y observando el libro; al fin dice, listo.
Inteligencia Artificial
Q En ambos casos la acción tomada fue la misma, sin embargo, los procedimientos usados para llegar a la conclusión fue diferente.
Q El primer ingeniero, se baso en su experiencia.
Q El segundo se remitió a una documentación que contenía solución de problemas, es decir, contenía modelos o casos de solución de problemas.
tificial
Un SRBC
Utiliza una biblioteca, en lugar de un conjunto de principios iniciales.
Debe saber responder a:
Los casos en la memoria y su organización.
Método a utilizar para recobrar los casos.
Cómo adaptar casos almacenados a los nuevos complejos mecanismos para la creación de índices.
Capacidad de recordar experiencias pasadas.
Tomar el mejor caso y adaptarlo a la situación.
Inteligencia Artificial
Sistemas Basados en Modelos
Dependen del conocimiento de la estructura, del comportamiento del equipo,
se razona usando los primeros principios Los modelos: matemáticos o estructurales, especialmente frames y reglas
Las reglas pueden ser:
reglas de simulación o reglas de inferencia.
tificial
Existen otros tipos de sistemas como
...
Inteligencia Artificial
Jackson Peter. Introduction to Expert Systems. 2a ed., Addison-Wesley Publishing Company, 1990.
Russel Stuart; Norvig Peter. Artificial Intelligence. A Modern Approach. Prentice-Hall Inc., 2004.
Winston Patrick Henry. Artificial Intelligence. Addison- Wesley Publishing Company, 1998.
tificial