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!
Top Related