Documento de diseño · v0.1 · 2 sep 2026

BirdCast Europa

Un pronóstico público, por ciudad, de la intensidad de migración nocturna de aves en Europa, con alertas «luces fuera» en las noches de pico. Réplica del BirdCast de Cornell sobre los perfiles verticales de la red de radares meteorológicos europea.

Autor · Pablo Coste objetivo · 0 € Datos · Aloft (CC0) + ERA5 + ECMWF Open Data Primer ámbito · Península Ibérica
01 · Veredicto

El hueco es real y los datos crudos no son el problema

Hueco
Confirmado

No existe en Europa ningún pronóstico público por ciudad ni ningún programa municipal «luces fuera» ligado a la migración. Lo más cercano es el pronóstico de la Vogelwarte, limitado a Sempach.

Acceso a datos
Resuelto sin radar crudo

Aloft publica en un bucket S3 abierto (CC0) los perfiles verticales de aves de unos 150 radares de 22 países, ya procesados con vol2bird. No hace falta pedir volúmenes polares a nadie.

Riesgo real
Latencia y calidad

Los perfiles llegan con 1-2 días de retraso y sin control de calidad. Sirven para entrenar y verificar, no para un «mapa en vivo». El pronóstico depende solo de la meteorología, como en BirdCast.

España
Validar antes de nada

La red antigua de AEMET cesa en Aloft en 2023 y la wiki de Aloft la califica de inútil para aves por un filtro de no-precipitación. La red renovada entra en nov 2025 y jun 2026 con 10 radares. Hay que comprobar que sí ven aves.

La tesis del proyecto cambia respecto a la idea inicial. La incertidumbre no está en conseguir datos de radar, sino en tres cosas: la calidad de los perfiles españoles nuevos, el filtrado de insectos y lluvia en un producto sin control de calidad, y la capacidad de predecir los picos raros, que es justo lo que pide una alerta «luces fuera». Todo lo demás está publicado, tiene código abierto y cabe en GitHub Actions.

La propuesta de valor frente a lo que existe: pronóstico a 3 noches, resuelto por ciudad, con alerta accionable y verificación pública al día siguiente. Nadie ofrece esa combinación en Europa.

02 · Estado del arte

Qué existe ya en Europa

IniciativaQué haceCoberturaPronósticoAlerta ciudad
Vogelwarte Sempach (CH)Pronóstico a 2 noches con radar ornitológico BirdScan + GFS, publicado a las 12:00 UTC. Cita «apagar luces» como uso.Solo Sempach / Suizasíno
FlySafe / BIRDTAM (NL, BE, DE)Composite cada 5 min de densidad de aves con radares meteo, más módulo a 72 h. Uso militar; composite abierto en KNMI Data Platform (CC BY 4.0).Benelux + oeste DErestringidono
Start/Stop eólico offshore (NL)Modelo UvA a 48 h de MTR en 25-300 m; el ministerio para turbinas, máx. 60 h/año. Operativo desde 2023.Mar del Norte NLsíno
CROW (INBO + RMI)Visor en tiempo real de perfiles de 10 radares de BE/NL/FR/DE. Feed abierto en opendata.meteo.be.Beneluxnono
DAVVL (DE)Pronóstico mensual en PDF para aviación civil.Alemaniacualitativono
BTO Migblog (UK)Blog cualitativo con BirdTrack y sinóptica. Sin radar.Reino Unidocualitativono
HiRAD (Biodiversa+, 2023-2027)Armonización y acceso a datos de radar para biodiversidad aérea. Aloft es su plataforma. Sin producto de alertas.Europanono
España / PortugalNada. SEO/BirdLife, ICO y SPEA no usan radar. Meteocat trata las aves como «ecos falsos».—nono

Luces fuera en Europa

  • Ninguna ciudad europea apaga luces coordinada con un pronóstico de migración. Existen eventos anuales fijos (Earth Night el 11 sep 2026, Nacht van de Nacht, Jour de la Nuit) y campañas permanentes de comercios (lichtaus.ch en Basilea, Zug y Thun).
  • Casos que demuestran el efecto: la Post Tower de Bonn pasó de más de 1.000 aves muertas por otoño a unas 100 tras apagar logos y focos en 2022. En Hamburgo, tres edificios de 23-90 m produjeron 47 víctimas en un otoño, 77 % migrantes nocturnos. En Berlín se documentaron 812 impactos en más de 20 complejos.
  • Normativa aprovechable: Francia obliga a apagar fachadas a la 1:00 (arrêté 2018). Andalucía fija horario nocturno 23:00-06:00 con ornamental apagado (Decreto 37/2025). Cataluña zonifica por sensibilidad de fauna. Alemania tiene el §41a BNatSchG aprobado pero sin reglamento. Ninguna norma menciona la migración dinámica: una alerta de pocas noches al año encaja como medida voluntaria y barata.
03 · Datos

Lo que he verificado hoy en las fuentes

Listé directamente el bucket público de Aloft el 2 de septiembre de 2026. Estas cifras son las que cuentan para el diseño; algunos resúmenes publicados (paper de 2025, Zenodo) están anticuados respecto al bucket.

DatoValor verificado
Ubicacións3://aloftdata (eu-west-1), listado anónimo por HTTP. Prefijos baltrad/daily, baltrad/monthly, baltrad/hdf5, uva/, ecog-04003/
Formato diarioVPTS CSV, un fichero por radar y día: baltrad/daily/{radar}/{año}/{radar}_vpts_{AAAAMMDD}.csv. Columnas: datetime, height, u, v, w, ff, dd, sd_vvp, gap, eta, dens, dbz, dbz_all, n, n_dbz, rcs, sd_vvp_threshold, radar_latitude, radar_longitude, …
Resolución5 min (10 min en los radares españoles nuevos) × capas de 200 m hasta 5 km. Un día de Jabbeke tiene 6.350 filas.
Latencia observadaEl fichero del día D se sube entre las 01:30 y las 03:30 UTC de D+1 o D+2 (el 31 ago 2026 subido el 2 sep a las 02:09). Los HDF5 por timestamp llegan unas 15-19 h después de la medida.
LicenciaCC0 para los perfiles. Los volúmenes polares crudos no se redistribuyen.
Radares con datos en 2026FR 25 · DE 17 · FI 12 · SE 12 · NO 12 · ES 10 · RO 7 · HR 6 · PT 6 · DK 5 · CH 5 · HU 5 · SK 4 · IS 3 · BE 2 · NL 2 · CZ 2 · SI 2 · EE 2 · LT 2 · IE 1 · GR 1. Sin Italia, Reino Unido, Austria ni Polonia (PL cesa en 2022).
HistóricoDesde 2012 en NL y SE, desde 2016-2017 en la mayoría. España antigua 2017-2023 (25 radares). Suficiente para climatologías y entrenamiento.

Radares españoles activos en Aloft

Códigos nuevos que corresponden a la red renovada de AEMET (banda C, 5,3 cm). Las ciudades son las que quedan dentro de los 35 km útiles del radar o muy cerca; la asignación exacta se hará con las coordenadas.

CódigoLatLonAlt (m)DesdeDías 2026Ciudades cercanas
estjv40,176-3,714717nov 2025217Madrid, Getafe, Alcorcón, Aranjuez
esgld41,4081,885662nov 2025216Barcelona, Terrassa, Sabadell, Vilafranca
esahr36,613-4,6591159nov 2025210Málaga, Marbella, Torremolinos
essft39,429-6,285667nov 2025205Cáceres, Trujillo, Mérida (límite)
esnjr36,832-2,082499jun 202669Almería, Roquetas
esclg37,689-6,333531jun 202648Sevilla (límite), Huelva (límite), Sierra de Aracena
espdg41,734-0,546835jun 202648Zaragoza
esgrm41,012-6,478793jun 20261Salamanca y Zamora (límite). Solo un día: intermitente
esatn28,019-15,6151777jun 2026—Gran Canaria (Las Palmas)
esbnv28,311-16,8241367jun 2026—Tenerife (Santa Cruz, La Laguna)
Validación pendiente (fase 0). La wiki de Aloft dice de la red antigua de AEMET: «aplica un filtro de no-precipitación que elimina los ecos de aves y los hace inútiles para fines biológicos». En una comprobación rápida del 31 de agosto, Madrid mostraba densidades nocturnas de 15,6 aves/km³ frente a 9,9 de día, y Barcelona lo contrario. Lisboa, por comparación, daba 9,4 de noche y 0,4 de día. Antes de construir nada hay que confirmar con noches de pico (finales de septiembre y octubre de 2025 en los cuatro radares de noviembre) que los perfiles españoles nuevos tienen la señal nocturna esperada. Si no la tienen, Iberia se cubre con Portugal (6 radares, Lisboa y Oporto incluidos) y el sur de Francia, y el piloto español espera a la red completa en T1 2027.

Otras fuentes que entran en el diseño

FuenteUsoDetalle
ERA5 (Copernicus CDS)EntrenamientoReanálisis horario 0,25°, niveles de presión (u, v, T, RH, gph en 1000-700 hPa), superficie (msl, tp, tcc, t2m). Latencia 5 días. Solo hace falta en los puntos de radar: volumen de descarga pequeño.
ECMWF Open Data (IFS)Operación0,25°, ciclos 00/06/12/18, cada 3 h hasta 144 h, CC BY 4.0. Misma familia que ERA5, lo que reduce el desajuste entrenamiento/operación. ICON-EU (DWD, 6,5 km) como segundo miembro.
Open Radar Data API (EUMETNET/RODEO)Futuro, opcionalVolúmenes polares single-site CC BY 4.0 con caché de 24 h en api.meteogate.eu. 127 estaciones; España, Portugal e Italia ausentes (AEMET hasta T1 2027). Permitiría correr vol2bird propio con menor latencia, pero no es necesario para el MVP.
RMI Bélgica, feed CROWPiloto casi tiempo realPerfiles vol2bird de 10 radares cada 5 min, CC BY 4.0, en opendata.meteo.be/ftp/observations/radar/vbird/. Único feed horario abierto de Europa. Ideal para probar un «mapa en vivo» en Benelux.
KNMI FlySafe compositeReferenciaDensidad integrada cada 5 min NL/BE/DE desde 2016, CC BY 4.0. Sirve para calibrar contra un producto operativo.
VIIRS Black Marble (NASA) o Falchi et al. 2016Exposición lumínicaRadiancia nocturna por celda para el índice de exposición ciudad × migración, como Horton et al. 2019.
Eurostat GISCO / OSMGeometrías de ciudadLímites urbanos (Urban Audit / FUA) para resolver el pronóstico por ciudad.
04 · Arquitectura

Un pipeline nocturno que cabe en GitHub Actions

Misma filosofía que el Observatorio de alegaciones: sin servidores, todo en repositorio público, salidas estáticas en GitHub Pages y ficheros JSON como API. Dos flujos separados: el de pronóstico corre cada día a mediodía con la meteorología; el de observación y verificación corre de madrugada cuando Aloft publica el día anterior.

A · INGESTA

Perfiles Aloft

Descarga incremental de los CSV diarios de los radares activos. Histórico mensual (.csv.gz) para 2012-2025.

out → parquet por radar/año
B · LIMPIEZA

Filtros biológicos

Descartar capas con sd_vvp < 2 m/s, celdas con lluvia (dbz_all alto y gap), velocidad aérea < 4,8 m/s respecto al viento ERA5 (insectos), altura < 200 m (clutter).

out → densidad limpia por 5 min × capa
C · AGREGADO

MTR por noche

Integrar densidad × velocidad × espesor entre 200 y 3.000 m, desde el crepúsculo civil hasta el amanecer. Unidad: aves/km/noche, la misma que BirdCast.

out → tabla radar × noche
D · METEO

Predictores

ERA5 en el punto del radar: u, v, T, RH a 1000/925/850/700 hPa, msl y su tendencia 24 h, precipitación, nubosidad, día del año, noche anterior.

out → matriz de entrenamiento
E · MODELO

Gradient boosting

LightGBM sobre raíz cúbica de MTR, por temporada. Validación dejando fuera un año y dejando fuera un radar. Baseline: climatología por día del año.

out → modelo.pkl + skill público
F · PRONÓSTICO

Tres noches

Cada día a las 12:00 UTC con el ciclo 00 de ECMWF Open Data: MTR previsto por radar para esta noche, mañana y pasado, con intervalo por cuantiles.

out → forecast.json
G · CIUDAD

Resolución espacial

Interpolación entre radares (kriging sencillo o ponderación por distancia) a la malla 0,2° y lectura en el polígono de cada ciudad. Percentil frente a la climatología local.

out → ciudades.json
H · PUBLICACIÓN

Web, feed, alertas

Mapa europeo, ficha por ciudad, RSS/Atom por ciudad, canal Telegram y correo para suscriptores. Nivel de alerta y texto listo para difundir.

out → GitHub Pages + JSON
I · VERIFICACIÓN

Al día siguiente

Cuando Aloft publica la noche observada, se compara con lo previsto y se publica el acierto acumulado por radar y temporada. Transparencia como argumento de venta.

out → skill.json, gráficos

Decisiones de arquitectura

  • Python con polars o pandas, LightGBM, xarray/cfgrib para GRIB de ECMWF, cdsapi para ERA5. Sin R en producción, aunque bioRad y vol2birdR quedan como referencia de definiciones.
  • Sin base de datos: parquet en el repo (o en un bucket gratuito de Cloudflare R2 si el histórico crece; unos 47 GB en CSV, mucho menos en parquet filtrado).
  • Dos cron: pronostico.yml a las 11:30 UTC (el ciclo 00 de ECMWF está completo hacia las 08:00) y observado.yml a las 04:30 UTC.
  • API implícita: /api/ciudades/{slug}.json, /api/radares/{codigo}.json, /api/alertas/hoy.json. Suficiente para que una ONG o un ayuntamiento lo consuma.
  • Versionado del modelo y de los umbrales en el repo, con changelog. Una alerta debe ser reproducible.
05 · Modelo

Qué predice y cómo se sabrá si funciona

La receta de Van Doren y Horton (2018) es reproducible con los datos europeos: XGBoost sobre reanálisis, objetivo raíz cúbica de la reflectividad, R² de 0,78 en test y 72 % con pronósticos a 24 h. Los trabajos europeos con radar meteo y ERA5 obtienen algo menos (LightGBM sobre nueve radares franceses: R² 0,47 en primavera y 0,61 en otoño; GAM sobre diez años de KNMI en Países Bajos), con el mismo defecto en todos: subestiman los picos. Eso marca el diseño del modelo y de las alertas.

Especificación inicial

  • Objetivo: MTR nocturno integrado 200-3.000 m, transformado con raíz cúbica. Alternativa a evaluar: densidad por capa de 200 m como BirdCast, que permite luego dar altitud media.
  • Predictores: viento zonal y meridional a 925 y 850 hPa y su componente favorable respecto a la dirección estacional dominante (SO en otoño, NE en primavera para Iberia), temperatura y su anomalía a 24 h, humedad relativa, presión a nivel del mar y su tendencia, precipitación acumulada 6 h, nubosidad total, latitud, longitud, día del año, horas de noche. Opcional: MTR observado de la noche anterior (mejora 2-3 puntos en BirdCast, pero acopla el pronóstico a la latencia de Aloft).
  • Algoritmo: LightGBM con objetivo cuantílico (P10, P50, P90) para dar intervalo. Un modelo por temporada (primavera, otoño) entrenado con todos los radares a la vez, con el código de radar como categoría para absorber diferencias de calibración.
  • Validación: dejar fuera un año completo (2023 como test), luego dejar fuera un radar para medir generalización a lugares sin histórico, que es el caso de los radares españoles nuevos. Métricas: R² sobre la transformada, y sobre todo acierto de la categoría de alerta (precisión y exhaustividad de las noches P90) y curva de «fracción de migración capturada por noches alertadas».
  • Baseline obligatorio: climatología suavizada por radar y día del año. Si el modelo no bate la climatología en las noches altas, no se publica.

Problemas conocidos y cómo se tratan

  • Insectos: dominan en verano y en el sur; el umbral de velocidad aérea de 4,8 m/s (Nussbaumer 2021) con viento ERA5 reduce el error. Las alertas se limitan a las ventanas migratorias.
  • Lluvia: no hay MistNet para banda C europea; se usa la máscara de vol2bird más una regla con precipitación ERA5 > 1 mm/h para excluir noches.
  • Calibración heterogénea entre radares OPERA: percentiles locales en vez de umbrales absolutos, exactamente lo que hace BirdCast.
  • Huecos en Aloft (radares que caen días o meses): la interpolación espacial debe indicar cuántos radares sostienen cada ciudad y degradar la confianza.
06 · Producto

Alertas «luces fuera» que alguien pueda ejecutar

La alerta es relativa a la historia local, como en BirdCast: «alto» es una noche entre el 10 % más intenso de la temporada en esa zona. Con esa definición, en Estados Unidos el 10 % de las noches concentra más de la mitad del paso migratorio; la selección dinámica necesita unas 14-16 noches por temporada para proteger la mitad de las aves, frente a 19-27 con un calendario fijo. Ese es el argumento para un ayuntamiento: pocas noches, bien elegidas.

Alto
MTR previsto ≥ P90 local de temporada

Apagar iluminación ornamental, fachadas, logos y publicidad de 23:00 a amanecer. Bajar intensidad del alumbrado donde sea regulable. Difusión a medios locales.

Medio
P70 ≤ MTR previsto < P90

Recomendación a edificios altos y corporativos suscritos. Sin campaña pública.

Bajo
MTR previsto < P70 o fuera de ventana

Solo informativo en la ficha de ciudad.

Reglas de emisión

  • Ventanas para Iberia: 15 feb-31 may y 15 ago-30 nov. Para Europa central y norte, ajustar por latitud con la climatología de cada radar.
  • Horario: 23:00 a amanecer, alineado con el horario nocturno del Decreto 37/2025 andaluz y el arrêté francés, para que la medida no choque con norma alguna.
  • Publicación a las 12:00 UTC del día: alerta firme para esta noche, orientativa para las dos siguientes. Cada alerta enlaza a la verificación de la noche anterior.
  • Confianza: se muestra el número de radares que sostienen la predicción y la anchura del intervalo P10-P90. Una ciudad con un solo radar intermitente nunca recibe «alto» sin aviso de incertidumbre.
  • Canales: ficha web por ciudad, RSS, canal Telegram por ciudad (misma infraestructura que el Observatorio), correo semanal con resumen de temporada.

Pieza de lanzamiento: ranking europeo de exposición

Horton et al. (2019) clasificaron ciudades estadounidenses por exposición de aves migratorias a la luz cruzando radar y satélite; Chicago, Houston y Dallas encabezan la lista. No existe equivalente europeo. Con la climatología de MTR de Aloft (2012-2025) y la radiancia VIIRS se puede publicar el primer ranking de ciudades europeas por exposición. Es una pieza con eco mediático, no depende del pronóstico y abre puertas en ONGs y ayuntamientos antes de que las alertas estén maduras.

Ciudades del piloto

Madrid y Barcelona por radar dedicado y peso; Málaga por radar y por el Decreto andaluz vigente; Lisboa y Oporto por la calidad probada de los radares portugueses. Si la fase 0 descarta los radares españoles, el piloto arranca con Lisboa, Oporto, Toulouse y Burdeos.

07 · Riesgos

Qué puede salir mal

RiesgoProbabilidadMitigación
Los perfiles españoles nuevos están filtrados y no contienen avesmediaFase 0 lo resuelve en dos semanas. Plan B: Portugal y sur de Francia; contactar a AEMET vía HiRAD/Aloft para pedir volúmenes sin filtro cuando acabe la renovación (T1 2027).
Aloft cambia estructura, se retrasa o deja de actualizarse (proyecto financiado por Biodiversa+ hasta 2027)mediaIngesta tolerante a huecos; espejo propio del histórico; alternativa a medio plazo: correr vol2bird sobre la Open Radar Data API (CC BY 4.0, 24 h de caché).
El modelo no predice bien los picos, que es lo que importaaltaOptimizar y reportar la métrica de categoría, no el R². Cuantiles. Umbral P90 por percentil, no por valor. Verificación pública para que la limitación sea visible y honesta.
Insectos inflan la señal en el sur en veranomediaFiltro de velocidad aérea, ventanas de temporada, y excluir capas bajas cálidas si hace falta.
Nadie ejecuta las alertasaltaBuscar un aliado con capacidad de acción antes de la temporada de otoño 2027: SEO/BirdLife (campaña «Aves y cristales»), SPEA, un ayuntamiento con norma lumínica reciente (Andalucía), un gestor de edificios corporativos. El ranking de exposición es el gancho.
Critica científica por publicar sin revisiónbajaMétodos abiertos, código abierto, verificación pública, contacto temprano con Aloft/INBO (Peter Desmet) y Vogelwarte, que ya recomiendan apagar luces.
Coste de cómputo o de datosbajaSolo se necesita ERA5 en unos 150 puntos y GRIB de ECMWF de unas pocas variables. Todo cabe en Actions gratuito y un bucket pequeño.
08 · Hoja de ruta

De la validación al piloto en una temporada

Fase 0sep 2026
2 semanas

Validar los datos españoles

Descargar los cuatro radares de noviembre de 2025 (Madrid, Barcelona, Málaga, Cáceres) y Lisboa como control. Aplicar los filtros de bioRad y comparar el ciclo nocturno y la estacionalidad con Portugal y con el histórico 2017-2023. Decidir el ámbito del piloto.

Salida: informe corto con gráficos y decisión Iberia vs Portugal+Francia.
Fase 1oct-nov 2026
6 semanas

Histórico, filtros y climatología

Ingesta de todos los radares con datos 2016-2025 a parquet. Pipeline B-C. Climatología de MTR por radar y día del año. Primer producto publicable: ranking europeo de exposición ciudad × luz.

Salida: repo público, dataset limpio, artículo del ranking.
Fase 2dic 2026-ene 2027
6 semanas

Modelo y backtest

ERA5 en puntos de radar, LightGBM cuantílico, validación por año y por radar, comparación con climatología. Backtest de alertas: cuántas noches alertadas, qué fracción del paso capturan.

Salida: modelo v1 con skill publicado y umbrales por radar.
Fase 3feb 2027
4 semanas

Operación y web

Cron de pronóstico con ECMWF Open Data, resolución a ciudades, web estática con mapa y fichas, RSS y Telegram, verificación diaria automática. Arranque en modo «beta» al inicio de la primavera de 2027.

Salida: servicio público en beta para 5 ciudades piloto.
Fase 4mar-may 2027

Primera temporada real

Correr la primavera completa, medir, corregir. Presentar resultados a SEO/BirdLife, SPEA, LPO y un ayuntamiento. Objetivo: un compromiso de «luces fuera» para el otoño de 2027.

Salida: informe de temporada y primer aliado institucional.
Fase 52027-2028

Europa

Extender a los 150 radares, ciudades de más de 100.000 habitantes, mapa en vivo para Benelux con el feed de RMI, vol2bird propio sobre Open Radar Data cuando merezca la pena. Buscar encaje con HiRAD o sucesor.

09 · Decisiones abiertas

Lo que tienes que decidir tú

  1. Ámbito del piloto si España falla la fase 0: Portugal más sur de Francia, o esperar a la red AEMET completa en 2027. Mi recomendación: no esperar.
  2. Producto de lanzamiento: el ranking de exposición (rápido, mediático, sin modelo) antes que las alertas. Mi recomendación: sí, es la forma de conseguir aliados a tiempo para el otoño de 2027.
  3. Nombre y dominio: «BirdCast» es marca de Cornell. Hace falta un nombre propio. Candidatos: MigraNoche, Paso Nocturno, NightFlux, Aves de Paso.
  4. Contacto temprano con Aloft/INBO y Vogelwarte: pedirles opinión antes de publicar. Cuesta un correo y evita fricción con quienes producen los datos.
  5. Relación con el Observatorio: repo independiente pero misma organización de GitHub y misma infraestructura de alertas (Telegram, Pages), para que los dos proyectos se refuercen ante SEO/BirdLife.
10 · Fuentes

Referencias verificadas