You are on page 1of 28

1

UNIVERSIDAD PERUANA LOS ANDES


FACULTAD DE INGENIERÍA
CARRERA PROFESIONAL DE INGENIERIA DE
SISTEMAS Y COMPUTACION

INTELIGENCIA ARTIFICIAL

ENCADENAMIENTO HACIAATRAS
Mg. Freddy Toribio Huayta Meza
SE basados en reglas de producción
Newell y Simon (1972): Al resolver problemas, las
Sistemas de personas utilizan su memoria a largo plazo (permanente)
producción que aplican a situaciones actuales contenidas en su
memoria a corto plazo (transitoria). Esto puede generar
modificaciones en la última.

Mundo Exterior
BC Memoria de
(Reglas) trabajo (Hechos)

Motor de Inferencias
SE basados en reglas de producción

Reglas de < CONDICION > < ACCION>


producción

 Son “gránulos” de conocimiento.

Reúnen información relativa a las condiciones de


disparo y a los efectos resultantes del disparo.

 Son estructuras bidireccionales.

SI ?X ES MAMIFERO Y ?X COME CARNE


ENTONCES ?X ES CARNIVORO.
SE basados en reglas de producción
Ventajas:
Naturaleza modular: El conocimiento es fácil de
encapsular y expandir.
 Explicaciones sencillas: El registro de reglas disparadas
permite presentar la cadena de razonamiento asociada.
 Semejanza con el proceso cognitivo humano: modelo
natural del razonamiento humano.
Dificultades:
 Completitud y consistencia como responsabilidad del desarrollador.
 Se necesitan otras estructuras para lograr una visión global del
conocimiento del dominio.

➢Se las combina con otros formalismos


de representación.
SE basados en reglas de producción

MOTOR DE
INFERENCIAS Dos formas de funcionamiento.

Inductivo: A partir de un objetivo intenta BACKWARD


verificar los hechos que los sostienen CHAINING

Deductivo: A partir de los hechos disponibles FORWARD


infiere todas las conclusiones posibles CHAINING
SE basados en reglas de producción
Encadenamiento hacia atrás - Backward Chaining.

BH := CONOCIMIENTO INICIAL (HECHOS).


HASTA OBJETIVO O SIN REGLAS PARA
DISPARAR. Hechos iniciales
REPITA
(1) ENCONTRAR K CONJUNTO DE REGLAS,
CUYAS CONCLUSIONES PUEDEN
UNIFICARSE CON LA HIPÓTESIS (CONJUNTO
DE CONFLICTO).
(2) ELEGIR R DE K SEGÚN ESTRATEGIA DE
SOLUCIÓN DE CONFLICTOS (POSIBLE
BACKTRACKING).
(3) SI LA PREMISA DE R NO ESTÁ EN BH, Objetivo
TOMARLA COMO SUBOBJETIVO.
SE basados en reglas de producción
Backward Chaining: Ciclo base de un motor inductivo.

DETECCIÓN:
✓SI EL OBJETIVO ES CONOCIDO ÉXITO.
✓ SINO, TOMAR LAS REGLAS QUE LO CONCLUYEN (CC).

ELECCIÓN:
✓DECIDIR QUE REGLA APLICAR (RC)

APLICACIÓN:
✓REEMPLAZAR EL OBJETIVO POR LA CONJUNCIÓN DE
LAS CONDICIONES DE LA PREMISA ELEGIDA.
SE basados en reglas de producción
Ejemplo Backward Chaining: Primer paso

BASE DE REGLAS

R1: p  q → s
➢ OBJETIVO: v
R2: r → t
➢ v  BH ?
R3: s  t → u
➢ v  BH
R4: s  r → v
➢ SIGUE

BH: p q r
SE basados en reglas de producción
Ejemplo Backward Chaining: Segundo paso

BASE DE REGLAS ➢ MATCHING CON v


R1: p  q → s ➢CC = { R4 }
R2: r → t ➢ s  BH?
R3: s  t → u ➢ s  BH
R4: s  r → v ➢ s SUBOBJETIVO
➢ SIGUE

BH: p q r
SE basados en reglas de producción
Ejemplo Backward Chaining: Tercer paso

BASE DE REGLAS

R1: p  q → s ➢ MATCHING CON s

R2: r → t ➢CC = { R1 }

R3: s  t → u ➢ p  BH? SI.

R4: s  r → v ➢ q  BH? SI.


➢ DISPARA R1.
➢ BH  s
BH: p q r
SE basados en reglas de producción
Ejemplo Backward Chaining: 4º paso

BASE DE REGLAS

R1: p  q → s ➢CC = { R4 }

R2: r → t ➢ r  BH? SI.

R3: s  t → u ➢DISPARA R4.

R4: s  r → v ➢ BH  v

BH: p q r s
SE basados en reglas de producción
Ejemplo Backward Chaining: 5º paso

BASE DE REGLAS

R1: p  q → s

R2: r → t
➢OBJETIVO OK.
R3: s  t → u
➢ FIN
R4: s  r → v

BH: p q r s v
SE basados en reglas de producción
Encadenamiento hacia adelante - Forward Chaining.

BH := CONOCIMIENTO INICIAL (HECHOS).


HASTA OBJETIVO O SIN REGLAS PARA Hechos iniciales
DISPARAR.

REPITA:
(1) ENCONTRAR K CONJUNTO DE REGLAS
CUYAS PREMISAS CUMPLEN CON BH
(CONJUNTO DE CONFLICTO-CC).
(2) ELEGIR R DE K SEGÚN ESTRATEGIA DE
SOLUCIÓN DE CONFLICTOS (RC).
(3) DISPARAR R Y ACTUALIZAR BH. Objetivo
(RECORDAR R).
SE basados en reglas de producción

Forward Chaining: Ciclo base de un motor deductivo.

DETECCIÓN:
✓DETERMINAR EL CONJUNTO DE REGLAS APLICABLES

ELECCIÓN:
✓DECIDIR QUE REGLA APLICAR (RC)

APLICACIÓN
✓DISPARAR LA REGLA ELEGIDA Y ACTUALIZAR BH.
SE basados en reglas de producción
Ejemplo Forward Chaining: Primer paso

BASE DE REGLAS
➢CC = { R1, R2 }
R1: p  q → s
➢ R1  RC
R2: r → t
➢ DISPARA R1
R3: s  t → u
➢ BH  s
R4: s  r → v
➢ R1 APLICADA

BH: p q r
SE basados en reglas de producción
Ejemplo Forward Chaining: 2º paso

BASE DE REGLAS
➢CC = { R2, R4 }
R1: p  q → s
➢ R2  RC
R2: r → t
➢ DISPARA R2
R3: s  t → u
➢ BH  t
R4: s  r → v
➢ R2 APLICADA

BH: p q r s
SE basados en reglas de producción
Ejemplo Forward Chaining: 3er paso

BASE DE REGLAS
➢CC = { R3, R4 }
R1: (p  q → s)
➢ R3  RC
R2: (r → t)
➢ DISPARA R3
R3: s  t → u
➢ BH  u
R4: s  r → v
➢ R3 APLICADA

BH: p q r s t
SE basados en reglas de producción
Ejemplo Forward Chaining: 4º paso

BASE DE REGLAS
➢CC = {R4 }
(R1: p  q → s)
➢ R4  RC
(R2: r → t)
➢ DISPARA R4
(R3: s  t → u)
➢ BH  v
R4: s  r → v
➢ R4 APLICADA

BH: p q r s t u
SE basados en reglas de producción
Ejemplo Forward Chaining: 5º paso

BASE DE REGLAS

(R1: p  q → s)

(R2: r → t)
➢CC = { }
(R3: s  t → u)
➢FIN
(R4: s  r → v)

BH: p q r s t u v
Sistemas expertos: Metaconocimiento
✓ Es el conocimiento estratégico vinculado a la utilización del conocimiento del
dominio del Sistema Experto.
✓ Es conocimiento que predica sobre el conocimiento involucrado en el sistema.

Métodos de implementación:
✓ Activación o no de grupos de reglas específicas.
Meta-reglas
✓ Ordenación de las reglas dentro de los grupos.

✓ Definición de la búsqueda o no de conceptos asociados.


Funciones
✓PC-PLUS → FINDOUT - NOFINDOUT

Orden de las reglas ✓Posibilidad de asignarles “pesos” numéricos.


✓PC-PLUS → UTILITY.
✓ KAPPA-PC → PRIORITY
Sistemas expertos: Metaconocimiento
Enriquece y aporta a la perfomance de un Sistema Experto y por sus
características incluye:

✓ Elementos en el Motor de Inferencias: Demonios.

✓Elementos en la Base de Conocimientos: Metareglas, PRIORITY, etc.

Ejemplos de Metareglas en SEXP-1

IF Litología_Principal = Arenisca THEN Tratar sólo el grupo de reglas


asociadas.

IF Litología_Principal = Roca_Ignea THEN NoAsk (Lista de valores)


Motor de Inferencias: Estructuras de control
Funcionamiento
Tipo de búsqueda implementada
sistemático

Ruptura

Son procedimientos especiales


Demonios

Elementos de metaconocimiento

Se invocan a partir de cierto conocimiento deducido durante la ejecución de la aplicación.


Estructuras de control: Demonios
El demonio es una estructura de control que Disparador
vigila constantemente el comportamiento del
SE y se activa cuando encuentra Procedimiento
determinadas condiciones en la BC. BC

❖ Difieren de los procedimientos tradicionales, en que estos últimos responden a un


llamado específico que los identifica y pone en acción.

Forward Chaining es un demonio, manejado mediante


Personal Consultant-xx la propiedad ANTECEDENT de las reglas.

Monitores: Demonios que se activan a partir de cómo


Kappa-PC maneja el sistema los objetos con los que se los asocia.
SE: Herramientas
Una herramienta para la construcción de sistemas
expertos (expert system building tools-shell) es un
software para el desarrollo de sistemas expertos,:
• un motor de inferencias,
• forma/s de representar el conocimiento (BC vacía) y
• una interfaz para el usuario final,

➢ permite construir sistemas expertos agregando el


conocimiento específico sobre el dominio particular
que se quiere resolver.
SE: Herramientas
• KAPPA-PC (C - Intellicorp, software liberado)
• CLIPS (C – NASA, software libre)
• JESS (Java - Lic. académica)
-----------
• M1
• Personal Consultant-Easy / PC-Pluss
• INSIGHT 2 +.
• VP-Expert

➢ permiten construir sistemas expertos agregando el


conocimiento específico sobre el dominio particular
que se quiere resolver.
Herramientas: Kappa-PC

KAPPA-PC Es un shell, cáscara o Sistema Experto vacío

Formalismos de representación Reglas y Objetos

El funcionamiento sistemático
Funcionamiento del está definido, pueden
Motor de Inferencias personalizarse características
(Forward-Backward)

Posee herramientas de trace y debug.


¿ Qué es Jess ?
• JESS (Java Expert System Shell).
http://herzberg.ca.sandia.gov/jess/
(ejfried@ca.sandia.gov)
• Diseñado para integrar fácilmente Clips y Java.
• Originalmente (1995) era un clon de Clips,
programado en Java.
• Hoy es mucho más. (versión actual: 7.1)
• Objetivo: Aplicaciones Java + razonamiento de
un sistema experto (reglas+motor de
inferencias). Integración Ontología + inferencia
Características

• Utiliza el algoritmo de Rete para procesar


las reglas.
• Puede obtener mayor rapidez que CLIPS.
• Incluye encadenamiento hacia atrás (5.0)
• Permite manipulación directa de objetos
Java (objetos definidos en Protege)
•Incluye lógica difusa en la 5.0 (FuzzyJess):
http://ai.iit.nrc.ca/IR_public/fuzzyJToolKit.html

You might also like