Ayuda Semana 2-Sistemas Expertos

14
“INTRODUCCIÓN A LA ESCRITURA DE PROGRAMAS EN VISUAL PROLOG 

Transcript of Ayuda Semana 2-Sistemas Expertos

Page 1: Ayuda Semana 2-Sistemas Expertos

8/16/2019 Ayuda Semana 2-Sistemas Expertos

http://slidepdf.com/reader/full/ayuda-semana-2-sistemas-expertos 1/14

“INTRODUCCIÓN A LA

ESCRITURA DE

PROGRAMAS EN

VISUAL PROLOG” 

Page 2: Ayuda Semana 2-Sistemas Expertos

8/16/2019 Ayuda Semana 2-Sistemas Expertos

http://slidepdf.com/reader/full/ayuda-semana-2-sistemas-expertos 2/14

ESTRUCTURA DE UNPROGRAMA EN VP

Un programa en Visual Prolog consta de cuatro secciones: domains!" predicates!" !goal! # !clauses!$ Ca%e aclarar &uetodas estas son pala%ras reser'adas # &ue toda otra pala%ramenos las 'aria%les de%en escri%irse en min

() DOMA*NS +dominio): A&u, se de-nen los o%.etos # los tiposde datos correspondientes &ue usaremos en las de-nicionesposteriores:

 domains

 o%.eto / tipo de dato

Page 3: Ayuda Semana 2-Sistemas Expertos

8/16/2019 Ayuda Semana 2-Sistemas Expertos

http://slidepdf.com/reader/full/ayuda-semana-2-sistemas-expertos 3/14

ESTRUCTURA DE UN PROGRAMA EN VP +DOMA*NS)

Domains

persona / s#m%ol 0persona! es un o%.eto de tipo s#m%ol$

 Tipos de datos : E1isten cinco tipos prede-nidos :

a) s#m%ol : 2a# dos tipos de s,m%olos :($ Una secuencia de letras" n3meros o caracteres de su%ra#ado en la cual la

primera letra es min3scula$ E.$ tiene4lindos4o.os$

5$ Una secuencia de caracteres encerrados por comillas do%les +) usada en el

caso &ue el s,m%olo contenga espacios o no comience con min3sculas$ E.$ :

Una persona es tra%a.adora!$

%) c6ar : Acepta cual&uier car7cter" se representa encerrado entre comillas simples +8) #

consta de un solo car7cter" por e.emplo 8A9" 859" 89$

Page 4: Ayuda Semana 2-Sistemas Expertos

8/16/2019 Ayuda Semana 2-Sistemas Expertos

http://slidepdf.com/reader/full/ayuda-semana-2-sistemas-expertos 4/14

ESTRUCTURA DE UN PROGRAMA EN VP +DOMA*NS)

c) integer : Acepta n3meros enteros en el rango de ;<5=>? al <5=>=$

d) real : Acepta n3meros reales" pueden contener signo" punto decimal # 'arios

d,gitos decimales$ Tam%i@n pueden tener una parte e1ponencial" pudiendo a%arcar

n3meros desde (e;<B= a (e<B?" por e.emplo : 5=B" ;5BBB" ?>$5" ; ?$5e;

5B< o ; ?(($5>?$

e) string : Acepta una secuencia de caracteres encerrados entre comillas do%les +)" por

e.emplo : esto tam%i@n es un string!$ a diFerencia entre el tipo s#m%ol en 5" # los

strings es la Forma de representacin interna de cada uno$ El almacenamiento de los

s,m%olos est7 implementado de tal manera &ue su %3s&ueda en las ta%las de memoria

es m7s r7pida$ Adem7s" los s,m%olos" tienen pro%lemas para 6acer inserciones en

tiempo de e.ecucin$ Su uso estar7 determinado por el tipo de aplicacin &ue se

realice$

Page 5: Ayuda Semana 2-Sistemas Expertos

8/16/2019 Ayuda Semana 2-Sistemas Expertos

http://slidepdf.com/reader/full/ayuda-semana-2-sistemas-expertos 5/14

ESTRUCTURA DE UN PROGRAMA EN VP +PRED*CATES)

PRED*CATES +predicados): En esta seccin se de-nen como ser7n las relaciones

entre los o%.etos del dominio +domains) # el 'alor &ue se les asignar7 en las cl7usulas

+clauses)$

predicates

sa%e +persona)

A&u, especi-camos &ue el predicado sa%e! tiene un argumento: persona!" &ue a su

'eH en el dominio est7 declarado como s#m%ol!$

inteligente +persona)

tra%a.a +persona)

En este e.emplo 6emos de-nido un o%.eto como s,m%olo # luego lo relacionamos con

el predicado sa%e!$ Tam%i@n podemos de-nir un predicado solo con relacionar tipos

prede-nidos" como por e.emplo :

predicates

Factorial +integer" real) Esto 6ace &ue la relacin Factorial! se esta%leHca entre 5

o%.etos" uno de tipo entero # otro de tipo real$

Page 6: Ayuda Semana 2-Sistemas Expertos

8/16/2019 Ayuda Semana 2-Sistemas Expertos

http://slidepdf.com/reader/full/ayuda-semana-2-sistemas-expertos 6/14

Page 7: Ayuda Semana 2-Sistemas Expertos

8/16/2019 Ayuda Semana 2-Sistemas Expertos

http://slidepdf.com/reader/full/ayuda-semana-2-sistemas-expertos 7/14

ESTRUCTURA DE UNPROGRAMA EN VP +GOA)

GOA +meta u o%.eti'o a %uscar): En esta seccin es donde seindica e1pl,citamente cu7l es el el o%.eti'o del programa

 Tra%a.a +J) and Krite +a persona &ue tra%a.a es!" J) and n(

 A&u, 'emos &ue 6a# algunos predicados &ue nosotros node-nimos" como ser Krite! # n(!$ Am%os pertenecen a los

llamados predicados prede-nidos # son propios del lengua.eVP$

Page 8: Ayuda Semana 2-Sistemas Expertos

8/16/2019 Ayuda Semana 2-Sistemas Expertos

http://slidepdf.com/reader/full/ayuda-semana-2-sistemas-expertos 8/14

PRED*CADOS LR*TE N

Krite 6ace lo mismo &ue id@ntica instruccin en Pascal o elprint! de AS*C :

 *mprime un te1to en la pantalla$

 nl imprime solamente una secuencia de -n de l,nea$ El propsito de todo el con.unto es e'aluar tra%a.a +J)! eimprimir el resultado de ello con el mensa.e entre comillas$

 as respuestas se dar7n a tra'@s de la 'entana de di7logos ose de%er7 armar una interFaH diFerente$

SO

Page 9: Ayuda Semana 2-Sistemas Expertos

8/16/2019 Ayuda Semana 2-Sistemas Expertos

http://slidepdf.com/reader/full/ayuda-semana-2-sistemas-expertos 9/14

USO DEACTRA*NG

CORTESa estructura &ue VP Prolog mane.a m7s naturalmente es el 7r%ol$

as relaciones # sus argumentos se tratan como 7r%oles" de%ido a &ue es unaestructura su-cientemente poderosa para representar

 inFormaciones comple.as" organiHadas .er7r&uicamente # de mane.o sencillo" tantoalge%raico como desde un punto de 'ista inForm7tico$

 Si representamos en Forma de 7r%ol un e.emplo %7sico como:

  es4padre4de+pa%lo".uan) &ue indica &ue Pablo es padre de Juan"

tendr,amos algo como:

Page 10: Ayuda Semana 2-Sistemas Expertos

8/16/2019 Ayuda Semana 2-Sistemas Expertos

http://slidepdf.com/reader/full/ayuda-semana-2-sistemas-expertos 10/14

E CONTRO EN EVPPor control se entiende la Forma en &ue el lengua.e %usca las

respuestas a las cl7usulas o%.eti'os$ En VP" el control respeta dosnormas:

($ Orden de metas$ Escoger la meta del e1tremo iH&uierdo$

5$ Orden de reglas$ Seleccionar la primera regla aplica%le$

Qu@ signi-ca esto a primera de las normas nos indica &ue" cuandola cl7usula o%.eti'o o goal posee m7s de una regla unidas porcon.unciones+#) o dis#unciones+#)" @stas se toman de iH&uierda aderec6a para ser resueltas de a una" mediante la aplicacin de reglas$

Entonces" si 'ol'emos al e.emplo del men3 de un restaurante" pararesol'er:

:; comida +E"P"D)" pescado+P)$

Page 11: Ayuda Semana 2-Sistemas Expertos

8/16/2019 Ayuda Semana 2-Sistemas Expertos

http://slidepdf.com/reader/full/ayuda-semana-2-sistemas-expertos 11/14

E CONTRO EN EVP +5)

VP toma en primer lugar la meta del e1tremo iH&uierdo +&uees comida +E"P"D)) # la resuel'e" para tomar luego la segundade iH&uierda a derec6a +&ue es pescado+P)) # resol'erla" # as,sucesi'amente 6asta terminar con todas las su%metas de lacl7usula o%.eti'o$

 a segunda de las normas enunciadas m7s arri%a &uiere decir

&ue" para resol'er cada una de las su%metas" @stas sonremplaHadas por todas # cada una de las reglas de la %ase dedatos &ue las satisFagan" teniendo en cuenta el orden en &ueest7n escritas$

Page 12: Ayuda Semana 2-Sistemas Expertos

8/16/2019 Ayuda Semana 2-Sistemas Expertos

http://slidepdf.com/reader/full/ayuda-semana-2-sistemas-expertos 12/14

D*AGRAMA DE UNS*STEMA EJPERTO

Page 13: Ayuda Semana 2-Sistemas Expertos

8/16/2019 Ayuda Semana 2-Sistemas Expertos

http://slidepdf.com/reader/full/ayuda-semana-2-sistemas-expertos 13/14

ESCR**R SU PR*MERPROGRAMA

Page 14: Ayuda Semana 2-Sistemas Expertos

8/16/2019 Ayuda Semana 2-Sistemas Expertos

http://slidepdf.com/reader/full/ayuda-semana-2-sistemas-expertos 14/14

REV*SAR AS ACT*V*DADES DE *RO DE CURSO