Está en la página 1de 6

Universidad Nacional del Altiplano – Puno

Escuela Profesional de Ingeniería de Sistemas


CURSO: INTELIGENCIA ARTIFICIAL

GUÍA ACADÉMICA Nro. 3

TEMA: PREDICADOS Y OPERADORES

Apellidos y Nombres: ……………………………………… Nro. Matrícula: ….………

OBJETIVOS:

◊ Comprender los predicados y Operadores.

REQUERIMIENTOS:

◊ PC con Visual Prolog

PROCEDIMIENTO

PARTE 1: Búsquedas: Entendiendo las Variables y Predicados.

La práctica le permitirá proponer un sistema experto que deduzca toda una


estructura familiar partiendo de solo definir quien es padre de quien,
esto se ira definiendo paso a paso.

Primero se ha de construir la base de conocimientos con las siguientes


definiciones:

Domains
persona= string
Predicates
padre(persona,persona).
Clauses
padre("Pablo", "Juan"). %Pablo es padre de Juan
padre("Pablo", "Marcela").
padre("Juan", "Maria").
padre("Juan", "Maura").
padre("Carlos", "Debora").
padre("Maria", "Luis").
padre("Maria", "Pati").
padre("Debora", "Miguel").

Nota: Se esta definiendo el predicado padre, que representa al padre de


familia, no se esta considerando el género (masculino o femenino).

Consultas:

Quien es el padre de Juan:


GOAL padre(X, "Juan")
Respuesta:

“Pablo” de quien es padre:


GOAL

1
Universidad Nacional del Altiplano – Puno
Escuela Profesional de Ingeniería de Sistemas
CURSO: INTELIGENCIA ARTIFICIAL

Respuesta:

PARTE 2: Implementando más predicados:

Es necesario en base al conocimiento propuesto se debe conocer quien es hijo


de quien, quien es el abuelo y los posibles hermanos, en base a los datos
anteriores, esto involucrara definir estos predicados:

Predicates
hijo(persona,persona).
abuelo(persona,persona).
hermano(persona,persona).
Clauses
hijo(A,B):-padre(B,A). % A es hijo de B si B es padre de A
abuelo(A,B):-padre(A,C),padre(C,B).
% A es abuelo de B si A es padre de C y C es padre B
hermano(A,B):-padre(C,A),padre(C,B), A<>B.
% A y B son hermanos Si el C es el padre de A y C es el padre de B y A y B
tienen que ser diferentes.

Nótese la Inclusión de <>, que representa diferente, ver mas ideas en


referencia teórica.

Consultas:

Quien es el hijo de “Pablo”:


GOAL
Respuesta:

Quien es el hijo de “Maria”:


GOAL
Respuesta:

“Marcela” de quien es hijo:


GOAL
Respuesta:

Quien es el abuelo de “Maria”:


GOAL
Respuesta:

Quien es el abuelo de “Pati”:


GOAL
Respuesta:

“Juan” de quien es abuelo:

2
Universidad Nacional del Altiplano – Puno
Escuela Profesional de Ingeniería de Sistemas
CURSO: INTELIGENCIA ARTIFICIAL
GOAL
Respuesta:

Mostrar todos los abuelos:


GOAL
Respuesta:

Quien es el hermano de “Pati”:


GOAL
Respuesta:

Mostrar todos los hermanos:


GOAL
Respuesta:

PARTE 3: Desarrollando sus propios predicados:

Ahora hay que completar mas predicados, por ejemplo: Maura es sobrino
de Marcela y Marcela es tía de Maura por lo que es necesario desarrollar
por lo que complete nuevos predicados

Predicates
tio(persona,persona).
sobrino(persona,persona).
Clauses
tio(A,B):-hermano(A,C),padre(C,B).
% A es tio de B si A es hermano de C y C es padre de B
sobrino(A,B):-padre(C,A),hermano(C,B).
% A es sobrino de B si C es padre de A y C es hermano de B

Quien es el tío de “Maria”:


GOAL
Respuesta:

“Maura” de quien es tio:


GOAL
Respuesta:

Mostrar todos los tios:


GOAL
Respuesta:

3
Universidad Nacional del Altiplano – Puno
Escuela Profesional de Ingeniería de Sistemas
CURSO: INTELIGENCIA ARTIFICIAL

Quien es el sobrino de “Marcela”:


GOAL
Respuesta:

“Pati” de quien es sobrino:


GOAL
Respuesta:

Mostrar todos los sobrinos:


GOAL
Respuesta:

PARTE 4: Desarrollando sus propios predicados y encontrando relaciones:

Hasta ahora se supone se ha identificado ya ciertos rasgos familiares por lo


que se presenta la siguiente propuesta de árbol familiar tomando en cuenta que
el lazo de unión es: “padre”:

% Familia 1: Familia 2:
% pablo carlos
% / \ |
% juan marcela debora
% / \ |
% maria maura miguel
% / \
% luis pati

Ahora se ve necesario identificar quien es familia de quien ya que pati no es


familiar de Carlos por ejemplo, para esto se tendrá que proponer el predicado
“familiar( , )” de manera que la respuesta a dar tendrá que ser afirmativa
en los casos necesarios por ejemplo:

Goal familiar(maura,marcela).
Respuesta: YES

Goal familiar(pati,juan).
Respuesta: YES

Goal familiar(debora,Y).
Respuestas: Y=miguel Y=carlos 2 Solutions

Implementar los respectivos predicados, sugerencia los primeros, en los que se


utilizan todos los predicados anteriores, utilice todos:

4
Universidad Nacional del Altiplano – Puno
Escuela Profesional de Ingeniería de Sistemas
CURSO: INTELIGENCIA ARTIFICIAL

Predicates
familiar(persona,persona).
Clauses
familiar(A,B):- padre(A,B).
% A y B son familiares si A es padre de B
familiarde(A,B):- hijode(A,B).
% A y B son familiares si A es hijo de B
familiar(A,B):- % hermano
familiar(A,B):- % tío
familiar(A,B):- % sobrino
familiar(A,B):-
% Desarrolle todas las posibilidades que puedan existir

Después de completados los predicados, realice las siguientes consultas:

GOAL familia("Marcela", "Maria")


Respuesta:

¿Por qué?:

GOAL familia("Juan","Marcela")
Respuesta:

¿Por qué?:

GOAL familia("Miguel","Marcela")
Respuesta:

¿Por qué?:

GOAL familia("Pati","Juan")
Respuesta:

¿Por qué?:

GOAL familia("Pati","Marcela")
Respuesta:

¿Por qué?:

Conclusión: Faltan Algunas Relaciones.


¿Por qué?:

5
Universidad Nacional del Altiplano – Puno
Escuela Profesional de Ingeniería de Sistemas
CURSO: INTELIGENCIA ARTIFICIAL

CONCLUSIONES

RECOMENDACIONES

TRABAJO APLICATIVO

1. Realice un árbol genealógico de su familia, que tenga desde hijo hasta


tatarabuelo.
2. Del árbol genealógico de su familia realice los siguientes predicados: hijo,
padre, hermano. Y en base a estos predicados realiza los siguientes
predicados: casado_con, cunado, abuelo, nieto, tío, sobrino, primo, bisabuelo,
bisnieto, tatarabuelo, tataranieto, etc.
3. Haga una copia del ejercicio anterior y agregue los predicados varón y mujer.
Desarrolle los mismos predicados del ejercicio anterior, pero considere el
género masculino y femenino en cada uno de ellos. Ejemplo, hijo, hija, madre,
padre, hermano, hemana, casado_con, cuñado, cuñada, abuelo, abuela, nieto,
nieta, tio, tía, sobrino, sobrina, primo, prima, bisabuelo, bisabuelo, bisnieto,
bisnieta, tatarabuelo, tatarabuela, tataranieto, tataranieta.
4. Al ejercicio anterior agregue los predicados: padrastro, madrastra, hijastro,
hijastra, hermanastro, hermanastra.