domingo, octubre 04, 2009

Plazo para el Overcut 2

Bueno, ya hay suficientes participantes como para dar un plazo final: habrá tiempo para presentar nuevas estrategias para Overcut 2 hasta el viernes 6 de noviembre (que incidentalmente es mi cumpleaños).

¡Espero sus mensajes!

martes, septiembre 29, 2009

Overcut 2: progreso

Por ahora tengo sólo cuatro estrategias presentadas para la competencia de Overcut 2... Vamos muchachos, ¡anímense!

Inviten amigos y/o enemigos al concurso. Mientras más seamos, más divertido.

viernes, agosto 28, 2009

Nueva competencia: Overcut 2

Esta competencia está basada en la anterior, pero con una variante que la hace más homogénea.

Reglas del juego

En cada turno, todos los jugadores eligen en secreto un número entero positivo.
El número ganador de cada turno será el menor número elegido cuyo sucesor no haya sido elegido.
Los jugadores que hayan elegido el número ganador se repartirán equitativamente esa misma cantidad de puntos.

Ejemplo
  • Números elegidos: 4, 4, 1, 1, 2, 5, 4, 8, 2, 2
  • Número ganador: 2
  • Puntos ganados por los que lo eligieron: 2/3 = 0.66...
Reglas de la competencia

Se jugará a una cantidad fija de turnos (al menos 1000, posiblemente más). El que acumule más puntos al final será el ganador.

Para este concurso aceptaré sólo una estrategia por jugador.

Las estrategias podrán tener en cuenta los números jugados por todos los jugadores en los turnos anteriores.

Anunciaré un plazo para el concurso cuando haya más de 5 participantes.

¡Espero sus estrategias!

jueves, agosto 27, 2009

Overcut: resultados

Suenen tambores, platillos y fanfarrias...

¡Felicitaciones a Javier Gómez! Es el ganador indiscutido, con su algoritmo (bien llamado por cierto) Con ternura pero sin Piedad.

Antes que nada aclaro un detalle que modifiqué de la mecánica del juego: cada partida se juega ahora a 1000 turnos, y el que tiene más puntos al final es el ganador de la partida. Es casi equivalente a la mecánica que había estipulado al comienzo, pero es más fácil manejar los casos de posible empate continuo (que finalmente no aparecieron). Hice 10000 rondas de todos contra todos.

Primero, la tabla de puntajes totales:

Puntaje Algoritmo Autor



131039 Con ternura pero sin piedad Javier Gómez
116151 Subasta a ciegas Manuel Aráoz
110696 Kurchan 1 Rodolfo Kurchan
98383 Leonard Urko Joseba
92468 Kurchan 2 Rodolfo Kurchan
88865 Potolio Graciela Battauz
73232 Azahar Graciela Battauz
72431 Julious Urko Joseba
67641 Adolph Urko Joseba
67440 Kurchan 3 Rodolfo Kurchan
56793 Super Amateur Claudio Meller
54953 Pequeritmo 1 Markelo
50166 Pequeritmo 2 Markelo
49162 Pequeritmo 3 Markelo
30000 Tontina Francesc d'Assis Massanés
27992 Lechal 1 Jorge Alvaro

Ahora la modalidad reality show (se va eliminando al peor y se recalcula el total de los otros). En orden de eliminación:
  1. Lechal 1
  2. Tontina
  3. Pequeritmo 3
  4. Pequeritmo 2
  5. Super Amateur
  6. Pequeritmo 1
  7. Kurchan 3
  8. Adolph
  9. Leonard
  10. Kurchan 2
  11. Julious
  12. Potolio
  13. Subasta a ciegas
  14. Kurchan 1
  15. Azahar
Con lo cual el ganador de la versión reality también es Con ternura pero sin Piedad. No es extraño; lo que sí es raro es la diferencia de orden en ambas tablas. Seguramente se debe a que cada uno juega mejor contra un subconjunto distinto de oponentes. Pueden ensayar esto, haciendo competencias subjuntivas usando esta planilla de cálculo y cambiando los números en la sección ¿participa?. Un 1 significa que el algoritmo de ese renglón participa en la competencia, y un 0 que no participa.

Ah, casi me olvido: he aquí el código fuente con la implementación del concurso. Si detectan algún error o algo sospechoso no dejen de avisarme.

Como siempre, gracias a todos por participar. Fue muy divertido comparar estrategias y verlas interactuar.

Estén atentos, que se viene la versión 2 del Overcut...

lunes, agosto 24, 2009

Overcut: calentando motores

Bien, faltan pocas horas para el deadline. Aún me falta implementar 4 algoritmos (me han llegado unos 12 en total), así que los resultados podrían retrasarse un día o dos.
Les pido paciencia y les deseo suerte a todos los participantes.

lunes, agosto 10, 2009

Plazo para el Overcut

Ya me han llegado 5 algoritmos para el Overcut, así que pongo el plazo prometido.

Podrán anotarse hasta el 24 de agosto, y cada participante podrá presentar hasta 3 estrategias distintas, que no estén diseñadas en forma "mafiosa", es decir, que no dependan una de la otra para jugar bien.

¡Suerte a todos!

Update: me late que tendré bastantes participantes como para armar un torneo "reality show": comienzan todos los algoritmos, y cada 1000 rondas se elimina al peor de todos y se resetean los puntajes globales. ¿Qué les parece?

sábado, agosto 08, 2009

Nueva competencia: Overcut

Overcut es un juego inventado por Douglas Hofstadter y sus amigos. Lo comenta en su libro Metamatical Themas (que recomiendo sobremanera).

Reglas del juego

Se juega de a dos, y es un juego de movidas simultáneas. Ambos jugadores comienzan con cero puntos. Por turno, ambos anotan en secreto un número natural cualquiera. Luego se comparan, y pueden pasar varias cosas:

  • Si los dos números son iguales, no pasa nada.
  • Si los números son consecutivos, el que anotó el mayor suma ambos a su puntaje. Por ejemplo: si Pepe anota 19 y Juancho anota 20, Juancho se anotaría 39 puntos.
  • Si no son consecutivos, el que anotó el menor se suma éste a su puntaje. Por ejemplo: si Pepe anota 14 y Juancho anota 20, Pepe suma 14 a su puntaje.
  • Se juega a un total prefijado (usualmente entre 100 y 1000 puntos). Puede haber empates, pero no son muy frecuentes.
Reglas para la competencia

En esta competencia aceptaré sólo descripciones coloquiales de los algoritmos, y las implementaré yo mismo. Así es más divertido para mí :)
La estructura básica a cumplir es esta: dada una lista con las jugadas anteriores de ambos jugadores (al comienzo vacía, claro), el algoritmo debe calcular la siguiente jugada propia. Se puede usar azar, por supuesto.

Todos los algoritmos competirán contra todos, en partidas a 1000 puntos. El puntaje global de un algoritmo será la cantidad de partidas ganadas. Si algún algoritmo usa azar, haré al menos 100 rondas para nivelar posibles fluctuaciones.

Esperaré hasta tener al menos cinco algoritmos, y luego publicaré una fecha límite para los que quieran enviar más. ¡Espero sus aportes!

Update: para detectar empates en las partidas (que sólo pueden darse por juego coincidente infinito), detendré las partidas en que, durante 100 turnos consecutivos, ambos jugadores tengan el mismo puntaje, y en ese caso ninguno de los algoritmos obtendrá puntos globales.

domingo, enero 04, 2009

Inactividad

Sé que ha habido poca actividad últimamente en BeeR; pero no se preocupen: sigo interesado en armar nuevas competencias. Lo único que pasa es que tengo poco tiempo, y serán más cadenciosas.

Como siempre, son bienvenidas ideas nuevas así como algoritmos para las dos competencias que siguen activas (hay participantes para ambas, pero demasiado pocos como para ser ejecutadas).