Привет, Хабр! Меня зовут Ахрор, и я занимаю должность управляющего проектами в Департаменте Цифрового Развития Ташкента. Сегодня я хочу рассказать вам о том, как мы создавали систему управления Smart City для столицы Узбекистана на базе российских решений — ПО для бизнес-аналитики и визуализации Visiology и платформы “Геоинтеллект”. Новая система объединила более 60 ведомств и стала основой для работы диспетчерского ситуационного центра. В этом посте я подробно расскажу о том, как создавалась и проектировалась платформа, а также о том, какие возможности Геоинтеллекта и Visiology мы использовали.
Ташкент — один из крупнейших городов Узбекистана. И для того, чтобы обеспечить в нем комфортное проживание постоянно увеличивающегося населения нужно решать достаточно сложные задачи. Впрочем, те же проблемы стоят сегодня перед многими российскими городами и, возможно, наш опыт окажется полезен и российским коллегам. Наш Департамент Цифрового Развития был учрежден указом Президента всего два года назад. Но сегодня мы уже успешно решаем целый ряд вопросов, связанных с развитием города и реагированием властей на различные ситуации.
ГРАФИТ — архитектура
Осевым элементом общегородской системы мониторинга стала геоинформационная система. Наш Департамент создавал ее самостоятельно, “с нуля”. И поскольку изначально было понятно, что нас ждет много работы с картами, разработку назвали ГРАФИТ. В этом сразу была какая-то романтика — ведь раньше карты в основном чертили карандашами, а грифель простого карандаша — это даже в наш цифровой век графит. И хотя в системе “Умного Ташкента” уже нет старых добрых чертежей на ватманах, ГРАФИТ остался в сердце решения.
Но давайте ближе к матчасти. Изначально система задумывалась как комплексное решение, и поэтому было понятно, что ГРАФИТ будет включать в себя немало компонентов. Учитывая этот факт наша команда сделала выбор в пользу микросервисов. Мы не собирались делать монолит, который потом, так или иначе, придется целиком модернизировать.
В начале было не очевидно, до какой степени может разрастись система. Поэтому дорожную карту строили, придерживаясь старого доброго “ситуационного” подхода. Важно было принципиально определится, а дальше всё зависело от задач, которые будет ставить перед нами город.
Итак, ГРАФИТ — ядро всей системы “Цифровой Ташкент”. На него сверху накладываются Слои, Подложки и Векторизация. В общей сумме было создано 40 микросервисов, которые обеспечивают работу 67 модулей.
Картографическая составляющая платформы была создана на базе решения “Геоинтеллект” при тесном сотрудничестве с командой Центра Пространственных Исследований (Санкт-Петербург). Первостепенной задачей ГРАФИТа является отображение и визуализация аналитики геоинформационных данных. В качестве подложки используются карты (спутниковые, векторные, любительские) любого вида. Главное, чтобы в них были вшиты координаты и желательно в системе WGS 84. И на базе этой основы выстраиваются все остальные сервисы.
Ортофотоплан
Но как вы могли догадаться, далеко не всегда существующих карт оказывается достаточно. И при запуске нашего проекта руководство города специально запланировало создание ортофотоплана. Это большая фотография города, сделанная в максимальном разрешении. Для проведения такой фотосессии Ташкента был использован “кукурузник” АН2, оснащенный камерами высокого разрешения. Кстати, не знаю, как в вашем городе, но у нас такой ортофотоплан был сделан впервые за последние 15 лет. А учитывая изменения, которые он позволил обнаружить, теперь мы планируем проводить новую съемку каждый год. Во многом это связано с тем, что в городе ведутся активные девелоперские работы и идет активное расширение города. И когда большая часть строительных мероприятий закончится то такие снимки должны выполняться раз в 2 года.
Снимки для ортофотоплана чаще всего остаются недоступными для гражданского пользования. Он предназначен для архитекторов, урбанистов и градостроителей, которым не хватает разрешения обычных спутниковых карт Яндекса или Google — они просто не подходят для точных работ. Ниже можно увидеть разницу в разрешении ортофотоплана и гугла.
Слоеный пирожок
Подложка — это важнейшая часть геоинформационной системы. Но после ее включения работать можно с географией и только. Для аналитики этого не достаточно, нужны слои с геоданными и другими атрибутами:
Кадастровые разделы с координатами домов и их атрибутивными данными (вся информация из кадастровых дел);
Границы городов, районов, кварталов (в случае с Ташкентом ещё и махаллей — территориальное деление, похожее на структуру итальянских коммун), микроучастков школ, поликлиник и детских садов, красных линии и т.д.;
Экологические слои с рельефами, розой ветров индексом NDVI и т.д.;
Демография и всё, что с ней связано — количество проживающих граждан, характер их перемещений по городу;
Социальные объекты с данными, включая культурное наследие, транспорт, инфраструктуру и многое другое.
В каждом из разделов находятся десятки слоёв, и это — огромные массивы данных.
В геоинформационной системе должна быть возможность выбрать и настроить любую систему координат. Нужно предоставить пользователям все необходимые инструменты картографии и кадастрографии. Мы реализовали возможности создания геометрических объектов, начертания полигонов, линий и точек, а также добавление атрибутивных данных в созданные геообъекты. Подготовительных работ, необходимых для перехода от карты к геоинформационной системе, было много.
К тому же наша ГИС — не десктопная версия, а веб-приложение. Это наложило свои отпечатки на разработку. Приходится приспосабливаться под стандарты браузеров (или каким то образом обходить их). Некоторые инструменты конфликтуют с системами безопасности и отображения данных, например хочется более красочно и объективно показать контуры какого либо объекта, района, чтобы обычный пользователь легко понимал, куда именно обратить внимание но для этого браузер должен скачать всё к себе в кэш, а большая часть наших данных не для распространения (сейчас спарсить можно всё что угодно).
ГРАФИТ работает на платформе Геоинтеллект. В состав решения от питерских разработчиков входит несколько веб-приложений и подсистема администрирования. Благодаря этому у нас появилась возможность создать целое множество различных веб-приложений. Фактически мы создали свои веб-порталы для различных государственных служб, позволили им анализировать город, добавлять геоданные, пользоваться аналитическими инструментами. По сути, ПО “Геоинтеллект” позволило собирать конструктор из карт, геоданных (слоев), функций с управлением в подсистеме администрирования и изготовлением различных специализированных приложений внутри нашего Департамента.
Еще один очень важный компонент платформы — это BI-система. Практически любые отчеты и порталы для ведомств и специалистов сопровождаются дашбордами с индикаторами различных показателей. И делать все это должна BI-система, интегрированная с хранилищем данных. При неправильном подходе она грозила стать махиной и утяжелить все решение. Чтобы избежать этого, мы остановились на Visiology. Модульная платформа без лишних компонентов подходила к нашей архитектуре, а рекомендации коллег из Санкт-Петербурга, которые уже внедряли свои продукты вместе с Visiology, стали весомыми аргументами.
В процессе реализации проекта ребята из Visiology показали нам высокий уровень техподдержки, а сам продукт оказался стабильным (мы не столкнулись вообще ни с какими сложностями), но одновременно динамичным и развивающимся — при нехватке каких-либо возможностей, например:
Искать измерения, атрибуты и показатели в конструкторе дашбордов стало удобнее, благодаря поиску и сортировке по алфавиту;
Управлять цветами и раскраской в конструкторе дашбордов стало удобнее, благодаря упорядоченному расположению цветов, возможности выбрать из последних использованных цветов, а также функции Drag&Drop при настройке цветовой палитры;
Работать с формулами, расчетами, форматтерами в конструкторе дашбордов стало удобнее, благодаря возможности управлять размером окон ввода формул;
Длинные сложные формулы расчетных показателей теперь выглядят более наглядно, благодаря поддержке переноса строки и табуляции в синтаксисе;
Добавлять и удалять столбцы в загружаемой таблице теперь можно не пересоздавая загрузчик;
Появилась возможность управлять режимом масштабирования дашбордов. Это позволит создать длинный дашборд с вертикальным скролом и даст больше гибкости при встраивании дашборда во внешние порталы;
Теперь можно легко изменить порядок отображения расчетных показателей на виджете, используя drag&drop.
Интегрировав Visiology BI с Геоинтеллектом и подключив наше хранилище данных, мы смогли создать гибкое решение. С одной стороны сама платформа позволяет подключать новые источники данных и формировать логику при помощи программного кода. С другой стороны, на пользовательском уровне, получились дашборды, которые пользователи после небольшого обучения смогли самостоятельно адаптировать под свои нужды. Для этого был создан специальный веб-сайт, на котором легко реализовать все хотелки по дизайну UI и UX, по мере их поступления. Получилось красиво.
Iframe позволяет адаптировать сайт с дэшбордами под любое разрешение экрана довольно быстро. В контексте ситуационного центра с огромными экранами и мобильного доступа с маленькими экранами это оказалось очень удобно.
Геоинформационная система в действии
Visiology и Геоинтеллект позволяют в привязке к цифровой карте Ташкента:
Анализировать комфортность среды проживания в разных районах города.
Регистрировать и систематизировать любые обращения жителей.
Агрегировать информацию.
Вести планирование дальнейшего развития города с учетом сотен факторов.
Принимать оперативные сообщения от различных служб с отображением на карте города.
В состав платформы входит адресный реестр для поиска объектов, модуль учета ДТП, урбанистический модуль для работы с показателями комфортности города, модуль отображения транспорта в городе в реальном времени, интерактивная карта мобильности людей и другие элементы.
На базе “ГРАФИТа” работают четыре различных веб-портала с различной целевой аудиторией:
age.tashkent.uz — для контроля возраста домов Ташкента,
his.tashkent.uz — портал об истории Ташкента с метками на карте
xalqnazorati.uz - сервис “народный контроль” или “активный гражданин”
digitaltashkent.uz — “Цифровой Ташкент” или ключевой геопортал для жителей, бизнеса и госсектора. Он представляет Ташкент в публичном пространстве в виде открытых геоданных.
Кроме этого целый набор сервисов, модулей геоданных и аналитических инструментов предоставляются коммерческим пользователям и бизнес-партнерам хокимията, что обеспечивает системе дополнительную монетизацию.
Дашборды, которые Visiology генерирует на базе постоянно дополняющегося потока данных, выводятся на экраны — как в виде отдельной аналитики, так и в привязке к географическим данным через ПО “Геоинтеллект”. Функционал при этом разделен на ряд модулей.
Модуль учета ДТП
Модуль учёта ДТП позволяет создавать стандартные и нестандартные карточки (с разными полями для заполнения), чтобы каждый инцидент мог вызывать нужный процесс, а все важные действия и события попутно отображались на карте.
Один из ключевых принципов работы новой системы — тепловые карты. Для отображения плотности размещения различных объектов или событий, например, исторической ретроспективы ДТП на улицах города или доступности социальной инфраструктуры по районам, используется специальная с различной интенсивностью подсветки различного цвета.
Это очень важно, чтобы, например, учитывать участки дорог с частыми ДТП и затем проводить ремонтные или другие работы именно там, где фиксируется наибольшее количество ДТП, там где есть человеческие жертвы. Тепловая карта помогает найти самые острые зоны для приоритетных работ, ведь ресурсы дорожных служб ограничены.
Урбанистический модуль
Урбанистический модуль был разработан еще в 2014 году в Петербурге для анализа территорий и сравнения муниципалитетов. Он служит для мониторинга комфортности проживания в городских кварталах. Математическая модель, лежащая в основе индекса комфортности, учитывает автомобильную и пешеходную доступность городских объектов: метро, торговых центров, продуктовых и иных магазинов, школ, детских садов, медицинских учреждений, вокзалов и так далее. В качестве исходных данных берется также граф автомобильного передвижения, пешеходный граф и, желательно, граф движения общественного транспорта.
В специальном разделе веб-приложения пользователь может настроить показатели комфортности проживания. На визуализации ниже — интерактивная карта с кварталами, разукрашенная в различные цвета, в зависимости от балла сводного индекса комфортности. Красный цвет — низкий индекс комфортности, зеленый — высокий. Таким образом, выставляя и настраивая профиль своих интересов, можно учесть взаимное влияние факторов по кварталам города и понять, на сколько обеспечены (или не обеспечены) отдельные кварталы благами города и принять важные управленческие решения. Также на карте можно отследить, насколько люди далеко живут от ключевых объектов, что можно сделать для того, чтобы им удобнее стало добираться до различных учреждений.
На пути к цифровому двойнику города
Вместе с разработкой системы также проектировался и строился ситуационный центр Ташкента. Можно сказать, что это самый сложный компонент — причем не только из-за высоких требований безопасности, но и из-за наличия большого количества систем интегрированных друг с другом и рабочих мест в одной зоне.
ГИС ГРАФИТ подключен к большому центральному экрану как мониторы 94 рабочих станций со сдвоенными экранами. На них развернут сути видеосервер Crestron. Рабочие места операторов — это тонкие клиенты. Они работают через закрытую сеть через МСПД (межведомственную сеть передачи данных), к которой физически — проводными соединениями — подключены все государственные органы города.
Как единая точка анализа всей информации наш ситуационный центр выполняет не только оперативные задачи, но, что еще важнее, является базисом для стратегического городского планирования. Аналитики могут решать инвестиционные задачи, прогнозировать изменение городской среды, наблюдать за характеристиками и метриками городского ландшафта. Таким образом, сегодня мы идем по пути формирования цифрового двойника Ташкента.
Работа, конечно, еще не закончена. У нас впереди интеграция еще 10+ сервисов, подключение новых пользователей и ведомств, которые еще не охвачены системой. Но все это стало возможно за счет тонкой настройки взаимодействия систем и четкой приверженности микросервисной архитектуре — иначе бы мы давно утонули в текущих сложностях монолита. В следующем посте я подробнее расскажу о том, как мы развертывали, настраивали и интегрировали платформы Visiology и Геоинтеллект. Оглядываясь назад, я уверен, что этот опыт может оказаться полезным всем тем, кто сегодня создает свою геоинформационную систему или встраивает в свои бизнес-процессы BI-инструменты Visiology.
Комментарии (7)
yoz
20.04.2022 13:44+3Интересная карта с возрастом домов. Наглядно видны районы застройки по поколениям. Хорошая работа!
shuguroff
20.04.2022 14:12+2Не могу пройти мимо, душа болит за город, в котором родился и прожил 26 лет, хотя последние 5 лет живу в московской области. И приезжая 1-2 раза в год вижу насколько ухудшилась инфраструктура и логистика за последние 5 лет: людей, домов и машин стало больше, а понимания как с этим работать не появилось.
К сожалению, мало получить красивую картинку и смотреть на нее. Нужно еще делать выводы, принимать решения и что-то менять. Например открыть для себя дорожную разметку, таймеры и стрелочки на светофорах.
Удивила карта ДТП, так как в большинстве случаев люди стараются договориться на месте без звонка в милицию, а в мелких дтп так и вообще могут разъехаться просто пожав друг другу руки. Полнота и достоверность данных под очень большим вопросом.
brucewayneorjustahror Автор
20.04.2022 14:38+2У нас тоже то самое с душой. По этому делаем. Наша задача, сделать так, что бы у людей принимающие решение были ясные данные без шума. Прозрачно об этом показать и донести до каждого. Всё стало больше в многократном размере при том, что растёт город очень быстро. Понимание как с этим работать есть, успеть бы.
Все эти красивые картинки конечно не для того, что бы сквозь пальцы на них смотреть. Данных так много, что красивая картинка не помешает, главное , что бы была удобной и доходчивой для того, что бы принять правильное решение. Таймеры и стрелочки тоже будут, главное понять где и как (просто поставить, что бы потом говорить хотели как лучше , а получилось как всегда... ну кому это хочется), это уже работа проектировщиков и архитекторов.
Карта ДТП должна показывать серьёзные очаги где пострадали люди, это в первую очередь. Нужно не, что бы знать, а для того что бы там где это случилось поставить лучше освещение (большинство из них бывает ночью), грамотнее поставить освещение, спроектировать дорогу так, что бы водитель не мог там повышать скорость (не надеется на его страх о штрафе), так что бы в первую очередь пешеходу было удобно и безопасно передвигаться по городу, а потом всем остальным. Те кто договариваются на месте в основном не большие аварии которые могут даже создать шум при принятии решений для проектирования дорог и улиц, для статистики было бы полезно их тоже фиксировать, но для принятия решений не дают эти данные ничего.
Ivan_2424
20.04.2022 16:36+3Не думал, что что-то подобное можно сделать с помощью российских BI-систем. Показать диаграммы, конечно все могут. Но здесь, кажется, требовалась глубокая интеграция, подтянуть источники данных и обновлять их. Казалось, для этого нужно как минимум какой-нибудь PowerBI или Qlik использовать... Вот прямо удивили, что наши это умеют, чессслово.
ViAndrey
20.04.2022 17:49+1По крайней мере в части дашбордов, эксперты оценили повторяемость визуалистики PowerBI в 98% - вот тут: https://habr.com/ru/company/visiology/news/t/661827/
sinyashin
21.04.2022 13:41+2Как же приятно было почитать! Спасибо, что делаете. Спасибо что стараетесь. Конечно, хочется, чтобы эффект от внедрения показал себя поскорее!
Mudrist
Похоже, Ташкент обскакал российские города по импортозамещению на базе российского ПО...