Silabo 2015 - 0


UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS


FACULTAD DE INGENIERÍA DE SISTEMAS E 

INFORMÁTICA


        Escuela Académico Profesional de Ingeniería de Sistemas


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 – 0
Coordinador                  : Hugo Vega
Profesor                        : Hugo Vega


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


UNIDAD Nº 1: Fundamentos de Inteligencia Artificial
Logro 
El estudiante al finalizar la unidad comprenderá que es la inteligencia artificial (IA) y su diferencia con los sistemas de información, algunas aplicaciones en la industria y servicios, y su dificultad para resolverlos a través de la teoría de complejidad de problemas.
Temario
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.
Definición de la IA, Máquina inteligente. Diferencia entre sistemas operacionales y sistemas inteligentes. Revisión de la representación del conocimiento, revisión de los lenguajes de la IA. Aplicaciones en la industria y servicios (robótica, planificación, gestión de desperdicios). Test de Turing.



UNIDAD Nº 2: Búsqueda de Estado y su Aplicación para Juegos Humano – Máquina
Logro 
El estudiante al finalizar la unidad representará problemas de inteligencia artificial como búsqueda de estado, conocerá los métodos de búsqueda de estado para resolverlos, y diseñará juegos humano-máquina, que será prácticamente invencible por el humano, para ello definirá la función de evaluación más adecuada e implementará diversos criterios inteligentes de decisión.
Temario
El problema de búsqueda en un espacio de estado. Representación de problemas de raciocinio y de optimización. Representación de problemas de juegos humano – máquina. Métodos Ciegos. Métodos Informados. Función evaluadora y su aplicación en juegos-humano máquina. Algoritmos de juego humano máquina. Criterios de decisión para juegos humano – máquina: no determinístico, goloso, min-max, mejor diferencia de utilidades.




UNIDAD Nº 3: Ingeniería de conocimiento
Logro 
El estudiante al finalizar la unidad comprenderá que son los sistemas expertos (SE), sus aplicaciones sabrá cuando aplicarlo, y modelará sistemas basados en el conocimiento siguiendo la metodología de facto CommonKADS.
Temario
Definición de SE. Arquitectura, taxonomía, aplicaciones, y ventajas de SE. Requisitos para el desarrollo de SE. Introducción a la ingeniería de conocimiento. Métodos de desarrollo de sistemas basados en el conocimiento (SBC). La metodología CommonKADS (CK). Construcción de un SBC usando CK: modelo de contexto, modelo conceptual y modelo de diseño.



UNIDAD Nº 4: Desarrollo y validación de Sistemas Expertos
Logro 
El estudiante al finalizar la unidad podrá diseñar, implementar y validar un sistema experto para ello aprenderá a adquirir y representar el conocimiento, diseñar motores de inferencia, calcular los ratios de performance de un sistema experto, y reforzará lo aprendido mediante diversos ejemplos clásicos de sistemas expertos.
Temario
Adquisición de conocimiento. Construcción de la base de hechos y base de conocimiento. Estructuras de representación de conocimientos. El motor de inferencia. Los métodos de encadenamiento regresivo y progresivo. Principales errores en el desarrollo de un SE. Calidad de un SE. Eficiencia y error de SE. Índice de acuerdo, sensibilidad y especificidad.




UNIDAD Nº: 5 Introducción a Machine Learning y a Heurísticas
Logro 
El estudiante al finalizar comprenderá que es la optimización combinatoria y machine learning así como sus aplicaciones para crear valor e incrementar la competitividad de las organizaciones a través de casos de estudios y talleres.
Temario
Conceptos de aprendizaje y de machine learning. Sistemas expertos 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. Aplicaciones de optimización combinatoria en la industria y servicios.



5. CONTENIDO POR SEMANAS:




>

      SEMANA                             CONTENIDO                   
 CLASES    
    TRABAJOS   
       


Clasificación de problemas algorítmicos [Inglés]
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.

 Semana1
Semana1: 
Clasificacion de Problemas Algoritmicos
 laboratorio1
   Trabajo:     Árbol
Definición de la Inteligencia Artificial. Máquina inteligente. Diferenci a 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.
 Semana2

  Semana 2:
Fundamentos de la Inteligencia Artificial

 Trabajo arbol
   Laboratorio: Ejercicios lisp

 Semana2
Diseño Sistema Inteligente
3° 
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.
 Semana 3
   
Semana 3 :
 Representación de Problemas de Juego humano
Manual LISP1


 Trabajo Manual Lisp
Manual LISP1
4° y 5°
Métodos de búsqueda ciega e Informados
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.
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 
   
 Semana 5
Semana 4 y 5:
Métodos de búsqueda 
a ciega e Informados
 Trabajo Manual Lisp
   Manual LISP2


 Trabajo Manual Lisp
Ejercicios Recursividad

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.
    Semana 6
Semana 6: 
Métodos de búsqueda 
para juegos humano- maquina
https://www.dropbox.com/s/vz3721pob99h4r7/ejemplo-Z-M-G-P.docx?dl=0

Trabajo Zorro-Gallina-Maiz-Persona
Presentación de Trabajos

Los alumnos mostrarán sus habilidades en cuanto al desarrollo de sistemas inteligentes y sus aplicaciones en los sectores de la industria y servicio. Los alumnos presentarán un informe y un software.
   
Proyecto Sistema Inteligente: Robot bombero



 Examen Parcial
Examen Parcial
Version 1
Examen Parcial 
Versión 2
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 

Semana 9: 
Fundamento de SE

 Recorrido por Profundidad y Amplitud

Recorrido por Profundidad y Amplitud
10°
Introducción. Adquisición de conocimiento. La metodología C ommonKADS. Diseño de Sistemas Expertos (SE). Ciclo de vida de un SE.
Referencias: [6] Capítulos 6, [7] Capítulos 19.      
 
Semana 10: 
Ingeniería de 
Conocimiento

11°
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.      

Semana 11: 
Adquisición de 
Conocimiento

12°
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. 
Semana 12: 
Desarrollo de SE basado en Reglas



13°
Principales errores en el desarrollo de un sistema experto. Calidad de un sistema experto. Validación de sistemas inteligentes, métodos cuantit ativos 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 
Semana 13: 
Calidad y Validación de SE



14°
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.    
Semana 14: 
Introducción a 
Machine Learning y
 heurísticas


15°
Presentación de trabajos 

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. 

 Recorrido por Profundidad y Amplitud
Resolución del Examen Final y Practica Prolog


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 lectura (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.