UNIVERSIDAD NACIONAL SAN CRISTOBAL DE HUAMANGA FACULTAD DE INGENIERÍA DE MINAS, CIVIL Y GEOLOGÍA ESCUELA DE FORMACIÓN PROFESIONAL INGENIERÍA DE SISTEMAS
Docente
: Ing. Elinar CARRILLO
Alumno
: YUPANQUI OCHOA, Fredy
Asignatura
: Sistemas Expertos
Serie
: 400
LABORATORIO 2 PREDICADOS Y OPERADORES OBJETIVOS: ◊
Comprender los predicados y Operadores.
PROCEDIMIENTO 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:
predicados 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?: padre(Quien, "Juan") Respuesta:
“Pablo” de quien es padre: Padre(“Pablo”,X), write(X), nl, fail. 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 Nota: La inclusión de :- representa la estructura condicional si La inclusión de , representa conector lógico y La inclusión de ; representa conector lógico o La inclusión de \== representa conector lógico diferente Defina los predicados y las cláusulas: Predicados a aumentar
Consultas: Quien es el hijo de “Pablo”: hijo(X,Y):-padre(X,Y), X\==Y .
Quien es el hijo de “Maria”: Consulta
“Marcela” de quien es hijo:
hijo(marcela, Quien).
Quien es el abuelo de “Maria”: nieto(maria, Quien).
Quien es el abuelo de “Pati”: nieto(pati, Quien).
“Juan” de quien es abuelo: abuelo(juan, Quien).
Mostrar todos los abuelos: Consulta
Quien es el hermano de “Pati”: hermano(pati, Quien).
Mostrar todos los hermanos: Consulta
PARTE 3: Desarrollando más 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).
Quien es el tío de “Maria”: sobrino(maria, Tio) .
“Maura” de quien es tio: tio(maura, Quien).
Mostrar todos los tios: tio(Tio, Sobrino).
Quien es el sobrino de “Marcela”: Consulta
“Pati” de quien es sobrino: Consulta
Mostrar todos los sobrinos: Consulta
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: familiar(maura,marcela). Respuesta: YES familiar(pati,juan). Respuesta: YES familiar(debora,Y).
Respuestas: Y=miguel Y=carlos 2 Solutions
Implementar los respectivos predicados. Después de completados los predicados, realice las siguientes consultas: Consulta familiar("Marcela", "Maria")
¿Por qué?: Marcela es la tia de Maria.
Consulta familiar("Juan","Marcela")
¿Por qué?: Juan es hermano de Marcela.
Consulta familiar("Miguel","Marcela").
¿Por qué?: Miguel no pertenece a la familia de Marcela. Consulta familiar("Pati","Juan").
¿Por qué?: Pati no pertenece a la familia de Juan.
familiar("Carlos","Miguel").
¿Por qué?: Carlos es el abuelo de Miguel.
Cosulta familiar("Debora",Y).
¿Por qué?:
Debora es la hija de Carlos.
Consulta familiar("Pati","Marcela")
¿Por qué?: Pati no pertenece a la familia de Marcela.
TRABAJO APLICATIVO 1. Realice un árbol genealógico de su familia, que tenga desde hijo hasta tatarabuelo.
Jose
Natividad
Bisabuelo
Bisabuela
Efrain
Cirila
Abuelo
Gladys
Abuela
Mauro Tia
Julia
Papa
Fredy
Mama
Teodora Yo
Hermana
Nancy Hermana
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, cuñado, 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, hermana, 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.