Tema 5: Aplicaciones de los algoritmos para SAT

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Tema 5: Aplicaciones de los algoritmos para SAT"

Transcripción

1 Tema 5: Aplicaciones de los algoritmos para SAT Dpto. Ciencias de la Computación Inteligencia Artificial Universidad de Sevilla Lógica Informática (Ingeniería del Software) Curso LI(IS), Algoritmos para SAT 5.1

2 Contenido Ejemplos de Aplicación Prover9 y Mace4 El problema de los mentirosos El problema de los rectángulos El problema de las 4 reinas Búsqueda local estocástica Búsqueda local Algoritmos probabiĺısticos LI(IS), Algoritmos para SAT 5.2

3 Prover9 y Mace4 Prover9 es un demostrador automático para las lógicas proposicionales y de primer orden. Mace4 es un calculador de modelos. Disponen de un interfaz gráfico. Son libres y se pueden descargar en: mccune/mace4 LI(IS), Algoritmos para SAT 5.3

4 El problema de los mentirosos Enunciado: En una isla hay dos tribus, la de los veraces (que siempre dicen la verdad) y la de los mentirosos (que siempre mienten). Un viajero se encuentra con tres isleños A, B y C y cada uno le da la siguiente información: A dice B y C son veraces si y sólo si C es veraz B dice Si A y C son veraces, entonces B y C son veraces y A es mentiroso C dice B es mentiroso si y sólo si A o B es veraz Determinar a qué tribu pertenece cada uno. LI(IS), Algoritmos para SAT 5.4

5 El problema de los mentirosos Formalización: a, b y c representan que A, B y C son veraces (en consecuencia, a, b y c representan que A, B y C son mentirosos). Representación: a (b c c) b (a c b c a) c ( b a b) Resultado del cálculo de modelos con Mace4: v(a) = 1, v(b) = 1, v(c) = 0 Conclusión: A y B son veraces y C es mentiroso. LI(IS), Algoritmos para SAT 5.5

6 El problema de los mentirosos Si añadimos a b c como objetivo, y usamos Prover9 para encontrar una demostración: LI(IS), Algoritmos para SAT 5.6

7 El problema de los rectángulos Enunciado: Un rectángulo se divide en seis rectángulos menores como se indica en la figura. Demostrar que si cada una de los rectángulos menores tiene un lado cuya medida es un número entero, entonces la medida de alguno de los lados del rectángulo mayor es un número entero. Formalización: base: la base del rectángulo mayor es un número entero altura: la altura del rectángulo mayor es un número entero base x : la base del rectángulo x es un número entero altura x : la altura del rectángulo x es un número entero LI(IS), Algoritmos para SAT 5.7

8 El problema de los rectángulos Representación: base A altura A, base B altura B, base C altura C base D altura D, base E altura E, base F altura F base A base C, base A base D base F base D base E base B, base A base B base altura D altura F altura E altura A altura C altura F altura altura B altura D altura F altura altura B altura E altura Objetivo: base altura Prover9: THEOREM PROVED LI(IS), Algoritmos para SAT 5.8

9 El problema de las 4 reinas Enunciado: Calcular las formas de colocar 4 reinas en un tablero de 4x4 de forma que no se ataquen entre sí (no haya más de una reina en cada fila, columna o diagonal). Formalización: r ij (1 i, j 4) indica que hay una reina en la fila i columna j LI(IS), Algoritmos para SAT 5.9

10 El problema de las 4 reinas En cada fila hay una reina: r 11 r 12 r 13 r 14, r 21 r 22 r 23 r 24 r 31 r 32 r 33 r 34, r 41 r 42 r 43 r 44 Si en una casilla hay reina, entones no hay más reinas en su fila, su columna y sus diagonales: r 11 ( r 12 r 13 r 14 ) ( r 21 r 31 r 41 ) ( r 22 r 33 r 44 ) r 12 ( r 11 r 13 r 14 ) ( r 22 r 32 r 42 ) ( r 21 r 23 r 34 ) r 13 ( r 11 r 12 r 14 ) ( r 23 r 33 r 43 ) ( r 31 r 22 r 24 ) r 14 ( r 11 r 12 r 13 ) ( r 24 r 34 r 44 ) ( r 23 r 32 r 41 ) r 21 ( r 22 r 23 r 24 ) ( r 11 r 31 r 41 ) ( r 32 r 43 r 12 ) r 22 ( r 21 r 23 r 24 ) ( r 12 r 32 r 42 ) ( r 11 r 33 r 44 r 13 r 31 ) r 23 ( r 21 r 22 r 24 ) ( r 13 r 33 r 43 ) ( r 12 r 34 r 14 r 32 r 41 ) r 24 ( r 21 r 22 r 23 ) ( r 14 r 34 r 44 ) ( r 13 r 33 r 42 ) LI(IS), Algoritmos para SAT 5.10

11 El problema de las 4 reinas Si en una casilla hay reina, entones no hay más reinas en su fila, su columna y sus diagonales: r 31 ( r 32 r 33 r 34 ) ( r 11 r 21 r 41 ) ( r 42 r 13 r 22 ) r 32 ( r 31 r 33 r 34 ) ( r 12 r 22 r 42 ) ( r 21 r 43 r 14 r 23 r 41 ) r 33 ( r 31 r 32 r 34 ) ( r 13 r 23 r 43 ) ( r 11 r 22 r 44 r 24 r 42 ) r 34 ( r 31 r 32 r 33 ) ( r 14 r 24 r 44 ) ( r 12 r 23 r 43 ) r 41 ( r 42 r 43 r 44 ) ( r 11 r 21 r 31 ) ( r 14 r 23 r 32 ) r 42 ( r 41 r 43 r 44 ) ( r 12 r 22 r 32 ) ( r 31 r 24 r 33 ) r 43 ( r 41 r 42 r 44 ) ( r 13 r 23 r 33 ) ( r 21 r 32 r 34 ) r 44 ( r 41 r 42 r 43 ) ( r 14 r 24 r 34 ) ( r 11 r 22 r 33 ) LI(IS), Algoritmos para SAT 5.11

12 El problema de las 4 reinas Búsqueda de modelos con Mace4: r 11 : 0, r 12 : 0, r 13 : 1, r 14 : 0 r 21 : 1, r 22 : 0, r 23 : 0, r 24 : 0 r 31 : 0, r 32 : 0, r 33 : 0, r 34 : 1 r 41 : 0, r 42 : 1, r 43 : 0, r 44 : 0 r 11 : 0, r 12 : 1, r 13 : 0, r 14 : 0 r 21 : 0, r 22 : 0, r 23 : 0, r 24 : 1 r 31 : 1, r 32 : 0, r 33 : 0, r 34 : 0 r 41 : 0, r 42 : 0, r 43 : 1, r 44 : 0 LI(IS), Algoritmos para SAT 5.12

13 Otros algoritmos DPLL es la base de la mayor parte de procedimientos que resuelven SAT mediante una búsqueda sistemática. Sin embargo, existen otros algoritmos basados en ideas muy diferentes, por ejemplo: GSAT: Un algoritmo voraz basado en una búsqueda local. GWSAT y WALKSAT algoritmos probabiĺısticos (de Monte Carlo) que combinan la búsqueda local con una estrategia random walk. Estos algoritmos incluyen algunos pasos en los que se selecciona algún objeto (una cláusula o una variable) aleatoriamente. Esto quiere decir que se seleccionan de tal modo que la probabilidad de elegir cualquiera de ellos es la misma. LI(IS), Algoritmos para SAT 5.13

14 El algoritmo GSAT Entrada: Un conjunto U con n cláusulas, dos enteros positivos MAXFLIPS y MAXTRIES Salida: Un modelo de U, o bien, 0, si no se encuentra ninguno. Repetir hasta MAXTRIES veces el siguiente bloque 1. Generar aleatoriamente un valoración V. 2. Repetir hasta MAXFLIPS veces el siguiente bloque: 2.1 Si V es un modelo de U, parar y devolver V. 2.2 Si V no es modelo de U, para cada variable proposicional p de las cláusulas de U hacer: MAKE[p]= número de cláusulas NO satisfechas por V que serían satisfechas si cambiamos el valor de p. BREAK[p]= número de cláusulas satisfechas por V que NO serían satisfechas si cambiamos el valor de p. DIFF[p]=MAKE[p] BREAK[p]. 2.3 Seleccionar aleatoriamente una variable p con valor DIFF[p] máximo. 2.4 Actualizar V cambiando el valor de p por su opuesto. En cualquier otro caso, devolver 0. LI(IS), Algoritmos para SAT 5.14

15 Random Walk para 2 SAT Entrada: Un conjunto con n cláusulas cada una con 2 literales. Salida: Un modelo de U, o bien, 0, si no se encuentra ninguno. Partimos de una valoración V cualquiera. Repetimos hasta 2mn 2 veces el siguiente bloque: 1. Si V es un modelo de U, parar y devolver V. 2. Si V no es modelo de U. 2.1 Elegir una cláusula cualquiera C de U no satisfecha por V. 2.2 Elegir aleatoriamente un literal L de la cláusula C y cambiar en V el valor de L por su opuesto. En cualquier otro caso, devolver 0. LI(IS), Algoritmos para SAT 5.15

16 Random Walk para 2 SAT (II) Observemos que si U es insatisfactible, entonces el algoritmo devuelve una respuesta correcta. Supongamos que U es satisfactible y que eliminamos la cota 2mn 2, permitiendo el bloque B del algoritmo se ejecute hasta encontrar un modelo de U. Entonces el número esperado de veces que se ejecuta el bloque B está acotado por n 2. Si U es satisfactible la probabilidad de que el algoritmo encuentre un modelo es al menos 1 2 m. Por tanto, si U es satisfactible la probabilidad de que el algoritmo devuelva, incorrectamente, el valor 0 es menor que ( 1 2 )m. Sin embargo, si la respuesta es 0, no tenemos certeza total sobre la corrección de la respuesta: se trata de un algoritmo de Monte Carlo. LI(IS), Algoritmos para SAT 5.16

17 Random Walk para SAT Dado k 1, k SAT es la clase de todos los conjuntos de cláusulas que son satisfactibles y están formados por cláusulas con exactamente k literales cada una. La estrategia de Random Walk no resulta tan efectiva para k SAT, con k 3. Sin embargo, podemos combinarla con GSAT para conseguir un algoritmo de Monte Carlo para SAT. Los algoritmos GWSAT y WalkSAT reciben como entrada un conjunto de cláusulas, un entero MAXFLIPS y una probabilidad wp > 0. Ambos alternan, con probabilidad wp, entre una búsqueda local como en GSAT y una estrategia Random Walk. Los pasos de tipo Random Walk permiten escapar de mínimos locales de la función objetivo cuyo valor se intenta minimizar en la búsqueda local. LI(IS), Algoritmos para SAT 5.17

18 GWSAT Entrada: Un conjunto de cláusulas U, un entero positivo MAXFLIPS, un entero positivo MAXTRIES y una probabilidad wp. Salida: Un modelo de U, o bien, 0, si no se encuentra ninguno. Repetir hasta MAXTRIES veces el siguiente bloque: Generar aleatoriamente un valoración V. Repetir hasta MAXFLIPS veces el siguiente bloque: 1. Si V es un modelo de U, parar y devolver V. 2. Si V no es modelo de U: 2.1 Con probabilidad wp, seleccionar aleatoriamente una cláusula C no satisfecha por V. Seleccionar aleatoriamente un literal L de C y actualizar V cambiando el valor de L por su opuesto. 2.2 En caso contrario, continuar como en GSAT En cualquier otro caso, devolver 0. LI(IS), Algoritmos para SAT 5.18

19 WalkSAT Entrada: Un conjunto de cláusulas U, un entero positivo MAXFLIPS y una probabilidad wp. Salida: Un modelo de U, o bien, 0, si no se encuentra ninguno. Generar aleatoriamente un valoración V. Repetir hasta MAXFLIPS veces el siguiente bloque: 1. Si V es un modelo de U, parar y devolver V. 2. Si V no es modelo de U: 2.1 Seleccionar aleatoriamente una cláusula C no satisfecha por V. 2.2 Para cada literal L de C calcular BREAK[L]= número de cláusulas satisfechas por V que NO serían satisfechas si cambiamos el valor de L. 2.3 Si existe L en C tal que BREAK[L]= 0, seleccionar un tal L y actualizar V cambiando el valor de L. 2.4 Si no existe L con BREAK[L]= 0, entonces, con probabilidad wp, seleccionar un literal L con BREAK[L] mínimo y actualizar V cambiando el valor de L. En el resto de casos se selecciona aleatoriamente un literal de C y se cambia su valor en V. En cualquier otro caso, devolver 0. LI(IS), Algoritmos para SAT 5.19

Tema 5: Aplicaciones de los algoritmos para SAT

Tema 5: Aplicaciones de los algoritmos para SAT Tema 5: Aplicaciones de los algoritmos para Dpto. Ciencias de la Computación Inteligencia Artificial Universidad de Sevilla Lógica Informática (Tecnologías Informáticas) Curso 2016 17 Contenido Prover9

Más detalles

Tema 6: Aplicaciones

Tema 6: Aplicaciones Tema 6: Dpto. Ciencias de la Computación Inteligencia Artificial Universidad de Sevilla Lógica Informática (Tecnologías Informáticas) Curso 2017 18 Contenido Prover9 es un demostrador automático para las

Más detalles

Lógica informática ( )

Lógica informática ( ) 1 / 49 Lógica informática (2012 13) Tema 6: Algoritmos para SAT. José A. Alonso Jiménez Andrés Cordón Franco María J. Hidalgo Doblado Grupo de Lógica Computacional Departamento de Ciencias de la Computación

Más detalles

Lógica informática ( )

Lógica informática ( ) 1 / 47 Lógica informática (2011 12) Tema 5b: Aplicaciones de la lógica proposicional José A. Alonso Jiménez Andrés Cordón Franco María J. Hidalgo Doblado Grupo de Lógica Computacional Departamento de Ciencias

Más detalles

Lógica informática ( )

Lógica informática ( ) 1 / 37 Lógica informática (2011 12) Tema 14: Aplicaciones de la lógica proposicional José A. Alonso Jiménez Andrés Cordón Franco María J. Hidalgo Doblado Grupo de Lógica Computacional Departamento de Ciencias

Más detalles

Tema 9: Formalización en Prolog de la lógica proposicional

Tema 9: Formalización en Prolog de la lógica proposicional Programación lógica Curso 2004 05 Tema 9: Formalización en Prolog de la lógica proposicional José A. Alonso Jiménez Jose-Antonio.Alonso@cs.us.es http://www.cs.us.es/ jalonso Dpto. de Ciencias de la Computación

Más detalles

Tema 3: Algoritmos para SAT: Tableros y algoritmo DPLL

Tema 3: Algoritmos para SAT: Tableros y algoritmo DPLL Tema 3: : y DPLL Dpto. Ciencias de la Computación Inteligencia Artificial Universidad de Sevilla Lógicas Informática (Tecnologías Informáticas) Curso 2016 17 Contenido Presentaremos dos s para estudiar

Más detalles

Tema 1: Sintaxis y semántica de la lógica proposicional

Tema 1: Sintaxis y semántica de la lógica proposicional Lógica informática Curso 2003 04 Tema : Sintaxis y semántica de la lógica proposicional José A. Alonso Jiménez Andrés Cordón Franco Dpto. de Ciencias de la Computación e Inteligencia Artificial Universidad

Más detalles

Tema 2: (Tecnologías Informáticas) Curso Dpto. Ciencias de la Computación Inteligencia Artificial Universidad de Sevilla

Tema 2: (Tecnologías Informáticas) Curso Dpto. Ciencias de la Computación Inteligencia Artificial Universidad de Sevilla y Tema 2: y Dpto. Ciencias de la Computación Inteligencia Artificial Universidad de Sevilla Lógica Informática (Tecnologías Informáticas) Curso 2017 18 Contenido y En este tema presentaremos mecanismos

Más detalles

Tema 4: (Tecnologías Informáticas) Curso Dpto. Ciencias de la Computación Inteligencia Artificial Universidad de Sevilla

Tema 4: (Tecnologías Informáticas) Curso Dpto. Ciencias de la Computación Inteligencia Artificial Universidad de Sevilla Tema 4: Proposicional Dpto. Ciencias de la Computación Inteligencia Artificial Universidad de Sevilla Lógica Informática (Tecnologías Informáticas) Curso 2015 16 Contenido Los tableros semánticos proporcionan

Más detalles

Lógica informática ( )

Lógica informática ( ) Lógica informática (2005 06) Tema 1: Sintaxis y semántica de la lógica proposicional José A. Alonso Jiménez Grupo de Lógica Computacional Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad

Más detalles

Algunas Aplicaciones de LP

Algunas Aplicaciones de LP Algunas Aplicaciones de LP Diversas son las aplicaciones directas de lógica proposicional. A continuación veremos cómo un problema de búsqueda (típico de aplicaciones de Inteligencia Artificial) se puede

Más detalles

Lógica Informática. Grupo 3. Curso 2005/06.

Lógica Informática. Grupo 3. Curso 2005/06. Dpto. de Ciencias de la Computacin e Inteligencia Artificial Universidad de Sevilla Lógica Informática. Grupo 3. Curso 2005/06. Ejercicios de Lógica Proposicional. Temas 1 a 5 Ejercicio 1. Expresar mediante

Más detalles

Tema 1: Sintaxis y Semántica de la Lógica Proposicional

Tema 1: Sintaxis y Semántica de la Lógica Proposicional Tema 1: Sintaxis y Semántica de la Lógica Proposicional Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Lógica y Computabilidad Curso 2010 11 LC, 2010 11 Lógica Proposicional

Más detalles

Tema 2: Métodos de Deducción para la Lógica Proposicional

Tema 2: Métodos de Deducción para la Lógica Proposicional Tema 2: Métodos de Deducción para la Lógica Proposicional Dpto. Ciencias de la Computación Inteligencia Artificial Universidad de Sevilla Lógica y Computabilidad Curso 2010 11 LC, 2010 11 Métodos de Deducción

Más detalles

Tema 2: Métodos de Deducción para la Lógica Proposicional

Tema 2: Métodos de Deducción para la Lógica Proposicional Tema 2: Métodos de Deducción para la Lógica Proposicional Dpto. Ciencias de la Computación Inteligencia Artificial Universidad de Sevilla Lógica y Computabilidad Curso 2006 07 LC, 2006 07 Métodos de Deducción

Más detalles

Tema 4: Lógicas Informática (Tecnologías Informáticas) Curso Dpto. Ciencias de la Computación Inteligencia Artificial Universidad de Sevilla

Tema 4: Lógicas Informática (Tecnologías Informáticas) Curso Dpto. Ciencias de la Computación Inteligencia Artificial Universidad de Sevilla Tema 4: Dpto. Ciencias de la Computación Inteligencia Artificial Universidad de Sevilla Lógicas Informática (Tecnologías Informáticas) Curso 2017 18 Contenido Presentaremos un algoritmo más para estudiar

Más detalles

Tema 2: Lógica Computacional para la IA: Lógica Proposicional

Tema 2: Lógica Computacional para la IA: Lógica Proposicional Tema 2: Lógica Computacional para la IA: Lógica Proposicional Félix Lara Dpto. Ciencias de la Computación Inteligencia Artificial Universidad de Sevilla Seminario de Inteligencia Artificial, Curso 2005

Más detalles

Lógica informática ( )

Lógica informática ( ) 1 / 34 Lógica informática (2013 14) Tema 1: Sintaxis y semántica de la lógica proposicional José A. Alonso Jiménez Andrés Cordón Franco María J. Hidalgo Doblado Grupo de Lógica Computacional Departamento

Más detalles

Invariantes. El principio del palomar

Invariantes. El principio del palomar Invariantes. El principio del palomar 1. Invariantes En un problema, un invariante es una característica, normalmente un número, o alguna propiedad de un número, que no varía cuando se modifica el problema

Más detalles

Análisis de Algoritmos Problemas de grafos

Análisis de Algoritmos Problemas de grafos Análisis de Algoritmos Problemas de grafos Dra. Elisa Schaeffer elisa.schaeffer@gmail.com PISIS / FIME / UANL Problemas de grafos p. 1 INDEPENDENT SET es NP-completo Necesitamos un gadget : el triángulo.

Más detalles

Problema 3 Sea ABC un triángulo acutángulo con circuncentro O. La recta AO corta al lado BC en D. Se sabe que OD = BD = 1 y CD = 1+

Problema 3 Sea ABC un triángulo acutángulo con circuncentro O. La recta AO corta al lado BC en D. Se sabe que OD = BD = 1 y CD = 1+ PRIMER NIVEL PRIMER DÍA Problema 1 a) Es posible dividir un cuadrado de lado 1 en 30 rectángulos de perímetro? b) Supongamos que un cuadrado de lado 1 está dividido en 5 rectángulos de perímetro p. Hallar

Más detalles

Tema 5: Algoritmos Genéticos

Tema 5: Algoritmos Genéticos Tema 5: Algoritmos Genéticos José Luis Ruiz Reina Miguel A. Gutiérrez Naranjo Departamento de Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Inteligencia Artificial Búsqueda

Más detalles

1. Método general. 2. Análisis de tiempos de ejecución. 3. Ejemplos de aplicación Problema de las 8 reinas Problema de la mochila 0/1.

1. Método general. 2. Análisis de tiempos de ejecución. 3. Ejemplos de aplicación Problema de las 8 reinas Problema de la mochila 0/1. Backtracking. Método general. 2. Análisis de tiempos de ejecución. 3. Ejemplos de aplicación. 3.. Problema de las 8 reinas. 3.2. Problema de la mochila 0/. Método general El backtracking (método de retroceso

Más detalles

Tema 1(parte 2): Introducción a la Estadística 1.1-1

Tema 1(parte 2): Introducción a la Estadística 1.1-1 1 Tema 1(parte 2): Introducción a la Estadística 1.1-1 Muestreo Muestra Es un subconjunto de la población. Objetivo del muestreo: El objetivo del muestreo es obtener la mayor cantidad de información posible

Más detalles

Tema 8: Teorema de Herbrand. Tableros en lógica de primer orden

Tema 8: Teorema de Herbrand. Tableros en lógica de primer orden Tema 8:. en de primer orden Dpto. Ciencias de la Computación Inteligencia Artificial Universidad de Sevilla Lógica Informática (Tecnologías Informáticas) Curso 2014 15 Contenido Sea Γ un conjunto de fórmulas

Más detalles

Algoritmos pseudo-polinomiales

Algoritmos pseudo-polinomiales Análisis de Algoritmos Algoritmos pseudo-polinomiales Dra. Elisa Schaeffer elisa.schaeffer@gmail.com PISIS / FIME / UANL Algoritmos pseudo-polinomiales p. 1 HAMILTON PATH es NP-completo La reducción es

Más detalles

Dualidad 1. 1 Formas simétricas. 2 Relación primal-dual. 3 Dualidad: el caso general. 4 Teoremas de dualidad. 5 Condiciones de holgura complementaria.

Dualidad 1. 1 Formas simétricas. 2 Relación primal-dual. 3 Dualidad: el caso general. 4 Teoremas de dualidad. 5 Condiciones de holgura complementaria. Dualidad 1 1 Formas simétricas. 2 Relación primal-dual. 3 Dualidad: el caso general. 4 Teoremas de dualidad. Condiciones de holgura complementaria. 6 Solución dual óptima en la tabla. 7 Interpretación

Más detalles

Tema 3 Equivalencia. Formas normales.

Tema 3 Equivalencia. Formas normales. Tema 3 Equivalencia. Formas normales. Lógica Proposicional Antonio de J. Pérez Jiménez Departamento Ccia. Lógica Informática Antonio de J. Pérez Jiménez (Departamento Ccia.) Tema 3 Equivalencia. Formas

Más detalles

Introducción a la Complejidad Computacional

Introducción a la Complejidad Computacional Introducción a la Complejidad Computacional El análisis sobre decidibilidad que hemos hecho nos permite saber qué podemos hacer y qué no podemos hacer. Pero nada sabemos de qué tan difícil resolver los

Más detalles

JUEGOS Y PROBLEMAS 2012

JUEGOS Y PROBLEMAS 2012 I OLIMPIADA RECREATIVA DE MATEMÁTICA JUEGOS Y PROBLEMAS 2012 MATERIAL DE ENTRENAMIENTO CUARTO DE SECUNDARIA Problema 1. Cuál de las condiciones es suficiente para que exista la expresión real z y x? (A)

Más detalles

Algorítmica y Lenguajes de Programación. Complejidad computacional

Algorítmica y Lenguajes de Programación. Complejidad computacional Algorítmica y Lenguajes de Programación Complejidad computacional Complejidad computacional. Introducción La complejidad computacional estudia la dificultad inherente de problemas de importancia teórica

Más detalles

Tema IV: NP completitud

Tema IV: NP completitud Tema IV: NP completitud Definición: Un lenguaje L Σ es NP duro sii para cada L NP se tiene que L p L. Proposición 1: Si L 1 es NP duro y L 1 p L 2, entonces L 2 es NP duro. Definición: Un lenguaje L Σ

Más detalles

Tema 7: Formas normales: Formas prenex y de Skolem

Tema 7: Formas normales: Formas prenex y de Skolem Tema 7: Formas normales: Formas prenex y de Skolem Dpto. Ciencias de la Computación Inteligencia Artificial Universidad de Sevilla Lógica Informática (Ingeniería del Software) Curso 2013 14 LI(IS), 2013

Más detalles

4. Complejidad computacional

4. Complejidad computacional Fundamentos de Programación Entera 4. Complejidad computacional Carlos Testuri Germán Ferrari Departamento de Investigación Operativa Instituto de Computación Facultad de Ingeniería Universidad de la República

Más detalles

A B MIN C D E F MAX x E.T.S.I. INFORMÁTICA 4º CURSO. INTELIGENCIA ARTIFICIAL E INGENIERÍA DEL CONOCIMIENTO

A B MIN C D E F MAX x E.T.S.I. INFORMÁTICA 4º CURSO. INTELIGENCIA ARTIFICIAL E INGENIERÍA DEL CONOCIMIENTO E.T.S.I. INFORMÁTICA 4º CURSO. INTELIGENCIA ARTIFICIAL E INGENIERÍA DEL CONOCIMIENTO UNIVERSIDAD DE MÁLAGA Dpto. Lenguajes y Ciencias de la Computación RELACIÓN DE PROBLEMAS. TEMA IV. PROBLEMAS DE JUEGOS.

Más detalles

Tema 8: Teorema de Herbrand. Tableros en lógica de primer orden

Tema 8: Teorema de Herbrand. Tableros en lógica de primer orden Tema 8:. en de primer orden Dpto. Ciencias de la Computación Inteligencia Artificial Universidad de Sevilla Lógica Informática (Tecnologías Informáticas) Curso 2016 17 Contenido Sea Γ un conjunto de fórmulas

Más detalles

Soluciones del examen de Lógica informática (Grupos 1 y 2) del 23 de Septiembre de José A. Alonso Jiménez

Soluciones del examen de Lógica informática (Grupos 1 y 2) del 23 de Septiembre de José A. Alonso Jiménez Soluciones del examen de Lógica informática (Grupos 1 y 2) del 23 de Septiembre de 2005 José A. Alonso Jiménez Grupo de Lógica Computacional Dpto. de Ciencias de la Computación e Inteligencia Artificial

Más detalles

El método simplex 1. 1 Forma estándar y cambios en el modelo. 2 Definiciones. 3 Puntos extremos y soluciones factibles básicas. 4 El método simplex.

El método simplex 1. 1 Forma estándar y cambios en el modelo. 2 Definiciones. 3 Puntos extremos y soluciones factibles básicas. 4 El método simplex. El método simplex Forma estándar y cambios en el modelo. Definiciones. Puntos extremos y soluciones factibles básicas. 4 El método simplex. Definiciones y notación. Teoremas. Solución factible básica inicial.

Más detalles

Tema 2: Teorema de estructura de los grupos abelianos finitamente generados.

Tema 2: Teorema de estructura de los grupos abelianos finitamente generados. ESTRUCTURAS ALGEBRAICAS GRADO EN MATEMÁTICAS. CURSO 215/216 Tema 2: Teorema de estructura de los grupos abelianos finitamente generados. 1.1. Grupo abeliano libre. Bases. Definición 1.1. El grupo Z n con

Más detalles

Paradigma lógico Lógica proposicional Resolución. Programación Lógica. Eduardo Bonelli. Departamento de Computación FCEyN UBA. 10 de octubre, 2006

Paradigma lógico Lógica proposicional Resolución. Programación Lógica. Eduardo Bonelli. Departamento de Computación FCEyN UBA. 10 de octubre, 2006 Departamento de Computación FCEyN UBA 10 de octubre, 2006 Prolog Se basa en el uso de la lógica como un lenguaje de programación Se especifican ciertos hechos y reglas de inferencia un objetivo ( goal

Más detalles

COMPUTACIÓN ALEATORIZADA

COMPUTACIÓN ALEATORIZADA Conferencia magistral COMPUTACIÓN ALEATORIZADA Probabilidad y algoritmos Dra. Elisa Schaeffer Profesora del Posgrado de Ing. de Sistemas (PISIS) en la Facultad de Ing. Mecánica y Eléctrica (FIME), Coordinador

Más detalles

Problema 1. Se considera un triángulo equilátero de lado 1 y centro O, comoeldelafigura.

Problema 1. Se considera un triángulo equilátero de lado 1 y centro O, comoeldelafigura. Problema 1. Se considera un triángulo equilátero de lado 1 y centro O, comoeldelafigura. O C Un rayo parte de O y se refleja en los tres lados,, C y C, (en el orden dado), hasta alcanzar el vértice. Determinalalongitudmínima

Más detalles

84 Tema 3. Dualidad. todas las restricciones son del tipo, todas las variables son no negativas.

84 Tema 3. Dualidad. todas las restricciones son del tipo, todas las variables son no negativas. Tema 3 Dualidad En el desarrollo de la programación lineal la teoria de la dualidad es importante, tanto desde el punto de vista teórico como desde el punto de vista práctico. Para cada modelo lineal se

Más detalles

Actividad 1: Calculadora

Actividad 1: Calculadora Actividad 1: Calculadora Objetivo del Ejercicio: Ser capaces de realizar una aplicación personalizada para realizar cálculos matemáticos. Resultado final: Con este ejercicio vamos a ser capaces de diseñar

Más detalles

Complejidad Computacional

Complejidad Computacional Complejidad Computacional Clasificación de Problemas Teoría de la Complejidad Estudia la manera de clasificar algoritmos como buenos o malos. Estudia la manera de clasificar problemas de acuerdo a la dificultad

Más detalles

descubrimiento evolutivo de arquitecturas software

descubrimiento evolutivo de arquitecturas software Interactividad en el descubrimiento evolutivo de arquitecturas software Aurora Ramírez, José Raúl Romero y Sebastián Ventura Dpto. de Informática y Análisis Numérico. Universidad de Córdoba. XX Jornadas

Más detalles

Planificación de las enseñanzas

Planificación de las enseñanzas Planificación de las enseñanzas 1 Estructura de las enseñanzas: a. Descripción general del plan de estudios: De conformidad con la Guía para el Diseño y Tramitación de los Títulos de Grado y Máster de

Más detalles

Tema 5: Búsqueda local y algoritmos genéticos

Tema 5: Búsqueda local y algoritmos genéticos Tema 5: Búsqueda local y algoritmos genéticos José Luis Ruiz Reina Miguel A. Gutiérrez Naranjo Departamento de Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Inteligencia Artificial

Más detalles

RESUMEN DE ALGORITMOS PROBABILÍSTICOS

RESUMEN DE ALGORITMOS PROBABILÍSTICOS RESUMEN DE ALGORITMOS PROBABILÍSTICOS En los algoritmos probabilísticos hay ciertas decisiones que se toman al azar bajo condiciones estadísticamente estables como una distribución uniforme. Normalmente

Más detalles

Departamento de Inteligencia Artificial Facultad de Informática Universidad Politécnica de Madrid

Departamento de Inteligencia Artificial Facultad de Informática Universidad Politécnica de Madrid LÓGICA FORMAL Lógica Proposicional: Teorema de Efectividad Departamento de Inteligencia Artificial Facultad de Informática Universidad Politécnica de Madrid Lógica Proposicional 1 La lógica proposicional

Más detalles

Seminario de problemas. Curso Hoja 17

Seminario de problemas. Curso Hoja 17 Seminario de problemas. Curso 015-15. Hoja 17 11. [Olimpiada Matemática de Española, 00, Islas Canarias] Las alturas de un triángulo ABC se cortan en un punto H. Sabemos que AB = CH. Determinad el valor

Más detalles

CANGURO MATEMÁTICO 2012 QUINTO DE SECUNDARIA

CANGURO MATEMÁTICO 2012 QUINTO DE SECUNDARIA CANGURO MATEMÁTICO 2012 QUINTO DE SECUNDARIA INDICACIONES Las marcas en la hoja de respuestas se deben realizar, únicamente, con LÁPIZ. Escriba su apellido paterno, apellido materno y nombres con letras

Más detalles

SEGUNDO NIVEL. Problema 1 Hallar todos los números naturales a tales que para todo natural n el número n( a + n) no es un cuadrado perfecto.

SEGUNDO NIVEL. Problema 1 Hallar todos los números naturales a tales que para todo natural n el número n( a + n) no es un cuadrado perfecto. PRIMER NIVEL PRIMER DÍA Problema 1 Se tiene un tablero rectangular de 2 13. En cada casilla de la fila inferior hay una ficha y las 13 fichas están numeradas de 1 a 13, de menor a mayor; la fila superior

Más detalles

Lógica y Programación

Lógica y Programación Lógica y Programación Resolución proposicional Antonia M. Chávez, Agustín Riscos, Carmen Graciani Dpto. Ciencias de la Computacion e Inteligencia Artificial Universidad de Sevilla Introducción Idea básica

Más detalles

Con los dos conectivos y en las formulas que tienen una sola variable proposicional distinta, no hay forma de construir una contradicción.

Con los dos conectivos y en las formulas que tienen una sola variable proposicional distinta, no hay forma de construir una contradicción. 1) No se puede formar una contradicción usando solamente los dos conectivos, {*,->}, en las formulas que tienen una sola variable proposicional distinta. Con los dos conectivos y en las formulas que tienen

Más detalles

Lógica Proposicional IIC2213. IIC2213 Lógica Proposicional 1/42

Lógica Proposicional IIC2213. IIC2213 Lógica Proposicional 1/42 Lógica Proposicional IIC2213 IIC2213 Lógica Proposicional 1/42 Por qué necesitamos la lógica? Necesitamos un lenguaje con una sintaxis precisa y una semántica bien definida. Queremos usar este lenguaje

Más detalles

Lógica Proposicional IIC2213. IIC2213 Lógica Proposicional 1/42

Lógica Proposicional IIC2213. IIC2213 Lógica Proposicional 1/42 Lógica Proposicional IIC2213 IIC2213 Lógica Proposicional 1/42 Por qué necesitamos la lógica? Necesitamos un lenguaje con una sintaxis precisa y una semántica bien definida. Queremos usar este lenguaje

Más detalles

PRIMER NIVEL. Problema 6. Facu y Nico juegan un juego con un cuadrado cuadriculado de 13

PRIMER NIVEL. Problema 6. Facu y Nico juegan un juego con un cuadrado cuadriculado de 13 PRIMER NIVEL PRIMER DÍA Problema 1. Un rectángulo, que no es un cuadrado, y que está cuadriculado en cuadritos de 1 1 se divide en exactamente 8 figuras poligonales distintas siguiendo líneas de la cuadrícula.

Más detalles

Tema 1: Representación de problemas como espacio de estados

Tema 1: Representación de problemas como espacio de estados Tema 1: Representación de problemas como espacio de estados José A. Alonso Jiménez Carmen Graciani Díaz Francisco Jesús Martín Mateos José Luis Ruiz Reina Dpto. Ciencias de la Computación e Inteligencia

Más detalles

Matemáticas Discretas TC1003

Matemáticas Discretas TC1003 Matemáticas Discretas TC1003 Módulo I: Descripción Departamento de Matemáticas ITESM Módulo I: Descripción Matemáticas Discretas - p. 1/15 En esta sección veremos un poco de la historia de la Lógica: desde

Más detalles

PROGRAMACIÓN ORIENTADA A LA INTELIGENCIA ARTIFICIAL

PROGRAMACIÓN ORIENTADA A LA INTELIGENCIA ARTIFICIAL PROGRAMACIÓN ORIENTADA A LA INTELIGENCIA ARTIFICIAL Ejercicios de programación en LISP y PROLOG Angeles Manjarrés Riesco Severino Fernández Galán Jesús González Boticario prog-ia@dia.uned.es Dpto. Inteligencia

Más detalles

TEOREMA DE PITÁGORAS

TEOREMA DE PITÁGORAS TEOREMA DE PITÁGORAS 1. Triángulos rectángulos. Teorema de Pitágoras.. Demostraciones visuales del Teorema de Pitágoras. 3. Ternas pitagóricas. 4. Aplicaciones del teorema de Pitágoras. 4.1.Conocidos los

Más detalles

XVI OLIMPIADA DEL CONO SUR SUCRE, BOLIVIA

XVI OLIMPIADA DEL CONO SUR SUCRE, BOLIVIA XVI OLIMPIADA DEL CONO SUR SUCRE, BOLIVIA BANCO DE PROBLEMAS DESIGUALDADES 1D Demostrar que en un triángulo rectángulo, la suma de los catetos nunca excede a hipotenusa. 2 veces la 2D Demostrar que si

Más detalles

Introducción al Muestreo Probabilístico

Introducción al Muestreo Probabilístico Introducción al Muestreo Probabilístico Qué es el muestreo? El muestreo es el proceso de seleccionar la muestra de individuos que van a participar del estudio o la encuesta. Es el procedimiento para seleccionar

Más detalles

3-Coloring es NP-Completo

3-Coloring es NP-Completo 3-Coloring es NP-Completo Lic. Luis Miguel Prado Llanes Posgrado en Ingeniería de Sistemas Universidad Autónoma de Nuevo León 26 de mayo de 2008 Prado Llanes (PISIS) 3-Coloring 26.05.2008 1 / 36 Contenido

Más detalles

Ejercicios de Lógica matemática y fundamentos ( ) José A. Alonso Jiménez María J. Hidalgo Doblado

Ejercicios de Lógica matemática y fundamentos ( ) José A. Alonso Jiménez María J. Hidalgo Doblado Ejercicios de Lógica matemática y fundamentos (2012 13) José A. Alonso Jiménez María J. Hidalgo Doblado Grupo de Lógica Computacional Dpto. de Ciencias de la Computación e Inteligencia Artificial Universidad

Más detalles

Carlos J. Zapata G Carlos A. Ramirez V

Carlos J. Zapata G Carlos A. Ramirez V Carlos J. Zapata G Carlos A. Ramirez V Introducción Los AG provienen de la familia de modelos computacionales basados en la evolución Holland fue el primero quien le dio un formalismo y el nombre a los

Más detalles

Algoritmos Cuánticos

Algoritmos Cuánticos Algoritmos Cuánticos Alfonsa García, Francisco García 1 y Jesús García 1 1 Grupo de investigación en Información y Computación Cuántica (GIICC) Algoritmos cuánticos 1. Introducción 2. Primeros algoritmos

Más detalles

Curso /10/12. Inteligencia Artificial (30223) Lección 5. Búsqueda local. Índice. Problemas de optimización y búsqueda local

Curso /10/12. Inteligencia Artificial (30223) Lección 5. Búsqueda local. Índice. Problemas de optimización y búsqueda local Inteligencia Artificial () Lección. Búsqueda local Curso - José Ángel Bañares //. Dpto. Informática e Ingeniería de Sistemas. Índice Problemas de optimización, búsqueda local Escalada/Hill Climbing Enfriamiento

Más detalles

Tema 2: Representación de problemas como espacios de estados

Tema 2: Representación de problemas como espacios de estados Tema 2: Representación de problemas como espacios de estados José Luis Ruiz Reina José Antonio Alonso Franciso J. Martín Mateos Departamento de Ciencias de la Computación e Inteligencia Artificial Universidad

Más detalles

UNIVERSIDAD AUTÓNOMA DEL ESTADO DE MÉXICO

UNIVERSIDAD AUTÓNOMA DEL ESTADO DE MÉXICO UNIVERSIDAD AUTÓNOMA DEL ESTADO DE MÉXICO FACULTAD DE ECONOMIA LICENCIATURA DE ACTUARIA Algebra Lineal Práctica: Matriz inversa 1 M. en I. Elizabeth Almazán Torres 2 Resultado de Aprendizaje El estudiante

Más detalles

XII Olimpiada Nacional Escolar de Matemática (ONEM 2015) MARCA LA ALTERNATIVA CORRECTA EN LA HOJA DE RESPUESTAS

XII Olimpiada Nacional Escolar de Matemática (ONEM 2015) MARCA LA ALTERNATIVA CORRECTA EN LA HOJA DE RESPUESTAS XII Olimpiada Nacional Escolar de Matemática (ONEM 2015) 19 de junio de 2015 - La prueba tiene una duración máxima de 2 horas. - No está permitido usar calculadoras, ni consultar apuntes o libros. - Utiliza

Más detalles

MODELOS DE COMPUTACIÓN Y COMPLEJIDAD

MODELOS DE COMPUTACIÓN Y COMPLEJIDAD MODELOS DE COMPUTACIÓN Y COMPLEJIDAD Grado de Ingeniería Informática. Tecnologías Informáticas Mario de J. Pérez Jiménez Grupo de investigación en Computación Natural Dpto. Ciencias de la Computación e

Más detalles

PROGRAMACIÓN ORIENTADA A LA INTELIGENCIA ARTIFICIAL

PROGRAMACIÓN ORIENTADA A LA INTELIGENCIA ARTIFICIAL PROGRAMACIÓN ORIENTADA A LA INTELIGENCIA ARTIFICIAL Ejercicios de programación en LISP y PROLOG prog-ia@dia.uned.es Dpto. Inteligencia Artificial E.T.S.I. Informática (UNED) C/ Juan del Rosal 16 28040

Más detalles

Cálculos en la Naturaleza viva (I)

Cálculos en la Naturaleza viva (I) Cálculos en la Naturaleza viva (I) Mario de J. Pérez Jiménez Grupo de Investigación en Computación Natural Dpto. Ciencias de la Computación e Inteligencia Artificial ETS Ingeniería Informática, Universidad

Más detalles

Reingeniería de un generador de casos de prueba por algoritmos genéticos para WS-BPEL 2.0

Reingeniería de un generador de casos de prueba por algoritmos genéticos para WS-BPEL 2.0 Reingeniería de un generador de casos de prueba por algoritmos genéticos para WS-BPEL 2.0 Álvaro Cortijo García Directores: Antonia Estero Botaro y Antonio García Domínguez Proyecto Fin de Carrera Ingeniería

Más detalles

Teoría de la Computación puesta en Práctica

Teoría de la Computación puesta en Práctica Teoría de la Computación puesta en Práctica Marcelo Arenas M. Arenas Teoría de la Computación puesta en Práctica 1 / 24 Problema a resolver WiMAX (Worldwide Interoperability for Microwave Access): estándar

Más detalles

Algoritmo de ramificación y acotación

Algoritmo de ramificación y acotación Algoritmo de ramificación y acotación Investigación Operativa Ingeniería Técnica en Informática de Gestión UC3M Curso 08/09 Descripción de los objetivos En esta práctica desarrollaremos el algoritmo de

Más detalles

Capítulo 3. Raíz cuadrada

Capítulo 3. Raíz cuadrada Capítulo 3 Raíz cuadrada 1 2 Raíz cuadrada Para efectuar las operaciones y simplificar los resultados, usamos las siguientes: Reglas: 1 2 rayas en un nivel equivalen a 1 punto en el nivel inmediato superior

Más detalles

Pra cticas de Algoritmia para problemas difı ciles Especialidad en Computacio n, grado en Ingenierı a Informa tica.

Pra cticas de Algoritmia para problemas difı ciles Especialidad en Computacio n, grado en Ingenierı a Informa tica. Pra cticas de Algoritmia para problemas difı ciles Especialidad en Computacio n, grado en Ingenierı a Informa tica Curso 2013-2014 Universidad de Zaragoza Escuela de Ingenierı a y Arquitectura Departamento

Más detalles

Computación Bio inspirada Tema IX: Resolución eficiente de problemas NP-completos en Modelos Celulares

Computación Bio inspirada Tema IX: Resolución eficiente de problemas NP-completos en Modelos Celulares Computación Bio inspirada Tema IX: Resolución eficiente de problemas NP-completos en Modelos Celulares Mario de J. Pérez Jiménez Grupo de Investigación en Computación Natural Dpto. Ciencias de la Computación

Más detalles

Problema de las N Reinas. Resolución paralela

Problema de las N Reinas. Resolución paralela Problema de las N Reinas Resolución paralela Indice Introducción al problema Representación y Soluciones Resolución secuencial Resolución paralela Conclusiones Bibliografía 2 3 Introducción Introducción

Más detalles

Forma estándar de un PPL con m restricciones y n variables. (b 0)

Forma estándar de un PPL con m restricciones y n variables. (b 0) Forma estándar de un PPL con m restricciones y n variables Maximizar (minimizar) Z = c 1 x 1 + c 2 x 2 +... + c n x n a 11 x 1 + a 12 x 2 +... + a 1n x n = b 1 a 21 x 1 +a 22 x 2 +... + a 2n x n = b 2...

Más detalles

Tecnologías en Educación Matemática

Tecnologías en Educación Matemática Tecnologías en Educación Matemática jac@cs.uns.edu.ar Dpto. de Ciencias e Ingeniería de la Computación UNIVERSIDAD NACIONAL DEL SUR Verificación de un algoritmo Qué significa que un algoritmo sea correcto?

Más detalles

EJEMPLO DE PARTIDA. Pongo en la casilla: 4 El tablero queda como: X

EJEMPLO DE PARTIDA. Pongo en la casilla: 4 El tablero queda como: X El objetivo de este ejercicio es crear un programa que juegue a tres en raya contra un oponente humano. Tras cada movimiento el programa debe mostrar el tablero y permitir mover al humano. El programa

Más detalles

MODELOS DE COMPUTACIÓN Y COMPLEJIDAD

MODELOS DE COMPUTACIÓN Y COMPLEJIDAD MODELOS DE COMPUTACIÓN Y COMPLEJIDAD Grado de Ingeniería Informática. Tecnologías Informáticas Mario de J. Pérez Jiménez Grupo de investigación en Computación Natural Dpto. Ciencias de la Computación e

Más detalles

Problemas computacionales, intratabilidad y problemas NP completos. 26 de agosto de Facultad de Ingeniería. Universidad del Valle

Problemas computacionales, intratabilidad y problemas NP completos. 26 de agosto de Facultad de Ingeniería. Universidad del Valle Complejidad Complejidad, in NP completos Facultad de Ingeniería. Universidad del Valle 26 de agosto de 2014 Contenido Complejidad 1 2 3 Complejidad computacional Complejidad Notación De acuerdo a la complejidad

Más detalles