Grafos y accidentes

Noviembre 27, 2009

La pregunta por la ontología (I) / Modelado por antiobjetos

Archivado en: filosofía, técnica — Esteban S @ 1:32 pm

Cierto artículo que leí hace poco me dio ganas de seguir con el problema de la ontología de lo social que mencioné hace unas semanas.

En él, Alexander Repenning, quien se dedica a la psicología y la pedagogía de la programación, presenta su idea de los antiobjetos junto a una aplicación llamada difusión colaborativa. Esta última es implementada en la inteligencia artificial de juegos sencillos; entre ellos, uno de fútbol. Frente al desafío de crear un juego sobre este deporte, los chicos con los que trabaja Repenning intuitivamente se enfocan en los jugadores, planteándose el problema de darles una inteligencia artificial convincente. La pregunta que inaugura a los antiobjetos es la siguiente: ¿y si ese resultado pudiera conseguirse de manera más eficiente apelando a factores externos a los jugadores, y sin correlatos observables, casi enteramente ficticios?

Que la pelota o el campo sean los depositarios de las principales actividades que guían al juego es absurdo. Y sin embargo, Repenning logró armar desde esas premisas una representación verosímil de un partido de fútbol: los jugadores se la pasan a quien está menos cubierto, tiran directo al arco cuando todos los de su equipo están marcados, etc.

Esta inversión contraintuitiva entre lo que está en primer y segundo plano es lo que Repenning llama un antiobjeto.

La idea abre algunas cuestiones filosóficas y metodológicas interesantes, que el autor intenta cerrar afirmando que cualquier extrapolación a fenómenos empíricos es improcedente:

“(u)na limitación intrínseca de este marco es que se aplica solamente al mundo de lo artificial, donde la computación es empleada a discreción del desarrollador y puede ser puesta en cualquier lado. No hay equivalente en el mundo real. Los campos de fútbol y el aire que rodea a los pájaros no participan en ningún tipo de computación que nos sea accesible”. (Traducción mía).

¿Qué tan válida es esta objeción?

Septiembre 7, 2009

Una apuesta metodológica (2)

Archivado en: antropología, técnica — Esteban S @ 12:12 pm

1. Lograr que Mariano la invitara al teatro le había tomado a Juliana una semana de sutiles reproches a su falta de iniciativa. Aunque verdaderamente quería ver la obra, lo que más placer le dio fue que él creyera estar actuando por sí mismo al llevarla.

Su alegría se esfumó cuando vio en la antesala a Alejandro, y fue reemplazada por un remolino de incomodidad, miedo y ganas. Por suerte la multitud era lo suficientemente grande y compacta como para evitar que Mariano se lo encontrara.

Aunque la atracción de Juliana por Alejandro tuvo sus fugitivas concreciones, él siempre fue elusivo. Por el brevísimo vistazo que pudo pegarle, mantenía el gesto entre desdeñoso y melancólico de siempre, pero transfigurado por una prolijidad inusual en él.

Diez minutos después todos entraron para tomar sus asientos.

A Juliana le resultaba increíblemente difícil concentrarse en la obra. Trató de distraerse criticando la escenografía, la iluminación y las insuficiencias de la compañía.

Las miradas son escasas y valiosas; nadie que se respete, pensó Juliana, las da sin alguna expectativa de reciprocidad – menos todavía corriendo el riesgo de que la pesque su pareja. Y sin embargo sus ojos se desviaban intermitentemente en su dirección.

Antes de que pudiera seguir reprochándoselo, sostuvo la mirada de Alejandro durante dos segundos.

Eso bastó.

2. En uno de esos momentos que hacen que valga la pena tener un blog, Sergue vió mi apuesta. Me corresponde ahora dar un ejemplo del concepto concurrencia del que hablé.

3. Un sistema de transiciones es un múltiple (E, Acc, →, I, P, M), siendo E : un conjunto de estados, Acc : un conjunto de acciones, → : una relación de transición entre un estado y otro mediada por una acción, I : un conjunto de estados iniciales (siendo I subconjunto de E) P : un conjunto de proposiciones, y M : una función de marbeteo que establece si una proposición determinada de P es verdadera o falsa en para cada uno de los estados en E (formalmente E → 2P).

4. Concentrados por un momento en las miradas a exclusión de todo lo demás, pensemos a Juliana, Alejandro y Mariano como tres procesos para después ver como se integran mediante relaciones de concurrencia.

Juliana

Definidas las variables de esta manera, tendríamos que:

EJuliana = ( 1, 2, …, 12 )

EAlejandro = ( 1, 2, … 8 )

EMariano = ( 1, 2, … 12 )

AccJuliana = (J mira a A, J mira a M, J mira al escenario, J y A se miran)

AccAlejandro = (A mira a J, A mira al escenario, J y A se miran)

AccMariano = (M mira a J, M mira al escenario, M mira al público)

I = (E1)

J y A se miran está en la intersección del conjunto de acciones de Juliana y Alejandro – y solo puede darse de manera simultánea entre ambos. Se cumple entonces la regla que expuse en el post anterior. Todas las acciones de Mariano, en cambio, están definidas de manera asíncrona con respecto a las de Juliana y Alejandro. La situación puede describirse en los siguientes términos:

C = AccJuliana ∩ AccAlejandro

Mariano || (Juliana ||C Alejandro)

siendo || un operador de paralelismo conmutativo y asociativo que da como resultado un proceso mayor que genera todos los posibles entrecruzamientos de los itinerarios de ejecución de los procesos constitutivos; y ||C un operador de concurrencia síncrono llamado handshaking o interacción por acciones compartidas.

5. ¿De qué interés antropológico puede ser todo esto? El uso que proyecto darle es el de encuadrar teóricamente a la acción social dentro de situaciones de concurrencia entre instituciones. Hasta ahora solo ensayé una aplicación con un intento de definir a la agricultura familiar como situación semejante – quizás continúe con el campesinado. Quien sabe. En todo caso, para darle una mayor practicidad metodológica será necesario buscar maneras más eficientes de especificación formal que los sistemas de transiciones.

6. Se me dirá que el ejemplo es desafortunado, que le hace una violencia a la complejidad de las relaciones humanas. Pero creo que en la seducción no es raro que actuemos de manera tan simple.

Agosto 20, 2009

Una apuesta metodológica

Archivado en: antropología, investigación, técnica — Esteban S @ 10:07 pm

Los/as antropólogos/as casi nunca nos limitamos a analizar el funcionamiento de una sola institución. El holismo cultural, el supuesto de la comunidad analíticamente aislable, la exigencia de llegar al punto de vista del nativo, el hecho social total, y unos cuantos demonios más han querido que la construcción de nuestros objetos de investigación se centre más frecuentemente en unidades mayores, integradas por múltiples instituciones, cuyas relaciones son de por sí cambiantes. Los conceptos que usamos para referirnos a dichos vínculos son por lo tanto herramientas muy apreciadas, y las innovaciones en este campo serán bienvenidas por todos salvo quizás los más complacientes de nuestros colegas.

A partir de algunos ejercicios teóricos fui elaborando la idea de una contribución en esa dirección; en particular, la de plantear la posibilidad de tomar como unidad de análisis a situaciones de concurrencia de procesos sociales, entendiendo como tal la ejecución simultánea de procesos interactivos entre sí.

No quiero fastidiar con reseñas históricas, pero dado que el concepto al que me refiero proviene de un campo al que las ciencias sociales no suelen apelar vale la pena dedicarle unas líneas a su origen.

Una gran parte del trabajo de un programador consiste en encontrar y eliminar bugs corrigiendo el código fuente. La presencia de estos errores en un navegador de Internet para usuarios domésticos no representa un problema tan grande, pero en sistemas críticos pueden derrumbar un avión, provocar un derrame de refrigerante industrial, paralizar el tráfico de una ciudad durante horas o exponer a pacientes de tratamiento médico a dosis letales de radiación, así que la gente de ciencias de la computación se ha dedicado a crear técnicas para detectarlos. Los bugs por concurrencia se encuentran entre los más difíciles de corregir, y su erradicación motivó el desarrollo de técnicas bastante sofisticadas, que no se aplican directamente sobre el código fuente sino sobre un modelo matemáticamente riguroso que permita su verificación. La especificación de estos modelos se hace desde marcos bastante heterogéneos: cálculo de procesos, lógicas temporales, redes de Petri y sistemas de transiciones, etc. Pero más allá de los detalles de las notaciones empleadas, los problemas planteados por la concurrencia se hacen sentir en campos ajenos a los de computer scientists e ingenieros.

Desde las aproximaciones basadas en sistemas de transiciones la concurrencia aparece representada por tres operadores: 1. paralelismo; es sumamente inespecífico, en tanto puede ser utilizado para denotar procesos completamente aislados entre sí como casos en los que se da alguna clase de comunicación entre ellos; 2. el entrelazado (interleaving) se refiere a situaciones que se resuelven a través de una elección no determinista entre actividades de procesos ejecutados simultáneamente; surge de los condicionamientos impuestos por el hardware en computadoras con un solo procesador, pero creo que puede ser de mucha utilidad – por ejemplo, puede ser utilizado para representar el uso de una misma variable por parte de dos procesos distintos; y 3. handshaking (que traduciré apelando a la antonomasia como concurrencia a secas) designa una interacción sincronizada entre procesos concurrentes. En otras palabras, los procesos interactúan de esta manera cuando ambos participan en la interacción al mismo tiempo – como si se dieran la mano. Se define así un conjunto C de acciones concurrentes que contiene todos los elementos que cumplen la siguiente regla:

pedrolino_handshaking

Dado que el tercer operador de concurrencia exige que los conjuntos de acciones correspondientes a cada proceso hayan sido definidos previamente, cualquier implementación de este concepto requiere cierto grado de especificación formal. Una exigencia muy saludable.

Creo que hay muchísimos problemas de las ciencias sociales que pueden ser formulados – y resueltos – a partir de estos conceptos. En antropología y sociología rural, por ejemplo, seguimos empleando tipologías para definir campesinado y agricultura familiar. Si bien fueron muy útiles en cierto momento de estas disciplinas, sus limitaciones se hicieron sentir hace rato, y la posibilidad de pensar a ambos conceptos como referidos a situaciones de concurrencia entre distintas instituciones (grupo doméstico, explotación, familia, mercados de insumos, mercados de tierras, etc.) permitiría generar nuevas preguntas y nuevas respuestas.

¿Que tan viable será metodológicamente todo esto? No sé, pero puedo prever algunos problemas que habría que solucionar durante su aplicación:

  1. El problema de determinar las condiciones de frontera. Una manera de solucionarlo es tomar un proceso de referencia y a partir de él tomar solamente a los que estén en concurrencia directa, o a un número determinado de grados de distancia. La vecindad de un proceso puede ser muy amplia – como suele suceder con la institución persona, así que usar una distancia superior a uno puede ser metodológicamente arriesgado – al menos hasta que no desarrolle las herramientas adecuadas.
  2. El problema de la validez local de los modelos subyacentes a cada proceso. El carácter modular que podrían cobrar las investigaciones basadas en situaciones de concurrencia podría alentar a la búsqueda de definiciones de validez universal que permitan crear algo semejante a las bibliotecas de los programadores. Sería necesario, sin embargo, lidiar con algunos problemas muy serios sobre la misma posibilidad de dar definiciones universales de instituciones.
  3. El problema del no-determinismo emergente de sistemas concurrentes. No me desvela, a decir verdad. Lo que me lleva a buscar estas herramientas no es la predicción sino la posibilidad de llegar a explicaciones causales y a descripciones un poco más precisas.
  4. El problema de las dificultades metodológicas intrínsecas a un redefinición del objeto. Esto no tiene arreglo. Implementar una técnica nueva en un campo disciplinar siempre conlleva un riesgo. No solo su uso puede plantear dificultades imprevistas, sino que además la comunidad científica puede decidir no reconocer sus resultados – especialmente si se aleja demasiado de cierto consenso disciplinar.

Vistas así las cosas, es una apuesta.

A jugarla.

===

Notas: En la regla de handshaking e1 y e2 son estados, →1 y →2 son acciones, ^ es el operador lógico conjuntivo y la barra denota una relación de premisa (arriba) y conclusión (abajo). Las referencias consultadas son Principles of model checking de Bauer y Katoen (2008), y Concurrency theory, de Bowman y Gómez (2005).

Mayo 21, 2009

Frente a lo informe

Archivado en: estudios, técnica — Esteban S @ 11:41 am

“A veces (Degas) pensaba en lo informe. Hay cosas, manchas, masas, contornos, volúmenes, que no tienen, en cierta manera, más que una existencia de hecho: solo pueden ser percibidas por nosotros, pero no sabidas; no las podemos reducir a una ley única, deducir su todo del análisis de una de sus partes, reconstruirlas por medio de operaciones razonadas. No podemos modificarlas tan libremente. Casi no tienen otra propiedad que la de ocupar una región del espacio… Decir que se trata de cosas informes, quiere decir, no que carezcan de forma, sino que sus formas no encuentran nada en nosotros que permita reemplazarlas por un acto puro de trazado o de reconocimiento. Y, en efecto, las formas informes no dejan otro recuerdo que el de una posibilidad… Al iguar que una serie de notas tocadas al azar no es una melodía, un charco, un peñón, una nube, un fragmento de litoral, no son formas reducibles. No quiero insistir sobre estas consideraciones: éstas nos llevan demasiado lejos. Volvamos al dibujo. Supongamos que queremos dibujar una de estas cosas informes, pero aquellas en las que podamos reconocer alguna solidaridad entre sus partes. Arrojo sobre la mesa un pañuelo estrujado. Este objeto no se parece a nada. Para el ojo, desde luego, no es más que un desorden de pliegues. Mi problema, sin embargo, es hacer ver, por medio de mi dibujo, un pedazo de tela de tal especie, flexible y densa, de un solo intento. Se trata de hacer inteligible una cierta estructura de un objeto que no ha sido determinado en absoluto, y no hay ningún cliché o recuerdo que me permita dirigir el trabajo, tal cual lo hacemos con la figura de un árbol, de un hombre o de un animal, que se dividen en porciones bien conocidas. Es aquí donde el artista puede ejercer su inteligencia, y donde el ojo debe hallar, por medio de sus movimientos sobre lo que ve, los caminos del crayón sobre el papel, al igual que un ciego debe, al palpar, acumular los elementos del contacto con la forma, y adquirir, punto a punto, el conocimiento y la unidad de un sólido extremadamente regular.
Este ejercicio de lo informe enseña, entre otras cosas, a no confundir lo que uno cree ver con lo que ve. Hay una especie de construcción en la visión de la cual estamos eximidos por la costumbre. Tenemos que prever, en general, más de lo que vemos, y las impresiones del ojo son para nosotros sólo signos, y no presencias singulares, anteriores a todos los arreglos, recopilaciones, abreviaciones, sustituciones inmediatas, que la educación primera nos ha inculcado.”

Paul Valéry, Del suelo y lo informe, en Degas danza dibujo.

Valéry era lo suficientemente agudo como para advertir que la validez de su comentario excedía el ámbito de lo artistico. Hace falta algo más que maestría en un oficio para poder transformar a ese momento, previo al concepto, de excusa para la angustia en ejercicio reflexivo. Cosas semejantes hacen también quienes son sabios en ciencia y en amor.

Abril 22, 2009

Instrumentación

En antropología rural y económica se habla de toda clase de estrategias – domésticas, de consumo, matrimoniales, productivas, etc. – pero los intentos de hacer una instrumentación formal de este concepto se siguen haciendo esperar. Su sentido juego-teórico, por ejemplo, es prácticamente desconocido por la mayoría, con la sola excepción de unos pocos que intentan introducirlo en el campo de estudios.

Siendo parte de esa minoría, me encuentro con la doble tarea de instrumentar y de exponer ese instrumento. No es fácil, pero tengo la esperanza de poder hacer las dos cosas mediante una notación que vuelva la exposición y el trabajo de base más visuales. En términos teóricos, estoy tratando de dar con una forma de resolver las transiciones de maquinas de estado finito (con las que modelo explotaciones, familias y personas) a partir de instancias juego-teoréticas – o sea, por medio de interacciones estratégicas entre agentes.

Como todo esto suena odiosamente abstracto, pensemos desde un caso particular. Digamos que desde el fallecimiento de su primo, Pancho Steltzer viene trabajando solo con sus tres empleados. Sus dos hijos varones, Alfredo de 17 y Mariano, de 18, tienen que decidir que van a hacer de sus vidas. Por esas cosas de la cultura, Alfredito y Mariano reducen el horizonte de posibilidades a dos opciones: mudarse a otro pueblo a estudiar agronomía o ponerse a trabajar en la explotación familiar. La decisión que tomen va a afectar sus vidas, sus personas, y – claro – el estado de la explotación.

Ahora, más allá de las consecuencias para Pancho y su explotación, al momento de tomar esta decisión a sus hijos no les da lo mismo lo que haga su hermano; atribuyamosle entonces una ordenación de las preferencias según la cual ambos preferirían ir a estudiar juntos, estudiar solo, trabajar solo en la explotación y trabajar juntos en la explotación – en ese orden.
El diagrama que sigue debería funcionar como referencia para una notación:

notacion1

Una vez definidas las variables, tenemos un conjunto de estados posibles. La transición de uno de esos elementos a otro está determinada por las decisiones que tomen dos o más agentes en cada instancia de juego. En el caso de Alfredo y Mariano se trata de un juego intrageneracional que determina transiciones relativas a la cantidad de trabajo familiar que se volcarán al ciclo productivo. Cada celda en la matriz de resultados de los juegos incluye el resultado para cada uno de los agentes, pero también una transición para el estado del sistema en cuestión.

Si nos pusieramos ambiciosos tomaríamos en cuenta que a lo mejor Alfredito y Mariano no son iguales a ojos de Pancho. Por ahí Alfredito es bastante dado a la escandalosa disipación mundana y conviene mantenerlo con correa corta. Todo esto se podría contemplar en un modelo formal, claro. Siendo los roles (productor, hijo de productor, esposa, etc.) secuencias ordenadas jerárquicamente de atributos, habría que incluir también en las matrices de resultados la adquisición de atributos que permitan la eventual investidura de distintos roles. Pero tanto detalle complicaría la exposición de la técnica. Además, el propósito de estas modelizaciones no es formalizar en su detalle más exquisito una situación particular, sino asegurar un rendimiento que permita hacer explicaciones sobre el objeto referido.

Además de ser un buen ejemplo para el uso de esta posible notación, el caso también permite demostrar la inadecuación de definir a la explotación familiar en términos de la proporción existente entre trabajo familiar y trabajo asalariado. En no pocas explotaciones agrícolas los familiares aportan más trabajo que los empleados, pero hagamos abstracción de eso y supongamos que todos aportan la misma cantidad de trabajo al ciclo productivo. Si tomamos el criterio indexical (Exp. familiar ↔ Trab. familiar / Trabajo total ≥ 0,5) la explotación de Pancho (recordemos que trabaja solo junto a sus tres empleados) no es familiar y solo llegaría a serlo si sus dos hijos se ponen a trabajar con él. Por eso propongo un criterio estructural; según este una explotación es familiar si está estructurada por roles en los que las relaciones de parentesco, afinidad y/o corresidencia son pertinentes.

Para no dejar el post demasiado largo voy dejar para otra ocasión algunas de las dificultades que hay que superar para plantear los problemas de esta manera. Abrazos.

Edit: Recién ahora me doy cuenta de que en el cuadro inferior derecho de la matriz tendría que haber puesto inF. Y bue´.

Edit (2): …y que la homeostasis debería graficarse como una transición a otro estado con la misma denominación; con el bucle da la impresión de que el juego se repite, y no es así.

Abril 14, 2009

La contingencia es la madre de todas las cosas

Archivado en: estudios, filosofía, riesgo e incertidumbre, técnica — Esteban S @ 4:40 pm

Mi interés por los sistemas de transiciones y otras herramientas de modelado vino a partir del uso casi accidental de combinatoria elemental y grafos en mis primeros trabajos, pero también de una curiosidad más filosófica por las implicancias de las categorías de necesidad y contingencia para la práctica científica y para el conocimiento en general. Así fui aprendiendo que algunos objetos matemáticos sencillos pueden ser muy útiles para explorar los estados posibles de un sistema. Un ejemplo de esto es lo que llamo un diagrama posibilístico: la representación gráfica de un grafo dirigido en el que cada nodo representa una determinada combinación de valores, y cada arista una transición de estado. Me voy a permitir ensayar un ejemplo de aplicación sobre uno de los casos presentados por Kletz en su libro Learning from accidents, que me gustó un montón. Desde ya, cualquier corrección u observación técnica será muy bienvenida.

Imaginemos un sistema técnico sencillo. Estamos en una refinería, en el sector en el que se almacenan provisoriamente en grandes tanques algunos hidrocarburos antes de ser reprocesados. Los fluidos son volátiles, con un punto de inflamabilidad (o flash point) a una temperatura cercana a la ambiental.

Esa descripción hace a las constantes del sistema técnico si asumimos (arbitrariamente, claro) que no pueden ser cambiadas. Podemos llegar a pensar que es inconcebible que la refinería no tenga un buffer de semejantes dimensiones, o que no haya una refinería ahí en primer lugar En fin, asumimos que todo eso es invariante y lo colocamos en el ámbito de la necesidad estructural de un modelo. En ese mismo nivel encontramos también las variables pertinentes al sistema, cuyos valores son contingentes. Para los fines de un modelo de juguete que permita ilustrar la técnica, hagamos de cuenta que hay solo cinco variables con dos valores posibles para cada una:

Ta : Temperatura ambiental (por debajo / por encima del umbral)
Tp : Temperatura de los fluidos (por debajo / por encima del umbral)
C : Presencia de una capa estabilizadora de nitrogeno en los tanques (ausente / presente)
M : Modo de suministro (volcado / a presión)
I : Presencia de una fuente de ignición fuera de los tanques (ausente / presente)

espacio_estados2

El diagrama fue fruto de un rapto de inspiración. Para serle fiel a las musas decidí no ahogarlo con algún descuidado hábito de exhaustividad.

Así tendríamos que 25= 32. El espacio de estados es un conjunto con 32 elementos. También dentro de la NE encontramos a las acciones, o transiciones. En este caso abarcan factores de carácter heterogeneo; entre ellos, el olvido de usar una capa de nitrógeno para estabilizar los hidrocarburos (un método actualmente considerado primitivo, pero efectivo), o la decisión de llenar los tanques por volcado a cielo abierto, etc.

Con esto ya podemos dibujar un grafo con los nodos representado estados y las aristas haciendo de transiciones.

Para que todo reviente hace falta que se conjuguen los siguientes factores: la temperatura del tanque tiene que estar por encima del umbral, el suministro se hace por volcado, y existe una fuente de ignición en las inmediaciones del tanque. Así que los estados peligrosos son E18 y E19, pero también E22 y E23, porque el nitrógeno del tanque no detiene la ignición. Lo que hace es prevenir las transiciones 5→7, 13→15, 21→23 y 29→31; o sea, evita que la temperatura ambiental haga subir la temperatura de los tanques por encima del umbral.

Diagramarlo de esa manera permite examinar visualmente el espacio de posibilidades – uno de los correlatos de la contingencia subordinada de un modelo o de un sistema. Cuando las variables tienen un rango apenas un poco más amplio ya se vuelve inmanejable sin herramientas de visualización computacionales, pero eso no es lo más importante. Lo más importante es que el planteo del problema, que se presenta como necesario para el examen de todos los eventos posibles desde una definición, es en sí misma contingente. La explosión de los tanques podría haber sido causada por otro factor, y todos nuestros esfuerzos analíticos habrán sido en vano si no podemos sospechar la importancia del entorno no modelizado.

Incluso en un pedestre caso de ingeniería forense que cualquier filósofo desdeñaría se asoma la perturbadora intuición de la primacía de la contingencia.

Blog de WordPress.com.