0% encontró este documento útil (0 votos)
33 vistas23 páginas

Introducción a CLIPS: Reglas y Hechos

CLIPS es una herramienta de desarrollo de sistemas basados en conocimiento creada por la NASA en 1986, que permite la programación declarativa, procedimental y orientada a objetos. Soporta la lógica difusa y permite la adición dinámica de reglas y hechos, con un motor de inferencia que utiliza una base de conocimientos y memoria de trabajo. El documento también incluye ejemplos de uso y procedimientos para implementar reglas y hechos en CLIPS.

Cargado por

Oscar Jhin LSG
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
33 vistas23 páginas

Introducción a CLIPS: Reglas y Hechos

CLIPS es una herramienta de desarrollo de sistemas basados en conocimiento creada por la NASA en 1986, que permite la programación declarativa, procedimental y orientada a objetos. Soporta la lógica difusa y permite la adición dinámica de reglas y hechos, con un motor de inferencia que utiliza una base de conocimientos y memoria de trabajo. El documento también incluye ejemplos de uso y procedimientos para implementar reglas y hechos en CLIPS.

Cargado por

Oscar Jhin LSG
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

CLIPS

INTRODUCCIÓN

• Herramienta para SBC (SE) desarrollada desde 1986


por la sección de tecnología de software de la NASA.
• Acceso al código fuente para adaptarlo.
• Es fácilmente integrable en aplicaciones en diferentes
lenguajes y está disponible en Windows, Mac y Linux.
Portable
• Disponible en: [Link]

SOPORTA:
• Programación declarativa: Reglas
• Programación procedimental
• Programación orientada a objetos: COOL (Clips
Object-Oriented Language)
INTRODUCCIÓN

Incluye Extensiones para Lógica Borrosa


(FuzzyCLIPS)

Es un sistema de producción que incluye:


• un sistema de mantenimiento de verdad con
encadenamiento hacia delante
• adición dinámica de reglas y hechos
• diferentes estrategias de resolución de conflictos

Diferencia minúsculas de mayúsculas (palabras


reservadas en minúscula)
Comentarios empiezan con ;
ARQUITECTURA

Motor de Inferencia Memoria


Base de
de Trabajo
Conocimientos
(Hechos)
(Reglas) Agenda

Interfaz
HECHOS

• Es el conocimiento factual
• Son verdades en determinado dominio
• Se almacenan en la Memoria de Trabajo
• Los introduce o define el usuario al hacer una
consulta
• Existen 3 tipos de hechos:
1) Hechos simples
2) Hechos compuestos
3) Plantilla de hechos
EJEMPLO: BIBLIOTECA

HECHOS

documento

libroDisponible prestamo

deuda
ACCIÓN

CONDICIÓN
HECHOS SIMPLES
SINTAXIS: (nombre)
Ejemplo: (notas=buenas)
DEFINICIÓN DE HECHOS INICIALES:
(deffacts nombre
Hecho1
Hecho2
…….)
Ejemplo Biblioteca
(deffacts hechosBib
(libro=disponible)
(deuda=no)
(documento=tiene) )
REGLAS
Se almacenan en la Base de Conocimientos
Definición de una regla
(defrule nombreRegla
condición
=>
acción)
condición: Puede incluir:
• hechos (por defecto ligados con and)
• expresion lógica: operadores and, or, not:
(or hecho1 hecho2 …)
(and hecho1 hecho2 … )
(not hecho)
REGLAS
acción: Puede incluir:
• (assert hecho) inserta hecho a la Base Hechos
• (printout t expresiones crlf) muestra las
expresiones en pantalla. crlf es salto de línea
• Llamados a funciones
• Sentencias (if, while, …)
REGLAS

Ejemplo Biblioteca
(defrule regla1
(libro=disponible)
(deuda=no)
(documento=tiene)
=>
(assert (prestamo=si))
(printout t “se presta el libro” crlf)
)
REGLAS

Ejemplo Biblioteca
(defrule regla2
(or (libro=nodisponible)
(deuda=si)
(documento=notiene))
=>
(assert (prestamo=no))
(printout t “no se presta el libro” crlf)
)
PROCEDIMIENTO EN CLIPS
1. ABRIR EDITOR FILE ->NEW
2. ESCRIBIR EN EL EDITOR:
; HECHOS
; REGLAS
3. GUARDAR: FILE->SAVE AS->[Link]
4. LIMPIAR: EXECUTION->CLEAR CLIPS
5. CARGAR Y COMPILAR: BUFFER->LOAD BUFFER
ERRORES?
si IR A 2

no
IR A 6
6. SELECCIONAR OPCIONES(1 VEZ):
EXECUTION-> WATCH
7. CARGAR LOS HECHOS INICIALES:
EXECUTION->RESET
8. EJECUTAR: EXECUTION->RUN
EJEMPLO PROCEDIMIENTO EN CLIPS

1. ABRIR EDITOR FILE ->NEW


EJEMPLO PROCEDIMIENTO EN CLIPS
2. ESCRIBIR EN EL EDITOR HECHOS Y REGLAS
EJEMPLO PROCEDIMIENTO EN CLIPS
3. GUARDAR: FILE->SAVE AS->[Link]
EJEMPLO PROCEDIMIENTO EN CLIPS
4. LIMPIAR: EXECUTION->CLEAR CLIPS

5. CARGAR Y COMPILAR: BUFFER->LOAD BUFFER


EJEMPLO PROCEDIMIENTO EN CLIPS
SIN ERRORES:

6. SELECCIONAR OPCIONES(1 VEZ):


EXECUTION-> WATCH -> OK
EJEMPLO PROCEDIMIENTO EN CLIPS
7. CARGAR LOS HECHOS INICIALES:
EXECUTION->RESET

8. EJECUTAR: EXECUTION->RUN
PROBLEMAS EN CLIPS
1. ESCRIBIR EN CLIPS LAS REGLAS:
r1 : A = a y B = b entonces C = c
r2 : Si D = d y E = e y F = f entonces G = g
r3 : Si H = h y I = i entonces J = j
r4 : Si C = c y G = g entonces K = k
r5 : Si G = g y J = j entonces L = l
r6 : Si K = k y L = l entonces M = m

Con los hechos iniciales:


A = a, B = b, D = d, E = e, F = f, H = h, I = i
PROBLEMAS EN CLIPS
2. ACONSEJAR A UN BACHILER LA CARRERA Y LA
UNIVERSIDAD PARA ESTUDIAR
FACTOR OBJETO VALOR
NOTAS COLEGIO NOTAEXACTAS Buenas, regulares

NOTASOCIALES Buenas, regulares

NOTANATURAL Buenas, regulares

PREFERENCIA PREFERENCIA medicina, derecho,


INGENIERIAenieria
, otra
CARRERA CARRERA medicina, derecho,
INGENIERIAenieria
, otra
SITU ECONOMICA SITECO Buena, regular

UNIVERSIDAD UNIVERSIDAD UPEA, UCB, OTRA

DISPO CARR UNIV DISPOINGENIERIA UPEA, UCB, OTRA

DISPODER UPEA, UCB, OTRA

DISPOMED UPEA, UCB, OTRA


RELACIONES CAUSALES
Los hechos iniciales están de azul. Las acciones no
pueden ser hechos iniciales
NOTAS
COLEGIO
CARRERA

PREFERENCIA

UNIVERSIDAD
SITUACION
ECONOMICA

DISPONIBILIDAD
CARR UNIV
REGLAS
R1: SI NOTAEXACTAS=BUENAS Y PREFERENCIA=INGENIERIA
ENTONCES CARRERA=INGENIERIA
R2: SI CARRERA=INGENIERIA Y SITECO=BUENA Y DISPOING=UCB
ENTONCES UNIVERSIDAD=UCB
R3: SI CARRERA=INGENIERIA Y SITECO=BUENA DISPOING=UPEA
ENTONCES UNIVERSIDAD=UPEA
R4: SI CARRERA=INGENIERIA Y SITECO=BUENA Y
DISPOING=OTRA ENTONCES UNIVERSIDAD=OTRA
R5: SI CARRERA=INGENIERIA Y SITECO=REGULAR Y
DISPOING=UPEA ENTONCES UNIVERSIDAD=UPEA
R6: SI CARRERA=INGENIERIA Y SITECO=REGULAR Y
DISPOING=OTRA ENTONCES UNIVERSIDAD=OTRA
………..
A) ESCRIBIR LAS 6 REGLAS EN CLIPS (PARA INGENIERÍA)
B) COMPLETAR REGLAS PARA TODOS LOS CASOS
EN AMBOS CASOS INCLUIR LOS HECHOS INICIALES PARA
PREFERENCIA, NOTAS, SITECO, DISPONIBILIDAD DE CARRERAS.
GRACIAS

También podría gustarte