Sunteți pe pagina 1din 25

CLASE 1 8 de Noviembre del 2011

Facultad de Ingeniera de Sistemas

Programacin Lgica

Ing. Sal Prez Vega

OBJETIVOS GENERALES El alumno al trmino del curso est capacitado para aplicar los conocimientos sobre la programacin lgica y funcional aplicada con herramientas de software de programacin.

OBJETIVOS ESPECIFICOS Fundamentacin terica de la Programacin lgica y funcional Aplicacin de programacin lgica con el lenguaje de programacin PROLOG. Aplicacin de programacin funcional con el lenguaje de programacin LISP.

Asignaturas tericos-prcticos de aula y/o laboratorio. El promedio Final ser:

Donde:

EP 2 EF PP PF 4

EP= Examen Parcial EF= Examen Final PP= Promedio de Prcticas

The Art of Prolog, Leon Sterling & Ehud Shapiro, MIT Press Programming in Prolog, Clocksin & Mellish, SpringerVerlag "Logic, Programming and Prolog", Ulf Nilsson and Jan Maluszynski , Segunda Edicin, Noviembre 2000. Prolog Programing For Artificial Inteligence. IVAN BRATKO. Language Tutorial Prolog. Broendby Denmark. Lisp, WINSTON, P.H. y HORN, B.K.P. X. AddisonWesley Lisp, HENRY, PATRICK; HORN , Tercera Edicin, Ed. McGraw Hill

Introduccin IA reas de la IA

Sistemas Expertos Representacin del Conocimiento Programacin Lgica vs Programacin Funcional Fundamentos de la Programacin Lgica

Introduccin a IA
Es una rama de la ciencia de la computacin que estudia los fundamentos tericos y prcticos de sistemas que muestran caractersticas inteligentes del ser humano, como: resolucin de problemas, comprensin de lenguajes, aprendizaje, razonamiento.

La IA trata de encontrar tcnicas para disear y programar computadoras que emulen y entiendan nuestras capacidades mentales.

Introduccin a IA
La inteligencia artificial estudia como lograr que las mquinas realicen tareas que, por el momento, son realizadas mejor por los seres humanos.

Que es inteligencia?

Inteligencia es la capacidad para resolver problemas nuevos

Tipos de Inteligencia
Verbal Lingstica Lgico Numrica Espacial Fsica o Kinestsica Intrapersonal o Emocional Interpersonal Natural o Ambiental (Steve Irwin)
(Mozart, Beethoven, etc)

Musical

reas de la IA
Sistemas Expertos Juegos Robtica Visin Artificial Prueba de teoremas y matemticas simblica Autoaprendizaje Lenguaje Natural

Sistemas Expertos

Representacin del Conocimiento

Representacin Interna

Representacin Interna

Datos de Entrada

Procesos Internos

Datos de Salida

1. Tipo Grafo o Red Semntica


Emplea crculos u valos para representar a los objetos y arcos rotulados para las relaciones.

Considerar un sistema dado por las siguientes relaciones:


a) Patricia es alumna b) Patricia les gustan los patos c) Pato es un ave d) Ave nacen de huevos

2. Tipo Estructura
Los objetos y las relaciones se representan mediante una coleccin de datos simples llamamos campos. (campo1, campo 2, . . . . . . , campo n) A su vez cada campo puede tener otros campos

Ejemplo: ( Patricia (es alumna) (le gustan los patos) ) ( Pato (es un ave) ) ( Ave (nacen de huevos) )

LISP

3. Tipo Predicado
Cada relacin se representa mediante un predicado que puede tomar el valor de Verdadero o Falso, segn se cumpla o no para los objetos involucrados. Ejemplo: Es ( Patricia, alumna ) Le Gusta ( Patricia, patos ) Es ( pato, ave ) Nacen de ( ave, huevos )
Verbo Sustantivo

PROLOG

Ejercicio # 1
1. Se define un sistema por las reglas: a) A, B y C son bloques. b) M es una mesa. c) A esta encima de M, C encima de A y B encima de C. d) A es de color Azul, B es Blanco y C es Rojo. Representar el conocimiento por medio de: Grafo Estructura Predicados

Solucin # 1
B C A M

Ejercicio # 2
Dada las siguientes relaciones a) Si Daniel, Betsy y Sandra son hijos de Gustavo y Marlene y b) Luis, Rosa y Patricia son hijos de Daniel. c) Kelly y Mayra son hijas de Betsy d) Kelly, Mayra, Luis, Rosa y Patricia son Nietos de Gustavo y Marlene. Representar el conocimiento mediante: Grafos, Estructura y Predicados

Ejercicio # 3
Las tres ranas de la derecha tienen que quedar en la izquierda y viceversa. Estas ranas quieren cruzar el charco, el problema es que tres de ellas quieren ir en un sentido y las otras en el sentido contrario, as que no habiendo forma de ponerlas de acuerdo, te corresponde ayudarles. Reglas: Slo cabe una rana en cada piedra. Si la rana est mirando a la derecha, la rana slo ir hacia la derecha, lo mismo para la izquierda. Salta mximo de piedra a piedra o sobre otra rana si la piedra siguiente est vacia. Si te atascas, termina el juego y vuelve a empezar.

La rana saltarina

Ejercicio # 4
Tres misioneros se perdieron explorando una jungla. Separados de sus compaeros, sin alimento y sin radio, slo saban que para llegar a su destino deban cruzar un ro que les bloqueaba el paso, preguntndose que podan hacer. De repente, aparecieron tres canbales llevando un bote, pues tambin ellos queran cruzar el ro. Ya anteriormente se haban encontrado grupos de misioneros y canbales, y cada uno respetaba a los otros, pero sin confiar en ellos. Los canbales se lo coman a los misioneros cuando los superaban en nmero en cualquiera de las dos orillas.

Programacin Lgica vs Funcional


Los problemas de IA se escriben en lenguajes especiales como LISP o PROLOG, porque ofrecen recursos adecuados para representar y procesar datos de sistemas de inteligencia artificial, se pueden utilizar otros lenguajes convencionales como C++, Pascal, Visual Basic, etc, pero estos exigen mayor esfuerzo en el diseo y manejo de los datos del problema. LISP List Processing PROLOG Programing Logic

Ing. Sal Prez Vega

sperez@utp.edu.pe

S-ar putea să vă placă și