prolog resueltos
Short Description
Descripción: Ejercicios Resultos en Prolog...
Description
•
•
•
Restaurante (Ejercicio propuesto por el profesor Jorge Cabrera. Univ. de la Palmas de Gran Restaurante Canarias). Relaciones Relacion es Familiares Familiares (Ejercicio propuesto en el Laboratorio de Sistemas nteligentes. Univ. Polit!cnica de "adrid). Red Semántica Semántica (Ejercicio propuesto en el Laboratorio de Sistemas nteligentes. Universidad Polit!cnica de "adrid).
1) El c#digo $ue sigue (en rojo) rojo) corresponde a un programa Prolog $ue se encuentra en el fic%ero restaurante.pl &espu!s de copiarlo al directorio de trabajo ' cargarlo en el int!rprete se trata de resolver dos ejercicios a) *ormular las siguientes preguntas en Prolog. +Cu,les son las comidas $ue tienen consom! en la entrada+Cu,les son las comidas e$uilibradas $ue tienen naranja como postre+Cu,les son las comidas $ue tienen un valor cal#rico de // calor0asSi %a' alg1n problema con la pregunta anterior anterior +C#mo lo arreglar0as b) Completar el programa anterior de forma $ue cada comida est! formada tambi!n por la elecci#n de una bebida a elegir entre vino cerve2a o agua mineral.
3 menu entrada(paella). entrada(ga2pac%o). entrada(consome). carne(filete4de4cerdo). carne(pollo4asado). pescado(truc%a). pescado(bacalao). postre(flan). postre(nueces4con4miel). postre(naranja). 3 5a 5alor lor caloric calorico o de una raci#n calorias(paella 6//). calorias(ga2pac%o 7/). calorias(consome 8//). calorias(filete4de4cerdo 9//). calorias(pollo4asado 6:/). calorias(truc%a 7;/). calorias(bacalao 8//). calorias(flan 6//). calorias(nueces4con4miel //). calorias(naranja /). 3 plato4principal(P) P es un plato principal principal si es carne o pescado
plato4principal(P)< carne(P). plato4principal(P)< pescado(P). 3 comida(Entrada Principal Postre) comida(Entrada Principal Postre)< entrada(Entrada) plato4principal(Principal) postre(Postre). 3 5alor calorico de una comida valor(Entrada Principal Postre 5alor)< calorias(Entrada =) calorias(Principal >) calorias(Postre ?) sumar(= > ? 5alor). 3 comida4e$uilibrada(Entrada Principal Postre) comida4e$uilibrada(Entrada Principal Postre)< comida(Entrada Principal Postre) valor(Entrada Principal Postre 5alor) menor(5alor ://). 3 Conceptos au@iliares sumar(= > ? Aes)< Aes is = B > B ?.
3 El predicado is se satisface si Aes se puede unificar 3 con el resultado de evaluar la e@presi#n = B > B ?
menor(= >)< = D >.
3 menor num!rico
dif(= >)< = F >.
3 desigualdad num!rica
2) Crear el fic%ero tudor.pl e incluir en !l los predicados $ue definen por e@tensi#n todas las relaciones familiares directas padre(Padre, Hijo) ' madre(Madre, Hijo) del ,rbol geneal#gico de la familia udor representado en el siguiente es$uema a) Cargar el fic%ero tudor.pl en el int!rprete ' comprobar $ue los %ec%os introducidos son correctos. b) HIadir al fic%ero tudor.pl reglas $ue definan a partir de los predicados anteriores las siguientes relaciones de parentesco entre los miembros de la familia udor < &efinir la relaci#n progenitor , utili2ando las relaciones padre y madre . Cargar de nuevo el fic%ero ' comprobar $ue las nuevas relaciones est,n bien definidas. < &efinir recursivamente la relaci#n antepasado . Probar definiciones alternativas de esta relaci#n cambiando el orden de los predicados. Comprobar c#mo afecta el comportamiento del programa el orden usado en las distintas definiciones de antepasado. &efinir la relaci#n descendente .
< &efinir nuevas relaciones (como hermano, hermana, abuelo, abuela, nieto, nieta, etc) aIadiendo predicados (por ejemplo mujer, hombre) ' reglas necesarias.
3) Un m!todo de representaci#n del conocimiento basado en modelos de psicolog0a cognitiva son las redes sem,nticas. Las redes sem,nticas son grafos orientados $ue propo rcionan una representaci#n declarativa de objetos propiedades ' relaciones. Los nodos se utili2an para representar objetos o propiedades. Los arcos representan relaciones entre nodos del tipo es_un, es_parte_de , etc. El mecanismo de inferencia b,sico en las redes sem,nticas es la %erencia de propiedades. La siguiente figura representa es$uem,ticamente un ejemplo de red sem,ntica
a) Aepresentar en Prolog la red sem,ntica de la figura. Se sugiere emplear un predicado binario por cada relaci#n. Para las propiedades se sugiere $ue se emplee el predicado atributo(bjeto, !tributo, "alor). Por ejemplo atributo(albatros, come, peces). b) ncluir las reglas necesarias para $ue todo objeto %erede los atributos ' las propiedades de todas las clases a las $ue pertenece. c) Emplear Prolog para %acer consultas sobre la informaci#n almacenada en la red sem,ntica.
View more...
Comments