Habi Hablóg
Declaro:
XML válidoXHTML válido800x600 +
RSS válidoCSS válidoNavegador digno
  Blog   Archivo   Contacto   Administración  

Acerca de

Matemático, informático, aficionado a la electrónica, friki... y otras cosas que no vienen a cuento ni pasan los filtros de palabras.

¿Queríais un blog? Ahí va.

Red antisocial

¡Me van a volver loca! 2.0
La Fragata Portuguesa

Z
¡Me van a volver loca!

Últimos posts

El expediente X que nadie pidió
eNigma
La cuadratura del píxel
Portando desde Spectrum
Inexorable

Últimos comentarios

Habi
NoSupoResolverLaFuncion
Edu
Habi
EnriqueGG

Calendario

No hay fechas.

Categorías

Chorradas
Paranoias
Posts lúcidos
Tecnoesoterismo
Yuyus

Cenas de Abj

Abj debe 7 cenas.

Frase célebre

Zarith (a Habi): pues no te tengo en spam. Qué raro, deberías estar ahí

I'm A Goofy Goober

Habi - 04/02/2012 19:25:43 - Tecnoesoterismo

Intentaré ser poco matemático, que se me asustan los lectores.

Existe un método de construcción de fractales llamado IFS, basado en el hecho de que una aplicación contractiva tiene un punto fijo (atractor por tanto). Supongamos que trabajamos en R2 y que nuestras aplicaciones serán transformaciones afines de la forma:

Lógicamente si a, b, c y d son menores que 1 en valor absoluto, entonces es contractiva.

Generalizando: si tenemos n transformaciones así y les asociamos una probabilidad pi (con i entre 1 y n) a cada una tenemos el llamado “juego del caos”, en donde partiendo de un punto vamos transformándolo aleatoriamente según la regla que le corresponda. Y por la autosimilitud (puntos fijos) del sistema tenemos una bonita fractal. También representaremos cada aplicación en una línea para ahorrar (y para no tener que usar tensores).

Ejemplos:

-  -  -

Bien. Para una de las asignaturas de libre configuración de la carrera (teoría del caos) hice un programa de fractales con varios módulos, entre ellos uno IFS. Entre otras cosas. La verdad es que las prácticas fueron una sobrada en todos los sentidos; por ejemplo, incluí ésta fractal IFS con mi nombre:

El truco es fácil: dibujamos un rectángulo en un papel, y calculamos las transformaciones que lo llevan a cada uno de los palotes que conforman cada letra; además, se puede distribuir la probabilidad en función del área de cada palote, para que el relleno de puntos sea más uniforme. En los fractales anteriores el degradado de negro a color representa la densidad de puntos en esa zona.

-  -  -  -  -

Años después, cuando terminé la carrera y para celebrarlo, decidí darle una vuelta de tuerca. Una de nuestras coñas era que al unir una colección de puntos cualquiera siempre aparecía la cara de Goofy.

Así que... cogemos una imagen de Goofy (mapa de bits 256x256 representando a [0, 1]2) y por cada pixel que pertenezca a su cara escribimos la línea de la aplicación correspondiente.

Lógicamente ai=di=1/256, bi=ci=0, ei=xi/256, fi=1-yi/256, y pi=1/n para i de 1 a n (n en este caso es 10.098, el número total de píxeles y por tanto filas de la matriz) y xi e yi son la columna y fila respectivamente del pixel en cuestión en su mapa de bits correspondiente.

En cualquier caso, ésta y no otra es la historia de la fractal de la cara de Goofy.

...

[ Celebrémoslo. ]


Jorge - 09/02/2012 15:26:10

Hola fenómeno (o tigre como diría un antiguo profe): 
 
Quería ponerme en contacto contigo para resolver una pequeña y fácil duda sobre células de baterías portátil. Si tuvieras a bien enviarme un mail... 
 
Aquí un nerd en electrónica, ahí un fenómeno.



Habi - 10/02/2012 20:12:49

Contestado.



L - 17/02/2012 12:35:30

¡Dios mío, era cierto! Uniendo cualquier cantidad de puntos sale Goofy. No me esperaba verlo demostrado con tanta contundencia. 
 
Por cierto, offtopic: la fe de vida voló. Ya decía yo que me notaba muy frío. ¿Qué ha pasado?



H - 17/02/2012 22:18:29

Me temo que la fe de vida murió; o al menos dejó de dar fe de vida. 
 
Además, siempre puedes saber si Z sigue viva mirando a su FarmVille; o en mi caso, la cuenta del Kingdom of Loathing.



Pablo - 22/03/2012 7:15:33

y si la transformacion fuese de r3 a r3?



Habi - 22/03/2012 11:01:30

Si tienes un display holográfico, adelante. 
 
Ya más en serio, vale obviamente para cualquier R^n con las generalizaciones pertinentes (en el caso que comentas, matriz de la transformación de 4x4 y 13 columnas en la otra). 
 
Yo lo hice en aquellas prácticas en R^3 usando cónica (definiendo a priori los parámetros de la perspectiva, dibujando el pixel transformado en cada paso) para el típico helecho y poco más, aprovechando el "engine" 3D que hice para ver los atractores. 
 
Si quieres un Goofy tridimensional recursivo, te tocará voxelizar. El proceso es trivial (e idéntico).




Post cerrado