Inteligencia Artificial 2015 1








UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS
(Universidad del Perú, DECANA DE AMÉRICA)
FACULTAD DE INGENIERIA DE SISTEMAS E INFORMATICA
Escuela Académico Profesional de Ingeniería de Sistemas

SILABO

1. ESPECIFICACIONES GENERALES
Nombre del Curso         : INTELIGENCIA ARTIFICIAL
Código  del Curso         : 207008
Duración del Curso        : 17 semanas
Forma de Dictado          : Técnico - experimental
Horas semanales            : Teoría: 3h – Laboratorio: 2h
Naturaleza                    : Formación profesional
Número de créditos        : Cuatro (04)
Prerrequisitos                : 205007 – Investigación Operativa I
Semestre académico       : 2015-I

2. INTRODUCCIÓN
La inteligencia artificial es un área de la ciencia de la computación que tiene por objetivo desarrollar los fundamentos prácticos y teóricos para el desarrollo de sistemas de computación que presentan características inteligentes y que por lo general corresponden a problemas intratables. Muchos problemas que ocurren en la industria, servicios y entretenimiento corresponden a problemas inteligentes, y su solución se hace cada vez más indispensable en las organizaciones debido a las exigencias de competitividad que se incrementan cada día.
Entre los diversos tipos de sistemas inteligentes se encuentran los juegos humano-máquina, los sistemas basados en el conocimiento, los sistemas de optimización y machine learning.
En el presente curso, se hace una introducción a la inteligencia artificial y sus aplicaciones en la industria, servicios y entretenimiento, y se muestra como las tecnologías basadas en inteligencia artificial pueden crear valor y hacer que las organizaciones sean más competitivas. También se mostrará sus aplicaciones en la ingeniería de software.
Se aborda con mayor profundidad el diseño e implementación de juego humano-máquina y de sistemas basados en el conocimiento.

3. LOGRO DEL CURSO
Al finalizar el curso el alumno adquirirá conocimientos generales del área de inteligencia artificial, diseñará e implementará juegos de competición humano-máquina basados en inteligencia artificial y sistemas basados en el conocimiento, haciendo uso de manera clara y precisa de las técnicas de búsqueda en un espacio de estado y de la metodología CommonKADS.

4. UNIDADES DE APRENDIZAJE

5. CONTENIDO POR SEMANAS

SEMANA
CONTENIDO
CLASES
TRABAJOS
Clasificación de problemas algorítmicos
Presentación del curso. Clasificación de problemas algorítmicos, problemas P y NP. Problemas de decisión, localización y optimización. Descripción de algunos problemas NP-difícil.
Referencias: [4] Capítulo 1, [1] Anexo A.

Clase Semana 1
Fundamentos de la inteligencia artificial
Definición de la Inteligencia Artificial. Máquina inteligente. Diferencia entre sistemas operacionales y sistemas inteligentes. Aplicaciones en la industria y servicios (robótica, planificación, gestión de desperdicios). Test de Turing.
Referencias: [1] Capítulo 1, [2] Capítulo 1,  [9] Capítulo 1.



Clase 2

3° y 4°
Representación de problemas de juego humano – máquina como búsqueda en un espacio de estado
Definición de problemas de la IA como problemas de búsqueda en un espacio de estado. Representación de problemas de juegos humano – máquina.
Referencias: [1] Capítulos 3, [3] Capítulo 2, [4] Capítulo 3.
1er control de lectura

Métodos de búsqueda ciega
El problema de búsqueda en un espacio de estado como grafo. La imposibilidad de usar métodos de caminos mínimos. El concepto de los métodos de búsqueda ciega e informada. El árbol de estado. Los métodos ciegos: amplitud, profundidad, no-deterministico. Referencias: [1] Capítulo 4, [2] Capítulo 5, [3] Capítulo 3, [4] Capítulos 5, [9] Capítulos 9

Métodos de búsqueda informados
La función evaluadora, métodos que usan información adicional: primero el mejor, ascenso a la colina, A*, ramificación y acotación.
Referencias: [1] Capítulo 4, [2] Capítulo 5, [3] Capítulo 3, [4] Capítulos 5, [9] Capítulos 9

Trabajo de LispWork
Suma de elementos Impares
Métodos de búsqueda para juegos humano-máquina
Algoritmo de juego humano – máquina. Estrategias de juego de máquina: no determinístico, primero el mejor, min-max y mejor diferencia de utilidades. Algoritmo min-max y alfa-beta.
Referencias: [1] Capítulo 5, [2] Capítulos 6, [3] Capítulos 4, [4] Capítulos 6, [9] Capítulos 12.
2do control de lectura 

Funciones Lenght, ATOM, Tarea Problemas
Examen Parcial

Solución Examen Parcial 2015-1

Fundamentos de sistemas expertos
Definición de Sistemas Expertos. Arquitectura de un sistema experto. Taxonomía y aplicaciones de los sistemas expertos. Requisitos para el desarrollo de sistemas expertos y ventajas del uso de sistemas expertos. Algunos problemas basados en el conocimiento.
Referencias: [6] Capítulo 1


10°
Ingeniería de conocimiento
Introducción. Adquisición de conocimiento. La metodología CommonKADS. Diseño de Sistemas Expertos (SE). Ciclo de vida de un SE.
Referencias: [6] Capítulos 6, [7] Capítulos 19.


11°
Adquisición de Conocimiento
Adquisición de conocimiento. Construcción de la base de hechos y base de conocimiento. Estructuras de representación de conocimientos (reglas de inferencias, frames, objects, ontologías, metadatos, thesaurus).
Referencias: [6] Capítulos 6, [7] Capítulos 19.
3er control de lectura

12°
Desarrollo de sistemas expertos basados en reglas
Construcción de la base de hechos y base de conocimiento. El motor de inferencia. Los métodos de encadenamiento regresivo, progresivo y reversibilidad. Técnicas de equiparación, el algoritmo RETE. Técnicas de resolución de conflictos.
Referencias: [1] Capítulos 6 y 8, [2] Capítulo 7, [6] Capítulo 3, [7] Capítulo 3.

13
Calidad y validación de sistemas expertos
Principales errores en el desarrollo de un sistema experto. Calidad de un sistema experto. Validación de sistemas inteligentes, métodos cuantitativos de validación. Eficiencia y error de sistemas expertos. Revisión de la funcionalidad del SE del 2do trabajo.
Tareas: ejercicios sobre calidad y validación de SE, validar el sistema propuesto del 2do trabajo.
Referencias: [4], [7] Capítulo 21.
4to control de lectura

14
Introducción a Machine Learning y heurísticas
Conceptos de aprendizaje y de machine learning. Sistemas experto vs machine learning. Técnicas de aprendizaje y fases de desarrollo de machine learning. Aplicaciones de machine learning en la industria y servicios. El problema de la optimización combinatoria. Conceptos de heurísticas y meta-heurísticas. Algoritmos exactos vs algoritmos heurísticos. Técnicas heurísticas y meta-heurísticas. Problemas de optimización combinatoria en la industria y servicios.
Referencias: [10], [11], [5] Capítulo 1, [8] Capítulo 1.


15
Presentación de trabajos computacionales
Los alumnos mostrarán sus habilidades en cuanto al desarrollo de sistemas expertos y sus aplicaciones en los sectores de la industria y servicio. Los alumnos presentarán un informe y un software.

16
Examen final

Solución Examen Final - 20

Solución Examen Final - 11

Julio Pari Alegre
Miguel Pablo Tocto
Antoni Yupanqui
17
Examen sustitutorio (solo para aquellos que no dieron examen parcial o final)

Solución Examen Sustitutorio
Julio Pari Alegre

Susti del lunes de Pablo Tocto







Laboratorio
Durante las sesiones de laboratorio se acompañara el desarrollo de los trabajos computacionales, ejercicios complementarios a la teoría, y el desarrollarlo de un lenguaje de programación de inteligencia artificial a nivel básico como LIPS (o una variante de ella) o CLIPS.

Trabajos Computacionales
Los alumnos agrupados en 3 desarrollarán dos trabajos computacionales.
El primer trabajo se trata de un juego de interacción humano-máquina con el uso de inteligencia artificial, el juego deberá ser diferente a los juegos que existen en los medios. La diferencia entre dos juegos se basa: diferencia en el entorno, diferencia en las reglas y objetos, o diferencia en ambos. El juego deberá usar la técnica de búsqueda en un espacio de estado, el algoritmo humano-máquina, y deberá considerar 3 niveles de dificultad (principiante, normal y experto). Deberá tener interfaces adecuadas y el lenguaje de programación es libre.
El segundo trabajo es un sistema experto basado en reglas. La base de conocimiento deberá tener al menos 50 reglas. Deberá tener interfaces adecuadas y el lenguaje de programación a usar debe ser un lenguaje de IA. En cuanto al desarrollo deberá seguir la metodología CommonKADS.
Los trabajos computacionales deberán ir acompañados de un informe redactado en el formato de un artículo y ser expuesto.

6. METODOLOGÍA
El curso se desarrolla a través de actividades teórico – prácticas, dando énfasis a aplicaciones en la industria y servicios. Los estudiantes, organizados en equipos de 3  estudiantes desarrollarán dos trabajos computacionales. Durante las secciones de laboratorio se estudiará el lenguaje no procedural CLIPS o una variante de LISP y se evaluará el avance del  de los trabajos computacionales.

7. EVALUACIÓN
El Promedio Final (PF) se determina de la forma siguiente:
PF = 0.0125(CL1 + CL2 + CL3 + CL4) + 0.01(TB1 + TB2) + 0.15*LA + 0,30*(EA +EB)

Donde:
CLx: Controles de Lecturas (CL1, CL2, CL3 y CL4)
TB1: Trabajo Grupal (Juegos Inteligentes Hombre – Máquina)
TB2: Trabajo Grupal (Sistemas Expertos)
EA: Examen Parcial
EB: Examen Final
LA: Laboratorio

El alumno podrá sustituir la nota del examen parcial o final siempre que no haya podido dar alguno de estos exámenes.
Solo serán evaluados los alumno que presenten 70% o más de asistencia, esto es 5 faltas están retirados automáticamente del curso.

8. BIBLIOGRAFÍA

[1] STUART, RUSSELL; PETER, NORVIG
2010 Artificial Intelligence: a modern approach. Ed. Prentice Hall.
ISBN 0-13-103805-2

[2] PATRICK, WINSTON
1984 Inteligencia artificial. Ed. Addison-Wesley
ISBN 0-201-51876-7

[3] ELAINE, RICH
1988 Inteligencia artificial. Ed McGraw-Hill
ISBN 0-07-450364-2

[4] DAVID, MAURICIO
2009 Apuntes de inteligencia artificial.

[5] BONIFACIO, MARTIN; ALFREDO, SANZ
2002 Redes neuronales y sistemas difusos. Ed. Alfaomega
ISBN 84-7897-466-0

[6] JOSEPH GIARRATANO – GARY RILEY
2001 Sistemas expertos, principios y programación. Ed. Ciencias Thomson
ISBN 970-686-059-2

[7] JOSÉ PALMA M., ROQUE MARIN M.
2008 Inteligencia artificial, técnicas métodos y aplicaciones. Ed. Mc Graw Hill
ISBN 978-84-484-5618-3

[8] JOSE R. HILERA, VICTOR J. MARTINE.
2000 Redes neuronales artificiales, fundamentos, modelos y aplicaciones. Ed. Alfaomega – rama
ISBN 978-84-484-5618-3

[9] NILS J. NILSON
2001 Inteligencia artificial, una nueva síntesis. Ed. Mc Graw Hill
ISBN 978-84-484-5618-3

[10] CAMPELO Ruy; MACULAN Nelson.
1994, Algoritmos e Heurísticas. Ed. Universidad Federal Fluminense.
GLOVER Fred; KOCHENBERGER Gary A.

[11] 2003 HandBook of Metaheuristic. Kluwer International Series.