domingo, 26 de abril de 2009

Primer juego ralo: Escollatzo

El Escollatzo es un juego basado en la famosa conjetura de Collatz.

Un jugador elige un rango de números naturales, y el otro jugador elige si quiere empezar o ser segundo. Luego, los jugadores se turnan para ir agregando valores a una sucesión de números S, cuyo primer valor S(1) es el menor valor del rango elegido.
Las movidas válidas son las siguientes:
  • Siempre puede hacerse S(n+1) = 2·S(n).
  • Si S(n) es de la forma 3·k+1, con k natural, entonces puede hacerse S(n+1) = k.
El primer jugador que se vea obligado a repetir un valor ya tomado por la serie o a tomar un valor fuera del rango elegido es el perdedor.

Como se ve, el factor de ramificación del juego es, en promedio, menor a 2, salvo el tecnicismo de que la elección del rango inicial es una movida con infinitas opciones. Quizá haya alguna manera de eliminar esa pequeña desprolijidad.

Se podrían ensayar múltiples variantes cambiando las reglas de generación de la serie, aunque claro, habría que cambiarle el nombre al juego...

jueves, 16 de abril de 2009

Juegos ralos: Introducción

A Pablo Coll le gustan los juegos ralos, y charlando el otro día me contagió el gustito.

Llamamos ralos a los juegos donde el promedio de movidas disponibles en cada posición (el factor de ramificación, o branching factor en inglés) es muy bajo.

El desafío de diseñar un juego ralo que no sea trivial es muy interesante. Una posibilidad es definir un tablero muy chico, pero eso tiene una desventaja: que la cantidad de posiciones es muy baja y el juego se puede analizar exhausitvamente, lo cual le quita algo de gracia.

Otra posibilidad es definir un tablero grande pero limitar la cantidad de piezas presentes y/o la libertad de acción de las mismas, lo cual hace un poco pesado el desarrollo del juego, si consiste en lograr alguna configuración espacial.

Pero hay una posibilidad más intrigante: prescindir completamente de tablero y piezas.

Con esa idea hemos diseñado algunos juegos pequeños, que iremos comentando aquí en futuras entregas.

domingo, 29 de marzo de 2009

Uno de pesadas

Tenemos 14 objetos, de pesos indeterminados.
También tenemos una balanza de dos platillos, con la cual podemos comparar cualquier par de objetos o grupos de objetos, y saber cuál objeto o grupo es el que pesa más.
Queremos ordenar los objetos por peso, y para ello queremos usar la menor cantidad posible de pesadas.
¿Cómo hacerlo?

lunes, 2 de marzo de 2009

Prohibido el 7

Simon Tatham plantea y resuelve un interesante problema: diseñar un par de dados para que al arrojarlos nunca salga el 7, y al mismo tiempo los demás valores del 2 al 12 tengan las mismas probabilidades de salir que con un par de dados normales.

La solución de Tatham es bastante ingeniosa pero algo perturbadora; de manera que me puse a buscar una solución más directa al problema.

Update: Mi solución es hacer dos dados con valores no enteros (admite pequeñas variaciones en los valores):

primer dado: 0.0, 1.2, 2.4, 4.3, 5.5, 6.7

segundo dado: 2.6, 3.7, 4.1, 4.4, 5.7

Una desventaja de esta solución es que requiere usar un dado de 5 caras (o de 10 repitiendo los valores).

Quizá algún lector encuentre otro tipo de solución.

viernes, 27 de febrero de 2009

Pequeño acertijo

Estaba imprimiendo números.

¿Por qué imprimí primero los naturales y luego los reales?