Beruflich Dokumente
Kultur Dokumente
IA7700-T
M.C. Juan Carlos Olivares Rojas
olivares@correo.fie.umich.mx
Agenda
Repaso bsico de IA sobre:
Introduccin
Agentes lgicos
Mtodos de Bsqueda
Prolog
Lisp
Planificacin
Basic Concepts
Whats
the
diference
bewtween
Artificial Intelligence (AI) and Human
Intelligence?
All the sucessfully AI Systems are based
on human knowledge and experience.
Most of the AI Systems can be
costructed only when the human
intelligence can be expresed in easily
form (for instance: if x then y).
Basic Concepts
AI Systems extend human experts, but
never cant substituting either taken
most of human intlligence.
AI Systems dont have common sense
and generallity of human beings.
Human Intelligence are very complex
for computing.
Basic Concepts
If a problem can not be described, then
can not be programmed
Human
features:
Intelligence
have
Reasoning.
Behavior.
Use of Metaphores and Analogies.
Concepts Creating and Use.
these
Problem
Make a Java Program which calculate if
a number give for the user is a Perfect
Number or not.
What are the steps for solving this
problem?
Inteligence
Capacity to solution all clasess of problems
Intelligence is very subjective.
Intelligence
animals
Distinguished
man
of
Turing Test
Turing Test
Turing Test is passed when the
interviewer can not distinguished the
answer between the human and the
machine.
The new AI systems required
perception sense to pass the test.
the
AI Genesys
Martin Minsky did cotributions to define
brain models in computers.
ELIZA of Joseph Weizenbaum and JULIA
of Mauldin were the first AI Systems
with Intelligent Dialagues.
The first AI Systems were development
for solving some problems like chess.
Gnesis de la IA
In 1956 John McCarthy and Claude Shanon
published Automata Studies where defined
the Automata Theory.
In 1956 John McCarthy defined the AI
concept, reason why he is considered the AI
Father.
The AI history is very old. The greeks were
the first to use logic to solve a lot of
problems.
AI Genesys
In 1965 Chomsky defined the Formal
Languages Theories.
McCulloh and Pits in 1943 define the
relations between neurons and simple
computational elements.
In
1962
Rosenblatt
defined
the
Perceptron and the Neuronal Networks
Teories.
1.2 Applications
Solution Search
Logic
Expert System
Games
Natural Language
Recognition
Neuronal Networks
Genetic Algorithms
Pattern Recognition
Robotic
Machine Learning
Virtual Reality
Maze Problem
Additional Homework: Study Graph
Theory,
Discret
Mathematics,
Computing Theory (Compilers). Arrays
in
some
high-level
programming
languages.
How a person in a maze can be exit
without lost?
Are there an optimal solution for the
problem?
Solution Search
The search term appliend in AI, its not
mean find a specific information piece
in a data reporsitory, this term implies
to obtain the best solution for a
problem. For instance:
Finding the shortest path between two
cities, or the famus Travelling Sales
Problem (TSP). This is a NP-Complete
(Not Polinomal) Problem.
TSP
TSP
Expert Systems
They were the first AI comercial product
sucessfully.
These Systems let to introduce some
information in an specific knowledge
area into a computer (knowledge
database), they act like a human expert.
These
Systems
simulate
human
reasoning
by applicating especific
knowledge and inferences.
verdes
para
[ser]
Artificial Vision
Its an application of patter recognition,
this area have a lot of application such
as:
Medical Diagnostic
Automatic Signal Processing
Automatic Industrial Product
Automatic Vigilance Systems
OCR (Optical Character Recognition)
Robotic
This science implies the concepts of
perception, motion (spatial reasoning),
planning.
The main problem autonomous robots
are interacting with the human-world,
because
exists
many
obstacles
unexpected
events
and
dinamic
environments.
area
This
computers
Learning
Games
AI is applied in games to give more
realism and complexity. Also AI gives
the Physics.
The n-queens problem consist in putting
n chess queens on an nn chessboard
such that none of them is able to
capture any other using the standard
chess queen's moves.
Games
Activitie: Obtain a Solution in a sheet of
paper for a 5x5 chessboard. First 100,
Second 80, Third 60 pts.
Genetic Algorithms
Genetic
methods
Algorithms
are
adaptative
which can used to implement
searches and optimization problems.
at:
Virtual Reality
Its one of the most recent applications
of AI. Its consist in the construction of
programs which achive to fool the
human senses, make it belive that we
are floating, running or flying in an
airplane.
This application has been used in a
fligth simulator for pilots, astronauts
and drivers.
Maze Generator
We must try to dont
generate a loop
Cellular Automata
Its a discrete model studied in
computing, mathematics, biology and
microstructure modeling.
It consists of a regular grid of cells, each
in one of a finite number of states. The
grid can be in any finite number of
dimensions.
Time is also discrete, and the state of a
cell at time t is a function of the states of
a finite number of cells (neighborhood) at
time t1.
Cellular Automata
These neighbors are a selection of cells
relative to the specified cell, and do not
change (though the cell itself may be in
its neighborhood, it is not usually
considered a neighbor).
Every cell has the same rule for updating,
based
on
the
values
in
this
neighbourhood. Each time the rules are
applied to the whole grid a new
generation is created.
Cellular Automata
Rule 30
Pattern 111
State
110 101
0
0
Rule 110
100
011
010
001
000
Pattern
100
011
010
001
000
State
Semantic Networks
They are other simple form to explicity
knowledge, They are conformed by
graphs which coding knowledge in a
taxonomic form.
Nodes represent categories and Edges
represents the relations between this
categories.
There are two types of
relatinoships: Is-A y la Have-A.
special
Semantic Networks
We can access throught
concepts to infer knowledge.
of
each
Semantic Networks
Script
Script Example:
Printers
Subset_of: Office_Machine
Superset_of: {Laser_Printer, Inject_Printer}
Feed_Source: Door_Socket
Author: Juan_Perez
Date: 07_January_2008
Onthologies
Other way to represent knowledge with a
lot of use recently is Onthology, Its consist
of relations between distinct concepts like
definitions. Onthologies can be represented
throught languages such as XML.
Knowledge representation has a great
importance this is the reason because
actually
we
talk
about
Knowledge
Engineering.
Semantic Networks
Onthologies act like a dictionary. Some
elements
like
agents
used
this
information to represent and retrieve
knowledge.
Frames are structure used to represent
values, restricctions, process, relation,
etc. Frames represent with tuples one
propertie of an object. Object-Oriented
Programming was originated by Frames.
Concept Mind
Onthology
Activity
Represent one object (one diferent per
student, e.g. Wireless Network Card,
Telephone, Cow, etc.) and all its
features with an Ontology, Script and
Frame.
AMOR
Love a person or thing for over all things
Word composeb dy 4 characters: A, M, O and
R yuxtapuestos
but
Properties:
Center (point)
Diametrer (twice radio)
Areas
100% Similarity
Farmer
Fox
Goose
Wheat
Farmer
Fox
Goose
Wheat
Farmer
Fox
Goose
Wheat
Fox
Farmer
Goose
Wheat
Fox
Wheat
Farmer
Goose
Fox
Goose
Wheat
Farmer
Goose
Wheat
Fox
Farmer
Wheat
Farmer
Fox
Goose
Farmer
Fox
Wheat
Goose
Fox
Goose
Wheat
Farmer
Farmer
Goose
Wheat
Fox
Goose
Wheat
Farmer
Fox
Farmer
Fox
Goose
Wheat
Farmer
Goose
Fox
Wheat
Farmer
Fox
Goose
Fox
Goose
Wheat
Wheat
Farmer
Farmer
Fox
Goose
Wheat
Activity
In a Software Development Company 5
programers
implement
the
same
algorithms obtained the follow results:
Programmer
LOC
Return
Function
Call
1
2
3
4
5
66
41
68
90
75
20
10
5
34
12
1
2
8
5
14
Activity
The enterprise needs to know how are the
best pair (pair programing).
For trying to solve this problem We need to
define a similarity function such as:
s(v, w)=|p1-q1| + |p2-q2| + |p3-q3|
Where:
v and w are programmers represent in the
form of (p1, p2, p3)
Activity
pi is a propertie
We also need a criteria for similarity in this
case consider the lower punctuation as
the best solution.
Programming the solution to obtain the
best pair.
Programming the solution to obtain the
best pair in a specific propertie
Activity
If We changed the criteria in where LOC
are more important 60% than the other
properties, how must be the new
similarity function?
If We need one group with the 3 best
programmer, how must be the similarity
function?
Analogy Problems
Its other form to problem solving tha its
used in AI.
Analogy is a special type of relation that
define how are objects represented los
objetos de una categora y como obtener
sus predecesores y antecesores inmediatos.
Generalmente se habla de anlogo cuando
se tiene el mismo tipo de relacin aun
cuando sean entidades diferentes.
Problemas de Analogas
Alguna vez nos hemos preguntado por
qu en la mayora de los exmenes de
admisin
generalmente
son
ms
importantes que los de conocimientos?
Por que en la mayora de los casos el
conocimiento de cierta forma se puede
adquirir pero la forma de aprender y
razonar es sumamente complicado. En
muchos casos son ms importantes las
reglas que el conocimiento.
Problemas de Analogas
En matemticas y en el rea de
programacin se utiliza mucho la
analoga para resolver problemas.
De acuerdo con Polya, para resolver
problemas se necesita de los siguientes
pasos:
1) Comprender el problema
2) Concebir un plan
3) Ejecutar el plan y,
4) Examinar la solucin.
Problemas de Analogas
A
Cmo quedaran D y 5?
Problemas de Analogas
Qu problemas se presentan con la
Abstraccin de la Figura D o bien de la
Figura 3?
Reconocimiento de
Abstracciones
A lo largo de esta presentacin se ha
podido comprobar que prcticamente el
problema est resuelto si el problema
est descrito.
El reconocimiento de abstracciones es
un concepto muy subjetivo dado que
stas son combinaciones de estados
mentales y eventos.
Los SI se basan fundamentalmente en
reglas ECA (Evevento-Condicin-Accin)
Reconocimiento de
Abstracciones
Generalmente respondemos a estmulos
(eventos), y en base a ellos vemos cuales
son importantes para nosotros y nos
comportamos de cierta manera.
Para lo que a una persona le representa
algo
para
otra
representa
cosas
totalmente distintas.
La abstraccin permite llegar a cierto tipo
de conclusiones y preguntas resueltas.
Interpretacin del
Conocimiento
Interpretacin del
Conocimiento
Se pretende que las reglas y hechos
(base de conocimientos) permitan
resolver problemas y que a su vez de la
resolucin de estos problemas se
obtenga nuevos conocimientos.
Homework
Make a survey (Caracterization) about the
frecuencie of each character in Spanish
Alfabet. For example, in % how many c
appears.
This surve will aplied
Cryptoanalisys System.
on
Inteligent
Mtodos Ciegos
Las redes son grafos dirigidos, simples
con pesos donde se tienen dos nodos
especiales: un origen y un destino sin
entradas y salidas respectivamente.
Las redes se utilizan en muchos
problemas
de
computacin,
desafortunadamente
para
muchos
problemas, el espacio de soluciones es
grandsimo por lo que la bsqueda se
volvera muy extensa.
Mtodos Ciegos
De esta forma, se necesitan de mejores
mecanismos de bsqueda. En muchas
ocasiones el espacio de bsqueda se puede
reducir
simplemente
con
observar
simetras, ignorar detalles y encontrar las
abstracciones apropiadas.
Un ejemplo muy representativo de este
problema es el espacio de soluciones que
se obtiene en el juego puzzle de las ocho
piezas. Se requieren de 9! = 362,880 nodos
para representar las posibles opciones.
Mtodos Ciegos
El primer mtodo de bsqueda optimizada
es el de bsqueda primero en anchura.
La idea de este mtodo es buscar primero
en todos los nodos de un mismo nivel sin
tener que recurrir por todos los niveles del
grafo.
Para ello se necesita definir una funcin de
estados sucesores que indique los nodos
que se producirn al aplicar todos los
operadores a dicho nodo.
Mtodos Ciegos
Existen otras variantes de este mtodo
como la bsqueda de coste uniforme, la
cual visita los nodos de acuerdo a sus
pesos.
El algoritmo BFS (Breadth First Search)
es el siguiente:
Sea G = (V, A) un grafo conexo, V = un
conjunto de vrtice V, A un vector de
arcos inicialmente vaco y P un vector
auxiliar inicialmente vaco:
Bsqueda en Anchura
1. Se introduce el vrtice inicial en P y se
elimina del conjunto.
2. Mientras V no sea vaco repetir los
puntos 3 y 4. En otro caso parar.
3. Se toma el primer elemento de P como
vrtice activo.
Bsqueda en Anchura
4. Si el vrtice activo tiene algn vrtice
adyacente que se encuentre en V:
Bsqueda en Profundidad
Tambin se le conoce como vuelta atrs.
Consume menos memoria que el mtodo
en anchura pero en algunas ocasiones
puede ser contraproducente por lo que se
llega a limitar su profundidad.
Los ejemplos ms utilizados en bsqueda
de profundidad son los algoritmos de
preorden, enorden, postorden. Los cuales
trabajan slo con arboles binarios.
Bsqueda Heurstica
Heurstica viene del griego heuriskein,
que significa descubrir. De la misma
palabra se deriva la exclamacin:
Eureka!
Homework
Investigar que problemas de los visto en
clases pueden resolver a travs de
Bsqueda en Anchura y en Profundidad.
Investigar que otro tipo de problemas
pueden
ser
resueltos
utilizando
bsquedas en anchura y en profundidad.
Backtracking
Este algoritmo consiste en un recorrido
en profundidad o anchura analizando
sus
posibles
estados
futuros
y
regresando al estado previo si no fue
posible una solucin satisfactoria.
El problema de las n reinas se soluciona
de esta forma al igual que otros
problemas
Bsqueda Heurstica
Heurstica viene del griego heuriskein, que
significa descubrir. De la misma palabra se
deriva la exclamacin: Eureka!
El algoritmo ms conocido de este tipo es
el A* que basa su funcionamiento en
obtener dos distancias del origen a la raz
y de la raz al nodo objetivo.
f(n) = g(n) + h(n)
La mejor trayectoria
Es otro algoritmo heurstico que trata de
encontrar la mejor trayectoria depende de lo
que se trate.
Ejemplo de este tipo de algoritmos se
encuentra la ruta crtica, la ruta ms corta, el
canal con ms ancho de banda, etc.
A los algoritmos heursticos reciben el
nombre de bsqueda informada, mientras
que los ciegos son bsquedas no informadas.
La mejor trayectoria
Las heursticas no son otra cosa que
estrategias de bsquedas informada.
Desafortunadamente las heursticas no
lo miden todo, simplemente pretende
encontrar una solucin lo mejor posible
al problema.
Un mtodo heurstico ms avanzado lo
comprenden los algoritmos genticos.
Trayectorias Redundantes
Son algoritmos que pretenden eliminar
todos aquellos espacios que no son
soluciones viables dado que consume
mucho tiempo.
Los algoritmos de planificacin son un
ejemplo de este tipo de herramientas.
Se debe cuidar de no repetir estados.
Una posible solucin es ver la simetra
de los rboles.
La Mejor Trayectoria
Son dependientes
mnimos locales.
a los mximos y
Una
ponderacin a cada recurso (billete) de
acuerdo a su valor monetario y a la
cantidad de recurso disponible, por lo que
se ocupara una funcin de similaridad
que quizs tenga que ser dinmica y
quizs no muy sencilla de calcular.
Algoritmo Minimax
Funcin MiniMax(Estado) Devuelve Accin
V Valor_Max(Estado)
devolver Accin de Sucesores[Estado] con
valor V.
Funcin
Valor_Max(Estado)
Utilidad
Si
test_terminal(Estado)
Devolver
Utilidad[Estado]
V
Devuelve
Entonces
Algoritmo Minimax
Para cada S sucesores[Estado] Hacer
V Max(V, Valor_MIn(S))
devolver V
Funcin
Valor_Min(Estado)
Utilidad
Si test_terminal(Estado)
Devolver
Utilidad[Estado]
V
Devuelve
Entonces
Algoritmo Minimax
Para cada S sucesores[Estado]
Hacer
V Min(V, Valor_Max(S))
devolver V
Poda Alfa-Beta
Es muy parecido al algoritmo de
MiniMax pero permite no expandir
nodos que no se vayan a ocupar.
En un juego es imposible o imprctico
realizar todo el rbol de juego. Una
mejor
forma
es
almacenar
los
elementos del rbol que ya se tienen
para que no haya necesidad de volver a
calcularlos.
Poda Alfa-Beta
Es un algoritmo que pretende mejor al
algoritmo minimax calculando dos valores
umbrales, que representan las cotas inferior
(Alfa) para los nodos maximizantes y una
cota superior (Beta) para los nodos
minimizantes.
Funcin
Alfa-Beta(Estado)
Devuelve
Accin
V Valor_Max(Estado, , )
devolver Accin de Sucesores[Estado]
con valor V.
Poda Alfa-Beta
Funcin
Valor_Max(Estado,Alfa,Beta)
Devuelve Utilidad
Si test_terminal(Estado) Entonces Devolver
Utilidad[Estado]
V
Para cada S sucesores[Estado] Hacer
V Max(V, Valor_Min(S,Alfa,Beta))
Si V Beta Entonces devolver V
Alfa Max(Alfa,V)
devolver V
Poda Alfa-Beta
Funcin
Valor_Min(Estado,Alfa,Beta)
Devuelve Utilidad
Si test_terminal(Estado) Entonces Devolver
Utilidad[Estado]
V
Para cada S sucesores[Estado] Hacer
V Min(V, Valor_Max(S,Alfa,Beta))
Si V Alfa Entonces devolver V
Beta Min(Beta,V)
devolver V
Representacin del
Conocimiento
El conocimiento debe estar expresado en
un lenguaje simblico para que pueda ser
reconocido por una computadora o
agente.
Los agentes pueden consultar a la base
de conocimientos para resolver problema
o bien agregar nuevos conocimientos.
Los agentes pueden obtener esta nueva
informacin a travs de la inferencia
lgica.
Representacin del
Conocimiento
Inicialmente el agente cuenta con unos
conocimientos
bsicos
llamados
antecedentes o hechos.
Se cuenta con una serie de reglas que
definen
la
forma
de
deducir
conocimiento.
El agente pregunta a estas reglas y
hechos para poder razonar que opcin
le conviene ms ejecutar.
Acciones:
Ir hacia adelante, girar izda/dcha 90
Agarrar (estando en la casillla)
Disparar (slo una flecha)
Lgica de Proposiciones
La sintaxis nos indica cules son los
enunciados que se pueden construir.
Los enunciados atmicos se componen
de una sola proposicin.
Una proposicin tiene un solo valor de
verdad: Verdadero o Falso.
Lgica de Proposiciones
Los enunciados complejos se forman a
partir de enunciados ms simples y el
empleo de conectivos lgicos.
Los Conectivos Lgicos son cinco:
Lgica de Proposiciones
Las
expresiones
que
contienen
conectivos
lgicos
se
interpretan
siguiendo el orden de precedencia que
corresponde al mostrado en la tabla
anterior.
Por ejemplo: ~P ^Q v R S equivale a:
(~(P) ^(Q v R)) S
Adems, se emplean los parntesis para
evitar ambigedades.
Lgica de Proposiciones
La semntica nos define las reglas que
permiten determinar el valor de verdad
de un enunciado respecto de algn
modelo.
Con dos smbolos proposicionales
existen 4 modelos posibles para cada
uno de los 5 conectivos lgicos, Cmo
quedaran las tablas de verdad?
Lgica en Wumpus
Regresemos al mundo del Wumpus para
visualizar la construccin de la base de
conocimiento.
Notacin:
Bij indica que hay brisa en la celda (i,j).
Pij indica que hay un pozo en la celda (i,j).
Lgica en Wumpus
Cuando hay brisa en una casilla implica
que en una casilla contigua hay un pozo:
E2: B11 P12 v P21
Ahora agregamos la primera percepcin,
no se percibe brisa en la celda (1,1): E3:
~B11
Cmo relacionar los enunciados 2 y 3
para obtener nuevo conocimiento?
Lgica de Proposiciones
Cuando los resultados de una Tabla de
Verdad son todos verdaderos, a esa
proposicin compuesta se le llama
Tautologa. Como ejemplo tenemos a: (p
v ~p)
Cuando los resultados de una Tabla de
Verdad son todos falsos, a esa
proposicin compuesta se le llama
Contradiccin. Como ejemplo tenemos
a: (p ^ ~p)
Lgica de Proposiciones
Bsicamente
la
inferencia
es
implementacin de una implicacin.
la
Los
enunciados
conocidos
como
verdaderos forman parte del antecedente.
El consecuente es un nuevo enunciado
cuya veracidad se desprende de los
anteriores. Simblicamente se representa
as:
antecedente :: consecuente
Lgica de Proposiciones
La equivalencia lgica se presenta
cuando dos enunciados y tienen los
mismos valores de verdad para el
mismo conjunto de modelos.
A continuacin mostramos una tabla con
las equivalencias lgicas ms comunes:
Doble Negacin: ~( ~p ) p
Lgica de Proposiciones
Leyes Conmutativas
(pvq)(qvp)
(p^q)(q^p)
Leyes Asociativas
(pvq)vrpv(qvr)
(p^q)^rp^(q^r)
Lgica de Proposiciones
Leyes Distributivas
pv(q^r)(pvq)^(pvr)
p^(qvr)(p^q)v(p^r)
Leyes de Idempotencia
(pvp)p
(p^p)p
Lgica de Proposiciones
Leyes de DeMorgan
~( p v q ) ~p ^ ~q
~( p ^ q ) ~p v ~q
Leyes de Identidad
( p v ~p ) t
( p ^ ~p ) f
(pvf)p
(pvt)t
Lgica de Proposiciones
Leyes de Identidad
(pvf)f
(pvt)p
Leyes de la Implicacin
(p q) (p q) ^ (q p)
(p q) (~q ~p)
(q p) (~p ~q)
(p q) (~p v q)
Lgica de Proposiciones
Reglas de Inferencias
La siguiente implicacin lgica se llama
Modus Ponens y corresponde a la
siguiente inferencia:
p ^ ( p q ) :: q
Ejemplo:
p: Estudio
p q: Si estudio aprobar Matemticas
q: Entonces, Aprobar Matemticas
Lgica de Proposiciones
La siguiente implicacin lgica se llama
Modus Tollens y corresponde a la
siguiente inferencia:
( p q ) ^ ~q :: ~p
Ejemplo:
p q: Si estudio apruebo Matemticas
~q: No aprob Matemticas
~p: Entonces, no Estudi
Lgica de Proposiciones
La siguiente implicacin lgica se llama
Silogismo Hipottico y corresponde a la
siguiente inferencia:
( p q ) ^ ( q r ) :: ( p r )
Ejemplo:
p q: Si estudio apruebo Matemticas
q r: Si apruebo Matemticas me regalan
un auto
p r: Entonces, Si estudio me regalan un
auto
Lgica de Proposiciones
La siguiente implicacin lgica se llama
Silogismo Disyuntivo y corresponde a la
siguiente inferencia:
( p v q ) ^ ~p :: q
Ejemplo:
p v q: Hay que estudiar Francs o Alemn
~p: No estudio Francs
q: Entonces, Estudio Alemn
Lgica de Proposiciones
La simplificacin conjuntiva consiste en
eliminar uno de los trminos de una
conjuncin:
( p ^ q ) :: q o tambin: ( p ^ q ) :: p
Por el otro lado, la amplificacin
disyuntiva permite agregar un nuevo
trmino:
p :: ( p v q )
Lgica en Wumpus
Se tiene que:
E2: B11 P12 v P21
E3: ~ B11
Por lo que tenemos el siguiente razonamiento:
E4: (B11 (P12 v P21)) ^ ((P12 v P21) B11)
E5: ((P12 v P21) B11)
E6: ~B11 ~(P12 v P21)
E7: ~(P12 v P21)
E8: ~P12 ^ ~P21
Lgica en Wumpus
Del razonamiento anterior concluimos que
no hay un pozo en la casilla (1,2) ni en la
(2,1).
Ahora veamos el razonamiento cuando el
agente llega a la celda (1,2).
E9: ~B12
E10: B12 P11 v P13 v P22
E12: ~P22
Lgica en Wumpus
Concluimos que no hay pozo ni en la
casilla (1,3) ni en la (2,2).
E11: ~P13
E12: ~P22
Pero cuando el agente visit la celda
(2,1) percibi una brisa:
E13: B21
E14: B21 P11 v P31 v P22
Lgica en Wumpus
Dado que ya verificamos que no hay
pozo en las celdas (1,1) y (2,2), resulta
evidente la conclusin que:
E15: P31
Es conveniente que nuestra base de
conocimiento est basada solamente en
conjunciones y disyunciones.
Lgica Proposicional
Cualquier enunciado compuesto puede
ser transformado a uno equivalente que
est en la FNC
La Forma Normal Conjuntiva es la
conjuncin de n disyunciones de k
elementos:
( p11 v v p1k ) ^ ^ ( pn1 v v
pnk )
Lgica Proposicional
A
continuacin
se
describe
un
procedimiento para convertir a nuestra
FNC:
Eliminar usando la equivalencia:
(p q) (p q) ^ (q p)
Eliminar usando la equivalencia:
(p q) (~p v q)
Lgica Proposicional
Simplificar ~ usando las equivalencias:
~( ~p ) p
~( p v q ) ~p ^ ~q
~( p ^ q ) ~p v ~q
Finalmente, aplicar la ley distributiva
donde sea necesario.
pv(q^r)(pvq)^(pvr)
Lgica Proposicional
E2: B11 (P12 v P21)
Lgica Proposicional
Para demostrar que una implicacin BC ::
es vlida, se utiliza el mtodo de
reduccin al absurdo.
Esto es, probar que su negacin: BC ^
~ es una contradiccin.
Para ello se lleva a la FNC y luego se
prueba que es equivalente a una
clusula vaca.
Lgica Proposicional
Probar que: E2 ^ E4 :: ~P12.
(B11 (P12 - P21)) ^ ~B11 :: ~P12
Se convierte a FNC:
(~B11 v P12 v P21) ^ (~P12 v B11) ^
(P21 v B11) ^ ~B11 :: ~P12
Lgica Proposicional
Y para probar por reduccin al absurdo,
tenemos la negacin:
(~B11 v P12 v P21) ^ (~P12 v B11) ^
(~P21 v B11) ^ ~B11 ^ P12
El proceso de simplificacin funciona
como sigue:
Si tomamos los primeros dos parntesis,
observamos que contienen a: ~B11 y
B11, respectivamente.
Lgica Proposicional
Como no pueden ser ambos verdaderos
simultneamente, entonces, o (P12 v
P21) o bien (~P12 ) son verdaderos, lo
que se reduce a la siguiente expresin:
(P12 v P21 v ~P12)
Como (P12 v ~P12 ) es una tautologa,
la expresin anterior se reduce a: (P21)
Lgica Proposicional
Similarmente,
los
dos
parntesis
siguientes, tambin contienen a: ~B11
y B11, por lo que la
expresin simplificada queda: (~P21)
Como
ambas
no
pueden
ser
verdaderas, la conjuncin resulta en
una expresin nula.
Ejercicios
(pq)^(qr)
p^(pq)
((p ^ q) (p v ~q))
((~(p q) ^ r ) v ~(p ~q))
Lgica de Predicados
Hay que aprovechar la caracterstica
declarativa y la composicionalidad de la
lgica proposicional. Para ello definimos
dos tipos de elementos:
Los objetos (Agente, Flecha, Wumpus,
Pozo)
Las relaciones entre ellos, generalmente
vinculadas por un verbo.
El Agente lanz una Flecha
Lgica de Predicados
Las relaciones unitarias tambin se
conocen como Propiedades y se vincula
un objeto con una caracterstica por el
verbo SER:
La Pelota es roja.
Las Funciones son un tipo especial de
relacin que involucra un solo objeto y
devuelven un valor:
El padre de
Uno ms que
Lgica de Predicados
Uno sumado a Dos es igual a Tres
Objetos: Uno, Dos y Tres.
Relacin: es igual a.
Funcin: sumado a; el resultado es un
objeto, llamado: Uno sumado a Dos.
Variable a | x | s |
Predicado Previo | Gusta | Llueve |
Falla |
Funcin Padre_de | Cabello_de |
Oficina_de |
FOL Wumpus
Un ejemplo de percepcin sera:
Percepcin([Hedor,Brisa,Brillo,Nada,Nada],5)
El vector de percepciones contiene 5
elementos que son: Hedor, Brisa, Brillo,
Golpe con un muro y Grito. Adems incluye
un sexto elemento para el tiempo.
Las acciones posibles del agente pueden ser
las siguientes:
FOL Wumpus
Girar(Derecha)
Girar(Izquierda)
Avanzar
Disparar
Tomar
FOL Wumpus
Esta peticin retornar una lista de
acciones posibles, tal como: {a/Tomar}.
Antes de realizar esa accin, el agente
deber DECIR a la base de conocimiento
su decisin de hacer la accin de Tomar:
DECIR(BC, Accin(5)=Tomar)
Reglas de diagnstico: nos llevan de los
efectos observados a sus causas.
FOL Wumpus
Por ejemplo: si una casilla tiene brisa
significa que una casilla adyacente tiene un
pozo.
x Brisa(x) y Adyacente(y,x) Pozo(y)
Reglas Causales: reflejan conclusiones
respecto de las percepciones y sus causas.
Por ejemplo: un pozo en una casilla provoca
brisa en todas las casillas adyacentes.
y Pozo(y) [x Adyacente(x,y) Brisa(x)]
Identificacin de la tarea.
Recopilacin del conocimiento.
Decidir el vocabulario.
Codificar el conocimiento.
Deduccin Automtica
Para el hecho: Contrata(Telmex,Too),
podemos construir ndices para las
siguientes peticiones:
Contrata(Telmex,Too) Contrata Telmex
a Too?
Contrata(x,Too) Quin Contrata a
Too?
Contrata(Telmex,y) A quin Contrata
Telmex?
Contrata(x,y) Quin Contrata a quin?
Deduccin automtica
El primer paso consiste en transformar
los enunciados en sentencias lgicas.
Posteriormente se aplican las tcnicas
anteriores para convertirlas en un
conjunto de clusulas positivas de primer
orden.
Luego se encadenan esos conocimientos
para obtener nuevos enunciados.
Deduccin Automtica
Pasar a FNC la siguiente base de
conocimientos:
1.Asterix es un galo
2.Los romanos que son amigos de algn
galo odian a Csar
3.Asterix ayud a Marco
4.Marco es amigo de quien le ayuda
5.Quien odia a algn romano, lucha contra
l
6.Marco es romano
Deduccin Automtica
1. Asterix es un galo
galo(Asterix) (en FNC)
1. Los romanos que son amigos de algn
galo odian a Csar
x [romano(x) . (y galo(y) . amigo(x,
y)) odia(x,Cesar)]
Deduccin Automtica
Reemplazando la clusula existencial:
x [romano(x) . (galo(G) . amigo(x, G))
odia(x,Cesar)]
3.Asterix ayud a Marco
ayuda(Asterix,Marco) (en FNC)
4.Marco es amigo de quien le ayuda
x [ayuda(x,Marco) amigo(Marco, x)]
Deduccin Automtica
5. Quien odia a algn romano, lucha contra
l
x y [romano(y) . odia(x, y) lucha(x,
y)]
Reemplazando la clusula existencial:
x [romano(R) . odia(x, R) lucha(x, R)]
6. Marco es romano
romano(Marco) (en FNC)
Deduccin Automtica
Los Miembros del equipo de tenis son:
Juan, Sara, Beto y Elena.
Juan est casado con Sara.
Beto es hermano de Elena.
El cnyuge de un miembro del equipo
tambin es miembro del equipo.
Deduccin Automtica
La ltima reunin fue en casa de Juan.
Representar los enunciados anteriores en
lgica de predicados. Demostrar que:
La ltima reunin fue en casa de Sara.
Elena no est casada.
Agregue los hechos que necesite para las
demostraciones.
Deduccin Automtica
A Paco le gustan los cursos fciles.
Los cursos de Fsica son difciles.
Los cursos de Humanidades son fciles.
El curso de tica es del rea de
Humanidades.
Qu curso le gustara tomar a Paco?
Deduccin Automtica
A Beto le gusta la comida italiana.
En
un
restaurante
hay
comida
mexicana a no ser que se anuncie
explcitamente lo contrario.
En La Conchita no anuncian que tipo
de comida sirven.
Deduccin Automtica
A las personas no les gusta ir a
restaurantes donde sirven comida que
no es de su preferencia.
Se puede concluir que a Beto no le
gusta ir a La Conchita?
Deduccin Automtica
Formaliza los siguientes hechos:
Todo dragn est feliz si todos sus hijos
pueden volar.
Los dragones verdes pueden volar. Un
dragn es verde si es hijo de al menos
un dragn verde.
Demuestra por resolucin que la
conjuncin de los hechos anteriores
implica que:
Todos los dragones verdes son felices.
Deduccin Automtica
Considere las siguientes relaciones:
Referencias
Russel, S. y Norving, P. (2004).
Inteligencia Artificial. Un Nuevo enfoque.
Pearson Prentice Hall, Espaa
Nilsson, N. (2001). Inteligencia Artificial.
Una nueva sntesis. McGraw-Hill, Espaa.
Winston, P. (1992) Artificial Intelligence,
3ra. Edicin, Addison-Wesley.
Referencias
Decker, R. y Hirshfield, S. (2001).
Mquina Analtica. Introduccin
a las
Ciencias de la Computacin con Uso de
Internet, Thomson, Mxico. Captulo 9
Inteligencia Artificial pp. 295-325.
Hernndez,
V.
(2007).
Mapas
Conceptuales
La
gestin
del
Conocimiento en la Didctica. Segunda
Edicin, Mxico: Alfaomega.
Referencias
G. Polya, (1982), Cmo Plantear y
Resolver
Problemas,
traduccin
al
espaol de How to Solve It, Ed. Trillas,
Mxico, 1982, ISBN: 968-24-0064-3.
Montes, M. y Villaseor L. (2008)
Fundamentos de Inteligencia Artificial
Mtodos
bsicos
de
solucin
de
problemas,
Instituto
Nacional
de
Astrofsica, ptica y Electrnica, Puebla,
Mxico.
Preguntas?