Научная статья на тему 'ИСПОЛЬЗОВАНИЕ ЭВОЛЮЦИОННЫХ АЛГОРИТМОВ ДЛЯ АВТОМАТИЗАЦИИ РУТИННЫХ ЗАДАЧ ПЕРЕБОРА ВАРИАНТОВ ПРОЕКТНЫХ РЕШЕНИЙ'

ИСПОЛЬЗОВАНИЕ ЭВОЛЮЦИОННЫХ АЛГОРИТМОВ ДЛЯ АВТОМАТИЗАЦИИ РУТИННЫХ ЗАДАЧ ПЕРЕБОРА ВАРИАНТОВ ПРОЕКТНЫХ РЕШЕНИЙ Текст научной статьи по специальности «Математика»

CC BY
430
59
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ГЕНЕТИЧЕСКИЙ АЛГОРИТМ / ЭВОЛЮЦИОННЫЙ РЕШАТЕЛЬ / ОПТИМИЗАЦИЯ ПРОЕКТНЫХ РЕШЕНИЙ

Аннотация научной статьи по математике, автор научной работы — Князева Н. В.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

APPLICATION OF EVOLUTIONARY ALGORITHMS FOR AUTOMATED ROUTINE TASKS OF ENUMERATING DESIGN OPTIONS

The level of elaboration and accuracy of projects increases from year to year due to the introduction of digital processing of information at each stage of decision-making. Specialists in the construction industry find a variety of opportunities to use tools for processing a large amount of data, used to solve the problems of finding the optimal solution at each stage of the object's life cycle. The article presents an approach to automating the design of routine tasks that require choosing the best of a variety of possible solutions, using the most common evolutionary solvers in the Grasshopper environment. If five years ago this approach was used mainly by architects to create complex geometry, today this area is of interest to designers and employees of other departments of construction organizations.

Текст научной работы на тему «ИСПОЛЬЗОВАНИЕ ЭВОЛЮЦИОННЫХ АЛГОРИТМОВ ДЛЯ АВТОМАТИЗАЦИИ РУТИННЫХ ЗАДАЧ ПЕРЕБОРА ВАРИАНТОВ ПРОЕКТНЫХ РЕШЕНИЙ»

Испано-технический журнал A¿ac;

13. Жидко E.A., Попова Л.Г. Информационная безопасность: концепция, принципы, методология исследования. - Воронеж: ВГАСУ, 2013. -183 с.

14. Давыдов А.Е., Максимов Р.В., Савицкий O.K. Защита и безопасность ведомственных интегрированных инфокоммуникацион-ных систем: Монография. -М.: Воентелеком, 2017. 536 с.

15. Толстых H.H. Пятунин А.Н., Марейченко И.В., Слепов Ю.И., Павлов В.А. Принципы раннего обнаружения признаков конфликтного режима взаимодействия автоматизированных телекоммуникационных комплексов // Теория и техника радиосвязи, 2004. № 2. С.95-99.

16. Чикин М.Г. Особенности использования аппарата полумарковских процессов для оценки эффективности радиоподавления направлений радиосвязи // Радиотехника, 2005. № 6. С. 75-79.

© А. П. Лапшин, Е, А Жидко

Ссылка /ум цитирования:

Лапшин А. П., Жидко Е. А. Средства и способы обеспечения живучести наземных критически важных объектов авиации от информационно-технических воздействий // Инженерно-строительный вестник Прикаспия : научно-технический журнал / Астраханский государственный архитектурно-строительный университет. Астрахань : ГАОУ АО ВО «АГАСУ», 2021. № 3 (37]. С. 67-73.

УДК 004.558

DOI 10.52684/2312-3702-2021-37-3-73-77

ИСПОЛЬЗОВАНИЕ ЭВОЛЮЦИОННЫХ АЛГОРИТМОВ ДЛЯ АВТОМАТИЗАЦИИ РУТИННЫХ ЗАДАЧ ПЕРЕБОРА ВАРИАНТОВ ПРОЕКТНЫХ РЕШЕНИЙ

Н. В. Князева

Научно-исследовательский университет Московского государственного строительного университета, г. Москва, Россия

Уровень проработки и точности проектов растет год от года благодаря внедрению цифровой проработки информации на ка>вдом этапе принятия решения. Специалисты строительной отрасли находят разнообразные возможности использования инструментов обработки большого количества данных, применяемые для решения задач поиска оптимального решения на каждом этапе жизненного цикла объекта. В статье приводится подход к автоматизации проектирования рутинных задач, требующих выбора лучшего из множества вариантов возможных решений, с использованием наиболее распространенных эволюционных решателей в среде Grasshopper. Если еще пять лет назад подобный подход использовался в основном архитекторами для создания сложной геометрии, то сегодня данное направление представляет интерес и для конструкторов, и для работников других подразделений строительных организаций. Ключевые слова, генетический алгоритм, эволюционный решатель, оптимизация проектных решений.

APPLICATION OF EVOLUTIONARY ALGORITHMS FOR AUTOMATED ROUTINE TASKS OF ENUMERATING DESIGN OPTIONS

N. V. Knyazeva

Research University of Moscow State University of Civil Engineering, Moscow, Russia

The level of elaboration and accuracy of projects increases from year to year due to the introduction of digital processing of information at each stage of decision-making. Specialists in the construction industry find a variety of opportunities to use tools for processing a large amount of data, used to solve the problems of finding the optimal solution at each stage of the object's life cycle. The article presents an approach to automating the design of routine tasks that require choosing the best of a variety of possible solutions, using the most common evolutionary solvers in the Grasshopper environment. If five years ago this approach was used mainly by architects to create complex geometry, today this area is of interest to designers and employees of other departments of construction organizations. Keywords, genetic algorithm, evolutionary solver, optimization of design solutions.

Алгоритмическое моделирование (называют еще «вычислительным проектированием») набирает популярность во всем мире благодаря возможности выполнения большого количества различных задач с определенными входными параметрами, условиями, критериями работы и ограничениями поиска решений. С помощью алгоритма описывается весь процесс создания объекта: посредством совокупности инструкций осуществляется переход из одного состояния в другое до момента достижения искомого результата [1]. Развитие платформ визуального программирования происходило в том числе благодаря разработке плагина Explicit History для RhinoSD - программного обеспечения для трехмерного NURBS-моделирования, нашедшего применение среди архитекторов, промышленных дизайнеров и др. [2-4]. Новое приложение открыло возможность сохранять дерево исто-

рии для редактирования геометрии и стало прототипом мощного редактора визуального программирования Grasshopper. Его пользователи создали глобальное сообщество для общения со специалистами, обучения и обмена наработками. Ведущие разработчики CAD и BIM программ стремились внедрить вычислительные модули в свои системы, поэтому для интеграции с Grasshopper были созданы расширения ARCHICAD Live Connection, Tekla Live Link, плагины GH_SapfirComponent и др.

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

Создание параметрической модели с помощью алгоритмических инструментов в цифровой среде открыло возможность применения автоматической генерации вариантов решений - генеративного дизайна. При этом работают с различными технологиями: от эволюционных алгоритмов до агентных систем [5].

Область эволюционных вычислений возникла на стыке биологии (генетики) и прикладной математики. Первые упоминания об эволюционных решателях и генетических алгоритмах относятся к началу 60-х годов, а к 80-м эволюционные принципы вошли в обиход, однако оставались инструментом программистов. Развитие процессов эволюционного программирования связано с именами таких ученых как Л. Фогель, А. Оуэне, М. Уолш. Исследованиям в области применения эволюционных и генетических алгоритмов в архитектуре, а также для оптимизации строительных конструкций посвящены работы Н. Салингароса, Э. Хай-мана, А. Г. Юрьева, И. Н. Серпик [6].

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

шах {/(х): х 6 X}, [4],

где X - пространство решений, х - элемент пространства решений.

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

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

• Fitness Function - это цель, к которой мы стремимся или эволюционная приспособленность;

• Selection Mechanism - селекция - естественный отбор - влияет на направление развития генофонда;

• Coupling Algorithm - сцепление - поиск партнера по геномному расстоянию;

• Coalescence Algorithm - коалесценция - гены в эволюционных решателях ведут себя как числа с плавающей запятой, которые могут принимать все значения между двумя числовыми экстремумами, поэтому важен механизм наследования;

• Mutation Factory - мутация - механизм внесения биологического разнообразия популяции.

Генетические алгоритмы часто используются при проектировании объектов капитального строительства сложной геометрии, отдельных

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

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

Зададим контур объекта с помощью полилинии в среде Rhino (можно контур также передать из ARCH1CAD], С помощью нода Number Slider добавим изменяемый параметр поперечной привязки крана. Создадим новую кривую, отступая от базовой на указанную дистанцию во внешнем направлении с помощью Offset Curve Loose. Это будет опорная линия, на которой будем искать точку расположения крана. Разделим ее на множество отрезков Divide Curve, чтобы получить массив возможных точек (чем больше будет задано отрезков, тем точнее будет определено место размещения крана, а в случае необходимости, часть точек может быть выведена из рассмотрения]. Для анализа нам потребуются точки углов - контрольные точки кривых Control Points,

Теперь выберем из массива точек одну (List Item] и от нее к контрольным точкам объекта построим линии (Line], определим их длину (Length] и сложим все длины (Mass Addition],

Подключим эволюционный решатель с помощью Galapagos таким образом: выход Genome -геном или переменные к Number Slider, определяющий точку на опорной линии, выход Fitness -целевая функция к Mass Addition - сумме длин от этой точки до контрольных точек [7]. То есть перебирая множество вариантов расположения точки (в примере их 10000], будет производиться поиск наименьшего значения суммы длин (рис. 1].

Points

Curve 5 * Weights

Knots

List

Count ^ Tangents ' r* index i

Kinks Parameters » \ Wrap

17%

1 *

/ Line

Ц Curve Д8 Length

Рис. 1. Настройка скрипта для расчета

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

Теперь изменяя контур объекта и величину привязки, можно находить оптимальное расположение точки. Дополнительно настроим проверку длины вылета стрелы крана и цветовую индикацию линий, превышающих заданную длину. Для этого допишем с помощью Python Script проверку условия, а также нодами Cull Pattern и Custom Preview визуализацию результатов проверки (рис. 3].

Главный недостаток Galapagos - это невозможность подключения нескольких разных целевых функций, хотя во многих источниках выделяют еще одну очень существенную проблему - эволюционные алгоритмы очень медленны [8]. Альтернативным плагином является Wallacei - эволюционный механизм многоцеле-

выбранной особи (2 точки на нем - это координаты нашей искомой точки], точками и красными крестиками показывается количество отобранных и забракованных особей (рис. 2].

X Stop Solver ©g© О

$ Reinstate

7075336_ С

вой оптимизации, позволяющий получить доступ к данным на разных этапах расчета [9-10]. В рамках данного исследования приведенный выше пример был рассчитан с использованием Galapagos и Wallacei при условии одинаковых входных параметров. Дополнительно в обоих случаях в эволюционные решатели в качестве подбираемых параметров было задано еще и число отрезков, на которые делится опорная линия. В результате получены одинаковые значения точки расположения крана и соответственно одинаковое количество отрезков разбиения и одно и тоже суммарное значение длин вспомогательных линий от точки до контрольных точек строящегося объекта (рис. 4].

Galapagos Editor Options Solvers Record @ Start Solver

m

1 2 3 4 5 6 7 8 9 It 13 IS 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55

Display ^QQ О g

Рис. 2. Результат работы Galapagos

Научно-технический журнал

I Grasshopper Python Script Editor File Edit Tools Mode He

► Test ВЛ OK

И I &

4> I»

: The у script variable t!

t The a output variable

IJT 6 & 9 ад

cï о о 8а □î

iff О m

Рис. 3. Проверка на соответствие длин

Рис. 4. Результат вычислений с использованием Galapagos и Wallacei.

Процесс вычисления при стандартных настройках эволюционных решателей занял 4 минуты для Galapagos и 12 минут для Wallacei. Однако для решения более сложных задач важно наличие развернутой аналитики, возможности вывода подробной визуализация результатов и статистики, доступ к которой имеется только у второго плагина.

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

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

Список литературы

1. Никое А. Салингарос Алгоритмическое проектирование для устойчивого развития (Algorithmic sustainable design) Двенадцать лекций по архитектуре Выдержки из курса (knigi-x.ru) [Электронный доступ] URL: http://net.l<nigi-x.ru/24tehnichesHe/862453-l-nikos-sahngaros-algoritmicheskoe-proektirovanie-dlya-ustoychivogo-razvitiya-algorithmic.php (Дата обращения: 22.01.2021).

2. Grasshopper. Учебник для начинающих. Основы. Редакция У3.2ю. Автор перевода Дмитрий Булка. [Электронный доступ] URL: https://rhino-help.com/help/GrasPrim/Grasshopper Primer V3-2(RUS).html (rhino-help.com) (дата обращения: 04.03.2021).

3. Обзор программы Grasshopper [Электронный доступ] URL: https://junior3d.ru/article/grasshopper.html (дата обращения: 04.03.2021).

4. Robert Aish, Sean Hanna Comparative evaluation of parametric design systems for teaching design computation [Электронный доступ] URL: https://www.sciencedirect.com/science/article/pii/S0142694X17300327 (дата обращения: 04.03.2021).

На1}чно-технический журнал AZ™

5.5. Зачем использовать GRASSHOPPER Часть 2. Проектирование [Электронный доступ] URL: https://softculture.cc/blog/entries/articles/zachem-ispolzovat-grasshopper-proektirovanie (дата обращения: 21.01.2021].

6.6. Еремеев, А. В. Генетические алгоритмы и оптимизация: учебное пособие / А. В. Еремеев. — Омск : ОмГУ, 2020. — 50 с. — ISBN 978-5-7779-2439-1.— Текст: электронный// Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/136351 (дата обращения: 21.01.2021].

7.Corns, D., Dang, D., Eremeev, A.V., Lehre, P.К., "Level-Based Analysis of Genetic Algorithms and Other Search Processes", IEEE Transactions on Evolutionary Computation, 2017 [Электронный доступ] URL: http://www.doiserbia.nb.rs/img/doi/0354-0243/20'17/0354-02431700003E.pdf (дата обращения: 21.01.2021].

8. Дэвид Руттен. Эволюционные принципы, применяемые для решения проблем URL: https://webhamster.ru/mytetrashare/index/mtb372/1498801157mcnu9iwlny (дата обращения: 04.03.2021].

9. Evolutionary Principles applied to Problem Solving David Rutten [Электронный доступ] URL: https://www.grasshopper3d.com/profiles/blogs/evolutionary-principles (дата обращения: 21.01.2021).

10. An Evolutionary Multi-Objective Optimization and Analytic Engine for Grasshopper 3D [Электронный доступ] URL: https://www.wallacei.com/ (дата обращения: 21.01.2021).

© H. В. Князева

Ссылка дога цитирования:

Князева Н. В. Использование эволюционных алгоритмов для автоматизации рутинных задач перебора вариантов проектных решений // Инженерно-строительный вестник Прикаспия : научно-технический журнал / Астраханский государственный архитектурно-строительный университет. Астрахань : ГАОУАО ВО «АГАСУ», 2021. № 3 (37). С. 73-77.

УДК 519.862.6

D01 10.52684/2312-3702-2021-37-3-77-82

ПРИМЕНЕНИЕ ФУНКЦИИ РИСКА ДЛЯ МОДЕЛЬНОГО ОПИСАНИЯ КОЛЕБАНИЯ ЦЕН НА РЫНКЕ НЕДВИЖИМОСТИ

С. И. Носков, А. А. Хоняков

Иркутский государственный университет путей сообщения, г. Иркутск, Россия

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

Ключевые слова: рынок недвижимости, регрессия, функция риска, булевы переменные, частично булевое линейное программ ирование.

APPLICATION OF RISK FUNCTION TO MODEL DESCRIPTION OF PRICE FLUCTUATIONS IN THE REAL ESTATE MARKET S.1. Noskov, A. A. Khonyakov

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Irkutsk State Transport University, Irkutsk, Russia

The paper provides a brief overview of methods for modeling prices in the real estate market. The application of the risk function for the model description of price fluctuations in the residential primary real estate market is described. The prices for various building materials were used as independent variables: silicate wall blocks, reinforced concrete floor slabs, concrete, sand and gravel mixtures. The technique of organizing a competition of models for the risk function is described. The comparison criteria were the average relative approximation error and the trigger vector, on the basis of which the obtained model was analyzed. In addition to the piecewise linear model, a linear regression model with the same set of independent factors was built. Keywords: real estate market, regression, riskfunction, boolean variables, partially boolean linear programming.

Введение

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

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

Одна группа работ посвящена анализу факторов, оказывающих влияние на стоимость жилой недвижимости. Так в работе [1] проведено исследование и систематизация факторов, влияющих на изменение цены жилья на первичном рынке недвижимости. Предложена классификация факторов в зависимости от среды функционирования и степени зависимости. Выделяются внутренние факторы и факторы внешней среды. К внутренним факторам относятся трудовые ресурсы, организационные, производственные и финансовые показатели. Внешние факторы подразделяются на факторы косвенного воздействия (экономические, политические, правовые, международные, экологиче-

i Надоели баннеры? Вы всегда можете отключить рекламу.