Dificuldade
A tua melhor pontuação
N/D
Em um centro de pesquisa para sistemas autônomos, vários tipos de robôs são testados. Para esses experimentos, foram utilizados diversos tipos de arenas, e cada robô segue uma determinada estratégia de exploração. Durante cada experimento, o robô é equipado com um conjunto de sensores e sistemas de monitoramento que coletam informações sobre sua atividade. Os dados registrados descrevem diferentes aspectos do comportamento do robô e do ambiente em que ele opera.
Estes podem incluir valores numéricos (por exemplo, velocidade média, distância percorrida, número de colisões ou objetos coletados), mas também informações categoriais ou descritivas (como o tipo de arena ou condições ambientais). Através da análise desses dados, é possível observar padrões na forma como os robôs se deslocam, exploram o espaço, coletam objetos ou reagem a obstáculos.
A análise desses dados é importante para:
Para resolver este problema, você terá à disposição dois arquivos:
train.csv – contém exemplos rotulados, usados para análise e treinamento de modelos;test.csv – contém as mesmas variáveis, sem a coluna strategy_label, e é usado para a geração de previsões.Nos experimentos, são utilizados quatro tipos de estratégias:

Cada linha nos arquivos train.csv e test.csv corresponde a um experimento.
O conjunto de dados contém colunas que descrevem diferentes aspectos do comportamento do robô. Exemplos dessas características são:
| Coluna | Tipo | Descrição |
|---|---|---|
| robot_id | string | Identificador único do experimento |
| arena_type | string | Tipo de arena onde ocorreu o experimento |
| weather | string | Condições ambientais do experimento |
| difficulty | int | Nível de dificuldade da arena |
| laps | int | Número de voltas realizadas |
| avg_speed_mps | float | Velocidade média do robô (m/s) |
| distance_m | float | Distância total percorrida |
| battery_used_pct | float | Porcentagem de bateria consumida |
| collisions | int | Número de colisões com obstáculos |
| unique_cells | float | Número de zonas distintas exploradas |
| items_collected | int | Número de objetos coletados |
| pause_count | int | Número de pausas ou paradas |
| turn_rate | float | Frequência de mudanças de direção |
| scan_accuracy | float | Precisão das varreduras realizadas |
| return_time_s | float | Tempo necessário para retornar ao ponto de partida |
| efficiency_score | float | Pontuação agregada da eficiência do robô |
| coverage_ratio | float | Proporção da arena explorada |
| scan_turn_sync | float | Sincronização entre varreduras e mudanças de direção |
| pickup_efficiency | float | Eficiência na coleta de objetos |
| detour_index | float | Índice de desvios de rota |
| safety_margin | float | Margem de segurança em relação a obstáculos |
| patrol_consistency | float | Consistência da patrulha de uma zona |
| speed_burst | float | Intensidade de acelerações rápidas |
| risk_index | float | Índice de risco do deslocamento |
| strategy_label | string | Estratégia do robô (apenas em train.csv) |
Usando os dados do arquivo train.csv, determine quantos valores distintos aparecem na coluna arena_type.
Usando os dados do arquivo train.csv, determine o valor máximo da coluna avg_speed_mps.
Com base nos dados do arquivo train.csv, determine qual é o tipo de arena que aparece com mais frequência na coluna arena_type.
Com base nos dados do arquivo train.csv, determine o valor máximo da coluna items_collected.
Construa um modelo que determine a estratégia do robô para cada experimento em test.csv.
Os valores possíveis são:
explorercollectorguardiansprinterO arquivo de submissão deve estar no formato csv e conter as seguintes colunas:
| Coluna | Descrição |
|---|---|
| robot_id | Identificador do robô de test.csv |
| subtaskID | ID da tarefa para a qual a resposta está sendo enviada |
| answer | Valor calculado ou previsto para a respectiva tarefa |
Os valores possíveis para subtaskID são:
| subtaskID | Tarefa |
|---|---|
| 1 | Número de tipos de arenas |
| 2 | Velocidade máxima observada |
| 3 | Arena mais frequentemente utilizada |
| 4 | Desempenho máximo de coleta |
| 5 | Estratégia do robô |
Para as Task 1 – Task 4, o resultado é um valor calculado globalmente com base nos dados de train.csv.
No arquivo de submissão, este deve ser enviado apenas uma vez, usando o valor especial GLOBAL para robot_id.
Para a Task 5, deve ser reportada a estratégia prevista para cada robô em test.csv.
Os valores possíveis são:
explorercollectorguardiansprintersubmission.csvrobot_id,subtaskID,answerGLOBAL,1,10GLOBAL,2,4.31GLOBAL,3,forestGLOBAL,4,7TR_1000,5,explorerTR_1001,5,guardianTR_1002,5,collectorA pontuação total é de 100 pontos.
Para as primeiras quatro tarefas, as respostas são determinadas exclusivamente com base nos dados de train.csv.
A avaliação é feita por comparação exata (igualdade) entre o valor enviado no arquivo de submissão e o valor correto calculado a partir de train.csv.
Para esta tarefa, avalia-se a correção das estratégias previstas para os robôs em test.csv.
Utiliza-se a métrica Macro-F1, que calcula a pontuação F1 para cada classe e depois faz a média desses valores.
Para uma classe c:

A pontuação final Macro-F1 é a média das pontuações F1 para todas as classes:

onde K é o número de classes. Neste problema, K = 4.
A pontuação atribuída para a Task 5 é:
score = 50 x MacroF1 (se MacroF1 < 0.93)score = 50 (se MacroF1 >= 0.93)