40 años de análisis de grandes cantidades de datos en física de alta energía: una entrevista con Rene Bran

Durante más de 40 años de su carrera en el CERN (Laboratorio Internacional de Investigación Nuclear ubicado en Ginebra), Rene Brun ha desarrollado una serie de paquetes de software que se han utilizado ampliamente en Física de Alta Energía. Por esta contribución fundamental, recientemente recibió un premio especial de la División de Física de Partículas de Alta Física de la Sociedad Europea de Física (EPS). Hablamos con él sobre los eventos clave de esta historia.

imagen

Es difícil imaginar que la misma persona pueda crear tantos de los paquetes de software más importantes y ampliamente utilizados desarrollados en el CERN y en el campo de la Física de Alta Energía: HBOOK, PAW, ROOT y GEANT. Esta persona apasionada y con visión de futuro es Rene Bran, ahora miembro honorario del CERN , quien recientemente recibió el premio especial del Departamento de Física de Partículas de Alta Energía EPS (Sociedad de Física Europea) " por su contribución sobresaliente y original a las herramientas de software para el procesamiento de datos, modelado y análisis de detectores, que ayudó a crear experimentos en partículas y física de alta energía durante décadas ". Más de 40 años de su carrera en el CERN.Ha trabajado con varios científicos brillantes, y no podemos olvidar que la realización de tales esfuerzos es siempre el resultado de esfuerzos conjuntos. Sin embargo, René tuvo un mérito indudable en generar nuevas ideas, proponer proyectos y trabajar diligentemente y con entusiasmo para convertirlas en realidad.

Una de sus creaciones, ROOT , es una herramienta de análisis de datos ampliamente utilizada en experimentos en física nuclear y de alta energía, en el CERN y en otros laboratorios. RAÍZya fue más allá de la física y ahora se usa en otros campos científicos e incluso en finanzas. GEANT es un paquete de software extremadamente exitoso desarrollado por Rene Bran, que le permite simular experimentos físicos e interacciones de partículas en detectores. Su última versión, GEANT4 , es actualmente la principal herramienta de modelado de detectores.

Pero, antes del advenimiento de ROOT y GEANT4 , que son bien conocidos incluso entre los físicos más jóvenes, se les ofrecieron muchos otros proyectos y herramientas de software. Esta es una historia emocionante que Rene contó en un seminario organizado en el CERN por el Departamento de Física Experimental en 2017.

Todo comenzó en 1973 cuando fue contratado por el departamento de procesamiento de datos del CERN para trabajar con Carlo Rubbia (Premio Nobel, uno de los directores del CERN) en el experimento R602 sobre ISR (el primer colisionador de hadrones del mundo). Su responsabilidad era ayudar a desarrollar un procesador de hardware especial para la reconstrucción en línea de modelos de colisión. Pero como este desarrollo fue lento y no tomó mucho tiempo, se le pidió a Rene que escribiera un software para reconstruir eventos en cámaras proporcionales de varios cables. "En ese momento, odiaba el software ", admite René, sonriendo. “Escribí software durante mi tesis doctoral, estudié en Clermont-Ferrand y trabajé enCERN el fin de semana, y realmente no me gustó. Me uní al grupo de Carlo Rubbia con la "promesa" de que trabajaría en hardware, pero muy pronto me convertí nuevamente en un "tipo de software" ... "

Pronto Rene se dio cuenta en software (programación en Fortran4) que no podían implementar con usando hardware, y además, desarrolló un paquete de histograma llamado HBOOK. Esto permitió realizar un análisis de datos muy simple, crear histogramas, completarlos y enviar los resultados a una impresora lineal. También escribió un programa llamado HPLOT, que se especializó en dibujar histogramas generados por HBOOK.

No había dispositivos gráficos en ese momento, por lo que la única forma de visualizar los histogramas era imprimirlos en una impresora lineal, y los programas se escribían en forma de tarjetas perforadas.

Rene recuerda con cariño el tiempo dedicado a las tarjetas perforadas, no en el procedimiento en sí, que fue lento y agotador, sino en las largas reuniones que se realizaron en la sala donde se encontraban los punzones e impresoras del Departamento de procesamiento de datos, así como en el café cercano ( en ese momento ella trabajaba las 24 horas con la venta de alcohol ). Durante estas largas horas, pudo discutir ideas y nuevas tecnologías con colegas.

Se logró un gran progreso gracias a la introducción del teletipo, que reemplazó a los perforadores de cartas. Los usuarios podían crear programas en el disco e intercambiar datos con una máquina central llamada FOCUS y, al mismo tiempo, ver en un rollo de papel lo que estaban haciendo, como en una máquina de tipo regular. " La forma en que funciona puede hacer que la gente sonría hoy ", recuerda Rene, " para ingresar a FOCUS, tenía que escribir un equipo que encendiera la luz roja en el centro de cómputo. Al ver la luz, el operador tuvo que insertar en la memoria de la máquina una cinta de una persona conectada que podría iniciar una sesión en el disco. Cuando el usuario cerró la sesión, la sesión se restableció a la cinta nuevamente. ¡Puedes imaginar el movimiento! Pero fue mucho más rápido que las tarjetas perforadas ".

Algún tiempo después, el teletipo fue reemplazado a su vez por el terminal Tektronix 4010, lo que condujo a una revolución aún mayor, ya que permitió mostrar los resultados en forma gráfica. Este dispositivo nuevo y muy costoso le permitió a Rene acelerar el desarrollo de su software: primero HBOOK, luego otro paquete llamado ZBOOK y la primera versión de GEANT. GEANT1 fue creado en 1974 por él, junto con sus colegas del grupo de Experimentos Electrónicos, y fue una herramienta para modelar detectores simples utilizando el método de Monte Carlo. Poco a poco, agregaron características a este software y pudieron reproducir colisiones de partículas: así nació GEANT2.

En 1975, Renee se unió al experimento NA4, un experimento de dispersión de muones profundamente inelástico que condujoCarlo Rubbia . Allí, participó en el desarrollo de nuevas herramientas gráficas que permitieron imprimir histogramas utilizando un dispositivo llamado plotter CalComp. Esta máquina, que funcionaba con un rollo de papel de 10 metros de largo, tenía una resolución mucho mejor que las impresoras lineales, pero era muy costosa. En 1979, se introdujo un sistema de microfilm: los histogramas guardados en la película se podían verificar antes de enviarlos al plotter para imprimir solo los interesantes. Esto redujo el costo de usar CalComp .

Se suponía que Rene continuaría trabajando con Carlo Rubbia en el experimento UA1para lo cual hizo mucho modelado. Pero en cambio, a fines de 1980, se unió al experimento OPAL , donde realizó todo el modelado del detector y creó GEANT3 .

Mientras trabajaba en el sistema HBOOK, en 1974 Rene desarrolló un sistema de administración de memoria y E / S llamado ZBOOK. Esta herramienta era una alternativa al sistema HYDRA, que fue desarrollado por Julius Zoll, un grupo de cámaras de burbujas (también autor de otro sistema de control llamado Patchy).

Teniendo en cuenta que tener dos sistemas competitivos no tiene sentido, en 1981 Emilio Pagiola sugirió desarrollar un nuevo paquete de software llamado GEM. Mientras tres personas trabajaron duro en el proyecto GEM, Renee y Julius comenzaron a probar juntos para comparar sus sistemas, ZBOOK e HYDRA, con GEM. Como resultado de estas pruebas, concluyeron que el nuevo sistema era mucho más lento que ellos.

En 1983, Jan Butterworth, entonces director del Departamento de Computación, decidió que solo se apoyaría ZBOOK en el CERN, y que GEM debería detenerse, y el desarrollo de HYDRA se congeló. "El líder de mi grupo, Hans Grote, vino a mi oficina, me estrechó la mano y dijo: "Felicidades, Renee, ganaste". Pero inmediatamente pensé que esta decisión era injusta, porque de hecho ambos sistemas tenían buenas funciones, y Julius Zoll era un excelente desarrollador de software.

Como resultado de esta decisión, Renee y Julius comenzaron una colaboración y unieron fuerzas para desarrollar un paquete que combina las mejores características de ZBOOK e HYDRA. El nuevo proyecto se llamó ZEBRA, debido a la combinación de los nombres de dos sistemas originales. "Cuando Julius y yo anunciamos que estábamos cooperando, Jan Butterworth nos llamó inmediatamente a los dos a su oficina y nos dijo que si después de 6 meses el sistema ZEBRA no funcionaba, seríamos despedidos del CERN. De hecho, en menos de dos meses pudimos mostrar una versión primaria funcional del sistema ZEBRA. »

Al mismo tiempo, las herramientas de histograma y visualización estaban en desarrollo. Rene ha creado una versión interactiva de HBOOK y HPLOT llamada HTV, que se ejecuta en máquinas Tektronix. Pero, en 1982, el advenimiento de las estaciones de trabajo personales marcó una revolución. La primera estación de trabajo personal en aparecer en Europa, Apollo, demostró un salto en términos de rendimiento y rendimiento: era más rápido, tenía más memoria y una mejor interfaz de usuario que cualquier otro dispositivo anterior. " Apolo me invitó a ir a Boston y visitarlos ", dice Rene. “ Cuando vi por primera vez la estación de trabajo Apollo , me sorprendió. Inmediatamente me di cuenta de que esto podría acelerar nuestro desarrollo 10 veces. Me obligué a trabajar y creo que en solo tres días adapté unas 20,000 líneas de código para ello ”.

El trabajo de Rene en la adaptación de HTV para la estación de trabajo Apollo despertó el interés entre Rudy Beck, Luke Pape y Jean-Pierre Revol de la colaboración UA1quien también sugirió algunas mejoras. Por lo tanto, en 1984, tres de ellos desarrollaron una propuesta para un nuevo paquete que se basará en HBOOK y ZEBRA, que llamaron PAW (Physics Analysis Workstation).

imagen
Equipo de PAW: (izquierda) Rene Bran, Pietro Zanarini, Olivier Cue (de pie) y Carlo Vandoni .

Después del primer período de incertidumbre, el proyecto PAW se desarrolló rápidamente y se introdujeron muchas funciones nuevas, incluso debido al aumento de la memoria de las estaciones de trabajo. "En algún momento, el software PAW creció tan rápido que comenzamos a recibir quejas de usuarios que no podían mantenerse al día con el desarrollo ", dice Rene, sonriendo. "Tal vez fuimos un poco ingenuos, pero definitivamente entusiastas ”.

El lenguaje de programación comúnmente utilizado para la computación científica fue FORTRAN. En particular, en ese momento FORTRAN 77 (introducido en 1977) estaba muy extendido en la comunidad de físicos de alta energía, y la razón principal de su éxito fue el hecho de que estaba bien estructurado y era bastante fácil de aprender. Además, implementaciones muy efectivas estaban disponibles en todas las máquinas utilizadas en ese momento. Como resultado, cuando apareció el nuevo FORTRAN 90, parecía obvio que reemplazaría a FORTRAN 77 y sería tan exitoso como la versión anterior. "Recuerdo bien al jefe de la división de informática Paolo Zanella, quien dijo: "No sé qué hará el próximo lenguaje de programación, pero sé su nombre: FORTRAN . »

En 1990 y 91, Rene, junto con Mike Metcalf, que era un gran experto en FORTRAN, trabajó duro para adaptar el paquete ZEBRA a FORTRAN 90. Pero, estos esfuerzos no condujeron a un resultado satisfactorio, y surgieron discusiones sobre la posibilidad de continuar trabajando con FORTRAN o cambiar a otro idioma. Este fue un período en el que la programación orientada a objetos estaba dando sus primeros pasos, y también cuando Tim Berners Lee (creador de Internet) se unió al grupo Rene.

Timtuvo que desarrollar un sistema de documentación llamado XFIND para reemplazar el FIND anterior, que solo podía funcionar en máquinas IBM que se suponía que se usarían en otros dispositivos. Sin embargo, creía que el procedimiento que debía realizar era un poco torpe y, por supuesto, no era un mejor enfoque del problema. Por lo tanto, propuso otra solución con un enfoque más descentralizado y adaptable, que requería principalmente mucho trabajo de estandarización. En este contexto, Tim desarrolló su famosa idea de servidores y clientes: la World Wide Web , desarrollada utilizando un lenguaje orientado a objetos ( Objective-C ). Una vez que le pregunté a Rene, "¿Cómo estuvo?" Su respuesta me sorprendió."Esto no fue gracias, sino contrario al CERN".

Fue un período muy caluroso, porque comenzó la fase de diseño y simulación de experimentos para el nuevo acelerador LHC (Gran Colisionador de Hadrones). Era importante decidir sobre el lenguaje de programación y las herramientas de software que se utilizarán en estos nuevos proyectos.

En el seminario ERICE organizado por INFNen noviembre de 1990, y luego en la conferencia sobre ingeniería informática en física de alta energía (CHEP) en Annecy (Francia) en septiembre de 1992, el "gurú" de la física de alta energía del mundo se reunió para discutir lenguajes de programación y posibles direcciones para desarrollar software en Física de alta energía para el Gran Colisionador de Hadrones. Entre los muchos idiomas propuestos estaban Eiffel, Prolog, Modula2 y otros.

En 1994, se lanzaron dos proyectos de investigación y desarrollo: RD44 para el desarrollo en C ++ de una nueva versión de GEANT (que se convertirá en GEANT4 ) y RD45 para el estudio de soluciones de bases de datos orientadas a objetos para experimentos en el LEP Large Electron-Positron Collider .

Según Rene, su división se dividió en tres grupos: aquellos que querían quedarse con FORTRAN 90, aquellos que confiaban en C ++ y aquellos que estaban interesados ​​en usar productos comerciales. " Envié una propuesta para desarrollar un paquete que permitiría transferir PAW al mundo de la Programación Orientada a Objetos. Pero el proyecto, al que llamé ZOO, fue rechazado e incluso me ofrecieron tomar vacaciones " , admite Rene.

Este golpe, sin embargo, más tarde resultó ser muy buena suerte para Renee. Su líder David Williams lo invitó a unirse al experimento NA49en la parte norte del CERN, donde se necesitaba a alguien para ayudar con el desarrollo de software. Al principio se negó. Durante muchos años, dirigió los proyectos GEANT y PAW y se dedicó al modelado o desarrollo de software para diversos grupos y aplicaciones, por lo que el consentimiento para volver a trabajar en un experimento en particular le pareció una gran limitación.

Pero, lo pensó y se dio cuenta de que era una oportunidad para pasar algún tiempo desarrollando un nuevo software con total libertad. Visitó el edificio NA49 en el sitio de Privesan y, al ver pinos y ardillas desde las ventanas, sintió que este era el ambiente muy tranquilo que necesitaba para su nuevo proyecto. Por lo tanto, trasladó su estación de trabajo de su oficina al sitio web de Privessan ("Lo hice durante el fin de semana sin siquiera decirle a David Williams ") y, mientras trabajaba en NA49 , aprendió C ++, traduciendo la mayor parte del software HBOOK a C ++.

A principios de 1995, Rennes se unió en NA49 por Fons Raidemakers, con quien ya había colaborado. Trabajaron mucho juntos y crearon la primera versión de lo que se convirtió en el famoso sistema ROOT. El nombre proviene simplemente de una combinación de la letra inicial de las direcciones de correo electrónico de los dos fundadores (René y Rdm, para Rademakers), el doble O orientado a objetos y la palabra Tecnología. Pero el significado o la palabra "raíz" también era adecuado para ser la base para desarrollar más software y usar estructuras de árbol en su arquitectura.

En noviembre de ese año, René realizó un seminario para presentar el sistema ROOT. "¡ La sala de computadoras estaba inesperadamente llena! ", Recuerda Rene: " Creo que esto se debe a que la gente pensó que Fons y yo habíamos desaparecido de la arena del software y de repente estábamos de regreso " . Y de hecho, el sistema ROOT despertó un interés considerable. .

Pero, mientras que René y Fons estaban completamente absortos en trabajar en su nuevo paquete de software, el proyecto RD45, que tenía la autoridad para decidir qué nuevo software debería adoptarse en nuevos experimentos en el LHC, sugirió usar el producto comercial " Objetividad". y mucho trabajo continuó desarrollando aplicaciones para satisfacer las necesidades de la física de alta energía. Según Rene, había una clara intención de evitar el desarrollo y la propagación de ROOT. En la primavera de 1996, el Director de Computación del CERN, Lorenzo Foa, anunció que el proyecto ROOT se consideraba una iniciativa privada NA49, que no contaba con el apoyo de la gerencia del CERN, y que la línea de desarrollo oficial estaba dirigida a la Objetividad .

Creo que la Junta de Computación del LHC no tenía la idea correcta sobre la arquitectura de estas herramientas de software, por lo que se puede juzgar qué solución era la mejor. Por lo tanto, tuvieron que confiar en lo que les dijeron, comenta Rene. "Siempre es un problema cuando existe una brecha entre los expertos y los usuarios que trabajan en algo y las personas que tienen que tomar decisiones importantes ".

Sin embargo, Renee y Fons continuaron el desarrollo de ROOT e introdujeron nuevas características, utilizando las lecciones aprendidas de paquetes de software anteriores (en particular, solicitudes y críticas de los usuarios). Además, monitorearon de cerca el desarrollo de la línea oficial con Objectivity para averiguar qué buscaban las personas que lo usaban y cuáles eran los problemas o dificultades. " Cuanto más miramos a Objectivity , más nos dimos cuenta de que no podía satisfacer las necesidades de nuestra comunidad ", agrega Rene, "Sabíamos que el sistema colapsaría y que la gente eventualmente se daría cuenta. Esto nos ha dado aún más energía y motivación para trabajar duro y mejorar nuestro producto. »

Recibieron apoyo continuo de las colaboraciones NA49 y ALICE , así como de muchas personas de ATLAS y CMS que vieron un buen potencial en este paquete de software. En ese momento, Rene colaboró ​​con muchas personas en ambos experimentos, incluida Fabiola Gianotti (actual directora del CERN) y Daniel Frodevo, en particular, para modelar detectores. Además, muchos usuarios han confiado en ellos durante muchos años gracias al apoyo de los usuarios de PAW y GEANT.

La situación comenzó a cambiar cuando el interés en ROOT creció fuera del CERN (por extraño que parezca, ¡pero el eslogan Zagranitsa nos ayudará! Trabaja fuera de Rusia). En 1998, dos experimentos los Laboratorio. Enrico Fermilab en América (Fermilab), CDF y D0 , decidió discutir el futuro de su software a la luz de la próxima sesión de Tevatron . Así, abrieron dos licitaciones para soluciones de software, una para almacenamiento de datos y otra para análisis y visualización de datos. Rene envió ROOT a ambas competiciones. Durante la conferencia CHEP en Chicago (fue allí donde me reuní personalmente con Rene por primera vez, aunque colaboré con él en ausencia durante bastante tiempo.
Allí me ofreció un trabajo) se discutieron propuestas, y el último día se anunció públicamente que CDF y D0 aceptarían ROOT. " No esperaba esto ", dice Rene, " recuerdo que cuando se anunció la decisión, todos se volvieron y me miraron ". Pronto, los experimentos de RHIC en el Brookhaven National Laboratory tomaron la misma decisión. Cuando los físicos del experimento BaBar en SLAC , después de muchos años de intentar usar Objectivity, se dieron cuenta de que no era un sistema tan bueno como se esperaba, entonces cambiaron a ROOT.

Gradualmente, se hizo evidente que toda la comunidad de Física de Alta Energía se estaba moviendo "naturalmente" hacia ROOT, el liderazgo del CERN tuvo que aceptar esta situación y, al final, apoyarla. Pero esto solo sucedió en 2002. Con el aumento de la fuerza laboral asignada al proyecto (Rene bromeó diciendo " usted es el primer empleado del CERN que recibe oficialmente un salario por trabajar en ROOT "), ROOT continuó creciendo rápidamente y el número de usuarios aumentó considerablemente. ROOT también comenzó a extenderse a otras ramas de la ciencia y al mundo financiero. " En 2010, tuvimos un promedio de 12,000 descargas del paquete de software por mes, y hubo más visitantes al sitio web ROOT que al CERN ".

imagenLogotipo del paquete de software ROOT.


René se retiró en 2012, pero sus dos hijos más importantes,ROOT y GEANT continúan evolucionando gracias al trabajo de muchos científicos jóvenes. “ Creo que es importante tener un incentivo constante que lo empuje a mejorar sus productos y la aparición de nuevas soluciones. La contribución de los jóvenes es muy importante para esto ”, comenta Rene. Pero, como admite, lo que realmente hizo que él y sus colegas trabajaran tan duro durante muchos años es que siempre ha habido varios competidores, aunque en muchos casos fueron un desafío e incluso interfirieron. “ Cuando tienes un adversario, pero sabes que tienes razón, estás condenado al éxito . “La

gran atención a las solicitudes de los usuarios también fue muy importante porque ayudó a desarrollar software y construir relaciones de confianza con las personas. "Siempre he dicho que debe dar prioridad a la asistencia al usuario, explica Rene. “ Si responde la solicitud dentro de los 10 minutos, recibirá 10 puntos, en una hora recibirá 2 puntos y en un día ganará -10 puntos. Las respuestas a las preguntas y comentarios son fundamentales, porque si los usuarios están satisfechos con el soporte que les brindas, están listos para confiar en lo que ofreces a continuación. "

Ahora que renunció, Renee sigue monitoreando el desarrollo de software en el CERN, pero solo como observador externo. Esto no significa que dejó de lado sus intereses científicos, por el contrario, ahora dedica la mayor parte de su energía a un proyecto más teórico, ya que está desarrollando un modelo físico. En su tiempo libre, ama la jardinería. Le encantan las flores, pero no puede evitar mirarlas con una mirada científica: " Mi colega, matemático, y yo hemos desarrollado un modelo matemático de cómo se estructuran y crecen las flores ".

Las mentes brillantes siempre están en el trabajo.



Un poco sobre ti
ROOT.
.
.
— . .
— « ».
, , « » ! .
, , , , .

All Articles