Страна, которая стягивается к столице
Зачем я построил 130-летнюю карту населения Беларуси, что она показала — и почему каждый её вывод можно проверить без доверия ко мне.
Сергей Авдейчик, июль 2026
Зачем я создал этот проект
Я — кандидат технических наук, AI/ML-инженер, разработчик систем на базе больших языковых моделей. Одно из основных направлений моей работы — обработка больших массивов данных при помощи LLM и агентных систем. Значительная часть практического опыта связана с юридической информацией: судебными решениями, нормативными документами, материалами международных органов, доказательственными документами и профессиональными LegalTech-процессами. В этой работе есть железное правило: значение имеет не только финальное заключение, но и цепочка документов, источников и вычислений, подтверждающих каждый существенный тезис. Заключение, которое нельзя проверить, в профессиональной среде не стоит почти ничего.
BY Maps начинался как практический эксперимент: можно ли перенести это правило из юридических процессов в самостоятельное исследование общественно значимой темы? Способна ли связка открытых источников, OSINT-методов, языковых моделей, программного анализа и проверяемых артефактов дать содержательный результат человеку, который в выбранной предметной области не является узким специалистом?
Я не демограф. До этого проекта моя теоретическая подготовка в области народонаселения ограничивалась общими знаниями по экономике, миграции, размещению производительных сил, геоэкономике и истории — да прочитанной когда-то работой Сергея Капицы «Общая теория роста человечества». Это обстоятельство — не оговорка, а часть замысла. Проект должен был показать, что современные инструменты позволяют образованному и критически мыслящему человеку войти в новую для себя область, собрать данные, установить их ограничения, проверить гипотезы и сформировать собственную — пусть несовершенную, но проверяемую — картину происходящего.
Есть и личная причина. Я белорус, и будущее Беларуси меня беспокоит. Но именно поэтому мне хотелось посмотреть на это будущее не через политические лозунги, публицистические стереотипы или заранее сформулированные оценки — а через данные, цифры, карты, историческую динамику и сценарии с явно выписанными предпосылками. Демография для такого взгляда — почти идеальный материал: население меняется медленно, его считают больше века, и практически каждое утверждение можно сверить с независимым источником.
Гипотеза, с которой я начинал, звучала просто: население сельских территорий и малых районов Беларуси долговременно сокращается и концентрируется в Минске, областных центрах и крупнейших городах. Забегая вперёд: данные подтвердили её лишь наполовину — реальность оказалась интереснее.
LLM как инструмент самостоятельного исследования
Ключевой методический тезис проекта: языковая модель не должна использоваться как источник готовой истины. Спросить у чат-бота «что происходит с населением Беларуси?» и опубликовать ответ — это не исследование, это пересказ чужих (и неизвестно чьих) текстов с непредсказуемыми искажениями.
LLM и агентные системы работали в проекте иначе — как инструменты, каждый результат которых проверяется:
- поиск и систематизация источников — от компиляций переписей до спутниковых композитов ночной светимости;
- извлечение и нормализация данных — разбор HTML-таблиц, OLAP-кубов Белстата, PDF-постановлений с чернобыльскими перечнями;
- формирование исследовательских гипотез — какие сюжеты стоит проверить количественно;
- написание и проверка кода — весь ETL-конвейер, модели прогноза, 155 автоматических тестов;
- поиск противоречий — между источниками, между текстом и данными, между разными изданиями одних и тех же ретроспективных рядов;
- альтернативные расчёты — например, отдельная ML-модель, задача которой — найти слепые пятна основной модели (о ней ниже);
- критика методологии — регулярные «адвокат дьявола»-сессии против собственных допущений;
- визуализации и документирование всего процесса.
Ценность такого подхода не в том, что модель формулирует убедительный текст. Убедительный текст — самое дешёвое, что есть в эпоху генеративных моделей. Ценность в том, что пользователь получает возможность собрать собственную проверяемую модель реальности и увидеть границы её достоверности. Каждый раз, когда модель предлагала красивое обобщение, за ним следовал вопрос: на каком файле, какой строке, каком вычислении это основано? Не отвечает — обобщение выбрасывается.
От бумажного документа к проверяемому пакету артефактов
В традиционной модели публикации автор передаёт читателю итоговый текст: статью, PDF, презентацию. Читатель получает выводы — но, как правило, не получает полного набора материалов для их проверки. Максимум — список литературы, по которому реконструировать фактический расчёт почти никогда невозможно.
В эпоху агентных систем этого недостаточно — и, что важнее, это больше не является технически неизбежным. Современное исследование может и должно передаваться как структурированный пакет: текст; исходные и обработанные данные; ссылки на источники с датами обращения; код; расчёты; таблицы; промежуточные результаты; описание методологии; сведения об ограничениях; инструкции для воспроизведения; и — новое требование времени — промпты и задания для проверяющих агентов.
В BY Maps этот принцип реализован буквально. Каждое из одиннадцати исследований и прогноз опубликованы вместе с zip-пакетом по единому стандарту: внутри — сырые данные ровно в том виде, в каком они скачаны из первоисточников; очищенные наборы; код с зафиксированными зависимостями и единой точкой входа run.sh; все допущения в явном виде (assumptions.yaml); манифест с контрольными суммами каждого файла; описание ограничений; и файл AGENT.md с тремя готовыми заданиями для чужой LLM-системы: проверь источники, воспроизведи расчёт, атакуй допущения. Пакеты собираются детерминированно: пересборка в чистом окружении совпадает с опубликованной байт-в-байт, и это условие проверяется автоматически перед каждой публикацией.
Такой пакет можно передать другой агентной системе — и она сможет перепроверить результаты, найти ошибки, воспроизвести расчёты, изменить предпосылки модели и предложить альтернативную интерпретацию. Повторный анализ может привести к другим выводам. Это не недостаток проекта — это его важнейшее достоинство. Я не прошу согласиться с моими выводами; я прошу проверить их.
Что показало исследование
Дальше — главные результаты. Я помечаю статус каждого утверждения: [данные] — наблюдаемые значения из первоисточников; [расчёт] — вычисленные показатели; [модель] — результаты модельных построений с явными предпосылками; [интерпретация] — моё объяснение, которое может быть оспорено.
Численность: пик пройден в 1989 году
[Данные] На территории современной Беларуси в 1897 году жило около 6,67 млн человек. К 1940 году — 9,05 млн. Война сняла с этой траектории более миллиона жизней: в 1950-м — 7,71 млн. Затем три десятилетия восстановительного роста — и исторический пик в переписи 1989 года: 10,20 млн. С тех пор — непрерывное снижение: 10,05 млн (1999), 9,50 млн (2009), 9,41 млн (2019), и 9,06 млн на начало 2026 года. От пика страна потеряла 1,14 млн человек — минус 11% за 37 лет.
Все эти значения — официальные: переписи и оценки Белстата, сверенные с независимыми компиляциями. Оценка на 1 января 2026 года в наших данных совпадает с публикацией Белстата до человека: 9 056 080.
Перераспределение: не «города против села», а «Минск против всех»
[Расчёт] В 1897 году в городах жило 9,7% населения (по определению «официальных городов» той эпохи; если считать с местечками, доля выше — это вопрос определения, и мы его честно оговариваем). Сейчас — около 79%. Доля Минска выросла с 1,4% до 22%, доля семи крупнейших городов — с 5,5% до 45%.
Самая наглядная картина — «лестница расселения» по четырём ступеням [расчёт]:
- село: 5,52 млн (1959) → 1,91 млн (2026), сокращение почти втрое;
- малые города и посёлки (вне райцентров): 278 тыс. (1959) → 267 тыс. (2026) — стагнация с пиком в конце 1980-х и последующим сжатием;
- райцентры: 1,15 млн → 2,96 млн — рост до конца 1990-х (пик ~3,16 млн в 1999-м), затем медленное сползание;
- Минск: 516 тыс. → ~2,0 млн — рост в четыре раза.
А вот нюанс, который скорректировал мою исходную гипотезу. Пять областных центров, вместе взятые, выросли с 585 тыс. (1959) до 1,93 млн — но их суммарный рост практически остановился: 1 927 тыс. в 2019-м против 1 923 тыс. в 2026-м. Продолжает расти только Минск с пригородной зоной (Минский район — единственный район страны с положительным естественным приростом). [Интерпретация] Концентрация идёт не «в крупные города вообще», а всё более узко — в столичную агломерацию. Областные центры из полюсов роста превращаются в промежуточные ступени той же лестницы, ведущей в Минск и дальше за границу.
Иерархию городов это деформировало измеримо. [Расчёт] В исследовании «Закон Ципфа» мы считаем примацию — отношение населения первого города ко второму. В 1897 году Минск был лишь в 1,38 раза больше второго города страны; в 1959-м — в 3,07 раза; в 2026-м — в 3,99. При «ципфовском» ожидании ~2 Минск сегодня вчетверо больше Гомеля. Скачок произошёл между 1939 и 1959 годами — война и послевоенная индустриализация перестроили всю городскую систему.
Где сокращение устойчивее всего
[Данные/расчёт] Сильнее всего сжимается северо-восток. Витебская область — минус 25% от пика 1989 года (1,41 млн → 1,06 млн); Могилёвская — минус 25%; Гомельская — минус 21%. «Район без центра» — режим карты, вычитающий из района его город, — показывает, что сельская и малогородская часть большинства районов сокращается десятилетиями безостановочно.
Исследование «Старение районов» переводит это в структурный диагноз. [Модель] Мы взяли возрастно-половые пирамиды всех 118 районов по переписи 2019 года и прогнали контрфактический сценарий: что будет, если миграция полностью остановится — никто не уезжает и не приезжает 60 лет. Результат: естественная убыль в 117 из 118 районов. Возрастная структура периферии такова, что депопуляция продолжится даже без всякого оттока: некому рожать. В 28 районах доля жителей 65+ за модельные 60 лет превысила бы 30%; в самых старых районах (Свислочский, Зельвенский, Кореличский) медианный возраст уже сейчас — 50–52 года против ~37 в Гродно и ~38 в Минске. [Интерпретация] Для значительной части периферии сокращение — уже не «отток», а самоподдерживающийся процесс; миграция лишь ускоряет то, что заложено в пирамиде возрастов.
Деньги, дороги и «тень Минска»
Почему люди едут? Два исследования дают количественные ориентиры — и оба требуют осторожности в причинных выводах.
[Расчёт] «Зарплата × динамика»: медианный район Беларуси платит 55–59% минской зарплаты. Связь с демографией измерима: +10% к зарплатному дифференциалу ассоциированы с +5,2 процентного пункта десятилетней динамики населения района. Но половина этой связи держится на пригородах Минска: без агломерации эффект падает вдвое (+2,7 п.п.). [Интерпретация] Люди следуют за деньгами, но ещё сильнее — за агломерацией как таковой: рынком труда, образованием, инфраструктурой.
[Расчёт] «Транспортная доступность»: мы построили дорожный граф всей страны (833 тыс. рёбер по OpenStreetMap) и посчитали время в пути от каждого райцентра до Минска и ближайшего областного центра. Пояс до 45 минут от Минска за десятилетие вырос на 11,9% (медиана). А хуже всего чувствует себя не дальняя периферия, а кольцо в 1,5–2,5 часах от столицы: −13,8%. Мы назвали это «тенью Минска»: отсюда уже можно уехать в столицу насовсем, но ещё нельзя ездить на работу каждый день. Важная честная оговорка: после статистических контролей на зарплату и размер центра «пояса» теряют формальную значимость — вывод держится на описательных медианах, и мы прямо помечаем его как устойчивую описательную закономерность, а не доказанный причинный эффект.
Миграция: два ряда, которые не сходятся
[Данные] Внутренняя миграция устроена однонаправленно: по накопленной матрице переписи-2019 все шесть областей — чистые доноры Минска; крупнейший поток страны — из Минской области в Минск (310 тыс. накопленных переходов против 126 тыс. обратных).
С внешней миграцией сложнее — и это, возможно, самый важный методический сюжет проекта. Официальная статистика показывает положительное сальдо международной миграции: +9,5 тыс. (2024), +9,1 тыс. (2025). Но зеркальная статистика стран приёма рисует другую картину: число действующих видов на жительство граждан Беларуси в ЕС выросло со 134 тыс. (2019) до 387 тыс. (2024); только в Польше — с 56 до 251 тыс. [Данные] Уехавшие в большинстве не снимаются с регистрационного учёта — официальный ряд их не видит.
[Модель] В рабочем пакете WP-F3 мы построили интервальную оценку неучтённого оттока 2020–2026 годов: от 178 до 416 тыс. человек, центральная оценка — 270 тыс. Нижняя граница — только документированные «осевшие» в наблюдаемых странах; верхняя — досчёт на ненаблюдаемые направления по опросным долям диаспоры. Интервал согласуется с независимыми ориентирами (оценки BEROC 100–500 тыс.; публичная оценка МВД ~350 тыс.) и не претендует на большее, чем есть: это оценка чистого прироста уехавших сверх довоенного уровня, а не «всей миграции». Поэтому весь прогноз опубликован в двух стартовых рядах — официальном и скорректированном (минус 270 тыс. на старте), и пользователь переключает их одной кнопкой.
[Расчёт] Косвенную проверку даёт космос: в исследовании «Ночные огни» мы сверили динамику спутниковой светимости районов с официальной динамикой населения. У Минска расхождения нет; у ряда индустриальных районов (например, Смолевичский с Жодино) доля в национальной светимости падает заметно быстрее доли в населении. [Интерпретация] Это совместимо и с деиндустриализацией, и с недоучтённым оттоком — разделить эти механизмы наши данные не позволяют, о чём мы прямо пишем.
Уязвимые точки: моногорода и чернобыльский след
[Расчёт] «Моногорода»: для 46 пар «город — градообразующее предприятие» мы сравнили траектории с демографически похожими «обычными» городами. Города с высокой зависимостью от одного завода к 2026 году отстали от своих двойников на медианные 7 п.п. (по индексу к 1989 году). Это ассоциация, не причинность — но полоса риска (моно-зависимость плюс санкционная экспозиция) очерчивает список городов, которым негативный сценарий обойдётся дороже всего. Отдельная проблема: крупнейшие моногорода (Солигорск, Новополоцк, Жлобин, Мозырь…) сравнивать не с кем — города их размера без доминирующего предприятия в Беларуси закончились.
[Расчёт] «Чернобыльский след»: сорок лет спустя эффект отселения всё ещё читается в данных. Три района зоны эвакуации (Брагинский, Хойникский, Наровлянский) идут на 14–20 п.п. ниже демографически сопоставимых контрольных районов. Во «втором классе» загрязнения картина неоднородна: часть районов легла на ту же траекторию, а, например, Добрушский держится лучше контролей. [Интерпретация] Радиационная катастрофа стала для юго-востока не разовым ударом, а долговременным модификатором траекторий — но не приговором для каждого района в отдельности.
Шоки XX века: почему нельзя читать эту карту без истории
[Данные] Ряд 1897–2026 несёт следы событий, каждое из которых требует отдельной оговорки: беженство Первой мировой, раздел 1921 года, коллективизация, репрессии, оккупация 1941–44 с потерей около 1,3 млн человек между довоенной и послевоенной точками ряда, Холокост — уничтожение местечек, где идишем как родным в 1897 году называли до трёх четвертей жителей (Докшицы — 76%, Пинск — 74%), кампания «неперспективных деревень». Исследование «Шоки» документирует эти события с источниками. [Интерпретация] Важный урок: многие города «восстановили численность» после войны — но композиционно это уже другие города. Демографическая непрерывность на графике может скрывать разрыв человеческой непрерывности.
Подтвердилась ли моя гипотеза?
Наполовину. Сокращение сельской периферии и концентрация — да, подтверждаются всеми независимыми срезами: рядами населения, возрастными пирамидами, матрицей миграции, зарплатными градиентами, транспортными поясами, даже ночными огнями. Но «концентрация в Минске и областных центрах» оказалась неточной формулировкой: областные центры суммарно уже не растут; растёт Минск с агломерацией — и заграница. И второй неожиданный для меня результат: устойчивое сокращение — это не столько «отсталость» конкретных мест, сколько структурная неизбежность, зашитая в возрастные пирамиды, — 117 из 118 районов убывали бы даже при нулевой миграции.
Чего данные не позволяют утверждать: точный масштаб эмиграционной волны (только интервал); её распределение по районам происхождения (зеркальная статистика не видит, откуда именно уехал человек); разделение «деиндустриализация или отток» в сигнале ночных огней; причинность в связках «зарплата → население» и «завод → город».
Сценарии будущего
Прогноз — самая модельная часть проекта, и подавать его нужно с максимальной дисциплиной. Всё в этом разделе — [модель].
Как устроен прогноз
Для страны, областей и Минска — классический когортно-компонентный метод: население по 5-летним возрастно-половым группам, коэффициенты дожития, возрастные коэффициенты рождаемости, миграция. Для 118 районов — метод Гамильтона–Перри с согласованием районных сумм с областными; для ~200 городов — модели долей. Прежде чем доверять модели будущее, мы проверили её на прошлом: обученная на данных до 2009 года, она «предсказала» перепись-2019 с ошибкой национального итога −0,4% и в 1,7 раза точнее наивной экстраполяции на областях; на районах (бэктест 2019→2026) модель точнее наивной в 1,3 раза. Базовый сценарий на 2050 год отличается от медианы прогноза ООН (WPP 2024) на +1,0% — мы сознательно держим калибровку к внешнему эталону и публикуем её как автоматический гейт.
Три сценария
Сценарии различаются только предпосылками — рождаемостью, смертностью, миграцией и степенью «центростремительности» расселения. Горизонт — 2075 год, но я прошу читать вторую половину горизонта как иллюстрацию инерции, а не как прогноз: после 2050-го рожать будут люди, которые ещё не родились.
Базовый (рождаемость по медиане ООН: 1,23 → 1,45; отток затухает): 7,53 млн к 2050-му, 5,97 млн к 2075-му. Вероятностный веер вокруг него (600 симуляций Монте-Карло) даёт 80-процентный интервал на 2050 год: 7,04–8,05 млн. Внутри модели убыль к 2050 году практически неизбежна; шансы удержаться выше 6 млн к 2075-му — примерно 50 на 50.
Оптимистический (рождаемость растёт к 1,85 — уровень успешных семейных политик Центральной Европы; продолжительность жизни быстро догоняет соседей; миграционное сальдо становится положительным к началу 2030-х): 7,95 млн к 2050-му, 7,11 млн к 2075-му. Обратите внимание: даже в этом сценарии население сокращается — инерция возрастной структуры сильнее любой реалистичной политики. Разница между сценариями — это разница между «минус миллион» и «минус три миллиона», а не между ростом и убылью.
Негативный (рождаемость падает к 1,0–1,15 — уровень сегодняшней Украины или Южной Кореи; прогресс смертности останавливается; отток десятилетиями держится в диапазоне −35…−10 тыс. в год; концентрация в столице усиливается): 6,48 млн к 2050-му, 4,33 млн к 2075-му.
Главные источники неопределённости, в порядке значимости на длинном горизонте: рождаемость (±0,1 ребёнка на женщину — это ±5% населения к 2075 году), миграция (доминирует на горизонте до 2035-го и в негативном сценарии), смертность. Плюс неопределённость самого старта: официальный ряд не видит уехавших, поэтому каждый сценарий существует в двух версиях — от официальных 9,06 млн и от скорректированных 8,79 млн. Честности ради: стартовая рождаемость базового сценария (1,23 по ООН) выше некоторых независимых оценок текущего уровня (~1,0–1,1), так что базовый сценарий может быть смещён в оптимистичную сторону — это записано в ограничениях пакета.
Что способно изменить траекторию: семейная политика, влияющая на решение о втором-третьем ребёнке (это единственный рычаг с большим длинным плечом); возвращение или невозвращение уехавшей волны — сотни тысяч преимущественно молодых людей, чьё решение пока не отражено ни в одном официальном ряду; открытость или закрытость границ и экономические шоки.
Труднообратимые изменения
Отдельно — о том, что в этих сценариях меня беспокоит больше итоговой цифры. Некоторые процессы обладают гистерезисом: пройдя точку, они не возвращаются, даже если условия улучшатся.
- Обезлюдение территорий. Село сократилось с 5,5 до 1,9 млн; в негативном сценарии сельская сеть на северо-востоке редеет до изолированных очагов. Восстановить умершую деревню сложнее, чем не дать ей умереть.
- Возрастные пирамиды районов. Когда медианный возраст района — 50+, естественная убыль гарантирована на десятилетия вперёд при любой политике: некому рожать. 28 районов в модели пересекают порог 30% пожилых даже при нулевой миграции.
- Дефицит работников и стоимость инфраструктуры. Сокращение трудоспособных возрастов означает, что школы, больницы, дороги и сети малых городов придётся содержать на всё меньшую налоговую базу — рост удельной стоимости инфраструктуры на жителя закладывает спираль: дороже содержать → хуже сервис → сильнее отток.
- Концентрация человеческого капитала. Уехавшая волна 2020+ на три четверти моложе 40 лет; внутри страны молодёжь стягивается в Минск. Периферия теряет не просто людей — она теряет именно тех, кто мог бы её воспроизводить: врачей, учителей, предпринимателей.
- Территориальное неравенство. Разрыв «Минск — остальная страна» по зарплатам, динамике и возрастной структуре в данных растёт монотонно; в негативном сценарии Беларусь движется к модели «город-государство с большой тихой периферией».
Это не предсказания. Это перечень порогов, за которыми сценарии перестают быть симметричными: из оптимистического сценария можно «упасть» в негативный за несколько лет, обратный путь занимает поколения.
Вывод
Проект не претендует на окончательную истину и не заменяет профессиональные демографические исследования. Его прогнозы — условные сценарии, его корреляции — не причинность, его данные наследуют все дефекты своих источников, и я перечислил эти дефекты так подробно, как смог.
Ценность BY Maps, как я её вижу, в другом. Он демонстрирует способ самостоятельной работы с общественно значимой информацией, который стал возможен буквально в последние годы. В мире, переполненном фейками, пропагандой и поверхностными интерпретациями, человеку недостаточно выбирать, какому готовому мнению доверять. Технологии впервые позволяют другой путь: проверять данные, воспроизводить расчёты и формировать собственные выводы. Языковые модели в этом пути — не оракулы, а рабочие руки; истина живёт не в убедительности текста, а в пакете артефактов, который можно вскрыть, прогнать и оспорить.
Каждый вывод этой статьи снабжён таким пакетом: данные, код, допущения, инструкции для проверяющих агентов. Если ваша LLM-система, ваш скепсис или ваша профессиональная экспертиза приведут вас к другим выводам — это не поражение проекта, а его успех.
BY Maps — первая работа задуманного цикла. Дальше — новые данные, уточнение моделей, расширение исторических рядов, новые визуализации и следующие исследования. Я приглашаю исследователей, разработчиков, демографов, историков, экономистов, специалистов по данным — и просто внимательных читателей — к профессиональной дискуссии, критике, повторному анализу и совместной работе. Контакты — в разделе «Об авторе».
Проверьте меня. Для этого всё готово.