Investigación de Operaciones [INF-3144] Capítulo 2: Programación con Restricciones

Documentos relacionados
Programación con Restricciones Constraint Programming [MII-771] Capítulo 1: Introducción

Investigación de Operaciones (IO) Operations Research

Metodología de la Investigación [DII-711] Capítulo 7: Selección de la Muestra

Algoritmos para CSP 1

Restricciones. Inteligencia Artificial. Ingeniería Superior en Informática, 4º Curso académico: 2011/2012 Profesores: Ramón Hermoso y Matteo Vasirani

Razonamiento con restricciones. Pedro Meseguer IIIA CSIC Bellaterra

Programación con Restricciones Constraint Programming

Problemas de satisfacción de restricciones.

Hoja de Problemas Tema 6 Búsqueda con estados estructurados: Restricciones

Uso de un motor de restricciones bajo dispositivos Android

Inteligencia Artificial Problemas de satisfacción de restricciones

Estudiemos el siguiente problema, propuesto por Wirth y desarrollado por Dijkstra: Una lista de las primeras secuencias que cumplen es:

ILOG SOLVER. Problemas de dominios finitos

Simulación y Optimización de Procesos Químicos

Problemas de Satisfacción de Restricciones

Razonamiento. con. Restricciones. Esquema Global. Tutorial IBERAMIA Introducción - Definiciones - Ejemplos

SINTAXIS DE SQL-92. <definición de esquema >::= CREATE SCHEMA <cláusula de nombre de esquema> [ <elemento de esquema>... ]

Satisfacción de Restricciones

Tema 5: Problemas de satisfacción de restricciones

Clase 2 Introducción al Modelamiento

MÁSTER UNIVERSITARIO EN INGENIERÍA DE SISTEMAS Y DE CONTROL. Curso 2010/2011. (Código: )

Razonamiento. con. Restricciones. Esquema Global. Tutorial CAEPIA Introducción - Definiciones - Ejemplos

ASIGNATURA FECHA HORA AULA. Matemática Discreta 20-ene 08,00-11,00 0,10H / 1,4H. Antropología Aplicada 22-ene 09,00-11,00 0,10H / 1,4H

El proyecto realizado consiste en un resolutor de sudokus mediante CSP.

DIPLOMADO. Evaluación de la Calidad de la práctica docente para la implementación del Nuevo Modelo Educativo en Escuelas de Ingeniería del I.P.N.

Bases de Datos 2. Teórico

DES: Programa(s) Educativo(s): Tipo de materia: Clave de la materia: Semestre: Área en plan de estudios:

DEPARTAMENTO SISTEMAS HORARIO AÑO Comisión : 4K1 - Turno Tarde 1º Cuatrimest. Autorizado por: Director Departamento - Augusto José Nasrallah

IINE-CPR semestres (mínimo); 12 semestres (máximo). Total de créditos: 260 Sistema de impartición: Escolarizado y Abierto.

El determinante de una matriz se escribe como. Para una matriz, el valor se calcula como:

Resolución de problemas

El Lenguaje PL/SQL. Un lenguaje de propósito general orientado a la inclusión de sentencias SQL. Estructura del código PL/SQL.

Hiperheurísticas Mediante un Enfoque Neuro-Evolutivo para el Ordenamiento Dinámico de Variables en Problemas de Satisfacción de Restricciones

DESARROLLO DE MODELOS, METODOS Y APLICACIONES DE PROGRAMACION ESTOCASTICA EN PLANIFICACION OPTIMA DE LARGO PLAZO.

Programación lógica basada en restricciones

Inteligencia en Redes de Comunicaciones - 08 Agentes

Todas las Imágenes y definiciones son del autor. En caso de que no fuera así, vendrá acompañada de la correspondiente referencia.

Lenguaje para descripción de datos

Calidad y Reutilización de Software. Dr. Cuauhtémoc Lemus Olalde. Centro de Investigación en Matemáticas (CIMAT) Febrero, 2003

Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros

Structured Query Language (SQL) Fundamentos de Bases de Datos InCo

Comprende el concepto de función y reconoce sus principales características. Grafica adecuadamente una función.

Restricciones de Integridad

RAZONAMIENTO BASADO EN MODELOS: RAZONAMIENTO CUALITATIVO RAZONAMIENTO CUALITATIVO BASADO EN RESTRICCIONES

Programación n declarativa: lógica y restricciones

C a l ses P P y y NP C a l se P C a l se N P N P [No N n o -De D te t rmin i i n s i ti t c i Polynomial-tim i e]

PROGRAMACIÓN CON RESTRICCIONES PARA EL TRATAMIENTO DE INCERTIDUMBRE EN CSP NUMÉRICOS

DEPARTAMENTO DE INGENIERÍA EN SISTEMAS Y COMPUTACIÓN OPCIÓN I

A.1. Definiciones de datos en SQL

Inteligencia Artificial. Visiones: Árboles de Búsqueda Técnicas Look-Back Técnicas Look-Ahead. Elizabeth Montero Ureta.

Universidad Nacional Autónoma de Nicaragua UNAN-Managua. Curso de Investigación de Operaciones

MODELOS DE INVESTIGACION DE OPERACIONES

Aplicación de Modelos Matemáticos en el Tratamiento de Imágenes de Ultrasonido

Introducción a las RdP. Optimización basada en redes de Petri. Redes de Petri. Son objeto de estudio: RdP. Ejemplos:

Programa de estudios por competencias Métodos Matemáticos II. Fecha elaboración/modificación: Julio 2015 Clave de la asignatura:

La Tecnología de Resolución de Restricciones 1. Rodolfo Fernández González. Planificación y Diseño: actualidad de los problemas de configuración

Introducción a las bases de datos.

UNIVERSIDAD NACIONAL DE SAN ANTONIO ABAD DEL CUSCO

Iván Ruiz Rube Departamento de Ingeniería Informática Escuela Superior de Ingeniería Universidad de Cádiz

LICENCIATURA ADMINISTRACIÓN Y DIRECCIÓN DE EMPRESAS

Problemas de satisfacción de restricciones (CSP)

CARRERA DE CIECNIAS DE LA COMPUTACIÓN PROGRAMA DE ESTUDIO. Teóricos: 2 Práctico: 1 Total 3

Seminario de Protocolos de Investigación Planteamiento del Problema a Estudiar

El Lenguaje SQL TEMA V. Grupo de Bas ses de Datos Avanzadas Univ. Carlo os III de Madrid. V.1 SQL como Lenguaje de Definición de Datos

Propagación de Restricciones. Iván André Tamayo García Maestría en Ingeniería de Sistemas EISC Universidad del Valle

Estilector: una herramienta de aprendizaje para la redacción y traducción de textos destinada a estudiantes universitarios

MQ1 - Métodos Cuantitativos 1

CARRERA DE INGENIERÍA CIVIL EN INFORMÁTICA COMPETENCIAS ESPECÍFICAS Y SUS NIVELES DE DOMINIO

PLAN DE UNIDAD 8.1. Enfoque de Contenido. racional positivo.

3ra. Parte. Bases de Datos Relacionales

1.Introducción al Modelo Relacional.

Fundamentos de programación y Bases de Datos

Ejemplo: El problema de la mochila. Algoritmos golosos. Algoritmos y Estructuras de Datos III. Segundo cuatrimestre 2013

INGENIERO MECÁNICO. Este programa educativo se ofrece en las siguientes sedes académicas de la UABC:

CENTRO UNIVERSITARIO MONTEJO A.C. SECUNDARIA Temario Matemáticas 1

Introducción a la Computación (para Matemática) Primer Cuatrimestre de 2015

CURSO 1 ASIGNATURA DEPARTAMENTO AREA NOMBRE_COMPLETO DOCTOR

Breve introducción a la Investigación de Operaciones

Especialidades en GII-TI

PROGRAMA DE ESTUDIOS SIMULTÁNEOS DE GRADO EN MATEMÁTICAS Y GRADO EN INGENIERÍA INFORMÁTICA

Balanceo de circuitos de distribución primaria

Modelo de Programación de Restricciones para la optimización de la distribución de una empresa del sector de la construcción. Pág. 1.

Unidad. Lenguaje SQL. (Structured Query Language)

Base de datos I Facultad de Ingeniería. Escuela de computación.

UNIVERSIDAD PEDAGÓGICA Y TECNOLÓGICA DE COLOMBIA FACULTAD DE CIENCIAS PROGRAMA DE MATEMÁTICAS PLAN DE ESTUDIOS

PSR. Problema. Desigualdad triangular: La suma de las longitudes de cualesquiera 2 lados no es menor que la del tercero.

PR1: Programación I 6 Fb Sistemas Lógicos 6 Obligatoria IC: Introducción a los computadores 6 Fb Administración de

TECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL

PLANIFICACION DE ALGORITMOS Y PROGRAMACION

(b) Cuál es la desventaja principal de una heurística con aprendizaje? es más informada que otra función heurística optimista h 2 *?

Representación con Restricciones de Medidas Cualitativas: Aplicación a un Problema de Scheduling

FACULTAD DE CIENCIAS AGROPECUARIAS ESCUELA ACADÉMICO PROFESIONAL DE MEDICINA VETERINARIA MATEMATICA II SILABO

Tema 2 Conceptos básicos de programación. Fundamentos de Informática

TÉCNICO SUPERIOR UNIVERSITARIO EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIÓN ÁREA SISTEMAS INFORMÁTICOS.

SELECCION AUTOMATICA DE ALGORITMO DE ASIGNACION PARA GENERAR CODIGO PARALELO EFICIENTE

Modelado de Arquitectura Software

INDICE GENERAL... 1 INDICE DE FIGURAS... 3

PLAN DE MERCADEO PARA LA DISTRIBUCIÓN Y DESARROLLO DE SOFTWARE ADMINISTRATIVO DIRIGIDA A LAS PEQUEÑAS Y MEDIANAS EMPRESAS (DISTRITO CAPITAL)

UNIVERSIDAD NACIONAL EXPERIMENTAL DE GUAYANA GERENCIA ACADEMICA COORDINACION DE PREGRADO PROYECTO INGENIERIA /ALGEBRA DE ESTRUCTURAS SEMESTRE:

Constante: Una constante es un dato numérico o alfanumérico que no cambia durante la ejecución del programa.

Transcripción:

Investigación de Operaciones [INF-3144] Capítulo 2: Programación con Restricciones Dr. Ricardo Soto [ricardo.soto@ucv.cl] [http://www.inf.ucv.cl/ rsoto] Escuela de Ingeniería Informática Pontificia Universidad Católica de Valparaíso Dr. Ricardo Soto Investigación de Operaciones 1/30

1. Introducción Es una tecnología que tiene sus raíces en diversas áreas... Objetivo? Resolver problemas que se puedan representar en función de variables y restricciones Dr. Ricardo Soto Investigación de Operaciones 2/30

2. Ejemplos Ejemplos Reales Detección de errores de precisión en robots (IRCCYN Lab)...+ de 500 variables y restricciones Diseño de un sistema de aire acondicionado para aviones (Dassault Aviation) Z3...+ de 1000 variables y restricciones a2 Y3 b2 link 2 Z2 end-effector F Y2 3 X3 a1 link 1 F 2 X2 b1 Z1 joint 2 X2 Y1 X1 F 1 θ1 joint 1 Dr. Ricardo Soto Investigación de Operaciones 3/30

3. Proyectos Resueltos por alumnos PUCV Manufacturing Cell Design Juan Gutiérrez, Alexis López Dr. Ricardo Soto Investigación de Operaciones 4/30

3. Proyectos Resueltos por alumnos PUCV Nurse Rostering Renzo Pizarro, Gianni Rivera Dr. Ricardo Soto Investigación de Operaciones 5/30

3. Proyectos Resueltos por alumnos PUCV Mario Bros Problem Rodrigo Muñoz Dr. Ricardo Soto Investigación de Operaciones 6/30

3. Proyectos Resueltos por alumnos PUCV Ms Pacman Problem Francisco Lobos, Diego González Dr. Ricardo Soto Investigación de Operaciones 7/30

3. Proyectos Resueltos por alumnos PUCV Water Distribution Paz Clayton, Ricardo Rojas Dr. Ricardo Soto Investigación de Operaciones 8/30

3. Proyectos Resueltos por alumnos PUCV Portfolio Selection Camila Allendes, Hans Berendsen Dr. Ricardo Soto Investigación de Operaciones 9/30

3. Proyectos Resueltos por alumnos PUCV Open-pit mining Boris Almonacid Dr. Ricardo Soto Investigación de Operaciones 10/30

4. Problema de Satisfacción de Restricciones (Constraint Satisfaction Problem, CSP) Ejemplo 1 Resolver la siguiente ecuación, reemplazando las letras por dígitos distintos. S E N D + M O R E M O N E Y Dr. Ricardo Soto Investigación de Operaciones 11/30

4. Problema de Satisfacción de Restricciones (Constraint Satisfaction Problem, CSP) Ejemplo 1 Resolver la siguiente ecuación, reemplazando las letras por dígitos distintos. S E N D + M O R E M O N E Y 9 5 6 7 + 1 0 8 5 1 0 6 5 2 Dr. Ricardo Soto Investigación de Operaciones 12/30

4. Problema de Satisfacción de Restricciones (Constraint Satisfaction Problem, CSP) Modelo Variables S,E,N,D,M,O,R,Y [0, 9] Restricciones 1000 S + 100 E + 10 N + D + 1000 M + 100 O + 10 R + E = 10000 M + 1000 O + 100 N + 10 E + Y S E, S N, S D... R Y Dr. Ricardo Soto Investigación de Operaciones 13/30

4. Problema de Satisfacción de Restricciones (Constraint Satisfaction Problem, CSP) Ejemplo 2 - N-Queens Ubicar n reinas en un tablero de ajedrez de n n, de manera tal que no se puedan atacar. Dr. Ricardo Soto Investigación de Operaciones 14/30

4. Problema de Satisfacción de Restricciones (Constraint Satisfaction Problem, CSP) Modelo Variables Q 1, Q 2, Q 3, Q 4 [1, 4] Restricciones (para i [1, 3] y j [i + 1, 4]) Q i Q j (filas) Q i + i Q j + j (diagonal 1) Q i i Q j j (diagonal 2) Dr. Ricardo Soto Investigación de Operaciones 15/30

4. Problema de Satisfacción de Restricciones (Constraint Satisfaction Problem, CSP) Ejercicio 1 - Packing Squares Ubicar un conjunto de cuadrados dentro una base cuadrada de tal manera que ningún cuadrado se translape con otro. Dr. Ricardo Soto Investigación de Operaciones 16/30

4. Problema de Satisfacción de Restricciones (Constraint Satisfaction Problem, CSP) Variables x 1, x 2,..., x squares [1, sidesize] y 1, y 2,..., y squares [1, sidesize] Constantes sidesize squares size 1, size 2,..., size squares Restricciones (para i [1, squares]) //inside x i sidesize size i + 1 y i sidesize size i + 1 Dr. Ricardo Soto Investigación de Operaciones 17/30

4. Problema de Satisfacción de Restricciones (Constraint Satisfaction Problem, CSP) Restricciones (para i [1, squares] y j [i + 1, squares]) //nooverlap x i + size i x j OR x j + size j x i OR y i + size i y j OR y j + size j y i Dr. Ricardo Soto Investigación de Operaciones 18/30

4. Problema de Satisfacción de Restricciones (Constraint Satisfaction Problem, CSP) A Constraint Satisfaction Problem P is defined by a triple P = X, D, C where: X is a n-tuple of variables X = x 1, x 2,..., x n, D is a corresponding n-tuple of domains D = D 1, D 2,..., D n such that x i D i, and D i is a set of values, for i = 1,..., n. C is a m-tuple of constraints C = C 1, C 2,..., C m. Dr. Ricardo Soto Investigación de Operaciones 19/30

5. Algoritmos de búsqueda y Técnicas de filtraje Solving = Modeling + Search Dr. Ricardo Soto Investigación de Operaciones 20/30

5. Algoritmos de búsqueda y Técnicas de filtraje Generate and Test Dr. Ricardo Soto Investigación de Operaciones 21/30

5. Algoritmos de búsqueda y Técnicas de filtraje Problemas Gran cantidad de instanciaciones que no conducen a una solución Las restricciones se evalúan con todas las variables instanciadas Solución? Evaluar las restricciones apenas se instancien las variables involucradas. Dr. Ricardo Soto Investigación de Operaciones 22/30

5. Algoritmos de búsqueda y Técnicas de filtraje Backtracking Dr. Ricardo Soto Investigación de Operaciones 23/30

5. Algoritmos de búsqueda y Técnicas de filtraje Principal Problema No se pueden detectar inconsistencias sin instanciar todas las variables involucradas en una restricción. Solución? Eliminar valores temporalmente de los dominios utilizando técnicas de consistencia (arc-consistency). Dr. Ricardo Soto Investigación de Operaciones 24/30

5. Algoritmos de búsqueda y Técnicas de filtraje Forward Checking 1 2 3 4 1 2 3 4 Dr. Ricardo Soto Investigación de Operaciones 25/30

5. Algoritmos de búsqueda y Técnicas de filtraje Se puede mejorar? Verificar no sólo la consistencia entre la variable actual y las futuras, sino que también entre las futuras... Dr. Ricardo Soto Investigación de Operaciones 26/30

5. Algoritmos de búsqueda y Técnicas de filtraje Maintaining Arc Consistency (Full Look Ahead) 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 Dr. Ricardo Soto Investigación de Operaciones 27/30

5. Algoritmos de búsqueda y Técnicas de filtraje Optimización Basta con extender el algoritmo de búsqueda para considerar la función objetivo Algoritmo más utilizado para optimización en CP: Branch and Bound Dr. Ricardo Soto Investigación de Operaciones 28/30

6. Heurísticas de selección de variable y valor Variable Valor First-fail (dominio más pequeño) Most-constrained variable Reduce-first (dominio más grande) Round-robin (orden equitativo, por ej. de la 1era a la última) smallest median maximal Dr. Ricardo Soto Investigación de Operaciones 29/30

7. Solvers Diversos Lenguajes para CP Basados en programación lógica (Ecl i ps e, SicstusProlog...) Basados en programación orientada a objetos (ILOG, Gecode...) Modelado de alto nivel (OPL, Zinc...) Dr. Ricardo Soto Investigación de Operaciones 30/30