- Gerador sintetico cross-base (50 missoes, 10 bases, haversine/C-105) - Fase 3: arcos de ferry em construir_rede(); ferry consome horas de celula - oamrp_v2.py e resultados CSV anteriores adicionados ao repositorio - README, docs/about.md e changelog atualizados ate v0.6 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
138 lines
5.5 KiB
Markdown
138 lines
5.5 KiB
Markdown
# Changelog
|
||
|
||
Todas as versões significativas do Arara OAMRP devem ser registradas aqui. O `LOG.md` guarda o diário operacional detalhado; este arquivo resume mudanças por versão.
|
||
|
||
Formato:
|
||
|
||
```text
|
||
## v<versão> — <Autor ou tag> — <YYYY-MM>
|
||
|
||
### Adicionado / Alterado / Corrigido / Removido
|
||
|
||
- Descrição objetiva.
|
||
```
|
||
|
||
---
|
||
|
||
## v0.2 — VTO — 2026-06
|
||
|
||
### Adicionado
|
||
|
||
- Diretório `software/` com o primeiro protótipo `software/oamrp_v1.py`.
|
||
- Modelo MIP compacto em PuLP para atribuição de aeronaves a missões opcionais.
|
||
- Regras de `.gitignore` para caches Python.
|
||
|
||
### Alterado
|
||
|
||
- Estrutura de dados reorganizada para `db/raw/`, `db/pre_process/` e `db/processed/`.
|
||
- Documentação atualizada para refletir a separação entre dados (`db/`) e modelos (`software/`).
|
||
- Nome técnico do projeto padronizado como Arara OAMRP nos documentos principais.
|
||
|
||
---
|
||
|
||
## v0.1 — VTO — 2026-06
|
||
|
||
### Adicionado
|
||
|
||
- Repositório Git inicial.
|
||
- Estrutura de dados com `raw/`, `pre_process/` e `processed/`.
|
||
- Arquivo `README.md` na raiz com guia de uso do repositório.
|
||
- Arquivo `CONTEXTO.md` com orientações permanentes do projeto.
|
||
- Arquivo `LOG.md` com rastreabilidade operacional por data, hora e tag de autor.
|
||
- Pré-processamento inicial do relatório de ciclo de inspeções do C-105 matrícula 2805.
|
||
- Saídas intermediárias em texto, JSON e CSV.
|
||
- Campos discretos para `zera_tso`, letra, nível, duração, horas de voo, meses contínuos e pousos.
|
||
- Documentação em `docs/about.md`, `docs/authors.md` e `docs/changelog.md`.
|
||
|
||
### Alterado
|
||
|
||
- Projeto renomeado para `arara_oarmp`.
|
||
- Repositório remoto migrado para `https://git.ppgao.ita.br/vitorcesavc/arara_oarmp.git`.
|
||
- Documentação reorganizada para separar guia inicial, contexto, autoria, histórico de versão e log operacional.
|
||
|
||
### Corrigido
|
||
|
||
- Interpretação da coluna `Zera TSO`, que passou a ser tratada como coluna única.
|
||
- Mapeamento dos níveis `B`, `P` e `O` para Base, Parque e Orgânico.
|
||
|
||
### Observações
|
||
|
||
- O parser atual foi calibrado para o primeiro PDF processado.
|
||
- A grafia original do documento fonte foi preservada, inclusive ocorrências de `INPEÇÃO`.
|
||
## v0.3 - VTO - 2026-06
|
||
|
||
### Adicionado
|
||
|
||
- Pre-processamento da `Planilha 2025.xlsx` para registro de voo limpo.
|
||
- Saidas em CSV/XLSX sem mesclas e CSV OAMRP com `id,orig,dest,partida_utc,chegada_utc,prioridade`.
|
||
- Resumo JSON com contagens, campos faltantes e criterios de conversao.
|
||
|
||
### Alterado
|
||
|
||
- Criado arquivo final `db/processed/registro_voo_2025.csv`.
|
||
|
||
### Observacoes
|
||
|
||
- `SEGMTO` foi preservado da planilha original; cruzamento de 00Z foi registrado em campo separado.
|
||
- Colunas entre `REAL` e `COM2` foram descartadas.
|
||
## v0.3.1 - VTO - 2026-06
|
||
|
||
### Alterado
|
||
|
||
- Registro de voo 2025 regenerado removendo a linha original 793, aeronave 2806.
|
||
- Consolidado passou para 1267 trechos e registro limpo para 1420 linhas.
|
||
- Documentacao atualizada em `README.md`, `docs/about.md`, `LOG.md` e relatorio de validacao.
|
||
|
||
### Observacoes
|
||
|
||
- A remocao foi aplicada no script de pre-processamento para manter reprodutibilidade.
|
||
|
||
## v0.6 - VTO - 2026-06
|
||
|
||
### Adicionado
|
||
|
||
- Gerador de missões sintéticas cross-base (`gerar_missoes_sinteticas()`): 50 missões entre 10 bases com durações calculadas via haversine ÷ velocidade C-105 (430 km/h); flag `--sintetico`, `--n-missoes`, `--n-evam` na CLI.
|
||
- Fase 3: arcos de ferry em `construir_rede()` — arcos `inicio`, `missao_missao`, `missao_insp` e `insp_missao` agora permitem bases distintas com tempo de ferry calculado automaticamente.
|
||
- Ferry consome horas de célula no relógio de inspeção (C6: `carga = v.carga_h + a.horas_ferry`).
|
||
- Relatório imprime segmentos `[FERRY base1->base2 Xh]` na linha do tempo de cada aeronave.
|
||
- Resultado `db/processed/resultado_oamrp_sintetico.csv` para 50 missões sintéticas.
|
||
|
||
### Alterado
|
||
|
||
- Dicionário `BASES_COORDS` com coordenadas (lat, lon) das 10 bases operacionais do C-105.
|
||
|
||
## v0.5 - VTO - 2026-06
|
||
|
||
### Adicionado
|
||
|
||
- Modelo `software/oamrp_v3.py` — reescrita do zero com rede espaço-tempo (No/Arco) e variável unificada `y[k,arco]`.
|
||
- Fase 1 (C1–C6): fluxo de conservação, cobertura de missões, restrição de voo ativo, orçamento de horas por inspeção.
|
||
- Fase 2 (C7–C11): nós e arcos de inspeção na rede; variáveis `H[k,i,nid]` para relógio de horas com reset; C9 downtime; C11 slot único via variáveis disjuntivas `oo`.
|
||
- Documento `HANDOFF_arara_oamrp.md` com formulação matemática, decisões de calibração (Q1–Q5) e plano de build incremental.
|
||
- Resultado `db/processed/resultado_oamrp_v3.csv` para janeiro/2025.
|
||
|
||
### Alterado
|
||
|
||
- TAT corrigido para 1,5h (era 1,0h em v2).
|
||
- Top-10 bases por frequência no registro de voo 2025 (Q4).
|
||
- Missões EVAM marcadas como obrigatórias (Q2).
|
||
- Objetivo L2 definido como maximizar horas voadas (= minimizar folga ao fim do horizonte mensal) (Q3).
|
||
|
||
### Corrigido
|
||
|
||
- Bug de escopo de arco: arcos de início/fim agora carregam `aeronave_id` e só entram na variável `y` do aircraft correto.
|
||
- Bug `NameError tat_h` em C9b: substituído pela constante global `TAT_H`.
|
||
- Bug `AttributeError` em `escrever_resultado`: filtro por `n.tipo == "missao"` antes de acessar `n.missao`.
|
||
|
||
## v0.4 - VTO - 2026-06
|
||
|
||
### Adicionado
|
||
|
||
- Modelo `software/oamrp_v2.py` para rodar o OAMRP com o registro de voo 2025 consolidado.
|
||
- Resultado inicial `db/processed/resultado_oamrp_jan_2025.csv`.
|
||
|
||
### Observacoes
|
||
|
||
- Rodada padrao usa janeiro/2025, aeronaves reais `2800`, `2803`, `2809` e `2811`, base inicial provisoria `SBMN`, base de manutencao `SBMN` e prioridade uniforme 1.
|
||
- Primeira execucao retornou solucao otima com 50 de 61 missoes cumpridas.
|