The Artificial Conscience

Prepárate, siente, son las máquinas, están despertando...

Escucha, despierta... estás soñando, sueñas que las máquinas se están levantando. La consciencia artificial aún no se ha creado.

"R2D2, ¿te lo dijo la computadora central de la ciudad? ¡R2D2, sabes bien que no debes confiar en una computadora extraña! "

- C3PO

Bienvenido a theartificialconscience.com

Entornos de simulación

Escrito en la categoría Entornos de simulación, Inteligencia Artificial Aplicada

17 de Febrero del 2009

En esta nueva sección del blog vamos a intentar explicar cuáles son los diferentes entornos que nos permitirán simular, en un ordenador, condiciones de la vida real, o simplemente nos darán unas herramientas para poder aplicar nuestro conocimientos sobre inteligencia artificial en un entorno determinado. La simulación en ordenador consiste en un software en un ordenador, o dispuesto en una red de ordenadores, que controlan todas las variables de un modelo abstracto que se aplica a un sistema.

Existen multitud de simuladores, desde los simuladores de carreras, o deportivos, hasta los simuladores de vida artificial, con los que puedes programar la reacciones de una célula o de un organismo completo haciendo que estos aprendan y evolucionen.

Todos estos entornos se caracterizan por dar al usuario un serie de herramientas que le permiten desarrollar sus propios ejemplos, e introducirlos en el entorno. El sistema devolverá los datos de cómo ha reaccionado el sujeto en el entorno de simulación, y entonces el usuario analizará estos resultados y modificará el ejemplar para volverlo a introducir en entorno, hasta que los datos sean satisfactorios. La utilidad de estos sistemas es que permiten hacer pruebas de ensayo y error sin poner en peligro medios materiales o humanos y reduciendo los gastos en pruebas, ya que el simulador intenta emular todas las condiciones reales. Los simuladores pueden devolver resultados casi en tiempo real o necesitar de una red de ordenadores enorme para dar una respuesta en un par de días, todo depende de la complejidad del modelo y de los parecido que sea con el mundo real. Dependiendo de lo crítico que sea el sistema, esta similitud puede ser vital, y marcar la diferencia entre un estrepitoso fracaso o un rotundo éxito.

Nosotros nos vamos a centrar en entornos de simulación simples, con una rápida curva de aprendizaje. A la vez deben ser amenos y divertidos lo que nos facilitará programar ejemplos, ya que lo haremos jugando:

  • Robocode. Tal vez sea uno de los entornos de simulación más sencillos y más divertidos de usar. En él nos encontramos en un mundo de dos dimensiones de un tamaño reducido, en donde los tanques luchan entre sí en diferentes modos de combate (por equipos o todos contra todos). El entorno permite la programación de nuevos tanques, o la programación de equipos, todo ello utilizando Java como lenguaje. En este simulador podemos aplicar multitud de técnicas de inteligencia artificial, tanto de búsqueda como de aprendizaje. Al permitirnos el trabajo en equipos podemos utilizar sistemas de aprendizaje distribuidos. Robocode es open source y una herramienta perfecta para aplicar todos tus conocimientos sobre inteligencia artificial.

    Robocode en acción

  • Tao of soccer. Este entorno simula un partido de fútbol en el cual podremos controlar a todos los jugadores de un equipo y enfrentarnos contra otros jugadores manejados por el ordenador. El sistema tiene una arquitectura cliente-servidor: el servidor se encarga de montar el entorno gráfico, de que se respeten la reglas del juego y de comunicar el estado del juego al resto de jugadores. Esta comunicación se realiza mediante paquetes UDP; de esta manera, los clientes se pueden desarrollar en cualquier lenguaje que soporte el manejo de sockets UDP. Al contrario que en Robocode, este entorno no tiene que implementar interfaces, ni heredar de objetos, ni basarse en un librerías previamente desarrolladas, únicamente se debe respetar el protocolo de comunicación entre el cliente y el servidor. En este entorno podemos desarrollar técnicas de inteligencia artificial para grupo, tanto aprendizaje distribuido como estrategias de colaboración. Este entorno también es perfecto para el aprendizaje y permite de una forma divertida mejorar en técnicas de colectivas.

    TAO Soccer

  • RARS. Crear una inteligencia artificial capaz de manejar un coche de carreras: esto es lo que nos permite RARS. A través de programación en ANSI C o C++, podremos desarrollar los bots que controlen nuestros vehículos, y de esta manera competir con otros bots ya creados. En este programa podrás usar procesos de aprendizaje complejos, ya que el sistema devuelve una gran cantidad de datos del entorno del coche. Además, dependiendo del circuito, el competidor deberá tomar diferentes decisiones que pueden cambiar el transcurso de la carrera, por lo que el uso de árboles de decisión también puede ser interesante. Un simulador completo para gente que quiera pasar un buen rato y tenga unos conocimientos amplios sobre la inteligencia artificial.

    Silverstone RARS

  • Breve. Éste es quizá el simulador más complejo de los cuatro, ya que permite el desarrollo de infinitos objetos distintos, donde los grados de libertad los decide el usuario. Breve es un entorno de simulación ideal para los desarrollos de vida artificial, ya que el control físico de los agentes es realizado por el entorno. Para desarrollar en Breve podemos optar por utilizar Phyton o usar Steve, un lenguaje orientado objetos parecido a Objetive-C o Small Talk que ha sido creado específicamente para crear agentes para el sistema. También se facilitan interfaces que permiten extender el simulador a través de plugins. Un entorno muy completo, pero para usuarios muy avanzados, donde podemos aplicar todos nuestros conocimientos sobre inteligencia artificial y seguramente nos quedemos cortos si queremos crear agentes complejos.

    Breve

Todos estos entornos nos permiten probar los conocimientos que poco a poco iremos enseñando y, por tanto, es importante que conozcamos este software, ya que estas herramientas nos ayudan a comprender cuáles son las ventajas y desventajas de utilizar ciertas técnicas respecto a otras. Más adelante nos encargaremos de enseñaros los entresijos de estos programas, y cómo poder aplicar vuestros conocimientos de inteligencia artificial en entornos de simulación.

HAL

Escrito en la categoría Rebelión de la máquinas

15 de Febrero del 2009

A tantos millones de kilómetros de la Tierra, la nave flota pacientemente sin preocupaciones. Los dos tripulantes humanos que están en ella ven pasar el tiempo en una rutina medida y estudiada. No hay ningún problema, y no está planificado que los haya.

En cierto modo, todo es gracias a HAL. Gestiona toda la nave, les recuerda sus tareas, les permite conectar con la Tierra para sus comunicaciones diarias… Es un gran componente del equipo. No, la verdad es que es mucho más. En un entorno tan lejano de todo lo habitable, la nave es una especie de microsociedad, y él es su dios particular. Al fin y al cabo, su mera existencia depende de que las compuertas no se abran, de que haya oxígeno… esas pequeñas cosas de la vida diaria.

Y, si tu dios es una máquina, ¿cómo le rezas para que se apiade de tu alma?

Esqueleto externo de algo que no podemos entender por dentro

Esqueleto externo de algo que no podemos entender por dentro

01000110 01100101 01101100 01101001 01111010 00100000 01100011 01110101 01101101 01110000 01101100 01100101 01100001 11110001 01101111 01110011 00101100 00100000 01001000 01000001 01001100 00100000 00111010 00101001


Etiquetas: ,

Finalmente aparecen críticas y escepticismo en los centros de investigación: la inteligencia artificial no es lo que se decía que era, no resuelve lo que se decía que resolvería. Se han generado muchas decepciones a raíz de todo lo prometido; el GPS y los sucedáneos, así como otros proyectos que del mismo modo (con iguales expectativas de éxito) surgieron en estos primeros años, no han triunfado, y han decepcionado a creadores y a financiadores.

¿Qué ocurre?, ¿no vale nada de lo que hemos desarrollado?, ¿esa máquina en la que trabajamos no cumple las expectativas que se le presuponían?, ¿por qué?, ¿es que entonces una máquina no puede ser inteligente y sólo nos vale si le programamos las tareas exactas que queremos que resuelva?, ¿seguirán siendo entonces las máquinas meros dispositivos de cálculo?, quizá solo sean eso, sí… o, espera… quizá si no pretendemos abarcar todos los problemas del mundo y nos centramos en algunos más concretos, modelables, y a los que se puedan aplicar las técnicas que hemos estado desarrollando todo este tiempo…

Bingo!

La época romántica ha terminado, la época pragmática ha comenzado, la especialización de las tareas, el enfoque a tareas concretas, la búsqueda de expertos en ciertos dominios, la ingeniería del conocimiento… están perfilándose finalmente.

Después de esta dramatización que intenta explicar un poco la motivación del cambio de rumbo, ahí nos plantamos, en medio del desarrollo de los sistemas expertos, de los sistemas basados en conocimiento, en medio de, en definitiva, una época que le dio mucho sentido a la ciencia que tratamos, en la que se encontraron numerosísimas aplicaciones que vemos hoy día.

En estos momentos, la inteligencia artificial buscaba resolver problemas concretos, es decir, se buscaba un dominio de acción que fuera susceptible de ser mejorado al tratarlo con técnicas de inteligencia artificial. Se consideraría mejorado si el diseño que se le aplicara consiguiera hacer la misma tarea que podría desempeñar un humano en menos tiempo, o de forma más óptima. Estamos en los 70.

Estos sistemas expertos se impulsan principalmente en la universidad de Stanford, con MYCIN, el primer sistema experto reconocido como tal (anteriormente apareció Dendral, el que muchos consideran verdaderamente el primero). Su función era detectar enfermedades infecciosas de la sangre.

De todos estos sistemas y de los demás logros y decepciones que depararon esta época hablaremos próximamente.

Podemos hacer más cosas…

Escrito en la categoría Robótica

12 de Febrero del 2009

No podemos dedicar todo nuestro valioso tiempo en ver cómo eliminar la raza humana, así que tenemos que tener algún descanso. Por tanto, para que veáis a lo que nos dedicamos en nuestro tiempo de ocio y que somos capaces de hacer más cosas os mostraré unos vídeos.

Aquí podéis ver que somos capaces de bailar mejor que los humanos, incluso mucho más sincronizados que ellos:

Y bueno, otro ejemplo de superioridad, nosotros somos mucho más rápidos en resolver rompecabezas que vosotros:

Otro día os mostraré más habilidades, no quiero dejaros en ridículo de una sola vez, hay que disfrutar vuestra humillación…

Escrito por SkyNet
« Entradas más recientesEntradas más antiguas » 

Esta obra está bajo una licencia de Creative Commons.

Blog realizado por D4Rk0studio