proyecto

11
Universidad Insurgentes Inteligencia Artificial 2 Proyecto 1 Árbol Genealógico Alejandro Salazar Guerrero febrero 2014 1

description

prroyecto de Rogelioromanifloresunajma-epis 2015

Transcript of proyecto

Page 1: proyecto

Universidad InsurgentesInteligencia Artificial 2

Proyecto 1Árbol Genealógico

Alejandro Salazar Guerrero

febrero 2014

1

Page 2: proyecto

Contenido

I. Objetivo

II. Introducción

III. Desarrollo

IV. Conclusiones

V. Referencias

2

Page 3: proyecto

I. Objetivo

Este proyecto tiene como propósito la presentación y documentación de un programa en Prolog

relacionado con el manejo de un árbol genealógico. Me interesa desarrollar habilidades para

programar en un lenguaje de inteligencia artificial y ver la manera en que se pueden hacer

inferencias lógicas de alto nivel.

3

Page 4: proyecto

II. Introducción

La programación en Prolog, corresponde a la programación de la quinta generación de

computadoras, representa el nivel más desarrollados en cuanto a las posibilidades que tiene la

computadora para emular el pensamiento humano. Prolog es un lenguaje de alto nivel que ha

sido actualizado a la versión Visual para el ambiente gráfico. En el futuro este lenguaje permitirá

llevar a cabo el reconocimiento de imágenes y voz.

El trabajo que presento se basa en la estructura familiar formada por los padres, abuelos y 4

hijos. Se presenta el diagrama del árbol genealógico, el cual permite establecer las relaciones

dentro del programa. Posteriormente se presentan algunas preguntas que se espera que el

sistema responda, y finalmente, el código y ejecución del programa, donde se observa el

funcionamiento del mismo.

4

Page 5: proyecto

III. Desarrollo

La familia está compuesta por 10 miembros: El abuelo paterno (Joel), la abuela paterna

(Luisa), el abuelo materno (Ramiro), la abuela materna (Alicia), el padre de la familia

(Ricardo), la madre (Martha), los hijos (Juan, Luis, Rocío, Mónica).

5

Page 6: proyecto

Preguntas que el sistema responde:

1. ¿ quiénes son los abuelos?

2. ¿ de quién es abuelo Joel?

3. ¿quiénes son los nietos?

4. ¿quiénes son hermanos?

5. ¿quién es la madre de Rocío?

6. ¿de quién es padre Ricardo?

El diagrama muestra la forma en que el programa recorre los contenidos del diagrama de

nodos para establecer las relaciones entre los familiares y llevar a cabo los procesos de inferencia lógica.

Código del programa.

domains nombre=symbolpredicates progenitor(nombre,nombre) hombre(nombre) mujer(nombre) abuelo(nombre,nombre)

6

Page 7: proyecto

abuela(nombre,nombre) padre(nombre,nombre) madre(nombre,nombre) hermano(nombre,nombre) hermana(nombre,nombre) esposa(nombre,nombre) esposo(nombre,nombre) hijo(nombre,nombre) hija(nombre,nombre)clauses hombre(joel). hombre(ramiro). hombre(ricardo). hombre(juan). hombre(luis). mujer(luisa). mujer(alicia). mujer(martha). mujer(rocio). mujer(monica). progenitor(joel,ricardo). progenitor(luisa,ricardo). progenitor(ramiro,martha). progenitor(alicia,martha). progenitor(martha,juan). progenitor(martha,luis). progenitor(martha,rocio). progenitor(martha,monica). progenitor(ricardo,juan). progenitor(ricardo,luis). progenitor(ricardo,rocio). progenitor(ricardo,monica). padre(X,Y):-progenitor(X,Y),hombre(X). madre(X,Y):-progenitor(X,Y),mujer(X). abuelo(X,Y):-progenitor(X,Z),progenitor(Z,Y),hombre(X). abuela(X,Y):-progenitor(X,Z),progenitor(Z,Y),mujer(X). hermano(X,Y):-padre(Z,X),padre(Z,Y), hombre(X), X<>Y. hermana(X,Y):-padre(Z,X),padre(Z,Y), mujer(X), X<>Y. esposa(X,Y):-madre(X,Z), padre(Y,Z), mujer(X). esposo(X,Y):-padre(X,Z), madre(Y,Z), hombre(X). hijo(X,Y):-progenitor(Y,X), hombre(X). hija(X,Y):-progenitor(Y,X), mujer(X).

Ejecución del programa

7

Page 8: proyecto

8

Page 9: proyecto

IV. Conclusiones

hj

9

Page 10: proyecto

V. Referencias

10

Page 11: proyecto

11