Busabase
Busabase는 AI 에이전트를 위한 오픈소스(MIT) 데이터베이스 및 작업 공간입니다
지진 후 이용 가능한 공항과 가능한 구호 물량을 공개 데이터와 모델로 예측
Which airfields can likely still take relief flights after an earthquake, and what an airlift through them could move. Public data, planning model.
데이터Python · Jupyter NotebookGitHub @sachabidermann온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Estimates which airfields can take relief flights after an earthquake and what an airlift could move. Public data, planning model.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Airlift Planner estimates, for any earthquake in the USGS catalog, which nearby airfields can still take relief flights, how much cargo the hardest-hit population needs each day, and how much of that an airlift could move. It uses only public data: USGS ShakeMap and PAGER, US Census population files, and the OurAirports airport table.
It is a student project and a planning model, not an operational tool.README 전문 보기 ↗Airlift Planner estimates, for any earthquake in the USGS catalog, which nearby airfields can still take relief flights, how much cargo the hardest-hit population needs each day, and how much of that an airlift could move. It uses only public data: USGS ShakeMap and PAGER, US Census population files, and the OurAirports airport table.
It is a student project and a planning model, not an operational tool.
Dashboard: https://sachabidermann.github.io/airlift-planner/
USGS HayWired scenario, a simulated M7.0 on the Hayward Fault. Red rings: airfields the model flags as likely knocked out. Blue square: the recommended gateway, San Francisco International. Shading: USGS ShakeMap intensity. Base map © OpenStreetMap contributors.
Requires uv. The first run downloads about 30 MB of public data into data/; the full check brings it to about 100 MB.
git clone https://github.com/sachabidermann/airlift-planner
cd airlift-planner
uv sync
uv run main.py --quake gllegacyhaywiredm7p05_se # any USGS event or scenario id
uv run main.py --list # M5.5 and above in the past week
uv run main.py --latest # plan for the newest one
Abridged output for the HayWired scenario (... marks lines left out; terms are defined below):
M 7.0 Haywired M7.05 Scenario (USGS scenario, simulated)
shaking: USGS ShakeMap v33, 2017-01-11
...
people at MMI VIII+ 5.4M (airbridge priority)
cargo needed 6,103 t/day at 1.13 kg per person per day
nearest airfield KLVK Livermore Municipal Airport 15 km MMI X usable 19%
likely knocked out:
KLVK Livermore Municipal Airport 15 km MMI X usable 19%
KHWD Hayward Executive Airport 17 km MMI IX usable 37%
KSJC Mineta San Jose International Airpo 26 km MMI IX usable 24%
KOAK Oakland San Francisco Bay Airport 28 km MMI IX usable 27%
...
GATEWAY KSFO San Francisco International Airport 38 km MMI VII usable 92%
747-8F x 6 spots, 11,870 ft inflow 3,160 t/day
...
AIRLIFT CAPACITY INTO ZONE 3,160 t/day (ceiling for the assumed parking spots; t = metric tons)
people it could supply 2.8M
share of need 51% the rest must come by road, sea or local supply
scripts/check.sh --offline # unit tests and the browser-model test; no network, a few seconds
scripts/check.sh # also reruns the backtests, the verification and the dashboard build
VERIFY.md says what each step proves and what output to expect. The browser-model test needs Node.js. GitHub runs the offline checks on every push.
Formulas and the source of every constant are in METHOD.md.
| module | job |
|---|---|
airlift/usgs.py | Earthquake records, ShakeMap grids, PAGER exposure; real events and scenarios |
airlift/population.py | Census exposure where PAGER was not run |
airlift/airports.py | Airports and runways |
airlift/survivability.py | Intensity to usability |
airlift/demand.py | Exposure to metric tons per day |
airlift/aircraft.py | Aircraft payloads, runway needs, ground times |
airlift/airbridge.py | Damage center, gateway choice, shuttle allocation, capacity |
airlift/report.py, main.py | Terminal report and command line |
backtests/ | Event definitions with sources, the backtest runner, the verification script, and their generated reports |
dashboard/ | Exports dashboard data and tests the browser port of the model |
docs/ | The static dashboard served by GitHub Pages |
tests/ | Unit tests |
Nine real earthquakes, compared with what happened. Generated detail, including the model's values at each airport that mattered and sources for every historical statement, is in backtests/RESULTS.md.
| event | model flags as likely knocked out | what happened to airports | model gateway | relief gateway used | match |
|---|---|---|---|---|---|
| Loma Prieta 1989, M6.9 | none | Oakland lost 3,000 ft of runway to liquefaction | San Jose | none; mostly road | n/a |
| Anchorage 2018, M7.1 | none | none; reopened the same day | Anchorage | none | n/a |
| Ridgecrest 2019, M7.1 | none | China Lake not mission capable | Mojave | none | n/a |
| Puerto Rico 2020, M6.4 | none | none | San Juan | none | n/a |
| Haiti 2010, M7.0 | none | tower unusable, field saturated | Port-au-Prince | Port-au-Prince | yes |
| Nepal 2015, M7.8 | none | runway later damaged by heavy jets | Kathmandu | Kathmandu | yes |
| Turkey 2023, M7.8 | Kahramanmaras (48%), Hatay (34%) | Hatay closed six days | Gaziantep | Adana and Incirlik | no |
| Morocco 2023, M6.8 | none | none | Marrakech | Marrakech | yes |
| Myanmar 2025, M7.7 | Mandalay, Nay Pyi Taw, 3 other fields | Mandalay and Nay Pyi Taw closed to commercial flights for a week; relief flights from day 2 and day 4 | Heho | Yangon | no |
Gateway matches in 3 of the 5 events where a relief gateway was used. The other four earthquakes had no sustained relief airlift, so they only test the flags.
This is weak evidence. The usability curve was set by hand while looking at the five international earthquakes, so for those this is a consistency check, not an out-of-sample test. The US events were added later without changing the curve. In the three matches the airport used was the obvious one: the capital's international airport in Haiti and Nepal, and the city airport beside the damage in Morocco. Nine earthquakes is a small sample either way.
Flags. Three airports closed after the shaking and the model flagged all three: Hatay for six days, and Mandalay and Nay Pyi Taw for a week to commercial flights, though military relief flights reached Nay Pyi Taw two days after the earthquake and Mandalay after four. Judged strictly on relief flights in the first three days, Hatay and Mandalay are hits, Nay Pyi Taw is a miss, and Kahramanmaras at 48% is a false alarm: it stayed open to relief flights. Three other Myanmar fields were flagged and I could not find what happened to them.
Misses. Oakland in 1989 lost 3,000 ft of runway to liquefaction at MMI 6.7, where the curve gives 92%; intensity does not capture soft ground. China Lake in 2019 was declared not mission capable, and the model gave it 64%.
In Turkey and Myanmar the model picks an intact airport close to the damage. Responders used a larger airport farther away. The model cannot explain that choice because it does not see customs, fuel or cargo handling. Gaziantep did take relief flights in 2023.
Scenario earthquakes from the USGS scenario catalog, run through the planner unchanged.
| scenario | people at MMI VIII+ | gateway | flagged as likely knocked out | airlift capacity | share of need |
|---|---|---|---|---|---|
| HayWired M7.0, San Francisco Bay Area | 5.4M | San Francisco | 9, including Oakland, San Jose, Hayward and Livermore | 3,160 t/day | 51% |
| ShakeOut M7.8, Los Angeles | 8.5M | Long Beach | 16, including Ontario, San Bernardino, Chino and Fullerton | 3,168 t/day | 32% |
| Cascadia M9.0, Pacific Northwest | 136k | Portland | none; tsunami is not modeled | 3,070 t/day | exceeds need |
| Seattle Fault M7.5 | 2.4M | Paine Field | 4: Sea-Tac, Boeing Field, Renton, Bremerton | 1,252 t/day | 46% |
| New Madrid M7.7, Memphis | 306k | Memphis | 10 airfields in Arkansas, Missouri and Tennessee | 3,138 t/day | exceeds need |
| Puerto Rico Trench M8.5 | 2.1M | San Juan | none | 2,110 t/day | 88% |
Seattle and New Madrid use USGS PAGER exposure. The other four use the Census reconstruction, which counts US residents only.
In all six scenarios the gateway is within 50 km of the damage center, so all of its cargo counts as delivered and capacity equals what the gateway can receive. The shuttle fleet only decides how much of that cargo is flown forward. The share of need therefore rests on the assumed parking spots.
uv run backtests/verify_shaking.py writes backtests/VERIFICATION.md:
grid.xml format agrees with the current format at 500 random points: mean difference 0.004, largest 0.39.The browser port of the model is checked against the Python planner on 135 cases (node dashboard/test_model.js).
RESULTS.md records the input hashes and ShakeMap versions.ShakeMap is revised repeatedly, sometimes years later. The tool caches the version it first downloads and prints the version and date. During a response, re-run with --refresh to fetch the latest. Before USGS publishes a ShakeMap, the tool falls back to a distance formula and says so in the output.
docs/ runs the same model in the browser. Pick an event and change the assumptions (shuttle fleet, operating hours, forward radius, minimum usability, domestic only). The plan, map, charts and tables update.
uv run dashboard/build.py # refresh docs/data.json and dashboard/expected.json
node dashboard/test_model.js # the browser model must reproduce the Python planner
python3 -m http.server 8766 --directory docs # http://localhost:8766
?theme=light or ?theme=dark forces a theme. The URL hash selects an event, for example #wa22sfz01_se.
Earthquakes, ShakeMap and PAGER: U.S. Geological Survey (public domain). Population: U.S. Census Bureau, vintage 2023 population estimates and 2023 Gazetteer files (public domain). Airports: OurAirports (public domain). Base map: © OpenStreetMap contributors, ODbL. Map library: Leaflet (BSD 2-Clause). This project is not affiliated with or endorsed by any of them.
USGS ShakeCast sends facility-level shaking alerts from ShakeMap to operators such as Caltrans. FEMA's Hazus has airport fragility curves and reads ShakeMaps. A 2021 CISA and Washington State study rated the runways of 20 airports against the USGS Cascadia M9.0 scenario. Air Force Pamphlet 10-1403 gives the airfield throughput formula used here. I have not found a public tool that goes from a ShakeMap to an airfield ranking, a relief need and an airbridge plan.
Palantir's disaster work with Direct Relief, Team Rubicon and the World Food Programme integrates an organization's own data into one operating picture. A model like this could run on top of that.
Replace the hand-set curve with the Hazus fragility curves, then add liquefaction susceptibility for runways on fill. After that: tsunami inundation for coastal strips, road travel time in place of straight-line credit, a helicopter tier for areas without a strip, and fuel and handling limits on gateway choice.
Sacha Bidermann, 2026.