08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

download 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

of 103

Transcript of 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    1/103

    Computación en sistemas complejos

    Nelson Alfonso Gómez [email protected]

    Laboratorio de Modelamiento y SimulaciónEscuela de AdministraciónOctubre de 2014

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    2/103

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    3/103

    Computación en sistemas complejos 

    • Complejidad y computación

    • El modelo estándar de computación• La tesis fuerte de Church-Turing

    • ¿Por qué la tesis fuerte de Church-Turing es unsolo un mito?

    • Nuevas perspectivas acerca de la computaciónen sistemas complejos

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    4/103

    Complejidad y computación 

    • Gracias al computador fue literalmente posible

    “ver” la complejidad de los fenómenos. • Desde entonces, esta relación ha tenido diversos

    matices: – Uso de computadores para manipular datos.

     – Uso de computadores para simular sistemas complejos. – Uso de sistemas complejos para propósitos de lacomputación (metafórica y literalmente).

     – Comprensión de la complejidad en términos de

    computación.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    5/103

    Dos tipos de sistemas complejos 

    • Sistemas complejos (¡punto!).

    • Sistemas complejos adaptativos.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    6/103

    Sistemas complejos

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    7/103

    Ejemplos de sistemas de complejidad creciente

    Insectos sociales 

    Una hormiga guerrera solitaria es

    comportamentalmente muy simple[…]. Si 100 hormigas guerreras seubican sobre una superficie plana,ellas caminaran en círculos hastamorir de agotamiento. En númeroextremadamente alto, sin embargo,

    la historia es diferente.

    Nigel Franks

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    8/103

    Insectos sociales 

    Las hormigas se organizan a sí mismas para producir estructuras

    más complejas de lo que cualquier hormiga sola puede hacer

    Hormigas

    tendiendo un

    puente entredos hojas

    ◄ 

    Ejemplos de sistemas de complejidad creciente

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    9/103

    Insectos sociales 

    Ejemplos de sistemas de complejidad creciente

    La colonia como un todo puede realizar tareas muy complejas, sin un

    control central. Esto es, sin una hormiga o un grupo de ellas a cargo.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    10/103

    Red de nidos interconectados

    conformando una super-colonia

    Insectos sociales 

    ◄ 

    Ejemplos de sistemas de complejidad creciente

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    11/103

    Insectos sociales 

    Construcción de

    un puente sobre el

    agua

    Cada hormiga secreta químicos para comunicarse con sus vecinas, sin tener

    una visión de conjunto (global). Esto se conoce como un sistemadescentralizado y auto-organizado.

    ◄ 

    Ejemplos de sistemas de complejidad creciente

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    12/103

    Cerebro 

    El cerebro tiene mucho en

    común con las hormigas. Partesmás o menos homogéneas que

    interactúan.

    • Neuronas (hormigas)

    • Sinapsis (feromonas)

    • Comunicación limitada.

    ◄ 

    Ejemplos de sistemas de complejidad creciente

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    13/103

    Cerebro 

    • Se compone de unos 100

    billones de neuronas y decerca de 100 trillones de

    conexiones entre estas.

    • Las neuronas son

    extremadamente «simples»

    • No hay un control central.

    ◄ 

    Ejemplos de sistemas de complejidad creciente

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    14/103

    Cerebro 

    El conjunto de neuronas y sus

    conexiones dan lugar acomplejas dinámicas y

    funciones cerebrales:

    • Memoria.

    • Cognición

    • Conciencia.

    • Inteligencia.

    • Sentimientos.

    ◄ 

    Ejemplos de sistemas de complejidad creciente

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    15/103

    Cerebro 

    Ejemplos de sistemas complejos 

    Las neuronas se han organizado en distintas áreas funcionales.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    16/103

    Sistema inmune 

    Ejemplos de sistemas complejos 

    Órganos del sistema inmune

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    17/103

    Sistema inmune 

    Ejemplos de sistemas complejos 

    Involucra trillones de células

    que viajan por el flujosanguíneo y el sistemalinfático auto-regulando elcuerpo, protegiéndolo ycurándolo de daños oenfermedades.

    Células del sistema inmuneatacando un célulacancerígena

    ◄ 

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    18/103

    Ejemplos de sistemas complejos 

    • Las células del sistema inmune se comunican medianteseñales químicas (como las hormigas).

    • Trabajan juntas, pero sin un plan o un control central.•  Así mantienen la salud del organismo.• Lanzan ataques coordinados contra cualquier cosa que

    amenace el cuerpo.

    • La población de células puede cambiar o adaptarse deacuerdo con amenazas específicas.• El sistema inmune aprende de sus interacciones con

    patógenos.

    Sistema inmune 

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    19/103

    Internet

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    20/103Fuente: https://www.princeton.edu/~artofsci/gallery2006/view.php%3Fid=58.html

    Red de comercio internacional (2001)

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    21/103

    Red de comercio internacional al 6400%

    Fuente: https://www.princeton.edu/~artofsci/gallery2006/view.php%3Fid=58.html

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    22/103

    Complejidad en el límite del caos

    Stephen Wolfram (1959)

    (2002)

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    23/103

    Espacio de reglas de los autómatas celulares y

    regímenes dinámicos

    Complejidad en el límite del caos

    Chris Langton (1948)

    Stephen Wolfram (1959)

    Fijo Periódico Caótico

       C  o  m

      p   l  e   j  o

    λ  0.0 1.0

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    24/103

    Transiciones de fase en el límite del caos

    λ  

       C

      o  m  p   l  e   j   i   d  a   d

     

    alta

    baja

    0.0 1.0

    fijo

     periódico

    caótico

    complejo

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    25/103

    Dinámica de la información

    vs. dinámica de la energía 

    De acuerdo con Langton, los sistemas complejos evolucionan hacia un

    punto crítico en el que la dinámica de la información toma el controlsobre la dinámica de la energía.

     Dinámica de lainformación

     Dinámica de la

    energía

    Sistemas

    físicos

    Zona crítica

    Sistemas

    biológicos

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    26/103

    Dinámica de la información = procesamiento de

    información = computación 

    • Vida artificial (Langton, 1992).• Filosofía de la información y la computación (Fioridi, 2004).

    • Teoría de algoritmos super-recursivos (Burgin, 2005).

    • Sistemas complejos (Mitchell, 2009).

    • Ciencias de la computación (Dening, 2010).• Computación natural (Rozenberg, et al., 2012).

    • Computación biológica (Mitchell, 2012).

    • Info-computacionalismo (Dodig-Crnkovic, 2014).

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    27/103

    Dinámica de la información = procesamiento de

    información = computación 

    La característica más sobresaliente de los sistemascomplejos es que su comportamiento (¡y su funcionalidad!)está basado en una compleja dinámica de la información.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    28/103

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    29/103

    Dinámica de la información = procesamiento de

    información = computación 

    • Permite mantener activamente la organización delsistema (Tsuda, Zauner, Gunji & 2006).

    • Permite la interacción con el entorno (Solé & Macia, 2011).

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    30/103

    Dinámica de la información = procesamiento deinformación = computación 

    La computación, así comprendida, involucra:

    • percepción,• almacenamiento (memoria),• recuperación, discriminación,

    • transmisión (comunicación),• modificación,• transformación y• (re)ordenamiento de información.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    31/103

    Computación en sistemas complejos 

    La computación es el rasgo distintivo más relevante de lossistemas de complejidad creciente (vs. fractalidad,autoorganización….). 

    En este sentido, puede considerarse la complejidad comouna forma de computación emergente creada al bordemismo del caos (Emmeche, 1998).

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    32/103

    Computación en sistemas complejos 

    Hipótesis: En los sistemas de complejidad creciente, elgrado de complejidad es directamente proporcional a lasofisticación (expresividad, poder computacional) delprocesamiento de información soportado por dichossistemas.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    33/103

    Computación en sistemas complejos 

    • Complejidad y computación

    • El modelo estándar de computación• La tesis fuerte de Church-Turing

    • ¿Por qué la tesis fuerte de Church-Turing es unsolo un mito?

    • Nuevas perspectivas acerca de la computaciónen sistemas complejos

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    34/103

    • El modelo estándar de computación es laMáquina de Turing (MT).

    • La MT fue formulada por Alan Turing, en1936, como respuesta al programaformalista de D. Hilbert.

    El modelo estándar de computación

    Alan Turing (1912-1954)

    David Hilbert (1862-1943)

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    35/103

    • El modelo estándar de computación es laMáquina de Turing (MT).

    • La MT fue formulada por Alan Turing, en1936, como respuesta al programaformalista de D. Hilbert.

    • Puntualmente, en respuesta al problemade decisión (Entscheidungsproblem).

    • El objetivo era establecer un métodoefectivo (algorítmico) para decidir si unpostulado cualquiera de la aritmética es un

    teorema o no.

    • Turing demostró que dicho problema

    es, en general, indecidible!

    El modelo estándar de computación

    David Hilbert (1862-1943)

    Alan Turing (1912-1954)

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    36/103

    • La MT formaliza la noción de algoritmo

    (método efectivo).

    • Un algoritmo equivale a los cálculosaritméticos que puede llevar a cabo unoperario humano entrenado SIN HACER

    USO DE SU INTELIGENCIA. 

    • La MT puede resolver cualquier problemamatemático que pueda modelarsealgorítmicamente (esto es, de formamecánica y determinística).

    • La MT aplica para números computables,funciones (parcialmente) recursivas ypredicados computables.

    El modelo estándar de computación

    Alan Turing (1912-1954)

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    37/103

    La máquina de Turing

    Estado actual: inicio

    Símbolo Actual: 0

    cinta

    1 1 0 1 0 1 1 1 …

     

    cabeza lectora

    Reglas

    1… 

    2… 

    3… 

    .

    .

    .

     

    La MT transforma cadenas de entrada en cadenas de salida

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    38/103

    El mundo de los problemas algorítmicos (I)

    Basado en: Harel, D. (2000). Computer Ltda. Oxford: Oxford University Press.

    Lo no computable(indecidible)

    Lo computable(decidible)

    No puede resolverse con una

    máquina de Turing

    Ej. el problema de la detención.

    Puede resolverse con unamáquina de Turing

    Ej. sumar 2+2

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    39/103

    El mundo de los problemas algorítmicos (I)

    Basado en: Harel, D. (2000). Computer Ltda. Oxford: Oxford University Press.

    Lo no computable(indecidible)

    Lo computable(decidible)

    No puede resolverse con una

    máquina de Turing

    Ej. el problema de la detención.

    Puede resolverse con unamáquina de Turing

    Ej. sumar 2+2

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    40/103

    El mundo de los problemas algorítmicos (II)

    Basado en: Harel, D. (2000). Computer Ltda. Oxford: Oxford University Press.

    Lo no computable

    Lo altamente nocomputable

    Lo computable

    Existe inter-reducibilidad

    Ej. el problema de la detenciónvs. el problema del mosaico.

    Ejemplo del

    problema del

    mosaico

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    41/103

    El mundo de los problemas algorítmicos (II)

    Basado en: Harel, D. (2000). Computer Ltda. Oxford: Oxford University Press.

    Lo no computable

    Lo altamente nocomputable

    Lo computable

    La reducibilidad no esbidireccional

    Ej. el problema de la detención

    vs. el problema de verificación.

    Verificador de

    programas

    hipotético

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    42/103

    El mundo de los problemas algorítmicos (II)

    Basado en: Harel, D. (2000). Computer Ltda. Oxford: Oxford University Press.

    Lo no computable

    Lo altamente nocomputable

    Lo computable

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    43/103

    El mundo de los problemas algorítmicos (III)

    Basado en: Harel, D. (2000). Computer Ltda. Oxford: Oxford University Press.

    Lo no computable

    Lo altamente nocomputable

    Lo tratable

    Lo intratable No existe un algoritmo de tiempopolinomial que lo resuelva 

    Existe un algoritmo de tiempopolinomial que lo resuelve 

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    44/103

    El mundo de los problemas algorítmicos (III)

    Basado en: Harel, D. (2000). Computer Ltda. Oxford: Oxford University Press.

    Lo no computable

    Lo altamente nocomputable

    Lo tratable

    Lo intratable

    Teoría de lacomputabilidad

    Teoría de la complejidad

    computacional

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    45/103

    Modelos equivalentes a la MT

    Las funciones recursivas de Gödel y el cálculo λ de Churchresultaron ser equivalentes a la MT

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    46/103

    La tesis de Church-Turing 

    Siempre que haya un método efectivo (algoritmo) paraobtener los valores de una función matemática, esta puedeser computada por una MT o por el cálculo lambda.

     Esta tesis captura la expresividad (poder computacional) de laMT.

    Goldin & Wegner, 2008

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    47/103

    Otros modelos equivalentes a la MT 

    • Funciones de Herbrand

    • Funciones parcialmente recursivas de Kleene• Sistemas de Post

    •  Algoritmos de Markov

    • Gramáticas libres de contexto de Chomsky

    • MT no determinísticas• MT multi-cinta

    • MT multi-pista

    • … 

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    48/103

    La MT y los primeros computadores

    • La MT sirvió como como modelo teórico para laconstrucción de los primeros computadores.

    • Dichos computadores fueron, por tanto,implementaciones prácticas de la MT.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    49/103

    El currículo de ACM 

    • Por las dos razones anteriores, en 1968, ACM se valede las nociones de algoritmo y máquina de Turing paradarle estatus científico a las ciencias de la computación(computer science).

    •  Adicionalmente, recomendó que los currículos en

    ciencias de la computación debían centrarse en elestudio de los algoritmos.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    50/103

    Computación en sistemas complejos 

    • Complejidad y computación

    • El modelo estándar de computación• La tesis fuerte de Church-Turing

    • ¿Por qué la tesis fuerte de Church-Turing esfalsa?

    • Nuevas perspectivas acerca de la computaciónen sistemas complejos

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    51/103

    La tesis fuerte de Church-Turing 

    (Sipser, 2005)

    Una MT puede computar cualquiercosa que un computador puedahacer.

     La MT puede resolver todos losproblemas que son expresablescomo computaciones.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    52/103

    Tres afirmaciones que soportan la

    adopción de la tesis fuerte de Church-

    Turing 

    • Afirmación 1: Todos los problemas computablesson basados en funciones.

    Razón: Adopción de principios matemáticos para lasnociones fundamentales de la computación (lacomputabilidad se identifico con la computación defunciones y con la MT).

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    53/103

    Tres afirmaciones que soportan la

    adopción de la tesis fuerte de Church-

    Turing 

    • Afirmación 2: Todos los problemas computablespueden ser descritos por un algoritmo.

    Razón: Adopción de los algoritmos como el conceptocentral y completo de las ciencias de la computación.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    54/103

    Tres afirmaciones que soportan la

    adopción de la tesis fuerte de Church-

    Turing 

    • Afirmación 3: Los algoritmos son lo que loscomputadores hacen.

    Razón: Ampliación del concepto de algoritmo para hacerlomás práctico.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    55/103

    La máquina de Turing y la complejidad 

    «De acuerdo con la hipótesis de Church-Turing, la

    computación de cualquier tipo puede ser reducida a

    la actividad de una máquina de Turing»

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    56/103

    Modelos bio-inspirados equivalentes a la

    MT 

    • Peptide computing (Balan & Jürgensen, 2008; Balan,Krithivasan & Sivasubramanyam, 2002)

    • P-Systems (Paun, 2006)

    • Von Neumann Machines (Shiff, 2008 )

    • Extended Watson-Crick L-Systems (Sears, 2010)• DNA computing models

    • Gene assembly in ciliates

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    57/103

    Computación en sistemas complejos 

    • Complejidad y computación

    • El modelo estándar de computación• La tesis fuerte de Church-Turing

    • ¿Por qué la fuerte de Church-Turing es un solo un mito?

    • Nuevas perspectivas acerca de la computación en

    sistemas complejos

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    58/103

    Afirmación 1 (¿Qué es computación?) 

    • La teoría de la computación precede a lasciencias de la computación, que nacieron en ladécada de 1960.

    • Sus fundadores fueron matemáticos: Gödel,Keene, Chuch, Turing.

    • Todos (salvo Turing) igualaron la noción decomputación con la de computación de funciones.

    • Esto se conoce como la visión matemática delmundo: todos los problemas computables sebasan en funciones.

    Todos los problemas computables son basados en funciones.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    59/103

    Afirmación 1 (¿Qué es computación?) 

    «Este libro es una introducción a la

    teoría de la computabilidad y nocomputabilidad, usualmente referida

    como la teoría de funciones

    recursivas… la noción de MT ha sido

    central en el desarrollo.»Martin Davis

    (1958)

    Todos los problemas computables son basados en funciones.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    60/103

    Afirmación 1 (¿Qué es computación?) 

    • De la visión matemática del mundo asume que la

    computación es cerrada y terminante.

    ComputaciónEntrada(s) Salida(s)

    Todos los problemas computables son basados en funciones.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    61/103

    Afirmación 1 (¿Qué es computación?) 

    • Esta postura fue aceptada con entusiasmo por los

    líderes de las ciencias de la computación:

     – Von Neumann

     – Knuth

     – Karp – Rabin

     – Scott

    Todos los problemas computables son basados en funciones.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    62/103

    Afirmación 1 (¿Qué es computación?) 

    La MT sirvió, desde el principio, como modeloteórico para la computación basada en funciones.

    Todos los problemas computables son basados en funciones.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    63/103

    Afirmación 1 (¿Qué es computación?) 

    Corolario de la tesis de Turing (TT): Un problema es

    resoluble si existe una MT para computarlo.Esto se desprende de:

    TT (computación basada en funciones = MT)

    +Visión matemática del mundo (los problemas computables sebasan en funciones)

    La dificultad de hallar modelos más expresivos soportó la validez

    de este postulado.

    Todos los problemas computables son basados en funciones.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    64/103

    La visión interactiva del mundo 

    • La computación puede ser vista como latransformación constante (ongoing ) de entradasen salidas.

    • ¿Qué función, por ejemplo, computa un sistemaoperativo (SO)?

    • De hecho, un SO nunca termina, por tanto nogenera una salida.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    65/103

    Conduciendo de la casa al trabajo… 

    El problema: crear un vehículo capaz de conducirnos de lacasa al trabajo, donde la ubicación de la casa y el trabajoson las entradas (puede incluirse un mapa).

    • Este problema, sobre el mundo real, no se puedecomputar con funciones.

    • Sin embargo, el problema es computable se emplea unsistema que interactué con el entorno y que ajuste sucomportamiento durante  la computación.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    66/103

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    67/103

    Afirmación 2 (¿Cuál es el rol de los algoritmos?) 

    «Las ciencias de la computación están interesadas en la

    información, en el mismo sentido en que la física seinteresa en la energía… 

    Tal interés lleva a investigar modos efectivos pararepresentar la información, l oritmos efectivos paratratar la información, lenguajes efectivos para

    representar los l oritmos... y maneras efectivas pararealizar eso con costos razonables.»

    ACM recommendations, 1995

    Esto ayudó a establecer las ciencias de la computación como unadisciplina académica legítima.

    Todos los problemas computables pueden ser descritos por un algoritmo 

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    68/103

    Afirmación 2 (¿Cuál es el rol de los algoritmos?) 

    El rol central de los algoritmos en la teoría y en lasciencias de la computación llevó a pensar que cualquierproblema de cómputo es algorítmico.

    Todos los problemas computables pueden ser descritos por un algoritmo 

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    69/103

    Afirmación 3 (¿Cuál es el rol de los algoritmos?) Los algoritmos son lo que los computadores hacen 

    (Sipser, 2005)

    Por su parte, en el plano práctico lanoción de algoritmo se relajó.

    «Un algoritmo es una colecciónde instrucciones simples parallevar a cabo alguna tarea.

    Comunes en la vida cotidiana,los algoritmos algunas vecesson llamados procedimientos orecetas...»

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    70/103

    Afirmación 3 (¿Cuál es el rol de los algoritmos?) Los algoritmos son lo que los computadores hacen 

    Lo que resultado de la dicotomía es la tesis fuerte de

    Church-Turing misma:

    «Una máquina de Turing puede hacer cualquier cosa queun computador pueda hacer»

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    71/103

    Los problemas computacionales modernos 

    • Muchos de los sistemas computacionalesmodernos no son bien expresados/modelados porla MT.

    • Esto aplica para sistemas físicos, químicos,biológicos, sociales, pero también para redesconcurrentes de dispositivos computacionalescomo Internet, sistemas operativos, interacción deprotocolos… 

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    72/103

    Dos afirmaciones más que corroboran latesis fuerte de Church-Turing 

    • Afirmación 4: La MT sirve como un modelogeneral para los computadores.

    Razón: Comprensión errada de la definición de una MT.

    Los computadores modernos reflejan la sintaxis de la MT,pero no su semántica.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    73/103

    Dos afirmaciones más que corroboran latesis fuerte de Church-Turing 

    • Afirmación 5: La MT puede simular cualquiercomputador.

    Razón: Creer que la MT permite computación depropósito general.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    74/103

    Afirmación 5: La MT puede simular cualquiercomputador.

    • Tesis d e un iversal idad: cualquier clase de dispositivo

    efectivo para computar funciones puede ser simulado poruna MT.

    Sumada a la visión matemática del mundo… 

    • Corolario de universalidad: cualquier computador puedeser simulado por una MT.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    75/103

    Las cinco afirmaciones corregidas 

    • Afirmación 1: todos los problemas computables sonbasados en funciones.

    • Corrección: todos los problemas algorítmicos sonbasados en funciones.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    76/103

    Las cinco afirmaciones corregidas 

    • Afirmación 2: todos los problemas computablespueden ser descritos por un algoritmo.

    • Corrección: todos los problemas basados enfunciones pueden ser descritos por un algoritmo.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    77/103

    Las cinco afirmaciones corregidas 

    • Afirmación 3: los algoritmos son lo que loscomputadores hacen.

    • Corrección: los algoritmos son lo que los primeroscomputadores hacían.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    78/103

    Las cinco afirmaciones corregidas 

    • Afirmación 4: la MT sirve como un modelo generalpara los computadores.

    • Corrección: la MT sirve como un modelo generalpara los primeros computadores.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    79/103

    Las cinco afirmaciones corregidas 

    • Afirmación 5: la MT puede simular cualquiercomputador.

    • Corrección: la MT puede simular cualquier dispositivode cómputo algorítmico.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    80/103

    Una sexta afirmación 

    Afirmación 6: las MTs no puede computar todos losproblemas, ellas no pueden todo lo que loscomputadores reales [artificiales o naturales] puedenhacer.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    81/103

    La máquina de Turing 

    • Es algorítmica (su comportamiento es arreglado,mecánico).

    • Se basa en funciones (establece un mapeo entreentradas y salidas).

    • Determinística (responde a la noción de casa-efecto).

    • Lineal (hay proporcionalidad entre lo que entra y lo quesale).

    • Es cerrada (nada entra ni sale durante la computación).

    • Cuenta con recursos finitos (tiempo y espacio).

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    82/103

    La máquina de Turing 

    • No es un modelo de computación completo.

    • No es adecuado para buena parte de lasaplicaciones modernas de la computación.

    • Notablemente, no lo es para la computaciónnatural.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    83/103

    Computación en sistemas complejos 

    • Complejidad y computación

    • El modelo estándar de computación• La tesis fuerte de Church-Turing

    • ¿Por qué la tesis de Turing es un solo un mito?

    • Nuevas perspectivas acerca de la computación en

    sistemas complejos

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    84/103

    El panorama normal para la computación

    Basado en: Harel, D. (2000). Computer Ltda. Oxford: Oxford University Press.

    Lo no computable(indecidible)

    Lo computable(decidible)

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    85/103

    Un nuevo panorama para la computación

    Lo no computable(indecidible)

    Lo computable(decidible)

    Hypercomputación

    Computación algorítmica

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    86/103

    Teoría de la hipercomputación 

    La teoría de la hipercomputación se refiere a la posibilidadteórica y práctica de computar números y funciones que laMT es incapaz de computar.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    87/103

    Modelos de hyper-computación 

    • Máquinas de elección

    • Máquinas con oráculo• Máquinas inorganizadas

    • Máquinas de Turing aceleradas

    • Computación análoga

    • Máquinas de Zeus• MT inductivas

    • Máquinas de ensayo y error

    • … 

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    88/103

    Modelos bio-inspirados de hyper-computación 

    • Cellular automata (von Neumann, 1966)

    • Computing by carving (Calude & Paun, 2001)

    • Neural computing (Siegelmann, 2003)

    •  Accelerated P Systems (Calude & Paun, 2004)

    • Lineages of automata (Verbaan, van Leeuwen &Wiedermann, 2005)

    • Evolutionary Turing Machine (Eberbach, 2005)

    • Fuzzy membrane computing (Syropoulos, 2008)

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    89/103

    Teoría de la hipercomputación 

    La teoría de la hipercomputación se refiere a la posibilidadteórica y práctica de computar números y funciones que laMT es incapaz de computar.

    Mejor: la hipercomputación, además de explorar la

    posibilidad teórica y práctica de computar números yfunciones que la MT es incapaz de computar, estárelacionada con comportamientos y fenómenos que caenfuera del interés de la MT (es decir, en otros marcos derelevancia).

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    90/103

    Hipercomputación no clásica 

    Hipercomputación

    Clásica

     No-Clásica

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    91/103

    Hipercomputación no clásica y complejidad 

    Complexity, 2014

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    92/103

    Principios para lograr hipercomputación 

    • Interacción con el mundo.

    • Infinidad de recursos.

    • Evolución del sistema.

     Autoorganización (¿?)

    Desarrollo (¿?)

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    93/103

    Prospectos para la computación biológica 

    • Computación interactiva (Goldin & Wegner, 2008; 2005;Goldin, Smolka & Wegner, 2006).

    • Redes automodificantes (Kampis, 1991).•  Autómatas evolutivos (Burgin & Eberbach, 2005).

    • Redes neuronales análogas recurrentes (Siegelman,2013).

    • Modelo actor (Hewitt, 2010).

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    94/103

    Computación interactiva: revisión 

    • Wegner (1997, 1998) conjeturó que la computacióninteractiva (CI) es más expresiva que la computación

    algorítmica.• Goldin et al. (2004) introducen las máquinas persistentes

    de Turing para capturar la interacción secuencial y asíprubar la conjetura de Wegner.

    • Goldin y Wegner (2008) muestran que la CI no secuenciales más expresiva que la secuencial.

    • Wegner, Eberbach y Burgin (2012) demuestran que la CIes más completa (computacionalmente) que la MT y, sinembargo, no es un modelo completo.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    95/103

    Interacción y expresividad

    Computación

    algorítmica

    Computación

    interactiva

    secuencial

    Computación

    interactivadistribuída

      e  x  p  r  e  s   i  v   i   d  a   d

    +

    -

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    96/103

     

    Conclusiones 

    • Basadas en la computación interactiva

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    97/103

     

    Comprender los sistemas complejos en términos deprocesamiento de información implica, necesariamentemejores modelos que la MT.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    98/103

    Computación interactiva vs. algorítmica 

    La computación interactiva captura la noción de sistemas

    abiertos. Un rasgo fundamental de la complejidad.

    En los sistemas interactivos, por tanto, el entorno seconvierte en una parte fundamental del sistema.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    99/103

    Computación interactiva vs. algorítmica 

    El entorno es dinámico, no delimitado y cargado de

    incertidumbre (en los sistemas complejos).

    Por tanto, es no computable desde el punto de vistaalgorítmico y no controlable.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    100/103

    Computación interactiva vs. algorítmica 

    La idea de interacción introduce, además, la noción de

    historia en las ciencias de la computación.

     Análogamente a como la termodinámica del no equilibrio lohizo en la física.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    101/103

    Computación interactiva vs. algorítmica 

    Una computación en un sistema interactivo es un proceso

    de interacción continuo (ongoing ).

     Antes que la mera transformación, basada en funcionescomputables, de una entrada en una salida.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    102/103

    Computación interactiva vs. algorítmica 

    La computación interactiva se caracteriza por ser no

    terminante. Detener la computación equivale a llevar alsistema al equilibrio.

    Eso significa que el problema de la detención de Turing es

    irrelevante en este contexto.

  • 8/17/2019 08. Computación en Sistemas Complejos (Ponencia Oct, 2014)

    103/103

     

    ¡Gracias!