Simulação de Churn em Escolas de Informática¶
Modelagem Baseada em Agentes com Calibração por Otimização Bayesiana¶
Registro: CAL-2026-002
Versão do Modelo: 2.0
Modo de Execução: Coorte Fechada
Data: Jun/2026
Autor: Fabio Polini
Sumário¶
- Contexto e Motivação
- O Problema do Churn em Escolas de Informática
- Abordagem Metodológica
- Arquitetura do Modelo ABM
- Tecnologias Utilizadas
- Processo de Calibração
- Resultados e Validação
- Análise de Sensibilidade
- Observações
- Conclusão e Próximos Passos
1. Contexto e Motivação¶
Escolas de informática operam em um mercado de alta competitividade e com um perfil de aluno heterogêneo — jovens em busca de primeiro emprego, adultos em requalificação profissional, profissionais migrando de carreira. Essa diversidade torna o comportamento de cancelamento (churn) difícil de prever com modelos estatísticos tradicionais.
A pergunta central que motivou este projeto foi:
É possível construir um modelo que reproduza a curva de retenção observada de uma coorte real de alunos, capturando não apenas o volume de cancelamentos mas a forma como eles se distribuem ao longo do tempo?
A resposta exigiu ir além de regressões e modelos de sobrevivência clássicos. O comportamento de churn não é uma função linear de variáveis independentes — ele emerge da interação entre perfis comportamentais distintos, condições financeiras, experiências de onboarding e o reforço psicológico que acontece conforme o aluno permanece mais tempo matriculado.
Embora o modelo de franquias de escolas de informática enfrente um declínio evidente — impulsionado por novas tecnologias como LLMs, fácil acesso à internet, familiaridade das novas gerações com o mundo digital e a concorrência de cursos online muito mais acessíveis —, o uso de simulações continua sendo uma ferramenta valiosa. As modelagens desenvolvidas nesse contexto podem ser perfeitamente adaptadas para ajudar a compreender o comportamento do cliente em diversas outras áreas de negócios.
2. O Problema do Churn em Escolas de Informática¶
2.1 Características do Mercado¶
O mercado de escolas de informática apresenta dinâmicas específicas que diferenciam o churn desse setor de outros mercados de educação:
- Janela de desistência precoce: uma parcela significativa dos cancelamentos ocorre nos primeiros 30 dias, frequentemente motivada por choque de expectativas — o aluno descobre que o conteúdo é mais técnico do que imaginava.
- Pico de fadiga intermediária: entre o segundo e quarto mês, alunos que superaram a fase inicial podem enfrentar desmotivação diante da complexidade crescente do conteúdo.
- Efeito de comprometimento tardio: alunos que chegam ao sexto mês tendem a permanecer até o fim, pois já internalizaram o investimento feito e percebem a proximidade da conclusão.
- Heterogeneidade de perfis: a convivência entre alunos impulsivos, disciplinados, orientados a carreira e financeiramente vulneráveis cria uma dinâmica emergente que não pode ser capturada por médias populacionais.
- Falta de organização: é comum que os alunos não reservem tempo extraclasse para os estudos, concentrando todo o aprendizado apenas nas aulas presenciais. Esse hábito dificulta o acompanhamento do ritmo da turma e gera um desânimo crescente.
2.2 Por Que Modelos Tradicionais São Insuficientes¶
Modelos de regressão de sobrevivência, como o Cox Proportional Hazards, assumem que os fatores de risco operam de forma independente e proporcional ao longo do tempo. No contexto de escolas de informática, essa suposição é violada sistematicamente:
- O risco financeiro de um aluno no mês 1 não é o mesmo que no mês 9, pois sua relação com o curso mudou.
- A influência de pares — ver colegas cancelando ou se formando — afeta a decisão individual de formas não lineares.
- O histórico de satisfação acumulado altera a tolerância do aluno a eventos negativos pontuais.
Essas características apontam para a necessidade de um modelo que simule agentes individuais com memória, perfis e interações — ou seja, uma Modelagem Baseada em Agentes.
3. Abordagem Metodológica¶
3.1 Modelagem Baseada em Agentes (ABM)¶
A Modelagem Baseada em Agentes (do inglês Agent-Based Modeling, ABM) é uma abordagem computacional em que entidades individuais — os agentes — são simuladas com regras de comportamento próprias. O comportamento coletivo emerge das interações entre esses agentes e com o ambiente, sem ser prescrito de forma top-down.
No contexto desta simulação:
- Cada agente representa um aluno matriculado.
- O ambiente representa a escola, com suas franquias, equipamentos e corpo docente.
- As regras de comportamento definem como cada aluno avalia sua situação diariamente e decide permanecer ou cancelar.
- A emergência é o padrão coletivo de retenção que resulta de milhares de decisões individuais simultâneas.
3.2 Modo de Coorte Fechada¶
A simulação opera no modo de coorte fechada: um grupo fixo de alunos entra simultaneamente no início da simulação, e o modelo acompanha sua trajetória por 390 dias (13 meses). Não há entrada de novos alunos durante o período. Esse design permite comparar diretamente a curva simulada com dados históricos de retenção de uma coorte real.
3.3 Calibração por Otimização Bayesiana¶
A parametrização inicial do modelo foi fundamentada em 25 anos de know-how prático na gestão financeira, pedagógica e administrativa de franquias de escolas de informática. Esses pesos empíricos provaram-se estimativas preliminares altamente precisas, servindo como uma base sólida para a calibração subsequente através de otimização bayesiana. O objetivo desse processo estatístico foi refinar finamente os valores — ajustando a magnitude de fatores específicos — para minimizar a diferença (RMSE) entre a curva de retenção simulada e a curva real observada nos dados históricos.
4. Arquitetura do Modelo ABM¶
4.1 AlunoAgent (n≈8.750)¶
Cada agente-aluno possui os seguintes atributos:
Atributos estáticos (definidos na inicialização):
- perfil_comportamental: classifica o aluno em cinco tipos — impulsivo, disciplinado, frágil-financeiro, baixa-paciência e carreira
- expectativa: nível inicial de expectativa sobre o curso (variável)
- vulnerabilidade_financeira: propensão base a problemas financeiros
Atributos dinâmicos (evoluem ao longo da simulação):
- problema_financeiro: pressão financeira acumulada
- experiencia_real: qualidade percebida do curso, influenciada pela qualidade dos equipamentos e instrutores
- gap_expectativa: diferença entre expectativa e experiência real
- insatisfacao_duracao: fadiga acumulada com o tempo de matrícula
- bonus_fidelizacao: comprometimento psicológico crescente com a permanência
- dias_matriculado: contador de tempo no curso
4.2 Perfis Comportamentais¶
A distribuição de perfis foi calibrada para refletir o público típico de escolas de informática:
| Perfil | Proporção | Característica Principal |
|---|---|---|
| Impulsivo | 10% | Alta propensão a cancelar nas primeiras semanas sem reflexão |
| Disciplinado | 20% | Segue rotina, cancela apenas por motivos objetivos |
| Frágil-financeiro | 20% | Vulnerável a choques econômicos em qualquer fase |
| Baixa-paciência | 10% | Sensível à curva de aprendizado e à fadiga de duração |
| Carreira | 40% | Alta resiliência; cancela principalmente por crises financeiras graves |
4.3 Cálculo do Risco Diário de Churn¶
A cada dia de simulação, cada agente calcula seu risco de cancelamento com base em quatro componentes principais:
- Componente financeiro: pressão financeira acumulada ponderada pelo
financeiro_factor - Componente de disponibilidade: conflito entre demandas de tempo externas e a carga do curso, ponderado pelo
tempo_factor - Componente de satisfação: gap entre expectativa e experiência real, ponderado por um coeficiente de sensibilidade
- Componente de fadiga: insatisfação com a duração do curso, especialmente relevante nos meses 2 a 5
O risco é então reduzido pelo bônus de fidelização — que cresce com o tempo de matrícula — e modificado pelo multiplicador de perfil comportamental.
4.4 Mecanismo de Sobrevivência Seletiva¶
Um aspecto crítico do modelo é o mecanismo de sobrevivência seletiva: à medida que o tempo avança, o multiplicador de risco dos perfis mais vulneráveis decai gradualmente. Um aluno impulsivo que permaneceu seis meses já demonstrou, pelo próprio comportamento, um nível de comprometimento que não é capturado pelo rótulo estático do perfil. O modelo reconhece isso atenuando o peso do perfil negativo com o tempo de matrícula.
Esse mecanismo é fundamental para reproduzir a desaceleração do churn nos meses finais — um padrão característico de coortes reais onde os mais frágeis já saíram e o que resta é uma população naturalmente mais resiliente.
4.5 Janela de Onboarding¶
Os primeiros dias de matrícula recebem tratamento especial. Um multiplicador de onboarding amplifica o risco de churn na fase inicial, capturando o fenômeno do choque de expectativas. O valor desse multiplicador foi refinado ao longo do processo de calibração:
- Versão inicial:
× 0.4(por 14 dias) - Versão intermediária:
× 0.2(por 14 dias, expandido para 30 dias) - Versão final (CAL-2026-002):
× 0.1
A redução progressiva do multiplicador de onboarding revelou um efeito sistêmico: com menos evasão precoce, o modelo precisou de maior força de fidelização tardia para manter a forma correta da curva — o que se refletiu no aumento consistente do fidelizacao_factor ao longo das versões.
4.6 FranquiaAgent (n=25)¶
Representa cada unidade da rede de escolas.
| Atributo | Descrição | Range |
|---|---|---|
capacidade_total |
Máximo de alunos | 350 |
capacidade_absorcao_mensal |
Novas matrículas por mês | 100 |
agressividade_marketing |
Intensidade do marketing | 50-70 |
qualidade_professor |
Qualidade do corpo docente | 50-90 |
qualidade_equipamento |
Qualidade dos computadores/recursos | 50-90 |
qualidade_didatica |
Qualidade do material pedagógico | 50-90 |
reputacao |
Reputação da franquia (calculada) | 0-100 |
4.7 Escala Espaço-Temporal¶
| Dimensão | Valor |
|---|---|
| Tempo total simulado | 390 dias (~13 meses) |
| Passo de simulação | 1 dia |
| Relatórios mensais | A cada 30 dias |
| Alunos por escola | 350 |
| Escolas totais | 25 |
| Agentes totais | 8750 |
| Tempo por trial | ≈30 segundos (8.750 agentes) |
5. Tecnologias Utilizadas¶
5.1 Mesa — Framework ABM em Python¶
O núcleo da simulação foi construído com Mesa, o principal framework de Modelagem Baseada em Agentes para Python. Mesa fornece a infraestrutura para criação de agentes, ambientes (grids ou redes) e schedulers que controlam a ordem de ativação dos agentes a cada step da simulação.
A escolha do Mesa foi motivada por sua flexibilidade para implementar regras comportamentais complexas e pela facilidade de coleta de dados por agente e por step, essencial para análise da curva de retenção ao longo do tempo.
5.2 Optuna — Otimização Bayesiana¶
A calibração dos parâmetros foi conduzida com Optuna, uma biblioteca de otimização automática de hiperparâmetros que implementa o algoritmo TPE (Tree-structured Parzen Estimator). O TPE é uma forma de otimização bayesiana que constrói um modelo probabilístico da função objetivo a partir dos trials já executados, direcionando a busca para regiões promissoras do espaço de parâmetros.
Diferente de uma busca em grade (grid search) ou aleatória, o Optuna aprende com cada trial e concentra progressivamente os esforços nas regiões com maior potencial de melhora — o que é essencial dado o alto custo computacional de cada simulação ABM.
5.3 Joblib — Paralelização¶
Cada avaliação do Optuna exige rodar a simulação múltiplas vezes com seeds diferentes para obter uma estimativa estável do RMSE (reduzindo o ruído estocástico). O Joblib foi utilizado para paralelizar essas execuções, distribuindo as seeds entre os núcleos disponíveis e reduzindo significativamente o tempo total de calibração.
5.4 Ambientes de Execução¶
A calibração foi conduzida em três ambientes independentes para validação cruzada dos resultados:
| Ambiente | Característica | RMSE Final (100 seeds) |
|---|---|---|
| Local | Máquina dedicada, referência | 0.755 pp |
| Kaggle | GPU/CPU cloud, melhor desempenho histórico | 1.475 pp |
| Google Colab | Descontinuado — 80% mais lento, inviável | — |
A idéia é rodar as simulações em paralelo. Por padrão a biblioteca Mesa não utiliza CUDA, dependendo inteiramente da CPU. Existe a possibilidade de usar CUDA através do uso de outras bibliotecas, mas seria necessário reescrever todo o código, o que é inviável por enquanto.Os ambientes utilizados não geram qualquer vantagem/desvantagem nos cálculos. O tempo de execução pode variar.
5.5 Stack Completa¶
Python 3.x
├── mesa # Framework ABM
├── optuna # Otimização bayesiana (TPE)
├── joblib # Paralelização de seeds
├── numpy # Operações numéricas
├── pandas # Manipulação de dados e histórico de trials
└── json # Serialização dos artefatos de calibração
6. Processo de Calibração¶
6.1 Parâmetros Calibrados¶
Ao invés de ajustar dezenas de fatores, optou-se por criar hiperparametros. O Optuna otimizou quatro fatores multiplicativos que escalam os pesos base definidos no código:
| Fator | Descrição | Boundary Final |
|---|---|---|
financeiro_factor |
Amplificação do peso do componente financeiro | 0.1 – 2.0 |
tempo_factor |
Amplificação do peso do componente de disponibilidade | 0.1 – 2.0 |
onboarding_factor |
Amplificação do multiplicador de onboarding | 0.1 – 2.0 |
fidelizacao_factor |
Amplificação do bônus de fidelização | 0.1 – 2.0 |
6.2 Função Objetivo¶
A função objetivo é o RMSE entre a curva de retenção simulada (média de 10 seeds de calibração) e a curva target real, calculado nos 13 pontos mensais (M00 a M12):
6.3 Estratégia de Boundaries¶
Um dos aprendizados centrais do processo foi a relação entre os boundaries do espaço de busca e a qualidade da convergência.
Atenção aos boundaries: estreitar os boundaries prematuramente, com base na intuição sobre os pesos corretos, eliminou a região onde a solução ótima existia. O resultado foi um piso de RMSE de ~21 pp que o Optuna não conseguia superar independentemente do número de trials.
Correção aplicada: ao relaxar os boundaries para 0.1–2.0 e deixar o Optuna explorar livremente, a solução emergiu nas primeiras dezenas de trials, com RMSE caindo de ~24 pp para ~3 pp em menos de 15 rodadas.
6.4 Trajetória de Melhora¶
| Versão | RMSE (10 seeds) | RMSE Robustez (100 seeds) | Volatilidade M12 |
|---|---|---|---|
| CAL-2026-001 Local | 2.07 pp | 1.94 pp | ±2.57 pp |
| CAL-2026-001 Kaggle | 1.97 pp | 1.66 pp | ±2.56 pp |
| CAL-2026-001 Colab | 2.32 pp | 2.22 pp | ±2.72 pp |
| CAL-2026-002 Local v2 | 1.25 pp | 1.53 pp | ±2.39 pp |
| CAL-2026-002 Kaggle v2 | 1.50 pp | 1.48 pp | ±2.26 pp |
| CAL-2026-002 Final | 0.62 pp | 0.755 pp | ±1.85 pp |
6.5 Configuração Final¶
A rodada definitiva que gerou o CAL-2026-002 foi executada com:
- Trials: 1.000
- Seeds de calibração: 10 (1001 a 10010)
- Seeds de validação: 100
- Paciência de early stopping: 160 trials sem melhora > 0.05 pp
- Boundaries: 0.1 a 2.0 para todos os fatores
- Multiplicador de onboarding 7 dias: × 0.1
7. Resultados e Validação¶
7.1 Baseline Oficial — CAL-2026-002¶
{
"rmse_final": 0.617,
"best_factors": {
"financeiro_factor": 2.286,
"tempo_factor": 0.820,
"onboarding_factor": 0.915,
"fidelizacao_factor": 1.899
},
"metricas_robustez_100_seeds": {
"rmse_oficial_baseline": 0.755,
"retencao_m12_media": 68.93,
"volatilidade_m12": 1.85
}
}
| Fator | Valor | Significado para o negócio |
|---|---|---|
| Financeiro | 2.286 | Problemas financeiros têm impacto muito alto no cancelamento. Alunos são sensíveis a questões econômicas. |
| Tempo | 0.820 | Falta de tempo não é uma desculpa real. Alunos que querem fazer o curso arrumam tempo. |
| Onboarding | 0.915 | O período inicial é levemente menos crítico que o default. Alunos conseguem se adaptar. |
| Fidelização | 1.899 | Fidelização é extremamente importante. Quem supera os primeiros meses tende a ficar até o final. |
7.2 Curva Simulada vs. Target¶
| Mês | Target Real | Simulado (100s) | Erro |
|---|---|---|---|
| M00 | 95.38% | 94.33% | −1.05 pp |
| M01 | 91.98% | 91.33% | −0.65 pp |
| M02 | 88.47% | 88.57% | +0.10 pp |
| M03 | 84.76% | 85.30% | +0.54 pp |
| M04 | 81.60% | 82.77% | +1.17 pp |
| M05 | 79.07% | 80.32% | +1.25 pp |
| M06 | 76.73% | 78.01% | +1.28 pp |
| M07 | 74.88% | 75.48% | +0.60 pp |
| M08 | 73.25% | 73.76% | +0.51 pp |
| M09 | 71.89% | 72.30% | +0.41 pp |
| M10 | 70.61% | 70.82% | +0.21 pp |
| M11 | 69.55% | 69.84% | +0.29 pp |
| M12 | 68.61% | 68.93% | +0.32 pp |
O erro é positivo e decrescente nos meses finais — o modelo tende a reter ligeiramente mais alunos do que o observado nos meses 4 a 6, convergindo para o target com precisão milimétrica a partir do M07. O erro nunca ultrapassa 1.3 pp em nenhum ponto da curva.
7.3 Interpretação dos Fatores Calibrados¶
Os fatores do CAL-2026-002 revelam o que o sistema emergente identificou como os pesos reais dos mecanismos:
financeiro_factor = 2.286 — o fator mais alto da série. Com o multiplicador de onboarding reduzido (menos evasão precoce explosiva), o risco financeiro nos meses intermediários e tardios precisou de mais peso para manter a forma da curva. O sistema revelou que o componente financeiro base estava subestimado para o perfil desta população.
fidelizacao_factor = 1.899 — o segundo mais alto, e o mais estável entre todos os ambientes testados. A fidelização é o mecanismo dominante de retenção tardia — cada redução no onboarding exigiu proporcionalmente mais força de fidelização para manter a curva achatada nos meses finais.
tempo_factor = 0.820 — abaixo de 1.0, indicando que o componente de disponibilidade de tempo estava superestimado no modelo base. O Optuna consistentemente preferiu valores abaixo de 1.0 para este fator em todas as rodadas de alta performance.
onboarding_factor = 0.915 — próximo à neutralidade (1.0), sugerindo que o multiplicador de onboarding base, após o ajuste do coeficiente de 7 dias, está bem calibrado. O fator de escala não precisa compensar muito.
7.4 Envelope de Robustez¶
O teste de robustez com 100 seeds confirma que o baseline não é fruto de coincidência estocástica:
| Métrica | Valor | Interpretação |
|---|---|---|
| RMSE (calibração - 10 seeds) | 0.617 | Excelente ajuste aos dados de calibração |
| RMSE (validação - 100 seeds) | 0.755 | Modelo generaliza bem (diferença mínima) |
| Volatilidade M12 | 1.85 | Alta estabilidade entre diferentes seeds |
| Diferença calibração vs validação | +0.138 | Sem overfitting significativo |
O envelope de ±1.85 pp contém o target real em todos os meses da curva, o que é o critério mais rigoroso de validade: não apenas o modelo reproduz o valor médio, mas a incerteza estocástica natural da simulação é menor do que o afastamento do target.
7.5 Importância dos Fatores (Correlação com RMSE)¶
| Fator | Correlação | Importância |
|---|---|---|
| fidelizacao | -0.51 | MAIS IMPORTANTE |
| financeiro | -0.42 | MUITO IMPORTANTE |
| tempo | +0.38 | IMPORTANTE (manter baixo) |
| onboarding | +0.31 | MODERADO |
7.6 Janelas Ótimas¶
| Fator | Mínimo | Máximo | Ponto ideal | Tolerância |
|---|---|---|---|---|
| financeiro | 2.20 | 2.35 | 2.29 | ±0.07 |
| tempo | 0.70 | 0.85 | 0.82 | ±0.06 |
| onboarding | 0.85 | 0.95 | 0.92 | ±0.05 |
| fidelizacao | 1.80 | 1.90 | 1.90 | ±0.05 |
7.7 Principais Descobertas Comportamentais¶
- Fidelização é o fator mais crítico - Alunos que passam dos primeiros meses dificilmente cancelam.
- Problemas financeiros impactam muito - O modelo calibrou este fator em 2.29x o default.
- Falta de tempo não é desculpa - O fator tempo calibrou para 0.82x, indicando que alunos engajados arrumam tempo.
- Marketing nos primeiros 7 dias foi reduzido - O parâmetro foi ajustado de 0.4 para 0.1, reduzindo arrependimento pós-compra.
7.8 Validação e Robustez¶
| Critério | Status | Valor |
|---|---|---|
| Validade de face | ✅ | Especialistas reconhecem comportamento |
| Validade interna | ✅ | Mecanismos causais funcionam como esperado |
| Validade externa | ✅ | RMSE 0.755 em dados não utilizados na calibração |
| Reprodutibilidade | ✅ | Seeds fixas, resultados consistentes |
| Estabilidade estocástica | ✅ | Volatilidade 1.85 (100 seeds) |
8. Análise de Sensibilidade¶
8.1 Metodologia¶
A análise de sensibilidade foi conduzida sobre o histórico completo de trials da rodada final (204 trials), segmentando os resultados em trials com RMSE < 2 pp (região de alta performance) para identificar os padrões de convergência.
8.2 Importância Relativa dos Fatores¶
A correlação de cada fator com o RMSE, calculada sobre os trials com RMSE < 2 pp, revela a hierarquia de importância:
| Fator | Correlação com RMSE | Direção |
|---|---|---|
| Fidelização | Maior (absoluto) | Negativa — maior fidelização → menor RMSE |
| Financeiro | Segunda maior | Negativa — maior financeiro → menor RMSE |
| Onboarding | Moderada | Positiva — maior onboarding → maior RMSE |
| Tempo | Menor | Próxima de zero — baixa influência direta |
8.3 Equifinalidade¶
A análise revelou um fenômeno característico de sistemas emergentes chamado equifinalidade: múltiplas combinações de parâmetros produzem o mesmo comportamento coletivo. Especificamente, financeiro_factor e onboarding_factor apresentaram correlação negativa de ~−0.4 a −0.57 entre si nos trials de alta performance — quando um sobe, o outro tende a cair para compensar.
Isso tem uma implicação prática importante: os fatores individuais (financeiro, tempo, onboarding) não podem ser interpretados isoladamente como "o peso real" do mecanismo correspondente. O que é identificável com confiança é a combinação deles e o RMSE resultante.
Exceção: fidelizacao_factor mostrou correlação próxima de zero com os demais fatores em todas as rodadas — é o único parâmetro identificável de forma independente, e portanto o único com interpretação comportamental direta confiável.
8.4 Convergência do Optuna¶
O Optuna encontrou a região ótima antes do trial 60 em todas as rodadas com boundaries amplos. Os trials subsequentes serviram para refinar a posição dentro da região já identificada. Os fatores financeiro e fidelização estabilizaram cedo; tempo e onboarding continuaram com leve oscilação até o final — consistente com a baixa sensibilidade relativa desses fatores.
9. Observações¶
9.1 Sobre a Relação com o Optuna¶
Ao tratar Optuna como um validador de intuições, estreitando os boundaries na direção que parecia correta com base no conhecimento de domínio, resultou em um piso de RMSE irrecuperável (~21 pp) que consumiu dezenas de rodadas antes de ser identificado como um problema de espaço de busca, não de estrutura do modelo.
Princípio correto estabelecido: o Optuna é um instrumento de escuta, não de confirmação. O conhecimento de domínio entra na estrutura causal do código. Os pesos emergem da calibração.
9.2 Sobre ABM e Não-Linearidade¶
Um modelo ABM não é uma regressão sofisticada. O comportamento coletivo não é dedutível das regras individuais — ele emerge das interações. Um financeiro_factor = 2.3 não significa "o fator financeiro causa 230% do churn". Significa que, neste sistema com este conjunto de agentes interagindo, esse peso produz o comportamento emergente correto. A emergência amplifica ou atenua cada mecanismo de formas que não são intuíveis a priori.
9.3 Sobre a Estrutura vs. os Pesos¶
A distinção mais importante do projeto: erros de estrutura (mecanismos ausentes, como a sobrevivência seletiva) não podem ser corrigidos por calibração. O Optuna pode otimizar os pesos de uma estrutura incorreta e ainda assim não convergir. A sequência correta é:
- Garantir que a forma da curva simulada se aproxima da real (estrutura correta)
- Só então calibrar os pesos (Optuna)
- Validar com múltiplas seeds
- Estreitar boundaries apenas com base nos dados dos trials, nunca na intuição
9.4 Sobre o Processo de Validação¶
O teste de robustez com 100 seeds é inegociável antes de registrar qualquer baseline. Um RMSE de 0.62 pp com 10 seeds pode ser sorte estocástica. Um RMSE de 0.755 pp com 100 seeds é evidência de que o modelo reproduz o comportamento sistematicamente.
10. Conclusão e Próximos Passos¶
10.1 O que foi alcançado¶
O CAL-2026-002 representa um baseline de alta qualidade para simulação de churn em escolas de informática:
- Precisão: RMSE de 0.755 pp em 100 seeds — erro médio inferior a 1 ponto percentual por mês
- Estabilidade: volatilidade de ±1.85 pp no M12 — a menor da série de calibrações
- Validade: o envelope estocástico contém o target real em todos os 13 pontos mensais
- Interpretabilidade: os fatores calibrados têm leitura comportamental coerente com o mercado de escolas de informática
Os principais insights comportamentais extraídos do modelo são:
- Fidelização é o fator mais crítico - Invista em reter alunos após os primeiros meses.
- Problemas financeiros impactam significativamente - Considere políticas de flexibilização financeira.
- Falta de tempo não é o principal driver - Alunos engajados arrumam tempo.
- Marketing agressivo nos primeiros dias - Reduza expectativas irreais para diminuir arrependimento pós-compra.
10.2 O que o modelo não faz¶
É importante delimitar o escopo do modelo para uso correto:
- O modelo não prediz churn individual — ele simula padrões coletivos de coortes
- Os fatores calibrados não são coeficientes causais no sentido econométrico — são pesos emergentes de um sistema de interação
- A equifinalidade nos fatores intermediários (financeiro, tempo, onboarding) impede interpretação isolada de cada um
- O modelo foi calibrado para uma coorte específica — generalização para populações muito diferentes exige recalibração
10.3 Próximos Passos¶
Com o baseline CAL-2026-002 registrado, as simulações de intervenção tornam-se possíveis. Uma intervenção é considerada efetiva apenas se mover a curva de retenção além do envelope estocástico de ±1.85 pp.
Intervenções prioritárias para simulação:
- Programa de suporte financeiro nos primeiros 90 dias: redução do
problema_financeironos meses M01–M03; espera-se impacto direto viafinanceiro_factor = 2.286 - Reforço de onboarding nas duas primeiras semanas: dado o
onboarding_factorpróximo da neutralidade, o impacto deve ser moderado — hipótese a ser testada - Programa de marcos de aprendizado (milestones): mecanismo de redução da
insatisfacao_duracaoao atingir módulos — impacto esperado nos meses M03–M06 - Ação de fidelização no M05–M06: dado que
fidelizacao_factor = 1.899é o parâmetro mais sensível, intervenções que aumentem o comprometimento psicológico nesse ponto têm potencial de impacto máximo
Cada simulação de intervenção deve ser executada com as mesmas 100 seeds de validação e comparada ao baseline via teste de significância estatística, usando a distribuição de resultados como referência.
Apêndice A — Parâmetros Base do Modelo¶
base_sliders_config = {
"modo_calibracao": False,
"populacao_cidade": 12000000,
"taxa_potencial_alunos": 0.05,
"numero_franquias": 25, # ESCALA: 25 escolas
"capacidade_total_franquia": 350, # ESCALA: 350 alunos
"absorcao_mensal_franquia": 100,
"ocupacao_inicial_pct": 100,
"marketing_agressividade_min": 50,
"marketing_agressividade_max": 70,
"peso_marketing_conversao": 0.6,
"peso-reputacao-conversao": 0.5,
"qualidade_professor_min": 50,
"qualidade_professor_max": 90,
"qualidade_didatica_min": 50,
"qualidade_didatica_max": 90,
"qualidade_equipamento_min": 50,
"qualidade_equipamento_max": 90,
"prob-problema_financeiro-leve": 6.0,
"prob-problema_financeiro-grave": 0.8,
"prob-sem-tempo": 5.0,
"impacto-financeiro-leve": 3,
"impacto-financeiro-grave": 20,
"intervalo-aulas": 7,
"bonus-presenca": 2,
"penalidade-falta": 4,
"prob-desconto": 5.0,
"impacto-desconto": 20,
"prob-bolsa": 1.0,
"impacto-bolsa": 40,
"peso-satisfacao-churn": 0.25,
"peso-financeiro-churn": 0.6,
"peso-tempo-churn": 0.4,
"peso-gap-churn": 0.35,
"peso-frequencia-churn": 0.3,
"multiplicador-onboarding": 1.25,
"reputacao_base": 50,
"bonus-fidelizacao-max": 35,
"taxa-fidelizacao-dia": 0.05,
"novos_prospects_mes": 30,
"fadiga_baixa_paciencia": 0.06,
"fadiga_impulsivo": 0.04,
"fadiga_fragil_financeiro": 0.025,
"fadiga_disciplinado": 0.01,
"fadiga_carreira": 0.01,
}
Apêndice B — Top 10 ùltima Calibração¶
1. Local (Target Inicial, multiplicador base 1.25)¶
- Melhor Trial: 123
- RMSE: 0.617
| Rank | Trial | RMSE | F_Financeiro | F_Tempo | F_Onboarding | F_Fidelizacao |
|---|---|---|---|---|---|---|
| 1 | 123 | 0.617 | 2.286 | 0.820 | 0.915 | 1.899 |
| 2 | 88 | 0.641 | 2.276 | 0.917 | 0.929 | 1.860 |
| 3 | 143 | 0.644 | 2.288 | 1.083 | 0.926 | 1.900 |
| 4 | 109 | 0.664 | 2.241 | 0.892 | 0.947 | 1.866 |
| 5 | 82 | 0.687 | 2.304 | 0.909 | 0.877 | 1.887 |
| 6 | 122 | 0.695 | 2.283 | 0.867 | 0.913 | 1.892 |
| 7 | 203 | 0.723 | 2.307 | 0.789 | 0.856 | 1.899 |
| 8 | 189 | 0.749 | 2.304 | 0.869 | 0.963 | 1.900 |
| 9 | 179 | 0.767 | 2.269 | 0.932 | 0.945 | 1.900 |
| 10 | 127 | 0.869 | 2.273 | 0.867 | 0.993 | 1.900 |
Apêndice C — Análise de Sensibilidade Completa¶
Baseado no histórico de 204 trials da calibração final.¶
Distribuição Geral do RMSE¶
| Faixa RMSE | Quantidade | % | Acumulado | Qualidade |
|---|---|---|---|---|
| 0.60 - 0.80 | 28 | 13.7% | 13.7% | 🏆 Excelente |
| 0.80 - 1.00 | 32 | 15.7% | 29.4% | ✅ Muito bom |
| 1.00 - 1.50 | 36 | 17.6% | 47.1% | ✅ Bom |
| 1.50 - 3.00 | 56 | 27.5% | 74.5% | ⚠️ Regular |
| > 3.00 | 52 | 25.5% | 100% | 🔴 Ruim |
- Melhor RMSE: 0.617 (Trial 123)
- Pior RMSE: 17.75 (Trial 5)
- RMSE médio: 2.23
- Desvio padrão: 2.81
Sensibilidade por Fator¶
1. Fator Financeiro (range efetivo: 1.51 - 2.50)¶
| Faixa | Trials | RMSE médio | Melhor RMSE | Observação |
|---|---|---|---|---|
| 1.50 - 1.80 | 8 | 5.23 | 1.57 | Muito volátil, evitar |
| 1.80 - 2.00 | 18 | 3.89 | 0.90 | Melhorando |
| 2.00 - 2.20 | 45 | 2.15 | 0.62 | ✅ Zona promissora |
| 2.20 - 2.35 | 89 | 1.87 | 0.62 | ✅ Zona ótima |
| 2.35 - 2.50 | 44 | 2.45 | 0.80 | Começa a piorar |
Conclusão:
Financeiro entre 2.20 - 2.35 produz melhores resultados.
2. Fator Tempo (range efetivo: 0.50 - 1.20)¶
| Faixa | Trials | RMSE médio | Melhor RMSE | Observação |
|---|---|---|---|---|
| 0.50 - 0.60 | 22 | 3.45 | 0.90 | Volátil |
| 0.60 - 0.70 | 28 | 3.12 | 0.80 | Melhorando |
| 0.70 - 0.80 | 48 | 2.05 | 0.62 | ✅ Zona ótima |
| 0.80 - 0.90 | 52 | 1.89 | 0.62 | ✅ Zona ótima |
| 0.90 - 1.00 | 24 | 2.34 | 0.64 | Aceitável |
| 1.00 - 1.20 | 30 | 2.98 | 0.86 | Piora significativamente |
Conclusão:
Tempo baixo (0.70-0.85) é crítico para bons resultados.
3. Fator Onboarding (range efetivo: 0.80 - 1.50)¶
| Faixa | Trials | RMSE médio | Melhor RMSE | Observação |
|---|---|---|---|---|
| 0.80 - 0.85 | 18 | 2.45 | 0.64 | ✅ Zona promissora |
| 0.85 - 0.90 | 34 | 2.12 | 0.62 | ✅ Zona ótima |
| 0.90 - 0.95 | 42 | 2.18 | 0.62 | ✅ Zona ótima |
| 0.95 - 1.00 | 28 | 2.34 | 0.64 | Aceitável |
| 1.00 - 1.10 | 32 | 2.67 | 0.80 | Piora |
| 1.10 - 1.50 | 50 | 3.45 | 1.17 | Ruim |
Conclusão:
Onboarding entre 0.85 - 0.95 é a janela ótima.
4. Fator Fidelização (range efetivo: 1.20 - 1.90)¶
| Faixa | Trials | RMSE médio | Melhor RMSE | Observação |
|---|---|---|---|---|
| 1.20 - 1.40 | 12 | 4.89 | 1.34 | Ruim |
| 1.40 - 1.60 | 18 | 3.12 | 0.86 | Melhorando |
| 1.60 - 1.70 | 14 | 2.45 | 0.80 | Bom |
| 1.70 - 1.80 | 28 | 1.89 | 0.69 | ✅ Muito bom |
| 1.80 - 1.85 | 32 | 1.67 | 0.64 | ✅ Excelente |
| 1.85 - 1.90 | 100 | 1.45 | 0.62 | ✅ Zona ótima |
Conclusão:
Fidelização > 1.85 é essencial. O modelo consistentemente escolhe valores próximos do limite superior (1.90).
Correlações entre os fatores¶
1. Correlação com o Desempenho (RMSE_Score)¶
-
Fator_Fidelizacao (r ≈ -0.77): Apresenta uma forte correlação negativa com o erro (RMSE_Score). Isso indica que valores mais altos desse fator estão fortemente associados a uma redução expressiva no erro do modelo, sugerindo que ele é uma das variáveis mais críticas para a calibração.
-
Fator_Onboarding (r ≈ +0.30): Mostra uma correlação positiva moderada. Valores maiores neste fator tendem a estar associados a aumentos no RMSE_Score.
-
Fator_Financeiro (r ≈ -0.16) e Fator_Tempo (r ≈ -0.10): Apresentam correlações negativas fracas com o erro, indicando um impacto menos linear direto isoladamente sobre o resultado do score.
2. Correlação Entre os Fatores¶
-
Fator_Onboarding e Fator_Fidelizacao (r ≈ -0.35): Possuem uma correlação negativa moderada, indicando que rodadas com valores mais altos de onboarding tendem a registrar valores ligeiramente menores de fidelização.
-
Fator_Onboarding e Fator_Tempo (r ≈ -0.31): Também mostram uma relação inversa moderada.
-
Fator_Financeiro e Fator_Onboarding (r ≈ -0.22): Relação negativa fraca.
Janelas ótimas¶
| Fator | Mínimo | Máximo | Ponto ideal | Tolerância | Trials na zona ótima |
|---|---|---|---|---|---|
| financeiro | 2.20 | 2.35 | 2.29 | ±0.07 | 89 (43.6%) |
| tempo | 0.70 | 0.85 | 0.82 | ±0.06 | 100 (49.0%) |
| onboarding | 0.85 | 0.95 | 0.92 | ±0.05 | 76 (37.3%) |
| fidelizacao | 1.85 | 1.90 | 1.90 | ±0.03 | 100 (49.0%) |
Evolução da qualidade por fase¶
| Fase | Trials | RMSE médio | Melhor RMSE | Evolução |
|---|---|---|---|---|
| Exploração (0-50) | 51 | 4.12 | 0.72 | Baseline |
| Ajuste (51-100) | 50 | 2.34 | 0.64 | -43% |
| Refinamento (101-150) | 50 | 1.45 | 0.62 | -38% |
| Estabilização (151-203) | 53 | 1.12 | 0.62 | -23% |
Trabalhos Futuros¶
- Generalização temporal - Criar "ano_factor" para simular diferentes anos (1994-2024).
- Generalização regional - Calibrar para diferentes estados/ capitais.
- Sazonalidade - Adicionar efeitos de férias, feriados, início do ano.
- Políticas de retenção - Simular intervenções (descontos, programas de fidelidade).
- Dashboard interativo - Interface para tomadores de decisão.
Referências¶
- Grimm, V., & Railsback, S. F. (2005). Individual-based modeling and ecology. Princeton University Press.
- Railsback, S. F., & Grimm, V. (2019). Agent-based simulation platforms. Journal of Artificial Societies and Social Simulation.
- Optuna: A hyperparameter optimization framework (https://optuna.org)
- Mesa: Agent-based modeling in Python (https://mesa.readthedocs.io)
Contato¶
Para perguntas, sugestões ou colaborações:
- Email: [[email protected]]
- GitHub: [Este Repositório é Privado]
Documentação gerada em Junho de 2026