Gerador de grupos em várias rodadas com repetições mínimas
- Participação parcialDefina quais participantes comparecem a quais sessões em vez de assumir que todos participam de todas as rodadas.
- Capacidades por grupo e sessãoDê a cada grupo sua própria capacidade e substitua capacidades em sessões específicas quando salas ou equipes mudarem.
- Regras por sessãoAplique regras de manter juntos, manter separados, posições fixas, repetição e equilíbrio apenas nas sessões em que importam.
- Preferências ponderadasAdicione preferências que podem ser violadas quando necessário e ajuste seus pesos em relação a outros objetivos.
- Metas de encontros por parDefina quantas vezes pares específicos devem se encontrar, com contagens exatas, mínimas ou máximas.
- Metas de visitas a gruposControle quantas vezes pessoas selecionadas visitam grupos selecionados em várias sessões, útil para estações, exposição a tarefas e limites de visitas.
- Ajuste avançado de restriçõesAjuste limites de repetição, modos de equilíbrio por atributo, penalidades e outros detalhes além dos controles da página inicial.
- Configurações do solverAjuste limites de execução, sementes determinísticas, família de solver e outras opções de otimização.
- Análise de resultadosInspecione decomposição de pontuação, cumprimento de restrições, penalidades e resultados salvos com mais detalhe.
Casos de uso para um gerador de grupos em várias rodadas
Use o GroupMixer quando um sorteador de uma rodada não basta: várias sessões, menos repetições e balanceamento ou restrições opcionais.
Gerar grupos para várias rodadas
Crie uma programação completa rodada por rodada em vez de reorganizar tudo manualmente entre sessões.
Minimizar pares repetidos
Reduza contatos repetidos para que participantes encontrem novas pessoas em workshops, aulas e eventos.
Planejar rotações de workshop
Organize discussões em mesas, exercícios ou breakouts mantendo uma mistura nova a cada rodada.
Planejar rodadas de networking
Crie speed networking ou mixer rounds sem mandar pessoas de volta para as mesmas conversas.
Equilibrar grupos repetidos
Adicione atributos como departamento, função, habilidade ou experiência quando os grupos precisam ser variados e equilibrados.
Respeitar restrições reais
Mantenha pessoas juntas ou separadas, fixe facilitadores e ainda otimize o cronograma em várias rodadas.
Perguntas frequentes
Usando o GroupMixer
Cole os nomes (um por linha) na caixa de texto, defina o número de grupos ou de pessoas por grupo e clique em "Gerar grupos". Seus grupos aparecem imediatamente.
Privacidade, acesso e limites
Sim. O GroupMixer é totalmente gratuito. Se ele for útil para você e você quiser apoiar o desenvolvimento, pode fazer uma doação pelo GitHub Sponsors. Doe pelo GitHub Sponsors.
Não. Não há limites de uso no GroupMixer.
Não. Você não precisa de conta nem cadastro. Cole os nomes, ajuste a configuração e gere os grupos imediatamente.
No seu navegador, neste dispositivo. Sua lista de participantes e todos os outros dados que você inserir permanecem no seu dispositivo enquanto você trabalha.
Sim. Depois que a página for carregada, você pode continuar usando o GroupMixer offline no seu navegador.
Controles e configuração avançada
Sim. Abra as opções avançadas para adicionar regras de Manter juntos (Keep Together) e Manter separados (Keep Apart), múltiplas sessões e balanceamento por atributos.
Sim. Adicione atributos como função, habilidade, gênero ou departamento aos participantes e escolha qual atributo balancear entre os grupos.
Sim. Use Pessoas fixadas (Pinned people) nas opções avançadas para fixar pessoas específicas em um grupo específico em todas as sessões. Isso é útil para líderes, apresentadores ou qualquer pessoa que precise permanecer em um grupo conhecido.
Sim. Defina o número de sessões e ative "Evitar pares repetidos" para reduzir repetições entre rodadas.
Importe um CSV de pré-atribuição do Zoom ou uma planilha com emails dos participantes, escolha o número de salas e sessões, mantenha “Minimizar pares repetidos” ativado e gere os grupos. Depois use Share & Export → Download Zoom breakout CSV. Com várias sessões, o GroupMixer baixa um ZIP com um CSV do Zoom por rodada; envie o CSV correto na tela de pré-atribuição de breakout rooms do Zoom antes daquela rodada. O Zoom combina as pessoas pelo email, então elas precisam entrar com o mesmo endereço.
Sim. Use o editor de cenários para participação parcial. Você pode definir quais participantes participam de cada sessão antes de gerar a programação.
Sim. Use o editor de cenários para definir capacidades personalizadas de grupo, incluindo capacidades diferentes para grupos ou sessões diferentes.
Sim. Use Visitas a grupos (Group Visits) no editor de cenários para definir contagens exatas, mínimas ou máximas de visitas de pessoas selecionadas a grupos selecionados em sessões selecionadas. Isso é útil para rotações por estações, exposição a tarefas e limites de visitas.
Use o editor de cenários para controles que esta página não expõe, como participação parcial, capacidades personalizadas por grupo e sessão, regras específicas por sessão, preferências ponderadas, Encontros de pares (Pair Encounters), Visitas a grupos (Group Visits), ajustes avançados, configurações do solver, resultados anteriores e análise de resultados.
Algoritmo automático
O GroupMixer usa um pipeline de otimização híbrido. Ele compila o cenário em uma representação indexada densa, constrói uma programação inicial viável de alta qualidade e então executa um otimizador de busca local com pré-visualizações de movimentos que preservam a pontuação, aceitação record-to-record, seleção adaptativa de famílias de movimentos, diversificação e parada escalada pelo tempo de execução. Explore o mapa de arquitetura do solver Auto.
O solver minimiza uma pontuação ponderada. Os principais termos são penalidades por encontros repetidos, penalidades de balanceamento de atributos, penalidades ponderadas de restrições flexíveis e uma recompensa por contatos únicos. Menor é melhor: repetições e violações de restrições aumentam a pontuação, enquanto novos pares únicos a reduzem.
O GroupMixer não começa com um agrupamento puramente aleatório. Primeiro, ele tenta um construtor limitado guiado por cenário de restrições/oráculo. Esse construtor cria uma estrutura-base válida para restrições rígidas, usa estrutura pura de Social Golfer onde isso ajuda a reduzir repetições, projeta essa estrutura de volta para o cenário real e valida o resultado antes do início da busca.
O mecanismo de busca densa propõe repetidamente mudanças locais na programação atual. Cada mudança candidata é pré-visualizada em relação ao modelo de pontuação antes que o otimizador decida se deve mantê-la, para que a busca possa melhorar a programação preservando a validade das restrições rígidas.
Busca e redução de repetições
Sim. A busca principal é um otimizador no estilo busca local iterada com comportamento record-to-record ou de aceitação por limiar: movimentos de melhoria são aceitos, e movimentos sem melhoria dentro de limites podem ser aceitos no início para que a busca consiga sair de ótimos locais. O GroupMixer também usa seleção adaptativa de vizinhança, surtos de diversificação e mecanismos inspirados em tabu em caminhos especializados de minimização de repetições. Não é apenas uma única meta-heurística de livro-texto; ele combina várias ideias de busca em torno do modelo de pontuação de atribuição de grupos.
A redução de repetições começa antes da busca local. O GroupMixer tenta construir um padrão forte de contatos no estilo social golfer, usando estruturas exatas ou quase exatas com zero repetição quando elas se ajustam ao cenário. Depois disso, a busca densa acompanha as contagens de contatos entre pares, recompensa contatos pela primeira vez, penaliza excesso de repetições e melhora a programação sem quebrar os requisitos.
Restrições e otimalidade
Requisitos como participação, capacidade, Alocações fixas (Fixed Placements), Manter juntos (Keep Together) e Manter separados (Keep Apart) são aplicados durante a construção da programação e validados antes da busca. Preferências como Limite de repetição (Repeat Limit), Balancear atributos (Balance Attributes), Totais de atributos (Attribute Totals), Preferir juntos (Prefer Together), Preferir separados (Prefer Apart), Encontros de pares (Pair Encounters) e Visitas a grupos (Group Visits) são representadas como penalidades ou objetivos ponderados, para que possam ser negociadas quando o cenário estiver excessivamente restrito.
Requisitos são regras que o GroupMixer precisa satisfazer para retornar uma programação. Isso inclui participação, capacidade de grupo, Alocações fixas (Fixed Placements), Manter juntos (Keep Together) e Manter separados (Keep Apart). Preferências são metas pontuadas: violá-las é permitido, mas aumenta a pontuação. Isso inclui Limite de repetição (Repeat Limit), Balancear atributos (Balance Attributes), Totais de atributos (Attribute Totals), Preferir juntos (Prefer Together), Preferir separados (Prefer Apart), Encontros de pares (Pair Encounters), Visitas a grupos (Group Visits) e o objetivo de contatos únicos.
Se o GroupMixer encontra uma pontuação 0, isso indica otimalidade para o modelo de pontuação ativo: não restam violações pontuadas nem penalidades por repetição a melhorar. Em muitos cenários com restrições, porém, o ótimo verdadeiro pode ser maior que 0 porque os requisitos entram em conflito ou o desenho é matematicamente impossível. O GroupMixer não foi projetado para provar que uma pontuação positiva é globalmente ótima, e em muitos cenários complexos essa prova é completamente inviável na prática.
Não. Requisitos são tratados como regras de viabilidade, não como sugestões. Primeiro, o GroupMixer tenta construtores orientados à qualidade; se eles não conseguirem construir uma programação, ele pode recorrer a um construtor de viabilidade baseado em SAT. Se o solver SAT provar que os requisitos são insatisfatíveis, o GroupMixer falha em vez de relaxá-los. Se uma programação satisfatória for encontrada, o GroupMixer a usa como ponto de partida e continua otimizando preferências e outros objetivos de qualidade.
Benchmarks e resultados melhores
Na maioria dos casos, provavelmente não. Ferramentas gerais de otimização, como OR-Tools, conseguem modelar partes desse problema, mas para a maioria dos cenários práticos é extremamente difícil obter programações melhores que as do GroupMixer usando apenas um solver genérico. O GroupMixer combina busca com heurísticas de construção específicas do problema que uma busca genérica por restrições não redescobrirá de forma barata: programações de pares round-robin, sistemas triplos de Kirkman e quase Kirkman, construções de planos afins de corpos finitos e de desenhos transversais, construções MOLS e MOLR, RTDs por matrizes quase-diferença, BIBDs resolvíveis, bancos iniciais próprios de social golfer, bancos de programações publicados e lifting recursivo. Superar o GroupMixer normalmente exige outro algoritmo combinado, não apenas um modelo genérico.
Informe pela página de solicitação de recurso. Inclua o formato do cenário, o resultado do GroupMixer, a programação melhor e como você a pontuou. Casos em que outro método supera o GroupMixer são especialmente úteis porque podem se tornar testes de regressão ou casos de benchmark para melhorar o solver. Envie uma solicitação de recurso.
A busca usa exploração randomizada, a menos que uma semente determinística seja fornecida. Portanto, execuções diferentes podem encontrar programações de alta qualidade diferentes com a mesma pontuação ou pontuações semelhantes. No editor de cenários, usuários avançados podem definir uma semente quando a reprodutibilidade for importante.