AI-система моделювання кліматичних ризиків
Кліматичні ризики поділяються на фізичні (повені, спека, вітер) та транзиційні (зміна регулювання, вуглецеві податки). Фінансові регулятори (TCFD, CSRD, Банк Росії) вимагають їх розкриття корпоративної звітності. ML дозволяє перейти від якісних оцінок до кількісних з прив'язкою до конкретних активів, горизонтів і сценаріїв викидів.
Фізичні кліматичні ризики
Класифікація по горизонту:
- Короткострокові (< 5 років): екстремальні опади, хвилі спеки, паводки
- середньострокові (5-30 років): зміна частоти ураганів, посух, зростання рівня моря
- Довгострокові (> 30 років): структурні зміни кліматичних зон, опустелювання
Сценарії IPCC:
| Сценарій Потепління до 2100 Застосування |
|---|
| SSP1-2.6 +1.5-2.0°C |
| SSP2-4.5 +2.5-3.0°C |
| SSP3-7.0 +3.5-4.0°C |
| SSP5-8.5 |
Для кожного сценарію - набір кліматичних проекцій (CMIP6 моделі), які використовуються як основа для регіональних downscaling.
Архітектура системи фізичних ризиків
Крок 1: Геокодування активів та аналіз місцезнаходження
# Привязка активов к координатам
assets = {
'asset_id': 'plant_001',
'lat': 55.7522, 'lon': 37.6156,
'asset_type': 'manufacturing',
'replacement_value': 50_000_000, # USD
'operational_lifespan': 30 # лет
}
# Геопространственный joining с климатическими слоями
# GADM административные границы, OpenStreetMap elevation
Крок 2: Hazard Modeling
Ризик повені:
# FATHOM, JBA Risk, CatRisk — глобальные flood models
# AQUEDUCT (WRI): публичные данные flood exposure по RP10/50/100/500
# Для конкретной точки: flood depth × probability distribution
def flood_risk_score(lat, lon, scenario='SSP2-4.5', year=2050):
flood_depths = aqueduct_api.get_flood_depth(lat, lon, scenario, year)
# flood_depths: dict {RP10: 0.3m, RP50: 1.2m, RP100: 2.1m}
return flood_depths
Тепловий стрес:
def compute_heat_hazard(lat, lon, scenario, year):
# WBGT (Wet Bulb Globe Temperature) — интегральный показатель теплового стресса
# NOAA CMORPH osadki + ERA5 temperature + humidity projections
baseline_hdd = get_hot_days_above_35(lat, lon, '1990-2020')
projected_hdd = climate_model.project(lat, lon, scenario, year, '35c_exceedance_days')
delta_hot_days = projected_hdd - baseline_hdd
return delta_hot_days
Лісова пожежа: FWI (Fire Weather Index) на основі CMIP6-проекцій кліматичних змінних. Зміна FFMC, DMC, DC під час потепління → зростання числа високопожежонебезпечних днів.
Крок 3: Оцінка вразливості
Фізична вразливість – функція глибина повені → збитки (%):
# Damage function (Huizinga 2017 curves — EU flood damage)
depth_damage_curve = {
0.0: 0.00,
0.5: 0.15,
1.0: 0.30,
2.0: 0.55,
3.0: 0.75,
5.0: 0.95
}
def physical_damage(flood_depth, asset_value):
damage_fraction = interpolate(depth_damage_curve, flood_depth)
return asset_value * damage_fraction
Крок 4: Очікуваний річний збиток (EAL)
def expected_annual_loss(damage_by_return_period):
"""
Integration по вероятностям
EAL = Σ P(RP) × Damage(RP)
"""
return_periods = [10, 50, 100, 250, 500]
probs = [1/rp for rp in return_periods]
damages = [damage_by_return_period[rp] for rp in return_periods]
return np.trapz(damages, probs) # площадь под кривой
Транзиційні ризики
Вуглецева вартість: Компанії з високим Scope 1+2 емісіями піддаються ризику зростання ціни вуглецю:
def carbon_cost_impact(scope12_emissions_tCO2, carbon_price_scenarios):
"""
Сценарии цены CO₂: 2030 = $50-150/tCO2 (NGFS Central/Net Zero)
"""
return {
scenario: emissions * price
for scenario, price in carbon_price_scenarios.items()
}
Заблоковані активи: Нафтогазові, вугільні активи – ризик знецінення при посиленні кліматичного регулювання. Discounted Cash Flow за різних сценаріїв вуглецевих цін.
Ризик полісу: NLP-аналіз кліматичного законодавства (GDPR Carbon Border Adjustment Mechanism, EU ETS Phase 4, російський ЕКЗбір) → оцінка ймовірності та термінів запровадження обмежень для конкретних галузей.
Портфельний аналіз ризиків
Кліматична цінність під ризиком (ClimateVaR):
# Методология MSCI ClimateVaR / BlackRock Climate Risk framework
def portfolio_climate_var(portfolio, scenarios, horizon=2050):
asset_impacts = {}
for asset in portfolio:
physical_impact = physical_risk_model.predict(asset, scenarios, horizon)
transition_impact = transition_risk_model.predict(asset, scenarios, horizon)
asset_impacts[asset.id] = physical_impact + transition_impact
# Агрегация с учётом корреляций (climate risks коррелированы географически)
portfolio_var = aggregate_with_correlations(asset_impacts)
return portfolio_var
Звітність TCFD: Результати – у стандартизованому форматі Task Force on Climate-related Financial Disclosures:
- Управління
- Strategy (матеріальність ризиків)
- Управління ризиками (процес)
- Metrics and Targets (кількісні показники)
Дані та інструменти
Кліматичні дані:
- CMIP6 models (доступні через Copernicus Climate Data Store)
- ERA5 reanalysis (історичні дані)
- CHELSA, WorldClim: downscaled кліматичні дані 1 км
Інструменти:
- xarray, zarr: робота з багатовимірними кліматичними даними (NetCDF)
- GeoPandas, Rasterio: геопросторові обчислення
- PyMC/stan: байєсовське моделювання невизначеності
Платформи: Moody's ESG, MSCI ClimateVaR, Jupiter Intelligence – комерційні data providers. Для кастомних рішень: інтеграція громадських кліматичних моделей (CMIP6 + AQUEDUCT + NASA).
Терміни: базова фізична оцінка ризиків по flood/heat для портфеля активів - 6-8 тижнів. Багатосценарний аналіз (SSP1-8.5), транзиційні ризики, ClimateVaR, TCFD-reporting модуль – 4-6 місяців.







