Sei sulla pagina 1di 96

LOGO

Ing. Carlos Eduardo López Valencia


Representación del conocimiento,
razonamiento y los Aspectos
Metodológicos en Inteligencia.
LOGO
2.1.- Mapas conceptuales

Los mapas conceptuales son artefactos para la


organización y representación del conocimiento.
Tienen su origen en las teorías sobre la
psicología del aprendizaje de David Ausubel
enunciadas en los años 60.
Su objetivo es representar relaciones entre
conceptos en forma de proposiciones
LOGO

Los mapas conceptuales se estructuran en


forma jerárquica en la que los conceptos más
generales están en la raíz del árbol y a medida
que vamos descendiendo por el mismo nos
vamos encontrando con conceptos más
específicos.
recurso esquemático para representar un
conjunto de significados conceptuales incluidos
en una estructura de proposiciones que tiene
por objeto representar las relaciones
significativas entre los conceptos del contenido
LOGO
LOGO
Características de un mapa
conceptual
 Los mapas conceptuales deben ser simples, mostrar
claramente las relaciones entre conceptos y/o proposiciones.
 Van de lo general a lo específico, las ideas más generales o
inclusivas, ocupan el ápice o parte superior de la estructura y
las más especificas y los ejemplos la parte inferior.
 Deben ser vistosos.
 Los conceptos, que nunca se repiten van adentro de los óvalos
y las palabras de enlace se ubican cerca de las líneas de la
relación.
 Para las palabras de enlace se pueden utilizar verbos,
preposiciones, conjunciones, u otro tipo de nexo conceptual, las
palabras de enlace le dan sentido al mapa.
 Si la idea principal puede ser dividida en dos o más conceptos
iguales estos conceptos deben ir en la misma línea o altura.
LOGO
LOGO
Redes semánticas

Una red semántica es una técnica clásica de


representación de la Inteligencia Artificial
utilizada para información relativa a las
proposiciones.
También llamada red de proposiciones
Una proposición es una frase verdadera o falsa,
como “todos los perros son mamíferos” y “un
triángulo tiene tres lados”. Son formas de
conocimiento declarativo porque establecen
hechos
LOGO

La estructura de una red semántica se muestra


gráficamente en términos de nodos y los arcos
que los conectan. A los nodos suele
denominárseles como objetos y a los arcos
como vínculos o bordes.
Las relaciones son de gran importancia en las
redes semánticas porque proporcionan la
estructura básica para la organización del
conocimiento
LOGO

Juan
LOGO

el trabajo original de Quillian modeló la memoria


humana como una red asociativa en la cual los
conceptos eran los nodos y los vínculos
formaban las conexiones entre ellos.
A la duplicación de las características de un
nodo por parte de un descendiente se le llama
herencia.
LOGO
LOGO
dificultades

Límites con la representación (falta de


estandares)
Explosión combinatoria de la búsqueda de
nodos.
Las redes semánticas son lógicamente
inadecuadas porque no pueden definir el
conocimiento de la forma en que lo hace la
lógica
LOGO

son heurísticamente inadecuadas porque no


hay forma de insertar en la red información
heurística relacionada con la manera de
explorarlas de forma eficiente.
LOGO
Razonamiento monótono

Sistema que permite obtener nuevos


conocimientos (conclusiones) a partir de una
serie de conocimientos previos (premisas).
BC |= α (del conjunto de premisas BC se deduce la conclusión α).

Se dice que un sistema de razonamiento es monótono cuando un aumento


de las premisas nunca puede hacer disminuir el conjunto de conclusiones

El monotonismo permite que las reglas de inferencia se puedan aplicar siempre


que se hallen premisas aplicables en la base del conocimiento; la conclusión de la
regla debe permanecer sin hacer caso de qué más hay en la base del
conocimiento.
LOGO
Lógica de predicados

Mas completa que la anterior, es lo que


comúnmente denominamos silogismo hipotético
La lógica de predicados funciona con la relación
a la estructura interna de las afirmaciones,
sobre todo con el uso de palabras especiales
llamadas cuantificadores (“todo”, “algo”, “no”),
estas palabras son muy importantes porque
cuantifican todas las palabras.
LOGO

La lógica formal, nace de la filosofía antigua y


fue uno de los métodos mas antiguos para la
representación del conocimiento.
 Un alfabeto
 Un lenguaje formal
 Axiomas
 Reglas de inferencia
LOGO

Alfabeto, consiste de los símbolos a partir de los


cuales se construyen los enunciados.

 Constantes son los componentes mas sencillos y


se usan para representar un elemento específico
del dominio. (objetos físicos, transacciones,
ideas.
• TILIN Un perro
• AZUL Un color
• CONSERVADOR Un pensamiento político
LOGO

Variable. Un símbolo variable se emplea para


representar un conjunto de elementos del
dominio sin especificar elemento alguno en
concreto:
 Perro Un elemento que es un perro, pero con
una identidad no especificada.
 Color Un color no especificado.
 Opinión Cualquier opinión
LOGO

Funciones. Además de los símbolos constantes


y variables, se puede emplear una función para
identificar un elemento del dominio. Una función
describe un elemento identificándolo como el
resultado único de la aplicación de una
transformación entre otros elementos del
dominio.
Una letra minúscula se emplea como el símbolo
de una función y los argumentos pueden ser
cualquier término válido, donde un término es
una forma de identificar un elemento del
dominio.
LOGO

Padre (JUAN) : Una invocación a una


función que especifica el elemento único, en
este caso un hombre, que es el padre de JUAN.
Madre (padre (JUAN)): Elemento único que es
la madre del padre de JUAN abuela de JUAN.

Asesino (x): La persona única que asesinó al


elemento no especificado representado por x.
LOGO

Predicado. Los predicados se emplean para


representar relaciones dentro del dominio e
indican que un elemento se relaciona en alguna
otra forma específica. Un predicado tiene el
valor de verdadero si los elementos dados
están relacionados de modo específico y de
falso si no lo están.
LOGO

Los predicados (serie de letras mayúsculas)


junto con términos que identifican los elementos
relacionados, se emplean para conformar
fórmulas atómicas (o átomos), las cuales están
entre los bloques básicos de construcción de la
lógica de predicados. Entre los ejemplos están:
LOGO

HOMBRE (TITO) Tito es un hombre


MASALTO (TITO, PEPE) Tito es más alto que
Pepe
MASALTO (TITO, padre (TITO)) Tito es más
alto que su padre
LOGO
conjunciones

Los componentes descritos hasta el momento


tienen poco valor para representar enunciados
complejos compuestos.
Por ejemplo, sería muy difícil representar el
enunciado
“Mi casa es azul, Victoriana de dos pisos, con
persianas amarillas y está en un lote
esquinero”.
 Para expresar proposiciones compuestas, empleamos
conjunciones que combinan fórmulas para construir
Fórmulas bien definidas (FBD) más complejas.
LOGO

^ And (Y)
V Or (O) inclusivo
→ Implica
≡ Equivalente a
~ No (negación)
LOGO

^ Se usa para construir fórmulas que


señalan que los diferentes componentes
deben ser verdaderos para que la FBD
completa sea verdadera. Cada componente
de la fórmula en tal expresión se llama
conjunto, y la expresión completa se llama
conjunción.
 AZUL (MI-CASA) ^ DOS-PISOS(MI-CASA) ^
VICTORIANA(MI-CASA) ^
PERSIANASAMARILLAS(MI-CASA) ^
ESQUINERA(MI-CASA)
LOGO

V Se usa para construir fórmulas cuya


veracidad depende solamente de la
veracidad de cualquiera de los componentes.
Cada componente de la fórmula se llama
disjunto y la expresión completa se llama
disyunción. Por ejemplo “Hernán compró un
automóvil o un camión”, se representa por la
disyunción:
COMPRA (HERNAN, AUTOMOVIL) V
COMPRA (HERNAN, CAMION)
LOGO

~ El símbolo de negación (~), el cual algunas


veces se considera como una
pseudoconjunción porque no enlaza
realmente fórmulas, se emplea para cambiar
el valor de la veracidad de una FBD de
verdadero a falso o de falso a verdadero.
Cuando se aplica ~ a una fórmula, ésta se
convierte en negación. Por ejemplo:
~ MUCHACHO (LAURA) representa la frase,
“Laura no es un muchacho”.
LOGO

→ Se usa para desarrollar constructos Si-


Entonces y se denomina implicación. El hecho
que el antecedente sea verdadero implica que
el consecuente sea también verdadero. Por
ejemplo:
[PRESENTE (CHISPA) ^ PRESENTE
(COMBUSTIBLE) ^ PRESENTE (AIRE)] →
COMBUSTION (COMBUSTIBLE)
LOGO

≡ Se usa para indicar la equivalencia lógica de


dos fórmulas. Una fórmula tal como X ≡ Y indica
que la veracidad del lado izquierdo y del lado
derecho son equivalentes, sin observar como se
interpretan (mientras las variables sean
interpretadas coherentemente).
LOGO
cuantificación

Desafortunadamente, aunque el empleo de


conjunciones, incrementa de manera apreciable
nuestra potencia expresiva, aún no podemos
expresar el hecho simple, “toda persona
necesita aire”.
El cuantificador universal ∀x se utiliza para
aseverar que una fórmula es verdadera para
todos los valores de la variable asociada. Por
ejemplo, “Toda persona necesita aire” se puede
representar como:
∀x [PERSONA (x) → NECESITA-AIRE (x)]
LOGO

El cuantificador existencial ∃x se emplea para


aseverar que por lo menos existe alguna
asignación para x, que hará que la fórmula
asociada sea veraz.
Por ejemplo, “El propietario del automóvil
también lo es del bote” se puede representar
como:
∃x [PROPIETARIO (x, AUTOMOVIL) ^
PROPIETARIO (x, BOTE)]
LOGO

En este caso, la fórmula es cierta si existe un


dueño que posea un automóvil y un bote.
También es cierto si varias (o todas) personas
del dominio posean ambos (son propietarios
mediante una sociedad).
LOGO

La variable asociada con un cuantificador se


llama variable cuantificada, y el alcance del
cuantificador es la fórmula que sigue. Las
variables que se referencian en los
cuantificadores se llaman ligadas y aquellas que
no lo están se llaman libres. La mayoría de las
fórmulas de interés para los sistemas expertos
se llaman frases, que son las fórmulas que
contienen solamente variables ligadas
LOGO

El lenguaje formal asociado con la lógica de


predicados es el conjunto de todas las fórmulas
que se pueden construir legalmente a partir del
alfabeto de símbolos (el conjunto de todos los
enunciados que podrían hacerse, dados los
símbolos expuestos).
Una fórmula legalmente construida en el
lenguaje se llama fórmula bien definida FBD y
se define inductivamente como sigue:
LOGO

1.- Una fórmula atómica es una FBD.


2.- Las siguientes son FBD: (~ F), (F^G), (F V G),
(F → G). Donde: F y G son FBD
3.- Las siguientes son FBD: (∀xF) y (∃xF) donde F
es una FBD y x una variable.
LOGO
Lógica de evaluación

Verdad y prueba formal


El proceso de inferir nuevos conocimientos es
un proceso estructurado como una prueba
similar a las pruebas desarrolladas en
matemáticas
 Este proceso que depende solamente de
manipulaciones sintácticas y se ajusta cercanamente al
ideal teórico de un sistema experto, es un método para
la demostración rigurosa de la verdad de un enunciado
propuesto, basado en la verdad que ya se haya
conocido
LOGO

El valor de la verdad de una fórmula atómica se


determina mediante la aplicación de la
interpretación del predicado.
Si al darse la interpretación del predicado en el
dominio expuesto, la relación descrita por el
predicado con sus argumentos es cierta,
entonces el valor de verdad del átomo es
verdadero; de otra manera, el valor de verdad
del átomo es falso.
LOGO

En la lógica proposicional, el valor de la verdad


de una fórmula compleja se puede establecer
mediante el empleo del método de la Tabla de
Verdad.
LOGO

Para determinar la veracidad o falsedad de una


complicada fórmula compuesta en lógica de
predicados, aplicamos en forma sucesiva las
relaciones de la tabla de verdad para reducir las
fórmulas componentes, iniciándose desde el
“interior” hacia fuera.
Por ejemplo, dado el conocimiento de que algún
predicado P es falso y que los predicados Q y R
son verdaderos, para establecer el valor de
veracidad de la expresión:
[(P ν (Q ^ R)) ^ ~ P] → (Q ^ P)
LOGO

 empleamos en primer lugar la tabla de verdad para determinar que


Q^R es cierta. La expresión compuesta se reduce luego a
 [(P ν tt) ^ ~ P] → (Q ^ P)
 Cuando se establece que P ν tt es cierta y se reduce la expresión a
(tt ^ ~ P) → (Q ^ P)
 Esta expresión se reduce entonces a la forma final empleando la
siguiente secuencia:
 (tt ^ tt) → (Q ^ P)
 tt → (Q ^ P)
 tt→ff
 ff
LOGO
La demostración y sus métodos

Demostradores de teoremas.
 Conocidos como razonadores automáticos.
 Usados como asistentes
• Proporcionan consejo, el usuario selecciona la
estrategia a seguir.
 El programa SAM (Semi-Automated
Mathematics) fue el primero en demostrar un
lema.
 El programa AURA también ha respondido a
preguntas abiertas en diversas áreas de las
matemáticas
LOGO

SEGUNDA PARTE
LOGO
El método de resolución de
Robinson
El método de resolución de Robinson esta
considerado como el precursor de toda una
familia de métodos, que hacen uso de los
conceptos centrales, pero que, de alguna
manera proponen algún refinamiento.
El aspecto central del método consiste en
probar que si S contiene la cláusula vacía,
entonces es inconsistente.
LOGO

En caso de que S no contenga la cláusula


vacía, se intentará derivarla a partir de las
cláusulas existentes en S. Si la cláusula vacía
es derivada de las cláusulas existentes, S es
inconsistente.
LOGO
Resolución

La muy eficaz regla de resolución de inferencia,


introducida por Robinson en 1965, con
frecuencia se implanta en programas de
Inteligencia Artificial para prueba de teoremas
Esta aplicación de la resolución hace que los
probadores automáticos de teoremas como
PROLOG resulten herramientas prácticas para
resolver problemas, porque en lugar de tener
que probar diferentes reglas de inferencia
esperando que una tenga éxito, puede aplicarse
la regla de resolución simple, método que
puede reducir mucho espacio en la búsqueda.
LOGO

Como una manera de introducir la resolución,


consideremos primero el silogismo sobre
Sócrates expresado en PROLOG como se
muestra a continuación, donde los comentarios
se muestran con un signo de porcentaje:
Mortal (X) :- hombre (X). %todos los
hombres son mortales
Hombre (sócrates). %Sócrates es un
hombre
:- mortal (sócrates). %consulta:
¿Sócrates es mortal?
Sí %PROLOG responde sí
LOGO

Antes de que pueda aplicarse la resolución, la


fórmula bien formada (fbf) debe estar en una
forma normal o estándar.
Forma normal conjuntiva
La forma de cláusula
Subconjunto de cláusula de Horn

La idea básica de la forma normal es expresar


la fbf de unaforma estándar que sólo utilice ٨, ٧y
tal vez ~.
LOGO

Términos como P1 deben ser literales, lo que


significa que no contienen conectores lógicos
como el condicional o bicondicional, o
cuantificadores. Una literal es una fórmula
atómica o una fórmula atómica negada. Por
ejemplo, la siguiente fbf:

(A ٧ B) ٨ (~B ٧ C)
LOGO

Esto puede expresarse de forma disyuntiva de


la siguiente forma.

equivalencia:
p → q ≡~ p ٧ q
Así:
A1 ٨ A2 … AN → B1 ٧ B2 … BM
≡~(A1 ٨ A2 … AN) ٧ (B1 ٧ B2 … BM)
≡~ 1 ∨ A ~ A ... 2 ~ N 1 2 M A ∨ B ∨ B ...B
Donde la ley de De Morgan:
~ (p ∧ q) ≡ ~ p ∨ ~ q
LOGO

El problema que surge al tratar de probar


directamente un teorema, es la dificultad de
deducirlo utilizando sólo las reglas de inferencia
y los axiomas del sistema. Esto puede requerir
mucho tiempo para deducir un teorema o tal vez
no seríamos lo suficientemente listos para
hacerlo. Para probar que un teorema es
verdadero, se utiliza el método clásico de
reducción al absurdo, o método de
contradicción, entonces la fbf original no
negada es un teorema.
LOGO

El objetivo básico de la resolución es inferir una


nueva cláusula, el resolutivo, de otras dos
cláusulas, llamadas cláusulas padre; el
resolutivo tendrá menos términos que los
padres. Al seguir el proceso de resolución,
terminará por obtenerse una contradicción o el
proceso se terminará porque no se ha hecho
ningún progreso. En el siguiente argumento se
muestra un ejemplo simple de resolución.
AvB
A v~ B


----------------
A
LOGO
LOGO
Prolog

Es un lenguaje de programación con paradigma


de programación lógica. Viene del acrónimo de
PROgamming LOGic.

Basa su funcionamiento en lógica de primer


orden. Utiliza el concepto de predicados lógicos
para representar hechos y representar reglas de
inferencia.
LOGO
Prolog

Prolog es un lenguaje interpretado.

En este curso se utiliza la herramienta swiprolog


dado que se puede ejecutar en Windows y es
software libre.

Los programas se pueden hacer directamente


sobre la shell o bien, a través de un editor de
Texto plano.
LOGO
Prologo

Todo sistema experto se compone de dos


elementos principales:

 La base de conocimientos (hechos)


 El motor de inferencia (reglas)

Generalmente las reglas son la interfaz que


tiene la aplicación hacia el usuario para realizar
preguntas.
LOGO
PROLOG

Hechos:
 las aves vuelan
 los pingüinos no vuelan
 "pichurri" es un ave
 "sandokan" es un perro
 "alegría" es un ave

Los hechos pueden ser simples o complejos


LOGO
PROLOG

% Comentarios en Prolog
% Base de Hechos

 volar(ave). %¿Sería regla?


 novolar(pingüinos). %omitir dicho predicado
 ave("pichurri”).
 perro(“wendo”).
 ave("alegría“).
LOGO
PROLOG

Reglas o Restricciones:

una mascota vuela si es un ave y no es un pingüino

Preguntas
¿ "pichurri" vuela ?
¿ qué mascotas vuelan ?
LOGO
Prolog

%Reglas
vuela(X):- ave(X).
Mascotavuela(X):- ave(X).

Preguntas desde el shell


vuela(“pichurri”)
Mascotavuelan(X)
LOGO
PROLOG

Términos: constantes (a), variables (X), funciones


(f(X, Y ))

pepe, juan, Cliente, cliente-de(X, Y )

Fórmulas atómicas: predicados definidos sobre


términos

tipo-cliente(X,bueno)
LOGO PROLOG

Fórmulas bien formadas (WFF: fórmulas atómicas


unidas por conectivas (^, v, ¬) y cuantificadas (1A
universal, 1B existencial)

1AX, 1BZ cliente(X) ^ compra(X, Z) ^ caro(Z) 


tipo-cliente(X, bueno)

abuelo(X,Y) :- padre(X,Z), padre(Z,Y).


1AX, Y 1BZ padre(X, Z) ^ padre(Z, Y)  abuelo(X,
Y)
LOGO
PROLOG

abuelo(X,Y) :- padre(X,Z), madre(Z,Y).


abuelo(X,Y) :- padre(X,Z), padre(Z,Y).

abuelo(X, Y) = {(pepe, juan), (pepe, ana), … , (luis,


javier)}

progenitor(X, Y ) :- padre(X, Y ).
progenitor(X, Y ) :- madre(X, Y ).
LOGO
PROLOG

abuelo(X,Y) :- padre(X,Z), madre(Z,Y).


abuelo(X,Y) :- padre(X,Z), padre(Z,Y).

abuelo(X,Y) :- padre(X,Z), progenitor(Z,Y).

hechos: A. (A átomo)
reglas: A :- A1, ..., An. (n>0, y A, A1, ..., An átomos)
LOGO
PROLOG

Hechos:
 padece(jon, gripe).
 padece(jon, hepatitis).
 padece(ana, gripe).
 padece(carlos, alergia).
 es-síntoma(fiebre, gripe).
 es-síntoma(cansancio, gripe).
 es-síntoma(estornudos, alergia).
 suprime(paracetamol, fiebre).
 suprime(antihistamínico, estornudos).
LOGO
PROLOG

Reglas:
 debe-tomar(Per, Far) :- padece(Per, Enf), alivia(Far,
Enf).
 alivia(Far, Enf) :- es-síntoma(Sin, Enf), suprime(Far,
Sin).

Preguntas:
 ? padece(carlos, gripe).
 ? padece(jon, Z).
 ? alivia(paracetamol, gripe).
LOGO
PROLOG

 ? alivia(X, gripe).
 ? debe-tomar(Y, antihistamínico).
 ? alivia(X, Y).
 ? suprime(X, fiebre), suprime(X, estornudos).

¿Qué devuelve cada pregunta como resultado?


LOGO
PROLOG

hija (*A, *B) <- mujer (*A), padre (*B, *A).


hija (*A, *B) <- mujer (*A), madre (*B, *A).

A continuación se muestra un programa completo


en PROLOG:

%% declaraciones
padrede('juan', 'maria').
padrede('pablo', 'juan').
LOGO PROLOG

padrede('pablo', 'marcela').
padrede('carlos', 'debora').
%%Reglas
% A es hijo de B si B es padre de A hijode(A,B) :-
padrede(B,A).
abuelode(A,B) :- padrede(A,C), padrede(C,B).
hermanode(A,B) :- padrede(C,A) , padrede(C,B), A
\== B.
familiarde(A,B) :- padrede(A,B).
LOGO PROLOG

familiarde(A,B) :- hijode(A,B).
familiarde(A,B) :- hermanode(A,B).
%% consultas
% juan es hermano de marcela?
?- hermanode('juan', 'marcela').
Yes
?- hermanode('carlos', 'juan'). No
?- abuelode('pablo', 'maria'). Yes
?- abuelode('maria', 'pablo'). no
LOGO
PROLOG

%unificación con evaluación.


?- X is 3+5.
X=8

%unificación simbólica
?- X = 3+5.
X = 3+5
LOGO
PROLOG

%comparación con evaluación


?- 3+5 =:= 2+6.
yes

%comparación simbólica.
?- 3+5 == 2+6.
no
?- 3+5 == 3+5.
yes
LOGO PROLOG

Los programas en PROLOG se definen a través de


Algoritmos, Lógica y Control.

En caso de que una consulta de más de un


resultado, el prompt no aparece en la shell. Se
puede utilizar el operador . Para terminar el
resultado, o bien, el operador ; para continuar con
los emparejamientos de resultados.

Se pueden combinar preguntas para obtener


respuestas más exactas.
LOGO
PROLOG

%Combinación de preguntas
legusta(pepe, pesca).
legusta(maria, bailar).
legusta(ana, pesca).
legusta(pepe, musica).
legusta(maria, musica).
legusta(ana, bailar).

%preguntas
LOGO PROLOG

¿Le gusta la música a Pepé y a María?


?_ legusta(pepe,musica), legusta(maria, musica).

¿Le gusta bailar a Pepé o le gusta la música a


maria?
?_ legusta(pepe,bailar); legusta(maria, musica).
LOGO
Prolog

¿Le gusta bailar a Pepé y a maria no le gusta la


música?
legusta(pepe,bailar),
not(legusta(maria,musica)).
LOGO
PROLOG

El portal de redes sociales del ITM desea diseñar


un Sistema Experto para encontrar la pareja ideal
de cada estudiante si es que existiese.

Para lograr esto, se tienen en la base de


conocimientos registrados los gustos de cada
usuario (color de ojos, altura, complexión, carro,
etc.). Se da un punto por cada coincidencia.
LOGO
PROLOG

Diseñar la regla o reglas que determinen la


mejor pareja de cada usuario. (Se deben tener
al menos 2 hombres y 2 mujeres con 5 gustos
c/u).

Probar su desarrollo a través de las reglas


predefinidas.
LOGO PROLOG

Se puede aplicar recursividad en PROLOG además


de que algunos programas en programación
estructurada pueden ser implementados.

%Sucesiones
sucesor(1,2).
sucesor(2,3).
sucesor(3,4).
sucesor(4,5).
sucesor(5,6).
LOGO
PROLOG

sucesor(6,7).
suma(1,X,R):-sucesor(X,R).
suma(N,X,R):-sucesor(M,N), suma(M,X, R1),
sucesor(R1, R).

%Como se crearía una consulta?


%¿Qué es lo que el programa haría?
LOGO
PROLOG

% Ejemplo
entrada(paella).
entrada(gazpacho).
entrada(consome).
carne(filete_de_cerdo).
carne(pollo_asado).
pescado(trucha).
pescado(bacalao).
postre(flan).
LOGO
PROLOG

postre(nueces_con_miel).
postre(naranja).
calorias(paella, 200).
calorias(gazpacho, 150).
calorias(consome, 300).
calorias(filete_de_cerdo, 400).
calorias(pollo_asado, 280).
calorias(trucha, 160).
calorias(bacalao, 300).
LOGO
PROLOG
calorias(flan, 200).
calorias(nueces_con_miel, 500).
calorias(naranja, 50).
plato_principal(P):- carne(P); pescado(P).
comida(Entrada, Principal, Postre):-
entrada(Entrada), plato_principal(Principal),
postre(Postre).
valor(Entrada, Principal, Postre, Valor):-
calorias(Entrada, X), calorias(Principal, Y),
calorias(Postre, Z), sumar(X, Y, Z, Valor).
LOGO
PROLOG

comida_equilibrada(Entrada, Principal, Postre):-


comida(Entrada, Principal, Postre), valor(Entrada,
Principal, Postre, Valor), menor(Valor, 800).

sumar(X, Y, Z, Res):- Res is X + Y + Z.


menor(X, Y):- X < Y.
dif(X, Y):- X \==Y.
LOGO
Prolog

Encontrar: ¿Cuántas calorías tiene la


combinación paella, trucha, naranja? ¿Qué
comida que tiene cónsome de entrada es la
más balanceada?
LOGO
PROLOG

Se pueden definir funciones recursivas como el


factorial:

fac(0,1).
fac(N,F) :- N > 0, M is N - 1, fac(M,Fm), F is N * Fm.

¿Cómo se expresa la serie de fibonnaci?


LOGO
Razonamiento probabilístico.

El concepto o idea que generalmente se tiene


del término probabilidad es adquirido de forma
intuitiva, siendo suficiente para manejarlo en la
vida corriente.
A la medida numérica de la posibilidad de que
ocurra un suceso A cuando se realiza el
experimento aleatorio. A esta medida la
llamaremos probabilidad del suceso A y la
representaremos por p(A).
LOGO
Ventajas:

La principal ventaja del razonamiento


probabilístico sobre el razonamiento lógico es
que el primero permite tomar decisiones
racionales aún en los casos en que no haya
suficiente información para probar que cualquier
acción dada funcionará.
Las redes bayesianas o probabilísticas son una
representación gráfica de dependencias para
razonamiento probabilístico en sistemas
expertos.
LOGO
Teorema de Bayes

La teoría de la probabilidad se puede aplicar:


 A los sucesos o eventos: probabilidad de
ocurrencia.
 A las proposiciones: probabilidad de que sean o
no ciertas.
La mayoría de las veces se define la
probabilidad en función de las frecuencias de
ocurrencias de sucesos contenidos en un
conjunto de posibilidades.
LOGO

Por ejemplo, la probabilidad de que mañana


llueva teniendo en cuenta la información
meteorológica de que disponemos.
Lo incompleto de la información de que
disponemos nos lleva a asignar un grado de
certidumbre o de credibilidad a las
proposiciones. De este modo, las
probabilidades se pueden utilizar para, a partir
de unas evidencias, dar una medida del grado
de credibilidad que se da a unas proposiciones,
a partir de ellas realizar inferencias.
LOGO

La probabilidad de que una variable aleatoria


pueda o no ocurrir, o que una proposición Xi,
sea cierta o no lo sea, se denomina
probabilidad incondicional o a priori. Es decir,
representa la probabilidad de que algo ocurra
p(A) antes de considerar ninguna información
adicional p(A|E).
LOGO

Supongamos que tenemos dos proposiciones X


e Y, y una serie de evidencias o hipótesis que
recogemos bajo la proposición Z. Se designa
P(X|Z) a la probabilidad condicional de que X
sea verdadera dado que Z es verdadera.
También se suele decir, la probabilidad de X
dada Z de manera similar designamos por
P(Y|Z) la probabilidad de Y dado Z.
LOGO

El conocimiento de la ocurrencia de un suceso


puede modificar las probabilidades de otros
sucesos. Por ello, cada vez que se dispone de
nueva información, las probabilidades de los
sucesos pueden y suelen, cambiar.
LOGO

A primera vista, la regla de Bayes no parece


muy útil. Requiere tres términos (una
probabilidad condicional y dos probabilidades
incondicionales) sólo para calcular una
probabilidad.
La regla de Bayes es útil en la práctica porque
hay muchos casos donde disponemos de
buenas estimaciones probabilistas para estos
tres números y necesitamos calcular el cuarto
LOGO

Un médico sabe que la enfermedad de


meningitis causa al paciente que el cuello se
agarrote, digamos, el 50 por ciento de las
veces. El médico también conoce algunos
hechos incondicionados: la probabilidad a priori
de que un paciente tenga meningitis es 1/50
000 y la probabilidad priori de que cualquier
paciente tenga un cuello agarrotado es 1/20.
 Si tomamos s como la proposición de que el
paciente tiene un cuello agarrotado y m como la
proposición de que el paciente tiene meningitis,
tenemos
LOGO

Es decir, esperamos que sólo un paciente de


entre 5, 000 con un cuello agarrotado tengan
meningitis.

Potrebbero piacerti anche