¿Cómo se podría expresar la rumiación mental en la programación de computadoras?

Aquí hay una aproximación aproximada sobre cómo funciona la rumiación:

Comencemos por postular un “nodo” como concepto atómico: podría ser una idea, una imagen o memoria distinta o lo que sea. Los ejemplos podrían ser “el invierno pasado”, “democracia”, “Barrio Sésamo” y “olor a café”.

Cada nodo está vinculado a una nube ponderada de otros nodos, por lo que el “olor a café” podría vincularse a “mañana”, “oficina”, “taza”, “etc.” Por ponderado, quiero decir que, en igualdad de condiciones, “olor a café” es (digamos) más probable que evoque “mañana” que “oficina”.

Usted dice “olor a café”, creo que “mañana” y “mañana” se relaciona con “cama”, “ducha”, “luz del sol”, “cepillo de dientes” y “resaca”, con (por ejemplo) “ducha” teniendo el mayor peso .

Entonces mi rumia dice “olor a café” -> “mañana” -> “ducha”.

Este ingenuo modelo de rumia es trivial a modelo. Solo necesita una estructura de datos para almacenar en caché todas las conexiones y sus pesos, y luego comienza en la entrada (“olor a café”) y devuelve el enlace más pesado (“mañana”). Luego lo usa como entrada (devolviendo “ducha”). El programa terminaría cuando llegara al final de una cadena (por ejemplo, si “la ducha no conecta con nada”), o podría funcionar para siempre, si, por ejemplo, “ducha” se relaciona con “desayuno” relacionado con “café” oler.”

Probablemente quiera agregar algunas reglas de “cansarse de este tren de pensamiento” para detener bucles infinitos. Tal vez siempre te detengas en el quinto enlace o algo así.

Puede ver un sistema similar a este aquí: http://www.visualthesaurus.com/

(¡Muy divertido de jugar!)

Llamé a esto un modelo ingenuo por varias razones. El principal es que lo que describí anteriormente, dado el “olor a café”, siempre produce el mismo resultado. De hecho, si va a crear un sistema como este, es mejor que almacene en caché una cadena la primera vez que se construye, ahorrándole así la molestia de reinventar la rueda cada vez que se ejecuta el programa. (¿Y de qué sirve tener “oficina” en el conjunto de datos si “olor a café” no tiene posibilidad de evocarlo?)

La rumiación humana no funciona de esa manera. Si sugieres “olor a café” el sábado, podría evocar “mañana”, mientras que el lunes es más probable que evoque “oficina”. Esto sugiere que la rumiación humana opera en base a múltiples entradas que pueden cambiar el peso. El hecho de que sea un día de trabajo priorizará los conceptos relacionados con la oficina, ponderándolos más. Si es sábado, y su jefe lo llama a su casa, eso también podría ser la “oficina” principal, haciendo cambiar sus asociaciones si, unos minutos después, alguien le hace pensar en los olores del café.

Además, es importante recordar que las personas tienen memoria de trabajo que puede contener más de una idea a la vez (es famoso que la mayoría de las personas puede elegir entre cinco y siete), por lo que el “olor a café” podría evocar “taza” al mismo tiempo, básicamente escribiéndolos todos, uno al lado del otro, en una especie de pizarra mental.

Además de los nodos, también tenemos un almacén de algoritmos para combinar y transformar nodos. Así que una vez que “oficina” y “taza” estén juntos en la pizarra, podrían interactuar de alguna manera inesperada, tal vez haciéndome pensar en los trofeos (“tazas”) en la vitrina que mi jefe tiene junto a su escritorio … O “la oficina” “Podría evocar” a Microsoft, “y, con” taza “en juego, podría pensar en la vez que derramé jugo de naranja en un CD de instalación.

Además, el hecho de que se evoquen “oficina” y “taza” podría cambiar algunos otros factores, haciendo que la vinculación sea diferente a la que tendría si solo hubiera pensado en la “oficina” por sí mismo.

De lo que estamos hablando es de un sistema profundamente interconectado y extremadamente sensible. Uno que probablemente sea caótico (como en Chaos Theory). Ciertamente es posible, en teoría, modelarlo, pero no es fácil.

Douglas Hofstadter y sus estudiantes graduados hicieron algunos sistemas de construcción de trabajo fascinantes como este. Él los describe en “Conceptos de fluidos y analogías creativas”.

http://www.amazon.com/Fluid-Conc…

Sigue siendo un libro fascinante, pero se está desarrollando en años. Me encantaría saber dónde, si es que en alguna parte, ha conducido esta investigación. Si alguien puede hablar de eso, ¡estaría agradecido!

Espero que puedas implementar algo así con un algoritmo “errante” de algún tipo.

Supongamos que tiene un modelo de dominio que es, desde cierta perspectiva, un gráfico de objetos modelados como nodos en el gráfico y las relaciones entre esos objetos como los “arcos” del gráfico.

Posiblemente dos hilos que deambulan aleatoriamente por ese gráfico podrían probar si hubo una buena correlación entre los últimos nodos atravesados ​​por cada uno de ellos. Si lo hubiera, podrían sacar una posible conclusión, como “X es a Y como A es a B”

Algún otro hilo podría estar trabajando en este conjunto de posibles conclusiones, probando otros factores para decidir si descartar las conclusiones como accidentales, o promoverlas a “posibles ideas”.

… ¿Es ese el tipo de cosa que estabas buscando? Solían llamarlo “IA” 🙂