TEMA: INTRODUCCÍON DE PROLOG
Fecha: 14 de Enero del 2016
INTRODUCCIÓN
La Inteligencia Artificial ha venido constituyendo
consigo varios lenguajes de programación y uno de ellos es el denominado
Prolog. Un lenguaje de fácil uso para programadores, basado en una base de conocimiento
para poder dar una respuesta a determinada interrogante realizada por el
programador.
Prolog emplea una estructura muy básica constituida por;
hechos, reglas, variables y consultas,
permitiéndole ser entendido por cualquier inexperto en cuanto se refiera a la
materia.
En este documento veremos más afondo acerca de este
lenguaje de programación que ha sido parte de la Inteligencia Artificial.
MARCO TEÓRICO
¿QUÉ ES PROLOG?
Prolog
se diferencia de otros lenguajes de programación por ser un lenguaje
conversacional; lo que quiere decir es que este mantiene un dialogo continuo
con el programador desde el comienzo hasta el final de la sesión. Dicho dialogo
viene siendo un interrogatorio, ya que programador en todo el transcurso le plantea preguntas al sistema Prolog.
Por
su parte, el sistema Prolog responderá a cada una de las preguntas que se le
formulen siempre y cuando sea posible.
Prolog
le indica al programador que está esperando a que éste le formule una pregunta
mostrando en pantalla el siguiente símbolo ?- .
Tras
este símbolo, el programador ya puede teclear cualquier pregunta, la misma que
debe ser terminada en un punto y pulsar el retorno de carro. Con ello, el
programador está solicitando a Prolog que responda a dicha pregunta formulada.
Luego
de que la pregunta fue procesada por el sistema Prolog mostrará en pantalla la
respuesta correspondiente.
Por
ejemplo, si queremos preguntar a Prolog si 5 es igual a 2+3 podemos teclear la
pregunta
?- 5
es 2+3
Yes
Base de Conocimiento de Prolog
La base
de conociendo forma un papel muy importante en Prolog, ya que para responder a las preguntas
formuladas por el programador, Prolog consulta una base de conocimiento. Cuando
inicia una sesión Prolog, la base de conocimiento lo que hace es almacenar un conocimiento
básico que incluye cosas, conceptos y definiciones de la aritmética de los
números naturales. Este conocimiento es el que le da a Prolog la eficiencia de
poder responder correctamente a cada una de las preguntas que se le llegases a
formular.
Ejemplo:
Obviamente, Prolog no es capaz de poder responder cualquier pregunta que se le formule. Por ejemplo, si
le pregunta a Prolog si el pato Lucas es un pato
Prolog
nos dará como respuesta que no sabe
determinar si algo es o no un pato, pues su base de conocimiento no incluye
información acerca de los patos. Formalmente, lo que ocurre es que el predicado
lógico ‘esPato/1’ no está definido (undefined predicate).
La base de conocimiento se expresa
mediante hechos y reglas Prolog , que no son otra cosa que una
representación sintética concreta de Horn de primer orden.
Hecho: Es un hecho de
lenguaje cotidiano .En lenguaje normal, una proposición puede ser “hace calor”.
Ejemplo:
Este hecho, consta de dos objetos, “coche” y “ruedas”, y de una relación
llamada “tiene”. La forma de representarlo en Prolog es:
Tiene
(coche, ruedas).
Nota: Los nombres de los
objetos y relaciones deben comenzar con una letra minúscula.
Reglas: Las
reglas son las capacidades del programa. Estas son consultadas al hacer una
consulta para verificar su validez o invalidez.
Las
reglas se utilizan en Prolog para significar que un hecho depende de uno o más
hechos. Son la representación de las implicaciones lógicas del tipo pàq (implica q).
Una
regla tiene una cabeza y un cuerpo, unidos por el signo “:-”.
Nota: La cabeza está
formada por un único hecho, el cuerpo puede
ser uno o más hechos (conjunción de hechos), separados por una coma (“,”), que
actúa como el “y” lógico, y las reglas finalizan con un punto (“.”).
VENTAJAS
Una de las ventajas de Prolog es que este le da al usuario la
facilidad para programar ya que se
pueden escribir programas rápidamente, con pocos errores originando programas
claramente legibles, aun si no se conoce muy bien el lenguaje
DESVENTAJAS
CONCLUSIONES
Prolog es un lenguaje de programación, el mismo que lo
podemos considerar como un lenguaje simple, pero no obstante es muy eficiente
ya que este se basa en base del conocimiento, a la hora de querer obtener la
solución a diferencia de otros lenguajes a este solo le debemos hacerle
interrogantes, permitiéndole al programador satisfacción al momento de formular
una pregunta.
BIBLIOGRAFÍA
Jones
K; Yong, G. 2012.Introducción al lenguaje de programación lógica Prolog. Universidad
de Costa Rica.
Llorens, F; Castel, M .2010. Prácticas de
Lógica Prolog. (En línea).Consultado, 11 ener 2016. Formato PDF. Disponible en:http://www.dccia.ua.es/logica/prolog
Russell, S; Norvig, P. 2008. Inteligencia
Artificial Un Enfoque Moderno. Segunda Edición. Pearson Education.
España
No hay comentarios:
Publicar un comentario