211service.com
Selección antinatural
Para convertirse en un diseñador profesional de antenas, puede seguir uno de estos dos caminos: puede inscribirse en cursos universitarios y de posgrado sobre electromagnetismo, sumergirse en el estudio empírico de las formas de antenas y convertirse en aprendiz de un técnico establecido que desee impartir el secretos celosamente guardados de la disciplina.
O puede hacer lo que hizo Jason Lohn: dejar que la evolución haga el trabajo.
Esta historia fue parte de nuestro número de febrero de 2005
- Ver el resto del número
- Suscribir
Los físicos saben mucho sobre las ecuaciones de Maxwell y los otros principios que rigen las comunicaciones inalámbricas. Pero el diseño de antenas sigue siendo un arte oscuro, dice Lohn, un científico informático que trabaja en el Centro de Investigación Ames de la NASA en las afueras de Mountain View, CA. El campo es tan ardiente. Todo tu aprendizaje es a través de prueba y error, la escuela de los golpes duros.
Entonces, ¿por qué no automatizar el ensayo y error? El diseño de antenas, cree Lohn, es uno de los muchos problemas de ingeniería que podrían resolverse mejor mediante algoritmos evolutivos, una clase emergente de software que produce muchos diseños diferentes, rechazando los menos adecuados para seleccionar el más funcional. Los diseños resultantes a menudo parecen un poco inhumanos, poco elegantes y extraños.
Los algoritmos evolutivos, también conocidos como algoritmos genéticos o GA, se inspiran en la evolución biológica, que puede convertir a un reptil que se arrastra en un pájaro en vuelo sin ningún tipo de plano prospectivo. En la reproducción sexual, la mezcla de los genes de cada padre, combinada con una mutación genética aleatoria, crea organismos con nuevas características, y los organismos menos aptos tienden a no transmitir sus genes a las generaciones sucesivas. Los algoritmos evolutivos funcionan de la misma manera, pero dentro de una computadora. Cuando Lohn crea una nueva antena, por ejemplo, comienza con una población de diseños generados aleatoriamente y califica su desempeño relativo. Los diseños que se acercan a los objetivos preestablecidos obtienen el derecho a entremezclar sus propiedades con las de otros candidatos exitosos. Los diseños que decepcionan siguen el camino del archaeopteryx: el olvido.
La reproducción de antenas lleva tiempo, por supuesto. La mayoría de los diseños son francamente horribles y se necesitan una gran cantidad de ciclos informáticos para encontrar un rendimiento decente. Aún así, cuando tienes una computadora que puede generar y probar 1,000 generaciones por hora, surgen ideas interesantes *. Lohn, un PhD que no ha tomado un curso sobre electromagnetismo desde sus años de licenciatura, espera que al menos uno de los diseños de antena de su equipo vaya al espacio este año como parte de la misión Space Technology 5 de la NASA, que probará un trío de satélites. Su antena favorita diseñada por computadora: un artilugio en forma de sacacorchos lo suficientemente pequeño como para caber en una copa de vino, pero capaz de enviar una onda de radio de haz ancho desde el espacio a la Tierra. No se parece a nada que cualquier ingeniero de radio en su sano juicio construiría por su cuenta.
Los algoritmos evolutivos son una gran herramienta para explorar los rincones oscuros del espacio de diseño, dice Lohn. Muestra [sus diseños] a personas con 25 años de experiencia en la industria y ellos dicen: 'Vaya, ¿eso realmente funciona?' La respuesta un poco espeluznante es que sí, realmente lo hacen, como Lohn estableció después de meses de pruebas. Si tenemos suerte, podríamos tener hasta seis diseños de antenas en el espacio en 2005, dice Lohn.
No todos los problemas sucumbirán al enfoque evolutivo. Pero aquellos que compartirán una característica común: todos se ubican más allá de lo que el matemático John von Neumann denominó la barrera de la complejidad, la línea divisoria entre los problemas que pueden resolverse utilizando métodos tradicionales reduccionistas y aquellos que requieren una solución más intuitiva y sencilla. enfoque-y-ver-qué-se-pega. Hasta hace poco, cruzar esta barrera era una propuesta costosa. Pero las computadoras de hoy son lo suficientemente rápidas para examinar millones de diseños poco convencionales con la esperanza de encontrar uno que funcione. Combine eso con la creciente habilidad de los diseñadores modernos para aplicar algoritmos evolutivos, dice David Goldberg, director del Laboratorio de Algoritmos Genéticos de Illinois en la Universidad de Illinois en Urbana-Champaign, y obtendrá lo que los ingenieros llaman con cariño escalabilidad: la capacidad de abordar tanto la miniatura como la escalabilidad. enormes desafíos de diseño.
Así como la máquina de vapor creó un apalancamiento mecánico para realizar tareas más grandes, los algoritmos genéticos están comenzando a dar a los individuos una especie de apalancamiento intelectual que remodelará el trabajo, dice Goldberg. Al automatizar parte del trabajo pesado del pensamiento, nos liberamos para operar a un nivel más alto y creativo. Esa libertad tiene un precio, por supuesto. Requiere que los ingenieros reconozcan la imposibilidad de escudriñar todos y cada uno de los rincones oscuros y depositen su confianza en otra capa más de asistencia mecánica. Pero cada vez más de ellos están dando ese salto.
De juguetes a herramientas
Reproducir en microsegundos en una computadora un proceso que lleva millones de años en la naturaleza es una idea que es anterior a la capacidad de realizarlo. John H. Holland, un profesor de ciencias de la computación de 76 años en la Universidad de Michigan, dice que se le ocurrió la idea por primera vez mientras examinaba las pilas abiertas de la biblioteca de matemáticas de Michigan a principios de la década de 1950.
De vez en cuando, tomaba un libro que parecía interesante y lo acababa de leer, dice. Ese hábito lo llevó a La teoría genética de la selección natural, un libro de 1930 del matemático británico convertido en biólogo Ronald Fisher. Inspirado por los experimentos con plantas de guisantes del monje austriaco Gregor Mendel del siglo XIX, Fisher elaboró descripciones matemáticas de la selección natural a nivel de genes individuales. Si bien los investigadores no descifraron la bioquímica detrás de ese proceso hasta la década de 1950, el trabajo de Fisher coincidía con lo que los granjeros y pastores habían sabido durante siglos: la reproducción sexual asegura variación y novedad.
De ahí es realmente de donde vinieron los algoritmos genéticos, dice Holland. Empecé a preguntarme si se podrían criar programas de la misma manera que la gente, por ejemplo, cría buenos caballos y buen maíz.
Holland escribió su primer artículo sobre algoritmos adaptativos en 1962. Pero no fue hasta finales de la década de 1970 que él y sus estudiantes graduados acumularon los recursos computacionales para poner la idea en juego. Holland le da crédito a uno de sus estudiantes, Edward Codd, por haber convencido a su antiguo empleador, IBM, de venderle al grupo de investigación de Michigan una computadora central de bajo costo. (Codd ganaría el premio AM Turing, el equivalente en ciencias de la computación al premio Nobel, por diseñar las primeras bases de datos relacionales). Sin embargo, incluso entonces, los miserables 32 kilobytes de memoria de la computadora limitaron el tamaño y el alcance de los datos iniciales de los investigadores. experimentos.
Uno de los primeros científicos en poner a prueba los algoritmos evolutivos fue Goldberg, quien trabajó con Holanda como estudiante de doctorado a principios de la década de 1980. Goldberg resucitó un problema que había enfrentado durante sus días en la industria del gas natural: minimizar el consumo de energía de un gasoducto de larga distancia, dadas las variaciones en la demanda regional. Sus algoritmos evolutivos produjeron soluciones tan eficientes como las producidas por el software de mecánica de fluidos existente utilizado por los diseñadores de tuberías. Pero a medida que Goldberg alimentaba sus algoritmos con problemas más grandes y complicados, comenzaron a tropezar: se atascaron explorando callejones sin salida evolutivos o escupiendo soluciones desesperadamente salvajes. Comprendí los problemas que estaba resolviendo mejor que las herramientas que estaba usando para resolverlos, y eso me molestó, dice Goldberg.
Goldberg centró su disertación y luego otra media década de trabajo en hacer que los algoritmos genéticos fueran más predecibles. Descubrió que ajustar los parámetros de cada nuevo algoritmo (el tamaño de la población inicial o la tasa de mutación, por ejemplo) suavizaba algunas arrugas. Pero en su mayor parte, su investigación lo dejó con una comprensión aleccionadora: los algoritmos evolutivos eran a menudo más complejos que los problemas que intentaban resolver. Finalmente, Goldberg aprendió a mantenerse alejado de lo que él llama problemas de la aguja en el pajar, que exigen una única y mejor solución; estos tendían a hacer que los algoritmos evolutivos se salieran de control. En cambio, apuntó a problemas más amigables que tuvieran una variedad de soluciones viables, dependiendo de cómo los abordara. Si hay docenas de agujas esparcidas de tal manera que el [algoritmo evolutivo] puede dividir el pajar en pajar más pequeños, al menos te garantizas una oportunidad para un mejor resultado, dice Goldberg.
Goldberg documentó su trabajo en un libro de texto de 1989, un volumen que inspiraría a otros ingenieros expertos en informática a comenzar sus propios retoques. A mediados de la década de 1990, los ingenieros del Centro de Investigación General Electric en Niskayuna, Nueva York, habían incorporado métodos evolutivos en una herramienta de diseño interna llamada EnGENEous, que se utilizó para encontrar la forma más eficiente para las aspas del ventilador en los motores a reacción GE90 utilizados. en el avión 777 de Boeing. EnGENEous permitió al equipo GE90 eliminar una etapa del compresor del motor, lo que significó una reducción en el peso del motor y los costos de fabricación sin sacrificar el rendimiento aerodinámico. Después de este éxito inicial, las compuertas se abrieron para usar este tipo de herramientas en muchas aplicaciones diferentes en todos los negocios de GE, dice Pete Finnigan, gerente de laboratorio para aplicaciones avanzadas de diseño mecánico en el centro de investigación. Los ingenieros de Rolls Royce, Honda y Pratt y Whitney han seguido su ejemplo, incorporando algoritmos genéticos en sus propios procesos de diseño.
Marcar fraude
Pero mientras que las computadoras se han vuelto lo suficientemente poderosas como para aplicar principios evolutivos a todo tipo de problemas, los montones de heno se han multiplicado a un ritmo aún más dramático. Considere el fraude al consumidor. Las compañías de tarjetas de crédito estiman que $ .07 por $ 100 cargados a las tarjetas de crédito se pierden por fraude, lo que le cuesta a la industria más de $ 1 mil millones por año solo en los Estados Unidos. Sin embargo, escribir software tradicional para identificar cargos fraudulentos sigue siendo tremendamente difícil. ¿Por qué? Porque las personas que cometen el fraude son expertas en modificar su comportamiento para evadir la detección. Simplemente no es posible escribir un programa que anticipe todas las posibles estafas.
Pero los algoritmos evolutivos pueden al menos hacer que la detección de fraudes computarizada tenga más probabilidades de éxito, argumentan los investigadores de inteligencia artificial que fundaron Searchspace, con sede en la ciudad de Nueva York. La compañía vende una variedad de programas que dividen el pajar al buscar actividad aberrante dentro de porciones definidas con precisión de datos de cuentas existentes, dice Michael Recce, científico jefe de Searchspace. El software utiliza herramientas denominadas centinelas, programadas con reglas de detección de fraude. Múltiples cargos a la misma tarjeta de débito en una sola tienda en un solo día, por ejemplo, pueden generar automáticamente una bandera roja.
Pero la persona que acumula estas compras puede ser simplemente un comprador navideño olvidadizo, no un ladrón. Entonces, los centinelas sopesan una variedad de factores, como la actividad previa de una persona en esa tienda, para evitar falsos positivos y marcar solo las cuentas que los expertos humanos estarían de acuerdo en que son sospechosas. Recce dice: Puede establecer los criterios de aptitud de una manera que ofrezca tanto una mínima pérdida por fraude como una mínima pérdida por buenos clientes.
Searchspace aloja de forma rutinaria programas piloto, esencialmente programas de software que comparan sus algoritmos con los sistemas de detección de fraude existentes de los clientes potenciales. Los participantes traen muestras ciegas de datos históricos para ver si los centinelas de Searchspace colocan banderas rojas en todos los lugares correctos. Invariablemente, dice Recce, los centinelas aparecen no solo en las cuentas prefijadas, sino también en algunos sinvergüenzas más acechando en el ruido de fondo. No creo que haya habido una de esas presentaciones en las que no hemos tenido que pausar las cosas por un momento para que un ejecutivo pueda salir a hacer una llamada telefónica rápida, dice Recce, sonriendo.
Patentemente original
Ahora que los algoritmos evolutivos están burlando a los humanos, algunos investigadores quieren subir el listón aún más. En la Universidad de Stanford, por ejemplo, el profesor de informática biomédica John Koza, otro protegido de Holanda, está explorando un campo estrechamente relacionado llamado programación genética. Los algoritmos evolutivos tienen conjuntos fijos de instrucciones y simplemente varían los datos que manipulan. Los programas genéticos se parecen más a organismos sexuales, capaces de mejorar con el tiempo mezclando fragmentos de código entre sí. Los descubrimientos hechos hasta ahora por los programas de Koza van desde nuevos métodos computarizados para clasificar proteínas hasta diseños de vanguardia para circuitos electrónicos.
Los diseños de los circuitos surgieron del trabajo de Koza con Matthew Streeter de la Carnegie Mellon University y Martin Keane de Econometrics, una consultora de estrategia de marketing con sede en Chicago. Juntos, los investigadores construyeron un programa que dibuja diagramas de circuitos esquemáticos. Su primer desafío fue ver si el enfoque genético podía derivar de diseños de circuitos desde cero ya patentados por ingenieros anteriores. El programa tuvo pocos problemas para generar diseños simples que coincidieran con los patentados en las décadas de 1930 y 1940. De hecho, Koza comenzó a referirse al programa como una máquina de invención y creó una página web que rastrea los últimos descubrimientos del software competitivo humano.
Sin embargo, cuando el grupo de Koza probó la cuarta o quinta versión de su programa, algo aún más sorprendente comenzó a suceder: el programa eliminó los diseños de circuitos inéditos en la literatura de patentes. Dos de estos diseños, un par de circuitos de controlador que regulan la retroalimentación, eran tan originales que Koza y sus colegas los han patentado.
Tan orgulloso como está de su software, Koza no está dispuesto a asignar la responsabilidad de los nuevos diseños al programa en sí. Las patentes dan crédito a Keane, Koza y Streeter, en ese orden. Pero hay algunos nuevos acertijos pseudofilosóficos acechando aquí: si algo se inventa sin ningún humano cerca, ¿es realmente una invención? Quien es el inventor Y si la invención realmente funciona, ¿importa si no entendemos cómo?
Sobre ese último punto, dice Lohn de la NASA, hay dos escuelas de pensamiento. Uno dice que solo necesito algo que haga X, Y y Z, y si la evolución me da X, Y y Z, eso es todo lo que me importa. La otra escuela quiere saber qué hay ahí y cómo funciona. Realmente no podemos ayudar a esas personas, porque con frecuencia vemos diseños evolucionados que son completamente ininteligibles.
Todavía no es necesario que los humanos se sientan celosos del software competitivo humano, dice Koza, ya que el objetivo final es simplemente entregar el trabajo más duro de la ingeniería a las computadoras. Él prevé un momento en el futuro cercano, tal vez dentro de 20 años, cuando los algoritmos genéticos que se ejecutan en computadoras ultrarrápidas se harán cargo de las tareas de diseño básicas en campos tan diversos como la electrónica y la óptica. Pero incluso entonces, cree Koza, la inteligencia humana y mecánica funcionará en asociación. Nunca llegamos al lugar donde las computadoras han reemplazado a las personas, dice Koza. En áreas particularmente estrechas, sí, pero históricamente, la gente ha pasado a trabajar en problemas más difíciles. Creo que seguirá siendo así.
Sam Williams es un escritor de tecnología independiente que vive en Staten Island, NY. Es un colaborador frecuente de Salon.
