Saltar al contenido principal
- -

Razonamiento con restricciones
El curso esta lleno

En este curso se estudiarán los problemas de satisfacción y optimización con restricciones, detallando los algoritmos que los resuelven, para restricciones duras y blandas. Se presentarán elementos de modelización. Se analizará el problema SAT y sus algoritmos de resolución (exhaustiva, estocástica). Se aplicarán todas estas técnicas a la aplicación concreta de la programación de tareas.Aquí va la breve descripción

Duración

4,5 créditos

Acerca de este curso

Este curso forma parte del Master Universitario en Investigación en Inteligencia Artificial organizado por la Asociación Española para la Inteligencia Artificial (AEPIA) y la Universidad Internacional Menéndez Pelayo (UIMP). El curso se encuentra dentro del módulo "Razonamiento y Planificación" y es de carácter optativo.

Que aprenderé

En este curso aprenderás lo que es un Problema de Satisfacción de Restricciones (CSP) y Optimización y conocerás algoritmos que los resuelven. Aprenderás la diferencia entre consistencia local y global y estudiarás cómo combinar algoritmos de búsqueda e inferencia para abordar estos problemas. Distinguirás entre restricciones duras y blandas y cómo tratar con cada una de ellas. Conocerás los casos particulares del problema SAT y el de programación de tareas .

Prerrequisitos

Necesitas un conocimiento básico de algoritmos de búsqueda y de lógica.

Unidades

  1. Módulo 1: Problemas CSP, resolución mediante búsqueda (exhaustiva, local) y mediante inferencia
  2. Módulo 2: Consistencia local y global. Combinación de búsqueda e inferencia. Heurísticas
  3. Módulo 3: Restricciones globales. Explotación de simetrías
  4. Módulo 4: Restricciones blandas. Optimización
  5. Módulo 5: Problema SAT. Algoritmo DPLL, algoritmos estocásticos
  6. Módulo 6: Programación de tareas (job-shop scheduling)

Bibliografía

  1. Rossi, Van Beek, Walsh (2006) Handbook of Constraint Programming, Elsevier
  2. Dechter R. (2003) Constraint Processing, Morgan Kauffman
  3. Apt K. (2003) Principles of Constraint Programming, Cambridge UP
  4. A. Biere, M. Heule, H. Von Maaren and T. Walsh (2008) Handbook of Satisfiability. IOS Press
  5. Joseph Y-T. Leung (2004) Handbook of Scheduling: Algorithms, Models, and Performance Analysis, Chapman and Hall/CRC
  6. Michael Pinedo (2016) Scheduling, Theory, Algorithms, and Systems. Springer
  7. H. H. Hoos and T. Stützle (2004) Stochastic Local Search: Foundations and Applications. Morgan Kaufmann
  8. Van Hentenryck and Michel (2005) Constraint-Based Local Search. MIT Press

Profesores del curso

Pedro Meseguer

Pedro Meseguer es investigador científico del CSIC en el IIIA. Licenciado en Ciencias Físicas y en Informática, se doctoró en la UPC en 1992, con una tesis sobre validación de sistemas expertos. Desde entonces su principal tema de investigación es razonamiento con restricciones, tema sobre el que ha hecho numerosas publicaciones. También ha trabajado sobre búsqueda heurística. Ha participado en diversos proyectos de investigación, y ha desarrollado tareas editoriales en revistas especializadas. En paralelo a su trabajo de investigación, ha realizado varias tareas docentes, de dirección de tesis doctorales y de servicio a la comunidad de IA. Es ECCAI fellow.

M. Camino Rodríguez Vela

Camino es doctora en Matemáticas por la Universidad de Oviedo, catedrática de universidad del área de Ciencias de la Computación e Inteligencia Artificial y subdirectora del Centro de Inteligencia Artificial en la misma Universidad. Su ámbito de investigación se encuadra en el ámbito de los problemas de optimización y satisfacción con restricciones, con especial interés en los problemas de asignación de recursos. En la búsqueda de soluciones eficientes ha utilizado técnicas de soft-computing, concretamente estrategias evolutivas, en ocasiones combinadas con técnicas de búsqueda en trayectorias. Es investigadora responsable del Grupo de Investigación en Scheduling y Optimización Inteligentes (iScOp).

MOOC es el acrónimo en inglés de Massive Online Open Course (que puede traducirse como Curso masivo abierto online).

Las siglas MOOC se utilizan para referirse a una iniciativa que comenzó en 2011 con un curso de Introducción a la Inteligencia artificial de la Universidad de Stanford en el que se inscribieron 160.000 estudiantes de 190 países, y que se ha convertido ya en un movimiento global al que se han incorporado las mejores universidades del mundo con la creación de diversas plataformas MOOC y miles de cursos que comparten un objetivo: proporcionar acceso gratuito a una formación superior de calidad a cualquiera que tenga una conexión a internet.

Los MOOCs están basados en la integración de tecnologías que existen desde hace tiempo en Internet: el vídeo en red, la evaluación automática a distancia y los foros de preguntas y respuestas en la web. Pero es ahora cuando los usuarios se han acostumbrado a usar el vídeo en red y las redes sociales en su día a día en Internet, lo que facilita que se creen comunidades de alumnos situados en cualquier parte del mundo que comparten conocimientos y experiencias y se ayudan en el proceso de aprendizaje, dándole a la formación online un nuevo enfoque colaborativo. Esto, unido a la disponibilidad de acceso a los cursos MOOC en cualquier momento y desde cualquier lugar en donde se tenga acceso a Internet, ha permitido crear una nueva comunidad global de estudiantes.

Los MOOCs de UPV[X] están diseñados para ayudarte a aprender trabajando a tu ritmo de forma independiente y proporcionarte el apoyo de la comunidad de aprendizaje si te hace falta.

Para ello los MOOCs están estructurados en módulos que suelen corresponder a una semana de trabajo (aunque no siempre es así). Los módulos se estructuran en lecciones con un vídeo, que dura normalmente entre 3 y 10 minutos, y una pregunta de refuerzo al final para ayudarte a fijar su contenido. Las lecciones están orientadas a tratar un concepto (o un número reducido de ellos) de forma que sean lo más atómicas que sea posible.

Los cursos MOOC de UPV[X] pueden tener distintos esquemas de evaluación, pero lo habitual es que al terminar cada módulo haya un examen (normalmente tipo test) que te permitirá comprobar tu evolución y fijar los conocimientos, y que cuenta en cierto porcentaje para la evaluación final. Con ello tendrás una realimentación frecuente de tu progreso que te permitirá ir mejorar tu proceso de aprendizaje.

Al acabar el MOOC habrá a un examen final para evaluar si has alcanzado los objetivos de aprendizaje que contará en un porcentaje mayor para la evaluación final.

En los MOOC también hay un foro de debate moderado por el equipo del curso donde los alumnos pueden consultar sus dudas sobre el contenido del curso y comentar aquellas cosas que les parezcan interesantes. El acceso a una comunidad online de internautas con tus mismos intereses y que están aprendiendo a la vez enriquece la experiencia del curso.

Esperamos sinceramente que disfrutes de nuestros MOOCs y aprendas con nosotros