|
|
--- |
|
|
title: Dashboard Simulação de Monte Carlo |
|
|
emoji: 📊 |
|
|
colorFrom: gray |
|
|
colorTo: gray |
|
|
sdk: streamlit |
|
|
app_file: dashboard.py |
|
|
--- |
|
|
# Simulação de Monte Carlo para Viabilidade de Curso |
|
|
|
|
|
## Objetivo do Projeto |
|
|
|
|
|
Este projeto tem como objetivo aplicar a técnica de Simulação de Monte Carlo para analisar a viabilidade de confirmação de turmas em um curso, considerando incertezas relacionadas à confirmação e comparecimento dos alunos sorteados. O modelo computacional permite estimar, de forma quantitativa, a probabilidade de que um curso atinja o número mínimo de participantes necessários para ser realizado, dado um conjunto de parâmetros realistas. |
|
|
|
|
|
## Cenário Modelado |
|
|
|
|
|
- **Total de vagas:** 50 |
|
|
- **Ocupação mínima para confirmação:** 80% (40 alunos) |
|
|
- **Probabilidade de confirmação da vaga:** 85% |
|
|
- **Probabilidade de comparecimento dos confirmados:** 90% |
|
|
- **Número de simulações:** 10.000 por cenário |
|
|
|
|
|
O projeto avalia, para diferentes números de convocados, a probabilidade de o curso ser confirmado, considerando as etapas de confirmação e comparecimento. |
|
|
|
|
|
## Princípios de Probabilidade Utilizados |
|
|
|
|
|
A simulação é baseada na **distribuição binomial**, que modela o número de sucessos em uma sequência de ensaios independentes, cada um com a mesma probabilidade de sucesso. |
|
|
|
|
|
- **Primeira etapa:** Para cada simulação, calcula-se quantos dos convocados confirmam a vaga (binomial: n = convocados, p = confirmação). |
|
|
- **Segunda etapa:** Dos confirmados, calcula-se quantos comparecem (binomial: n = confirmados, p = comparecimento). |
|
|
- **Sucesso:** O curso é considerado confirmado se o número de presentes for maior ou igual ao mínimo exigido. |
|
|
|
|
|
A Simulação de Monte Carlo permite incorporar a variabilidade dos processos reais e obter estimativas robustas das probabilidades envolvidas. |
|
|
|
|
|
## Como Executar |
|
|
|
|
|
1. Instale as dependências: |
|
|
```bash |
|
|
pip install matplotlib pandas numpy seaborn |
|
|
``` |
|
|
2. Execute o notebook `atividade1.ipynb` em um ambiente Jupyter. |
|
|
|
|
|
## Resultados |
|
|
|
|
|
O projeto gera tabelas e gráficos que mostram: |
|
|
- A probabilidade de confirmação do curso para diferentes números de convocados. |
|
|
- O número mínimo de convocados necessário para atingir 80% e 99% de probabilidade de confirmação. |
|
|
- A distribuição dos resultados simulados. |
|
|
|
|
|
## Referências |
|
|
|
|
|
- [Simulação de Monte Carlo](https://pt.wikipedia.org/wiki/M%C3%A9todo_de_Monte_Carlo) |
|
|
- [Distribuição Binomial](https://pt.wikipedia.org/wiki/Distribui%C3%A7%C3%A3o_binomial) |
|
|
|
|
|
--- |
|
|
Universidade de Brasília - PPCA |
|
|
Vinícius dos |