Notas sobre el caos


No creo estar buscando nada pero tampoco hago esto sólo por hacerlo. No busquen algo que tal vez no esté aquí, sólo son unas notas que iba haciendo y que tal vez luego ordene (o no).

Las 7 puertas lógicas:

Existe una octava? Kaos? GoD?

a 8ava implica b

a 8ava implica ~b

Dos resultados a una misma entrada? Sin importar los estados anteriores ni futuros. Completamente atemporal?

¿Qué pasa si generamos un algoritmo que mezcla todas las 7 puertas contra todas (estilo round robin)?

Y a cada permutación le damos dos entradas (0 y 1).

Cómo se ven las tablas de verdad? Son simétricas? Generan algún patrón? Generan Kaos? Algún sentido?

Que pasa si con el tiempo el sistema cambia las reglas? Que pasa si las cambia según lo que va pasando/aprendiendo? Es un sistema experto cuyas posibilidades no se conocen.

Otra vez sistema experto… será por ahi?

Un sistema que aprende a ser caótico tal vez?

Lo que están buscando en el mundo al hacer un chip caótico es lograr un chip que no tenga nada harcodeado sino que pueda ser lo que necesite ser en el momento que se lo piden. Es dos (o tres o cuatro o infinitas) cosas al mismo tiempo -> gato de Shröedinger definitivamente.

Parece ser que la definición de Caos va más hacía la posibilidad de ser todo ante la improbabilidad de ser una sola cosa específica.

Retomando más arriba:

a 8ava implica b

a 8ava implica ~b

pero lo más importante aquí para lograr esto es el contexto <- definir contexto.

Es decir no tiene nada escrito, no existe nada hasta que se le pide algo, pero la respuesta va directmente relacionada a lo que se le pide (contexto?) Te suena a GoD?

Básicamente el chip caótico es todas las puertas lógicas al mismo tiempo y se reacomoda según la salida o más bien reacomoda la manera de interactuar de sus piezas internas para generar la salida que se le pide?

PARÉNTESIS: Algo así ya se hace

SDR - software defined radios: componentes que antes usaban hardware ahora se hacen en software; hence virtuales (ejemplo ecualizadores, amplificadores).

FIN PARÉNTESIS

¿Cómo puede cambiar tan rápido? Es fácil imagina un sistema estilo butterfly effect, el mínimo cambio reajusta todo. Un solo cambio de voltaje reajusta el siguiente paso, algo así como el cerebro la descarga inicial en una neurona pone todo en movimiento, pero en el cerebro hay memoria no? Aunque técnicamente dónde está la memoria, los recuerdos?

Qué pasa si son virtuales? Es decir no están hardcodeados eso permite un sistema caótico? Algo hardcoded virtual, en memoria RAM, en cache? Es esa la solución?

Caos es algo que es por el tiempo en el que tiene que ser? Y después no es!?!

MPI (me parece importante, no confundir con npi) - Un S.E. que es el que decide que sacar según lo que se le pide, está adivinando? Es por gustos? Tiene gustos el S.E.? Hay algo más que le impulsa a tomar una decisión?

Lo importante de los sistemas caóticos no es su impredictabilidad (unpredictable - que sean impredecibles ya en español de verdad, hahaha) sino que son MUY sensitivos al cambio, es decir, generan respuestas diferentes a cambios muy sencillos en las entradas (lo más importante es que se empiezan a considerar elementos que antes no importaban para el funcionamiento):

Ya no es:

a 8ava implica b

Sino a,c implica b aunque en términos caóticos debe ser algo así como: a,c,infinito de todo implica b o algo aún más chido (este es mío) a,c,d,e, ~b (es decir NO b, siempre estuvo ahí pero nunca se vio) implica b (!!! Claro !!! No suena obvio??!!) Es como si la entrada ya fuera pidiendo la salida (hahaha, ya deja de meter GoD).

De hecho crear un software que responda a tal flexibilidad no es nada dificil, es decir, se puede crear a nivel de máquina, lo que lo vuelve infinitamente sencillo y rápido (de hecho lo están creando a nivel de hardware, lo que ya es milliones de veces más increible).

Caos va vinculado a sistemas dinámicos - es decir sistemas cuyos estados cambian con el tiempo (definitivamente un S.E. que controla su propio código fuente) con una gran sensibilidad (que mariposos)

…result of this sensitivity, which manifests itself as an exponential growth of perturbations in the initial conditions, the behavior of chaotic systems appears to be random

CON TODO Y QUE ESTOS SISTEMAS SON DETERMINÍSTICOS. Ahí está el catch, no son caóticos, sólo no se han mapeado todas las permutaciones posibles: se les llama sistemas caoticos determinísticos o simplemente caos. (QUE???)

La definición de Caos va más de la mano de lo impredecible como la antítesis de Cosmos (orden o sistema armoníco). En griego no viene de desorden sino del vacío original del espacio. La palabra griega para desorden no se puede escribir aquí (hahaha no porque el mundo va a explotar, sino porque está en carácteres griegos, pero búsquenla).

Entonces? Se puede crear un sistema Caótico Real? Un sistema justo (esta es sólo porque acabo de ver Batman II)?

Kaos es caótico porque tiene todas las posibilidades? GoD es caótico porque lo que se le pide es lo que da, es decir si cambia la entrada en lo más mínimo también cambia la salida; supersensibilidad exponencial al cambio?

O más bien tengo que buscar otro experimento que realmente sea un sistema caótico (no como la definición lo dice, sino como nosotros lo queremos (ahhh, bueno… como yo lo quiero).

Saludos,
Gorka


Experimento #7: LIFE


Lasting
Interaction
Foments
Existence

Premisa: Usando de ejemplo una página de Internet, se define como la “vida” de la página de Internet todo el tiempo que transcurre mientras una persona entra a ésta y hace click y sigue navegando en la misma página sin importar el tiempo que transcurre entre cada click (a veces puede ser un segundo, a veces días - aunque eso es un caso raro). Y se define como “muerte” para la página de Internet cuando la persona a) cierra el navegador, b) hace click en un link que lo lleva a otra pagina que no sea del mismo dominio (a otra página totalmente diferente) o c) cualquier evento externo que evite que el usuario siga interactuando con la página. Las páginas de Internet poco a poco han ido mejorando en el sentido de hacer sentir bienvenido a la persona que las visita, desde un simple Bienvenido con el nombre de la persona, hasta recomendaciones de música, amigos u otros definidos por la actividad que genera la persona en tales páginas. Sería lógico pensar que eventualmente las páginas tienen que desplegar contenido completamente diferente a cada persona que las visite si quisieran lograr “personalizar” al grado máximo. Aunque lógico, ésto no es tan intuitivo, pero sería algo así: cada vez que yo entro a una página de noticias sólo se me enseñan las noticias que realmente leería, pues no hace falta enseñarme encabezados (digamos Financieros) con los cuales nunca he interactuado (digamos que siempre veo Deportes). Aunque para ese ejemplo la estrategia seguida ha sido que el mismo usuario sea el que define su “página de Encabezados” o su “Starter Page” o los “Feeds” que lee frecuentemente, es ilustrativo. Un mejor ejemplo sería así: cuando yo busco en Google algo, recibo ciertos resultados, cuando tú buscas en Google lo mismo, recibes diferentes resultados! Y muchas veces aunque sean resultados similares aparecen en diferente orden1.

¿Qué pasa entonces? Pues que los desarrolladores de las páginas de Internet ya no escriben “contenido” sino que tienen que escribir páginas (scripts o programas) que sean las que “escriban” el contenido según quien lo esté pidiendo.

Ahora sí, al experimento (para todos los que llegaron hasta aquí):

Se propone un programa de computadora que funcione en Internet (como interfaz una página Web) y que sea capaz de crear dinámicamente contenido de tal manera que el usuario SIEMPRE continue interactuando con el sistema. El programa buscará combinar diseño con contenido de manera que el usuario no deje de interactuar con la página através de link y/o redirecciones automáticas. Para esto el programa debe ser capaz de reconocer a la persona que lo esté usando y definir su perfil de usuario (probablemente cada persona necesite diferentes combinaciones de diseño/contenido/interactividad para no dejar “morir” al programa)2.

Si el programa lograra definir con exactitud el perfil de cada persona que lo use, será capaz de evitar que la persona deje de leer/escribir/interactuar con el contenido que este despliegue. De esta manera el sistema se mantendrá en “vida” hasta que sea un evento externo lo que termine tal interacción (un terremoto, falla de luz, la muerte del usuario, etc).

Sin realmente ser “conciente” de sí mismo el sistema será capaz de recopilar y usar información que le permitan seguir “viviendo”.

Saludos,
Gorka

  1. La verdad es que la idea de búsquedas personalizadas a mi me caga, siento que se pierde toda la objetividad y se le quita el poder al usuario de decidir realemente “que es lo que le funciona”, sin embargo tiene sus ventajas, tal vez en otro post describa ambos escenarios. Además que el hecho es que para lograr algo así tienen que saber exactamente quien es el usuario, lo cual quita la privacidad, pues todo el tiempo estamos siendo vigilados para lograr definir bien nuestro “perfil”. 

  2. Hoy en día, esto ya existe, así que no se asusten. A los que saben como hacerlo, Internet en un medio donde ya no existe la privacidad. 


Recargas Asíncronas


¿Qué es?

Básicamente sirven para poder obtener información para enseñarla en una página Web sin tener que recargar toda la página. Dado que las páginas muchas veces tienen información que siempre es la misma (menús, banners, footers, headers, sidebars, etc) es más rápido sólo recargar el contenido en sí.

¿Que diferencia hay?

Multiprocesamiento. Lo cual permite que todo sea más rápido.

Tecnologías

HTML es un lenguaje orientado a eventos (click o no click), es completamente síncrono, no pueden existir dos eventos al mismo tiempo. Es decir, un solo proceso de forma secuencial.

Flash y AJAX son tecnologías que pueden usar eventos asíncronos. Pueden existir tantos eventos simultáneos como el PC pueda llevar a cabo y pueden ser de muchos tipos diferentes (interacción con todos los periféricos de la PC). Es decir “N” número de procesos en forma totalmente descontrolada (pero controlada por event Handlers).

Aunque AJAX surgió mucho después de Flash, pronto se volvió muy popular (eso dicen unos amigos que tengo, hahaha, que nerd) porque se basa en Javascript y este lenguaje no le pertenece a nadie. En cambio Actionscript es de Macromedia (hoy en día de Adobe).

Todo este post es para presentar un tipo de recargas asíncronas que no requiere de ninguna de esas dos tecnologías y funciona de la siguiente manera:

En un HTML se carga un IFRAME invisible (este va a ser el espacio donde se va a cargar continuamente la información), y los necesarios DIV’s (pueden ser otros tags, pero estos funcionan bien) como contenedores. La idea es que los links cargan la información en el IFRAME, luego se le saca el innerHTML y se manda al DIV correspondiente. Si todo está bien planeado y bien organizado no hace falta tener wrappers extras como XML para transportar datos sino que directo en el IFRAME se puede cargar la info tal cual se vaya a desplegar y punto. Recargas asíncronas sin necesidad de aprender Actionscript (LoadVars o XML) ni AJAX (HTTPRequest).

Saludos,
Gorka


Como jugar al dominó


Como neta ando bien ocupado entre los recorridos, nuevos diseños y nuevo sistema de TrotaMexico, aquí les va uno fácil:

Así que para los interesados en aprender dominó aquí van un par de cosas que tienen que saber:

1.- Para que el dominó sea divertido es obligatorio tomar un par de cervezas mientras uno juega (opcional: tomar Fernet para los que gusten, yo lo haría estando en Argentina).

2.- Igual que el truco es un juego entre amigos, y de la misma manera es recomendable molestar y burlar al otro cada vez que uno gana o cada vez que uno va a ganar o cada vez que uno quiera (opcional: beber cada vez que alguien gana y cada vez que alguien pierde; osea siempre).

3.- El dominó se juega de 4 personas, 2 y 2 en una mesa, suelo, tierra, parados, en la cola para las tortillas, para los tacos, en el super, en el coche, en la calle, por teléfono, etc. Las personas que se tienen enfrente juegan en equipo y el objetivo del juego es quedarse sin fichas. Para eso hay que ponerlas en el tablero de manera que números idénticos hagan contacto. Cuando una persona se queda sin fichas ese equipo gana la mano, se suman los puntos de las fichas que les quedaron al otro equipo y se anotan: el primero en llegar a 101 o más puntos pierde (Originalmente era a 100 pero para dar una segunda oportunidad si llegas a 100 puntos exactos puedes seguir jugando hasta que pases de 101, de hecho cuando un equipo llega exactamente a 100 y recupera y gana el juego eso se llama “LA CARRERA DEL INDIO”, en cual caso todos beben).

4.- El dominó es un juego de “CALLADOS”, es decir, está prohibido decir o hacer señas de que fichas se tiene. Decir que fichas tengo es considerado trampa y en el momento que una trampa se detecta se termina esa mano y el equipo tramposo paga 25 puntos. Cada persona debe recoger 7 fichas y sólo 7 fichas, si alguien llega a recoger 8 o más y las ve, en ese momento se termina la mano y el equipo del que “NO SABE CONTAR” (pues levantó más de 7 fichas) paga 25 puntos (opcional: todos beben uno o varios tragos de cerveza).

5.- Cuando uno gana una mano por cortesía el equipo contrario debe revolver las fichas para volver a escoger, esto se llama “HACER LA SOPA” o “REMAR”, mientras un equipo revuelve, los otros tienen tiempo de beber (cuando se han acabado las bebidas en la mesa se recomienda apostar en una mano al que pierda tiene que servir las bebidas de todos).

6.- Se juega empezando por el equipo que ganó la última mano (en la primera mano, se tira la ficha 6,6) y de ahí hacia la derecha de uno en uno.

7.- Es muy recomendable (no obligatorio, pero sirve mucho) saber contar del 0 al 6, pues…

el dominó es muy sencillo pero tiene sus mañas matemáticas: existen 7 fichas con cada uno de los números del 0 al 6 combinadas entre sí, es decir, el cero se combina con el 1,2,3,4,5 y 6; también el 6 se combina con todos, pero la combinación 0,6 sólo existe una vez, es decir es lo mismo 0,6 que 6,0. Parece trivial pero saber y entender esto es el secreto.

Sí sólo existen 7 fichas de cada una y en el tablero ya se han jugado 6 fichas del número 3 y en una de las esquinas está la posibilidad abierta del 3 y yo tengo esa última ficha quiere decir que estoy “FIRME” es decir que nadie más va a poder poner fichas en esa orilla pues yo soy el único con esa opción.

Estar “FIRME” es un arma de doble filo porque por un lado, estoy asegurando que nadie me puede hacer fallar (en terminología dominó es “PASAR” y lo común no es decirlo sino golpear levemente la mesa con el puño cerrado y seguramente beber), porque tengo una posición segura para una de mis fichas PERO… si sólo hay 7 fichas de cada una y ya hay 6 en la mesa y yo tengo la ultima lo único que tendrían que hacer las demás personas para “adivinar” que ficha tengo yo, es contar cual de las 7 es al que falta. Entonces sí, por un lado tengo asegurado un tiro pero todos saben que ficha tengo: y cuando yo juegue esa ficha ya van a saber de antemano que posibilidad va a abrir, es decir si me quedaba el 3,4 (FIRME AL 3) cuando yo la tire va a quedar abierto el 4 (de ahí ya se pueden ir haciendo especulaciones para ver que más tirar).

Si logras estar “FIRME” cuando te queda una sola ficha ya no hay manera que te hagan “PASAR” o fallar así que puedes dar por asegurada la mano, por lo tanto, se recomienda quedar “FIRME” si uno quiere ganar. Y lo recomendable cuando uno está “FIRME” es no tirar esa ficha a menos que no se tenga otra opción.

¿Pero qué pasa si yo estoy “FIRME”? Las otras tres personas tienen un espacio menos para tirar fichas, incluyendo al compañero, hay que tener cuidado porque podría ser contraproducente quedar FIRME: cuando se juega el primero en jugar es el que “LLEVA LA MANO” de la mesa, también “LLEVA LA MANO” de su equipo y el que le sigue por ende es el que “LLEVA LA MANO” del equipo contrario. Llevar la mano significa que yo tengo la oportunidad de ganar pues soy el que tira fichas antes que todos.

Si estamos jugando y yo no “LLEVO LA MANO” y quedo “FIRME” debo tener en cuenta que la persona a mi izquierda “TOMARÍA LA MANO” de la mesa en caso que mi compañero fallara entonces al yo quedar “FIRME” puede ser que haga que mi compañero “PASE” y el equipo contrario “OBTENGA LA MANO” y ganen, con todo y que yo estaba “FIRME” (por eso hay que tener cuidado).

Eso es con lo básico, practiquen un poco y después te iré contando las demás frases y secretos y situaciones para beber.

Glosario extra:

TIRAR –jugar una ficha; “¿Por qué tiraste el 3,4 y no el 3,2 compadre? Tiré porque así me pareció lo correcto.

Saludos,
Gorka


Ideas en renta #2


Siempre tuve ganas de hacer una película acerca de dos personas que van platicando acerca de como harían una película de humor (cínico) en México, donde se burlarían de actores, conductores, situaciones actuales. Todo esto metido en un desarrollo en el cual van planeando que lleva la película: perfiles de los protagonistas; desarrollo de situaciones obvias vs. situaciones que rompen; como serían los actores; todo de manera metanarrativa.

El gran final sería contar que están haciendo un ejercicio para un taller literario en el cual tienen que caminar todo el día platicando y desarrollando una idea (algo así como meta-metanarrativa).

Saludos,
Gorka


Experimento #6: Generated On Demand


Generated
On
Demand

Se propone un programa de computadora que cree archivos que le sean solicitados al momento que le sean solicitados. El archivo recibirá el código del programa que tendrá que crear (o un pseudocódigo con algún tipo de encripción para manejo fácil). El programa contará con un subprograma índice donde se listarán todos los archivos que el programa puede crear. La idea del índice es lograr que los buscadores de Internet indexen los archivos creados por el programa. Tales buscadores indexarán el contenido de los archivos (sean lo que sean) de tal manera que cuando alguien solicite alguno de los archivos (por su contenido) sólo tendrá que acceder a través del link proporcionado por los buscadores (sin tener que buscar el archivo en GOD).

Al utilizar el sístema de índices de los buscadores de Internet el programa podrá crear CUALQUIER archivo que se le solicite (virtualmente dado que los buscadores guardan su información en bases de datos que tienen límite) sin tener realmente guardado tal archivo.

De esta manera se podrá generar tanto o más contenido para Internet dentro del programa del que hay hoy en día en la Web.

Proximamente una versión inicial de este programa.

Saludos,
Gorka


¿Qué me motiva?


Aprender… con la esperanza de que tal vez, algún día, pueda saber.

Saludos,
Gorka


Pagination