Está en la página 1de 27

COMPUTABILIDAD Y COMPLEJIDAD

Curso 2011-12
Presentacion de la asignatura

Mario de J. Perez Jimenez


Grupo de investigacion en Computacion Natural
Dpto. Ciencias de la Computacion e Inteligencia Artificial
Universidad de Sevilla

Sevilla, 29 de septiembre de 2011


Computabilidad vs Complejidad

Computabilidad
I Estudio de la resolubilidad mecanica de problemas.

I Decidibilidad versus indecidibilidad.

Complejidad
I Estudio de la resolubilidad mecanica practica de problemas.

I Tratabilidad versus intratabilidad.

2/1
Objetivos del curso

I Estudio de recursos computacionales (tiempo y/o espacio) necesario para


resolver problemas usando maquinas reales.

I Analisis de la complejidad computacional de problemas abstractos.

I El problema P versus NP.

I Necesidad de buscar nuevos paradigmas de computacion.

I Presentacion dos modelos no convencionales bioinspirados.

3/1
Problemas concretos vs Problemas abstractos (I)
Un problema concreto:
I Visitar 42 ciudades, coste cij entre dos ciudades.
I Hallar un circuito por las 42 ciudades de coste mnimo.

4/1
Problemas concretos vs Problemas abstractos (II)
Otro problema concreto:
I Visitar 3150 ciudades, coste cij0 entre dos ciudades.
I Hallar un circuito por las 3150 ciudades de coste mnimo.

5/1
Problemas concretos vs Problemas abstractos (III)
De un problema concreto (de la vida real) a un problema abstracto:
I Fase de abstraccion.
I Fase de modelizacion: problema abstracto.

Problema abstracto: conjunto de problemas concretos.


I Tamano de un problema concreto.

Procedimiento de resolucion de un problema de la vida real:

I Se modeliza a traves de un problema abstracto.


I Se disena una solucion mecanica del problema abstracto.
I Se implementa dicha solucion mediante un programa.
I Se ejecuta el programa sobre una maquina electronica para los
datos especficos del problema concreto.

6/1
Un problema abstracto: TSP

TSP (Travelling Salesman Problem)

Dado un grafo no dirigido con pesos en sus aristas, deter-


minar un circuto hamiltoniano de peso mnimo.

Otros problemas concretos modelizados por el TSP:


I Sistemas de navegacion GPS.

I Planificacion de movimientos de robots (Robotic machine).

I Diseno de circuitos (Printed Circuit Manufacturing).

I Elaboracion de mapas locales del genoma humano (Genome local maps).

I Vehculos autoguiados (AGV).


I .........

7/1
Tratabilidad computacional de problemas abstractos (I)

Diseno de una solucion mecanica de un problema abstracto.

Implementacion de esa solucion en una maquina.

Ejecucion de esa solucion para problemas concretos de tamano grande:

I La maquina devuelve una respuesta en tiempo aceptable.

I La maquina NO devuelve una respuesta en tiempo aceptable.

8/1
Tratabilidad computacional de problemas abstractos (II)

I Problema tratable:
I Existe UN programa que resuelve el problema y proporciona
soluciones para entradas de tamano grande.

I Problemas intratables:
I NINGUN programa que resuelve el problema proporciona
soluciones para entradas de tamano grande.

I Problema presuntamente intratable:


I NINGUN programa CONOCIDO que resuelve el problema
proporciona soluciones para entradas de tamano grande

9/1
Problemas tratables
I Resolubilidad algortmica en terminos practicos:
I tratabilidad vs intratabilidad.

Polinomial = Bueno Exponencial = Malo

10 20 30 40 50

n .00001 s .00002 s .00003 s .00004 s .00005 s

n2 .00001 s .00004 s .00009 s .00016 s .00025 s

2n .001 s 1.0 s 17.9 m 12.7 d 35.7 a

10 / 1
Un problema tratable: el de la moneda falsa
Se tienen n monedas y se sabe que exactamente una de
ellas tiene un peso distinto de las otras. Si se dispone de
una balanza tradicional cuantas pesadas habra que realizar
para detectar la moneda distinta?

I Bastara realizar 1 + log2 (n) pesadas.

I Se podra resolver el problema con menos pesadas?

I Como log2 (n) n, la solucion dada es de tipo polinomial.


I Probar que log2 (n) n.
I El problema de la moneda falsa es tratable.
11 / 1
Un problema presuntamente intratable

12 / 1
El problema del campeonato de liga de futbol

Tras la jornada 25 del campeonato de liga de futbol de


primera division, un aficionado desea saber si su equipo tiene
posibilidades matematicas de quedar campeon de liga.

I Sistema antiguo de puntuacion (2, 1, 0): tratable.


I Sistema nuevo de puntuacion (3, 1, 0): presuntamente intratable.

13 / 1
Clases de complejidad de problemas abstractos

I Clase de complejidad P

I Es la clase de los problemas tratables


I Clase de complejidad NP

I Existen problemas de la clase NP que son presuntamente


intratables.
I Clase de complejidad EXP

I Existen problemas de la clase EXP que son intratables.

14 / 1
NP

P
P
EXP

NPCompleto

15 / 1
Modos de computacion de un modelo de computacion

Modo determinista.

Modo nodeterminista.

Se tiene que PNP.

?
P= NP

El problema P versus NP: determinar si P y NP coinciden.

Premio del CMI: un millon de dolares.

16 / 1
Limitaciones de las maquinas electronicas

Maquinas: dispositivos finitos.

Limitaciones en espacio (memoria) y en tiempo .

I Espacio: miniaturizacion (R. Feymann, 1959).


I Tiempo: velocidad de calculo de procesadores (R. Churchhouse, 1983).

Consecuencia:
I Existen problemas muy importantes de la vida real que nunca podran ser
resueltos por ordenadores electronicos (a menos que . . . )

17 / 1
Modelos de computacion no convencionales

Modelo de computacion: formaliza el concepto de procedimiento mecanico.

I Dispositivos del modelo : maquinas.

I Maquina convencional: soporte electronico.


I Maquina no convencional: otro soporte distinto.

A la busqueda de modelos de computacion no convencionales ...

18 / 1
Computacion Natural (I)

I Estudiar modelos y tecnicas computacionales inspiradas en la Naturaleza.

I Comprender el mundo en terminos de procesamiento de la informacion.

I La informacion es mas importante que la materia y que la energa (Zuse, Fredkin 1960s).
I El universo: dispositivo computacional que esta actualizando constantemente sus reglas de calculo

.
(tesis de Zuse-Fredkin)

I La Naturaleza como fuente de inspiracion.

I La Naturaleza como sustrato de implementacion.

I La Naturaleza como computacion.

19 / 1
Computacion Natural (II)

La Naturaleza como fuente de inspiracion:

? Cellular Automata (K. Zuse, S. Ulam, J. von Neumann , 1940s).

? Neural networks (W. McCulloch y W. Pitts , 1943).

? Genetics Algorithms (J. Holland, 1975), Evolutionary Computing (T. Baeck, D. Fogel, Z. Michalewicz,
1997), Genetic Programming(J. Koza, 1992).

? Artificial Life (Lindenmayer, 1968, Ch. Langton, 1986.).

? Artificial Immune Systems (J.D. Farmer, N. Packard, A. Perelson, 1986).

? Swarm intelligence (G. Beni, J. Wang, 1989).

? Membrane Computing(Gh. Paun, 19982000).

20 / 1
Computacion Natural (III)

La Naturaleza como sustrato de implementacion:

? Molecular Computing (L. Adlemann, 1994).

La Naturaleza como computacion:

? Computational Systems Biology (H. Kitano, 2002).

? Synthetic Biology (S.A. Benner, A.M. Sismour, 2005).

? Computation with living cells (A. Ehrenfeucht, T. Harju, I. Petre, D.M. Prescott, G. Rozenberg, 2003).

21 / 1
Computacion in vitro

I Modelos moleculares basados en ADN.


I Experimento de Adleman (1994).
I Programas moleculares.

Un problema presuntamente intratable: dado un grafo no dirigido G ,


determinar si existe una coloracion valida de G con tres colores (3-COL).
Un programa molecular que lo resuelve:

Entrada: T (contiene todas las posibles coloraciones de G )


Para i 1 hasta p hacer
T1 +(T , ei1 (c1 )); T1 (T , ei1 (c1 ))
T2 +(T1 , ei1 (c2 )); T3 (T1 , ei1 (c2 ))
Para j 1 hasta 3 hacer
Tj0 (Tj , ei2 (cj ))
T T10 T20
T T T30
Detectar(T )

22 / 1
Computacion in vivo (I)
Gene assembly in ciliates (2003)

Naturaleza computacional del ensamblaje de genes en ciliados:


I Marco formal para razonar sobre el ensamblaje biologico.
I Desarrollo de aplicaciones software para la simulacion.
I Importantes computaciones tienen lugar en la vida de los ciliados.
I Uso de estructuras de datos en la computacion in vivo (listas enlazadas).

23 / 1
Computacion in vivo (II)

Biologa sintetica:
I Incorporar principios de la ingeniera para el diseno e implementacion in
vivo de circuitos de genes con comportamiento deseado.
I Se proponen modelos formales para evaluar circuitos de genes sinteticos.

I Membrane Computing.

24 / 1
Computacion in vivo (III)

25 / 1
Computacion in vivo (IV)

26 / 1
G R A C I A S!

27 / 1

También podría gustarte