Wednesday, April 25, 2012

Monitoreando la actividad del Popocatépetl



Emiliano Sánchez, un amigo en línea, que sigue mis pasos en programación me hizo una consulta: debido a la actividad volcánica del Popocatépetl, la cual está siendo monitoreada constantemente por el CENAPRED, hay en la página web de dicha institución imágenes del volcán, que se toman cada minuto. La idea de Emiliano es capturar las imágenes que produce el CENAPRED del Popocatépetl (que se generan minuto a minuto) y entonces, una vez que se tengan cientos, quizás miles de imágenes, crear una película de todo el desarrollo de lo que está pasando en el volcán.

El programa

Con esta idea en mente me di a la tarea de ver cómo se podía bajar una imagen de una página web. Hallé, para mi fortuna, que el CENAPRED, en su dirección (URL):

http://www.cenapred.unam.mx/images/popo1.jpg

genera una imagen llamada popo1.jpg por minuto. Esta imagen siempre es la misma, es decir, siempre se llama igual.

Escribí entonces un programa que captura la imagen generada por el CENAPRED cada minuto y la va guardando con nombres que tienen un número secuencial al final de su nombre de manera que pueda tener, por ejemplo, las siguientes imágenes: popo-1.jpg, popo-2.jpg, popo-3.jpg, etc. Así, se puede guardar toda la secuencia de fotos que automáticamente se generan en el sitio web.

El software permite alimentar la ruta de donde se obtendrá la imagen, el nombre con el que se va a guardar y finalmente, el contador para empezar la secuencia de fotos. Con estos datos, el programa funciona minuto a minuto.

Como efecto adicional, el programa presenta en la pantalla la última foto que se haya tomado. Tiene además una barra de progreso que cuenta hasta 60 segundos. De esta manera el usuario está siempre informado de lo que está pasando mientras el software corre.



Siguiente paso

Una vez que el sistema ha guardado las imágenes que genera la página del CENAPRED, se puede crear un archivo de video (formato AVI) que puede desplegar cada foto como una película. Para ello usé el componente en Delphi, AviWriter, para crear fácilmente archivos AVI, de Elliott Shevin, el cual usa mucho código de Anders Melander. Este programa simplemente pide las imágenes que queremos cargar para hacer el video y lo hace prácticamente de inmediato. Es una solución rápida, sin intención de ser la mejor solución, pero funciona.


Más información

El programa es totalmente gratuito. Si alguien lo quiere, escríbame y se lo mando a vuelta de correo. Para comentarios, ideas y consultas, favor de escribir a morsa@la-morsa.com

Tuesday, April 24, 2012

Un llavero de alta tecnología

La tecnología para el consumidor final parece no tener jamás límites. La electrónica cada vez hace componentes más y más chicos, y los dispositivos son además más aguantadores y baratos de fabricar de manera que si, se descompone alguno de ellos, es mejor comprar uno nuevo que intentar siquiera repararlo.

Hoy en día tenemos todo tipo de dispositivos móviles. Los teléfonos "inteligentes" actuales tienen pantallas de cristal líquido, que soportan incluso miles de colores. Usan resoluciones cada vez más finas y la verdad me parece increíble que algunos componentes de estos teléfonos puedan tener estas calidades que asombran, partiendo del precio en el que son fabricados y vendidos. Para estas cuestiones los chinos hacen cosas fantásticas.

Y si hablo de esto es porque el otro día el papá de Pilar me regaló un llavero que me trajo de un viaje que hizo por Estados Unidos. Se trata de una cajita transparente que muestra mi nombre "Manuel", que se enciende y se paga cada cierto tiempo. Como el llaverito es transparente, es claro que es un artilugio electrónico. Tiene una pantalla de LCD a color, pero no tiene pilas. No. Tiene celdas solares por lo que el llavero tendrá una vida tan larga como la vida útil de los componentes que usa. Como está en un empaque de acrílico transparente, sellado, no se le puede meter agua ni polvo. En principio, pienso, puede durar toda la vida.

En la parte trasera del llavero le pegaron una calcomanía que dice "Miami", que con el tiempo se desgastará... y cuando eso pase, podré ver la parte trasera de la mini pantallita LCD que tiene el posmoderno llaverito. La verdad es que es un regalo original, el cual agradezco al papá de Pilar.

He aquí un video, el cual me mostró Ahmed Alejandro Díaz Barriga, el cual muestra un llavero de esta naturaleza:


____
(*) La imagen muestra ese llavero pero con un logotipo comercial. Evidentemente se puede poner cualquier imagen o texto que se deseé. Como la imagen es gif, quizás hasta se ve el parpadeo.

Wednesday, April 18, 2012

¿Josefina, diferente, presidenta?


Con esto de las campañas políticas, los gazapos de los candidatos están a la orden del día. Enrique Peña Nieto últimamente no ha sido objeto de estas situaciones, seguramente porque apela al uso del telepromter o quizás a que le dicten lo que tiene que decir vía radio inalámbrico y él con un chicharito en el oído escuchando las palabras que debe decir, no la vaya a regar.  Al Peje no le escuchado ninguna barbaridad fuera del "extiendo mi mano franca..." que es un feo fusil de José Martí. De Quadri ni opino porque finalmente su candidatura es una payasada. Y Vázquez Mota, ay, pobre señora. No basta con las bobadas que dice "apoyaremos el lavado de dinero", entre otras cosas, sino que además, tiene que lidiar con un equipo de campaña que no sabe que no se escribe "Tlazcala", sino "Tlaxcala". Da pena ajena. Pero estos dislates son lo de menos cuando vemos en la calle fotografias espectaculares de la candidata del PAN que dicen:

JOSEFINA
DIFERENTE
PRESIDENTA 2012


Me queda claro que su equipo de publicistas creó esta promoción para la candidata. Pero lamentablemente tiene errores ortográficos por demás penosos. Veamos:

En español existen los participios activos como derivados verbales:

El participio activo del verbo atacar, es atacante.
El de sufrir, es sufriente.
El de cantar, es cantante.
El de existir, existente.

Entonces, ¿Cuál es el participio activo del verbo ser?
El participio activo del verbo ser, es 'el ente'.
El que es, es el ente.
Tiene entidad.

Por ese motivo, cuando queremos nombrar a la persona que denota capacidad de ejercer la acción que expresa el verbo, se le agrega al final ' ente'.
Por lo tanto, la persona que preside, se le dice presidente, no presidenta, independiente del sexo que esa persona tenga.
Se dice capilla ardiente, no ardienta.
Se dice estudiante, no estudianta.
Se dice adolescente, no adolescenta.
Se dice paciente, no pacienta.
(y yo agregaría, se dice diferente, no diferenta)

No sólo hace un mal uso del lenguaje por motivos ideológicos, sino por ignorancia de la gramática de la lengua española.

Pasemos el mensaje a todos nuestros conocidos con la esperanza que el mismo llegue finalmente a los políticos y periodistas para que de una vez por todas, se termine de corregir a todas las personas que, hablan MAL.

Mal ejemplo:
La pacienta era una estudianta adolescenta sufrienta, diferenta, representanta e integranta independienta de las cantantas y también atacanta, y la velaron en la capilla ardienta existenta.

Qué mal suena ahora..., no?


Así entonces, si Vázquez Mota corrió a la periodista que no pudo escribir correctamente "Tlaxcala", ¿por qué no corre a todos esos burros que conforman su planilla dedicada a su promoción en espectaculares?

Fuente

Tuesday, April 17, 2012

Mi caso contra OpenGL


OpenGL sirve para hacer gráficas. De acuerdo a la Wikipedia: OpenGL (Open Graphics Library) es una especificación estándar que define una API multilenguaje y multiplataforma para escribir aplicaciones que produzcan gráficos 2D y 3D. La interfaz consiste en más de 250 funciones diferentes que pueden usarse para dibujar escenas tridimensionales complejas a partir de primitivas geométricas simples, tales como puntos, líneas y triángulos. Fue desarrollada originalmente por Silicon Graphics Inc. (SGI) en 1992 y se usa ampliamente en CAD, realidad virtual, representación científica, visualización de información y simulación de vuelo. También se usa en desarrollo de videojuegos, donde compite con Direct3D en plataformas Microsoft Windows.

Y este tema me interesó hace tiempo, pero hasta ahora que estoy dando un curso de graficación en la Facultad de Ciencias de la UNAM, decidí aplicarme y ver qué tanto se podía hacer en OpenGL. Hallé de entrada que hay muchísima documentación y por ende, es fácil encontrar ejemplos, tutoriales, etc. En Google se pueden ver montones de imágenes muy bien logradas con esta biblioteca gráfica. Sin embargo, después de un par de meses de estar lidiando con este asunto encontré que hay cosas que no me convencen. He aquí algunas de ellas:

OpenGL tiene sus virtudes, pues se puede instalar prácticamente en cualquier herramienta de programación. Sin embargo, para cada una hay que seguir pasos diferentes. No tiene un procedimiento estándar para esto y cambia de acuerdo al marco de trabajo que quiera usarse.

  1. Para poder usar OpenGL y sacar provecho del mismo hay que pensar en modelos matemáticos. Uno lo que hace, al programar en OpenGL es crear un medio ambiente tridimensional, el cual es muy flexible en muchos sentidos. El problema es que esto hay que tenerlo presente al programar. Por ejemplo, si queremos crear una esfera, tenemos que escribir el código que haga esto. Si queremos que tenga textura tenemos que escribir las instrucciones que nos permiten "texturizar" el objeto, etc. No obstante, nada de esto podemos verlo "en vivo", es decir, necesitamos correr el programa y ver si nuestro modelo tridimensional matemático es lo que estábamos esperando (cosa que pocas veces sucede).
  2. Las instrucciones de OpenGL vienen en diferentes "formatos". Se puede usar por ejemplo, una instrucción que contenga parámetros enteros, dobles, de punto flotante, y tendremos que hay tres instrucciones diferentes, una para cada formato, en donde se agrega a la instrucción lo siguiente: GLColor* (1.0, 1.0, 1.0);en donde el * representa 3f (3 coordenadas de punto flotante); 3d (tres coordenadas de resolución doble); 3i (tres coordenadas enteras). Esto en mi opinión puede ser muy versátil, pero es confuso.
  3. La curva de aprendizaje es realmente lenta, porque insisto y hago énfasis: OpenGL no tiene un sistema para ir visualizando cómo se van haciendo las cosas de acuerdo a las instrucciones escritas. Hasta que se compila puede verse el resultado final, que de verdad, pocas veces coincide con lo que estábamos pensando.

Para mi gusto, sería mucho más amable tener una herramienta al mejor estilo 3dStudio, el cual permite en muchos casos hacer las imágenes interactivas, poner texturas, luces, trayectorias de la cámara para ver cómo se va a mover, etc. Así como está OpenGL, deja mucho que desear.

Quizás para alguna aplicación específica sea la herramienta adecuada pero hasta el momento usar OpenGL como la biblioteca gráfica de programación, parece ser demasiado complicado y poco amable con el programador.

Monday, April 16, 2012

Del folklore popular

Las campañas políticas que están a todo lo que dan en nuestro país son quizás el catalizador para ver algunas expresiones de las personas, sobre todo en las redes sociales, en donde los simpatizantes de uno u otro candidato hacen todo género de cosas para poner en desventaja a los antagonistas. En algunos casos parece que ridiculizar al oponente es algo hasta válido y si unos lo hacen, porque no pueden hacerlo los otros, uno podría preguntárselo.

Pero el hecho es que todo esto es parte de estas campañas negras, donde no se trata de mostrar propuestas, sino poner al contrario como el más cretino, el más imbécil, el más baboso y el que finalmente -debe pensarse es la conclusión al ver todas estas expresiones- no tiene sentido votar por ese candidato. 

Así, ya incluso aquí en este mismo blog he presentado un video donde Josefina Vázquez Mota dice que dará iPads y banda ancha a todos los jóvenes de México. Pero eso es poca cosa: ahora se presenta la Vázquez Mota equivocándose en dos actos de campaña, diciendo que fortalecerá el lavado de dinero. Véase el primer video:

En un mitín en Puebla, a fines de marzo del 2012

Y éste es el segundo:
En otro acto, en la primera semana de abril probablemente.

Aquí la candidata del PAN se equivoca contínuamente y por ende la burla es directa a su persona. Pero con los otros candidatos las cosas son diferentes. Por ejemplo, Enrique Peña Nieto, que su única virtud parece ser ese rostro de caudillo "totalmente palacio", que ve al futuro del país con alegría desbordada, aunque la realidad espantosa cotidiana nos muestre todo lo contrario en sus anuncios, es burla contínua por sus dislates, como por ejemplo cuando no supo decir tres libros que lo marcaron; o cuando se le olvidó de qué murió su esposa, entre otros. He aquí Pacasso mostrándolo como es:

Pacasso en su "Unidad de Quemados" (socialmente hablando).

Pero en el caso de Peña Nieto hay de donde cortar. Por ejemplo, el Monero Hernández hizo esto para MonoSapiens, de Proceso:

 
Dar click en la imagen para agrandar

O bien, este cartón en donde describe a los candidatos y sus spots:
Los tres candidatos en sus spots
 
Obviamente López Obrador no se salva tampoco. He aquí un video que viene, desde luego, de los que no toleran a este personaje:

Otro video de burla, ahora con AMLO

A mí lo que me parece curioso son todas estas expresiones populares. Me queda claro que los candidatos saben que hay quienes no votarán por ellos, pero ¿es necesario desdeñarlos? ¿burlarse de ellos? ¿hacer mofa pública?

Quiero pensar que todo esto es una válvula de escape de los ciudadanos comunes, del hombre de la calle, que vemos los abusos de los políticos, sus gigantescos gastos de campaña, sus sueldos enormes (véase cámara de diputados y senadores), entre otras menudencias. Aquí el que le entra a la política quiere ver cuánto saca, porque es claro que lo que no quiere hacer es trabajar honradamente. Esa frase de "quiero servir a mi país", que incluso se dice en algún spot del IFE suena cada vez más hueca.

Wednesday, April 11, 2012

El juego de la vida de Conway

 

Hay un juego de computadora fascinante, llamado Juego de la Vida, el cual fue diseñado en 1970 por el matemático británico John Horton Conway, de la Universidad de Cambridge, Inglaterra. Se hizo muy popular desde que Martin Gardner, en su columna de octubre de ese año en la revista Scientific American hablara de las ideas de Conway. Y a partir de ese momento miles de programadores lo codificaron y jugaron con las ideas del británico en sus respectivos tiempos libres.

El juego de la vida ocurre en un tablero cuadriculado, en donde cada cuadro puede haber una célula o estar vacío. La idea es acomodar una serie de células en la malla cuadriculada y observando las vecindades de cada célula, cada cuadro pues -utilizando las reglas de Conway- ir calculando las nuevas configuraciones de células que aparecerán en la siguiente generación. Puede verse que el juego de la vida de Conway no es estrictamente un juego de video, pues el “jugador” no hace nada más que ver la evolución que en cada tiempo, en cada generación, aparece en la pantalla.

Cabe decir que las reglas que se definan para el juego de la vida deben ser tales que la conducta de la población resulte a un tiempo interesante e impredecible. Las reglas de evolución, dadas por el propio matemático, llamadas también reglas genéticas, son de una sencillez deliciosa y pensamos que Conway las fue descubriendo (¿inventando?) poco a poco.



Tomemos un plano cuadriculado entonces de dimensiones infinitas. Cada sitio, cuadro o casilla, tiene 8 casillas vecinas: cuatro ortogonalmente adyacentes (2 en vertical y 2 en horizontal). En cada sitio es posible poner un valor binario (hay célula o no hay en esa casilla). Las reglas son:

  • Supervivencia: cada célula (digámosle ficha), que tenga dos o tres fichas vecinas sobrevive y pasa a la generación siguiente.
  • Fallecimiento: cada ficha que tenga cuatro o más vecinas muere y es retirada del tablero, por sobrepoblación. Las fichas con una vecina o solas fallecen por aislamiento.
  • Nacimientos: cada casilla vacía, adyacente a exactamente tres cifras vecinas -tres, ni más ni menos- es casilla generatriz. Es decir, en la siguiente generación habrá de colocarse una ficha en esa casilla.

Es importante hacer notar que todos los natalicios y fallecimientos ocurren simultáneamente, y constituyen en su conjunto una generación en particular, al paso del tiempo t, también llamado tic del reloj.

Con el mismísimo Conway, en su plática que dio en junio del 2010 en la Facultad de Ciencias de la UNAM.

En un principio el inventor de este singular “juego” conjeturó que ningún patrón inicial podría crecer ilimitadamente. Dicho en otras palabras, ninguna configuración compuesta por un número finito de fichas puede crecer hasta rebasar un límite superior finito, que limita el número de fichas que puede contener el campo del juego. Seguramente esta sea la cuestión más difícil y profunda que planteé el juego.

Conway ofreció un premio de 50 dólares a la primera persona capaz de probar o de refutar la conjetura antes de finalizar el año 1970. Una forma de refutarla sería dar con configuraciones que, generación tras generación, añadiesen más piezas al terreno de juego: un cañón (es decir, una configuración qaue repetidamente dispara objetos en movimiento), o bien el tren puf-puf (configuración que al paso del tiempo t avanza dejando tras de sí una estela de “humo”).

La conjetura de Conway se refutó en noviembre de 1970. Un grupo integrado en el proyecto de inteligencia artificial del MIT, comandado por William Gosper, halló un cañón lanza-deslizadores, el cual genera un deslizador cada 30 pulsos de reloj (o generaciones). La existencia de tal cañón suscita una interesante posibilidad de que el juego de Conway pueda simular una máquina de Turing, la cual es capaz de hacer, en principio, cualquier computación, cualquier cálculo. Si el juego permite esta alternativa, entonces la siguiente pregunta a resolver es si sería capaz de poderse crear un constructor universal. De lo cual se encontraría una máquina con capacidad de autorreproducción no trivial. Desafortunadamente, a la fecha, no ha podido construírse.

El carácter universal del juego de la vida significa que, en principio, es posible usar deslizadores para llevar a cabo cualquier cómputo que pueda efectuarse con la más potente de las computadoras digitales. Mediante la disposición de cañones lanza-deslizadores y otras formas de “vida”, es posible calcular π, e, la raíz cuadrada de 2, o de cualquier otro número, con cualquier número de cifras decimales.

 Hay muchísimos programas de código abierto y gratuito para jugar con el juego inventado por Conway. Vale la pena probar alguno de ellos e intentar configuraciones diferentes. Hay mucha información sobre el juego de la vida del matemático británico y podría asegurarles que es francamente apasionante. El único inconveniente es que esto comienza a hacerse obsesivo.

Algunas fuentes de interés:

Juego de la vida en HTML5
Juego de la vida de Conway
Juego de la vida con fuentes (Delphi)
LifeWiki
________

(*) En la foto inicial del artículo están, de izquierda a derecha: Erik Demaine, Martin Demaine, Bill Spight y John Conway

Tuesday, April 10, 2012

López Obrador y su campana "amorosa"


El Peje lleva ya casi seis años de campaña, después de que perdiera las elecciones contra Felipe Calderón. Ya Madrazo había dicho desde antes de esas elecciones que AMLO -si no ganaba- haría un "pancho" enorme y que no se conformaría en la derrota. Y así fue: no ganó y "haiga como haiga sido", lo que se le ocurrió entonces al candidato del PRD fue cerrar Reforma por más de un mes. Hubo una serie de actos a escala de eso. Por ejermplo, en Río Magdalena y Fuentes del Pedregal, una tarde/noche me hallé con que no se podía bajar hacia Universidad porque unos chavos habían acordonado la zona y con un letrero que decía algo así como: "disculpe las molestias, estamos construyendo la democracia", no dejaban pasar a ningún auto, así que tuve que irme por otra ruta alterna, con las susecuentes molestias. Por suerte esto duró un par de días, a menos en esa conflictiva esquina, cosa que no ocurrió con el cierre de todo Reforma por más de un mes. A la  larga se acabó el dinero para mantener la "protesta" y así como llegaron, desalojaron.

Seis años después AMLO cambia de estrategia y ahora habla de cordialidad, de ser amoroso, de reconstruir al país a partir de un acto solidario. En uno de sus más patéticos spots televisivos, Andrés Manuel se piratea a José Martí con eso de "ofrezco mi mano franca"... Y ahora resulta que él decide la reconciliación y cuando debe hacerse. AMLO perdió mucha fuerza con sus gazapos cuando le gritaba en los mítines públicos a Fox: "¡Cállate chachalaca!" y de tener más de 10 puntos de ventaja perdió la presidencia por menos de 300 mil votos. Errores muy caros que seguramente ahora el candidato del PRD los lamenta.


Y podemos ir más lejos: Apoya ahora a Bartlett -si no me equivoco- para una senaduría. Ya Pedro Miguel, al que estimo de verdads, ha salido a decir en su videoblog todo género de justificaciones pero seamos francos: Bartlett es el creador de la caída del sistema cuando ganó Salinas. Era el secretario de Gobernación que en ese entonces era el más poderoso después del presidente... Pero Bartlett sale a defenderse y en una larga entrevista con Aristegui se pinta como la blanca palomita que no es. ¿Tú le creer algo a Bartlett? Yo tampoco. Resulta pues absurdo que AMLO diga que Bartlett ya cambió y lo arrope en su campaña. Le recuerdo al Peje que Bartlett orquestó precisamente el fraude cuando ganó Salinas. Así de simple. Pero bueno, ya cambió de opinión. Al rato no me sorprendería que se hiciese amigo de Salinas, su némesis, real o inventado.

Y no es solamente eso. Recordemos cuando manipuló al tonto de "Juanito" para hacerlo candidato delegacional, o cuando decidió jugar a ser "presidente legítimo". Vaya, hasta hizo un evento en donde presentó a su "gabinete". Su jueguito fue como de párvulos porque desde luego, cualquiera tiene derecho a jugar a ser presidente, pero no cualquiera tiene acceso a las arcas de la nación. Lo que me parece curioso es que nadie le pregunte a López Obrador cómo es que quiere ser presidente si "ya fue", y en México no hay reelección para ese puesto. Me gustaría saber qué contestaría.

El problema con López Obrador es que sus estrategias son increíbles. Un día está con las autoridades y al día siguiente las manda al diablo. Un día se autonombra presidente legítimo y al día siguiente se le olvida. Su fuerza política ha disminuído notablemente porque ha hecho muchas cosas mal. Además, es muy difícil que de buenas intenciones se pueda cambiar un país que tiene una inercia muy marcada. Con esto en mente, no veo de verdad que Andrés Manuel López Obrador pueda hacer un cambio verdadero. Yo solamente quiero ver qué va a hacer, si gana, con respecto al problema de inseguridad y contra los narcos. ¿Los dejará de perseguir? ¿Apelará a que se vuelvan amorosos? ¿Sacará al ejército de las calles? ¿Qué solución real tendrá a ese problema? Quién sabe.

Así pues, que AMLO no es la panacea. Considerando a Peña Nieta y a Vázquez Mota, López Obrador parece ser "el menos pior", pero desde luego, no hay quien con los tamaños para cambiar a este país.

Monday, April 09, 2012

¿Por qué el ajedrez es tan difícil?


En estas últimas semanas he estado reflexionando el por qué el ajedrez es un juego tan difícil y creo haber llegado a una conclusión que quisiera llamarla definitiva. Para ello, debo antes explicar algunos asuntos.

Todos los problemas pueden definirse vía una descripción o representación del conocimiento de un pequeño mundo (llamado micromundo), el cual puede satisfacer o no ciertas metas. Remitámonos al problema de representar el árbol de variantes en una partida de ajedrez. Aquí creamos un árbol que empieza en la jugada inicial (desde la posición dada en un principio) y a partir de ahí se abren hojas para acomodar las jugadas posibles. A su vez se pueden abrir más nodos hacia abajo y depende de qué tan profundo generemos este árbol, podemos llegar a tener un árbol muy frondoso (dependerá, desde luego, de la posición inicial dada).

Dada esta representación, lo que normalmente hacemos es recorrer el árbol de variantes, valorando cada posición y viendo si nos es conveniente o no. Esto es lo que hacen los programas de ajedrez a partir de una función de evaluación, el corazón de todo programa de esta naturaleza. Los ingenios cibernéticos actuales como Rybka, Houdini, Fritz, StockFish, etc., pueden analizar miles de jugadas por segundo. Desafortunadamente esta velocidad no es suficiente porque el crecimiento de jugadas en el árbol de posibilidades de una partida de ajedrez crece de forma exponencial y muy rápido (creo que lo que estoy diciendo es un pleonasmo, pero en fin).

Existen dos métodos clásicos para recorrer el árbol (o espacio de búsqueda): Búsqueda en profundidad (depth first) y Búsqueda a lo ancho (breadth first). El siguiente diagrama puede mostrarnos cómo hacer la búsqueda en profundidad:


Consideremos que la meta es hallar que desde una posición dada, se llega al mate. Si empezamos la búsqueda en el nodo 1 (ver figura), buscamos probar la meta. Si no se cumple, entonces nos movemos al nodo 2. Repetimos probar la meta. Si no se cumple, pasamos al siguiente nodo a la izquierda, el cual es el 3. Si probamos la meta y no se cumple, pasamos al nodo 4. Si de nuevo, al probar la meta, fallamos, entonces nos movemos al nodo inmediatamente a la derecha, pues el nodo 4 es un nodo terminal. Así, caemos en en nodo 5. Si de nuevo la meta no se puede probar entonces hacemos backtrack y hemos regresado al nodo 3. Como éste ya vimos que no era solución, regresamos vía este mismo procedimiento al nodo 2 y posteriormente al 1. Entonces hallamos que el siguiente nodo a analizar es el 7. ¿Es una solución? Si no lo es, regresamos al anterior (pues el 7 es otro nodo terminal), y comenzamos a recorrer el nodo 8. Este nodo contiene dos hojas, el 9 y el 12. ¿a cuál debe irse? De acuerdo a lo que sabemos primero revisamos el nodo de la izquierda, es decir, pasamos al 9, de ahí al 10. Si en ninguno de los casos la meta se cumple, hacemos backtrack del nodo 10 y analizamos el nodo 11. Si tampoco resulta este ser solución, hacemos backtrack y subimos hasta el nodo 8, en donde solamente nos resta analizar el nodo 12. Si éste no es solución, entonces no existe una respuesta satisfactoria al problema.

Nótese como hacemos una búsqueda exhaustiva, empezando por el nodo raíz y siempre revisando primero el nodo izquierdo hasta lo más profundo para acto seguido analizar el nodo derecho mas inmediato.

La otra búsqueda, llamada breadth first permite buscar y valorar cada nodo al mismo nivel. Por ejemplo, en la siguiente imagen:


En la búsqueda breadth first, el algoritmo examina todos los nodos a un nivel (llamado en ocasiones ply).

El siguiente diagrama muestra el orden en el que los nodos son examinados. Como puede notarse, todos los nodos en un nivel se analizan consecutivamente buscando satisfacer la meta. Al terminar esto se sigue en el siguiente nivel y así sucesivamente.

Para el caso del ajedrez, si el diagrama del árbol mostrado representara analizar jugadas, ¿qué es lo mejor? ¿buscar en profundidad o a lo ancho?

El caso ideal sería analizar en profundidad pero esto implicaría ir hasta las últimas consecuencias en todas las variantes hasta llegar al mate o a una posición ganadora. Pero esto es una utopía por el crecimiento de variantes en ajedrez que llega a ser inmanejable. No importa qué computadora podamos conseguir. Siempre el ajedrez nos superará en términos de jugadas a analizar.

La otra opción es ser más humanos y ver una jugada adelante en todas las ramas (como en breadth first). Podríamos evaluar hasta ese momento y decir quién tiene la ventaja. Sin emabrgo, sabemos que esto es poco, porque por ejemplo, una jugada en donde el blanco puede capturar la dama enemiga parece una buena idea... a menos que el rival conteste con un mate inmediato en castigo a nuestra glotonería. Por ello hay que ir al siguiente nivel en el árbol. Cada nivel es un ply y en ajedrez esto significa media jugada, un movimiento, ya sea de blancas o negras. Dos plys conforman una jugada completa (de blancas y negras).

Una vez que ya sabemos esto, podemos preguntarnos qué clase de búsquedas hace el ser humano. Desde luego que en la multitud de posibilidades de búsqueda, si tomamos solamente este par de sistemas, veremos que es más probable que el ser humano decida  analizar la siguiente jugada con sus variantes (un ply). En la medida de lo posible buscará analizar más profundamente, pero no llegará en general a analizar más de 6  o 7 plys (3 a 3.5 jugadas en promedio), que de hecho es lo que una de las primeras computadoras dedicadas al ajedrez, la Belle, de Ken Thompson, podía analizar y con lo que logró el título de maestro nacional en los Estados Unidos allá por los años setentas del siglo pasado.

Evidentemente un gran maestro, un jugador de elite, puede analizar si lo requiere, muchos plys. Por ejemplo, hace poco Nakamura y Carlsen se enfrascaron en una compleja partida en donde ambos jugadores vieron en algún momento más allá de 20 plys, asombroso para los seres humanos llegar a esa profundidad. Y aunque la posición lo amerite, muchas veces está fuera del alcance de la imaginación de los jugadores de cierto nivel.

Así pues, el ajedrez es difícil, muy difícil para los seres humanos porque nosotros comúnmente usamos breadth first search en lugar de depth first search, y esto probablemente tenga que ver además con las problemáticas que normalmente se tienen en la vida cotidiana y por ende, en la manera de buscar que usamos los seres humanos, en un afán de esforzarnos lo menos posible para hallar la solución adecuada, sino la óptima. Para decirlo de manera menos técnica: nuestras búsquedas para solucionar los problemas son en general bastante superficiales, quizás demasiado.

La campaña presidencial de Enrique Peña Nieto

Hay algo que es fácil de detectar: en el nicho llamado Internet, Peña Nieto no es el candidato favorito ni quien pueda considerarse ganador. Sus errores al no poder mencionar tres tristes libros que lo hubiesen marcado por ejemplo, hablan de la pobreza de persona que es intelectualmente. Ir a una feria internacional del libro y ante una pregunta para que se luciese, lo único que mostró este triste galán telenovelero es que es por decir lo menos, un verdadero idiota.

Quien decide optar por el puesto más importante de este país debería pensarlo bien porque es claro que va a estar en el ojo del público por los meses que duren las campañas, al menos. Pero quiero creer que el razonamiento se nubla ante la vanidad, ante la posibilidad de ser el siguiente presidente de México. Y si para colmo, nos damos cuenta que Peña Nieto es un galancete del canal de las estrellas, siempre impecablemente vestido, rasurado y peinado, (amén de que siempre parece estar estrenando ropa), se presenta como el candidato con la personalidad arrolladora, en donde solamente repite en sus spots lo que dicen sus promotores de campaña, que no son nada tontos. Por ejemplo, obsérvese el siguiente mensaje que se ha transmitido por todos los medios:


Dice el candidato priísta: "como presidente de México me comprometo a bla bla bla". A ver, ¿no debería decir: "como presidente de México me comprometeré a bla bla bla"? ¿O a poco ya ganó? ¿O cómo? El punto es que los publicistas de la campaña priísta manejan las palabras de manera que parezca que está hablando el presidente constitucional de México. Y eso me parece, de entrada, que es un engaño, hecho desde luego con todo el dolo del mundo.

Y este anuncio que puse no es el único. Obsérvese el siguiente:


La misma cantaleta: "como presidente de México me comprometo a ...". Ajá.

Lamentablemente el país no tiene acceso a más cultura y a Internet y por ende, aunque no tenga todas las de ganar Peña Nieto en los medios electrónicos, tiene 50 millones de pobres que seguramente se venderán por unas despensar o por dinero a cambio de su voto. Porque el problema al final de cuentas es poder tener vigilantes y observadores de todos los partidos políticos en donde se vote. En las grandes ciudades no podrán hacer todos los tejes y manejes que hacen y que han hecho por muchos años, pero en el universo rural de este país todo puede ser diferente.

De verdad, no quiero pensar que este cretino se convierta en el siguiente presidente de México. Me da náuseas.

Sunday, April 08, 2012

La campaña presidencial de Josefina Vázquez Mota

Lo dije antes y lo vuelvo a decir: Josefina Vázquez Mota es una señora gris, que tiene algo así como personalidad y carisma cero, que antes de ser candidata del PAN para gobernar este país, jamás hizo alguna declaración en donde comentara sus ideas, sino que al contrario, le daba vueltas al asunto y al final no decía nada ni se comprometía con nada. Ahora, como la candidata del PAN a la presidencia de la República me imagino que sentirá que sus opiniones y argumentos pesan, aunque mantenga su mismo status de no decir nada, de hablar con generalidades y de hacerse tonta sola, por decirlo no tan crudamente.

Apenas hace un par de días la Sra. Vázquez Mota tuvo un amargo desayuno en Tres Marías. He aquí un fragmento de la crónica de la Revista Proceso:

Apenas pasan de las 11:00 de la mañana y Josefina desayuna con su esposo, Sergio Ocampo, y con la candidata al senado Rosi Orozco, una importante líder evangélica.

Coincidencia o no, el restaurante se llama “El Sinaí”, como el monte en el que según la Biblia, Jehová le entregó los Diez Mandamientos a Moisés.

El arribo es desorganizado. Entre el staff de la candidata y los reporteros, hay comensales molestos. Que les sirvan a todos, pide Josefina y, en segundos, su mesa se llena de platones con montañas de quesadillas de todos los guisos y decenas de refrescos que, con pericia olímpica, destapa el mesero.

Nadie atiende el banquete. Agresión a reportera desde la mesa contigua, “limonazo” que va a dar –sin intención evidente pero con muy mala puntería– a la mesa de Vázquez Mota, justo entre ella y su marido. La candidata se aproxima conciliadora, pero el rostro de las familias enojadas no cambia. Le reclaman falta de respeto, no quieren escuchar más, no quieren fotógrafos.

“Si no tiene control de esto… no controlas a nadie”, le espetan.

El dueño de El Sinaí agarra parejo, les pide a reporteros y staff salir.

“Ya estuvo bueno el rato”.

La candidata se disculpa, da instrucciones para salir de lugar. Y su marido, con el rostro desencajado, la sigue sin chistar. Detrás, Rosa de la Garza. Y más atrás, las montañas de quesadillas y las filas de refrescos sin consumir.

Afuera, unas cuantas mujeres, con mandil y platos de plástico, le gritan: “ni un voto al PAN”, “ni un voto al PAN”. No se inmuta. Para eso están las porras de camiseta que transmutan sus coros de caseta por otros improvisados a propósito del escenario: “Morelos Josefina”, Morelos Josefina”.

Hasta aquí la nota.

El asunto del dichoso desayuno terminó mal. Josefina Vázquez Mota no las tiene todas a su favor. No es una candidata que parezca tener una afinidad con la gente. Quizás lo que pasa -me aventuro- es que pertenence al PAN, el partido político que ha desperdiciado doce años de gobierno y que por mucho, no tiene contenta a la gente. Al contrario, llevan dando "gasolinazos" mensuales de 8 centavos por litro (quizás para que no se sienta el golpe), para poner un solo ejemplo.

Ya pasaron -y creo que hace mucho- los tiempos en donde se aparecía el candidato y explotaba el júbilo, los aplausos espontáneos y desmedidos de los acarreados. Ahora las cosas son diferentes. Ahora la gente está más informada y por ende, no se traga todos los cuentos y promesas de campaña. Ya parece ser de una obviedad decir que la gente está cansada de tanto candidato, de tanto político, de tanto diputado o senador abusivo, empezando por su sueldo o por los disparates que a cada rato generan en las sesiones de las respectivas cámaras.

Y ante este rechazo a la candidata panista las cosas empiezan a preocupar al partido azul. ¿Debería abandonar la campaña presidencial? ¿Declararse incompetente? ¿Mostrar algún signo de sensatez ante una candidatura que no va a ninguna parte y que evidentemente no tendrá manera ni siquiera de competir decorosamente? Es claro que todo lo que se mencione en los medios sobre esta posibilidad de abandonar la contienda genera un espantoso ruido en la campaña de Vázquez Mota. O reconvienen el curso o de plano pueden decir desde ahora que Vázquez Mota fue un error. Quizás el baboso de Creel hubiese sido mejor, o el idiota de Cordero, con sus torpes declaraciones como la que empezaba con eso de que seis mil pesos eran suficientes para vivir holgadamente en este país.

Pero ahora es tarde y Vázquez Mota tiene problemas graves, y aún no ha pasado una semana de campaña. Así entonces, la mujer de falda "pero con muchos pantalones", se cae a pedazos, se desarma, se derrite como helado a 40 grados centígrados.

Y no habría que sorprenderse. Vázquez Mota es gris, su campaña es igual que ella. No convence ni a un camello... Yo estoy seguro que los panistas saben que se acabó su estancia en el poder, al menos por los siguientes seis años.

Wednesday, April 04, 2012

Haga sus propios Favicones


Los favicones (que significa los iconos favoritos), son en un principio esos iconitos que aparecen al lado de la dirección de Internet a la que entramos cuando usamos el navegador, pero también hay una variante muy usada, y son iconos que se incrustan o pegan en alguna imagen o fotografía, para apoyar una causa. Las causas pueden ser variadas: apoyar la lucha contra el cáncer de mama o quizás el apoyar al equipo de futbol local, etc. Hay todo género de causas y cada quien puede decidir cuál apoya.

Las imagenes que se utilizan en las redes sociales, Twitter o Facebook, para reconocernos, se llaman avatares y en muchas ocasiones la gente agrega a su avatar un icono dentro del mismo para hacer ver que uno apoya una causa.  Con esto en mente nació Favicon 1.0.

El programa permite cargar imágenes JPG y BMP, las cuales pueden tener un tamaño razonable, digamos hasta 800x600. El software puede manejar imágenes más grandes pero es claro que cuando éstas se convierten en avatares, se pierde mucha información por la imagen que subimos a nuestra red social la hace chiquita.

Una vez cargada la imagen del avatar, se puede cargar el símbolo o icono que queremos insertar en nuestra imagen. Esta imagen, que se reducirá a un 20% del tamaño de la imagen del avatar, no tiene que ser chiquita per se. El propio programa la minimiza.

Hecho estos dos pasos, se puede crear el avatar con el tema o causa que uno apoya. Se puede poner en alguna de las cuatro esquinas de la imagen original (el avatar). Igualmente, se puede fusionar la image del icono de la causa con el avatar a través de un proceso llamado blending, que significa fusionar dos imágenes a un porcentaje. Se incluye un control que permite cambiar la cantidad de transparencia de la imagen con respecto al icono y viceversa.

Un ejemplo es éste: la guapa modelo seguramente apoya la lucha contra el cáncer de mama. He aquí el resultado final:


A quien le interese este programa, mándeme un correo a morsa@la-morsa.com y recibirá el programa en su buzón totalmente gratis.

Tuesday, April 03, 2012

Más promesas incumplidas de Raúl Hernández

Desde las 5 de la tarde del día de hoy (3 de abril del 2012), estoy tratando de ver las partidas en vivo del nacional abierto. Los pareos ya los pusieron pero la transmisión no funciona. Acaso se ven dos partidas bien, las otras seis están "congeladas" en el tiempo. Una está en la jugada seis y las otras en la jugada uno (denle click en la imagen para que vean lo que quiero decir).

Según Raúl Hernández, se buscaría que no pasara lo que pasó en el Continental de Toluca, pero a pesar de las buenas intenciones la realidad es otra: la transmisión de las partidas es francamente deficiente. ¿Ahora qué justificación dará? ¿No se supone que contrató gente especializada para que no fuese ocurrir lo que pasó en torneos pasados? ¿Más promesas incumplidas? ¿Más mentiras? ¿Se echará Raúl Hernández toda la culpa de nuevo (como en el caso del Continental) por la deficiente transmisión? ¿Y éste es el presidente que quiere reelegirse? Todo esto me parece lamentable.

"Matemática... ¿estás ahí?" de Adrian Paenza


El sábado pasado, Guil Russek me prestó un libro de matemáticas recreativas, de divulgación de las matemáticas, llamado "Matemática... ¿estás ahí?" escrito por Adrián Arnoldo Paenza (Buenos Aires, Argentina, 9 de mayo de 1949), licenciado y doctor en ciencias matemáticas por la Facultad de Ciencias Exactas y Naturales de la Universidad de Buenos Aires y además, periodista deportivo.


Entre 1986 y 1997 fue profesor asociado del departamento de matemáticas de esa institución. Ganador del Premio Konex en la categoría Periodismo Deportivo Audiovisual en 1997, ejerce el periodismo en diversos medios, y es conductor del programa «Científicos Industria Argentina», galardonado con el Premio Martín Fierro en 2007 y 2011; «Alterados por pi» de Canal Encuentro, «Explora y Laboratorio de Ideas». Trabajó en las radios más importantes del país y en los cinco canales de aire de la Argentina. Fue redactor especial de varias revistas y colabora con tres diarios nacionales: Clarín, Página 12 y La Nación. Actualmente es columnista especial de Página 12. En 2007 recibió el Premio Konex de Platino a la Divulgación Científica.
Su obra literaria tiene mucho que ver con las matemáticas recreativas y de divulgación. He aquí un listado de las mismas:
  • Propiedades de Corrientes Residuales en el Caso de Intersecciones No Completas, tesis doctoral de 1979.
  • Matemática... ¿Estás ahí?, sobre números, personajes, problemas y curiosidades.
  • Matemática... ¿Estás ahí? Episodio 2
  • Matemática... ¿Estás ahí? Episodio 3.14, problemas, juegos y reflexiones sobre las matemáticas. Caen bajo su cordial charla el Nim, la teoría de juegos, la combinatoria, la Ley de Benford, los números primos y otras maravillas de los números, las figuras y el pensar.
  • Matemática... ¿Estás ahí? Episodio 100, más historias sobre números, personajes, problemas, juegos, lógica y reflexiones sobre la matemática.
  • Matemática... ¿Estás ahí? La vuelta al mundo en 34 problemas y 8 historias
  • ¿Cómo, esto también es matemática?
El libro "Matemática... ¿estás ahí?" contiene los siguientes capítulos:

  • Números
  • Personajes
  • Probabilidades y estimaciones
  • Problemas
  • Reflexiones y curiosidades
  • Soluciones
  • Apéndice
El estilo es muy ameno y fácil de digerir. El autor intenta no envolver en muchas ecuaciones y números cada apartado, por lo cual se puede seguir su razonamiento casi de forma automática. Tiene capítulos simpáticos, como por ejemplo: Cómo conseguir un contrato como consultor usando un poco de matemáticas o su reflexión en ¿Cuántas veces se puede doblar un papel? que termina finalmente mostrando el mismo problema de los granos de trigo en ajedrez (que son potencias de dos). Otros artículos, me parece, merecían más contenido, como el problema 3x + 1 que en mi opinión se queda corto. Hay mucho más que decir al respecto.

Como sea, es un libro divertido, que se puede leer a cualquier hora y nos asoma a un mundo fantástico, el cual en realidad está muy ligado al de la realidad cotidiana, en donde hay muchas más matemáticas de las que solemos ver.

Hallé que el libro completo está aquí, aunque no sé si el autor o la editorial hayan dado su permiso.