Представьте себе мир, в котором мы не умеем предугадывать погоду. Ваша мама постоянно говорит вам надеть шапку и взять зонтик. Пассажиры угодившего в шторм самолёта разливают Просекко прямо себе на джинсы. Ужасающая картина.
Систематически наблюдать за погодой человеки начали еще во времена Аристотеля. Тогда были обнаружены первые закономерности, правда на уровне примет типа «ветер с юга приносит дождь». А что вы хотели, сами бы попробовали жить две тысячи лет назад.
Потом средневековье. Империям хотелось эффективнее нагибать колонии и меньше при этом гибнуть самим (неприятная штука, избегайте). Мореплаватели прокачали техники предсказания погоды, но они всё равно оставались скорее искусством, а не наукой. Они даже не знали об атмосферном давлении — главной составляющей современной погоды.
Современная гидрометеорология началась когда физики открыли термодинамику и гидродинамику.
Американец Кливленд Эббе в 1873 году опубликовал работу «Физическая основа долгосрочного прогнозирования погоды» («The physical basis of long-range weather forecasting»), в которой впервые призвал всех задуматься над математическим описанием погоды.
Банально, но для его современников это звучало как если бы я вам сейчас предложил задуматься об аппарате предсказания продолжительности жизни. Все бы умерли прямо сегодня, но со смеху.
А вот норвержец Вильгельм Бьеркнес не смеялся. В 1904 он дописал статью, заложившую базу всей метеорологии — «Проблема прогнозирования погоды как проблема механики и физики» («The problem of weather forecasting as a problem in mechanics and physics»).
Он впервые выделил пять основных составляющих прогноза погоды:
Они с нами и по сей день. Хотя сегодня мы знаем, что на атмосферу влияет гораздо больше сил. Это и солнечная радиация, и городская застройка, и загрязнение воздуха. Современные модели умеют учитывать даже эти факторы, о них мы еще поговорим.
Помимо пяти составляющих, Бьеркнес составил и семь уравнений, которыми можно было достаточно точно прогнозировать процессы в атмосфере. Естественно, дифференциальных.
Дифференциальные уравнения полезны чтобы строить теории или мучить студентов на экзаменах, но на практике от них нет никакого толку. Компьютеры их решать не умеют, а вручную найти ответы можно только с серьезными допущениями и за неделю напряженной работы.
То есть я бы мог предсказать вам погоду на завтра, но только через неделю. Не очень полезно, да?
Зато в 1922 году англичанин Льюис Ричардсон, вдохновленный этими уравнениями, решил сделать их практически применимыми.
Он разложил их в систему и стал искать ответ численными методами. По иронии судьбы, его главная заслуга оказалась и главным провалом. Он получил абсолютно абсурдный вывод, что на следующий день давление в Европе изменится на 14.5 гПа (109 мм ртутного столба). Если бы это произошло в реальности — бабушки с гипертонией массово бы полегли в больницы.
Современники засмеяли результаты Ричардсона. Эксперты обвиняли его в том, что полез в «их метеорологию», не имея в ней ни малейшего опыта. Прям как у меня каждый раз в комментариях.
Только спустя годы математики докажут, что уравнения Ричардсона были абсолютно верными, а причиной абсурдного результата стала ошибка в начальных условиях.
А еще через тридцать лет произойдёт бум вычислительной техники. Появятся первые компьютеры, на которых будут реализованы математические модели численного предсказания погоды. В их основу и лягут те самые уравнения Ричардсона.
Так начнётся вычислительная метеорология, какой мы знаем её сейчас и слышим каждый день по телевизору и в интернете.
Кто хочет подробнее окунуться в историю без моих глупых шуточек, вот главная статья в интернете по этой теме:The origins of computer weather prediction and climate modeling
Современный прогноз погоды
Начиная писать этот пост, я думал современные метеорологи используют какую-нибудь огромную нейросеть, которая постоянно пожирает новые данные об измерениях, а на выходе говорит брать зонтик или нет. Как же я ошибался.
Атмосфера Земли — яркий пример математической Теории Хаоса. Система, в которой еле заметные изменения ведут к огромным последствиям. Нейросети же наоборот, ищут крупные закономерности в данных, полностью игнорируя мелкие отличия и выбросы. Другими словами, они смотрят вообще не туда.
Для предсказания погоды нужны модели суровой реальной гидродинамики.
Представьте, что вы налили огромную ванну воды и вылили туда стакан кипятка. Жидкости начали активно смешиваться, образуя вихри и передавая тепло. Потеплевшие массы воды начали двигаться и подниматься наверх. Вокруг начали расходиться волны, отражаться от краёв и пересекаться между собой, образуя новые всплески.
Вам нужно рассчитать что произойдет с пылинкой на другом конце ванной.
То же самое с атмосферой, просто чуть побольше и посложней. Атмосфера не останавливается ни на минуту. У неё нет начального состояния, поэтому нам нужно постоянно собирать о ней данные и быстро делать выводы.
Сегодня у нас три основных источника данных — наземные станции, метеозонды и спутники.
Наземные метеостанции бывают какие угодно. Огромные мачты в полях, плавающие буйки в море, шарообразные радары (в аэропортах такие любят). Но самый распространённый вид, который вы можете встретить просто по пути на дачу — вот такие поля, похожие на пасеку. Только с метеорологами вместо пчёл.
Они собирают данные о давлении, скорости ветра, температуре, влажности, количестве осадков, высоте снежного покрова, видимости и яркости солнца. Всё это пригодится для моделирования.
Метеозонды — большие резиновые шарики с оборудованием. Два раза в сутки их запускают на всех метеорологических станциях, которые есть в каждом городе. По радиоканалу они передают данные о давлении, влажности и ветре, которые сильно помогают нам понять что творится в атмосфере. Метеозонд взлетает до 25 км и улетает от точки старта на 50-100. Потом взрывается. Продаётся за 10 баксов на ибей.
Метеорологический спутник — дорогущая бочка с камерами, висящая на орбите 38500 км. Европейский спутник Meteosat может вполне поместиться у вас в комнате. Один такой малыш весит около полутора тонн и занимает 3.5 метра по высоте и ширине. Кучка таких ребят постоянно фотографирует Землю и выкладывает фотки в инстаграм с хештегами #space #weather #cozy. Нет. Просто несколько раз в день высылает пачкой на Землю.
Так как мы живем на планете, где страны всё еще не доверяют друг другу даже в погоде, у каждой есть своя сеть метеоспутников: Meteosat у Европы, GOES у США, MTSAT у Японии, Fengyun у Китая, GOMS у России, и даже у Индии есть KALPANA. Все они делятся между собой информацией, но держат свою сеть на случай если кому-то вдруг захочется поиграть в ракетки.
Если вы тоже хотите наблюдать за Землёй, вам достаточно запустить всего 5-6 таких штук. Приверженцам идеи Плоской Земли хватит и двух.
Эти методы основные, но есть и специализированные — запуск специальных шаров-метеозондов и даже целых самолётов-лабораторий. Их используют для исследований атмосферы по мере необходимости.
Сейчас набирает популярность сбор данных через домашние метеостанции. Каждый может купить такую в китае и поставить у себя на окне. Есть даже специальные сайты, которые агрегируют их показания и делают по ним прогноз — OpenWeatherMap или Weather Underground, например.
Но настоящие метеорологические центры данные с домашних приборов не используют, даже несмотря на то что их много. Все используемые метеорологичекие приборы в мире откалиброваны одинаково. +10 градусов на приборе в Оклахоме и в Оклахомске — это одни и те же +10. У домашних же приборов катастрофический разброс показаний. Никто их не калибрует и за качество не отвечает.
Вообще Росгидромет запрещает заниматься погодой без лицензии. То есть считать её можно, но называть это «прогнозом» нельзя.
Математические модели атмосферы
Каждый раз улыбаюсь, когда в новостях пишут «синоптики предсказали нам…». Сразу представляю себе таких старцев в мантиях, которые раз в день собираются у костра чтобы «предсказать» нам погоду. Нет, всё не так (а жаль).
Хорошо обученный кожаный специалист вручную может хорошо посчитать погоду на сегодня. Может чуть хуже на завтра. Но дальше всё, уже требуется помощь компьютеров.
Те, кого называют «синоптиками», чаще всего огромные гудящие шкафы фирмы IBM. Собранные данные о текущей погоде загружаются эти шкафы, где крутятся модели численного прогнозирования погоды (Numerical Weather Prediction). Они-то и считают что будет происходить с атмосферой далее.
Но живые синоптики всё еще нужны. Они делают прогнозы там, где есть ответственность. Вся авиация (у нас и на западе) летает только по «живым» прогнозам. Для этого они используют весь свой опыт и доступные данные, в том числе предсказанные машиной.
Выделяют два основных вида моделей:
Глобальные считать сложно и дорого, ведь надо моделировать атмосферу всего земного шара. Причем делают это до сих пор на CPU, видеокарты почти не используют. Достаточное количество мощности и желания этим заниматься есть только в нескольких центрах в США и Европе.
Но есть лайфхак.
Дело в том, что Земля — шар. Эффект Кориолиса никто не отменял. Погодные штуки, которые происходят на одном полушарии, редко перелетают через экватор.
Теперь даже интересно как этот эффект объясняют адепты теории плоской Земли
Мы можем считать погоду только для одного полушария, как будто другого не существует. И это работает. Полушарные модели есть у всех крупных стран — UKMET у Англии, EUMETSAT у Франции, CMC у Канады, JMA у Японии, ПЛАВ (SLAV) у России (какая ирония в названии). Всего их около 15 штук.
Кроме глобальных, есть локальные модели. Они считают погоду на определенном участке Земли и понятия не имеют что происходит вокруг. Поэтому они требуют чтобы им рассказали прогноз глобальных моделей на их границах. Вдруг там чо.
Зато локальные модели могут точнее моделировать хитрые особенности местности — горы, водоёмы, снежный покров. Для какого-нибудь мелкого озера можно задать его глубину и другие свойства. Снежный или ледяной покров вообще очень сильно влияет на прогноз погоды, и глобальные модели на этом всегда жутко тупят. Всегда сверяйтесь с локальными прогнозами.
Современные модели учитывают целую кучу климатических процессов, о которых я даже не догадывался. Они даже погружаются на метр под землю. Вот лишь малая часть, чисто схематически:
Некоторые процессы до сих пор не изучены до конца. Например, мы всё еще плохо моделируем физику внутри облаков.
Больше скучных технических подробностей можно найти в википедии: Global Circulation Model
Глобальные модели: GFS vs ECMWF
Вот где битва похлеще Бетмена против Супермена — американская GFS против европейской ECMWF.
На самом деле ECMWF — это название организации, которая разрабатывает кучу разных моделей — IFS, HRES, и.т.д. Но во всех статьях их называют просто «модели ECMWF», вот и я так буду, не занудствуйте.
Обе модели делают одно и то же — моделируют атмосферу всего земного шара и предсказывают как она будет изменяться со временем. Они даже используют одни и те же данные.
Коротко — европейская ECMWF считается лучше американской GFS. Но не спешите с выводами, я специально сказал «считается».
Самый большой скандал в истории их противостояния произошел в 2012 году, когда Америка готовилась к урагану Сэнди. Американская модель предсказала, что ураган развеется, не дойдя до побережья США. Европейская же модель забила тревогу, объявив, что через 4-7 дней ураган-таки дойдёт и нужна срочная эвакуация.
Представьте какой нелегкий выбор стоял перед американскими метеорологами.
30 октября 2012 года ураган Сэнди ударил по Восточному Побережью. Он унёс жизни 233 человек и нанёс $75 млрд ущерба.
Начались серьезные дебаты по поводу качества американской модели: «Are Europeans Better Than Americans at Forecasting Storms?». В 2015 и 2017 в модель GFS были внесены серьезные изменения для повышения точности.
Ни разу не встречал таблицу сравнения двух моделей, решить нарисовать сам. По ней вы даже сможете понять в будущем чей перед вами прогноз.
GFS | ECMWF |
---|---|
Американская Год основания найти не удалось, но она старше европейской. |
Европейская Создана в 1975 году, первые прогнозы в 1979. |
Бесплатно раздаёт все данные Любой может скачать их на официальном сайте. |
Доступ только своим За файлики с данными нужно платить около $150000 в год. |
Прогнозы по 8, 16, 30+ дней Легко понять чей перед вами прогноз можно просто посмотрев на количество дней. Часто сайты так их и отображают. |
Прогнозы по 10, 15, 30+ дней Прогноз на три дня или неделю есть у всех, а вот если дальше идет прогноз на 15 дней — перед вами точно ECMWF. |
Запускается 4 раза в день, считает 3 часа Запускается в 0, 6, 12 и 18 часов по UTC. Результаты публикует спустя 3.5 часа. Так как запускается чаще, может быстрее корректировать свои ошибки. |
Запускается 2 раза в день, считает 6 часов Запускается в 0 и 12 часов по UTC. Но из-за своей сложности, считает прогноз целых 6 часов. Как раз к утренним новостям. |
Шаг 0.5 градуса (~50 км) Каждая модель делит земной шар на сетку. Чем меньше в ней клеточки — тем точнее прогноз, но тем сложнее его считать. |
Шаг 0.25 градусов (~25 км) Даже такая точность не всегда достаточна для больших городов. Тут и приходят на помощь локальные модели. |
Лучше моделирует тропики Американцам жизненно важно предугадывать тропические шторма. |
Лучше для средних широт Европейцам, очевидно, важнее что происходит внутри континента. |
Windguru Популярный сайт windguru.czотображает результаты именно по американской модели. Его любят всякие кайтеры и сёрферы. |
Foreca Гисметео, Yahoo, Яндекс (раньше) и другие популярные ресурсы берут данные Foreca, которая работает на европейской модели. |
Большинство популярных сайтов с прогнозами в интернете, отображают данные либо из американской GFS, либо из европейской ECMWF. Только официальные службы делают свои прогнозы по собственным локальным моделям, о которых поговорим чуть ниже. В общем погода на Yahoo будет всегда отличаться от Росгидромета.
Разница между прогнозами моделей хорошо видна на сайте windy.com. Там в правом нижнем углу есть переключатель, поиграйтесь.
Точность прогноза погоды
За 50 лет своей истории точность моделей поднялась от 40% до современных 95%. Такой рост объясняется ростом производительности компьютеров, увеличением количества спутников на орбите, и уточнением самих физических моделей.
Кто-то однажды сказал мне: «Раз точность прогноза погоды всего 50%, чем эти синоптики там вообще занимаются? Монетку бросают?»
Я дал ему монетку и попросил сказать мне температуру, количество осадков и направления ветра в следующий четверг.
Он ушел и не вернул мне евро ?
То есть когда вы смотрите утром температуру, с вероятностью 95% она будет такой весь день. Весьма неплохо. Точность же через неделю будет примерно 75% — как раз те самые 2-3%, умноженные на 7 дней.
Температуру мы научились предсказывать максимально точно. Главная проблема сегодня — это осадки. Современные модели предсказывают их очень плохо, максимум 80%.
Интересная особенность: точность прогноза летом заметно ниже, чем зимой. Примерно на один процент. Сезонная точность пятидневного прогноза по моделям GFS и ECMWF плавает вот так:
По нему еще видно, что GFS постоянно проигрывает ECMWF, но всего на какие-то пол процента. Другие модели могут отличаться намного сильнее.
Но все эти проценты не означают, что одна из моделей всегда лучше другой. Локальные факторы катастрофически влияют на точность. Рельеф, городская застройка, загрязнение воздуха или просто местные особенности климата могут привести к тому, что «хорошая» европейская модель начнет нагло вам врать, а американская покажет огромную точность. А может и наоборот.
Для решения проблемы с точностью в конкретных местах, применяют локальные модели.
Локальные модели
Глобальные модели хороши и полезны, но квадратов по 50 км бывает просто недостаточно, чтобы адекватно предсказать погоду в условном Усть-Урюпинске, который окружен горами, стоит на берегу реки и постоянно покрывается снегом.
Здесь на помощь приходят локальные модели.
Они специально заточены на работу с конкретным квадратом — городом, страной или целым полушарием. Им можно выставить какое угодно разрешение, но чаще всего это квадраты до 5 км. Зависит от того, сколько у вас есть мощностей.
Так как локальная модель не может знать что творится за пределами своей области, ей необходимо знать прогноз одной из глобальных моделей. Без него ей никак. Зато всё что внутри — аналогично. Скармливаете ей текущие наблюдения, получаете результат прогноза.
Именно локальные прогнозы вы слышите по телевизору и из других официальных источников. Интернет-сервисы, в свою очередь, чаще всего используют результаты глобальных моделей GFS и ECMWF.
Самая популярная среди исследователей — моделька WRF (Weather Research and Forecasting), произошедшая от американской GFS. Она максимально простая, по сравнению с реально используемыми моделями, зато открытая и популярная. На ней часто проводят разные эксперименты или используют частные компании (например, Яндекс) для своих прогнозов погоды.
WRF написана на Fortran и выложена на гитхаб. Любой может скачать и запустить: github.com/NCAR/WRFV3. Как типичный представитель OpenSource, она не работает из коробки и требует страданий и напильника. Самые стойкие, говорят, справляются за вечер.
Так что если вы вдруг по какой-то причине захотите делать свой прогноз погоды (как делает Яндекс для Московской Области, например), просто скачивайте WRF, находите данные и загружаете компьютер на ночь. На современной мощной машине он посчитается часов за десять. Вот мини-статья по теме: «Прогноз погоды своими руками».
Друзья из Росгидромета говорят, что в продакшене WRF не используют, слишком мутны там вопросы лицензирования. Зато для экспериментов частенько.
Локальные модели легко допиливать под собственные нужды и дополнять новыми данными.
Вот есть в Усть-Урюпинске озеро. Глобальные модели понятия не имеют о мелких водоёмах. Однако это озеро влияет на климат в Усть-Урюпинске больше, чем все атмосферные явления на Земле. Испарения, облака. Прогноз говорит +10, а на улице +20. Нормально?
Для этого и нужны локальные модели и живые метеорологи, которые измерят, запишут и внесут коррективы.
Прогноз нескольких вариантов событий
В последние 10 лет набрала популярность свежая идея — ансамблевые методы. От слова ансамбль, да. Ай нанэ нанэ.
Их смысл в том, что прогноз рассчитывается не один раз, а несколько. По слегка изменённым входным данным.
Вспомните про теорию хаоса — мелкие изменения и большие последствия. Атмосфера для нас всё еще именно такая. Все процессы в ней до конца не изучены. Будь у нас хоть бесконечные CPU, мы всё равно не смогли бы учесть каждую деталь.
Зато мы можем специально вносить возмущения в данные и смотреть как это повлияет на прогноз. Скорость ветра была 5 м/с, а что если она была 7 м/с? Может если давление случайно упадёт на пару паскалей, в небе образуются облака, которые изменят всю картину происходящего?
Насчитать целую кучу вариантов, чтобы было из чего выбрать!
В европейской модели ECMWF проводится 50 дополнительных «гипотетических» симуляций, в американской GFS — 20. Еще одна причина, почему европейская модель считает прогноз целых шесть часов, а американская справляется всего за три. Но когда стоит вопрос о надвигающемся урагане, каждый гипотетический исход важен.
Занятная визуализация зависимости вызовов такси от осадков в Москве. Вот вам и практическое применение — можно заранее перебрасывать таксистов в районы, где будет большой спрос.
Может всё-таки нейросеть?
С расцветом нейросетей все стали активно пытаться их применить к погоде. Даже хотел заменить ими модели, но я уже объяснял почему это невозможно.
Был один хитрый способ — корректировать нейросетями результаты имеющихся моделей. Его придумали далеко не вчера, и самые продвинутые региональные метеослужбы через него уже прошли (инфа из первых рук).
Суть в чем. Всех данных о планете не собрать. Систематические отклонения есть в любой модели. В моем городе, например, если обещают дождь через неделю, почти всегда он будет на пару дней раньше. Летом температура постоянно на два градуса ниже, чем в прогнозе — я уже привык. Вы наверняка замечали у себя такие закономерности.
Раз эти отклонения постоянны, можно попытаться их как-то учесть. Посмотреть какой был прогноз и как оказалось в реальности. Потом скормить разницу любимому алгоритму машинного обучения. Подойдёт любой, они все отлично выявляют закономерности.
Машина не предсказывает, она корректирует прогноз. Находит в нём повторяющиеся ошибки, о которых человек может даже не догадываться.
Последним с этой идеей нашумел Яндекс, громко анонсировав в 2017 годусвою систему Метеум. У них отличные маркетологи, которые смогли продать это как уникальную фичу. В Росгидромете по-дружески улыбнулись.
Метеум берёт три прогноза: GFS, Foreca (ECMWF) и считает свой по модели WRF. Эти прогнозы сверяются с реальными наблюдениями в нескольких точках города, собранных по метеостанциям. Официальным или пользовательским — не важно, всё сгодится.
Машина находит в данных «до» и «после» повторяющиеся закономерности, и выдаёт гиперлокальный прогноз «с точностью до дома», как заявляет пресс-релиз. Только для Москвы.
Вроде даже работает. Прогноз в разных точках Москвы заметно отличается.
Смущает одно — Яндекс отчаянно скрывает измерения точности своей системы, за что получает тапками от экспертов. Мол, мы пробовали это еще пять лет назад, оно работает хорошо только там, где стоит метеостанция. Если бы ваша модель была хоть на сотую долю процента лучше современных, стали ли вы это скрывать?
Вопрос до сих пор остаётся открытым. Но приложенька удобная, сам пользуюсь.
Заключение
Когда же у нас наконец будет штука, как из «Назад в Будущее», говорящая, что «дождь закончится через 23 секунды»? Сам такую хочу, но вынужден всех расстроить. Даже если мы с вами и доживём, в таком возрасте нам уже будет насрать на погоду.
Прогресс в этой области идёт медленно и тяжело. Мы мало знаем о собственной атмосфере, мы не измерили каждую точку земного шара, чтобы учесть это в моделях. Любая новостройка у вас за окном уже влияет на погоду во всём районе. Слишком мало данных, слишком мало физиков, слишком мало метеорологов — нам есть куда расти.
Зато мы можем совершенствовать наши сервисы. Однажды я приехал в Москву и собирался пойти погулять. Яндекс.Погода прислала мне пуш-уведомление на телефон, что за окном дождик, но он закончится в течении получаса, лучше пережди немножко.
Почти киберпанк.
Да, наши модели неточны. Зато они дают нам кучу интересных данных, которые мы можем начать использовать прямо сейчас. Просто попробуйте. Всем до скорого.