Beruflich Dokumente
Kultur Dokumente
Lo primero es definir los Hechos para cada signo zodiacal, los cuales se asocian
con la etiqueta horoscopo el cual se estructura de la siguiente manera:
horoscopo (Nombre signo, Da inicio, Mes inicio, Da fin, Mes fin).
Donde Nombre signo, son todos los signos zodiacales; Da inicio y Mes inicio: son
el da y mes de inicio del calendario que representa un signo; Da fin y Mes fin: son
el da y mes de fin del calendario que representa un signo.
1
Jess Andrs Acendra Martnez & Ramiro Jos Verbel de la Rosa
Informe Sistema Experto Horscopo.
Luego de crear los hechos se define la regla que determina el signo zodiacal del
usuario, es nuestro motor de inferencia.
Para que esa hiptesis sea verdad se deben cumplir las dos ramas del rbol.
Se consulta en la base de conocimiento por el hecho horscopo (Signo, D1, M1,
D2, M2), empezando desde el primer hecho declarado.
Encuentra el primer hecho que es: Signo: Aries, D1=21, M1=3, D2=20, M2=4.
Se tiene la primera parte de la hiptesis, ahora se debe cumplir la segunda
((Mes=M1,Dia>=D1);(Mes=M2,Dia=<D2)).
2
Jess Andrs Acendra Martnez & Ramiro Jos Verbel de la Rosa
Informe Sistema Experto Horscopo.
Ahora, la primera rama del rbol es verdadera, pero la segunda no, entonces se da
un fallo en la bsqueda.
Cuando se produce un fallo se replantea la decisin (backtracking) hasta que se
encuentre una solucin exitosa o hasta que se llega al final, en este caso se contina
al siguiente hecho en el orden definido hasta finalizar con todos.
Notamos que al llegar al Hecho: Horosocopo (geminis,22,05,21,06).
Signo: geminis, D1=22, M1=5, D2=21, M2=6.
3
Jess Andrs Acendra Martnez & Ramiro Jos Verbel de la Rosa
Informe Sistema Experto Horscopo.
Se dise la siguiente interfaz, la cual est conformada por un campo para introducir
la fecha de forma fcil un botn que ejecuta la funcin Ver() y un campo donde se
muestran los resultados de la consulta.
4
Jess Andrs Acendra Martnez & Ramiro Jos Verbel de la Rosa
Informe Sistema Experto Horscopo.
5
Jess Andrs Acendra Martnez & Ramiro Jos Verbel de la Rosa
Informe Sistema Experto Horscopo.
Estas reglas parten de unos hechos y segn esos hechos llegan a unas
conclusiones.
Ahora para nuestro sistema experto que determina el signo zodiacal debemos
definir varias cosas.
Primero creamos una clase persona en la cual se definen el mes y da de
nacimiento:
6
Jess Andrs Acendra Martnez & Ramiro Jos Verbel de la Rosa
Informe Sistema Experto Horscopo.
Ahora que tenemos nuestra clase persona, definimos las reglas de nuestro sistema
experto, nuestras reglas tendrn la siguiente estructura:
Aqu estamos diciendo que la regla con nombre Aries se activara cuando el da
ingresado sea mayor o igual a 21 y el mes ingresado sea igual a 3; o, cuando el da
ingresado sea menor o igual a 20 y el mes ingresado sea igual a 4.
Si se cumplen alguna de esas condiciones, entonces se muestra un mensaje
diciendo que su signo zodiacal es Aries.
Y por ltimo se coloca la palabra end para indicar el final de la regla
7
Jess Andrs Acendra Martnez & Ramiro Jos Verbel de la Rosa
Informe Sistema Experto Horscopo.
8
Jess Andrs Acendra Martnez & Ramiro Jos Verbel de la Rosa
Informe Sistema Experto Horscopo.
Como vemos, con Drools partimos de unos hechos, estos hechos pueden satisfacer
una serie de reglas que nos lleven a una conclusin que cumpla con los hechos,
realizando un encadenamiento hacia adelante.
Para poder utilizar Drools en java se hace uso de la Knowledge Session (Sesin de
conocimiento), esta sesin es el componente bsico para disparar las reglas. Es la
sesin de conocimiento que contiene todas las reglas y otros recursos, esta se crea
a partir de una base de conocimiento.
Ya con nuestra sesin creada podemos insertar el objeto con el que se evaluaran
las reglas, en este caso el objeto persona, y al final disparamos todas las reglas
que hemos creado para validar toda la informacin obtenida.
10
Jess Andrs Acendra Martnez & Ramiro Jos Verbel de la Rosa
Informe Sistema Experto Horscopo.
Anexos
Proyecto Horscopo desarrollado en Prolog implementado en Java Aplicacin.
https://drive.google.com/file/d/0B1b0YM_QXyyCczR2Um1ZZWhwNFE/view?usp=sharing
Proyecto Horscopo desarrollado en Drools implementado en Java Aplicacin.
https://drive.google.com/file/d/0B1b0YM_QXyyCalVwOEV3NGV0TWM/view?usp=sharing
rbol de bsqueda realizado por Prolog para resolver una hiptesis.
https://drive.google.com/file/d/0B1b0YM_QXyyCNU94WTYyMEJOMmc/view?usp=sharing
11
Jess Andrs Acendra Martnez & Ramiro Jos Verbel de la Rosa