viernes, 23 de enero de 2015

Tonteando con la estadística: Dados inusuales

Primer artículo del año, y el primero en unos cuantos meses. Si es que... Pero bueno, al ataque.

¿No has pensado alguna vez en que no tienes todos los tipos de dado que necesitas?

Por ejemplo, una vez durante una partida, los PJs se hallaban en una travesía desde Puerta de Baldur hacia Aguas Profundas. Siendo un trayecto de muchos días, en uno de ellos cayó el clásico encuentro aleatorio. Recuerdo que en ese momento la tabla que estaba usando tenía una lista de encuentros diferente dependiendo si este ocurría de día o de noche, y visto que en parte el momento en el que este ocurría me daba igual y que solo hacía una tirada de encuentro por día, si tocaba encuentro... ¿A qué hora sería?

Pensé en lo bien que me vendría tener un "d24", para determinar una hora de forma verdaderamente aleatoria, aunque la necesidad de ello apareciera con una frecuencia irrisoria (muy pocas, de hecho en esas pocas decidía yo mismo hasta que me picó la curiosidad por determinarlo aleatoriamente).

Pues bueno, no sé si hay muchos dados de 24 caras vendiéndose por ahí, yo la verdad es que no me he encontrado con ninguno, pero lo que sí sé es que puedes improvisar tú mismo tu propio d24 (o d64, d96, d32...) con resultados equiprobables, de la misma forma en la que habitualmente tiramos dos d10 para hacer el d100.

En el primer apartado expongo las matemáticas que estamos usando para fabricarnos estos dados inusuales. Si prefieres ir directamente a la acción pasa al segundo y tercer apartado.

Contexto Matemático

La forma en la que puedes obtener estos dados inusuales a partir de dados más convencionales tiene su origen en la Regla de Laplace, que establece que, para sucesos equiprobables (esto es que haya la misma probabilidad de sacar un resultado que de sacar cualquier otro en un experimento o situación, justo lo que queremos que ocurra con nuestros dados), la forma de modelar la probabilidad de que ocurra un resultado que estamos buscando es:

Nº de casos favorables / Nº de casos posibles

Así, si en nuestro hipotético dado de 24 caras, la probabilidad de sacar por ejemplo un 1 sería 1/24, aproximadamente un 4'16%, que es la misma probabilidad de sacar cualquier otro número en el d24.

Otra cosa sería querer calcular la probabilidad de obtener un número par, o de obtener por ejemplo un número inferior a 5 en ese mismo dado, probabilidades que seguirían la misma regla para ser, respectivamente, 12/24 (de los 24 números posibles en el dado, la mitad son números pares) y 4/24 (por debajo de 5 están el 4, el 3, el 2 y el 1; cuatro resultados diferentes posibles).

Otro concepto de probabilidad que utilizaremos es la Independencia de Sucesos. Puesto que vamos a modelar tiradas de dados a partir de dos o más tiradas de otros dados, y que los resultados de cada dado son sucesos independientes entre sí (el resultado del primer dado no altera para nada las probabilidades de obtener los resultados del segundo dado, etc), se calcula la probabilidad de intersección (obtener cierto resultado en el primer dado y luego cierto resultado en el segundo) como:

Probabilidad en el dado 1 * Probabilidad en el dado 2

Un ejemplo de este segundo concepto sería tirar 2d6 y no sumar resultados. Vamos, que no consideremos lo mismo obtener un 1 en el primer dado y un 2 en el segundo que obtener un 2 en el primer dado y un 1 en el segundo, por mucho que los dos resultados sumen 3. De esta forma tendremos una posibilidad entre 36 de obtener un resultado cualquiera en los dados (1 y 3, 3 y 1, 6 y 6...), debido a que para cada d6 la probabilidad de un resultado cualquiera es 1/6. 1/6 * 1/6 = 1/36.

"Fabricando" nuestro d24

Fácil y rápido. Usando el conocimiento que nos proporcionan los conceptos vistos en el apartado de arriba, cogemos un d12 y un d2. ¿Probabilidades de ambos? 1/12 y 1/2, respectivamente. ¿Probabilidad de cada resultado? 1/12 * 1/2 = 1/24. Vamos bien.

Lanzamos el d2. Si el resultado es 1 (por ejemplo 1, 2 o 3 en un d6) el resultado será lo que indique el d12. Si el resultado es 2, el resultado será lo que indique el d12 + 12.

Otra forma de hacerlo, y a decir verdad la primera que se me ocurrió, es con un d4 y un d6. Haciendo la intersección como al principio de este apartado también obtenemos una probabilidad de 1/24.

Lanzamos el d4, si el resultado es 1 tiramos el d6 y nos quedamos con su resultado. Si sale un 2, el resultado es el d6 + 6; si sale un 3, el resultado es el d6 + 12; y si sale un 4, el resultado es el d6 + 18.

No resulta difícil darse cuenta de que la clave de todo el asunto es que las caras de los dados, al multiplicarse entre sí, coincidan con las caras del dado que queremos simular, por lo que podríamos modelar nuestro d24 también haciendo uso de un d3 y un d8 o incluso complicarnos la vida y utilizar tres dados, un d2, un d3 y un d4.

O podríamos dejarnos de tonterías, encontrar esto y al carajo con las matemáticas.

Método general

Para terminar el artículo, pongo un método genérico para elaborar varios dados según la materia prima, los otros dados, de los que dispongamos.

Salta a la vista a raíz del experimento anterior que el número de caras de los dados que vayamos a utilizar en el modelado tienen que ser factores del número de caras que buscamos. Así, si queremos un d36 usamos dos d6 (6 * 6 = 36) o también un d3 y un d12 (3 * 12 = 36).

Como método general y utilizando solamente dos dados (pues ya usando tres dados la operación se vuelve más tediosa, si no prueben a modelar el d24 con d2, d3 y d4), utilizamos el primer dado lanzado como unidades y el segundo dado como los múltiplos del primero que sumamos a la tirada, no sumándose ningún múltiplo a la primera tirada cuando el resultado es el más alto del dado. De esta forma obtenemos resultados equiprobables para un intervalo determinado. Para no liarnos, un ejemplo:

1d36. Intervalo [1-36]: 1d6 + (1d6, resultado de 6 = 0) * 6

De esta forma, si en el segundo dado nos sale un 6 no sumamos nada a la tirada inicial, y nos quedamos con lo que haya salido en el primer dado.

Más ejemplos:

1d36. Intervalo [1-36]: 1d3 + (1d12, resultado de 12 = 0) * 3 o 1d12 + (1d3, resultado de 3 = 0) * 12.

1d100. Intervalo [1-100]: 1d10 + (1d10, resultado de 10 = 0) * 10. Un poco más confuso que el d100 de toda la vida, pero con mismo intervalo y probabilidades.

1d48. Intervalo [1-48]: 1d12 + (1d4, resultado de 4 = 0) * 12 o 1d4 + (1d12, resultado de 12 = 0) * 4.