cc52a - Inteligencia Artificial
Programa de curso hecho el 10/3/1998 por Alejandro Bassi
Objetivos:
Introducir las técnicas más difundidas de la inteligencia artificial,
incluyendo mecanismos no simbólicos. Profundizar el conocimiento de
lenguajes de programación aptos para resolver problemas de
inteligencia artificial, con especial énfasis en la programación
lógica.
Contenidos:
- Introducción
Caracterización de los problemas abordados por la inteligencia artificial.
Los límites del enfoque algorítmico exhaustivo. Enfoque heurístico.
Grandes tendencias de la inteligencia artificial.
- Lógica
- Introdución a PROLOG
- Lógica proposicional
Expresiones bien formadas. Interpretación semántica. Tablas de verdad. Validez.
Satisfacibilidad. Noción de consecuencia lógica.
- Lógica de predicados de primer orden
Variables y cuantificadores. Interpretación semántica. Dominios estructurados.
Demostraciones formales.
- Cláusulas y resolución
Cláusulas. Regla de resolución. Demostración por resolución de contradicción.
Normalización a forma clausal. Unificación. Resolución con unificación.
Cláusulas de Horn.
- Inteligencia artificial simbólica
- Búsqueda en espacios de estados
Espacios de estados. Estrategias de búsqueda. Búsqueda en profundidad.
Búsqueda en amplitud. Búsqueda iterativa. Búsqueda heurística.
Funciones de evaluación heurística. Algoritmo A. Heurísticas admisibles
(algoritmo A*). Planificación. Grafos AND-OR.
- Algoritmos de juego
Algoritmo mini-max. Algoritmo alfa-beta.
- Representación de conocimientos
Representaciones declarativas. Representación basada en reglas. Sistemas de
producción. Redes semánticas. Lenguaje natural.
- Agentes inteligentes
- Inteligencia artificial no símbolica
- Lógica difusa
- Redes neuronales
Neurona formal. Perceptron. Separabilidad lineal. Redes de varias capas.
Método de retropropagación del error. Red de Hopfield. Red de Kohonen.
- Métodos estocásticos
Algoritmos genéticos. Máquina de Boltzmann. Recocido simulado.
Actividades:
Clases expositivas del profesor (3 horas semanales) y clases auxiliares
(1,5 horas semanales). Tareas computacionales.
Evaluación:
- controles.
- tareas.
- un examen que reemplaza a la peor nota de controles.
- la nota final se calcula ponderando 2/3 controles y 1/3 tareas.
Bibliografía:
S. Russell & P. Norvig (1995) Artificial intelligence, a modern
approach, P. Hall.
G.F. Luger & W.A. Stubblefield (1993) Artificial intelligence,
Benjamin Cummings.