jueves, 24 de febrero de 2011

Lógica temporal: la inteligencia de las futuras sondas espaciales.



Es un pequeño paso para la capacidad de cálculo pero un gran salto para los robots “inteligentes”. Un grupo de ingenieros de la Universidad de Southampton (Reino Unido), encabezado por Sandor Veres, ha desarrollado un método para equipar (en principio) las naves espaciales y los satélites con capacidades de razonamiento casi humanas, lo que les permitiría tomar decisiones importantes por sí mismos. El nuevo sistema de control, denominado Sysbrain, permitirá programar los vehículos espaciales en lenguaje natural para que eviten accidentes, arreglen sus fallos, y puede que hasta para que salven la Tierra del impacto de un asteroide, y todo sin que los humanos los guíen paso a paso.

El nuevo sistema se está probando actualmente en el laboratorio usando un grupo de satélites modelo que operan en un entorno que simula las condiciones del espacio. Los modelos “se dan cuenta” de su entorno, pueden prever el futuro probable, realizar planes de actuación y ejecutarlos. Al que esto escribe esto le parece más cercano (por alejado que pueda estar) al razonamiento humano que la capacidad de encontrar una pregunta a una respuesta tirando de bases de datos a gran escala, como hace Watson.

Vamos a explicar un poco en detalle en que se diferencia el funcionamiento de estos sistemas de una instrucción de un videojuego del estilo “si pasa por aquí entonces este soldado sale de aquí y el otro dispara así”. A través de sus sensores el vehículo observa continuamente su entorno, por ejemplo la posición de otros vehículos. El sistema proyecta continuamente sus visión del estado del mundo en cada momento hacia el futuro cercano y “deduce” afirmaciones acerca de lo que está pasando, por ejemplo “ese satélite está en ruta de colisión conmigo”. De la misma forma que los robots de Asimov tenían una serie de leyes grabadas a fuego que no podían violar, estos sistemas tienen preprogramadas unas reglas de comportamiento, por ejemplo “evita colisiones” (los humanos también las tenemos, pero las llamamos instintos). A partir de aquí hacen uso de la inferencia lógica para decidir qué acción tomar.

La capacidad de las máquinas de pensar lógicamente viene de un sistema matemático llamado lógica temporal, cuyas raíces se hunden en el siglo X y las matemáticas persas. Al igual que otros sistemas lógicos, la lógica temporal proporciona un marco en el que representar afirmaciones sobre el mundo en un lenguaje formal y establece reglas de inferencia lógica que pueden ser implementadas en un ordenador. Por ejemplo, si sabemos que una afirmación P (“algo se mueve hacia mi”) implica la consecuencia Q (“habrá una colisión”), entonces si observamos que la afirmación P es cierta realmente, podemos inmediatamente deducir que la afirmación Q también lo es. La lógica temporal tiene la característica añadida de ser capaz de enfrentarse con afirmaciones que pueden cambiar con el tiempo: así, en sistemas más simples la afirmación “algo se mueve hacia mi” o es verdadera o es falsa pero, en lógica temporal, el valor de verdad puede cambiar con el tiempo, dependiendo de otros factores. Esto permite a la máquina explorar secuencias de acontecimientos y las implicaciones de cualquier curso de acción que pueda decidir tomar.

La prevención de colisiones es sólo un ejemplo sencillo de lo que Sysbrain puede permitir que las máquinas hagan. Otro ejemplo en el que están trabajando los técnicos es el caso en el que uno de los impulsores de la nave falle. El sistema detectaría el problema y reconfiguraría sus controles antes de que pudiese ocurrir algo más grave. El sistema lo haría muchísimo más rápido de lo que lo podría hacer cualquier humano, usando una ínfima parte de su capacidad de procesamiento.

Pero la velocidad no es la única ventaja para una nave espacial que puede tomar sus propias decisiones. Cuando una nave está lejos de la Tierra la comunicación con el centro de control tiene un retardo, lo que una misión compleja no puede permitirse. Imaginemos que se desarrollan naves para evitar que los asteroides de determinado tamaño impacten con la Tierra. Si una de ellas operara en las proximidades de Marte y detectase un asteroide rumbo a la Tierra, la alerta tardaría de 8 a 23 minutos sólo en llegar al centro de control; el personal del centro tiene que recibir, comprender, evaluar las opciones posibles, decidir qué hacer y emitir un mensaje que tardará otros de 8 a 23 minutos en llegar a la nave. No es operativo. Una misión como esa sería compleja: seguir el curso del asteroide, contactarlo y obligarlo a cambiar rumbo; algo que no es imposible según ha demostrado el equipo de Veres.

Lo que hace a la nueva tecnología particularmente fácil de usar es el hecho de que usa lenguaje natural para programarla. Se usan de hecho frases en inglés simplificadas, con una estructura determinada y un vocabulario limitado, que el sistema traduce inmediatamente a lenguaje de programación de alto nivel.
Los modelos que están usando Sysbrain de momento sólo operan en el laboratorio. Habrá que probarlos en entornos más complejos antes de instalarlos en un costoso satélite o en una sonda de altísima tecnología. Por ahora el equipo ya está en conversaciones con la NASA y la ESA.

2 comentarios:

Demócrito de Abdera dijo...

Me parece importantísimo lo del lenguaje natural.

Javier Robledano dijo...

¡Qué artículo tan interesante, César! No tenía ni idea. Me parece que abre unas posibilidades asombrosas para la futura exploración espacial. Realmente, estamos viviendo unos tiempos fascinantes...