Всем привет! Меня зовут Георгий Айзель, и сегодня я хочу вам рассказать про свой проект OpenForecast, посвященный прогнозированию речного стока. На этих выходных (21–22 марта 2026 года) на многих реках Европейской территории России ожидается первый пик половодья, поэтому я очень рассчитываю, что моя система вам пригодится. Например, можно сгонять в эти дни в Поленово и с высокого берега Оки посмотреть, как вода поднимается до высоких отметок, а потом вернуться летом, чтобы прочувствовать природный контраст между меженью и половодьем.

Почему важно знать сколько воды в реке?
Тема речной воды и её весеннего разлива лично тронула меня еще в детстве, когда река Томь вышла из берегов и затопила сотни гаражей, среди которых был и гараж моего брата (с красной Маздой 626 1988 года выпуска). Помню как мы переживали, а после этого брат каждую весну отгонял машину подальше от реки как только начинал трещать лед. Потом я пошел учиться на кафедру Гидрологии суши Географического факультета МГУ и закрутилось. И вот я делаю прогноз расходов весеннего половодья, которым пользуется мой брат — гараж всё тот же, а вот машина в нём уже другая.

Знать количество воды в реке, нужно по нескольким причинам. Прежде всего, чтобы прикинуть, хватит ли воды на питьевое водоснабжение и хозяйственные нужды (сельское хозяйство, заводы), и будет ли её достаточно для разбавления городских стоков. Каждую весну интересно (да и в целом полезно) знать, затопит ли любимую дачу, набережную или, как в моей истории, гараж. А ещё многих рыбаков интересует расход и уровень воды в реке — так они понимают на какие места лучше ехать удить.
Ну в общем вы поняли: «вода — всему голова», «глоток воды открывает двери рая» и прочие цитаты про значимость, бла-бла-бла.
Что такое этот ваш речной сток?
Это количество протекающей воды в реке в единицу времени через сечение русла. Основная единица измерений — кубометры в секунду. В научных работах также распространены миллиметры в день: для этого нужно «размазать» суточную сумму стока в кубометрах по всей площади водосбора в квадратных метрах. В итоге получим слой стока, который удобно сравнивать со слоями выпавших и испарившихся осадков.
Измерить расход воды в реке не так-то просто: как минимум, нужно уметь запускать поплавки, делать промеры глубины русла и скачать наставление гидрометеорологическим станциям и постам в котором написано, как это всё поженить для получения заветной цифры.

Ну и сколько будет воды в реке?
Смотрите на карте OpenForecast! Выбирайте заинтересовавший вас участок реки, переходите на интерактивный виджет и оценивайте динамику речного стока за прошедшую и будущую неделю. Для некоторых участков рек также доступны уровни воды.


На интерактивном виджете две части: голубая и темно-синяя. Голубая показывает среднее значение за прошедшую неделю, а темно-синяя — за будущую. Полоса вокруг линий — это разброс различных реализаций модельных расчетов: в прогнозе всегда заложена неопределенность, здесь мы её можем примерно оценить. На графике видно, что половодье на Оке начнется совсем скоро, с первым (но единственным ли?) пиком на выходных.
Как работает прогноз?
Принципиальная схема выглядит так:
На исторических данных для каждого водосбора настраиваем модель формирования стока. На вход модель получает температуру воздуха, сумму осадков и величину суммарного испарения по данным европейского реанализа ERA5, а на выход отдает величину речного стока.
Теперь переходим в оперативный режим. Каждый день нам нужно подавать в модель актуальный прогноз погоды по входным параметрам: для этого используем глобальную модель ICON Немецкой службы погоды. Для сохранения устойчивости и актуальности запусков, мы также постоянно подгружаем обновления ERA5, к которому и подцепляем наиболее свежие данные ICON.

Подробно можно прочитать в научных статьях в рецензируемых изданиях (осторожно, английский): раз, два, три.
Принципиальная схема проекта хоть и выглядит просто, но на самом деле для меня это была большая, последовательная работа. Началось всё с того, что я переписал на Python известную гидрологическую модель HBV, код которой нашел в одной научной статье. Следом за ней были переписаны три модели семейства GRXJ и модель SymHYD.
В качестве упражнения в систематизации знаний и публикации результатов в открытом доступе, я выложил код моделей и набор инструментов для работы с ними на Гитхаб. Даже сейчас, по прошествии 10 лет с публикации, я продолжаю получать благодарности от участников гидрологического сообщества: код моих моделей используется в соревнованиях и хакатонах, для написания дипломных и кандидатских работ, и даже (только никому!) в продакшн-среде оценки рисков затоплений одного крупного банка.
Но модели — это только часть работы. Огромная её часть — взаимодействие с метеорологическими и гидрологическими данными, а именно с их стабильным получением и обработкой. В эпоху без LLM приходилось вникать в суть документации и кода, но это полностью окупилось — OpenForecast ни разу не упал из-за бага в собственных процессах. За семилетнюю историю сервиса прогноз не обновлялся только пару дней — и то по причине проблем на стороне поставщиков метеоданных.
Фан-факт: ядро OpenForecast было использовано мной на хакатоне в ECMWF (создатели реанализа ERA5, крупнейший мировой погодный центр). Цель — спрогнозировать состояние британских рек при погодном сценарии, описанном в книге «Сто лет одиночества» Габриэля Гарсиа Маркеса: «Дождь лил четыре года одиннадцать месяцев и два дня».
Позалипать на графики можно на странице с результатами.
Есть ли альтернативы?
К сожалению, нет. С момента выхода OpenForecast в 2019 году, он так и остался первой российской открытой системой краткосрочного прогнозирования речного стока.
Тем не менее, есть несколько популярных направлений мониторинга ситуации на реках:
Веб-сайты региональных управлений управлений Гидрометслужбы. Например, ЦУГМС собирает свои сводки по весенним половодьям и паводкам.
Веб-камеры. Например, на вот вид с опоры моста через реку Томь в городе Новокузнецке.
Телеграм-бот Приморского УГМС. Предоставляет информацию об измеренных уровнях воды в бассейнах рек Уссури, озера Ханка и Японского моря.
И кто этим пользуется?
Подробной информации по использованию системы у меня нет. Знаю только, что на главную в период половья (март–май) могут заходить до нескольких тысяч человек в день. Среди них — прогнозисты Росгидромета, которые хоть и вынуждены в своей работе использовать часто устаревшие методы, но краем глаза сверяются и с OpenForecast.
Но главным мои пользователем остается брат, который теперь отгоняет машину из гаража не загодя, а сверяясь с моим прогнозом. Как-то раз получил от него такое сообщение: «Работает твоя программа, прям можно сказать до сантима прогноз верный». Одобрение старшего брата для меня не только необходимое каждому признание хорошей работы, но и подтверждение реальной пользы, которую приносит мой сервис.
Что дальше?
Планов, конечно, громадьё. Конечный образ результата видится таким: прогноз речного стока в любой точке речной сети на следующий час, день, месяц или даже век (почему бы и нет). Но пока это только планы.
Зима в Центральной России была снежной (в два раза выше нормы по многим областям, включая Московскую, Калужскую, Рязанскую), а значит весной и половодье должно быть выраженным и интенсивным. А где за ним следить вы уже знаете :)
Если хотите быть в курсе новостей из области гидрологии, подписывайтесь на мой телеграм-канал «Всё в сток».
Благодарности
OpenForecast не был бы возможен без вклада и поддержки моих друзей, коллег и знакомых, а также (ныне расформированного) Российского фонда фундаментальных исследований (РФФИ). Наташа Варенцова, Оксана Ерина, Всеволод Морейдо и Дмитрий Соколов были в первой рабочей группе проекта. Люба Курочкина помогла масштабировать проект до сотен водосборов, а Дима Абрамов — поддержать оценку качества прогнозов. Написать эту статью мне помогла Наташа Которева. Спасибо вам!
Комментарии (16)

Uraldandy
22.03.2026 07:37Добрый день. Вам случайно не известно - когда будет возобновлен постоянный мониторинг уровня рек на основе данных с гидропостов? На сколько я знаю, все популярные ресурсы сейчас не обновляются, а данные скрыты в ведомствах.
Вопрос возник в связи с тем, что я делал бота для передачи данных с локальных рек, на протяжении периода открытой воды.
hydrogo Автор
22.03.2026 07:37Добрый день! На мой взгляд, в ближайшем времени этого ждать не стоит. В прошлом году закрыли доступ к АИС ГМВО (уровни, расходы, гидрологические характеристики постов наблюдений с задержкой в 1-2 года, но постоянно обновляемые) и ЕСИМО (оперативные уровни воды; в свое время использовал данные оттуда для прогноза на основе статистических моделей). Таким образом, Росгидромет недвусмысленно даёт понять, что курс на публикацию данных в открытом доступе сворачивается. Есть разговоры, что все данные сейчас копятся в контуре ГИС ВОДА, который могут сделать открытым в будущем. Но на мой взгляд, шансы на это минимальны.
Здорово, что вы занимались такой работой! В статье я поделился тг-ботом коллег из Приморья, которые продолжают таким образом делиться оперативными данными с своей части сети наблюдений.

Hlad
22.03.2026 07:37Модель - это конечно хорошо, но мой личный опыт подсказывает, что мощные паводки - это по сути, результат срыва плотин у прудов. Модель это хоть как-то учитывает?

hydrogo Автор
22.03.2026 07:37Добрый день! Нет, этого модель не учитывает. По сути, ваш вопрос пересекается с тем, что уже спрашивали выше про учет зажорных явлений: на данный момент реализован только блок формирования стока. Реализация же блока трансформации стока в русле реки представляет намного бОльшую сложность -- нам нужно знать морфологию русла и речной долины, на основе которых можно построить гидродинамическую модель. Такие работы есть для отдельных участков рек, но масштабировать такую сложную модельную систему на сотки участков рек крайне трудоемкая задача.

justSeeRating
22.03.2026 07:37Спасибо за вашу работу! В субботу как раз планируется открытие sup сезона на местной реке, по прогнозу вода должна подняться на метр за эту неделю, надеюсь так и будет.

hydrogo Автор
22.03.2026 07:37Спасибо! Берегите себя: пик скорости, конечно, проходит первым (за ним идут расход и уровень), но все равно скорости воды намного выше меженных (не говоря уже про температуру).

fantast8
22.03.2026 07:37Добрый день. Что Вы можете сказать на счет модели GloFAS от ECMWF. Насколько высоко качество этой модели?

hydrogo Автор
22.03.2026 07:37Спасибо за интересный вопрос! Сделать сравнительное исследование эффективности прогнозирования между OpenForecast и GloFAS было бы очень интересно и актуально. После выхода статьи моего коллеги из ECMWF в 2020 году (https://essd.copernicus.org/articles/12/2043/2020/) были даже такие планы, но потом сменились приоритеты. С тех пор за GloFAS я давно не следил, но судя по сайту -- модель постоянно обновляется и развивается, это очень воодушевляет. Думаю, что и качество моделирования растет. Нашел дашборд с интерактивными точками, для которых можно посмотреть эффективность моделирования на историческом периоде: https://global-flood.emergency.copernicus.eu/glofas-forecasting/. Там же по какому-то набору точек доступен и прогноз, но прямых пересечений с OpenForecast не нашел.

fantast8
22.03.2026 07:37Да, я тоже смотрел верификацию по ближайшим к Кургану точкам. Полезный скилл у модели в пределах 14 суток. В 2024 году, когда было сильное наводнение в Кургане, то модель занизила расходы и недооценила риски по Тоболу. Плюс они сейчас подключили там ИИ-модель AIFS для оперативного прогноза на 2 недели.

hydrogo Автор
22.03.2026 07:37Здорово, что у вас есть опыт работы с GloFAS! К сожалению, в OpenForecast не так много участков рек около Кургана, но надеюсь, что можно будет получить некоторую пользу на основе прогноза по близлежащим рекам.

tklim
22.03.2026 07:37используем глобальную модель ICON Немецкой службы погоды
после этого вспоминаются ежегодные наводнения в самой Германии и рядом. И почти всегда "внезапно" или "не расчитывали на такой обхем воды"

hydrogo Автор
22.03.2026 07:37Если вы говорите о наводнениях в Браунсбахе или долине реки Ар, то они характеризовались очень быстрым (порядка нескольких часов) развитием конвективной системы с выпадением огромного количества осадков. Такие события очень редкие и сложнопрогнозируемые.
Действительно, глобальная модель ICON с разрешением ок. 13 км вряд ли смогла такое событие точно спрогнозировать, как и более мелкомасштабная модель ICON-EU с разрешением ок. 7 км. А вот национальная ICON-D2 с разрешением ок. 2 км уже могла и, наверное, даже справилась хорошо, но сами расчеты могли занять продолжительное время -- все-таки физические модели ресурсоемкие.
OpenForecast имеет суточное временнОе разрешение и работает в масштабе речных водосборов -- при таком масштабе наши рестроспективные оценки эффективности прогнозирования подтвердили адекватное качество прогнозов модели ICON.
Serge78rus
Почему на Ваших графиках на интервале отображения расход в реке Мста в районе Боровичей растет, а уровень воды при этом падает? На других реках, что я посмотрел, он вроде-бы имеет прямую зависимость.
hydrogo Автор
Добрый день! Большое спасибо за то, что обратили на это внимание. У меня уже было несколько участков рек со схожей проблемой, сейчас постараюсь объяснить в чем может быть дело. Основной прогнозируемой переменной является именно расход воды -- как мера количества воды в реке. Далее, на основе наблюдений за совместными измерениями расхода и уровня воды мы можем получить зависимость уровня H от расхода Q: H=f(Q). Часто, но далеко не всегда эта зависимость имеет линейный характер. Тем не менее, морфология русла и речной долины могут существенно влиять на эту зависимость. Но еще более существенное влияние могут оказывать ошибки в измерениях или (такое тоже бывает) перенос места измерений.
Сейчас на сервисе уровни воды появляются только для тех участков рек, для которых связь H=f(Q) сильная (коэффициент корреляции более 0.5), но ограничения на направление (прямая или обратная) этой зависимости нет. Я обязательно учту это в будущих версиях системы. Спасибо за вашу наблюдательность! Пока же прошу в первую очередь ориентироваться именно на расход воды.
Serge78rus
У меня, глядя на этот график, первая мысль была про зажорные явления - выше Боровичей находится порожистый участок, поставляющий большое количество шуги, что может способствовать образованию зажоров ниже по течению. При прорыве зажора, вроде бы, выше по течению должна быть картина повышения расхода одновременно с резким падением уровня. Но прорыв зажора - явление кратковременное, а на графиках мы видим долговременную тенденция.
hydrogo Автор
Во-первых, отмечу вашу прекрасную осведомленность как в локальных особенностях местности, так и в сложных гидрологических процессах, связанных с формированием заторных-зажорных явлений!
На данный момент в моей системе никак не учитываются процессы, происходящие в русле реки. Честно говоря, планов по их учёту тоже нет -- это большая и трудоёмкая работа, выполнение которой в масштабах сотен участков рек потребует огромных ресурсов.