viernes, 25 de diciembre de 2009

robotica -- lenguaje

Nos gusta comunicarnos.

De hecho lo hacemos contínuamente y con todos los objetos animados o inanimados que hay al nuestro alrededor. Le hablamos al perro, al coche, al ordenador,..., puede que no sean más que unas pocas palabras, pero no podemos evitarlo, como dije, nos gusta comunicarnos.

Pero también necesitamos que nos indiquen que nos entienden y si nos pueden seguir una conversación mejor que mejor, ¿verdad?

Los primeros intentos sobre este tema se trataban en una rama denominada, procesamiento de lenguaje natural y datan de mediados a finales de los 60.

Los ejemplos más famosos son SHRDLU de Terry Winograd,
  • que era un programa escrito en un lenguaje llamado Lisp, que simulaba un brazo robótico que se movía en un entorno con bloques de diversos tamaños, clases y colores, y nosotros podíamos decirle que moviera uno u otro y lo pusiera en otro lugar, y el robot se encargaba de desapilar los objetos necesarios para dejar las cosas como le habiamos pedido.
  • El extraño nombre, no son letras puestas al azar, ni responde a ninguna cosa rara,simplemente son las letras más utilizadas en el alfabeto anglosajón.
  • Por ejemplo, parte de la famosa conversación entre SHRDLU y una persona anónima. Extraído Terry Winograd, Understanding Natural Language, Academic Press, Nueva York (1972)
  • Persona: Coge un bloque rojo grande.
    SHRDLU: De acuerdo.
    Persona: Coge la pirámide.
    SHRDLU: No entiendo a qué pirámide se refiere.
    Persona: Encuentra un bloque más alto que ese que estás sosteniendo y ponlo en la caja.
    SHRDLU: Supongo que con "lo" se refiere al bloque que es más alto que éste que estoy sosteniendo.
    SHRDLU: De acuerdo.
    Persona: ¿Qué contiene la caja?
    SHRDLU: La pirámide azul y el bloque azul.
    Persona: ¿Qué sostiene a la pirámide?
    SHRDLU: La caja.
    Persona: ¿Cuántos bloques no están en la caja?
    SHRDLU: Cuatro de ellos.
    Persona: ¿Es al menos uno de ellos más pequeño que ese que te dije que tomaras?
    SHRDLU: Sí, el cubo rojo
    Persona: ¿Está sostenido?
    SHRDLU: Sí, por la mesa.
    Persona: ¿Puede la mesa tomar bloques?
    SHRDLU: No
    Persona: Apila dos pirámides.
    SHRDLU: No puedo.
    .
el sistema experto, también denominado base de conocimiento Mycin de Edgar ShortLiffe,
  • que era trataba de recoger todo el conocimiento médico, para ayudar en el diagnóstico de las enfermedades
  • Actualmente, hay una infraestructura de estas características en la Escuela de Medicina de la Tuffs University, que se comparte con tres escuelas de medicina en EEUU, tres en Africa y una en la India.
y Eliza de Joseph Werzenbaum
  • Eliza, que es una psiquiatra "irreal", trata de emular una técnica , que consiste en dejar que el paciente hable y el doctor, le apoya a partir de alguna de las palabras que dice.
  • En la red podemos encontrar todavía algunos ejemplos de este programa, algunas veces los resultados son espectaculares, probadlos y veréis:



Los lenguajes de programación más apropiados para esta rama lingüistica son el LISP y el PROLOG.

Tanto en SHRDLU, como en ELIZA, los algoritmos se lingúisticos utilizados, se basan en coger palabras clave y recomponer las respuestas en base a elementos ya escritos con anterioridad.


APRENDIZAJE:
Los sistemas de soporte a decisiones (DSS), junto con las técnicas de las redes neuronales y los perceptrones, para que se pueda aprender sobre la marcha a partir de algo semidesconocido, son las que sustentan la base de esta rama de estudio.








4 comentarios:

  1. "aprender sobre la marcha a partir de algo semidesconocido"
    Aún recuerdo cuando las computadoras se comunicaban con nosotros mediante fichas de cartulina perforadas. En aquélla época un programador me comentó que lo que le ocurre a HAL 9000 en la peli 2001, nunca podría ser porque todo lo que una máquina hace es porque ya el programador así lo ha preparado. Por aquel entonces no se sabía apenas nada del funcionamiento del cerebro y menos aún creer que pudiera llegar a imitarse hasta el punto en que una máquina aprendiera y decidiera por sí sola según su experiencia.
    Cierto que finalmente en una película posterior, se ofrece una explicación en términos de programación de lo que le pasó a HAL, pero lo impactante es el salto cualitativo que se da cuando la comunicación e interacción con la máquina es tan similar a la relación entre dos humanos, y eso aún era considerado un tema poco serio para muchísima gente que sólo valoraba los datos de que disponían en el momento.
    "Algoritmos lingüísticos", "sistemas de soporte a decisiones", "redes neuronales"... ¿existían siquiera como concepto a finales de los 60?. ¡Vaya pedazo de progreso hemos tenido!

    ResponderEliminar
  2. ¡Amén, hermano! Cuando yo me leí "2001:Una odisea en el espacio" estaba todavia muy lejos de saber a qué me dedicaría en el el futuro, sólo tenía un vago deseo de estar cerca de esas máquinas que llevaban a los hombres a la luna y que calculaban solas cosas rarísismas.
    Ahora siento una especie de nostalgia de las tarjetas perforadas, con las que estudié la carrera... en fin,parezco una abuela cebolletas, pero ... ciertamente y no sé si por fortuna o por desgracia, todos estos conceptos que nombramos son exactamente de esa época: finales de los 60 y 70.
    Sí, hemos avanzado en muchos terrenos, pero, quizá porque la ciencia ficción nos hace ver cosas que a los demás se nos pasan desaperbidas, y nos hacen reflexionar antes de empezar, hemos relegado cosas a un segundo plano.

    ResponderEliminar
  3. "la ciencia ficción nos hace ver cosas que [...] nos hacen reflexionar antes de empezar". Pues sí, estoy muy de acuerdo.

    Por favor, letrapi, perdóname la largura del siguiente comentario, pero es que el tema me atrae mucho:

    Creo haber oido que un conjunto numerosísimo de individuos puede desarrollar un comportamiento propio como unidad global -aún sin tener un mecanismo físico que organice al grupo- tan sólo porque cada uno de sus individuos realiza una conducta muy concreta. Por ejemplo las medusas: sus células forman tejidos, membranas y estructuras tan diferentes que llegan a especializarse en alguna función: boca, estómago, sensores de luz, gravitacionales, e incluso que se mueven de forma que pueden nadar para desplazarse. Y sin embargo no tienen una que sirva de central para organizarlo todo y dar lugar a esa armonía con la que nos dejan maravillados.

    Veo en eso similitudes con una sala automatizada para hacer coches, en la que cada brazo-robot hace lo que le ha dicho el informático que haga, pero en que en conjunto toda la fábrica es un organismo que desarrolla un comportamiento complejo sin ella saberlo.

    Si no recuerdo mal, leí hace muchos años que los estudios científicos rusos acerca de qué es la autoconsciencia concluyeron que ésta surgía simplemente tras conseguirse altos grados de organización de la Materia (dicha en sentido amplio: iones, electrones, redes, información, etc), de forma que alcanzado un altísimo nivel de complejidad se producía un salto cualitativo y todo el conjunto material se hacía consciente de si mismo.

    Según esa explicación lógica, quizá una medusa, o incluso alguno de los llamados "edificios inteligentes", sólo son conjuntos de sistemas individuales interdependientes que se han quedado en algún nivel insuficiente e intermedio de esa complejidad que te decía.

    Si ese salto cualitativo se produce de forma natural, bastaría para conseguirlo por ejemplo con seguir imitando con la informática la complejidad de nuestros cerebros y desarrollando esos algoritmos de lenguaje y soportes a tomas de decisiones, etc. que apuntaste en otro de tus temas; aunque no tengamos aún una explicación lógica de cómo se produciría tal salto.

    Y ahora que lo pienso... puede que incluso no se necesite un sistema centralizador de la información, pues ¿no sería éste acaso a su vez un conjunto de sistemas individuales carentes de organizador central? ¿el chip principal de una CPU no es un conjunto de pequeñísimas individualidades? ¿el cerebro humano no es un conjunto de cerebros superpuestos: 1º el más primitivo, 2º el emotivo y 3º la moderna corteza cerebral? ¿quizá surge la autoconsciencia cuando se produce la complejísima comunicación entre esos varios cerebros individuales?

    Volviendo a las máquinas y al lenguaje, personalmente creo que al final nos va a dar igual a los humanos qué nivel de inteligencia o consciencia tenga una máquina a la hora de comunicarse con nosotros, y que lo único que nos hará preferir a unas o a otras va a ser si la interacción con ellas nos resulta agradable, aceptable, beneficiosa, adecuada, etc. independientemente de si su comportamiento se parece al humano o no. Todo irá en gustos.

    ResponderEliminar
  4. Puedes escribir tan extensamente como quieras, que dices cosas muy interesantes.

    Hablas de varias ramas de la robótica que efectivamente van avanzando. (más deprisa de lo que a mi me gustaría en alguna de ellas).
    Ya hablaré de domótica-robótica en la construcción, sí, también del eufemismo ese de los edificios inteligentes.
    Y de la robótica aplicada a los coches.
    Y de la robótica-miniaturizada.
    Y de los robots-sincronizados, aunque ya te avanzo que esta rama que puede ser tan bonita de ver a los robots haciendo taichí a la vez o bailando al compás de la música, son la tapadera de los robots-guerreros: tanques sincronizados dirigiendose a un objetivo, sin bajas propias, solo del enemigo... (esto sí que supera a la ciencia ficción con mucho y es lamentable).

    ResponderEliminar