Tendencias21
Primeros pasos hacia la programación computacional en lenguaje ordinario

Primeros pasos hacia la programación computacional en lenguaje ordinario

Investigadores del Instituto Tecnológico de Massachusetts en Estados Unidos han demostrado a través de dos estudios diferentes que es posible programar utilizando el lenguaje ordinario, en lugar de uno creado para tal fin. Para ello han desarrollado dos métodos que permiten automatizar la traducción de ese lenguaje natural en códigos ejecutables por un ordenador. Aunque las técnicas desarrolladas solo son aplicables a ciertas tareas concretas, esperan poder ampliar los contextos de uso. Por Patricia Pérez.

Primeros pasos hacia la programación computacional en lenguaje ordinario

El proceso de programar no es tarea sencilla, pues requiere conocimientos en varias áreas distintas, además del dominio de un lenguaje específico, algoritmos y lógica formal. El léxico tiende a asemejarse al natural, aunque con la diferencia de que busca ante todo reducir la ambigüedad, lo que lo hace mucho más complejo.

Ahora, investigadores de Ciencias de la Computación y el Laboratorio de Inteligencia Artificial del Instituto Tecnológico de Massachusetts (MIT) en Estados Unidos, aseguran haber encontrado una fórmula para programar sin necesidad de conocer esos códigos especializados, utilizando en su lugar un lenguaje más cercano al que utilizamos habitualmente –de momento, en inglés-.

Este avance sería de gran ayuda no sólo para los programadores, pues permitiría además el acceso generalizado a archivos comunes, como documentos de procesamiento de texto y hojas de cálculo, que hasta ahora requerían cierta familiaridad con los lenguajes de programación.

La profesora de Ciencias de la Computación e Ingeniería Eléctrica del MIT Regina Barzilay, señala en un comunicado de la universidad, no creer “que seamos capaces de aplicarlo a toda la programación, pero hay áreas con muchos ejemplos de cómo se han hecho traducciones”. Por tanto, no duda en asegurar que “si la información está disponible, cualquiera puede aprender a traducir ese lenguaje a código”.

Barzilay es coautora de los dos estudios presentados por el MIT. Por una parte, junto a su alumno Nate Kushman, utilizaron ejemplos recopilados de Internet para entrenar un sistema informático capaz de convertir descripciones en lengua natural en las conocidas como expresiones regulares: combinaciones de símbolos que facilitan la búsqueda de archivos por encima de las funciones de un motor de búsqueda tradicional.

Por otra parte, junto a la estudiante de posgrado Tao Lei y el equipo formado por el profesor Martin Rinard y su estudiante Fan Long, Barzilay describió un sistema que aprendió automáticamente cómo manejar datos almacenados en diferentes formatos de archivo, basándose en especificaciones preparadas para una competencia de programación popular.

Expresiones regulares

Las expresiones regulares o patrones han demostrado ser una herramienta poderosa y versátil en cualquiera de sus usos en el ámbito de la informática, desde las hojas de cálculo a bases de datos.

Sin embargo, Barzilay y Kushman afirman en su estudio que se siguen considerando un “arte oscuro” para muchos programadores.

Esto se debe a que el código que utilizan no se correlaciona bien normalmente con el lenguaje natural. Por ejemplo, la expresión regular para buscar “palabra de tres letras que empieza por X” sería “\bX[A-Za-z]{2}\b”, el resultado de un símbolo que indica el comienzo de palabra, otro para la letra en cuestión, un conjunto de símbolos que indican la identificación de una letra, y otros tantos para señalar que la operación anterior debe repetirse dos veces.

Por el contrario, los investigadores llegaron a la conclusión de que cualquier expresión regular tiene un equivalente para esquematizar en lenguaje natural, aunque pudiera no ser muy conciso o intuitivo para un programador.

De esta forma, la idea clave de su trabajo es utilizar la unificación semántica para eliminar la ambigüedad del léxico ordinario. O lo que es lo mismo, encontrar una manera sencilla de esquematizar la lengua en símbolos hasta conseguir la versión más concisa de la misma expresión.

Según los resultados del trabajo, el modelo de Barzilay y Kushman generó la expresión regular correcta en el 66 por ciento de los casos.

Primeros pasos hacia la programación computacional en lenguaje ordinario

Análisis de entrada

El problema general de la traducción natural ha existido desde los inicios de la informática. Aunque se han conseguido algunos éxitos en los últimos años, el trabajo desarrollado por Barzilay, Rinard, Lei y Long explora un aspecto diferente de esta traba: la traducción de especificaciones de entrada en lenguaje natural a códigos ejecutables que analicen correctamente los datos de entrada y generen estructuras para contenerlos.

Toda aplicación de software cuenta con un tipo de archivo asociado -doc para programas de Word, pdf para visualizar documentos, mp3 para reproducir música, etc… Y cada tipo de archivo organiza los datos de forma diferente. Así, un archivo de imagen puede comenzar con unos cuantos bits que indican el tipo de archivo, otros para el tamaño, y algunos más que indican el número de bits asignados a cada píxel, hasta llegar a los que realmente representan los colores de píxel.

El papel de los analizadores de entrada consiste en averiguar qué parte del archivo contiene cada tipo de datos. Sin estos programas, un archivo sería simplemente una cadena aleatoria de ceros y unos.

La novedad introducida por los investigadores del MIT es el desarrollo de un analizador de entrada basado en especificaciones escritas en lenguaje natural. La automatización de esa traducción eliminará los costes que supone el desarrollo manual del software por parte de un programador. Para ello, en lugar de generar directamente el código partiendo del texto, lo primero que se hace es traducirlo en un árbol de especificaciones. A partir de ahí se esquematiza el árbol en programas de análisis.

En este caso, lo probaron con más de 100 ejemplos extraídos de la Competición Internacional Universitaria ACM de Programación (ACM-ICPC), que incluye especificaciones de archivo para todos los retos que plantea la programación. El sistema fue capaz de crear analizadores de entrada en alrededor del 80 por ciento de los casos. En el resto, bastaba con cambiar una o dos palabras de la especificación general.

Ambos métodos suponen un primer paso para permitir a usuarios comunes poder programar sus ordenadores sin necesidad de un conocimiento de lenguajes de programación. En ello coinciden expertos como el profesor Lucas Zettlemoyer, de la Universidad de Washington, quien espera que “las técnicas desarrolladas se generalicen a otras tareas de programación relacionadas”.

RedacciónT21

Hacer un comentario

RSS Lo último de Tendencias21

  • Descubren cómo Plutón consiguió su corazón 16 abril, 2024
    El misterio de cómo Plutón consiguió una característica gigante en forma de corazón en su superficie finalmente ha sido resuelto: los científicos lograron reproducir con éxito la forma inusual con simulaciones numéricas, atribuyéndola a un impacto gigante y lento en ángulo oblicuo. Se trató de una colisión con un cuerpo planetario de unos 700 kilómetros […]
    Pablo Javier Piacente
  • La vida podría existir desde los inicios del Universo 16 abril, 2024
    El físico Avi Loeb sostiene en un reciente artículo que los elementos para el desarrollo de la vida tal como la conocemos podrían estar presentes en el cosmos desde la formación de las primeras estrellas, unos 100 millones de años después del Big Bang. También postula que esta hipótesis podría comprobarse si la misión Dragonfly […]
    Pablo Javier Piacente
  • Crean un acelerador de partículas en miniatura con aplicaciones médicas 16 abril, 2024
    Investigadores alemanes han desarrollado un acelerador de electrones que mide poco menos de medio milímetro de largo y 0,2 micrómetros de ancho, es decir, menos de una milésima de milímetro. Tiene aplicaciones en la investigación básica y permitirá crear nuevas herramientas de radioterapia. Entrevista con sus protagonistas, Peter Hommelhoff y Stefanie Kraus.
    Oscar William Murzewitz (Welt der Physik)/T21
  • Revelan la primera molécula fractal en la naturaleza 15 abril, 2024
    Los científicos han descubierto una molécula en la naturaleza que sigue un patrón geométrico de autosimilitud, conocido como fractal. La enzima microbiana denominada citrato sintasa es la primera estructura fractal molecular ensamblada directamente en la naturaleza que ha logrado identificarse hasta el momento. Los especialistas creen que este fractal puede representar un accidente evolutivo.
    Pablo Javier Piacente
  • El cambio climático podría estar relacionado con el aumento de los accidentes cerebrovasculares 15 abril, 2024
    Una nueva investigación ha demostrado que el número de muertes ligadas a accidentes cerebrovasculares y otras patologías relacionadas ha ido creciendo desde 1990, a la par del aumento de las temperaturas extremas. Durante 2019, el último año analizado, más de 500.000 muertes por accidentes cerebrovasculares se vincularon con temperaturas "no óptimas", provocadas por el calentamiento […]
    Pablo Javier Piacente
  • La globalización está fracturando a la humanidad 15 abril, 2024
    La globalización no está conduciendo a una civilización universal con valores compartidos, sino que está creando una brecha creciente entre los países occidentales de altos ingresos y el resto del mundo, en cuanto a valores como la tolerancia, la diversidad y la libertad.
    Eduardo Martínez de la Fe
  • En el caso de los caracoles, el huevo fue lo primero 14 abril, 2024
    Un caracol marino que primero fue ovíparo y evolucionó hacia la viviparidad revela que los saltos evolutivos ocurren gradualmente, a través de una serie de pequeños cambios.
    Redacción T21
  • Revelan el misterio del árbol tropical que camina 13 abril, 2024
    La denominada "palma caminante" o Socratea exorrhiza es un árbol de América Central y del Sur que según distintas versiones podría "caminar" y erguirse en determinadas situaciones: ahora, este mito parece haber sido resuelto bajo criterios científicos. Según los investigadores, aunque el árbol puede crecer rápidamente y crear nuevas raíces para lidiar con la pérdida […]
    Pablo Javier Piacente
  • Descubren 50 especies desconocidas para la ciencia en la exótica Isla de Pascua 12 abril, 2024
    Una expedición a la Cordillera de Salas y Gómez, frente a Rapa Nui, en el Océano Pacífico, documentó 160 especies animales que no se sabía que habitaban esta región de la misteriosa Isla de Pascua, en Chile. Además, descubrieron 50 criaturas que son absolutamente nuevas para la ciencia.
    Pablo Javier Piacente
  • El clima espacial podría generar un caos satelital sin precedentes 12 abril, 2024
    Los satélites en órbita terrestre baja (LEO) pueden perder su brújula cuando el clima espacial ofrece situaciones inesperadas. El problema afecta a la Estación Espacial Internacional, la estación espacial Tiangong de China y muchos satélites de observación de la Tierra. Los expertos sostienen que esta incertidumbre de posicionamiento aumenta el riesgo de colisiones orbitales peligrosas, […]
    Pablo Javier Piacente