Documentos de Académico
Documentos de Profesional
Documentos de Cultura
InteligenciaArtificial Unidad 1
InteligenciaArtificial Unidad 1
Programa
ð Introducción histórica
ð Lenguaje de programación LISP
ð Paradigmas de representación del conocimiento
ð Frames
ð Sistemas de producción
ð Paradigma lógico
ð Exploración de espacios de estados. Búsqueda
ð Exploración de árboles de juego
ð Planificación
ð Aprendizaje simbólico. ID3
ð Algoritmos genéticos
Bibliografía
Bibliografía
ð Serradilla, F.; Barros, B. Representación e Inferencia en Inteligencia Artificial.
Un Enfoque Práctico. Escuela Universitaria de Informática, UPM. 1996.
ð Test de Turing:
ð Hitos importantes:
û El primer esfuerzo de mecanización del pensamiento fueron
los silogismos de Aristóteles.
û Leibniz construye el primer sistema axiomático de lógica
formal (cálculo de predicados)
û Euler formaliza la Teoría de Grafos
û Hilbert intentó encontrar un conjunto de axiomas y un
sistema formal que sintetizasen toda la matemática
Gödel, con el teorema de incompletitud, demostró que no
era posible
Rama
Rama de
de la
la psicología
psicología
ð Hitos importantes
û Dualismo mente/cuerpo de Descartes. La mente constituye
una entidad independiente del cuerpo y puede estudiarse
por separado
û Los primeros psicólogos (James, Wundt) estudiaron el
pensamiento con una metodología basada en la
introspección (subjetiva, poco científica)
û Los conductistas (Skinner) consideran a la mente como una
caja negra capaz de asociar estímulos con respuestas
û La psicología cognitiva (Chomsky, Fodor) es el paradigma
más aceptado
Rama
Rama de
de la
la psicología
psicología (II)
(II)
Objeto ∈ Mundo
Representación ∈ Mente
Conexiones ∈ Cerebro
Rama
Rama de
de la
la informática
informática
Medida Comportamiento
SENSOR
Objeciones
Objeciones de
de Turing
Turing
ð En 1950, Turing publica Maquinaria de computación e
inteligencia. Propone el test de Turing, defiende la
posibilidad de construir máquinas que piensen y enumera
las posibles objeciones contra estas máquinas:
û Teológicas: la mente no reside en el cuerpo sino en el alma. Si
se admite el dualismo, se niega la psicología
No es científica
û Del avestruz: si las máquinas pensaran, las consecuencias
serían desastrosas; luego esto no puede ocurrir
Sin comentarios
û Matemáticas: el teorema de incompletitud de Gödel demuestra
que en un sistema formal suficientemente complejo existen
proposiciones indecidibles
La mente humana no supera esta limitación
Objeciones
Objeciones de
de Turing
Turing
ð Más objeciones:
û De conciencia: las máquinas no saben lo que están haciendo
cuando trabajan.
Minsky ⇒ los tres estados de conciencia de un termostato
û De las diversas incapacidades: una máquina nunca podrá ser
afectuosa, ingeniosa, amistosa, tener iniciativa...
Ahora no, pero sí podría en el futuro
û Objeción de Lady Lovelace: una máquina sólo realiza lo que
sabemos cómo ordenarle que haga
Se le puede ordenar que sea inteligente
Objeciones
Objeciones de
de Turing
Turing (II)
(II)
ð Más objeciones:
û Continuidad del sistema nervioso: una máquina de estados
discretos no puede emular al hombre
La discretización no supone limitaciones
û Basadas en la informalidad de la conducta: el hombre no
tiene un conjunto de reglas para regir su vida y las
máquinas funcionan con reglas
Las neuronas presentan un comportamiento rígido y de
ellas surge comportamiento flexible inteligente
û Basado en la percepción extrasensorial: Test de Turing
extrasensorial
No científica
Conferencia
Conferencia de
de Darmouth
Darmouth
ð Campos de aplicación:
û Inteligencia Artificial
û Entornos gráficos
ð Funcionalidad:
û No se deben utilizar variables globales dentro de funciones.
Atenta contra la reusabilidad y la claridad del programa.
En su lugar, se utilizan variables locales o paso de
parámetros
û No se deben utilizar estructuras iterativas, sino recursividad
Paradigmas
Paradigmas de
de Representación
Representación del
del Conocimiento
Conocimiento
ð Tipos de conocimiento
ð Tipos de razonamiento
⇒ Paradigma C-R
Modelización
Problema Representación
Inferencia
Solución Explicación
Tipos
Tipos de
de conocimiento
conocimiento
ð Objetos. Conceptos con entidad propia
ð Eventos. Especifican sucesos en el tiempo
ð Reglas de inferencia. Indican cómo obtener nuevo
conocimiento a partir del que ya tiene el sistema
ð Conocimiento procedural. Indica la manera de realizar
determinadas cosas. Son las computaciones sobre las
representaciones. El cómo
ð Metaconocimiento. Conocimiento a nivel más abstracto.
Da una idea de cuál es la mejor manera de resolver un
problema
ð Conocimiento declarativo. Representa los conceptos que
intervienen en el problema. Hechos, reglas y metaconoci-
miento. El qué
Ejemplo
Ejemplo del
del Metro
Metro
û Paradigma lógico
Ÿ K (H y R): Cálculo de predicados, reglas lógicas, cláusulas de
Horn
Ÿ I: Unificación, resolución
û Exploración de espacios de estados
Ÿ H: Estados
Ÿ R: Transiciones de estado
Ÿ M: Funciones heurísticas
Ÿ I: Algoritmos de búsqueda
Sistemas
Sistemas de
de Producción
Producción
ð Introducción
ð Hechos
ð Reglas
ð Metaconocimiento
ð Motor de Inferencia
ð Módulo de explicación
Introducción
Introducción
Hechos
Motor de Módulo de
Inferencia Explicación
Reglas
Metaconocimiento
Introducción
Introducción (II)
(II)
ð Ejemplos:
û (rayo, es-un, caballo)
û (veloz, es-un, caballo)
û (cometa, es-un, caballo)
û (rayo, valioso, sí)
û (veloz, hijo-de, cometa)
û (cometa, rápido, sí)
Reglas
Reglas
ð Tienen el siguiente formato:
IF <expresión-lógica> Antecedente
THEN <acciones> Consecuente
Ejemplo:
Si la consulta es sobre gripe,
entonces dar preferencia a las reglas R3 y R4
Motor
Motor de
de Inferencia
Inferencia
ð Repetir
û Establecer el conjunto conflicto (CC). Se obtienen todas
las reglas cuyo antecedente se equipara con los elementos
de la base de hechos y se especifica una lista de pares
(regla, sustitución)
û Seleccionar un único par (regla, sustitución) con los criterios
establecidos por el metaconocimiento
û Disparar la regla seleccionada. Se aplica la sustitución y se
añaden a la base de hechos las ternas del consecuente.
Si ya existe el atributo del objeto en alguna terna del CC, se
actualiza su valor para evitar inconsistencias
ð Introducción
ð Estructura de un frame
ð Herencia
ð Demonios
ð Tipos de facets
ð Representación en LISP
ð Inferencia en frames
Introducción
Introducción
ð Introducción
ð Unificación de predicados
ð Unificar:
û {tos(X), tos(juan)} ⇒ <X,juan>
û {amigo(X,Y), amigo(andres,julio)} ⇒
<X,andres> <Y,julio>
û {colocado(X,Y,atras), colocado(X,grande,X)} ⇒
<X,atras> <Y,grande>
û {B(a,g(X,b),Y), B(Z,g(c,b),d)} ⇒ <X,c> <Y,d> <Z,a>
û {A(X,g(Y)), A(c,Y)} ⇒ FALLO
û {A(X,g(Y)), A(c,Z)} ⇒ <X,c> <Z,g(Y)>
Encadenamiento
Encadenamiento de
de reglas
reglas dirigido
dirigido por
por el
el objetivo
objetivo
1. Se parte de una lista L de objetivos O1 O2 ... On
2. Selección
2.1 Seleccionar un objetivo Oi por orden de aparición
2.2 Seleccionar una cláusula Rj por orden de aparición.
Renombrar sus variables.
Si el consecuente de Rj puede unificarse con Oi, se crea
una nueva rama realizando las sustituciones necesarias;
si no se puede unificar ⇒ la rama termina en FRACASO
3. Resolución: Oi se sustituye en L por el antecedente de Rj . A
todas las cláusulas de L se les aplica las sustituciones de la
unificación
4. Si L vacía ⇒ la rama termina en ÉXITO
si no, volver al paso 2
El algoritmo termina cuando se han recorrido todas las ramas
Métodos
Métodos de
de Exploración
Exploración en
en Espacios
Espacios de
de Estados
Estados
ð Introducción
ð Algoritmos de búsqueda
û Expansión de un camino
û Esquema básico de un algoritmo de búsqueda
û Método de escalada
û Primero el mejor
û Algoritmo A*
ð Representación en árbol
Introducción
Introducción
ð EXPANDIR ( C )
û Calcular los sucesores del último estado de C utilizando
reglas de transición
û Inicializar R = { }
û Para cada sucesor Ei que no esté en C
Añadir a la lista R un nuevo camino, obtenido de añadir a C el
estado Ei
û Devolver R
Expansión
Expansión de
de un
un camino
camino (II)
(II)
C E
A B
D F
ð Camino = (A B D)
ð EXPANDIR ( Camino )
Sucesores: B, C, E, F
R={}
R = { (A B D C) }
R = { (A B D C), (A B D E) }
R = { (A B D C), (A B D E), (A B D F) }
ð Introducción
ð Implementación de juegos
ð Algoritmo Minimax
ð Algoritmo Alfa-beta
Introducción
Introducción
ð Características:
û Suelen ser juegos de dos contrarios con turno alternativo
û Terminan en dos o tres resultados posibles: ganar, perder o
tablas (no se da en todos)
û Cada movimiento implica una elección sobre todas las
jugadas posibles. La elección sigue criterios determinados
por el juego y no depende del azar (como en los dados,
cartas...)
û En todo momento los jugadores conocen las jugadas ya
realizadas y las que se pueden realizar
û Cada jugador tiene un nº determinado de movimientos en
un momento dado. El árbol resultante es finito
Implementación
Implementación de
de juegos
juegos
ð Visión general
ð Método STRIPS
ð Operador STRIPS
ð Algoritmo STRIPS
Visión
Visión General
General
ð Introducción
ð Algoritmo ID3
c c nb nb
û Entropía media de una propiedad decisora
nb nbc nbc
EntropíaMedia (d ) = ∑ Pb ∗ Entropía(b) = ∑ ∗∑ − log 2
b∈d b∈d nt c nb nb
ln x
log 2 x = x log 2 x = 0
ln 2
(Recordatorio: ; si x=0, )
ð Un conjunto es homogéneo si todos los ejemplos dan como
resultado el mismo valor c
Un conjunto es equilibrado si los valores de su propiedad
resultado son equiprobables (máxima entropía)
Algoritmo
Algoritmo ID3
ID3
ID3 ( Conjunto, P )
SI Entropía = 0
Devolver un nodo hoja etiquetado con la clase
SI NO
Calcular EntropiaMedia(P)
Seleccionar la PROPIEDAD con menor EntropiaMedia
Hacer PROPIEDAD raíz del árbol actual
Borrar PROPIEDAD de P
Para cada valor b de PROPIEDAD
Crear una rama del árbol etiquetada con b
Crear CONJUNTOb con todos los elementos con valor b
para PROPIEDAD
ID3 ( CONJUNTOb, P )
Generación
Generación de
de las
las reglas
reglas derivadas
derivadas del
del árbol
árbol ID3
ID3
ð Para ello:
û Se recorre el árbol desde la raíz hasta las hojas
û El antecedente de cada regla se crea tomando la etiqueta
de la raíz más la etiqueta de la rama que recorre
û Se añade un AND por cada pareja raíz-rama que se recorre
û El consecuente de la regla es el nodo hoja
Aprendizaje
Aprendizaje con
con Algoritmos
Algoritmos Genéticos
Genéticos
ð Introducción
ð Algoritmo general
Introducción
Introducción
E1 E2 E3
0 1/N 2/N 3/N ... 1
Procedimientos
Procedimientos Generales
Generales de
de Elección
Elección Aleatoria
Aleatoria (II)
(II)
E1 E2 E3
0 a1 a2 a3 ... 1
Operador
Operador Selección
Selección
ð Método estándar:
û Establecer la calidad de cada individuo de la población
û Calcular la probabilidad de selección de cada individuo
dividiendo cada calidad por la calidad total
û Elegir un individuo entre N elementos no equiprobables
(procedimiento C)
Operador
Operador Selección
Selección (II)
(II)