• Inicio
  • Eventos
  • Artículos
  • Podcasts
  • Videos
  • Tienda
  • Quienes somos
    • Quienes somos
    • Manifiesto / Prensa
    • Colaborar
  • Inicio
  • Eventos
  • Artículos
  • Podcasts
  • Videos
  • Tienda
  • Quienes somos
    • Quienes somos
    • Manifiesto / Prensa
    • Colaborar
  • Visita nuestra tienda

Sociedad de Científicos Anónimos Sociedad de Científicos Anónimos

  • Inicio
  • Eventos
  • Artículos
  • Podcasts
  • Videos
  • Tienda
  • Quienes somos
    • Quienes somos
    • Manifiesto / Prensa
    • Colaborar
Artículos

Software y hardware evolutivos

Software y hardware evolutivos

La evolución no es solamente un proceso biológico. Sus principios pueden aplicarse al desarrollo de software y hardware, a veces con resultados insospechados.

¿Qué es la evolución?

La evolución es el cambio de las características heredables a través de generaciones sucesivas de una población.

En el siglo XIX, Charles Darwin formuló, en su libro “El Origen de las Especies”, la teoría científica de la evolución a través de la selección natural, basándose en tres hechos observables:

  1. Los individuos de una especie tienen variaciones en su forma, fisiología y comportamiento.
  2. Dichas variaciones influyen en su probabilidad de sobrevivir y reproducirse.
  3. Esas variaciones pueden heredarse de generación en generación.

Al pasar el tiempo, los miembros de generaciones sucesivas de una especie van siendo reemplazados por nuevos individuos cuyos padres están mejor adaptados a sobrevivir en su entorno y, por tanto, tienen mayores posibilidades de reproducirse.

La selección natural pareciera “elegir” y preservar características que están mejor adaptadas a los roles funcionales que desempeñan, pero no ocurre así; simplemente es el resultado de una población que sobrevive y se reproduce más exitosamente que otra debido a sus características heredadas.

Al aparente propósito y cumplimiento de objetivos por parte de las estructuras y funciones de los seres vivos se le llama Teleonomía. Veamos dos interpretaciones del mismo hecho:

  • “La mariposa monarca migra de Canadá a México en invierno PARA ESCAPAR tanto del clima helado así como la escasez de flores para alimentarse”
  • “La mariposa monarca migra de Canadá a México en invierno Y POR TANTO, LOGRA ESCAPAR tanto del clima helado así como la escasez de flores para alimentarse”

La primera oración implica un propósito anticipatorio. La segunda, una característica adaptativa que heredó toda una especie y le permitió sobrevivir a un fenómeno climático cíclico. La Teleonomía es un enfoque programático y computacional sobre la adaptación derivada de una historia evolutiva, aunque también puede aplicarse a la operación de un programa y su eficiencia para cumplir un objetivo.

La selección natural a través del tiempo es la única causa conocida de adaptación, pero no es la única que desencadena la evolución; también existen las mutaciones (el cambio permanente que ocurre al azar en la información genética de una especie) y la deriva genética (el cambio en la frecuencia con la que se presenta una variante genética en una población). En el cómputo evolutivo solamente se usan las mutaciones.

¿Qué es el cómputo evolutivo?


Es un campo de la inteligencia artificial que utiliza algoritmos inspirados en un enfoque darwiniano para resolver problemas, y de ahí su nombre. Un algoritmo evolutivo es por naturaleza un método iterativo de prueba y error que busca encontrar una solución global optimizada; esto es, con valores óptimos para todas las variables que lo definen en lugar de un máximo o mínimo local. Tuvo su origen en la década de 1950 y actualmente se considera representado en cuatro áreas:

Programación evolutiva

La estructura del programa a optimizar es fija. Únicamente cambian sus variables numéricas.

Estrategias evolutivas

El problema se representa como una serie de variables sujetas a dos operadores: Mutación, que modifica aleatoriamente sus valores pero con una intensidad gobernada por auto adaptación o covarianza, y selección, que evalúa en conjunto qué tan bien lo resuelven.

Los operadores se aplican iterativamente, y cada ciclo es llamado una generación. La secuencia de generaciones se detiene cuando se satisface un criterio de terminación, como puede ser la poca diferencia en la función de selección aún transcurridas muchas generaciones sucesivas.

Algoritmos genéticos

Se trata de un proceso de búsqueda heurístico (es decir, una metodología suficientemente buena para alcanzar metas inmediatas, pero sin garantía de ser óptima o perfecta) que imita la selección natural para encontrar una solución óptima mediante el uso de herencia, mutación, selección y cruzamiento. La población de soluciones candidatas (llamada individuos, criaturas o fenotipos) es evaluada iterativamente por funciones objetivo; aquellas que obtengan mejor puntaje son seleccionadas estocásticamente y sujetas a recombinación y/o mutación de su genoma para formar la siguiente generación. El proceso se detiene tras haber alcanzado un número dado de generaciones o bien haber alcanzado un nivel satisfactorio en las funciones objetivo. Los algoritmos genéticos son fáciles de implementar, pero difíciles de comprender cuando han encontrado una solución.

Programación genética

Es una metodología que hace evolucionar programas de computadora para que realicen una tarea específica, evaluados por una función de desempeño. Cada programa es representado con una estructura de árbol; cada nodo es un operador y cada terminal un operando. Las ramas se pueden intercambiar con otro individuo de la población, o bien se hace mutar un nodo de un individuo.

¿Tiene desventajas el cómputo evolutivo?

Las cuatro áreas ya mencionadas demandan gran poder de procesamiento, particularmente al evaluar las soluciones propuestas con las funciones objetivo. Una sola evaluación exacta puede tardar horas, por lo que a veces se cambia el criterio a evaluaciones aproximadas que sean computacionalmente más eficientes.
Plantear un problema en términos de cómputo evolutivo es una tarea que crece exponencialmente con la complejidad, por lo que debe dividirse en subproblemas que tengan la representación más simple posible. Actualmente, no es posible diseñar un automóvil de forma evolutiva, ni siquiera un motor completo. Pero sí puede diseñarse un mejor pistón, un mejor cigüeñal, etcétera, aunque vendrá la dificultad adicional de integrarlas en un todo más grande, potencialmente disminuyendo su eficiencia.

Las soluciones encontradas no siempre constituyen el óptimo global. No se puede distinguir ni saber sacrificar una solución eficiente de corto plazo (un óptimo local) en favor de otra más eficiente a largo plazo. De hecho, pueden tener problemas cuando la función objetivo se reduce a una decisión de resultado apropiado o inapropiado.

¿Cómo puede hacer el software evolucionar al hardware?


El cómputo evolutivo no es un dominio exclusivo del software. A manera de ejemplo, citaremos uno de los trabajos pioneros en el campo y posteriormente seguiremos con otros más recientes.

En 1997, el Dr. Adrian Thompson, de la Universidad de Sussex hizo evolucionar un circuito electrónico que pudiera distinguir entre dos tonos de audio de mil y diez mil KHz, respectivamente.

Para ello, empleó un chip programable llamado FPGA (Field Programmable Gate Array: Arreglo de compuertas programables en campo) que consiste en un arreglo de compuertas lógicas cuyas interconexiones internas no son estáticas, sino pueden ser “programadas” de forma externa. Aunque los FPGAs no son tan rápidos como sus contrapartes diseñadas exprofeso (los llamados ASICs, Circuitos Integrados de Aplicación Específica), ofrecen una enorme plasticidad para reconfigurarse rápidamente con tan sólo cargar un conjunto diferente de instrucciones de conexión. Típicamente, se usan para probar diseños de chips, que una vez finalizados, serán convertidos en una implementación inmutable como ASICs.

El Dr. Thompson puso dos restricciones importantes para el circuito evolucionado: se dispondría únicamente de 100 compuertas para implementarlo, y no se usaría una señal de reloj para sincronizarlo como ocurre en un diseño tradicional.

Se generó una colección inicial de 50 grupos de unos y ceros distribuídos al azar, que fueron cargados uno por uno al FPGA y evaluados por una computadora para saber qué tan bien estaban cumpliendo su objetivo. Debido a que esta población era completamente aleatoria, no sorprendió mucho descubrir que incluso los mejores candidatos eran marginalmente terribles en cumplir la tarea encomendada. Los peores individuos fueron eliminados, y los restantes intercambiaron entre sí fragmentos de unos y ceros, introduciendo ocasionalmente una mutación que cambiaba un uno o cero de forma aleatoria.

Tras doscientas generaciones, el FPGA ya sabía reproducir la señal de entrada. Después de seiscientas, desarrolló sensibilidad a un tono de mil Hertz. Al llegar a la generación mil cuatrocientos, podía identificar tonos en más de 50% de los intentos. Cuatro mil generaciones después, ya no cometía errores. Modificando la especificación original del problema, el FPGA incluso pudo distinguir entre dos comandos de voz tras dejarlo evolucionar su programa algunos cientos de generaciones más.

Tras haber examinado el diseño resultante, ninguno de los investigadores participantes sabía exactamente cómo estaba funcionando. El programa finalista usaba únicamente treinta y siete de las cien compuertas disponibles; la mayoría estaban conectadas como si fueran lazos de retroalimentación. Cinco de ellas incluso no tenían conexión funcional con el resto del circuito; pero si se deshabilitaban, el chip dejaba de trabajar. Y lo más extraño de todo: El programa únicamente funcionaba de forma confiable con ESE chip en particular y no con otro, aunque fuera de la misma familia.

Es muy posible que el diseño evolucionado estuviera aprovechando los campos magnéticos creados por el flujo de electrones dentro de ese FPGA así como las características analógicas intrínsecas en los transistores que lo componen, más que sus propiedades originales como switches digitales. Una solución así difícilmente hubiera sido considerada por un ingeniero electrónico debido, entre otras cosas, al tiempo que le tomaría implementarla.


Otro ejemplo lo tenemos en los trabajos de diseño de antenas evolucionadas. La NASA creó un programa tomaba un diseño simple de antena al que luego iba agregando y modificando elementos de forma semialeatoria. El resultado era evaluado contra ciertos criterios de desempeño (por ejemplo, satisfacer un patrón inusual de radiación, polarización circular de la señal o gran impedancia del ancho de banda); los peores candidatos se eliminaban para dejar una pequeña población de los mejores y repetir el proceso varias veces. La población final a menudo funcionaba mucho mejor que los mejores diseños hechos a mano, y presentaba formas complejas asimétricas y aparentemente caprichosas.

En el año 2006, estos diseños fueron usados dentro de la misión ST5, que consistía en tres satélites que medirían la magnetósfera de nuestro planeta. Cada satélite poseía dos antenas para comunicarse con estaciones terrestres y de haber usado un diseño tradicional, se habrían necesitado dos elementos helicoidales de gran tamaño.

¿Qué aplicaciones podría tener el hardware evolutivo?

Aparte de encontrar una solución extremadamente eficiente a un problema bien definido, sería posible desarrollar sistemas que interactúan con el mundo real y puedan adaptarse a situaciones cambiantes con gran resiliencia. Por ejemplo, la circuitería de control en un satélite o sonda espacial podría reconectarse a sí misma evitando partes conforme se van dañando por la intensa radiación, y aun así operar satisfactoriamente.

Si este tema te gusta, puedes seguir leyendo al respecto en Sociedad de Científicos Anónimos:

Robots que juegan a la biología

Robots que escriben sobre computación

Robots que juegan a la guerra

Para saber más

Computación evolutiva
Handbook of Evolutionary Computation, Thomas Back, David B. Fogel, Zbigniew Michalewicz, 1997.
Algoritmos de optimización evolutivaDan Simon, Professor. Universidad estatal de Cleveland
El papel de la Teleonomía en la Evolución.Grace de Laguna, Filosofía de la ciencia
Errores de muestreo y evolución: Universidad de Berkeley
Programación Genética, Grupo privado de investigación
FPGAs Arquitectura
Historia de los FPGAs (la página original ya no está disponible)
Electrónica evolutiva, Universidad de Sussex (la página original ya no está disponible)
Video: Síntesis evolutiva de antenas en la NASA

Escrito por Julio Rodriguez - 7 julio, 2015
Tags | evolución, hardware, software

También podría gustarte

Científicos Anónimos #50: HONGOS 1

12 abril, 2021

Ecdisis: la muda del exterior completo

23 marzo, 2022

El creacionismo en México

6 septiembre, 2021

Sin comentarios

¡Inicia la conversación!
Cancelar respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Siguiente publicación
Publicación anterior

Síguenos en Facebook

Síguenos en Instagram

cientificosanonimos

Este fin de semana, las Fieras llegan al noreste d Este fin de semana, las Fieras llegan al noreste del país, nos vemos en la @filuabcmxl
Si andas en el extremo noroeste del país no te pi Si andas en el extremo noroeste del país no te pierdas la @filuabcmxl gran programa que arranca hoy...
Atención OAXACA: les invitamos a sumergirnos en l Atención OAXACA: les invitamos a sumergirnos en la nada modesta gama de estrategias de apareamiento y conductas sexuales puestas en práctica por la fauna. 

Echemos un vistazo a la enorme diversidad de modos y acercamientos, producidos por ese arte que es la evolución, al fenomenal origen de la reproducción sexual en los seres vivos.

Info en www.cientificosanonimos.org
#scaeventos #Scaoaxaca
Voltea a tu alrededor ¿qué ves? ¿todo es igual? Voltea a tu alrededor ¿qué ves? ¿todo es igual? seguramente ya has notado que lo que nos rodea (la materia) lo encontramos en diferentes presentaciones, por ejemplo, imagínate que estás en una alberca, el agua de la alberca es un líquido, pero las paredes de la alberca son un sólido y el aire que respiramos es un gas, estás son las tres formas más comunes en que encontramos la materia a nuestro alrededor, pero ¿te puedes imaginar un líquido que también es sólido? ¡Sí! En nuestro taller prepararemos una masa muy peculiar que parece un líquido, pero cuando lo aplastas muy fuerte ¡se convierte en sólido! ¿Te gustaría conocer este tipo de materiales? 

Pues ven a nuestro taller, porque aquí hablaremos acerca de los distintos estados de la materia y las propiedades que tienen los líquidos, además, crearemos un fluido no newtoniano (ese que parece líquido, pero también sólido) y sabremos por qué este material se comporta de forma tan extraña.

Será el sábado 25 de febrero a las 10 hrs. en @macocafebistrot (Calle Vicente Guerrero Nte. 4, Centro, 76000 Santiago de Querétaro, Qro.).

Inicia la conversación María Fernanda Félix Huego: 
Fernanda es estudiante de la Licenciatura en Biología de la Universidad Autónoma de Querétaro. Es apasionada por la divulgación científica, con interés por ejercer como docente enfocada a la investigación, le encanta crear actividades y talleres dirigidas a niños y jóvenes, siempre brindando un enfoque creativo a sus proyectos. Creadora de contenido en redes sociales, amante de la naturaleza y las actividades al exterior. Becaria en el Museo de Ciencias Ximhai desde el 2019, donde imparte talleres, pláticas y recorridos en temas de divulgación científica.

Diseño: Fotógrafo y artista Asdrúbal Letechipía @asdrubaal_
Ahora sí, todo lo que necesitas saber para no que Ahora sí, todo lo que necesitas saber para no querer perderte nuestro especial de primavera en colaboración con @revista_unam 

Info en www.cientificosanonimos.org (enlace en perfil)
Y en FB

Para quienes no puedan llegar, y porque la ocasión lo amerita, este sí será transmitido en vivo por nuestro canal de YouTube
Celebramos el arribo primaveral con esta pequeña Celebramos el arribo primaveral con esta pequeña maravilla botánica, indispensable para combatir el animal centrismo generalizado. Y es que realmente desde el punto de vista de los árboles los humanos estamos solo aquí de paso… con decir existen árboles aún con vida en Tasmania que vieron el Pleistoceno (42 mil años tiene el ejemplar en cuestión), es decir que ha contemplado desde su lugar apacible en el bosque toda la saga de la humanidad desde la diáspora fuera del continente africano hasta las tonterías de Elon Musk… meciendo su follaje, devorando atmósfera y sol 🌳
Voltea a tu alrededor ¿qué ves? ¿todo es igual? Voltea a tu alrededor ¿qué ves? ¿todo es igual? seguramente ya has notado que lo que nos rodea (la materia) lo encontramos en diferentes presentaciones, por ejemplo, imagínate que estás en una alberca, el agua de la alberca es un líquido, pero las paredes de la alberca son un sólido y el aire que respiramos es un gas, estás son las tres formas más comunes en que encontramos la materia a nuestro alrededor, pero ¿te puedes imaginar un líquido que también es sólido? ¡Sí! En nuestro taller prepararemos una masa muy peculiar que parece un líquido, pero cuando lo aplastas muy fuerte ¡se convierte en sólido! ¿Te gustaría conocer este tipo de materiales? 

Pues ven a nuestro taller, porque aquí hablaremos acerca de los distintos estados de la materia y las propiedades que tienen los líquidos, además, crearemos un fluido no newtoniano (ese que parece líquido, pero también sólido) y sabremos por qué este material se comporta de forma tan extraña.

Será el sábado 25 de febrero a las 10 hrs. en Maco Café (Calle Vicente Guerrero Nte. 4, Centro, 76000 Santiago de Querétaro, Qro.).

Inicia la conversación María Fernanda Félix Huego: 
Fernanda es estudiante de la Licenciatura en Biología de la Universidad Autónoma de Querétaro. Es apasionada por la divulgación científica, con interés por ejercer como docente enfocada a la investigación, le encanta crear actividades y talleres dirigidas a niños y jóvenes, siempre brindando un enfoque creativo a sus proyectos. Creadora de contenido en redes sociales, amante de la naturaleza y las actividades al exterior. Becaria en el Museo de Ciencias Ximhai desde el 2019, donde imparte talleres, pláticas y recorridos en temas de divulgación científica.

Diseño: Fotógrafo y artista Asdrúbal Letechipía @asdrubaal_
Mérida, nos vemos hoy!!! @lafiley Mérida, nos vemos hoy!!! @lafiley
#SCAGuanajuato | Descubre al virtuoso hongo que ac #SCAGuanajuato | Descubre al virtuoso hongo que acompaña en el proceso a la bebida alcohólica destilada más importante en México: ¡El Tequila! 🥃🍄

Descubre cómo las levaduras, especialmente Saccharomyces cerevisiae, juegan un papel clave en la fermentación del jugo del Agave, y cómo esto se traduce en los aromas y sabores únicos que caracterizan al Tequila. ¡Ven y aprende cómo apreciar y disfrutar del Tequila como nunca antes! 🥳

La cita es este jueves 23 de marzo a las 7:00 p.m. en el Bar Sequía, en Zona Centro de GUanajuato Capital. 🤓

Confirma tu asistencia al 📲 462 191 1158
Ver más Seguir

Etiquetas

Aire Libre animales animales en peligro animales raros antropoceno biodiversidad Biodiversidad mexicana biología ciencia ciencia + música Ciencia en el bar ciencia en la radio ciencia y arte Ciencia y letras comunicación científica comunicación de la ciencia conservación Cultura Científica divulgación científica divulgación de la ciencia divulgación sonora dosis de arte drogas ecología ensayo ensayo literario Eventos SCA evolución Extinción Filosofía de la ciencia hongos insectos literatura literatura científica mar medicina naturaleza pandemia podcast psicología radio salud salud mental Salud pública zoología

Contacto

    Presskit

    Descarga nuestro presskit para saber más sobre nuestra plataforma interactiva para la comunicación de la ciencia.

    Contenidos

    Eventos

    Podcasts

    Artículos

    Videos

    Tienda

    Sobre SCA

    Facebook

    Instagram

    Twitter

    ®Sociedad de Científicos Anónimos, 2018