Si quieres que algo salga bien... Hazlo tu mismo

jueves, 27 de diciembre de 2007

Si quieres que algo salga bien... ¡Rodeate de gente capaz! Si lo haces por ti mismo, esta bien, pero si lo haces con otros sin duda sera mejor

Buscando un refrán en google

Única dirección

miércoles, 19 de diciembre de 2007

Hay cosas que sólo tienen una dirección y no se puede volver atrás sobre ellas. El tiempo es una de esas cosas

... y mientras nadie descubra una nueva teoría física así seguirá.

Why the wrong way is the proper one?

martes, 18 de diciembre de 2007

Tomar de vez en cuando el camino equivocado puede ayudarte a encontrar nuevos caminos y mejores de lo que esperabas.

¿Triángulos?

lunes, 10 de diciembre de 2007

¿Decisiones importantes?

martes, 4 de diciembre de 2007

Hasta la decisión más insignificante el tiempo la puede convertir en la decisión que cambió tu vida.

Reflexionando sobre aquellas cosas que pasan sin importancia, pero nos cambian la vida.

valor de las preguntas y profundidad de las respuestas

jueves, 29 de noviembre de 2007

... damos significado a nuestro mundo con el valor de nuestras preguntas y la profundidad de nuestras respuestas ...

De Emilio. "Para que os quedéis pensando"

A veces veo el futuro

miércoles, 28 de noviembre de 2007

Fue hace ya mucho tiempo en la playa, estábamos en una terraza tomando algo con nuestro amigos y con algún otro desconocido. Aunque apenas nos separaban unos centímetros del resto, sólo eramos capaces de prestarnos atención en uno al otro. Ajenos en nuestra conversación fue cuando ella me dijo que tenía ciertos poderes místicos y que sabía leer la mano. Yo no pude contener mi curiosidad ni mi recelo a pensar que todo aquello eran bobadas y, cómo no, la tente a que me leyera la mano. En apenas 5 minutos y habiendo mirado un poco tres miseras arrugas de mi mano me describió como si me conociera de toda la vida cuando no habían pasado ni dos semanas desde que nos conocimos. No había acabado de leer la mano cuando vio algo que la hizo parar. Al principio no quiso decirme que era, pero al final confeso. Me dijo que algo malo me pasaría entre entre los 25 y los 30 años, que iba a tener una enfermedad y me iba a morir. Esas últimas palabras se la escaparon pero ya no había marcha atrás, lo había dicho. Mi mente estaba ya entonces demasiado confundida para saber si eso era verdad, yo no creía en esas cosas, pero sin saber por qué ella había acertado en todo. Lo único que pude hacer fue pedirla que me explicará como leer las manos. Con un par de conceptos sobre esas tres arrugas de la mano izquierda ya podía aventurarme a leer manos y tenía delante a la persona adecuada. Cogí su mano, observe aquellas arrugas, la mire a los ojos y entonces deje mi mente en blanco y empecé a decir lo primero que se me venia a la cabeza. Al final de la noche no fui yo el que se fue más sorprendido e intrigado de aquella terraza.

Ha pasado el tiempo y aunque todo aquello lo recordaba como una mera anécdota nunca llegue a olvidarlo. Hoy me visto en mi propio funeral, casi no lo cuento. Siempre he sido un chico sano y deportista, y estas cosas no les pasan a la gente como yo. Pero por muy raro que fuera, se que me lo habían advertido. Nada más decirme que iba a morir ella se arrepintió y rectificó diciendo que pasaría una mala racha, que algo muy malo me pasaría pero que saldría adelante, aunque la vida no fuera igual para mí. De todo lo que me dijo aquella noche eso fue lo menos creíble, pero ahora sé que fue lo más acertado.

A largo plazo siempre nos pasan cosas buenas y malas, que me lo digas ahora no es adivinar el futuro.


Agosto del 2001 Octubre del 2007

Elucubraciones doctorales. Capítulo 2

sábado, 24 de noviembre de 2007

Clasificación de textos usando redes neuronales del tipo ART
Como todo ser humano egoista que se precie, durante algunos meses estuve buscando la forma de hacerme rico creando una página web nueva y diferente. Por si acaso algún día me vuelve la tentación no voy a contar de que se trataba pero si os diré que parte de la base consistía en lograr crear un buen clasificador de textos.

Cuando digo un buen clasificador de textos me refiero a una aplicación que fuera capaz de descargarse un texto de internet (o una web) y clasificarla en un grupo, de tal forma que el clasificador crease automáticamete clases (o grupos) con textos de temática similar. Pero la idea no queda ahí, este clasificador debía ser capaz de evolucionar y adaptarse, es decir, de crear o eliminar clases si fuera necesario o modificarlas de forma que se adaptara a las nuevas tendencias de las temáticas. Cualquier persona avispada se habrá dado cuenta que si tienes un conjunto de usuarios que también clasificas entonces les puedes ofrecer textos relevantes a cada tipo de usuario, y pensando un poco más puedes llegar a tener un negocio interesante.

En primer lugar para clasificar un texto es necesario extraer sus propiedades. La opción mas interesante sería obtener el significado del texto, pero este punto creo que se me escapa de las manos, así que es mejor valorar otras opciones como la longitud, las palabras, la frecuencia con que estas se repiten, el idioma, etc. Tal vez la opción más realista sea clasificar el texto en función del significado de las palabras que contiene y la forma en que estas se agrupan o la frecuencia con que se presentan. Una vez que tenemos los parámetros para clasificar hace falta crear el clasificador.

Como dice el título la idea es utilizar una red neuronal ART, pero antes de explicar que es esto y como podría funcionar empezaré explicando a groso modo que es una red neuronal. Básicamente se trata de crear un celebro en el ordenador, y para ello se utiliza un modelo donde la base son neuronas interconectadas que en función de los estímulos eléctricos de entrada emiten uno de salida. Además de eso, las conexiones no son iguales y en cierto modo se modifica la señal de entrada para cada neurona. Partiendo de estas ideas se puede simular algo parecido a un celebro con un ordenador, con ciertas limitaciones en cuanto a la cantidad de conexiones, el número de neuronas y los ciclos que se producen al interconectar las neuronas. Por tanto, de forma similar al celebro, estas redes son una buena herramienta para crear asociaciones, o lo que es lo mismo, clasificar elementos.

El esquema genérico de una red de neuronas es el siguiente:

donde los valores de salida de cada neurona son una función de sus entradas.

Las redes ART son un modelo de redes de neuronas en los que se ha aplicado la teoría de resonancia adaptativa, o dicho de otra forma, es un modelo de red de neuronas capaz de aprender nuevos patrones y de retener los modelos aprendidos. Con este tipo de red se puede realizar una clasificación de textos donde se aprendan nuevos patrones de estos textos y a su vez también evolucionen los patrones antiguos para poder seguir siendo bien clasificados.

Aunque estas redes funcionan bien el principal problema es ajustar los parámetros que discriminan cuando unos datos de entrada son de un patrón ya existente o se trata de uno nuevo. Además, decidir si un texto ha sido bien o mal clasificado es un factor subjetivo que hace imposible establecer una buena unidad de medida para determinar que red es mejor que otra. Y por si fuera poco, cuando se trata de clasificar textos se necesita realizar un preprocesado de esos textos para obtener las características relevantes para su clasificación, lo cuál puede ser una tarea muy laboriosa, mucho más que crear la red que es la parte interesante del asunto.

NetLogo

miércoles, 21 de noviembre de 2007

NetLogo es una aplicación multiplataforma, hecha en java, para la programación de modelos multiagente. No me ha dado tiempo a verla bien pero si he visto algunos de los modelos y me han gustado mucho. De todos los ejemplos de sistemas de agentes me he ido a buscar, en primer el lugar, los de las hormigas por ser unos animales que me llaman mucho la atención y luego otros grupos de animales sociales. Es increíblecomportamiento tan complejo que se puede obtener con unas reglas muy sencillas. En la página hay varios modelos interesantes que voy a atreverme a explicar:

¿cómo logran las hormigas trazar el camino de menor distancia entre la comida y el hormiguero?

Aunque pueda parecer simple porque lo vemos desde una perspectiva superior el problema no lo es. Imagínate que quieres ir de Madrid a Barcelona (dos ciudades separas por más de 500km), ¿serías capaz de ir en línea recta sin ayuda de una brújula y un mapa? Las hormigas logran hacerlo con unas sencillas reglas. En primer lugar se mueven aleatoriamente dejando un rastro de feromonas para saber por donde han pasado, cuando encuentran la comida vuelven al hormiguero por el camino que habían marcado pero esta vez dejando un rastro de que por ese camino hay comida. El resto de hormigas se enteran de que hay comida y siguen ese rastro con cierta aleatoriedad, sin hacer mucho caso y dejado su propio rastro para evitar perderlo ya que los rastros van desapareciendo con el tiempo. Y al final, tras pasar muchas hormigas logran trazar la distancia más corta entre el hormiguero y la comida. Un ejemplo de este comportamiento lo podéis ver en en el modelo llamado ant lines.

Además las hormigas en caso de tener varias fuentes de alimentos, gracias al comportamiento anterior también son capaces de primero recoger el alimento que más cerca se encuentre. Otro ejemplo en el modelo llamado ants.

¿Cómo apilar elemento dispersos en el menor número de grupos posibles de forma totalmente distribuida? O cómo las termitas son capaces de dejar en montones los trozos de madera.

Pues para ello cada termita utiliza tres reglas: si tengo delante madera y no llevo madera cojo el trozo de madera, si tengo delante madera y llevo madera suelto el trozo de madera, si no tengo delante madera me muevo aleatoriamente. Y con estas sencillas reglas se apilan los trozos de madera, sino mirarlo en el modelo de las termitas.

¿Por qué los pájaros se desplazan en bandadas?

Aunque esto también se debe a que al volar en formación los pájaros necesitan menos energía para volar, por temas de aerodinámica en los que no voy a entrar, las reglas que sigue cada pájaro son muy simples: primero continuar el vuelo, si esta muy cerca de otro pájaro alejarse un poco e intentar acercarse siempre al centro de los pájaros. Tocando un poco los parámetros del modelo de pájaros se puede apreciar bien este comportamiento.

En la web tenéis un montón de modelos que me gustaría ver algún día.

no pienses, ve, triunfa y vuelve

viernes, 16 de noviembre de 2007

Mientras los tímidos se lo piensan los valientes van, triunfan y vuelven

Vía Cristian, que ya no recuerda ni donde lo leyó.

momentos lúcidos

lunes, 5 de noviembre de 2007

yo no escribo bien, pero a veces tengo frases lúcidas

Hablando con more. Todos tenemos momentos lúcidos

Nunca se pierde todo

sábado, 3 de noviembre de 2007

No se puede perder lo que nunca se tuvo, ni aquello que nos hace ser lo que somos

Por un mechón de pelo...

preguntas y respuestas

jueves, 1 de noviembre de 2007

puedo comprender que dejes una pregunta sin respuesta, pero me preocupa cuando me das una respuesta a una pregunta que no he hecho

A una fan...

Es más lista que tú

miércoles, 31 de octubre de 2007

No es mas lista que yo, es que a mi no me gusta pensar.

Fernando Alonso (el amigo, no el piloto)

Sobre la estrategia del ataque

Es mejor conquistar un estado que destruirlo.
Es mejor tomar todo un ejército que destruirlo.
Es mejor tomar todo un batallón que destruirlo.
Es mejor tomar toda una compañía que destruirla.
Es mejor tomar todo un pelotón que destruirlo.
Por tanto, un centenar de victorias en un centenar de batallas no es lo más hábil.
Lo más hábil es someter al ejército contrario sin batalla.

Elucubraciones doctorales. Capítulo 1

martes, 30 de octubre de 2007

Optimización de funciones computacionales usando conceptos de vida artificial

En este primer capítulo de mis ideas alocadas comentaré una de las primeras ideas que me vinieron a la mente en medio de una clase y que pensé que podría ser increíblemente útil. Desgraciadamente antes de que acabará la clase el profesor hizo algunos comentarios que me hundieron en la miseria y deje la idea por imposible. Pero ahí sigue la idea.

Para empezar voy a explicar un poco lo que es la vida artificial, que básicamente se resume en jugar a ser dios y crear vida, de ahí el termino "artificial". Pero, ¿qué es la vida? o mejor dicho ¿qué es un ser vivo? Existen multitud de definiciones y aún hay gente que sigue discutiendo por definir el concepto de vida. A mi me gusta la definición que dice que un ser vivo es algo que se opone a la segunda ley de la termodinámica, pero me voy a quedar con la que me explicaron de pequeño en el colegio: "los seres vivos nacen, crecen, se relacionan con el entorno, se reproducen y mueren" a lo que voy a añadir el término de evolución, porque los seres vivos evolucionan. Y por si alguien es seguidor de la teoría del creacionismo o similar, por favor que se lea un maravilloso libro que escribió Charles Darwin: El origen de las especies (1859, On the Origin of Species by Means of Natural Selection, or the Preservation of Favoured Races in the Struggle for Life) (Texto íntegro en Wikisource).

Partiendo de esta definición de vida voy a contar una historia, la historia de un biólogo, Thomas S. Ray, que se presento a una conferencia de inteligencia artificial. El primer año se rieron de él por proponer la posibilidad de crear vida en el ordenador, el segundo año no tuvieron otra cosa que hacer sino asombrarse de lo que Thomas había conseguido. Como dice él: "Jugué a ser Dios y creé la vida en mi computadora". Y ¿cómo lo hizo? En primer lugar decidió lo que iba a ser el mundo de la vida que iba a crear, como se trataba de crear vida en el ordenador no hay mejor mundo que la memoría, o al menos, una parte de ella. Lo segundo que hizo fue crear un pseudo lenguaje de programación un poco más avanzado del lenguaje ensamblador pero lejos del los lenguajes de alto nivel que sería utilizado para ejecutar un código capaz de autoreplicarse en la memoria, en el universo. En este punto merece la pena mencionar la necesidad de crear un nuevo lenguaje, ya que los lenguajes actuales contienen bucles y estos bucles cuando se dejan a manos del azar y el ordenador es muy, pero muy fácil que aparezcan bucles infinitos (bucles que nunca acaban) y esto es mortal para cualquier programa. De ahí la necesidad de intentar mitigar un poco este problema con un nuevo lenguaje que hiciera más difícil estos bucles. El siguiente paso fue crear un programa capaz de autoreplicarse en memoria. Para que el programa no se replicara y fuera siempre igual añadió mutación para ver si se generaban nuevos programas capaces de replicarse pero diferentes del original. Por último determino la forma de morir de los individuos, recordar que morir es un instrumento esencial para que las especies evolucionen. Así pues, los individuos que más tiempo llevaban en memoria dejaban de ejecutarse y morían, además los individuos que hacían "cosas raras" como ejecutar instrucciones determinadas cuando no debían eran penalizados y morían antes.

Con todo listo Thomas lanzo su experimento y se puso a observar. Lo primero que vio aparecer fueron los parásitos, individuos que se aprovechaban de los huéspedes para replicarse. Luego los huéspedes crearon mecanismos para defenderse, en concreto dejaban que el parásito se replicase aprovechándose de ellos pero luego proporcionaban información falsa para que el parásito replicase al huésped y no a si mismo. Y entonces los parásitos desaparecieron y los huéspedes empezaron a cooperar unos con otros creando comunidad para replicarse, era el principio de una sociedad. Pero como en toda sociedad, siempre tiene que haber parásitos y estos volvieron a aparecer. A parir de aquí la evolución se había vuelto tan loca que Thomas decidió eliminar la mutación para poder observar a los individuos. Sin la mutación Thomas pensó que no aparecerían individuos nuevos, pero sorprendentemente sí seguían apareciendo individuos nuevos distintos de sus progenitores. Fue entonces cuando descubrió que había aparecido la reproducción sexual en el universo que había creado.

Por si alguien tiene más interés en la vida artificial que creo Thomas existe un software desarrollado por el mismo llamado "Tierra Net" que se ejecuta de forma distribuida y aún sigue generando individuos nuevos.

Y cómo encaja todo esto en mi idea de optimización de funciones, pues bien, no solo apareció la reproducción sexual en el universo de Thomas, sino que también se crearon individuos capaces de replicarse con un número de instrucciones mucho menor del que Thomas había diseñado en un principio. Esto podría parecer una memez porque Thomas no creo un programa optimizado, pero cuando se le propuso a un grupo de estudiantes que crearán ellos individuos capaces de replicarse con el menor número de instrucciones posibles, ninguno fue capaz de aproximarse a lo que el universo de Y cómo encaja todo esto en mi idea de optimización de funciones, pues bien, no solo apareció la reproducción sexual en el universo de Thomas, sino que también se crearon individuos capaces de replicarse con un número de instrucciones mucho menor del que Thomas había diseñado en un principio. Esto podría parecer una memez porque ThomasThomas había creado. En este punto podría decirse que la evolución en la vida artificial supera la inteligencia humana en lo referente a crear individuos que se autorepliquen.

Partiendo de esta base por qué no aprovecharse de que la vida artificial es capaz de optimizar una función para crear nuevas funciones que desarrollen su cometido mucho más rápido. Me parece un tema especialmente interesante para cualquier aplicación de tiempo real donde una fracción de segundo pueda suponer una diferencia entre el éxito o el fracaso, además es mucho más fácil crear un código que funcione y que luego el ordenador optimice a crearlo directamente optimizado. Como dije antes, ningún programa creado por los estudiantes fue más óptimo que lo que se creo en el universo de Thomas. Pero no todo es tan bonito como parece, cuando dije que los comentarios del profesor me hundieron en la miseria fue porque aunque los científicos se entusiasmaron mucho con los resultados de Thomas nadie ha sido capaz de extrapolar los resultados a aplicaciones que no fueran una mera simulación de un universo virtual.

¿Cuales son los problemas que plantea esta idea?
  • Crear un lenguaje más complicado que el de Thomas con toda las potencia de los lenguajes actuales pero con las ventajas del lenguaje que creo Thomas. Esto es casi imposible y tal vez resultaría más fácil hacer un programa traductor, pero entonces puede que en la traducción se perdiera la optimización conseguida.
  • Añadir la función a optimizar al código capaz de replicarse. En este punto se pueden tener esperanzas porque en lugar de que las instrucciones se ejecuten una en cada ciclo y se den los mismos ciclos de computadora a todos los individuos se podría utilizar el tiempo que la función tarda en realizar su cometido para determinar cuanto tiempo de reproducción doy a cada individuo. De forma que a una función más optimizada se le dan más ciclos para que pueda replicarse, aún así el código para replicarse debería también replicar la función.
  • En caso de conseguir el punto anterior habría que tener en cuenta también que la mutación es parte del universo y esta afectaría a las funciones y estas podría dejar de realizar su cometido de forma eficaz y empezar a hacer cosas extrañas. Una solución sería penalizar a estos individuos pero entonces es posible que no hay evolución, todo sería probar.
  • Con todas las restricciones anteriores, si todo funcionara sin problemas entonces a lo mejor la reproducción sexual no sería necesaria en este universo y puede que no apareciera, con todas las implicaciones que esto supone en la evolución. Una solución sería que los primeros individuos si contase con reproducción sexual.
  • Y lo peor de todo es que si todo acaba funcionando puede que lo único que haya conseguido es reinventar la programación genética pero de una forma más sofisticada.

Elucubraciones doctorales. Capítulo 0

viernes, 26 de octubre de 2007

Como antesala al futuro que se me plantea, por la consecuencia intrínseca de los insensatos e irreflexivos actos cometidos durante un trastornado verano, me veo en la obligación de liberar a mi cerebro con el fin de divagar sobre la posible temática que compondrá lo que transcurrido el tiempo puede que nombre como mi tesis doctoral. Por ello, a partir de hoy y sin desmerecer la destreza y aptitud de las pocas mentes que leen asiduamente este indescriptible blog, intentaré exponer de la forma más complicada y enrevesada que conozco las ideas y conceptos que fluyan en el interior de mi cabeza.

El objetivo de estas "elucubraciones doctorales" es dar a conocer las ideas que se me han ido ocurriendo sobre las que de alguna forma estaría interesando en trabajar y desarrollar para elaborar una tesis doctoral, o al menos perder el tiempo en algo que me entretenga y, a priori, me guste. Bueno, para que os voy a engañar, aún no me planteo si haré una tesis doctoral o no, pero los temas que trataré son ideas que se me han ido ocurriendo en diferentes momentos de mi vida y son cosas sobre las que me gustaría, al menos, pararme a reflexionar. Y aunque no se entienda nada de lo que diga por lo concreto que es contenido que voy a tratar cualquier aportación en forma de idea o comentario será bien recibida. En cualquier caso intentaré exponer algunos conceptos básicos de las ramas de la inteligencia artificial que más me atraen para que se pueda entender más o menos mi idea y como puede suponer un posible avance en el campo.

Principios básicos

martes, 23 de octubre de 2007

  1. Todo lo que tiene un principio tiene un final.
  2. Para terminar algo, primero hay que empezarlo.
  3. Calma, constancia y perseverancia. Al final todo llega.
  4. Lo único imposible es lo que no se intenta.
  5. No preguntes algo si puede que no te guste la respuesta.
  6. Piensa siempre en positivo y obtendrás resultados positivos. Olvida lo negativo.
  7. Siempre luchar, nunca rendirse. Aunque todo parezca perdido siempre hay una opción más.
  8. No esperes una segunda oportunidad, aprovecha la primera.
  9. El pasado no se puede cambiar, piensa en el futuro.
  10. No pienses lo que vas a decir, pero piensa a ver a quién se lo dices.
  11. Arrepentirse no es una opción, aceptar la realidad sí.
  12. Aprende de los errores, no te arrepientas de aprender.
  13. La única opinión que cuenta es la tuya.
  14. Los sueños no son comparables con la realidad.
  15. Nunca podrás saberlo todo. Realmente lo que sabes es insignificante.
  16. Tarde o temprano siempre se comete algún error.
  17. Cuando buscas un problema, primero fíjate en ti mismo.
  18. Pensar dos veces la decisión que hay que tomar es una perdida de tiempo que puede hacernos perder la capacidad de decisión.
  19. Sólo conocemos nuestros propios límites cuando los sobrepasamos.
  20. Los únicos secretos posibles son los que no existen.
  21. Piensa por ti mismo.
  22. El que no arriesga no gana nada.
  23. El único miedo que hay que tener es el miedo al propio miedo.
  24. La suerte no existe, pero si se busca es posible encontrarla.
  25. Todo es relativo, depende de cada punto de vista.
  26. Siempre falta algo o hay algo que desconocemos...
  27. Tener principios no sirve para nada.


0. Jorge

Runbot

domingo, 14 de octubre de 2007



Desde que estudié las redes de neuronas siempre me han parecido muy útiles y el día que me pusieron a cacharrear con los lego mindstorms lo primero que pensé fue en hacer un robot que aprendiera a andar. Pero como me pasa siempre alguien se me había adelantado.

Runbot es un robót de unos 23 cm de altura diseñado por unos científicos del MIT capaz de aprender a subir una rampa y, además, es el robot bípedo más rápido del mundo: 3,4 zancadas por segundo. El secreto del robot reside en un diseño muy simple que intenta imitar la forma de caminar de los humanos. Además esta dotado de un sensor infrarrojo que le permite conocer la inclinación del suelo. Es un poco diferente al robot que yo había pensando, pero aún así me resulta impresionante como es capaz de aprender a no caerse tras apenas 3 intentos y de aumentar su velocidad.


Fuentes:

Confía

La ignorancia engendra más confianza que el conocimiento

Charles Darwin

Un anuncio un poco caro

jueves, 6 de septiembre de 2007

¿Héroes?

miércoles, 5 de septiembre de 2007

Los verdaderos héroes nunca quieren serlo, y son elegidos en contra de su voluntad.

Croc. Dedicado al espíritu del jueves.

Las cucarachas se robotizan...

lunes, 3 de septiembre de 2007

...o mejor dicho los robots se cucarachizan.

Leo en Tendencias 21 que un grupo de científicos minirobot (InsBot) capaz de infiltrarse en una colonia de cucarachas sin llamar la atención. Como veis en la foto el robot poco se parece simple vista a una cucaracha, sin embargo, a ojos de una cucaracha el robot es otra cucaracha. Sus movimientos, su olor y su patrón de comportamiento ha sido diseñado para que logre pasar desapercibido entre sus "hermanas cucarachas".

Pero el estudio de este equipo de científicos no se queda ahí, infiltrar el robot es solo el primer paso. El siguiente es realizar un estudio de sociedad mixtas de animales y agentes artificiales para poder desarrollar modelos y herramientas para dichas sociedades. Una vez se obtengan dichos modelos se intentará desarrollar métodos para alterar el comportamiento de la sociedad y así poder controlarla. Y en un futuro algo más lejano intentar llevar las técnicas aprendidas a otros animales y a las plantas.

Más información en:


[atención reflexión mental...]

En un momento de reflexión se me ocurre que si yo fuera un extraterrestre y quisiera invadir un planeta o destruirlo un buen método puede ser infiltrar a seres que nos imiten y se hagan control, o nos destruyan . . .

[Actualización] El proyecto terminó en Agosto del 2005 y no parece haber constancia de más logros que el infiltrar al robot. (esto me pasa por no revisar mis fuentes)

Roomba, Scooba, Dirt dog & Verro


Roomba, Scooba, Dirt dog, Verro son cuatro de los robots de la empresa iRobot encargados de la limpieza de superficies. En concreto Roomba se encarga de aspirar el suelo y Scooba de fregarlo, mientras que Dirt dog esta más orientado a limpiar suelos de industrias y Verro de la limpieza del fondo de la piscina. Hacen todo el trabajo ellos solitos y según leo en Xataka parece ser que lo hacen bastante bien. ¿Quien no querría tener uno de estos?

Dejando el tema de que voy a terminar por comprarme uno de estos cuando me toca limpiar el suelo, lo que me ha llamado la atención de estos robots es que usan inteligencia artificial, lo cual es una excusa perfecta para hacer marketing. Pero no hay que olvidar que son robots y que su éxito también se debe de la parte robótica, de la que no voy a hablar porque mis conocimientos no son tan amplios.

¿y donde esta la parte inteligente de estos robots?: ¿en qué saben volver a la base a recargarse? , ¿que saben que zonas están más sucias?, ¿que sabe no caerse por las escaleras y no chocar con las paredes? ¿en que esquivan muebles? pues nada de eso, todas esas cosas se hacen con sensores y algoritmos "sencillos", la inteligencia está en ser capaz de abarcar toda una superficie para limpiarla (un pequeño matiz, Verro limpia también las paredes de la piscina, pero en el fondo esto no es más que una superficie, es decir, un plano, igual que el suelo). Si bien es cierto que se esta investigando mucho en el tema de recorrer edificios y crear mapas, en este caso el robot se basa en un algoritmo que intenta abarcar una superficie. Y cómo se hace un algoritmo capaz de recorrer una superficie, pues si esta es cuadrada es bastante fácil, pero la cosa se complica si la superficie no es cuadrada y encima hay muebles de por medio, paredes, escaleras, etc...

Para resolver este problema se utiliza la programación genética, que no es más que un programa haciendo otros "programas" para resolver un problema. En primer lugar se definen una serie de funciones que la programación genética puede utilizar pare resolver el problema, en el caso de estos robots se podrían usar las siguientes funciones:

  • de movimiento:
    • avanzar X
    • retroceder X
    • girar X grados

  • de los sensores:
    • hay un obstáculo delante, a la derecha, izquierda, etc
    • hay un hueco delante, a la derecha, izquierda, etc
    • cuanta suciedad hay delante, detras, etc

  • condicionales:
    • si función A es [operador condicional > < >= <= =] funcion B entonces funcion C, sino función D

  • bucles:
    • repetir función A X veces
Y otras muchas que se les pudieron ocurrir a los ingenieros. Una vez definidas las funciones se preparan los escenarios, es decir , se crean habitaciones con diferentes elementos de la vida cotidiana donde el robot va a tener que limpiar. Por supuesto todos estos escenarios son simulados y en ello se se ha colocado basura que el robot debe limpiar.

Con esto ya tenemos nuestro robot listo para aprender a limpiar, o más bien a recorrer una habitación sin dejar un solo rincón. La programación genética se encargará de crear programas de forma aleatoria y de evaluarlos en los escenarios que hemos preparado, con ello se hará una idea cuales son los programas que mejor limpian y a partir de estos programas se crearan programas nuevos que seguramente sean más complejos que los primeros y más eficientes en su tarea.

Evidentemente esto no es coser y cantar y seguramente haya hecho falta probar con diferentes funciones y con un gran número de escenarios muy variados para conseguir un producto que pueda llegar al consumidor. Además el programa final, el mejor que haya conseguido la programación genética después de un buen rato funcionando, habrá sido evaluado y retocado por un humano para simplificarlo y corregir los defectos observados.

Tenéis más información de los cuatro robots en la sección de cleaning robots de iRobot, junto con algunos vídeos.

...y hasta se pueden programar para que limpien la casa cuando no estamos, son una maravilla.

Celtas Cortos - La senda del tiempo

martes, 28 de agosto de 2007

Una introducción a la Singularidad

viernes, 24 de agosto de 2007

Emilio me pasa un texto que se llama "Una introducción a la Singularidad" por Eliezer S. Yudkowsky. Os recomiendo bastante que lo leáis y para los más vagos hago un resumen de lo que me ha gustado más.

El texto plantea una singularidad en la inteligencia humana, es decir, que va a llegar un momento en el que la inteligencia humana de deje de crecer. La evolución ya no será capaz de hacernos más listos, al igual que pasa con las computadoras, que llegará un momento en el que el límite físico de los materiales no nos permitan construir procesadores más veloces y haya que buscar otras alternativas (como los procesados multinúcleo y la paralelización). Ante este hecho se plantea la posibilidad de crear mediante hardware un "cerebro" que sea más rápido que el nuestro. A este cerebro artificial se le introducirán técnicas de inteligencia artificial (¿algún tipo de red de neuronas, tal vez?) para que sea capaz de aprender y que pueda llegar en algún momento a mejorarse a sí mismo.

La segunda mitad del texto me parece más aburrida ya que se mete en temas de nanotecnología para imitar al cerebro y en como representar el proceso de muerte de las neuronas (y su reemplazo para crear seres inmortales super listos que puedan decidir si vivir o morir, los Amish).

Bueno, ahora voy a ofrecer mi punto de vista. El texto comienza diciendo que los ordenadores actuales son capaces de realizar más cálculos por segundo que el cerebro humano, lo cuál hasta cierto punto es cierto. Si intentas hacer una división, o mejor, una raíz cúbica seguro que tardas menos con una simple calculadora. También hay estudios que hablan de que el ojo humano solo tienen una resolución de un megapixel o que solo somos capaces de prestar atención a 4 objetos simultáneamente. También se dice que los hombres no somos capaces de hacer dos cosas a la vez... (lo cual no estoy de acuerdo porque somos capaces de hacer 2: lo que estamos haciendo y pensar en lo que siempre pensamos). Pero dejando de lado las discursiones, lo cierto es que apenas conocemos nuestro cerebro y ni siquiera usamos un 10% del mismo (o era un 1%, no lo recuerdo ahora mismo). Y lo que es más sorprendente, tampoco somos capaces de simularlo con los ordenadores actuales. Como bien dice el texto, el cerebro tiene 40 mil millones de neuronas y 100 billones de sinapsis, lo cual es una burrada para simular (casi es más fácil poner a resolverse el Eternity II) y mucho más complicado de crear mediante hardware, aunque se plantean algunas posibilidades usando nanotecnología y cristales.

Dejando todo lo anterior de lado me quedo con una paradoja del texto (copio la parte a la que me refiero):
Una civilización basada en una inteligencia más lista o más sabia o más creativa es imposible de imaginar, aún como ficción. Usted no puede escribir un cuento en el que uno de los personajes sea más listo que usted; por definición, si usted supiera lo que ese personaje haría, usted sería tan listo como él. Si la habilidad humana de considerar procesos abstractos en general es lo más lejos a lo que puede llegar cualquier inteligencia concebible, entonces una inteligencia más lista simplemente sería capaz de resolver problemas más rápido, más directamente, más elegantemente, quizás con soluciones bellamente multifacéticas, a la vez que obvias en retrospectiva (pero seguirían siendo soluciones a la misma clase de problemas que planteamos nosotros).

y digo yo, si no podemos escribir un cuento donde los personajes sean más listos que nosotros, ¿cómo vamos a crear una inteligencia que sea más lista que la nuestra?

Para mi la única respuesta a esa pregunta pasar por crear un ambiente controlado donde pueda aparecer vida de forma más o menos espontanea, un tipo de vida que se nos escapa a la imaginación, y que en ese tipo de vida aparezca inteligencia (casi por arte de magia).

Gracias Emilio

SIGGRAPH 2007 "Escalado de imágenes sin perdida"

Lo he visto en mil sitios no pensaba decir nada, pero si Víctor dice que es digno de mi blog tengo que ponerlo.

SigGraph es un grupo con interés en infografía o computación gráfica de la ACM, también es el nombre de la feria más importante de diseño por ordenador. En la feria de este año parece ser que ha llamado la atención un novedoso método para escalar imágenes. La técnica se basa en buscar caminos de píxeles que son menos relevantes en la imagen para eliminarlos y así poder reducir el tamaño de la imagen, o repetirlos si lo que se quiere es agrandarla. En el vídeo se ve mucho mejor todo esto (atención a cuando elimina a una persona de la foto, los artistas del photoshop seguros que están encantados con estas cosas):





Hay muchos algoritmos para agrandar y reducir imágenes, tal vez menos impresionantes que el que acabáis de ver, pero me gustaría destacar uno. Como ya mencione cuando hable de fractales, estos podían utilizarse para comprimir imágenes con perdida (como el jpg). Esta técnica para comprimir imágenes se basa en los atractores de punto fijo, es decir, en sistemas dinámicos que independientemente del estado inicial y que tras un número de iteraciones llegan a una situación estable de la que ya no salen. La forma en la que se aplica esto para comprimir imágenes es la siguiente. Primero se divide la imagen en partes y, después, para cada parte se busca otra a partir de la que se pueda obtener con una simple operación matemática del tipo y = a·x+b. Finalmente se guardan las operaciones matemáticas y las partes sobre las que se aplican para poder volver a obtener luego la imagen original. Al haber conseguido fórmulas matemáticas que forman "el atractor de la imagen" podemos utilizarlas a "cualquier escala", es decir, no es necesario que las zonas en las que se dividió la imagen tengan el mismo tamaño que las originales y podemos hacerlas más pequeñas o más grandes para conseguir una nueva imagen de un tamaño distinto a la original. Evidentemente esto tiene sus limitaciones porque para conseguir las fórmulas matemáticas no hemos utilizado una imagen con infinito grado de detalle, pero hasta cierto punto esta técnica es interesante, sobre todo cuando se trata de imágenes de objetos naturales que se pueden considerar fractales, cómo los árboles, o pseudofractales, como las nubes.

Viento en popa

No hay viento favorable para el que no sabe a dónde va

Séneca

Cómo quitarse unas esposas

miércoles, 22 de agosto de 2007


Unlock Handcuffs With A Bobby Pin! Trick Revealed! - video powered by Metacafe



Unlock Plastic Handcuffs! Police Style! - These bloopers are hilarious


Ambos vídeos son del mismo usuario de Metacafe, Kipkay.



... y si te quieres aficionar a abrir cerraduras, échale un vistazo a P1nCh1T0s T34M, tienen unos videos y textos muy interesantes.

Árboles fractales

Hace unos años tuve que crear un fractal y me dio por hacer un árbol, el resultado fue siguiente:



La forma de hacerlo es bastante sencilla, básicamente se coge un patrón simple y se va copiando a escalas más pequeñas. Lo único que hay que hacer para darle un efecto más "natural" o más "realista" es añadir algo de aleatoriedad en cada copia. En la siguiente imagen se aprecia mejor el proceso:




Hace unas semanas me dio por intentar volver a hacer un árbol, pero esta vez tenia que parecer más natural, al menos en la forma (no quería entretenerme mucho con los colores, la iluminación y las texturas). El resultado es este:



Si queréis os podéis descargar el código fuente, esta hecho para ser renderizado con POV-Ray. Y ya de paso podéis echar un vistazo al Hall of Fame de la página del POV-Ray, es bastante impresionante.

Aterriza como puedas

lunes, 20 de agosto de 2007

Yo me quedo con el último... pero aquí van unos cuantos.

Impresionante aterrizaje en la isla de St. Marteen:


Vía Microsiervos.Otro aterrizaje en St. Marteen.

Aterrizaje sin ruedas.

Vía Meneame

En un portaaviones... vaya frenada...


En un portaviones pero esta vez aterrizando en vertical...


En el sofá de tu casa...

Fractal

La palabra fractal aparecio en 1975, propuesta por el matemático Benoît Mandelbrot. En sus propias palabras:

Quería recoger la impresión de una piedra que golpeas, y se fractura. De ese fractus latín surgió el fractal. La terminación se debió a que quería que funcionara en inglés y francés.
El objetivo de los fractales fue intentar representar las figuras geométricas de la naturaleza que la geometría clásica, euclidiana, era incapaz de abordar. En contraposición a la geometría euclidiana, donde todos los elementos siguen unas bases matemáticas bien definidas, la geometría fractal se presenta como un modelo donde se pretender romper la armonía de los elementos y donde se busca la regularidad en las relaciones entre un objeto y sus partes a diferentes escalas. Es decir, es un modelo donde un objeto puede ser expresado como el límite de un proceso geométrico iterativo, donde en cada iteración se produce una ruptura de la forma original.

En general un fractal es un objeto que cumple las siguientes propiedades (o al menos la mayoría):
  • Autosemejanza, el objeto fractal aparece a diferentes escalas

  • Tiene detalles en escalas arbitrariamente pequeñas.

  • Definición sencilla

  • Son generados por procesos iterativos o recursivos

  • Son demasiado irregulares para describirse en términos clásicos

  • Su dimension de Hausdorff-Besicovitch no es entera
Actualmente los fractales tiene diferentes aplicaciones de las cuales voy a destacar tres:
  • Crear música

  • Generación de imágenes de elementos de la naturaleza como árboles, estructuras moleculares cosas, montañas...
  • Compresión de imágenes con perdidas (con resultados mejores que el formato jpg tan extendido hoy en día, pero más lentas en el tiempo de compresión, no en el de descompresión).

Un ejemplo muy simple de una imagen de unas montañas creada con técnicas fractales.

Vista aérea de unas montañas a diferentes alturas (gracias google maps):
El conjunto de Mandelbrot a diferentes escalas:
Enlaces:

El éxito

viernes, 17 de agosto de 2007

El éxito no es para los que piensan que pueden hacer algo sino para quienes lo hacen.

Anónimo

VIDA 10.0. Concurso Internacional Arte y Vida Artificial

martes, 14 de agosto de 2007

VIDA 10.0 es la décima edición de un concurso convocado por Convocado por Fundación Telefónica que premia obras artísticas desarrolladas con tecnologías de Vida Artificial y sus disciplinas asociadas, la robótica, la inteligencia artificial, etc. Se buscan proyectos artísticos que hagan una reflexión sobre la relación entre lo “sintético” y lo “orgánico”.

En años anteriores se han premiado proyectos artísticos realizados con robots, avatares electrónicos, algoritmos caóticos, knowbots, autómatas celulares, virus informáticos, ecologías virtuales que evolucionan con la interacción del participante, y trabajos que profundizan en aspectos sociales de la Vida Artificial.

Aquí tenéis un vídeo que he encontrado del segundo premio de la novena edición. La verdad es que no me ha parecido demasiado sorprendente pero ha sido lo único que he encontrado.



A mi me parece más interesante estos animales de Theo Jansen (mención especial como obra pionera en la sexta edición):

Límites

domingo, 12 de agosto de 2007

Mi límite es el cielo. Ya sólo me puede parar la muerte.

Pintada de una pared. Leído un domingo demasiado pronto.

Jiro

viernes, 10 de agosto de 2007

Era de noche, una noche muy distinta a todas las demás. La luna llena brillaba en todo su esplendor pero las densas nubes impedían que ningún mortal pudiera contemplarla. Gracias ello pude salvar mi vida. Nuestro ataque a media noche pretendía acabar con todos, pero nos estaban esperando. La batalla fue una masacre y solo algunos logramos escapar con las pocas fuerzas que nos quedaban.

Mientras caminaba por el bosque las horas pasaban como si fueran días, apenas podía mantener la llama con la que iluminaba el camino. El silencio y la oscuridad se apoderaban de mi a cada paso que daba. Parecía que los animales tenían miedo y habían decidido esconderse hasta que llegará el día.

De repente una brisa de viento permitió a la luna aparecer entre aquellas densas nubes. Cuando quise darme cuenta ya era tarde, allí estaba él. Apareció de entre las sombras, era como si se hubiera sincronizado con la Luna. Enseguida supe de quién se trataba. Nunca antes le había visto, ni conocía a nadie que lo hubiera hecho, ni siquiera me creía que existiera. Era como si fuese una historia que había sido inventada para aterrorizar a los más cobardes y asustar a los niños. Desgraciadamente para mi era real. Su túnica azul y oscura como la noche, su cabeza afeitada, su pose en guardia esperando la lucha y, sobre todo, su katana manchada con ríos de sangre le hacían único e inconfundible. Cualquier otro ser humano al verme en el bosque hubiera pedido clemencia por su vida, pero en este caso era yo quién tenía que hacerlo.

Existían miles de leyendas que hablaban de él. Las más antiguas decían que era un hombre tranquilo, amable, pacífico con un trabajo honrado, era un hombre como cualquier otro y que como mortal siempre se había preguntado sobre el significado de la vida. Un día decidió retirase al Tibet y convertirse en monje. Pensaba que allí encontraría la respuesta. Fue en el templo de la montaña más alta, donde solo los más fuertes y valientes habían podido llegar, el lugar que escogió para su retiro. Sus hermanos le enseñaron a dominar su mente, su cuerpo y el arte de la espada. Tal fue su dominio de la espada que fueron muchos maestros los que fueron a buscarle al templo para enfrentarse a él. La leyenda del gran maestro de la espada había comenzado. Al principio solo aparecían en el templo para aprender del maestro, pero poco a poco aparecieron los más osados que quería demostrar que eran mejores, y lo único que consiguieron fue la muerte y extender su leyenda. Entonces, tal y como había llegado al templo se fue y desapareció. Algunos piensan que fue expulsado por sus hermanos cansados de tanta muerte sin sentido, otros creen que simplemente se canso de luchar contra rivales tan débiles. Con el tiempo, se convirtió en una historia de charlatanes que viajan de pueblo en pueblo y su verdadera existencia se puso en duda.

Cuando aparecimos nosotros, los humanos nos temían y, durante un tiempo, nos creímos capaces de dominar el mundo. Eramos infalibles en cuando atacábamos, ningún pueblo sobrevivía y nunca habían logrado herir a uno de los nuestros. Hasta que un día en el poblado como otro cualquiera en medio de la montaña, un sólo hombre logró aniquilar a 13 de los nuestros con su espada. Ese fue el comienzo en el que los hombres dejarían de temernos. La historia se repitió una y otra vez, y siempre era un único hombre el que lograba acabar con los nuestros. No sabíamos quien era ese hombre ni si existía de verdad, pero cada vez más de los nuestros morían y más historias aparecían del gran maestro de la espada. Todas contaban lo mismo, el gran maestro de la espada cansado de luchar contra humanos había vuelto de su escondite para luchar contra rivales más dignos y aniquilarnos a todos nosotros. Para muchos el asesino del templo del Tibet se había convertido en un héroe, para otros solo había encontrado otros seres que matar.

Seguramente fue él quien advirtió de nuestro ataque y ahora nos estaba buscando por el bosque para acabar, uno por uno, con todos los que habíamos logrado huir. Pero no podía estar más equivocada. Apenas me miro durante un segundo, envainó su espada, se giro y continuó su camino. No entendía nada, pero no podía quedarme sin saber cuál era su nombre. Se lo pregunte antes de que pudiera perderle de vista, él se giro, me miró y con una tenue voz de alguien que se encontraba perdido me dijo: "mi nombre es Jiro". En ese momento, su voz y sus breves palabras me hicieron comprender que no era él el quién había escogido matar. Para Jiro no existía el bien o el mal, solo vagaba por el mundo intentando buscar respuestas que nunca encontraría, luchando por sobrevivir y defendiendo aquello que le parecía injusto. Para algunos era un héroe, para otros un asesino. Cuando quise volver a hablar con él, ya había desaparecido.

Jiro nunca se dará cuenta que el significado de su vida es equilibrar la balanza entre el bien y el mal. Siempre seguirá vagando y buscando aquello que tanto ansia. Tal vez algún día nuestros destinos vuelvan a cruzarse, y entonces pueda darle una respuesta. Después, me veré obligada a matarle.


Bueno, y esta historia a que viene, pues no podía evitar crear un superhéroe sin ponerle una historia. Así de paso me introduzco en el mundo de los relatos, del que puede que salga pronto. Lo mío no es escribir, prefiero los números, así que no seas muy duros conmigo.

Tenéis la aplicación para hacer vuestro propio superheroe en UnderGround Online.

Visto en HacheMuda

Vaya cosas pasan por el IRC

jueves, 9 de agosto de 2007

Descubrí bash.org, y me encontré con unas cuantas cosas que me hicieron reir un buen rato. En inglés.


random girl: hey!
me: ...hi?
me: who is this?
random girl: Jessica, I saw u on myspace
random girl: ur hot
me: thanks
random girl: np
me: this girl keeps bugging me, but I don't want to talk to her
me: what should I do?
random girl: make up sum excuse, like ur mom is kickin u off or sumthing
me: oh alright
me: I have to go
me: my mom is kicking me off
me: bye

Chin^: My sister caught me jacking off the other week and calls me a pervert
Chin^: just the other day i walked into my room and caught my sister masturbating
Chin^: So she calls me a pervert again?!?
Chin^: there is no justice in the world...

frank: can you help me install GTA3?
knightmare: first, shut down all programs you aren't using
frank has quit IRC. (Quit)
knightmare: ...

Eticam: I was in biology class once, and the teacher said there was sugar in sperm
Eticam: And a girl asked why doesn't it taste sweet then
Eticam: When she realised what she said her face became red like a spanked monkey ass
Eticam: Then the teacher said, because you taste sweetness with the front of your tongue, not the part of your tongue back in your throat
Eticam: The girl started crying and left class ^^

xxxGirlygirlxxx: Thank you for listening to me.
xxxGirlygirlxxx: You know your a really good listener.
xxxGirlygirlxxx: Sweety please say something.
Sandaedar: Ok I'm back.

JonTG: Man, my penis is so big if I laid it out on a keyboard it'd go all the way from A to Z
JonTG: wait, shit

Más en bash.org

Hasta que no se curza la última línea...

miércoles, 8 de agosto de 2007


Visto en ALT1040

shhhhh!!!!

Cuando hables, procura que tus palabras sean mejores que el silencio.

Proverbio Hindú

Para centrarse...

jueves, 2 de agosto de 2007

a ver si me centro de una vez...

centrarte en queeee si no tienes nada en lo k centrarteeee

Fragmento de una conversación

Agrupación de sonidos

martes, 31 de julio de 2007

Leo en Tendencias 21 que investigadores de la universidad de Stanford han desarrollado un programa informático que imita los procesos cerebrales usados por los niños cuando aprenden a hablar. El título me ha chocado suficientemente la atención para pensar que podría tratarse de inteligencia artificial, y no me he equivocado. Básicamente el objetivo de los investigadores era realizar una clasificación de los sonidos, para ello utilizaron una red de neuronas. Por resumir un poco una red de neuronas es un modelo conceptual y simplificado del cerebro, es decir, un conjunto de células ("neuronas") interconectadas capaces de procesar información y dar una respuesta. La forma de conseguir que la red de neuronas aprenda a clasificar los sonidos es pasárselos como entrada una y otra vez para que las conexiones entre las neuronas se vayan adaptando. Llegando un momento en el que el error al clasificar los sonidos desciendo de un cierto umbral. Seguramente en este caso el aprendizaje no fue supervisado (indicando a la red si acertaba o se equivoca en al clasificación), sino que fue la propia red la que dedujo los tipos de sonidos que había. Las redes capaces de hacer este tipos de cosas son los mapas de kohonen y las redes ART, no he encontrado buena información en español sobre ellas así que otro día las explicare con detalles.

He estado comentado el proceso de aprendizaje porque es la parte más curiosa de la inteligencia artificial, sin embargo, no he mencionado nada de como se transforma el sonido en algo que pueda introducirse en la red de neuronas. Básicamente, el componente que falta por explicar en todo este sistema es el que hace de oído. Puede ser algo que no llame tanto la atención o resulte menos curioso, pero la transformación de, en este caso, el sonido en datos interpretables por la red es un factor importante que condiciona el éxito de aplicar una técnica de inteligencia artificial. No solo se trata de transformar el sonido en bits, lo cual con un micrófono no es muy complicado, sino que en este caso seguramente también haya sido necesario realizar un pequeño procesado para separar los sonidos, o al menos, las palabras. Además, las condiciones en las que se realizan este tipo de estudios suelen ser lo más idóneas posibles y las grabaciones se habrán realizado sin apenas ruido ambiente. Con ruido el problema se complica pero estoy seguro que una red de neuronas que también tenga en cuenta datos del pasado, una cierta memoria, es capaz de resolver el problema.

También leí hace tiempo en Tendencias 21 que unos ingeniero británicos habían reinventado la rueda dotándola de capacidad para aprender y adaptarse a la carretera respondiendo a baches y problemas de a medida que se enfrenta a ellos. El artículo explicaba que eran microordenadores situados en las ruedas capaces de registrar cambios en el camino y adaptarse a ellos, pero no daba detalles de que tipo de inteligencia artificial se había aplicado. A mi se me ocurren multitud de formas de usar alguna técnica de inteligencia artificial (redes de neuronas o sistemas expertos) para dotar a las ruedas de "inteligencia", el verdadero éxito de esta inteligencia se basa en ser capaces de obtener características de la carretera en tiempo real y modificar el comportamiento en cuestión de milisegundos.

Todo lo malo se pega

¿Cuantas veces habrás odio la frase "todo se pega menos la hermosura"?

En mi habitual rutina de revisar que sale de nuevo por la red me encuentro con un artículo de Genciencia en el que se habla de que la obesidad es contagiosa. Donde por contagiosa se refiere al hecho de que por tener amigos o familiares obesos aumenta la probabilidad de llegar a ser obeso. Y lo mismo ocurre con la delgadez.

Es cierto que los humanos tenemos la manía de intentar imitar aquellos comportamientos de las personas que nos rodeamos, unas veces por envidia y otras por simple costumbre social. Aunque también es cierto que solemos rodearnos de personas afines a nosotros con las que compartimos costumbres, hábitos o formas de pensar. Como dice otro refrán: "Dios los cría y ellos se juntan".

En definitiva, no os juntéis con gente que sea buena, inteligente y destaque por sus buenas cualidades, no vaya a ser que para alguien que existe que merece la pena le vayamos a estropear. Esto me hace recordar que los muchos grandes genios de la historia fueron personas muy solitarias e incluso rechazadas por la sociedad, tanto que alguno le quemaron en la hoguera por decir que la tierra era redonda (Giordano Bruno).

Dedicado a Txitxarro, por decirme que mis post son muy cortos.

Inteligencia Artificial

Cuando se habla de inteligencia artificial lo primero que se nos viene a la mente son los típicos robots de las películas con forma humanoides que son capaces de realizar las mismas cosas que los humanos, pero más rápido y mejor. Este concepto dista mucho del verdadero concepto de inteligencia artificial.

Aunque la inteligencia artificial es un concepto bastante amplio, aunque la idea fundamental es siempre la misma: intentar imitar el comportamiento inteligente, hasta que llegue el día donde sea imposible discernir si nos encontramos ante un ser vivo o una máquina (Prueba de Turing).

Muchas veces este comportamiento se reduce a encontrar una solución, lo más óptima posible, a un problema determinado. Para ello las máquinas, o mejor dicho ordenadores, utilizan todo su pontencial de cálculo para recorrer todo el espacio de posibles soluciones hasta encontrar una válida. Por ello los inicios de la inteligencia artificial se remontan a los primeros algoritmos de búsqueda que utilizaban cierto conocimiento, denominado heurísticas, para recorrer el espacio de posibles soluciones de forma que en cada paso estuvieran más cerca de la solución, sin tener que pasar por todas. Desgraciadamente estos algoritmos están limitados y se buscan otras soluciones para alcanzar la "inteligencia".

Desde mi punto de vista en la inteligencia artificial existen dos tendencias: la que pretende crear inteligencia a partir de analizar los mecanismos que utilizamos para razonar y pensar, y otra que trata de "copiar" a la naturaleza para crear inteligencia igual que ella. En el primer caso me estoy refiriendo a las técnicas utilizadas en los sistemas expertos, redes bayesinas y razonamiento con incertidumbre. La segunda tendencia me resulta más interesante, porque la naturaleza siempre será más sabia que nosotros y será capaz de darnos las mejores soluciones para resolver problemas, y es donde se englobarían técnicas como las redes de neuronas, los algoritmos genéticos y la computación evolutiva. Otro día, si el tiempo me lo permite intentaré explicar cada unas de las técnicas de forma amena con sus aplicaciones en la vida real, alguno seguro que se sorprende.

Bueno y después de todo esto, ¿para que se usa la inteligencia artificial hoy en día? Pues las aplicaciones son muy diversas y van desde sistemas de predicción o de recomendación hasta clasificadores y para optimizar parámetros de una función. Por poner algunos ejemplos curiosos, algunos sistemas de radar utilizan una red de neuronas para clasificar los aviones en función del eco recibido, la inteligencia de los adversarios en los video juegos se suele crear con técnicas de computación evolutiva, los supermercados descubrieron mediante data mining que los hombres solían comprar cerveza cuando compraban pañales (y que no habrán descubierto después que cada mes cambian de sitio la mitad de las cosas del supermercado), etc.

En definitiva, poco tiene que ver la inteligencia artificial real de la de ficción, pero como todo, llegará un día en el que la realidad supere a la ficción y sino tiempo al tiempo. Aunque lo verdaderamente difícil tal vez sea crear una máquina capaz de crear arte de la nada, porque máquinas que inventan cosas... ya existen, que se lo pregunten a John Koza.

Eternity II

sábado, 28 de julio de 2007

Hoy se lanza Eternity II, un puzzle con un premio de 2.000.000 $ para el primero que lo resuelva antes del 31 de diciembre de 2010. A primera vista parece sencillo, sólo es un puzzle plano de 256 piezas cuadradas que encajan en un tablero cuadrado de 16×16 casillas... Seguro que con un programita que use backtraking para resolverlo por fuerza bruta (probando todas las combinaciones posible) no tarda mucho. Pero las combinaciones posibles son unas 256! · 4256 = 10661 (256! por todas las posiciones posibles de las piezas y 44256 por los giros de las piezas). Si tu ordenador fuese capaz de comprobar un billón de combinaciones por segundo (1012), que ya te digo yo que no es capaz, tardaría más de 10600 años en resolverlo (así es fácil dar dos millones de premio para el que lo resuelva en menos de 4).

En 1999 se ofreció un premio de 1.000.000 £ para el primero que logrará resolver el puzzle Eternity, un dodecaedro de 209 piezas, y los primeros en resolverlo fueron Alex Selby y Oliver Riordan justo antes de que acabase el plazo para ganar el premio. Resolver Eternity no fue sencillo y no creo que Eternity II vaya a ser "más sencillo"...

Si a pesar de todo prefieres dar una oportunidad al ordenador para que resuelva el puzzle, deberías pasarte por http://eternity2.net/, un proyecto de computación distribuida para resolver el puzzle por fuerza bruta.

Y si se os ha quedado corto el Eternity y queréis es ganar 1.000.000 $ buscando las piezas de un puzzle en internet, también tenéis The Golden Jibsaw (vía Passion For Puzzles).

Paradoja de Murphy

martes, 24 de julio de 2007

Siempre es más fácil hacerlo de la forma más difícil.

Paradoja de Murphy. Murphyología

Holofonías

viernes, 20 de julio de 2007

Ponte unos cascos y escucha esto:



El sonido holofónico fue desarrollado en 1980 por el argentino Hugo Zuccarelli, aplicando el concepto del holograma al sonido. Para conseguir el efecto que habéis escuchado se utiliza una cabeza de dummy equipada con dos micrófonos omnidireccionales situados a la altura de cada oreja. Con ella se graban los sonidos independientemente y se recombinan usando un algoritmo llamado Cetera.

La idea fundamental que hay detrás de todo es que el celebro recibe información de los oídos de forma distinta, porque ambos oídos están físicamente separados entre sí por la cabeza. Y con esta diferencia es capaz de dotar profundidad al sonido, algo parecido a lo que sucede con la vista y la sensación de profundiad

Enlaces relacionados con las holofonías:

Gracias a Emilio. Vía Maikelnai’s blog

Ley de Murphy

domingo, 15 de julio de 2007

Si algo tiene la posibilidad de salir mal, saldrá mal.



Corolarios:
Cuando las cosas vayan bien, algo habrá que haga que vayan mal.

Por muy mal que vayan las cosas, siempre pueden empeorar.

Cuando le parezca que las cosas van mejor, es que se le ha pasado algo por alto.


Dedicado a Cristian

Discurso de Steve Jobs

Discurso de Steve Jobs en la Universidad de Stanford durante la apertura del curso del 2005.


Si queréis más, tenéis el video sin subtítulos y el texto del discurso (en inglés).

Es posible que Steve sea una persona muy afortunada por haber conseguido crear tres empresas como Apple, Pixar Animation Studios y NeXT, algo que no parece nada sencillo. Pero su éxito no es solo cosa de suerte, es su forma de ser y su mentalidad lo que le ha llevado tan lejos. Algunas de sus frases en el discurso, por no decir todas, no tienen desperdicio:
A veces, la vida te da en la cabeza con un ladrillo. No perdáis la fe.

Si vives cada día como si fuera el último, algún día tendrás razón.

Recordar que vas a morir es la mejor forma que conozco de evitar la trampa de pensar que tienes algo que perder.

Tienes que confiar en algo, tu instinto, el destino, la vida, el karma, lo que sea. Porque creer que los puntos se unirán te darán la confianza de confiar en tu corazón.

Pero también hay que reconocer que es un hombre de negocios y sabe hacer las cosas bien (leido en microsiervos):
No tiene sentido contratar a personas inteligentes y después decirles lo que tienen que hacer. Nosotros contratamos a personas inteligentes para que nos digan qué tenemos que hacer.



Sigue hambriento. Sigue alocado.


Gracias a Emilio por el vídeo

Dramatic Chipmunk

sábado, 14 de julio de 2007

Si aún no lo has visto, ya es hora de que lo veas:



Y este va dedicado a Emilio:



Gracias a Emilio y a Carlos por los links

Quienes somos

domingo, 17 de junio de 2007

No somos responsables de quienes somos, pero podemos elegir como queremos ser.

Inventado o visto por ahí hace mucho tiempo

El comienzo

sábado, 16 de junio de 2007

... al final todo se termina. Pero todo lo que acaba es porque alguna vez tuvo un comienzo.