You are on page 1of 9

Trabajo

Académico
Escuela Profesional de INGENIERIA DE SISTEMAS E INFORMATICA 2018-I
0203-02406 SISTEMAS EXPERTOS
Nota:
Docente: Ing. Chauca Castillo Eduardo

Ciclo: VII Sección: 01-1 Módulo II


Datos del alumno: Forma de envío:
Apellidos y nombres: Publicar su archivo(s) en la opción TRABAJO
[Escriba texto] ACADÉMICO que figura en el menú contextual de su
curso
Código de matrícula:
Fecha de envío:
[Escriba texto]

Uded de matrícula:
Hasta el Domingo 22 de Julio 2018
[Escriba texto] Hasta las 23.59 PM
Recomendaciones:

1. Recuerde verificar la
correcta publicación de
su Trabajo Académico
en el Campus Virtual
antes de confirmar al
sistema el envío
definitivo al Docente.
Revisar la
previsualización de su
trabajo para asegurar
archivo correcto.

2. Las fechas de publicación de trabajos académicos a través del campus virtual DUED LEARN están definidas
en la plataforma educativa, de acuerdo al cronograma académico 2018-I por lo que no se aceptarán
trabajos extemporáneos.

3. Las actividades de aprendizaje que se encuentran en los textos que recibe al matricularse, servirán para su
autoaprendizaje mas no para la calificación, por lo que no deberán ser consideradas como trabajos
académicos obligatorios.

Guía del Trabajo Académico:


4. Recuerde: NO DEBE COPIAR DEL INTERNET, el Internet es únicamente una fuente de
consulta. Los trabajos copias de internet serán verificados con el SISTEMA
ANTIPLAGIO UAP y serán calificados con “00” (cero).

5. Estimado alumno:
El presente trabajo académico tiene por finalidad medir los logros alcanzados en el desarrollo del curso.
Para el examen parcial Ud. debe haber logrado desarrollar hasta la pregunta N° 9 y para el examen final
debe haber desarrollado el trabajo completo.

1TADUED20181DUEDUAP
Trabajo
Académico
Criterios de evaluación del trabajo académico:
Este trabajo académico será calificado considerando criterios de evaluación según naturaleza del curso:

Presentación adecuada Considera la evaluación de la redacción, ortografía, y presentación del


1 del trabajo trabajo en este formato.
Considera la revisión de diferentes fuentes bibliográficas y electrónicas
confiables y pertinentes a los temas tratados, citando según la normativa
Investigación
2 bibliográfica:
APA.
Se sugiere ingresar al siguiente enlace de video de orientación:

Situación problemática o Considera el análisis contextualizado de casos o la solución de


3 caso práctico: situaciones problematizadoras de acuerdo a la naturaleza del curso.

Considera la aplicación de juicios valorativos ante situaciones y


4 Otros contenidos
escenarios diversos, valorando el componente actitudinal y ético.

Preguntas:

Cada pregunta = 2 puntos, en total = 10 x 2 = 20 puntos

1.-Responda las siguientes preguntas de los Sistemas Expertos clásicos.

a) Haga una breve reseña histórica del desarrollo de los Sistemas Expertos

b) ¿Cuáles fueron los propósitos de su desarrollo?

c) ¿Qué tanto éxito tuvo para propósitos de investigación?

d) ¿Tuvo alguna vez éxito comercial o se usó rutinariamente?

e) ¿Qué otros sistemas expertos, se debieron a éste?


f) ¿Cuáles son nuevos desarrollos de los sistemas expertos?

2.- Escribir el programa en ficheros de texto, utilizando el software SWI Prolog


% Este programa en Prolog
%
% Se trata de un árbol genealógico muy simple

% Primero defino los parentescos básicos


% de la familia.
% padre(A,B) significa que B es el padre de A...
padre(juan,alberto).
padre(luis,alberto).
padre(alberto,leoncio).
padre(geronimo,leoncio).
padre(luisa,geronimo).
% Ahora defino las condiciones para que
% dos individuos sean hermanos
% hermano(A,B) significa que A es hermano de B...
hermano(A,B) :-

2TADUED20181DUEDUAP
Trabajo
Académico
padre(A,P),
padre(B,P),
A \== B.
% Ahora defino el parentesco abuelo-nieto.
% nieto(A,B) significa que A es nieto de B...
nieto(A,B) :-
padre(A,P),
padre(P,B).
Una vez compilado y cargado el programa, realice las siguientes consultas y obtenga las respuestas
a. ?- hermano(A, B).

b. ?- nieto(luis, X).

c. ?- nieto(X, leoncio).

d. Realice 10 preguntas sobre algún tipo de parentesco que soporte el programa

3.- Escribir el programa en ficheros de texto, utilizando el software SWI Prolog


a).-Escriba el programa en modo texto utilizando swi Prolog
b).- Realice 10 consultas sobre la relación de menús que soporte el programa
%
% restaurante_1.pl
%
% menu
entrada(paella).
entrada(gazpacho).
entrada(consome).
carne(filete_de_cerdo).
carne(pollo_asado).
pescado(trucha).
pescado(bacalao).
postre(flan).
postre(nueces_con_miel).
postre(naranja).
% Valor calorico de una racion
calorias(paella, 200).
calorias(gazpacho, 150).
calorias(consome, 300).
calorias(filete_de_cerdo, 400).
calorias(pollo_asado, 280).
calorias(trucha, 160).
calorias(bacalao, 300).
calorias(flan, 200).
calorias(nueces_con_miel, 500).
calorias(naranja, 50).
% plato_principal(P) P es un plato principal si es carne o pescado
plato_principal(P):-
carne(P);
pescado(P).
% comida(Entrada, Principal, Postre)
comida(Entrada, Principal, Postre):-
entrada(Entrada),

3TADUED20181DUEDUAP
Trabajo
Académico
plato_principal(Principal),
postre(Postre).
% Valor calorico de una comida
valor(Entrada, Principal, Postre, Valor):-
calorias(Entrada, X),
calorias(Principal, Y),
calorias(Postre, Z),
sumar(X, Y, Z, Valor).
% comida_equilibrada(Entrada, Principal, Postre)
comida_equilibrada(Entrada, Principal, Postre):-
comida(Entrada, Principal, Postre),
valor(Entrada, Principal, Postre, Valor),
menor(Valor, 800).

4.- Escribir el programa en ficheros de texto, utilizando el software SWI Prolog


a).-Escriba el programa en modo texto utilizando swi Prolog
b).- Realice 10 consultas sobre gustos y busca entre la relación de hombre y mujer que soporte el
programa

hombre(juan,grande,rubio,joven).
hombre(antonio,mediana,castaño,maduro).
hombre(pepe,mediana,moreno,anciano).
hombre(luis,mediana,moreno,joven).

mujer(maria,pequeña,moreno,joven).
mujer(sara,grande,moreno,joven).
mujer(laura,mediana,pelirrojo,maduro).
mujer(eva,mediana,rubio,anciano).

gustos(juan,clásica,aventuras,tenis).
gustos(antonio,pop,ciencia-ficción,natación).
gustos(pepe,jazz,detectives,yoga).
gustos(luis,jazz,ciencia-ficción,natación).
gustos(maria,jazz,ciencia-ficción,natación).
gustos(sara,pop,aventuras,tenis).
gustos(laura,clásica,detectives,yoga).
gustos(eva,jazz,detectives,natación).

busca(juan,mediana,rubio,joven).
busca(antonio,pequeña,pelirrojo,joven).
busca(pepe,mediana,moreno,maduro).
busca(luis,pequeña,moreno,joven).
busca(maria,mediana,moreno,joven).
busca(sara,grande,castaño,maduro).
busca(laura,grande,moreno,maduro).
busca(eva,mediana,rubio,anciano).

compatible(X,Y) :- gustos(X,A,B,C), gustos(Y,A,B,C), busca(X,O,P,Q), mujer(Y,O,P,Q), X\=Y,


compatible(Y,X).
compatible(X,Y) :- gustos(X,A,B,C), gustos(Y,A,B,C), busca(X,O,P,Q), hombre(Y,O,P,Q), X\=Y.

4TADUED20181DUEDUAP
Trabajo
Académico
5.- Sobre el Árbol genealógico mostrado en la figura

a).-Escriba el programa en modo texto utilizando swi Prolog

b).- Definir en Prolog los predicados que definen por extensión todas las relaciones familiares directas,
padre(Padre, Hijo) y madre(Madre, Hijo) del árbol genealógico de la familia Tudor.

c).- Definir la relación progenitor, utilizando las relaciones de padre y madre.

d).-Definir recursivamente la relación antepasado. Probar definiciones alternativas de esta relación


cambiando el orden de los predicados. Comprobar cómo afecta al comportamiento del programa el
orden usado en las distintas definiciones de antepasado.

e).- Definir nuevas relaciones (como hermano, hermana, abuelo, abuela)


añadiendo los predicados (por ejemplo mujer, hombre) y reglas necesarios.

f).-Realizar 10 consultas verdaderas, 10 consultas falsas.

6.- Desarrollar los hechos partiendo del árbol familiar dado en la fig. considerando los Parentescos
de abuelos, padres, tíos, hijos y nietos.
3 puntos
a).-Escriba el programa en modo texto utilizando swi Prolog
b).-Realizar 10 consultas verdaderas, 10 consultas falsas.

7.-Sobre el siguiente árbol genealógico


Diseñe de una base de datos de personas y sus relaciones de parentesco.
Enunciado:

5TADUED20181DUEDUAP
Trabajo
Académico
Implementar una base de datos de personas de una familia que las relacione con los siguientes hechos
(deben haber al menos 4 niveles en el árbol genealógico):
Hecho Significado
padre(X,Y) X es padre de Y
madre(X,Y) X es madre de Y
hombre(X) X es hombre
mujer (X) X es mujer
marido(X,Y) X es marido de Y
En función de la base de datos anterior implementar las siguientes relaciones:
Relación Significado
esposa(X,Y) X es la esposa de Y (Y es el marido de X)
cónyuge(X,Y) X es cónyuge de Y (X es el marido o la esposa de Y)
progenitor (X,Y) X es progenitor (padre o madre) de Y
hijo (X,Y) X es hijo de Y
hija(X,Y) X es hija de Y
vastago(X,Y) X es vastago (hijo o hija) de Y
hermano(X,Y) X es hermano de Y
hermana(X,Y) X es hermana de Y
abuelo(X,Y) X es abuelo de Y
abuela(X,Y) X es abuela de Y
nieto (X,Y) X es nielo de Y
nieta (X,Y) X es nieta de Y
ascendiente(X,Y) X es ascendiente (o antepasado) de Y
descendiente(X,Y) X es descendiente (o sucesor) de Y
yerno(X,Y) X es yerno de Y (X es el marido de la hija de Y)
nuera (X,Y) X es nuera de Y (X es la esposa del hijo de Y)
cunyado(X,Y) X es cuñado de Y (X es hermano del cónyuge de Y)
cunyada(X,Y) X es cuñada de Y (X es hermana del cónyuge de Y)
concunyado(X,Y) X es concuñado de Y (X es el marido de la cuñada de Y)
concunyada(X,Y) X es concuñada de Y (X es la esposa del cuñado de Y)
suegro (X,Y) X es suegro de Y (X es el padre del cónyuge de Y)
suegra (X,Y) X es suegra de Y (X es la madre del cónyuge de Y)

Probar la corrección de las relaciones anteriores e implementar relaciones para:


a) Imprimir en pantalla todas las personas que sean hermanos(as) de alguien, de la forma:
X es hermano de Y.

6TADUED20181DUEDUAP
Trabajo
Académico
b) Obtener el árbol genealógico de una persona. La respuesta construida debe ser un
término.
c) Obtener todas las relaciones existentes de una persona con el resto.

Nótese que las relaciones que se deben implementar no contienen caracteres del conjunto extendido
de ASCII (acentos, eñes,...).
8.- Sobre las siguientes Expresiones aritméticas
Diseñe de un sistema aritmético de Peano que incluya la descripción del tipo de datos número natural
y varias operaciones asociadas a él.
Enunciado:
a) Definir el tipo de datos entero positivo en base al constructor sucesor (s/1).

b) Implementar la relación polinomio:


polinomio(P) :- nat (P) .
polinomio(P) :- Constant(P).
polinomio(P1+ P2) :- polinomio(P1), polinomio(P2).
polinomio(P1- P2) :- polinomio(P1), polinomio(P2).
polinomio(-P) :- polinomio(P).
polinomio(P1*P2) :- polinomio(P1), polinomio(P2).
Nota: la segunda cláusula se entiende para representar parámetros, como la a
en - s (s (0) ) * (x- a*l) .
d) Implementar las siguientes relaciones:
Relación Significado
sum (X,Y,Z) Z es la suma de X e Y
prod (X,Y,Z) Z es el producto de X e Y
mod (X, Y, Z) Z es el cociente de la división entera entre X e Y
rem (X, Y, Z) Z es el resto de la división entera entre X e Y
fact (X,Y) Y es el factorial de X
pot (X,N,Y) Y es la potencia N-ésima de X
ack (X,Y,Z) Z es el resultado de la aplicación de la función de Ackermann a X e
Y, estando definida como sigue:
ackermann(0, N) = N+1
ackermann(M, 0) = ackermann (M-1,1)
ackermann(M, N) = ackermann (M-1 ,ackermann(M, N-1))

mcm (X, Y, Z) Z es el mínimo común múltiplo de X e Y

d) Implementar con la relación imprimir (P) la impresión (visualización en pantalla) de polinomios


sustituyendo las aplicaciones de s /1 por el número correspondiente al que representa (Ej: P = - 2* (x-
a*l) en lugar de -s (s (0) ) * (x- a*l)).

e) Implementar la evaluación de polinomios para valores de los parámetros y variables con la relación:
eval (Polinomio, AsignaciónDeValores, Valor).
AsignaciónDeValores debe ser una lista con elementos de la forma ti = vi, donde ti es una variable o un
parámetro y vi es su valor correspondiente.

7TADUED20181DUEDUAP
Trabajo
Académico
Ej:eval (s (s (0) ) * (x-a*s (0) ) , [x=s (s (0) ) , a = s (0)], s (s (0) ) )

¿Qué problemas aparecen con los valores negativos? ¿Qué ocurre si se deja algún parámetro o
variable sin especificar en la lista y cómo se podría solucionar? (Véase también en relación a esta
pregunta el siguiente punto)
f) Implementar la simplificación de polinomios.
g) Implementar la relación derivada/3 y aplicar la simplificación, donde derivada (X,Y,Z) representa
que Z es la derivada del polinomio X con respecto a Y.
h) Implementar la relación integral/3 ¿Se puede aprovechar alguna relación anterior? ¿Qué problemas
aparecen?

9.- A partir de los predicados binarios padre y esposo y de los predicados unarios hombre y mujer,
definir en Prolog los predicados binarios: hijo, abuelo, progenitor, hermano, descendiente tio.
I. Considerar el árbol genealógico de la siguiente figura. Dibuje el árbol de búsqueda
de Prolog para la consulta abuelo(Who, ron).

II. Defina una nueva relación primo. ¿Cómo se puede definir una consulta para conocer
todos los primos de ron?

III. Considerar el agregado del siguiente hecho y regla:

ancestro(X, X).
ancestro(X, Y) :- ancestro(Z, Y), progenitor(X, Z).

a) Explicar la respuesta a la consulta ancestro(bill, X).


b) Describir las circunstancias en las que puede ocurrir un loop (lazo) infinito en Prolog.
c) Sugerir un solución al problema hallado en los puntos anteriores reescribiendo el programa de
ancestro.
10.-Partiendo de las condiciones clínicas dadas en la siguiente figura, determinar las diferentes
posibilidades de diagnóstico que se pueden obtener explorando las variables, utilizar el programa
Netica, demostrar mediante secuencia de imágenes capturadas.

Cuatro Variables
ENFERMEDAD (A): Gripe A (+a) y Gripe Común (-a)
PROBLEMAS RESPIRATORIO (B): Presente (+b) y Ausente (-b)
DOLOR DE CABEZA (C): Presente (+c) y Ausente (-c)

8TADUED20181DUEDUAP
Trabajo
Académico
PRUEBA DE ANALISIS (D): Positivo (+d) y Negativo (-d)
P(+a) = 22.727

P(+e)=0.0 Enfermedad
02 A

Problemas respiratorios Dolor de Cabeza Prueba


B C D

P(+b/+e) = 88.333 P(+c/+e) = 66.667 P(+d/+e) = 99.5


P(+b/ -e) = 5.667 P(+c/-e) = 88.889 P(+d/-e) = 0.3

9TADUED20181DUEDUAP

You might also like