Árboles de Decisión en CLIPS

INTEGRANTES:
• Rivas Plata Poma, Clark Evan • Nieto Alvarado, Nicolas • Lozada Vargas, Pablo

Árboles de Decisión
• INTRODUCCIÓN • DEFINICIÓN DE ÁRBOL DE DECISIÓN • ELEMENTOS DEL ÁRBOL DE DECISIÓN • ÁRBOLES DE DECISIÓN BINARIOS • ÁRBOLES DE DECISIÓN CON VARIAS RAMAS • PROCEDIMIENTOS PARA RESOLVER UN ÁRBOL • ÁRBOLES DE DECISIÓN QUE APRENDEN

Introducción
• Como forma de representación del conocimiento, los árboles de decisión destacan por su sencillez. A pesar de que carecen de la expresividad de las redes semánticas o de la lógica de primer orden, su dominio de aplicación no está restringido a un ámbito concreto sino que pueden utilizarse en diversas áreas: diagnóstico médico, juegos, predicción meteorológica, control de calidad, etc. • Entre las facilidades de utilizar un árbol de decisiones podemos encontrar que nos permite plantear claramente el problema de tal manera que todas las opciones sean analizadas, hacer un análisis rápido de todas las consecuencias de las posibles decisiones.

Árboles de Decisión
• INTRODUCCIÓN • DEFINICIÓN DE ÁRBOL DE DECISIÓN • ELEMENTOS DEL ÁRBOL DE DECISIÓN • ÁRBOLES DE DECISIÓN BINARIOS • ÁRBOLES DE DECISIÓN CON VARIAS RAMAS • PROCEDIMIENTOS PARA RESOLVER UN ÁRBOL • ÁRBOLES DE DECISIÓN QUE APRENDEN

búsquedas binarias y árboles de juego. • Los árboles de decisión se pueden usar para generar sistemas expertos.  Explica el comportamiento respecto a una determinada tarea de decisión.  Es una magnifica herramienta para el control de la gestión empresarial.Definición de Árbol de Decisión • Técnica que permite analizar decisiones secuenciales basada en el uso de resultados.  Proporciona un alto grado de comprensión del conocimiento utilizado en la toma de decisiones.  Reduce el número de variables independientes. • Las ventajas de un árbol de decisión son:  Facilita la interpretación de la decisión adoptada. .

Árboles de Decisión • INTRODUCCIÓN • DEFINICIÓN DE ÁRBOL DE DECISIÓN • ELEMENTOS DEL ÁRBOL DE DECISIÓN • ÁRBOLES DE DECISIÓN BINARIOS • ÁRBOLES DE DECISIÓN CON VARIAS RAMAS • PROCEDIMIENTOS PARA RESOLVER UN ÁRBOL • ÁRBOLES DE DECISIÓN QUE APRENDEN .

Elementos del Árbol de Decisión Nodos • Representan ubicaciones en el árbol. . Raíz • Nodo donde se inicia el recorrido del árbol de decisión. Ramas • Conectan los nodos padre con los nodos hijos. Hoja • Nodo del árbol que no tiene sucesores.

Árboles de Decisión • INTRODUCCIÓN • DEFINICIÓN DE ÁRBOL DE DECISIÓN • ELEMENTOS DEL ÁRBOL DE DECISIÓN • ÁRBOLES DE DECISIÓN BINARIOS • ÁRBOLES DE DECISIÓN CON VARIAS RAMAS • PROCEDIMIENTOS PARA RESOLVER UN ÁRBOL • ÁRBOLES DE DECISIÓN QUE APRENDEN .

En función de las respuestas a las preguntas de los nodos internos. se va describiendo un camino en el árbol que va desde la raíz hasta una hoja que contendrá la conclusión del sistema. .Árboles de Decisión Binarios • En un árbol de decisión los nodos internos almacenan preguntas y las hojas almacenan posibles respuestas finales.

Para ilustrar la operación de un árbol de decisión consideremos las siguientes heurísticas en la selección del vino apropiado para servir con un alimento: • SI el plato principal es carne roja • ENTONCES servir vino tinto • SI el plato principal es ave y es pavo • ENTONCES servir vino tinto • SI el plato principal es ave y no es pavo • ENTONCES servir vino blanco • SI el plato principal es pescado • ENTONCES servir vino blanco ¿El plato principal es carne roja? SI El mejor color es tinto NO ¿El plato principal es ave? SI ¿El plato principal es pavo? NO NO El mejor color es blanco ¿El plato principal es pescado? SI El mejor color es tinto SI El mejor color es blanco NO El mejor color es el .

Problema 1 • • • • • • • • • • • • • • • • • • • • • • • • • • • (deffacts datos (clase t) (rama sangre-caliente si) (rama ronronea si)) (defrule mamifero (clase t) (rama sangre-caliente si) => (assert (clase mamifero))) (defrule reptil (clase t) (rama sangre-caliente no) => (assert (solucion reptil)) (printout t "El animal es un reptil" crlf)) (defrule gato (clase mamifero) (rama ronronea si) => (assert (solucion gato)) (printout t "El animal es un gato" crlf)) (defrule perro (clase mamifero) (rama ronronea no) => (assert (solucion perro)) (printout "El animal es un perro" crlf)) ¿El animal es de sangre caliente? ¿El animal ronronea? El animal es un gato El animal es un reptil El animal es un perro .

. • No hay interacción con el usuario.Problema 2 • Cada Nodo debe de estar compilado en una regla.

Solución – Problema 2 .

hombre. Para simplificar un poco el SE. así como el hecho de que las personas pueden ser hombre o mujer. por ejemplo). se implementarán reglas para determinar ésta independientemente del sexo. pues es preciso controlar una gran serie de relaciones. teniendo en cuenta el sexo. vamos a suponer que el programa solo va admitir como hechos de entrada las relaciones progenitor-de (si se trata de padre o madre lo deducirá él mediante las reglas que se implementen). y posteriormente otras que hallarán la relación definitiva. El problema puede complicarse bastante.Problema 3 Árbol Familiar • Se pretende diseñar un SE que. y el tipo de relación variará (no será lo mismo sobrino que sobrina. . En cuanto al resto de relaciones familiares. sea capaz de deducir el resto de relaciones entre las personas que se le dan. en base a unos datos de entrada con unas relaciones familiares elementales. mujer y marido-de.

Solución–Problema 3 .

Problema 3 .Solución .

Problema 4 • Representar los nodos del siguiente árbol de decisión como hechos en CLIPS: .

Solución – Problema 4 .

Solución – Problema 4 .

Árboles de Decisión • INTRODUCCIÓN • DEFINICIÓN DE ÁRBOL DE DECISIÓN • ELEMENTOS DEL ÁRBOL DE DECISIÓN • ÁRBOLES DE DECISIÓN BINARIOS • ÁRBOLES DE DECISIÓN CON VARIAS RAMAS • PROCEDIMIENTOS PARA RESOLVER UN ÁRBOL • ÁRBOLES DE DECISIÓN QUE APRENDEN .

Árboles de Decisión con Varias Ramas • Los árboles de decisión binarios dificultan la representación dificultan la representación de una decisión que permita un conjunto de respuestas o casos. • Un nodo de decisión capaz de permitir ramas múltiples daría una solución más directa. .

.Árboles de Decisión con Varias Ramas • Los árboles de decisión binarios dificultan la representación dificultan la representación de una decisión que permita un conjunto de respuestas o casos. • Un nodo de decisión capaz de permitir ramas múltiples daría una solución más directa.

En un árbol de decisión binario .

En un árbol de decisión con varias ramas .

.

.

Árboles de Decisión • INTRODUCCIÓN • DEFINICIÓN DE ÁRBOL DE DECISIÓN • ELEMENTOS DEL ÁRBOL DE DECISIÓN • ÁRBOLES DE DECISIÓN BINARIOS • ÁRBOLES DE DECISIÓN CON VARIAS RAMAS • PROCEDIMIENTOS PARA RESOLVER UN ÁRBOL • ÁRBOLES DE DECISIÓN QUE APRENDEN .

Procedimientos para resolver un Árbol • • • • Procedure Resolver_árbol_binario Establecer la ubicación del nodo raíz en el árbol Al nodo raíz While la ubicación actual es un nodo de decisión do • Preguntar en el nodo actual. • If la respuesta de la pregunta es sí • Establecer el nodo actual en la rama sí • Else • Establecer el nodo actual en la rama no • End if • End do • Devolver la respuesta al nodo actual • End procedure .

• Establecer el nodo actual en el nodo hijo de • La rama asociada con la opción seleccionada.Procedimientos para resolver un Árbol • Procedure Resolver_árbol • Establecer la ubicación del nodo raíz en el árbol en el nodo raíz • While la ubicación actual es un nodo de decisión do • Preguntar en el nodo actual hasta que • Se proporcione una respuesta válida para el conjunto de opciones de este modo. • End do • Devolver la respuesta al nodo actual • End procedure .

Árboles de Decisión • INTRODUCCIÓN • DEFINICIÓN DE ÁRBOL DE DECISIÓN • ELEMENTOS DEL ÁRBOL DE DECISIÓN • ÁRBOLES DE DECISIÓN BINARIOS • ÁRBOLES DE DECISIÓN CON VARIAS RAMAS • PROCEDIMIENTOS PARA RESOLVER UN ÁRBOL • ÁRBOLES DE DECISIÓN QUE APRENDEN .

. • En este caso consideraremos árboles de decisión binarios. es decir. se modifica el árbol para que considere la nueva posibilidad. tales que las posibles respuestas a las preguntas almacenadas en los nodos internos son "si" o "no".Árboles de Decisión que Aprenden • Un árbol de decisión con aprendizaje es un árbol con decisión en el que si la conclusión a la que se llega es errónea (desde el punto de vista del usuario) se pasa a un proceso de aprendizaje en el que. con ayuda del usuario.

.

Es muy grande.? (si o no): si Creo que es un/a elefante ¿Estoy en lo cierto.? (si o no): si .CLIPS • CLIPS> (run) .? (si o no): si .? (si o no): no .Tiene una trompa.Tiene un cuello largo.

? (si o no): si .Es muy grande.CLIPS • Intentemos clasificar un gato ¿Lo intentamos de nuevo.Emite chillidos.? (si o no): no Creo que es un/a ardilla ¿Estoy en lo cierto.? (si o no): no .? (si o no): no .

? Maulla? Ahora ya puedo distinguir un/una gato .• Sesión: Aprendizaje ¿Que animal es? gato ¿Que pregunta se debe contestar afirmativamente para distinguir gato de ardilla.

? (si o no): si .? (si o no): no • CLIPS> .Emite chillidos.• El gato ya esta en la base de conocimiento ¿Lo intentamos de nuevo.Es muy grande.? (si o no): no .? (si o no): no .? (si o no): si Creo que es un/a gato ¿Estoy en lo cierto.? (si o no): si ¿Lo intentamos de nuevo.Maulla.

ÁRBOL MODIFICADO .

CÓDIGO EN CLIPS .

.

.

.

.

.

• D:\SAN MARCOS\INTELIGENCIA ARTIFICIAL\examen lab\sistema experto animales.CLP .

.CLP .EJEMPLO • Genera el siguiente árbol de decisión ¿El animal es de sangre caliente? SI ¿El animal ronronea? NO ¿El animal es una serpiente? SI ¿El animal es un gato? NO ¿El animal es un perro? • Y obtén la siguiente sesión de deducción: ¿El animal es de sangre caliente? (si /no): si ¿El animal ronronea? (si/no): no Deduzco que es un perro ¿Estoy en lo correcto? (si/no): no ¿Cuál es el animal? Pájaro ¿Que pregunta se debe contestar afirmativamente para distinguir entre un Pájaro y un Perro? ¿El animal vuela? Ahora puedo deducir que es un pájaro ¿Intentar otra vez? (si/no): no • .\examen lab\ejemplo arboles-salon.