Página siguiente Página anterior Índice general

8. Un modelo matemático: El dilema del preso.

8.1 Resumen del capítulo.

8.2 Descripción.

En el campo de la teoría de juegos existe un clásico de la literatura, conocido por sus implicaciones y aplicación a las relaciones sociales: el "Dilema del Preso".

En su versión básica plantea un problema simple de toma de decisiones:

Dos atracadores han sido detenidos, estando cada uno aislado del otro en sendas salas de interrogatorio. El fiscal propone a cada uno de los presos un pacto: si delata a su compañero se librará de la cárcel.... siempre y cuando el compañero no le delate a él. Si ambos optan por permanecer callados la pena será de un año de prisión. En el caso de condena, la pena será de tres años.

En el modelo sencillo tenemos las siguientes combinaciones:

Preso A         Preso B         Resultado A     Resultado B
-----------------------------------------------------------
calla           calla           1 año            1 año
calla           delata          3 años           libertad
delata          calla           libertad        3 años
delata          delata          3 años           3 años

Tanto A como B razonan que en el caso de permanecer callados no tienen posibilidad de librarse de la cárcel, luego la solución ideal es delatar al compañero... salvo que el compañero puede seguir el mismo razonamiento, ¿cúal es pues la decisión correcta?.

La segunda variante del dilema del preso nos introduce de lleno en los modelos de cooperación:

Tenemos de nuevo dos atracadores, esta vez en libertad, que se dedican a la compraventa de productos robados. Los atracadores han pactado que uno de ellos deje la mercancía en un lugar determinado, mientras que el otro deja el dinero en otro lugar. Ambos atracadores se dirigen a recoger posteriormente el paquete destinado a cada uno...

Está claro que si uno de ellos deja un paquete vacío, y recoge a cambio un paquete lleno, ha obtenido un beneficio neto en la transacción. Por consiguiente ambos dejan sendos paquetes vacíos... y recogen paquetes vacíos. Pero, ¿y si en lugar de un único intercambio se realizan una serie de intercambios espaciados en el tiempo?. Si un ladrón traiciona al otro, es casi seguro que será traicionado en la siguiente transacción. ¿Cuál es la estrategia ganadora?.

Para complicar más las cosas, vamos a suponer que en lugar de dos atracadores tenemos n atracadores, interaccionando entre ellos por parejas: a cada turno el atracador m debe decidir qué es lo que va a hacer con cada uno de los demás atracadores, colaborar o traicionar.

Vamos a modelar el juego: Tenemos n agentes y un árbitro. A cada turno el árbitro indica a cada agente con que otro agente va a interactuar, debiendo decidir si entrega como resultado un 1 ( colabora ) o un 0 ( traiciona ) Gana el agente que al cabo de X turnos consigue la mejor relación entre colaboraciones e inversiones.

La analogía con el modelo empresarial es evidente: el árbitro es el mercado, y los ladrones son todos aquellos que intervienen en transacciones comerciales ( habrá alguien que opine que la analogía debería ser a la inversa, pero eso ya son temas políticos... ).

Definimos beneficio en un turno de transacciones como:

        ( 1 / numero_jugadores ) * ( total obtenido - total invertido )

donde el resultado está en el intervalo (-1,1).

El beneficio total será el resultado del sumatorio de los beneficios parciales.

Aparentemente, el jugador que escoja una estrategia egoísta tiene las de ganar, pues su beneficio nunca será negativo. Del mismo modo, los colaboradores sistemáticos tienen las de perder, por pardillos....

Por ello, vamos a definir un nuevo concepto: el de efectividad, entendida como el cociente entre el total obtenido y el número de jugadores. La efectividad total, será la media aritmética de las efectividades parciales. Experimentalmente, se observa que el algoritmo "egoísta" tiende rápidamente a una efectividad nula conforme el número de transacciones crece.

Cuando se simula mediante ordenador este juego se obtiene un resultado sorprendente: la mayor efectividad se corresponde con un beneficio nulo... que no es sino el resultado de una igualdad entre el coste y el resultado. El algoritmo que cumple con este requisito no es sino el conocido "ojo por ojo y diente por diente" de la tradición judeocristiana. Codificarlo es muy simple:

Las implicaciones son sorprendentes, aunque un mínimo de sentido común las explica: en un entorno competitivo, se tiende a potenciar aquellas operaciones que dan un resultado positivo. Del mismo modo se aisla a aquellos de quienes no se espera resultado alguno. Al aumentar el número de operaciones el "universo" se divide rápidamente en dos modelos: los aislacionistas y los colaboracionistas. En el primer grupo, el beneficio a corto plazo es elevado, pero su eficacia disminuye progresivamente con el tiempo. En el segundo modelo, si bien los beneficios suelen ser menores ( o incluso nulos ) la efectividad a largo plazo se incrementa debido a que toda inversión acaba resultando en un beneficio.

El que el beneficio neto sea nulo tiene una explicación obvia: en una relación proveedor-cliente, ambos tienen que ganar. Si se produce un desequilibrio hacia uno u otro lado, la relación tiende a deteriorarse rápidamente. El "abusar del cliente" sólo puede ser beneficioso a corto plazo o bien si se dispone de un número suficientemente grande de clientes. Como dice el refrán: "A algunas personas se las puede engañar siempre, y a veces es posible engañar a todo el mundo. Pero no se puede engañar siempre a todo el mundo".

La experimentación -y el contraste con la realidad- han demostrado que el "ojo por ojo" no es el procedimiento más eficaz. Diversos experimentos con algoritmos genéticos modelados para jugar al "Dilema del preso", muestran que existe un modelo, que si bien tiene una efectividad similar, aumenta el beneficio neto. Es el denominado "machaca pardillos". En esencia es un "ojo por ojo" modificado, de tal suerte que tras un número aleatorio de secuencias iguales, el agente cambia durante un ciclo el resultado de su salida, volviendo inmediatamente al "ojo por ojo" en la siguiente jugada.

El por qué de dicho resultado se descubre enseguida: el principal problema del "ojo por ojo" es que es un sistema "con memoria", de tal suerte que ante un oponente que comete un desliz, acaba fácilmente ensartado en una secuencia de ceros, con la consiguiente perdida de efectividad. Por otro lado adolece del defecto de ser "demasiado generoso" con aquellos algoritmos que son colaboradores por sistema. El hecho de insertar un 1 en una secuencia de ceros, puede "reconvertir" a un traidor, y de la misma forma, insertar un 0 en una secuencia de unos, puede hacerle aprovecharse de los pardillos colaboradores sistemáticos.

La similitud con el modelo de desarrollo de software abierto es evidente: es un modelo que está basado en la colaboración mutua, que realimenta rápidamente a los agentes que colaboran, que se aprovecha de los pardillos de manera inmisericorde... y que relega rápidamente al olvido a los no colaboradores.

La analogía es incompleta: el problema del dilema del preso adjudica un coste binario a cada transacción ( 0 ó 1 ). Esto, como hemos visto, no es exactamente cierto: el coste real es inversamente proporcional al número de agentes que intervienen en cada turno de transacciones: piénsese que desde el lado de la empresa se está compartiendo el coste de poner el código al público entre n potenciales proveedores de soluciones o mejoras, y que al aumentar el número de usuarios, el beneficio potencial se dispara. No obstante nos sirve para demostrar que un sistema que potencie las transacciones con el mayor número posible de agentes, consigue la mayor efectividad conforme el número de intercambios aumenta.

En las referencias y apéndices el lector encontrará direcciones de Internet donde se trata el tema, así como diverso software de emulación del juego del dilema del preso. Es interesante observar la evolución de cada partida en función del número de participantes, del número de turnos, e incluso del "perfil psicológico" de los jugadores...

Una reflexión: este modelo se denomina de colaboración egoísta. El objetivo es obtener beneficios y aumentar la eficacia a medio y largo plazo. La colaboración no sólo no es desinteresada, sino que el voluntarismo está penalizado. La idea de la participación altruista es uno de los mitos del software abierto, pero de ningún modo se corresponde con la realidad, especialmente en el mundo empresarial.

8.3 El dilema del preso y el software libre.

Como muchos lectores conocedores del tema objetarán, el modelo del dilema del preso está estudiado para el caso de n participantes compitiendo entre si dos a dos. Esta no es una aproximación realista, pues no tiene en cuenta que en el mundo real las interacciones se producen entre todos los participantes de manera simultánea. Las alianzas y pactos entre varios participantes, por citar un ejemplo, no están contempladas, ni siquiera estudiadas. Para que el modelo de cooperación sea óptimo en este entorno deben darse unas condiciones de contorno que permitan reducir el problema al caso conocido.

No es sencillo llegar a la "ignición". Los usuarios y voluntarios deben ser convencidos de mantenerse en el proyecto, a costa de grandes inversiones por parte de la empresa o director de proyecto. La figura y carisma del líder es fundamental para mantener el estado de ánimo. Una vez alcanzada la ignición, casi no habrá que hacer tareas de captación: el éxito tiene su propia inercia, y la afluencia de "adeptos" será casi automática. Es el momento de recoger los frutos del trabajo....


Página siguiente Página anterior Índice general