Generador de Equipos Aleatorios

Divide una lista de nombres en equipos aleatorios y equilibrados, con reglas de juntar o separar personas. Gratis, privado y en tu navegador.

🌐 English

0 names

🔒 Privado por diseño: todo funciona localmente en tu navegador; nada se sube nunca a ningún servidor.

Qué significa “equilibrado” aquí, y el ejemplo de 10 entre 3

Todo reparto que produce esta herramienta obedece un invariante: ningún equipo tiene más de una persona más que otro. Diez personas en tres equipos dan 4/3/3. Nunca dan 5/3/2, y nunca sobra nadie. La aritmética es deliberadamente aburrida (dividir y después repartir el resto de uno en uno entre los primeros equipos de la lista) y los tests fijan ese ejemplo exacto.

La regla se aplica en los dos modos de reparto, que es donde se vuelve opinable. Pide equipos de cuatro con diez personas y la lectura evidente es 4/4/2. En lugar de eso, el número de equipos se calcula como diez entre cuatro redondeado hacia arriba, que son tres, y esos tres equipos se equilibran después a 4/3/3. El razonamiento es práctico: una sala de equipos de cuatro más una pareja descolgada casi nunca es lo que quería quien organiza, y la promesa de no diferir en más de uno se mantiene entonces sin importar qué modo elegiste. Si de verdad necesitas exactamente cuatro por equipo y te da igual el resto, pide tres equipos y lee los tamaños del resultado.

Pedir más equipos que personas se ajusta a una persona por equipo en lugar de producir equipos vacíos. Un ajuste que daría un solo equipo se rechaza directamente, porque ahí no hay nada que repartir.

Juntar y separar, resuelto por búsqueda y no por suerte

Los dos tipos de regla toman una lista de nombres separados por comas. La coincidencia no distingue mayúsculas, así que escribir ana encuentra a Ana y el resultado muestra la grafía del propio listado. Un nombre que no corresponde a nadie se marca en vivo bajo la fila en lugar de ignorarse en silencio, que es lo que caza una errata antes de generar y no después de que alguien note que se quedó fuera de su propia regla.

Las reglas de juntar se fusionan de forma transitiva. Ana con Ben, más Ben con Carla, se convierte en un grupo de tres y no en dos parejas solapadas. Eso es una pasada de union-find sobre el listado, y significa que puedes declarar las relaciones que realmente conoces sin calcular su cierre a mano. Todo el que no se menciona forma un grupo de uno.

Las reglas de separar se convierten después en una tabla de conflictos entre esos grupos: dos grupos entran en conflicto cuando alguna regla de separar nombra a un miembro de cada uno. La asignación es una búsqueda con retroceso aleatorizada sobre grupos y equipos. Cada grupo prueba los equipos en su propio orden barajado, y una colocación que lleva a un callejón sin salida se deshace y se reintenta en otro sitio.

Eso importa más de lo que parece. El enfoque ingenuo es barajar a todo el mundo y comprobar si las reglas se cumplen por casualidad, lo que da vueltas para siempre en un caso difícil y se rinde en uno que sí tenía solución; una búsqueda completa encuentra una disposición siempre que exista alguna.

Los grupos más grandes se colocan primero para que un empaquetado imposible falle rápido, y hay un techo duro de 200.000 pasos de búsqueda, así que una entrada patológica informa de un fallo honesto en lugar de congelar la pestaña.

Cuando tus reglas no se pueden satisfacer todas

Es perfectamente posible pedir algo imposible: tres personas que no pueden coincidir repartidas en dos equipos, o un grupo de juntar más grande que el tamaño de equipo que has pedido.

Cuando eso pasa, la herramienta lo dice en lugar de entregar un reparto que incumple una regla en silencio. Esa es la parte importante: un generador que devuelve algo pase lo que pase te deja descubrir el incumplimiento en la sala, delante de la gente a la que le prometiste que no estarían juntos.

Fisher-Yates sobre crypto.getRandomValues, no Math.random

El barajado usa el generador criptográfico del navegador a través de un Fisher-Yates sin sesgo, no Math.random(). Para un sorteo de equipos eso no es paranoia de seguridad, es equidad defendible: si alguien pregunta si el reparto estaba amañado, la respuesta es que la fuente de aleatoriedad es la misma que usaría un generador de claves, y que el algoritmo de barajado es el que no favorece posiciones.

Hacer un sorteo, copiarlo, imprimirlo

  1. Pega o escribe la lista de nombres, uno por línea o separados por comas.
  2. Elige si repartes por número de equipos o por tamaño de equipo, y pon el número.
  3. Añade las reglas de juntar y de separar que necesites, comprobando que ningún nombre queda marcado como desconocido.
  4. Genera. Si las reglas son imposibles te lo dirá en vez de inventarse un reparto.
  5. Copia o imprime el resultado.

Para un sorteo de una sola cosa en lugar de un reparto, la ruleta de nombres elige uno al azar, y si lo que viene después es un torneo, el generador de brackets toma estos equipos como participantes.

Cómo funciona, en imágenes

Captura de pantalla de la herramienta Generador de Equipos Aleatorios con nombres introducidos uno por línea, repartidos en un número fijo de equipos o por personas por equipo, con reglas para mantener juntas a determinadas personas en el mismo grupo
Generador de Equipos Aleatorios en pleno proceso: nombres introducidos uno por línea, repartidos en un número fijo de equipos o por personas por equipo, con reglas para mantener juntas a determinadas personas en el mismo grupo.
Diagrama: dónde ocurre el trabajo en una página de SysFenix que no tiene ninguna entrada de archivo: la herramienta llega como JavaScript normal dentro de la página, calcula la respuesta en tu propio dispositivo y la muestra ahí mismo, de modo que la subida, la cola y el registro en servidor que necesita una herramienta online típica no ocurren nunca
Dónde ocurre el trabajo en una página de SysFenix que no tiene ninguna entrada de archivo: la herramienta llega como JavaScript normal dentro de la página, calcula la respuesta en tu propio dispositivo y la muestra ahí mismo, de modo que la subida, la cola y el registro en servidor que necesita una herramienta online típica no ocurren nunca.

Preguntas frecuentes

¿La interfaz de la herramienta está en español?

El artículo y estas preguntas están en español, pero el widget interactivo (botones como "Generate teams", etiquetas como "Keep together" y los títulos "Team 1", "Team 2" que aparecen en los resultados, en el texto copiado y en la versión impresa) es un único componente compartido en inglés para todos los idiomas. Los nombres que escribas se conservan exactamente como los escribas (con acentos y ñ incluidos) y toda la lógica de reparto funciona igual en cualquier idioma.

¿Los nombres que pego se suben a algún sitio?

No. Toda la herramienta funciona dentro de tu navegador, la lista de nombres, las reglas y los equipos generados nunca salen de tu dispositivo, y no hay servidor, cuenta ni registro de lo que escribes. Eso importa cuando la lista es un grupo real de alumnos o una plantilla de empleados que no deberías pegar en webs desconocidas.

¿Cómo mantiene los equipos equilibrados?

Los equipos difieren como máximo en una persona. Repartir 10 personas en 3 equipos da 4/3/3, nunca 5/3/2. Si eliges personas por equipo en vez de número de equipos, la herramienta calcula cuántos equipos hacen falta (redondeando hacia arriba) y equilibra igual, así que 10 personas a 4 por equipo produce 3 equipos de 4/3/3 en lugar de dejar una pareja suelta como "equipo" de 2.

¿Cómo funcionan las reglas de juntar y separar?

Una regla de juntar ("Keep together") lista personas que deben acabar en el mismo equipo, y una de separar ("Keep apart") lista personas que deben quedar cada una en un equipo distinto. Las reglas se encadenan, si una junta a Ana con Ben y otra junta a Ben con Carla, los tres quedan juntos. Puedes añadir tantas reglas como necesites y el sorteo las respeta todas a la vez.

¿Qué pasa si mis reglas son imposibles de cumplir?

Recibes un error claro (en inglés, como el resto del widget) explicando exactamente por qué, en lugar de un resultado roto o una espera infinita. Por ejemplo, separar a 5 personas en solo 3 equipos es imposible, igual que un grupo de 6 personas juntas cuando el equipo más grande tiene 5 plazas, o separar a dos personas que otra regla obliga a juntar, cada caso se indica con detalle para que sepas qué regla cambiar.

¿El sorteo es realmente aleatorio y justo?

Sí, usa un barajado Fisher-Yates alimentado por el generador criptográfico de números aleatorios de tu navegador (crypto.getRandomValues), la misma fuente que se usa para generar contraseñas, no el más débil Math.random. Cualquier reparto válido es genuinamente posible, y cada clic en re-barajar produce uno completamente nuevo.

¿Hay límite de nombres?

La herramienta acepta hasta 500 nombres, mucho más que cualquier clase, oficina o liga. Todo se calcula al instante en tu propio dispositivo, así que incluso listas grandes con varias reglas se resuelven en una fracción de segundo. Los nombres duplicados exactos se eliminan automáticamente; si tienes dos personas con el mismo nombre, distínguelas (por ejemplo "Ana G." y "Ana M.").

Herramientas relacionadas