- Obtener vínculo
- X
- Correo electrónico
- Otras apps
En ésta ocación les vengo compartiendo un programa hecho en Visual Prolog, el cual se comporta de manera inteligente, cumpliendo con las siguientes tareas:
Considerando el árbol genealógico de su familia y tomando al menos 60 hechos: padre, madre, y sexo. Crear un programa en Visual Prolog que realice los razonamientos inteligentes siguientes:
Crear un menú con las siguientes opciones:
MENU DE OPCIONES DEL ARBOL GENEALOGICO
1.- Relación Nieta
2.- Relación Primo
3.- Relación Tío
4.- Relación Padre
5.- Relación Bisabuela
6.- Relación Bisnieta
7.- Relación Hermana
8.- Relación Sobrino
9.- Relación Bisabuelo
10.- Relación Bisnieto
11.- Relación Abuelo
12.- Relación Tía
13.- Relación Hermano
14.- Relación Madre
15.- Salir
En el menú, el usuario seleccionará la relación familiar que se desea buscar y la aplicación inteligente ejecutará la regla respectiva para dar la respuesta adecuada a la consulta.
El arbol genealogico es el siguiente:
Código del Programa:
Considerando el árbol genealógico de su familia y tomando al menos 60 hechos: padre, madre, y sexo. Crear un programa en Visual Prolog que realice los razonamientos inteligentes siguientes:
Crear un menú con las siguientes opciones:
MENU DE OPCIONES DEL ARBOL GENEALOGICO
1.- Relación Nieta
2.- Relación Primo
3.- Relación Tío
4.- Relación Padre
5.- Relación Bisabuela
6.- Relación Bisnieta
7.- Relación Hermana
8.- Relación Sobrino
9.- Relación Bisabuelo
10.- Relación Bisnieto
11.- Relación Abuelo
12.- Relación Tía
13.- Relación Hermano
14.- Relación Madre
15.- Salir
En el menú, el usuario seleccionará la relación familiar que se desea buscar y la aplicación inteligente ejecutará la regla respectiva para dar la respuesta adecuada a la consulta.
El arbol genealogico es el siguiente:
El usuario tecleara los que desea hacer o lo que quiera saber. Si quiere saber quién es la madre de Angel, el programa le contestará, y así de igual manera para las opciones que tiene el programa.
Les dejo es link del video en el cual explico como funciona y como se le aplica la Inteligecia, o como se crean las reglas.
%AUTOR: IVAN LUIS JIMENEZ (IVANOVICH) domains Nombre, Nieta, Primo, Tio, Padre, Bisabuela, Bisnieta, Hermana = string Sobrino, Bisabuelo, Bisnieto, Abuelo, Tia, Hermano, Madre , Sexo = string A, B, C, D, E = symbol Opcion = integer predicates nondeterm menu nondeterm for nondeterm case(integer) nondeterm nieta(symbol,symbol) nondeterm padre(symbol,symbol) nondeterm madre(symbol,symbol) nondeterm primo(symbol,symbol) nondeterm hermano(symbol,symbol) nondeterm hermana(symbol,symbol) nondeterm bisabuela(symbol,symbol) nondeterm bisabuelo(symbol,symbol) nondeterm bisnieta(symbol,symbol) nondeterm bisnieto(symbol,symbol) nondeterm abuelo(symbol,symbol) nondeterm tio(symbol,symbol) nondeterm tia(symbol,symbol) nondeterm sobrino(symbol,symbol) nondeterm sexo(symbol,symbol) clauses menu:-nl,nl,write("MENU DE OPCIONES DEL ARBOL GENEALOGICO"),nl,nl, write(" 1.- Relación Nieta"),nl, write(" 2.- Relación Primo"),nl, write(" 3.- Relación Tio"),nl, write(" 4.- Relación Padre"),nl, write(" 5.- Relación Bisabuela"),nl, write(" 6.- Relación Bisnieta"),nl, write(" 7.- Relación Hermana"),nl, write(" 8.- Relación Sobrino"),nl, write(" 9.- Relación Bisabuelo"),nl, write(" 10.- Relación Bisnieto"),nl, write(" 11.- Relación Abuelo"),nl, write(" 12.- Relación Tia"),nl, write(" 13.- Relación Hermano"),nl, write(" 14.- Relación Madre"),nl, write(" 15.- Salir"),nl,nl. for. for:-for. case(1):-nl,write("Relación Nieta"),nl, write("Investigar la Nieta de _>"), readln(Nombre), nieta(Nieta,Nombre), write(">",Nieta,"\n"). case(2):-nl,write("Relación Primo"),nl, write("Investigar el primo de _>"), readln(Nombre), primo(Primo,Nombre), write(">",Primo,"\n"). case(3):-nl,write("Relación Tio"),nl, write("Investigar el tio de _>"), readln(Nombre), tio(Tio,Nombre), write(">",Tio,"\n"). case(4):-nl,write("Relación Padre"),nl, write("Investigar el padre de _>"), readln(Nombre), padre(Padre,Nombre), write(">",Padre,"\n"). case(5):-nl,write("Relación Bisabuela"),nl, write("Investigar la bisabuela de _>"), readln(Nombre), bisabuela(Bisabuela,Nombre), write(">",Bisabuela,"\n"). case(6):-nl,write("Relación Bisnieta"),nl, write("Investigar la bisnieta de _>"), readln(Nombre), bisnieta(Bisnieta,Nombre), write(">",Bisnieta,"\n"). case(7):-nl,write("Relación Hermana"),nl, write("Investigar la hermana de _>"), readln(Nombre), hermana(Hermana,Nombre), write(">",Hermana,"\n"). case(8):-nl,write("Relación Sobrino"),nl, write("Investigar el sobrino de _>"), readln(Nombre), sobrino(Sobrino,Nombre), write(">",Sobrino,"\n"). case(9):-nl,write("Relación Bisabuelo"),nl, write("Investigar el bisabuelo de _>"), readln(Nombre), bisabuelo(Bisabuelo,Nombre), write(">",Bisabuelo,"\n"). case(10):-nl,write("Relación Bisnieto"),nl, write("Investigar el bisnieto de _>"), readln(Nombre), bisnieto(Bisnieto,Nombre), write(">",Bisnieto,"\n"). case(11):-nl,write("Relación Abuelo"),nl, write("Investigar el abuelo de _>"), readln(Nombre), abuelo(Abuelo,Nombre), write(">",Abuelo,"\n"). case(12):-nl,write("Relación Tia"),nl, write("Investigar el tia de _>"), readln(Nombre), tia(Tia,Nombre), write(">",Tia,"\n"). case(13):-nl,write("Relación Hermano"),nl, write("Investigar el hermano de _>"), readln(Nombre), hermano(Hermano,Nombre), write(">",Hermano,"\n"). case(14):-nl,write("Relación Madre"),nl, write("Investigar la madre de _>"), readln(Nombre), madre(Madre,Nombre), write(">",Madre,"\n"). case(15):-write("Terminó proceso \n > presione ESC para cerrar"),nl,nl,!. %Padre padre(andres,ana). padre(andres,monica). padre(andres,carolina). padre(andres,alberto). padre(andres,fernando). padre(alberto,edith). padre(alberto,camila). padre(alberto,david). padre(fernando,rebeca). padre(fernando,eric). padre(victor,selena). padre(victor,paula). padre(manuel,rosa). padre(carlos,mario). padre(david,hector). padre(david,cesar). padre(eric,luis). padre(eric,miguel). padre(juan,karen). padre(alex,frida). padre(mario,cecilia). padre(brandon,susana). padre(hector,danna). padre(uriel,ximena). padre(luis,karla). padre(miguel,alfredo). %Madre madre(ana,victor). madre(ana,manuel). madre(ana,liz). madre(monica,itzel). madre(monica,zoe). madre(carolina,angel). madre(carolina,lisa). madre(carolina,carlos). madre(liz,itzand). madre(liz,juan). madre(itzel,ivan). madre(zoe,alex). madre(lisa,fatima). madre(edith,veronica). madre(edith,brandon). madre(rebeca,uriel). madre(selena,mateo). madre(selena,carmen). madre(paula,alicia). madre(itzand,bruno). madre(fatima,karlos). madre(fatima,raul). madre(veronica,katia). %Sexo sexo(ana,femenino). sexo(monica,femenino). sexo(carolina,femenino). sexo(liz,femenino). sexo(itzel,femenino). sexo(zoe,femenino). sexo(lisa,femenino). sexo(edith,femenino). sexo(camila,femenino). sexo(rebeca,femenino). sexo(selena,femenino). sexo(paula,femenino). sexo(rosa,femenino). sexo(itzand,femenino). sexo(fatima,femenino). sexo(veronica,femenino). sexo(carmen,femenino). sexo(alicia,femenino). sexo(karen,femenino). sexo(frida,femenino). sexo(cecilia,femenino). sexo(katia,femenino). sexo(susana,femenino). sexo(dana,femenino). sexo(ximena,femenino). sexo(karla,femenino). sexo(alberto,masculino). sexo(fernando,masculino). sexo(victor,masculino). sexo(manuel,masculino). sexo(angel,masculino). sexo(carlos,masculino). sexo(david,masculino). sexo(eric,masculino). sexo(juan,masculino). sexo(ivan,masculino). sexo(alex,masculino). sexo(mario,masculino). sexo(brandon,masculino). sexo(hector,masculino). sexo(cesar,masculino). sexo(uriel,masculino). sexo(luis,masculino). sexo(miguel,masculino). sexo(mateo,masculino). sexo(bruno,masculino). sexo(karlos,masculino). sexo(raul,masculino). sexo(alfredo,masculino). sexo(andres,masculino). %Reglas nieta(C,A):- madre(A,B),padre(B,C),sexo(C,femenino),A<>B. nieta(C,A):- padre(A,B),madre(B,C),sexo(C,femenino),A<>B. nieta(C,A):- madre(A,B),madre(B,C),sexo(C,femenino),A<>B. nieta(C,A):- padre(A,B),padre(B,C),sexo(C,femenino),A<>B. primo(E,C):- madre(B,C),madre(D,E),madre(A,B),madre(A,D),sexo(E,masculino),B<>D. primo(E,C):- madre(B,C),padre(D,E),madre(A,B),madre(A,D),sexo(E,masculino),B<>D. primo(E,C):- padre(B,C),madre(D,E),madre(A,B),madre(A,D),sexo(E,masculino),B<>D. primo(E,C):- madre(B,C),madre(D,E),padre(A,B),padre(A,D),sexo(E,masculino),B<>D. primo(E,C):- madre(B,C),padre(D,E),padre(A,B),padre(A,D),sexo(E,masculino),B<>D. primo(E,C):- padre(B,C),madre(D,E),padre(A,B),padre(A,D),sexo(E,masculino),B<>D. primo(E,C):- madre(B,C),madre(D,E),madre(A,B),padre(A,D),sexo(E,masculino),B<>D. primo(E,C):- madre(B,C),madre(D,E),padre(A,B),madre(A,D),sexo(E,masculino),B<>D. hermano(C,B):- madre(A,B),madre(A,C),sexo(C,masculino),B<>C. hermano(C,B):- padre(A,B),padre(A,C),sexo(C,masculino),B<>C. hermano(C,B):- madre(A,B),padre(A,C),sexo(C,masculino),B<>C. hermano(C,B):- padre(A,B),madre(A,C),sexo(C,masculino),B<>C. hermana(C,B):- madre(A,B),madre(A,C),sexo(C,femenino),B<>C. hermana(C,B):- padre(A,B),padre(A,C),sexo(C,femenino),B<>C. hermana(C,B):- madre(A,B),padre(A,C),sexo(C,femenino),B<>C. hermana(C,B):- padre(A,B),madre(A,C),sexo(C,femenino),B<>C. bisabuela(A,D):- madre(A,B),madre(B,C),madre(C,D),sexo(A,femenino),A<>B. bisabuela(A,D):- padre(A,B),padre(B,C),padre(C,D),sexo(A,femenino),A<>B. bisabuela(A,D):- madre(A,B),padre(B,C),madre(C,D),sexo(A,femenino),A<>B. bisabuela(A,D):- madre(A,B),padre(B,C),padre(C,D),sexo(A,femenino),A<>B. bisabuela(A,D):- padre(A,B),madre(B,C),madre(C,D),sexo(A,femenino),A<>B. bisabuela(A,D):- padre(A,B),madre(B,C),padre(C,D),sexo(A,femenino),A<>B. bisabuela(A,D):- padre(A,B),padre(B,C),madre(C,D),sexo(A,femenino),A<>B. bisabuela(A,D):- madre(A,B),madre(B,C),padre(C,D),sexo(A,femenino),A<>B. bisabuelo(A,D):- madre(A,B),madre(B,C),madre(C,D),sexo(A,masculino),A<>B. bisabuelo(A,D):- padre(A,B),padre(B,C),padre(C,D),sexo(A,masculino),A<>B. bisabuelo(A,D):- madre(A,B),padre(B,C),madre(C,D),sexo(A,masculino),A<>B. bisabuelo(A,D):- madre(A,B),padre(B,C),padre(C,D),sexo(A,masculino),A<>B. bisabuelo(A,D):- padre(A,B),madre(B,C),madre(C,D),sexo(A,masculino),A<>B. bisabuelo(A,D):- padre(A,B),madre(B,C),padre(C,D),sexo(A,masculino),A<>B. bisabuelo(A,D):- padre(A,B),padre(B,C),madre(C,D),sexo(A,masculino),A<>B. bisabuelo(A,D):- madre(A,B),madre(B,C),padre(C,D),sexo(A,masculino),A<>B. bisnieta(D,A):- madre(A,B),madre(B,C),madre(C,D),sexo(D,femenino),A<>B. bisnieta(D,A):- padre(A,B),padre(B,C),padre(C,D),sexo(D,femenino),A<>B. bisnieta(D,A):- madre(A,B),padre(B,C),madre(C,D),sexo(D,femenino),A<>B. bisnieta(D,A):- madre(A,B),padre(B,C),padre(C,D),sexo(D,femenino),A<>B. bisnieta(D,A):- padre(A,B),madre(B,C),madre(C,D),sexo(D,femenino),A<>B. bisnieta(D,A):- padre(A,B),madre(B,C),padre(C,D),sexo(D,femenino),A<>B. bisnieta(D,A):- padre(A,B),padre(B,C),madre(C,D),sexo(D,femenino),A<>B. bisnieta(D,A):- madre(A,B),madre(B,C),padre(C,D),sexo(D,femenino),A<>B. bisnieto(D,A):- madre(A,B),madre(B,C),madre(C,D),sexo(D,masculino),A<>B. bisnieto(D,A):- padre(A,B),padre(B,C),padre(C,D),sexo(D,masculino),A<>B. bisnieto(D,A):- madre(A,B),padre(B,C),madre(C,D),sexo(D,masculino),A<>B. bisnieto(D,A):- madre(A,B),padre(B,C),padre(C,D),sexo(D,masculino),A<>B. bisnieto(D,A):- padre(A,B),madre(B,C),madre(C,D),sexo(D,masculino),A<>B. bisnieto(D,A):- padre(A,B),madre(B,C),padre(C,D),sexo(D,masculino),A<>B. bisnieto(D,A):- padre(A,B),padre(B,C),madre(C,D),sexo(D,masculino),A<>B. bisnieto(D,A):- madre(A,B),madre(B,C),padre(C,D),sexo(D,masculino),A<>B. abuelo(A,C):- madre(A,B),padre(B,C),sexo(A,masculino),A<>B. abuelo(A,C):- padre(A,B),madre(B,C),sexo(A,masculino),A<>B. abuelo(A,C):- madre(A,B),madre(B,C),sexo(A,masculino),A<>B. abuelo(A,C):- padre(A,B),padre(B,C),sexo(A,masculino),A<>B. tio(D,C):- madre(A,B),padre(B,C),hermano(D,B),sexo(D,masculino),D<>B. tio(D,C):- padre(A,B),madre(B,C),hermano(D,B),sexo(D,masculino),D<>B. tio(D,C):- madre(A,B),madre(B,C),hermano(D,B),sexo(D,masculino),D<>B. tio(D,C):- padre(A,B),padre(B,C),hermano(D,B),sexo(D,masculino),D<>B. tia(D,C):- madre(A,B),padre(B,C),hermana(D,B),sexo(D,femenino),D<>B. tia(D,C):- padre(A,B),madre(B,C),hermana(D,B),sexo(D,femenino),D<>B. tia(D,C):- madre(A,B),madre(B,C),hermana(D,B),sexo(D,femenino),D<>B. tia(D,C):- padre(A,B),padre(B,C),hermana(D,B),sexo(D,femenino),D<>B. sobrino(C,D):- madre(A,B),padre(B,C),hermano(D,B),sexo(C,masculino),D<>B. sobrino(C,D):- padre(A,B),madre(B,C),hermano(D,B),sexo(C,masculino),D<>B. sobrino(C,D):- madre(A,B),madre(B,C),hermano(D,B),sexo(C,masculino),D<>B. sobrino(C,D):- padre(A,B),padre(B,C),hermano(D,B),sexo(C,masculino),D<>B. goal for,nl,menu, write("Digite la opción_>"), readint(Opcion),nl, case(Opcion), Opcion=15,!.
Link de descarga del proyecto:
http://raboninco.com/GCWs
Cualquier duda,, sugerencia o comentario dejarlo en la parde de abajo.
arbol genealogico con inteligencia artificial
IA
inteligencia artifical
inteligencia artificial con visual prolog
prolog
visual prolog arbol genealogico
- Obtener vínculo
- X
- Correo electrónico
- Otras apps
Comentarios
Como ejecuto el codiogo en visual prolog 9
ResponderBorrar