[hackmeeting] codigo abierto y bacterias
Luther Blisset
lublisset en yahoo.com
Vie Sep 6 22:28:02 CEST 2002
Hola,
os pasteo un articulo que he escrito sobre el tema codigo abierto y
bacterias, por si es de interes.
cualquier comentario/critica sera bien recibido :)
Código abierto y bacterias
--------------------------------------
by Luther Blisset
Deberíamos dejar de pensar en las bacterias únicamente como organismos
patógenos causantes de enfermedad. Os invitamos a observarlas desde un
nuevo punto de vista, a saber, minúsculas nanomáquinas poderosamente
adaptadas para formar redes de proceso masivamente paralelo(*realmente
masivo*) y descentralizado. Entidades de red móviles, de código
genético reducido, especializadas pero al mismo tiempo adaptables a
cambios imprevistos, autoreproducibles a una velocidad frenética(1) y
tolerantes a fallos.
Lynn Margulis y otros(2) nos hablan de las comunidades bacterianas como una
red global de intercambio genético a escala planetaria que ha persistido
durante miles de millones de años. Si traducimos las teorías de Margulis a
términos informáticos, podemos caracterizar las comunidades bacterianas
como redes de código abierto en clave genética(3), más allá de la pura
analogía. De manera muy sintética, nos basamos en las siguientes premisas
básicas:
1. El intercambio genético es absolutamente descentralizado y horizontal.
2. La información genética pasa de una bacteria a otra con absoluta
promiscuidad y a una velocidad de transferencia inaudita si la comparamos
con organismos más complejos. Las bacterias están continuamente liberando,
compartiendo su código genético.
3. Estas nanomáquinas son capaces de hacer algo realmente sorprendente: se
reprograman, se recompilan a sí mismas en base a los genes recibidos. No
necesitan esperar a la siguiente generación para expresar sus genes. Ellas
inventaron la ingeniería genética.
4. Hay al igual que en la programación de Linux, "cooperación sin
mando"(4). Esta red de nanomáquinas tiene una profunda tolerancia a fallos
y la fuerza de una amplísima base de proceso distribuido y paralelo, sin
controles de mando centralizados.
5. Las bacterias se intercambian información bajo algo casi bueno como una
licencia GPL.
Según L.Margulis, "todas las cepas bacterianas puede compartir sus genes,
podríamos decir, en el más estricto sentido, que en el mundo bacteriano no
se dan las especies verdaderas. Cualquier bacteria es un organismo, una
entidad capaz de llevar la ingeniería genética a escala global o
planetaria"(2).
Si aceptamos estas características primordiales de las redes bacterianas
como propiedades suficientemente definitorias de una red de código abierto,
estaríamos ante la primera red de código abierto de nuestro planeta.
En cuanto a los desarrollos destacables que han realizado estas redes bajo
open-source, están las células de nuestro cuerpo, que tienen su origen en
las bacterias(3).
Bacterias y Vida Artificial
-------------------------------------
Aún estamos lejos de poder modelar informáticamente las redes bacterianas
en toda su complejidad, pero las últimas aproximaciones en programación
evolutiva(5) y autómatas celulares nos abren las puertas a crear modelos
informáticos que permitan esta transferencia de tecnología del mundo micro
de las bacterias al mundo macro.
A nivel de GA(algoritmos genéticos), diversos operadores genéticos se han
inspirado en los mecanismos de transferencia de información genética de las
bacterias, por ejemplo en la conjugación o la transposición(6).
Los GA en paralelo han implementado el proceso real distribuido y en
paralelo a nivel de GA(7), así como el viaje de información entre distintas
poblaciones de "organismos"(8).
Los CA(autómatas celulares), cada vez más observados como máquinas
virtuales de proceso masivamente paralelo, descentralizado y discreto,
capaces de computación universal(9), representan una vía interesante de
comprensión del mundo celular y bacteriano.
En primer lugar, tenemos la demostración intensiva y extensiva de los CA
como máquinas que computan, en la polémica enciclopedia de autómatas "A new
kind of science" de Stephen Wolfram. A nivel muy específico, esta obra nos
brinda una de las más sólidas demostraciones de computación universal,
concretamente para la regla 110 de los CA unidimensionales de Wolfram. A un
nivel más general, es interesante la aproximación de Wolfram del llamado
Principio de Equivalencia Computacional y "la naturaleza que computa",
donde todo sería computación en la naturaleza. Aunque cabe decir que el
abordaje concreto que realiza Wolfram de la aplicación de los CA al campo
de la biología, es aparentemente "naive" en ciertos aspectos(10).
En segundo lugar, tenemos la reciente aproximación a los CA como paradigmas
del mundo celular por parte de S.Capcarrere(11). S.Capcarrere se pregunta
como modelar el mundo celular, como conseguir autoreproducción no trivial a
la que ya se refirió John Von Neumann. La respuesta podría estar en CA no
uniformes, redundantes y de proceso asíncrono, teniendo en cuenta que los
CA clásicos se basan en la idea de que todas las células de la rejilla se
actualizan al mismo tiempo y siguiendo la misma regla, es decir son de
proceso síncrono.
Finalmente, la simbiosis entre estos dos paradigmas, los autómatas
celulares por un lado y la programación evolutiva por otro, ofrecen
inmejorables perspectivas de modelación del mundo bacteriano, porqué un
paradigma tiene lo que quizás le falta al otro. Un ejemplo conocido y
sencillo es la utilización de algoritmos genéticos para la búsqueda de
reglas de CA de clasificación de densidad. Es decir una regla, entre el
espacio de reglas posibles, que permita de la manera más óptima posible
saber si hay más células blancas o negras en la configuración inicial de un
CA. Para una búsqueda en un espacio tan grande(p.ej. 2 elevado a la 128
reglas posibles) que mejor que la programación evolutiva. En este sentido
nos gustaría resaltar el trabajo actual de Candida Ferreira. Según
Ferrreira ha obtenido mejores resultados en esta tarea de clasificación que
usando GP(Programación Genética), con recursos computacionales cuatro veces
inferiores a GP. La clave está en su GEP(Genetic Expression Programming)
que es un híbrido entre algoritmos genéticos y programación genética(12).
GEP destaca especialmente por su modelación de los conceptos
genotipo/fenotipo en clave de programación evolutiva, quizás un detalle
también importante en cuanto al tema que nos ocupa.
De otra parte, S.Capcarrere le presta una atención notable a esta
simbiosis(11).
Civilización bacteriana
-------------------------------------
Nuestro interés en las redes bacterianas está ahora mismo en su aplicación
al desarrollo de tejido activista en la red, y a un nivel más general,
contribuir a la creación de un "pensamiento bacteriano", iniciado a nuestro
entender por Lynn Margulis(13). Las redes bacterianas son para nosotros
una fuente de inspiración de pensamiento activista y nos gustaría en las
siguientes líneas imaginarnos como podemos describir a estas comunidades de
microorganismos y su evolución a lo largo de la historia de la vida en
nuestro planeta, en términos de una civilización, la civilización bacteriana.
Siendo cautelosos, debemos entender el siguiente análisis como una
abstracción idealizada del mundo bacteriano, intentando colocar nuestro
punto de observación en el punto de vista de las bacterias y no de los
humanos. A manera de ejercicio de deconstrucción de nuestra visión clásica
de las bacterias y en la línea conceptual iniciada en "Resistencia al
sistema: pensando como un virus"(14).
* Trabajo en equipo, operan en redes de acción radicalmente
descentralizadas y de proceso masivamente en paralelo. Se contrapone al
espíritu individualista de los virus.
* Inteligencia colectiva. La inteligencia de las bacterias emerge de esta
interacción y comunicación de proceso masivamente paralelo y distribuido,
bajo unas reglas muy especiales(15).
* Profunda promiscuidad en el intercambio de información, es una cultura
abierta donde las innovaciones fluyen rápidamente.
* Tejido de red altamente resistente y estable. Las bacterias forman redes
altamente resistentes a perturbaciones externas. Un ejemplo curioso son los
biofilms(16).
* Cultura basada en la cooperación, en la simbiosis. No es tan proclive a
entrar en la dinámica de "destroyer" más propia de los virus.
* Basada en los principios de simbiosis y especialización, que como
defiende Lynn Margulis, plantean un nuevo punto de vista de la evolución,
más allá del principio clásico del darwinismo de la competencia y la
supervivencia del más apto(17).
* Cultura constructiva, transformadora, fuertemente basada en el reciclaje.
Si hay un verbo que caracteriza la acción bacteriana, este es "fermentar".
* Evoluciona fuertemente a través de la creatividad en el campo de las
nanotecnologías, de la innovación que fluye rápidamente a través de su red
de redes y se hace extensiva a un gran número de nodos.
* Busca el automantenimiento, la "autopoyesis", que se traduce en la
búsqueda de las condiciones óptimas para el equilibrio interno. Es una
civilización que no va tanto en "contra de" sino que se toma a si misma
como referencia para la evolución.
Una vía interesante de investigación es sin duda los paralelismos entre
esta civilización bacteriana de código abierto y las comunidades de código
abierto informáticas, nuestro open-source.
::::::::: Notas
(1) La replicación bacteriana es exponencial, siguiendo la fórmula 2
elevado a N, donde N=número de generaciones. Considerando que una nueva
generación puede nacer cada veinte minutos, en pocas horas tenemos millones
de bacterias.
(2) Margulis, L. y D. Sagan. Microcosmos, Allen & Unwin, Londres, 1987.
(3) Margulis, L. y D. Sagan. "Microcosmos", Allen & Unwin, Londres, 1987.
Margulis, L. y D. Sagan. "What is Sex?", Simon & Schuster, N.Y., 1987
Margulis et al. "Effects of the Origin and Evolution of Life on Planet
Earth", MIT Press , 1992.
(4) Raymond E., "The Cathedral and the Bazaar", Revisión 1.39, 1998.
http://www.tuxedo.org/~esr/writings/cathedral-bazaar
Vidal, M., "Cooperación sin mando: una introducción al software libre", 2000.
http://www.sindominio.net/biblioweb/telematica/softlibre
(5) Entendiendo por "programación evolutiva", algoritmos genéticos,
programación genética y híbridos como GEP(Genetic Expression Programming).
(6) Borges A. y E. Costa, "Enhancing Transposition Perfomance", 1999.
http://eden.dei.uc.pt/~ernesto/EvoCo/papers/papers/1999/cec99_1.pdf
(7) Evonet, "Models for the Parallelization of Genetic Algorithms"
http://evonet.dcs.napier.ac.uk/evoweb/resources/flying_circus/tutorials/online_tutorial/04/index.html
(8) Nos referimos a "organismos" entendidos en el contexto de algoritmos
genéticos.
(9) Aclaración de términos:
"Computación universal". Equivalentes a una máquina de Turing universal.
"Discreto". Los CA constan de unidades de espacio y tiempo definidas,
discretas.
(10) De todas las revisiones realizadas sobre ANKOS("A New Kind Of
Science"), una de las críticas más interesantes al respecto es la de Ray
Kurweil. http://www.kurzweilai.net/articles/art0464.html?printable=1
En la siguiente url hay disponible una completa colección de reviews sobre
ANKOS:
http://www.math.usf.edu/~eclark/ANKOS_reviews.html
Y en esta otra un interesante dossier sobre la obra, con un marcado acento
pro-Wolfram, donde poder acceder a un resumen de algunos capítulos y
artículos diversos(en francés):
http://www.automatesintelligents.com/labo/2002/juin/doswolfram.html
(11) Capcarrere, S., "Cellular Automata and Other Cellular systems: Design
& Evolution", 2002. http://lslwww.epfl.ch/~msc/THESIS/thesis.html
(12) Ferreira, C. "Gene Expression Programming: a New Adaptive Algorithm
for Solving Problems". Complex Systems, Vol. 13, issue 2: 87-129.
http://www.gene-expression-programming.com/webpapers/GEP.pdf
Ferreira, C., "Discovery of the Boolean Functions to the Best
Density-Classification Rules Using Gene Expression Programming", EuroGP
2002, Berlin, Germany, 2002.
http://www.gene-expression-programming.com/webpapers/ferreira-EuroGP02.pdf
(13) Buena parte de las obras de L. Margulis(ver nota 3) tienen un carácter
marcadamente divulgativo, y van más allá del campo de la microbiología,
para hundir sus raíces en el terreno del pensamiento, perfilando toda una
visión del mundo a través de la óptica de las bacterias.
(14) Utilización del pensamiento vírico en clave activista:
Blisset, L., "Resistencia al Sistema: pensando como un virus", 2000.
http://www.astramat.com/alife/virus1_cas.rtf
(15) El concepto "inteligencia colectiva" aquí utilizado tiene un
parentesco con el concepto más específico de "fenómeno emergente" y propio
de la terminología a-life, aunque cabe decir que la "emergencia" y los
"fenómenos emergentes" son un misterio por definición -buscamos que emerja
algo que no está programado-. Al mismo tiempo, sabemos que existen ejemplos
de fenómenos emergentes muy claros y que nos servirán para ilustrar a que
nos referimos exactamente.
Sin duda una de los más paradigmáticos dentro de la a-life es el vuelo
coordinado de los avoides de Craig Reynolds, que ha inspirado decenas de
implementaciones:
http://www.red3d.com/cwr/boids
Otro ejemplo de fenómeno emergente son los atascos de tráfico, que ilustran
de una manera muy clara a nuestro entender, como pueden existir
comportamientos diferentes entre el nivel grupal -el atasco de tráfico- y
el nivel individual, cada uno de los agentes que forman ese grupo -los
vehículos-.
Si uno observa este peculiar automáta celular on-line que simula el tráfico
de vehículos:
http://rcswww.urz.tu-dresden.de/~helbing/RoadApplet
podrá percibirse de que mientras los vehículos se mueven hacia delante, los
atascos de tráfico que se producen, esos mismos vehículos observados
grupalmente como un bloque, como un fenómeno emergente, ¡se mueven hacia atrás!
(16) Los biofilms -"biopelículas"- representan un tipo de red bacteriana
alternativo, a fin de no recurrir siempre al ejemplo típico de la red de
redes bacteriana de alcance planetario, de la que se explica como los genes
de resistencia a un antibiótico saltan de una cepa a otra, etc...
Los biofilms son redes bacterianas muy resistentes que se forman por
ejemplo en las cubiertas de los barcos o en las tuberías, a partir de una
señal de comunicación llamado "el sentir del quorum".
http://www.erc.montana.edu/Res-Lib99-SW/default.htm
(17) La idea de "virus" es a nuestro entender, una de las bases del
pensamiento neodarwinista de Richard Dawkins, que tanta influencia
intelectual ha ejercido en el mundo científico y informático desde la
publicación de "El gen egoísta". El pensamiento "virus" se ha utilizado
para justificar las tesis de la "supervivencia del más apto" y el egoísmo
como motor de la evolución biológica. De la misma forma, el estudio de las
bacterias muestra con especial claridad la teoría de Margulis de la
simbiosis(S.E.T.), la cooperación, la especialización, como motores de la
evolución.
Consideramos que el pensamiento bacteriano no invalida la otra cara de la
moneda, esto es, el pensamiento vírico(ver nota 14) sino que podemos
contemplar a estos dos pensamientos aparentemente excluyentes, como dos
mundologías, dos realidades virtuales a las cuales podemos acceder para
obtener una visión diferente del mundo. O quizás mejor, no son mundologías.
Si nuestro cerebro es una red creadora de mundo en tiempo real, podemos ver
a estas realidades virtuales como software mental modificador/amplificador
de nuestra recreación continua del mundo, tu mundo/mi mundo/nuestro mundo.
Y por supuesto, nuestra realidad virtual preferida puede ser la bacteriana
y esta premisa no nos impedirá en ciertos aspectos concretos contraponer
pensamiento bacteriano a pensamiento vírico. Lo importante es reconocer la
no exclusión mutua entre estos dos pensamientos.
:::::::::::::::: Libre distribución :::::::::::::::
Se otorga permiso parar copiar, distribuir este documento bajo los términos
de la Licencia de Documentación libre GNU, versión 1.1. o posterior
publicada por la Free Software Foundation. Se puede consultar una copia de
la licencia en http://www.gnu.org/copyleft/fdl.html.
Más información sobre la lista de distribución HackMeeting