Los sitios web de IEEE colocan cookies en su dispositivo para brindarle la mejor experiencia de usuario.Al utilizar nuestros sitios web, usted acepta la ubicación de estas cookies.Para obtener más información, lea nuestra Política de privacidad.Estoy en bicicleta aquí: a los conductores les resulta difícil detectar bicicletas por la noche.El editor senior de IEEE Spectrum, David Schneider, construyó una plataforma de luces intermitentes para marcar claramente su carril. Foto: Grace SchneiderVivo a menos de una milla del campus de la Universidad de Carolina del Norte, en Chapel Hill.No en vano, muchos de los casi 30.000 estudiantes matriculados allí se desplazan en bicicleta por la ciudad, de día y de noche.También ando en bicicleta, pero rara vez salgo después del anochecer: me temo que es demasiado peligroso.Este sentimiento sobre los peligros del ciclismo nocturno está formado por mis experiencias como conductor.A menudo me encuentro acercándome a ciclistas por la noche y apenas los noto.Quizás no tengan luz trasera.O tal vez tienen una pequeña luz roja parpadeando, pero de alguna manera no me llama la atención como lo hacen las luces de otros automóviles.Mis sentimientos sobre los riesgos de andar en bicicleta en la oscuridad se alinean con lo que otros han estado diciendo.La Administración Nacional de Seguridad del Tráfico en las Carreteras de EE. UU. señala que las muertes de ciclistas ocurren "con mayor frecuencia entre las 6 p. m. y las 9 p. m.".Y en la edición más reciente del informe Contramedidas que funcionan [PDF] de la administración, se recomienda que los ciclistas se hagan más visibles en la oscuridad porque “un factor común que contribuye a los choques que involucran ciclistas en la carretera es que el conductor no fíjate en el ciclista, especialmente de noche”.La gente ha estado haciendo este punto durante algún tiempo.En un ensayo extenso de 1996 sobre la seguridad de las bicicletas, Jeffrey Hiles señaló que “solo una pequeña luz roja, y en algunos lugares solo un pequeño reflector rojo, pueden satisfacer la ley sin hacer que un ciclista sea tan llamativo en la carretera”.Continuó escribiendo: “Sería genial si todos los ciclistas que montan en la noche parecieran un árbol de Navidad rodante”.Mientras contemplaba el problema, me di cuenta de que no se trata solo de apagar tantos lúmenes como sea posible.Una gran parte del problema es que incluso una luz roja brillantemente parpadeante al costado de la carretera puede no ser realmente detectada por los conductores, que miran hacia adelante en su carril en busca de las luces traseras de automóviles y camiones.Enciéndelo: las celdas “ficticias” de madera se conectan a los terminales de la batería de cada linterna (arriba);la energía proviene de una fuente externa controlada por Arduino (centro).Las linternas (abajo) están dispuestas para proyectar luz sobre el suelo. Fotos: David SchneiderExaminé varios tipos de luces para bicicletas, incluidas aquellas que aprovechan un fenómeno llamado persistencia de la visión (POV).Estas unidades colocan luces en los radios de las ruedas, que giran lo suficientemente rápido como para dar la impresión de que toda la rueda está encendida.Se ven geniales y se pueden hacer para crear patrones que llaman la atención cuando se ven desde un lado.El problema es que no abordan el problema principal: la visibilidad desde atrás.Sin embargo, mientras examinaba un video de una luz de bicicleta POV comercial, noté que proporcionaba algo de visibilidad desde la parte trasera, en virtud de la luz que se proyectaba en el suelo.Pensé que podría aprovechar ese efecto.Por supuesto, la luz tenía que ser roja.Y quería poder proyectarlo bien en el carril de conducción, no solo iluminar el suelo debajo de la bicicleta.Un poco de navegación en Amazon.com arrojó muchos candidatos para usar con ese propósito.Me decidí por una pequeña linterna que contiene un LED rojo y una lente de enfoque ajustable.En realidad, compré cuatro de ellos.Para controlar estas luces, uso un Arduino Nano.El Nano no puede canalizar suficiente corriente para alimentar las linternas directamente, así que lo combiné con un módulo de conmutación económico basado en MOSFET de cuatro canales.Los únicos otros componentes de mi nueva luz para bicicleta son una batería de iones de litio (del tipo que se usa a menudo para hacer funcionar o recargar un teléfono) y un convertidor de CC a CC, que se usa para reducir el voltaje de la batería de 5 voltios. a algo más adecuado para las linternas.Las linternas están diseñadas para funcionar con una batería AA de 1,5 V o una celda de iones de litio 14500 de 3,7 V.El fabricante advierte que la vida útil del LED puede acortarse a 3,7 V. Así que configuré mi convertidor de CC a CC para generar 2 V.Para modificar las linternas para que pudieran funcionar con una fuente de alimentación externa, hice cuatro enchufes de madera que se asemejan a las pilas AA en sus dimensiones, uno para cada linterna.Los tornillos en cada extremo de esos enchufes proporcionan un punto de contacto entre los terminales de la batería de la linterna y los cables de alimentación, que saco de las linternas a través de pequeños agujeros.Monté las cuatro linternas en un marco pequeño que me permite ajustar las luces para que se proyecten detrás de la bicicleta a varias distancias hacia la izquierda.Programé el Arduino para que destellara cada luz por turno, de modo que un punto de luz roja apareciera primero directamente detrás de la bicicleta y luego cada vez más lejos en el carril de conducción.Esto, pensé, llamaría la atención del conductor sin ser abrumador, tal como lo hacen los indicadores direccionales o las luces de emergencia de un vehículo motorizado.En buena medida, también uso una luz roja tradicional debajo del asiento de la bicicleta.Mis carreras de prueba no estuvieron exentas de palmas sudorosas, dado mi miedo general a montar de noche.Pero me sentí mucho más confiado al saber que de hecho estaba iluminado como un árbol de Navidad.Todo lo que necesita esta nueva luz de bicicleta, supongo, es un poco de oropel.Este artículo aparece en la edición impresa de abril de 2018 como "Hack a Safer Bike Light".La compresión de datos sin pérdidas parece un poco un truco de magia.Su prima, la compresión con pérdida, es más fácil de comprender.Los algoritmos con pérdida se utilizan para obtener música en el popular formato MP3 y convertir una imagen digital en un archivo JPEG estándar.Lo hacen mediante la eliminación selectiva de bits, tomando lo que los científicos saben sobre la forma en que vemos y escuchamos para determinar qué bits nos perderíamos menos.Pero nadie puede argumentar que el archivo resultante es una réplica perfecta del original.No es así con la compresión de datos sin pérdidas.Los bits desaparecen, lo que hace que el archivo de datos sea mucho más pequeño y, por lo tanto, más fácil de almacenar y transmitir.La diferencia importante es que los bits reaparecen cuando se les ordena.Es como si los bits fueran conejos en el acto de un mago, desapareciendo y luego reapareciendo desde el interior de un sombrero con el movimiento de una varita.El mundo de la magia contó con Houdini, quien fue pionero en trucos que aún hoy se realizan.Y la compresión de datos tiene Jacob Ziv.En 1977, Ziv, en colaboración con Abraham Lempel, publicó el equivalente de Houdini on Magic: un artículo en IEEE Transactions on Information Theory titulado "Un algoritmo universal para la compresión de datos secuenciales". El algoritmo descrito en el artículo se denominó LZ77: a partir de los nombres de los autores, en orden alfabético y el año LZ77 no fue el primer algoritmo de compresión sin pérdidas, pero fue el primero que pudo hacer su magia en un solo paso.Trabajo actual: Technion Distinguido Profesor Emérito, Facultad de Ingeniería EléctricaLugar de nacimiento: Tiberíades, Palestina gobernada por los británicos (ahora Israel)Familia: Casado con Shoshana, cuatro hijos, nueve nietosEducación: BSc, Dip-Eng, MSc, todo en ingeniería eléctrica de Technion, en 1954, 1955, 1957;Sc.D, MIT, 1962Libros favoritos: historias de detectives, en particular las que presentan a Perry Mason.Tipo de música favorita: clásica, particularmente Bach;jazzComida favorita: falafel, heladoCómo empieza el día: una taza de espresso y un trozo de chocolate negroMembresías organizacionales: Academia de Ciencias y Humanidades de Israel, Academia Nacional de Ingeniería de EE. UU., Academia Nacional de Ciencias de EE. UU., Sociedad Filosófica Estadounidense, IEEE FellowPrincipales premios: Medalla de Honor IEEE "por contribuciones fundamentales a la teoría de la información y la tecnología de compresión de datos, y por un liderazgo investigador distinguido"; Premio Fronteras del Conocimiento de la Fundación BBVA; Premio Claude E. Shannon de la Sociedad de Teoría de la Información IEEEAl año siguiente, los dos investigadores emitieron un refinamiento, LZ78.Ese algoritmo se convirtió en la base del programa de compresión de Unix utilizado a principios de los años 80;WinZip y Gzip, nacidos a principios de los 90;y los formatos de imagen GIF y TIFF.Sin estos algoritmos, probablemente estaríamos enviando por correo archivos de datos de gran tamaño en discos en lugar de enviarlos a través de Internet con un clic, comprando nuestra música en CD en lugar de transmitirla y viendo fuentes de Facebook que no tienen imágenes animadas que rebotan.Ziv se asoció con otros investigadores en otras innovaciones en compresión.Es todo su trabajo, que abarca más de medio siglo, lo que le valió la Medalla de Honor IEEE 2021 "por sus contribuciones fundamentales a la teoría de la información y la tecnología de compresión de datos, y por su distinguido liderazgo en investigación".Ziv nació en 1931 de inmigrantes rusos en Tiberíades, una ciudad entonces en la Palestina gobernada por los británicos y ahora parte de Israel.La electricidad y los aparatos, y poco más, lo fascinaron de niño.Mientras practicaba el violín, por ejemplo, se le ocurrió un plan para convertir su atril en una lámpara.También trató de construir un transmisor Marconi a partir de piezas de pianola de metal.Cuando enchufó el artilugio, toda la casa quedó a oscuras.Nunca hizo funcionar ese transmisor.Cuando comenzó la guerra árabe-israelí en 1948, Ziv estaba en la escuela secundaria.Reclutado en las Fuerzas de Defensa de Israel, sirvió brevemente en el frente hasta que un grupo de madres organizó protestas, exigiendo que los soldados más jóvenes fueran enviados a otro lugar.La reasignación de Ziv lo llevó a la Fuerza Aérea de Israel, donde se formó como técnico de radar.Cuando terminó la guerra, ingresó al Technion, el Instituto de Tecnología de Israel, para estudiar ingeniería eléctrica.Después de completar su maestría en 1955, Ziv regresó al mundo de la defensa, esta vez uniéndose al Laboratorio de Investigación de la Defensa Nacional de Israel (ahora Rafael Advanced Defense Systems) para desarrollar componentes electrónicos para usar en misiles y otros sistemas militares.El problema era, recuerda Ziv, que ninguno de los ingenieros del grupo, incluido él mismo, tenía más que conocimientos básicos de electrónica.Su educación en ingeniería eléctrica se había centrado más en los sistemas de energía.“Teníamos unas seis personas y teníamos que enseñarnos a nosotros mismos”, dice. “Elegíamos un libro y luego estudiábamos juntos, como los judíos religiosos que estudian la Biblia hebrea. No era suficiente”.El objetivo del grupo era construir un sistema de telemetría utilizando transistores en lugar de tubos de vacío.Necesitaban no sólo conocimiento, sino partes.Ziv se puso en contacto con Bell Telephone Laboratories y solicitó una muestra gratuita de su transistor;la empresa envió 100.“Eso cubrió nuestras necesidades durante unos meses”, dice. “Me doy crédito por ser el primero en Israel en hacer algo serio con el transistor”.En 1959, Ziv fue seleccionado como uno de los pocos investigadores del laboratorio de defensa de Israel para estudiar en el extranjero.Ese programa, dice, transformó la evolución de la ciencia en Israel.Sus organizadores no guiaron a los jóvenes ingenieros y científicos seleccionados hacia campos particulares.En cambio, les permitieron realizar cualquier tipo de estudios de posgrado en cualquier nación occidental.Ziv planeó continuar trabajando en comunicaciones, pero ya no estaba interesado solo en el hardware.Recientemente había leído Teoría de la información (Prentice-Hall, 1953), uno de los primeros libros sobre el tema, de Stanford Goldman, y decidió centrarse en la teoría de la información.¿Y dónde más se estudiaría teoría de la información sino en el MIT, donde había comenzado Claude Shannon, el pionero del campo?Ziv llegó a Cambridge, Mass., en 1960. Su Ph.D.La investigación involucró un método para determinar cómo codificar y decodificar mensajes enviados a través de un canal ruidoso, minimizando la probabilidad y el error y al mismo tiempo manteniendo la decodificación simple.“La teoría de la información es hermosa”, dice. “Te dice qué es lo mejor que puedes lograr y [te] dice cómo aproximar el resultado. Entonces, si inviertes el esfuerzo computacional, puedes saber que te estás acercando el mejor resultado posible".Ziv contrasta esa certeza con la incertidumbre de un algoritmo de aprendizaje profundo.Puede estar claro que el algoritmo está funcionando, pero nadie sabe realmente si es el mejor resultado posible.Mientras estuvo en el MIT, Ziv trabajó a tiempo parcial en el contratista de defensa estadounidense Melpar, donde trabajó en el software de corrección de errores.Encontró este trabajo menos hermoso."Para ejecutar un programa de computadora en ese momento, tenías que usar tarjetas perforadas", recuerda. "Y las odiaba. Por eso no me dediqué a la informática real".De vuelta en el Laboratorio de Investigación de Defensa después de dos años en los Estados Unidos, Ziv se hizo cargo del Departamento de Comunicaciones.Luego, en 1970, con varios otros compañeros de trabajo, se unió a la facultad de Technion.Jacob Ziv (con anteojos), quien se convirtió en presidente del departamento de ingeniería eléctrica de Technion en la década de 1970, trabajó anteriormente en teoría de la información con Moshe Zakai.Los dos colaboraron en un artículo que describe lo que se conoció como el límite Ziv-Zakai.Foto: Jacob Ziv/TechnionAllí conoció a Abraham Lempel.Los dos hablaron sobre cómo mejorar la compresión de datos sin pérdidas.El estado del arte en la compresión de datos sin pérdidas en ese momento era la codificación Huffman.Este enfoque comienza encontrando secuencias de bits en un archivo de datos y luego clasificándolos por la frecuencia con la que aparecen.Luego, el codificador construye un diccionario en el que las secuencias más comunes están representadas por el menor número de bits.Esta es la misma idea detrás del código Morse: la letra más frecuente en el idioma inglés, e, está representada por un solo punto, mientras que las letras más raras tienen combinaciones más complejas de puntos y guiones.La codificación Huffman, aunque todavía se usa hoy en día en el formato de compresión MPEG-2 y una forma sin pérdidas de JPEG, tiene sus inconvenientes.Requiere dos pasos a través de un archivo de datos: uno para calcular las características estadísticas del archivo y el segundo para codificar los datos.Y almacenar el diccionario junto con los datos codificados aumenta el tamaño del archivo comprimido.Ziv y Lempel se preguntaron si podrían desarrollar un algoritmo de compresión de datos sin pérdidas que funcionara con cualquier tipo de datos, no requiriera procesamiento previo y lograra la mejor compresión para esos datos, un objetivo definido por algo conocido como la entropía de Shannon.No estaba claro si su objetivo era siquiera posible.Decidieron averiguarlo.Ziv dice que él y Lempel eran la "pareja perfecta" para abordar esta pregunta. "Sabía todo sobre teoría de la información y estadística, y Abraham estaba bien equipado en álgebra booleana e informática".A los dos se les ocurrió la idea de hacer que el algoritmo busque secuencias únicas de bits al mismo tiempo que comprime los datos, usando punteros para referirse a secuencias vistas previamente.Este enfoque requiere solo una pasada por el archivo, por lo que es más rápido que la codificación Huffman.Ziv lo explica de esta manera: “Miras los bits entrantes para encontrar el tramo más largo de bits para el que hay una coincidencia en el pasado.Digamos que el primer bit entrante es un 1. Ahora, dado que solo tiene un bit, nunca lo ha visto en el pasado, por lo que no tiene más remedio que transmitirlo tal como está".“Pero luego obtienes otro bit”, continúa. “Di que también es un 1. Así que ingresas en tu diccionario 1-1. Di que el siguiente bit es un 0. Entonces en tu diccionario ahora tienes 1-1 y también 1-0".Aquí es donde entra en juego el puntero. La próxima vez que el flujo de bits incluya un 1-1 o un 1-0, el software no transmitirá esos bits.En su lugar, envía un puntero a la ubicación donde apareció esa secuencia por primera vez, junto con la longitud de la secuencia coincidente.La cantidad de bits que necesita para ese puntero es muy pequeña.“Es básicamente lo que solían hacer al publicar TV Guide”, dice Ziv. “Hacían una sinopsis de cada programa una vez. Si el programa aparecía más de una vez, no volvían a publicar la sinopsis. a la página x".Decodificar de esta manera es aún más simple, porque el decodificador no tiene que identificar secuencias únicas.En su lugar, encuentra las ubicaciones de las secuencias siguiendo los punteros y luego reemplaza cada puntero con una copia de la secuencia relevante.El algoritmo hizo todo lo que Ziv y Lempel se propusieron hacer: demostró que era posible una compresión universalmente óptima sin pérdidas y sin preprocesamiento."En el momento en que publicaron su trabajo, el hecho de que el algoritmo fuera nítido y elegante y que fuera fácil de implementar con una baja complejidad computacional era casi irrelevante", dice Tsachy Weissman, profesor de ingeniería eléctrica en la Universidad de Stanford que se especializa en teoría de la información. "Se trataba más del resultado teórico".Eventualmente, sin embargo, los investigadores reconocieron las implicaciones prácticas del algoritmo, dice Weissman."El algoritmo en sí se volvió realmente útil cuando nuestras tecnologías comenzaron a manejar archivos de más de 100 000 o incluso un millón de caracteres"."Su historia es una historia sobre el poder de la investigación teórica fundamental", agrega Weissman. "Puedes establecer resultados teóricos sobre lo que debería ser alcanzable, y décadas más tarde, la humanidad se beneficia de la implementación de algoritmos basados en esos resultados".Ziv y Lempel siguieron trabajando en la tecnología, tratando de acercarse a la entropía para archivos de datos pequeños.Ese trabajo condujo a LZ78.Ziv dice que LZ78 parece similar a LZ77 pero en realidad es muy diferente, porque anticipa el siguiente bit."Digamos que el primer bit es un 1, entonces ingresas en el diccionario dos códigos, 1-1 y 1-0", explica. Puedes imaginar estas dos secuencias como las primeras ramas de un árbol.“Cuando llega el segundo bit”, dice Ziv, “si es un 1, envías el puntero al primer código, el 1-1, y si es un 0, apuntas al otro código, 1-0. Y luego amplía el diccionario agregando dos posibilidades más a la rama seleccionada del árbol. A medida que lo haces repetidamente, las secuencias que aparecen con más frecuencia crecerán en ramas más largas"."Resulta", dice, "que no solo era el [enfoque] óptimo, sino que era tan simple que se volvió útil de inmediato".Jacob Ziv (izquierda) y Abraham Lempel publicaron algoritmos para la compresión de datos sin pérdidas en 1977 y 1978, ambos en IEEE Transactions on Information Theory.Los métodos se conocieron como LZ77 y LZ78 y todavía se usan en la actualidad.Foto: Jacob Ziv/TechnionMientras Ziv y Lempel trabajaban en LZ78, ambos estaban en un año sabático de Technion y trabajaban en empresas estadounidenses.Sabían que su desarrollo sería comercialmente útil y querían patentarlo."Estaba en Bell Labs", recuerda Ziv, "y pensé que la patente debería pertenecer a ellos. Pero dijeron que no es posible obtener una patente a menos que sea una pieza de hardware, y no estaban interesados en intentarlo".(La Corte Suprema de los EE. UU. no abrió la puerta a la protección directa de patentes para el software hasta la década de 1980).Sin embargo, el empleador de Lempel, Sperry Rand Corp., estaba dispuesto a intentarlo.Eludió la restricción de las patentes de software mediante la construcción de hardware que implementó el algoritmo y patentó ese dispositivo.Sperry Rand siguió esa primera patente con una versión adaptada por el investigador Terry Welch, llamada algoritmo LZW.Fue la variante LZW la que más se extendió.Ziv lamenta no poder patentar LZ78 directamente, pero dice: “Disfrutamos el hecho de que [LZW] fuera muy popular.Nos hizo famosos y también disfrutamos de la investigación a la que nos llevó".Un concepto que siguió se denominó complejidad Lempel-Ziv, una medida del número de subcadenas únicas contenidas en una secuencia de bits.Cuantas menos subcadenas únicas, más se puede comprimir una secuencia.Posteriormente, esta medida pasó a utilizarse para comprobar la seguridad de los códigos de cifrado;si un código es realmente aleatorio, no se puede comprimir.La complejidad de Lempel-Ziv también se ha utilizado para analizar electroencefalogramas (registros de la actividad eléctrica en el cerebro) para determinar la profundidad de la anestesia, diagnosticar la depresión y para otros fines.Los investigadores incluso lo han aplicado para analizar letras pop, para determinar tendencias en la repetición.A lo largo de su carrera, Ziv publicó unos 100 artículos revisados por pares.Si bien los artículos de 1977 y 1978 son los más famosos, los teóricos de la información que vinieron después de Ziv tienen sus propios favoritos.Para Shlomo Shamai, un distinguido profesor de Technion, es el artículo de 1976 que introdujo el algoritmo Wyner-Ziv, una forma de caracterizar los límites del uso de información adicional disponible para el decodificador pero no para el codificador.Ese problema surge, por ejemplo, en aplicaciones de video que aprovechan que el decodificador ya ha descifrado el cuadro anterior y, por lo tanto, puede usarse como información adicional para codificar el siguiente.Para Vincent Poor, profesor de ingeniería eléctrica en la Universidad de Princeton, es el artículo de 1969 que describe el límite Ziv-Zakai, una forma de saber si un procesador de señales está obteniendo o no la información más precisa posible de una señal determinada.Ziv también inspiró a varios expertos líderes en compresión de datos a través de las clases que impartió en Technion hasta 1985. Weissman, un ex alumno, dice que Ziv “está profundamente apasionado por la belleza matemática de la compresión como una forma de cuantificar la información.Tomar un curso con él en 1999 tuvo un papel importante en ponerme en el camino de mi propia investigación".No fue el único tan inspirado.“Tomé una clase de teoría de la información de Ziv en 1979, al comienzo de mis estudios de maestría”, dice Shamai. “Han pasado más de 40 años y todavía recuerdo el curso. Me animó a analizar estos problemas. para hacer investigación y obtener un doctorado ".En los últimos años, el glaucoma le ha quitado la mayor parte de la visión a Ziv.Él dice que un artículo publicado en IEEE Transactions on Information Theory este enero es el último.El tiene 89“Comencé el artículo hace dos años y medio, cuando todavía tenía suficiente visión para usar una computadora”, dice. “Al final, Yuval Cassuto, un miembro más joven de la facultad de Technion, terminó el proyecto”.El documento analiza situaciones en las que es necesario transmitir rápidamente grandes archivos de información a bases de datos remotas.Tal como lo explica Ziv, tal necesidad puede surgir cuando un médico desea comparar la muestra de ADN de un paciente con muestras anteriores del mismo paciente, para determinar si ha habido una mutación, o con una biblioteca de ADN, para determinar si el paciente tiene una enfermedad genética.O un investigador que estudia un nuevo virus puede querer comparar su secuencia de ADN con una base de datos de ADN de virus conocidos.“El problema es que la cantidad de información en una muestra de ADN es enorme”, dice Ziv, “demasiada para ser enviada por una red hoy en cuestión de horas o incluso, a veces, en días. para identificar virus que están cambiando muy rápidamente en el tiempo, eso puede ser demasiado tiempo".El enfoque que él y Cassuto describen implica el uso de secuencias conocidas que aparecen comúnmente en la base de datos para ayudar a comprimir los nuevos datos, sin verificar primero una coincidencia específica entre los nuevos datos y las secuencias conocidas.“Realmente espero que esta investigación se pueda usar en el futuro”, dice Ziv. Si su historial es una indicación, Cassuto-Ziv, o quizás CZ21, se sumará a su legado.Este artículo aparece en la edición impresa de mayo de 2021 como "Conjurer of Compression".