Está en la página 1de 5

Asignatura Datos del alumno Fecha

Técnicas de Apellidos: Creix Núñez


Inteligencia 03/02/2020
Artificial Nombre: Gabriel

Actividades

Laboratorio: Inferencia con CLIPS


Entrega del laboratorio
Comando ejecutado en el paso 2 para introducir los hechos iniciales (1.0 puntos):

CLIPS> (deffacts roja


(color roja))
CLIPS> (deffacts verde
(color verde))
CLIPS> (deffacts amarilla
(color amarilla))
CLIPS> (deffacts grande
(tamano grande))
CLIPS> (deffacts pequena
(tamano pequena))
CLIPS> (reset)
<== f-0 (initial-fact)
<== f-1 (color roja)
==> f-0 (initial-fact)
==> f-1 (color roja)
==> f-2 (color verde)
==> f-3 (color amarilla)
==> f-4 (tamano grande)
==> f-5 (tamano pequena)

Comando ejecutado en el paso 3 para introducir la regla que genera hechos de la forma
(manzana roja grande) para todas las combinaciones posibles de color y tamaño (1.25
puntos):

CLIPS> (defrule tipo-manzana


(color ?c)
(tamano ?t)
=>
(assert (manzana ?c ?t))
)

TEMA 9 –Actividades © Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Técnicas de Apellidos: Creix Núñez
Inteligencia 03/02/2020
Artificial Nombre: Gabriel

Comando ejecutado en el paso 4 para introducir la regla que elimina las manzanas
pequeñas que no sean de color verde (1.25 puntos):

CLIPS>(defrule eliminar-pq-noverdes
?rOut <- (manzana ~verde pequena)
=>
(retract ?rOut))

Comando ejecutado en el paso 5 para introducir la regla que afirma que si hay una
manzana roja grande, hay una manzana envenenada (1.25 puntos):

CLIPS> (defrule detectar-envenenada


?rule <- (manzana roja grande)
=>
(retract ?rule)
(assert (manzana envenenada))
(printout t "Hay una manzana envenenada" crlf)
)

Comando ejecutado en el paso 6 para introducir la regla que afirma que si existe una
manzana envenenada, Blancanieves muere (1.25 puntos):

CLIPS> (defrule matar-blancanieves


?rule <- (manzana envenenada)
=>
(retract ?rule)
(assert (blancanieves muerta))
(printout t "Blancanieves esta muerta" crlf)
)

TEMA 9 –Actividades © Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Técnicas de Apellidos: Creix Núñez
Inteligencia 03/02/2020
Artificial Nombre: Gabriel

Salida proporcionada por CLIPS en el paso 9 al ejecutar el comando (run) para una
estrategia de resolución de conflictos en profundidad (0.5 puntos):

CLIPS> (run)
FIRE 1 tipo-manzana: f-1,f-5
==> f-6 (manzana roja pequena)
==> Activation 0 eliminar-pq-noverdes: f-6
FIRE 2 eliminar-pq-noverdes: f-6
<== f-6 (manzana roja pequena)
FIRE 3 tipo-manzana: f-2,f-5
==> f-7 (manzana verde pequena)
FIRE 4 tipo-manzana: f-3,f-5
==> f-8 (manzana amarilla pequena)
==> Activation 0 eliminar-pq-noverdes: f-8
FIRE 5 eliminar-pq-noverdes: f-8
<== f-8 (manzana amarilla pequena)
FIRE 6 tipo-manzana: f-1,f-4
==> f-9 (manzana roja grande)
==> Activation 0 detectar-envenenada: f-9
FIRE 7 detectar-envenenada: f-9
<== f-9 (manzana roja grande)
==> f-10 (manzana envenenada)
==> Activation 0 matar-blancanieves: f-10
Hay una manzana envenenada
FIRE 8 matar-blancanieves: f-10
<== f-10 (manzana envenenada)
==> f-11 (blancanieves muerta)
Blancanieves esta muerta
FIRE 9 tipo-manzana: f-2,f-4
==> f-12 (manzana verde grande)
FIRE 10 tipo-manzana: f-3,f-4
==> f-13 (manzana amarilla grande)

TEMA 9 –Actividades © Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Técnicas de Apellidos: Creix Núñez
Inteligencia 03/02/2020
Artificial Nombre: Gabriel

Salida proporcionada por CLIPS en el paso 12 al ejecutar el comando (run) para una
estrategia de resolución de conflictos en anchura (0.5 puntos):

CLIPS> (run)
FIRE 1 tipo-manzana: f-3,f-4
==> f-6 (manzana amarilla grande)
FIRE 2 tipo-manzana: f-2,f-4
==> f-7 (manzana verde grande)
FIRE 3 tipo-manzana: f-1,f-4
==> f-8 (manzana roja grande)
==> Activation 0 detectar-envenenada: f-8
FIRE 4 tipo-manzana: f-3,f-5
==> f-9 (manzana amarilla pequena)
==> Activation 0 eliminar-pq-noverdes: f-9
FIRE 5 tipo-manzana: f-2,f-5
==> f-10 (manzana verde pequena)
FIRE 6 tipo-manzana: f-1,f-5
==> f-11 (manzana roja pequena)
==> Activation 0 eliminar-pq-noverdes: f-11
FIRE 7 detectar-envenenada: f-8
<== f-8 (manzana roja grande)
==> f-12 (manzana envenenada)
==> Activation 0 matar-blancanieves: f-12
Hay una manzana envenenada
FIRE 8 eliminar-pq-noverdes: f-9
<== f-9 (manzana amarilla pequena)
FIRE 9 eliminar-pq-noverdes: f-11
<== f-11 (manzana roja pequena)
FIRE 10 matar-blancanieves: f-12
<== f-12 (manzana envenenada)
==> f-13 (blancanieves muerta)
Blancanieves esta muerta

TEMA 9 –Actividades © Universidad Internacional de La Rioja (UNIR)


Asignatura Datos del alumno Fecha
Técnicas de Apellidos: Creix Núñez
Inteligencia 03/02/2020
Artificial Nombre: Gabriel

Respuesta a la pregunta planteada en el paso 13. Es decir comentario sobre las


diferencias detectadas en el orden de ejecución de las reglas entre las dos técnicas de
resolución de conflictos aplicadas en los pasos 9 y 12 y explicación del funcionamiento
de estas dos técnicas (3.0 puntos).

En la ejecución con estrategia de profundidad las reglas se ejecutan (fire) a medida


que se activan, sin esperar que termine la regla en actual ejecución; mientras que con la
estrategia de anchura el programa espera que hayan sido ejecutadas todas las
activaciones de una regla para empezar a ejecutar las que se hayan ido apilando, de
menos a más reciente.
Debido a esto, en profundidad Blancanieves fallece antes de acabar la categorización y
análisis de las manzanas, pero en anchura Blancanieves no come la envenenada hasta
que no se han clasificado todas las manzanas.

La estrategia de profundidad sigue una filosofía FIFO, si pensamos que las reglas se van
apilando, la ejecución de las mismas transcurrirá a medida que estas se vayan posando
en la pila.
Por otro lado, la estrategia de anchura sigue una filosofía LIFO, donde las reglas se van
apilando pero la ejecución será desde la primera (menos reciente) que haya sido
introducida en la pila hasta la última.

TEMA 9 –Actividades © Universidad Internacional de La Rioja (UNIR)

También podría gustarte