Нейронные сети в архитектурном проектировании: обзор рынка и несколько экспериментов

от автора

Привет, Хабр!

Меня зовут Артур Ишмаев, я работаю руководителем группы автоматизации проектирования в компании ПИК. Сейчас я изучаю возможности применения в архитектурном проектировании нейросетей и вместе со своей командой пробую кое-что на практике. 

В статье хочу поделиться полезными инсайтами и показать инструменты, которые нам понравились, которые мы доработали и используем сегодня в наших проектах.

Начну с описания нашей инфраструктуры и актуального инструментария.

Немного о нашей платформе

Моя группа несколько лет занимается автоматизацией архитектурного и градостроительного проектирования. Эту идею мы реализуем представляем в виде платформы R2 — десктопного программного решения, включающего набор инструментов для ускорения и автоматизации различных задач.

рис 1. Платформа R2, состав продукта

рис 1. Платформа R2, состав продукта

ПИК – один из крупнейших российских девелоперов, поэтому у нас есть возможность изучать большое количество обезличенных пользовательских данных для обучения нейросетей. А ещё у нас есть богатый набор инструментов проектирования, которые  объединены в несколько модулей:

  1. R2.Градостроительный. Здесь собраны решения для моделирования вариантов архитектурно-градостроительного анализа и оценки потенциала площадки.

  2. R2.Колористика. Включает решения для моделирования раскладки кирпичей на навесных панелях, генерации рабочей документации по архитектурно-колористическим решениям.

  3. R2.Схемы видов из окна. Это сервис генерации схем видов из окна для размещения на сайте продаж с возможностью интеграции с CRM.

  4. CloudLab. Включает анализ качества отделки, модуль контроля качества строительства и отделочных работ.

  5. R2. Модуль. Включает генератор типовых этажей зданий и трассировку инженерных сетей.

рис 2. Платформа R2, набор инструментов проектирования

рис 2. Платформа R2, набор инструментов проектирования

Наша команда разрабатывает инструменты с нуля, начиная с системы команд и CAD-инструментария. Поэтому мы полностью автономны в реализации и развитии продукта — в том числе, в области экспериментов с машинным обучением и нейронными сетями. Это актуально в связи со сложностью решаемых задач на этапах проектирования. Существующих методов автоматизации и алгоритмизации процессов, не включающие в себя нейронные сети, недостаточно для их решения. Они способные покрывать лишь частные случаи.

Но перед тем, как пробовать решения на практике, я внимательно изучаю рынок и выбираю самое интересное.

Как я исследовал рынок и искал идеи для экспериментов

Изучая нейросети, я придерживаюсь следующего плана действий:

  • Оцениваю, насколько те или иные нейросети способны решать реальные задачи проектирования.

  • Изучаю существующие решения на основе подходящих нейросетей в программных продуктах и открытых источниках. 

  • Пробую применить некоторые из них для решения конкретной задачи.

В начале своего исследования я внимательно изучил публикации за 2018–2024 гг. Именно этот в этот период начинает формироваться подход применения технологий ИИ в сфере проектирования. Оказалось, многие авторы активно работают над задачами и экспериментируют. Применение нейросетей в области архитектурного и градостроительного проектирования быстро набирает обороты.

Ряд попыток применения нейронок нацелен на анализ накопленных данных — как в цифровом виде, так и в бумажном. Интересны, например, эксперименты по оцифровке бумажных чертежей для их последующего переиспользования. А в масштабе города — автоматический анализ картографических данных, выявление транспортного пешеходного каркаса, анализ территории и ее классификация. 

Другой крупный блок публикаций посвящен попыткам генерировать планировочные решения квартир и жилых домов. Немало работ связано с работой над упрощением процесса заполнения архитектурного пространства элементами мебели.

Примечательно, что исследователи затрагивают как конкретные понятия и задачи, так и абстрактные категории. Пример — попытки выявить неявные признаки городской среды, обучая нейронные сети генерировать абстрактные картинки с характерными признаками того пространства, которое лежало в основе обучения модели. Некоторые работы (пример — GAN Loci) пытаются определить уникальность городской среды и ее айдентику.

рис 3. Исследование применения нейронных сетей в проектировании

рис 3. Исследование применения нейронных сетей в проектировании

Изучив публикации, я выделил три основные области применения нейросетей в проектировании: 

  • Архитектурное эскизирование и генерация;

  • Аналитика и прогнозирование;

  • Ассистирование и помощь.

Расскажу о каждом блоке подробнее — с примерами технологий и выдержками из нашего опыта.

Архитектурное эскизирование

Решения, которые заинтересовали меня и мою команду в этой области — популярная Stable Diffusion и другие генераторы на базе диффузионной модели. Мы решили добавить в набор инструментов несколько сценариев на их основе.

Начнем с самого просто — генерации эскизов по текстовому описанию.

Мы реализовали интерфейс и отдельное рабочее пространство, в котором оставили необходимый набор настроек при генерации, возможность выбора модели и расширений. 

рис 4. Платформа R2, интерфейс эскизирования на основе Stable Diffusion

рис 4. Платформа R2, интерфейс эскизирования на основе Stable Diffusion

Следующий вариант использования Stable Diffusion — генерация ракурсных видов по текстовому описанию и положению камеры. Это динамический инструмент эскизирования в режиме реального времени.

В нашем варианте присутствует блок настроек с различными видами контроля: чтением этажности, игнорированием отдельных объектов и возможностью акцентирования на них.

Помимо текстового описания, есть возможность использовать референсную картинку. 

рис 5. Платформа R2, интерфейс эскизирования на основе Stable Diffusion

рис 5. Платформа R2, интерфейс эскизирования на основе Stable Diffusion

Отдельным сценарием мы проработали генерацию текстур с помощью Stable Diffusion, с возможностью учета этажности и габаритов и примеркой текстур на объекты.

Для реализации этого сценария необходимо расширить возможности контролирования результата, так как каждый объект может быть уникальным по форме. Для корректной генерации текстуры нужна развертка объекта текстурирования.

рис 6. Платформа R2, интерфейс эскизирования на основе Stable Diffusion

рис 6. Платформа R2, интерфейс эскизирования на основе Stable Diffusion

Все эти инструменты помогли значительно расширить наш художественный арсенал.

Инструменты генерации

Генеративные возможности ИИ стали бурно развиваться с появлением состязательных нейронных сетей (GAN). Важная особенность — они способны определять признаки архитектурных сущностей при генерации.

Первым интересным результатом стала нейросеть ArchiGAN (в интернете присутствует много названий и упоминаний), которая генерирует планировочное решение квартиры или дома по пятну с опционально расположенными окнами и дверным проемом.

Проектирование плана этажа делится на три этапа: определение формы здания, распределение функциональных зон и расстановка мебели. Для выполнения каждой из этих задач используется отдельная модель Pix2Pix GAN.

рис 7. Генерация планировки квартиры в 3 этапа на основе Pix2Pix моделей

рис 7. Генерация планировки квартиры в 3 этапа на основе Pix2Pix моделей

Обученная на существующих решениях нейронная сеть способна понимать неявные и явные признаки, которые учитывают при создании архитектурных решений. Этот принцип мы попробовали спроецировать на другую задачу — генерацию функционального зонирования мастер плана по контуру участка и окружению.

рис 8. Платформа R2, генерация функционального зонирования с ручной проработкой на основе Pix2Pix модели

рис 8. Платформа R2, генерация функционального зонирования с ручной проработкой на основе Pix2Pix модели

В результате работы нейросети получается растровое изображение, которое может служить ориентиром при разработке планировки. Однако оно не предусматривает векторизации и не может работать с более сложным шифрованием исходных данных

 Вся информация передается и получается через RGBA-каналы. При преобразовании зонирования в объекты необходимо учитывать все критерии создания, как и при реальном проектировании.

Чтобы улучшить понимание нейросетью исходных данных и результатов генерации, мы начали искать более продвинутые решения.

Чтобы добиться лучшего результата, процесс генерации можно разбивать на этапы, реализуя каждый шаг с помощью отдельно обученной нейросети. Пример — проект генерации интерьера зданий MIQP-based Layout Design for Building Interiors. Здесь определяются важные ограничения, как по масштабу так и по форме.

рис 9. Этапы генерации интерьера здания

рис 9. Этапы генерации интерьера здания

Еще один интересный пример поэтапного подхода, но с алгоритмами векторизации — метод для создания планов этажей Data-driven Interior Plan Generation for Residential Buildings. Для жилых зданий реализован 2-этапный подход генерации, который имитирует процесс проектирования человеком. Сначала размещаются комнаты, а затем автоматически адаптирующиеся к границам здания стены.

рис 10. Этапы генерации планировки

рис 10. Этапы генерации планировки

Наконец, существует Graph2Plan — глубокая нейронная сеть, преобразующая граф планировки вместе с границей здания в поэтажный план, соответствующий ограничениям.

Обученная на наборе данных из 80 тысяч размеченных поэтажных планов, Graph2Plan позволяет получать планы этажей на основе заданных границ и ограничений планировки.

рис 11. Принцип работы Graph2Plan

рис 11. Принцип работы Graph2Plan
рис 12. Принцип работы Graph2Plan

рис 12. Принцип работы Graph2Plan

Двигаемся дальше — и вводим понятие GNN, графовая нейронная сеть. Ее преимущество — способ шифрования внутренней структуры архитектурной сущности напрямую, с помощью графа связи элементов (в данном случае, помещений).

Яркий пример — нейронки HouseGAN и HouseGAN++. Это генераторы планировок. В качестве исходных данных подается только граф расположения помещений, а в результате получаются решения, которые соблюдают граф в свободном контуре.

рис 13. Принцип работы HouseGAN на основе графа помещений

рис 13. Принцип работы HouseGAN на основе графа помещений
рис 14. Платформа R2, генератор планировок на основе HouseGAN++

рис 14. Платформа R2, генератор планировок на основе HouseGAN++

Но тут мы сталкиваемся с отсутствием ограничения по контуру. Поэтому логично предположить, что лучший результат можно получить, если совместить описанные в этой части подходы.

Подобные опции присутствуют в нейронной сети Wallplan.

рис 15. Принцип работы Wallplan

рис 15. Принцип работы Wallplan

Это тоже графовая нейронная сеть, но она умеет опционально учитывать ограничения в виде несущих стен, положений окон, входной двери и контура. Также при отсутствии графа модель способна сама его генерировать.

Эту опцию разработали и улучшили в отдельной модели BubbleFormer.

рис 16. Результат работы BubbleFormer

рис 16. Результат работы BubbleFormer

Собрав воедино все эти знания и опыт, мы реализовали собственный экспериментальный функционал для генерации планировочных решений.

Результаты не идеальные, но зато мы поняли, как можно учитывать ограничения и множество исходных данных при решении такой сложной задачи. И как добавлять новые ограничения.

рис 17. Платформа R2, генерация планировочных решений

рис 17. Платформа R2, генерация планировочных решений

Чтобы расширить понимание универсальной применимости данного подхода, мы попытались решить с помощью этой нейронки задачу функционального зонирования территории, добавив несколько надстроек.

Мы скомбинировали 2 модели, Wallplan и Deeplayout. На вход принимались контур участка и окружение. В результате получалось деление участка на функциональные зоны. 

После генерации зоны наполняются архитектурными объектами с учетом ограничивающих факторов: инсоляции, допустимых расстояний и технико-экономических требований.

рис 18. Платформа R2, генерация функционального зонирования

рис 18. Платформа R2, генерация функционального зонирования

Помимо работы с генерацией 2D-объектов, графовые нейронные сети позволяют перейти в 3D-генерацию. Пример — нейросеть Building GAN. 

На вход Building GAN подаются поэтажные графы связности зон здания. На выходе получается примитивная 3D-модель. Авторы презентуют возможность получить примитивную BIM-модель. Такие опции мы еще не реализовали.

рис 19. Поэтапный принцип генерации Building GAN

рис 19. Поэтапный принцип генерации Building GAN
рис 20. Платформа R2, генерация 3D-объема здания

рис 20. Платформа R2, генерация 3D-объема здания

И в завершение блока про генерацию упомяну об одной из последних интересных разработок, являющуюся развитием подхода HouseGAN/HouseGAN++ — это нейросеть House Diffusion.  Для решения задачи генерации плана этажа применили диффузионную модель и это, как мне кажется, позволит избавиться от ограничений прямоугольности, которое было в предыдущих моделях. Выглядит очень перспективно.  На вход подается лишь информация об узлах и их связях.

рис 21. Принцип генерации House Diffusion

рис 21. Принцип генерации House Diffusion

Задачи аналитики и прогнозирования

Последний блок задач, который затронут в исследовании и наших экспериментах — прогнозирование и аналитика. 

Среди существующих решений можно отметить нейросеть DaylightGAN. Вот так она пытается решить задачу анализа естественного освещения в помещении.

рис 21. DaylightGAN

рис 21. DaylightGAN

Другой проект, ComfortGAN, исследует проблемы прогнозирования теплового комфорта внутри здания. 

Также на рынке присутствуют нейронки, которые помогают в анализе ветровых нагрузок, инсоляции, в конструктивных расчетах. Данные типы анализа при применение нейронных сетей также являются лишь способом экстраполяции данных. Наиболее эффективным является создание максимально точной математической модели.

Мы в свою очередь делаем упор на решение задачи инсоляции и прогнозировнии ее расчетов в масштабах городской среды.Подобные задачи требуют высокой точности, нельзя целиком полагаться на нейросети. Но они могут ускорить процесс анализа и сформировать общее представление перед более детальным ручным расчетом. 

Помимо решения задач анализа физических характеристик нейросети применяют и для анализа абстрактных категорий среды. Это связано с историческим влиянием, сложными неявными связями возникающими в городах, которые очень сильно влияют на формирование удобной городской среды.

Попыткой такого анализа является проект GAN Loci, созданный для анализа неявных свойств среды, оценки её идентичности.В проекте используется обучение нейросети StyleGAN/StyleGAN2.

рис 23. Результат генерации GAN Loci

рис 23. Результат генерации GAN Loci

Еще одним подобным примером является проект CityClass project. В рамках него авторы пытаются распознать образы городской среды на спутниковых снимках.

Мы также попробовали поработать с нейросетями, которые используют подобные проекты и попытались обучить нейросеть StyleGAN2 на фасадах исторической застройки города Уфа и окружающей ее природы. Целью было попытаться смешать городскую историческую среду и природу для формирования новых образов.

рис 24. Результаты генерации StyleGAN2

рис 24. Результаты генерации StyleGAN2

Немного о перспективах и планах

В дополнение стоит упомянуть еще несколько интересных решений, которые могут быть полезны в проектировании — и которые мы сами обязательно попробуем на практике.

Первое — это генерация BIM-модели по текстовому запросу с помощью Text2BIM. Второе — эскизирование в 3D с использованием Instant Mesh, Tripo 3D и подобных нейросетей, которым на вход можно подавать как изображение, так и текстовый промпт.

Сегодня с помощью нейросетей решают все больше задач проектирования. Конечно, не стоит ожидать чудесного результата от нажатия одной кнопки, но некоторые процессы могут быть значительно ускорены.

С помощью нейронных сетей проектирование становится лучше и проще, мы получаем более комфортную среду для жизни — и это главное 🙂


ссылка на оригинал статьи https://habr.com/ru/articles/861374/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *