viernes, 8 de agosto de 2008

Computadoras Ubicuas

Gran parte de las personas que escuchan por primera vez el término “nanotecnología” creen que se habla de las técnicas incluidas en el término “microtecnología”, la tecnología usada en la microelectrónica y que ha transformado enormemente la sociedad en las últimas décadas. La relación no es del todo incorrecta, pero no es la más adecuada. La microtecnología es la tecnología que permite fabricar cosas en la escala del micrón. Un micrón es una millonésima de un metro, o, para darse una idea más clara, la milésima parte de un milímetro. Como parte del conocimiento general, se conoce la equivalencia de un metro: más o menos la distancia entre la nariz y la punta de los dedos cuando se extiende del todo un brazo hacia un costado del cuerpo humano. Si se toma una milésima parte de esta longitud, se tiene un milímetro. Un milímetro es muy pequeño, pero todavía es posible verlo. Ahora imagine que se toma un extremo de este milímetro, se lo apoya en la nariz y se lo estira hasta que llegue al extremo de los dedos de la mano que se encuentra en el brazo que se ha extendido. Ahora se vuelve a dividir en mil partes. Se tiene una milésima de la milésima parte de un metro, una longitud llamada micrón. Esta es la escala en la que se trabaja cuando se construyen dispositivos tales como memorias, circuitos lógicos y de computación.

Los dispositivos de memoria y de lógica en venta en 1985 tenían estructuras con componentes de aproximadamente un micrón de ancho. Para 1995, momento de la aparición del procesador Pentium, se habían alcanzado tamaños de más o menos un tercio de micrón, 350 nanómetros. Se trabaja ya en estructuras de 100 nanómetros, es decir, de un décimo de lo que se había logrado en 1985. Un nanómetro es la medida que se obtiene si uno toma un micrón, aplica un extremo sobre la punta de la nariz, lo estira hasta el extremo de los dedos del brazo extendido y lo divide en mil partes. Es una milésima de una millonésima de metro, es decir, una milmillonésima de metro. El nanómetro marca el límite de reducción al que se puede llegar cuando se habla de objetos materiales. En un nanómetro caben entre tres y cinco átomos. Aunque en el universo hay cosas más pequeñas que los átomos, se trata ya de cosas que no se pueden manipular. En la vida cotidiana, los átomos son los ladrillos de construcción más pequeños que se pueden utilizar.

La computación ubicua surge de los estudios de Mark Weiser y su equipo de investigadores de los laboratorios de Xerox en Palo Alto California. En el año 1991 se publicó su artículo “La computadora para el siglo XXI”, ampliamente referenciado por los investigadores en el campo de la interacción persona-computadora. La idea básica consiste en distribuir la capacidad computacional de las computadoras actuales en el contexto donde habitualmente desarrollan sus actividades los seres humanos, mediante computadoras más pequeñas y baratas que, por consiguiente, realizarán tareas más simples, pero que, no solo liberarán de tareas rutinarias, sino que además proporcionarán nuevos momentos computacionales impensables de realizar con las computadoras actuales. Se trata entonces de liberar las tareas rutinarias de las computadoras personales para que el entorno, mediante pequeñas computadoras, adquiera la responsabilidad de actuar de manera inconsciente al usuario. De esta manera se coincide con la tesis de Weiser que afirma: “Las tecnologías que calan más hondo son las que pasan desapercibidas”.

Weiser propone una división de las computadoras ubicuas en marcas, similares a las etiquetas, equipadas con un pequeño procesador e infrarrojos que permiten identificar a la persona que la lleva y, de esta manera, el entorno se pondrá a su servicio. Las tabletas, del tamaño de un folio y que se puede manuscribir sobre ellas, envían los contenidos vía radio y lo que se propone es que sean impersonales y puedan utilizarse allí donde se encuentren. Hoy se asocian a una nueva visión del portátil. Por último, se encuentran las pizarras con la doble función de mostrar información, procedente de una computadora o asistente digital personal, y por supuesto su habitual función de escritura manual.

Según Mark Weiser, durante 30 años la mayor parte del diseño de interfaces ha seguido la línea de la máquina “espectacular”. Su gran ideal es convertir la computadora en algo tan excitante, tan maravilloso, tan interesante de manera que nunca se piense en prescindir de ella. Una línea menos seguida es la que se llama “invisible”, cuyo gran ideal es que la computadora se convierta en algo tan incorporado, tan adaptable, tan natural, que pueda ser usada sin siquiera pensar en ella. Después de las grandes computadoras de tiempo compartido, una para muchos usuarios, y de las computadoras personales, una para cada usuario, las llamadas computadoras ubicuas, muchas para un usuario, se anuncian como el “tercer paradigma” emergente de la computación. Su filosofía es opuesta a la realidad virtual, que trata de “introducir” a la persona dentro de la computadora. En este caso, las computadoras se integran en la vida de las personas, bajo el lema “el mundo no es un escritorio”. El objetivo de tratar de romper con el paradigma de la computadora de escritorio es común a los trabajos sobre computación móvil, ubicua y usable. Todos ellos pretenden que los servicios que proporciona la máquina sean tan móviles como sus usuarios y permitan aprovechar los constantes cambios del contexto en que son usados. Esto puede dar lugar a entornos activos en los que estas computadoras interaccionan entre sí y con el usuario de manera inteligente y no de manera invasiva, como ocurre en los lugares cableados.

La computación ubicua trata de extender la capacidad computacional al entorno del usuario. Permite que: (1) La capacidad de información esté presente en todas partes en forma de pequeños dispositivos muy diversos que permiten interacciones de poca dificultad conectados en red a servidores de información. (2) El diseño y localización de los dispositivos son específicos de la tarea objeto de interacción. (3) La computadora queda relegada a un segundo plano, intentando que resulte “transparente” al usuario (ordenador invisible). (4) La interacción se diluye en el entorno. (5) Forma parte y mejora el mundo real

Se puede decir que la computadora personal, Internet y la World-Wide Web han influido ya en muchos aspectos del mundo de los negocios y hay señales evidentes de una amplia convergencia de industrias enteras como la de los medios de comunicación, entretenimiento, electrónica de consumo, telecomunicaciones, y tecnología de la información. La siguiente ola de la revolución tecnológica afectará mucho más directamente y en todos los aspectos de la vida cotidiana del ser humano.

De forma contraria a lo que las predicciones populares decían, el siglo XXI se caracterizará menos por la colonización de la luna, las ciudades submarinas y los coches de energía nuclear, que por las aplicaciones basadas en tecnologías de lo diminuto y por lo tanto casi invisibles como la biotecnología, la nanotecnología y la microelectrónica. Por supuesto, los avances en la microelectrónica no son nada nuevo. Por el contrario, durante más de 30 años la conocida ley de Moore, según la cual la funcionalidad de un procesador se duplica cada 18 meses, ha demostrado ser cierta. Una mejora similar en prestaciones se aplica también a algunos otros parámetros importantes de la tecnología. Existe certeza de que la tendencia actual continuará durante unos cuantos años más, lo que hace que toda esta área de desarrollo sea tan intrigante. Ahora parece que el futuro próximo estará caracterizado por pequeñas computadoras que se comunican de forma espontánea, que por su pequeño tamaño y por su bajo precio, se integraran en casi todos los objetos cotidianos. La tecnología de la información por lo tanto se volverá ubicua e invadirá todos los aspectos de la vida del ser humano. Los teléfonos móviles con acceso a Internet y los “asistentes personales” que se comunican sin cables con otros dispositivos próximos a ellos son los primeros indicios de la “era post computadora personal” venidera. Al principio, el principal objetivo es permitir el acceso a la información de cualquier tipo desde cualquier lugar y en cualquier momento, lo que evidencia los esfuerzos actuales de la industria por integrar aparatos de información móvil y utilizables en procesos de negocios basados en la Web y escenarios de comercio electrónico. Sin embargo, a largo plazo, esta continua tendencia tecnológica puede dar lugar a la fusión de la computadora con los objetos cotidianos típicos para que se vuelva literalmente invisible.

Guillermo Choque Aspiazu
http://www.eldiario.net/
Julio 21 de 2008

Navegación de Robots Moviles

Los robots son útiles para reproducir ciertas capacidades de los organismos vivos, como son: la exploración y el transporte para los robots móviles y, la asistencia médica y la automatización de procesos industriales para los robots complejos. Existen varios paradigmas de la inteligencia artificial, entre los diferentes tipos de arquitecturas, para el control de la autonomía de agentes robóticos móviles. Por un lado está la navegación enmarcada en el contexto de las arquitecturas reactivas, las cuales se basan en el logro de metas de desplazamiento del robot como una consecuencia de acciones estímulo-respuesta. Generalmente estas arquitecturas están fundadas en modelos de procesamiento de información masivamente paralela, tal como es el caso de las redes neuronales artificiales. Aunque las técnicas reactivas poseen la ventaja de la rapidez de procesamiento de información y la velocidad de reacción, las mismas están limitadas en cuanto a la complejidad de las tareas que el robot pueda abordar debido a que no puede manejar aquellas que requieren planificación.

Por otro lado, se encuentran en el área de sistemas inteligentes, las arquitecturas clásicas, las cuales implican el empleo de técnicas de razonamiento para decidir las acciones del agente robótico con base en un modelo del entorno. En este caso, el procesamiento de la información por parte del agente inteligente se realiza en forma secuencial. Así, el robot actúa operando sobre el ambiente de navegación en función de las modificaciones que se producen en el modelo interno que éste posee del entorno. Estas técnicas clásicas implican esquemas de razonamiento en alto nivel con base en resultados intermedios que emergen de los cambios experimentados en el ambiente de navegación del robot. Este paradigma, si bien permite afrontar requerimientos de desempeño complejos por parte del agente, tiene una velocidad de procesamiento de la información sustancialmente menor que con las técnicas reactivas.

Se define navegación como el método que permite guiar el curso de un robot móvil a través de un entorno con obstáculos. Existen diversos esquemas, pero todos ellos poseen en común el afán por llevar el vehículo a su destino de forma segura. La capacidad de reacción ante situaciones inesperadas debe ser la principal cualidad para desenvolverse, de modo eficaz, en entornos no estructurados. Las tareas involucradas en la navegación de un robot móvil son: la percepción del entorno a través de sus sensores, de modo que le permita crear una abstracción del mundo; la planificación de una trayectoria libre de obstáculos, para alcanzar el punto destino seleccionado; y el guiado del vehículo a través de la referencia construida. De forma simultánea, el vehículo puede interaccionar con ciertos elementos del entorno. Así, se define el concepto de operación como la programación de las herramientas de a bordo que le permiten realizar la tarea especificada.

El robot móvil se caracteriza por realizar una serie de desplazamientos y por llevar a cabo una interacción con distintos elementos de su entorno de trabajo, que implican el cumplimiento de una serie de objetivos impuestos según cierta especificación. Así, formalmente el concepto de misión en el ámbito de los robots móviles, se define como la realización conjunta de una serie de objetivos de navegación y operación. En consecuencia, con estas definiciones, el robot móvil debe poseer una arquitectura que coordine los distintos elementos de a bordo, de forma correcta y eficaz para la realización de una misión. El diseño de esta arquitectura presenta un módulo de control de misión dedicado a coordinar al controlador de desplazamientos con el controlador del elemento que interacciona con el entorno de trabajo. Esta coordinación debe efectuarse de forma perfecta para cumplir los objetivos impuestos por la misión, definida de acuerdo con ciertas especificaciones de entrada. Formalmente, el control de misión debe analizar el problema y encontrar una estrategia para resolverlo, de suerte que el resultado de este análisis será un plan de navegación y otro de operación, los cuales se entregan a los módulos que correspondan.

Un paradigma está constituido por los supuestos teóricos generales, que mediante su aplicación caracterizan el modo de resolver problemas en robótica. Normalmente, el paradigma constituye un enfoque, una forma de abordaje de un determinado problema, el cual se encuentra caracterizado por la utilización de una serie de técnicas orientadas a su solución. Básicamente, las técnicas son los procedimientos o conjuntos de éstos utilizados para resolver clases diferentes clases de problemas que tienen como objetivo obtener un comportamiento determinado para el robot bajo cierto paradigma.

Los paradigmas existentes para la navegación robótica son esencialmente tres: (1) Enfoque deliberativo. Se dice que este enfoque está basado en conocimiento. Es el primer paradigma propuesto para la navegación robótica. Este se basa en una visión introspectiva, es decir, en una observación interior de los propios actos o estados de ánimo o de conciencia, de sobre cómo piensa el ser humano y como toma decisiones. Por ejemplo: si se ve una puerta, se decide pasar a través de ella. (2) Enfoque reactivo. Este enfoque está basado en comportamiento. Este enfoque nace en oposición al enfoque deliberativo y se basa en modelos biológicos y psicológicos para explicar el comportamiento visto en diversos organismos vivos. Con base en un comportamiento complejo se encuentran conductas básicas del tipo “Estímulo entonces Respuesta”. (3) Enfoque híbrido. Conocido como enfoque deliberativo-reactivo. Este enfoque surge a partir de la hibridación de los paradigmas deliberativo y reactivo, ya que estos presentaban por separado diversas falencias. Se intenta tomar así lo mejor de cada paradigma, del comportamiento deliberativo su capacidad para orientarse hacia metas, del comportamiento reactivo, su rápida respuesta y adaptación a los cambios del mundo. Se mezclan las reglas deliberativas y reactivas en dos capas de control ejecutándose en paralelo a diferentes velocidades: Una capa reactiva encargada del control de las acciones de base, tales como, avanzar, evitar obstáculos. Una capa deliberativa encargada de planificar acciones más elaboradas tales como, dirigirse a un sitio preciso, reconocer visualmente marcas y objetos. La información de los sensores es accesible a los módulos de comportamiento, pero también al planificador para la construcción de un modelo del mundo orientado a tareas.

Realizar una tarea de navegación para un robot móvil significa recorrer un camino que lo conduzca desde una posición inicial hasta otra final, pasando por ciertas posiciones intermedias o submetas. El problema de la navegación se divide en las siguientes cuatro etapas: (1) Percepción del mundo. Mediante el uso de sensores externos, creación de un mapa o modelo del entorno donde se desarrollará la tarea de navegación. (2) Planificación de la ruta: Crea una secuencia ordenada de objetivos o submetas que deben ser alcanzadas por el vehículo. Esta secuencia se calcula utilizando el modelo o mapa de entorno, la descripción de la tarea que debe realizar y algún tipo de procedimiento estratégico. (3) Generación del camino. En primer lugar define una función continua que interpola la secuencia de objetivos construida por el planificador. Posteriormente procede a la discretización de la misma a fin de generar el camino. (4) Seguimiento del camino. Efectúa el desplazamiento del vehículo, según el camino generado mediante el adecuado control de los actuadores del vehículo. Estas tareas pueden llevarse a cabo de forma separada, aunque en el orden especificado. La interrelación existente entre cada una de estas tareas conforma la estructura de control de navegación básica en un robot móvil.

Existen dos tipos básicos de enfoques para controlar la navegación de un robot móvil: técnicas globales y locales. En las técnicas globales, como son los métodos geométricos, la programación dinámica o los métodos de campo de potencial se asume totalmente conocida la descripción geométrica del entorno en el que se va a mover el robot. Se trata de métodos potentes y eficaces para generar tanto trayectorias a seguir como secuencias de comandos a ejecutar. Son métodos usados para el control de robots que trabajan en entornos sin ninguna variabilidad y que realizan tareas repetitivas en las que se conocen en todo momento el valor de todas sus variables de estado. Los métodos locales o reactivos, por el contrario, consideran que el robot va a moverse en un entorno no conocido a priori y proporcionan unas conductas estándar para reaccionar ante lecturas de los sensores del robot. Estas conductas son aplicables en gran número de entornos distintos y se suelen usar junto con un control de alto nivel que se encarga de secuenciarlas.

Guillermo Choque Aspiazu
http://www.eldiario.net/
Julio 14 de 2008