Expert Decision Support System in the Field of Construction

Cover Page

Cite item

Full Text

Abstract

Methods of building a multidisciplinary expert decision support system in the field of construction have been developed. The architectural solution underlying the study is based on the theory of fuzzy sets. Software approaches to the design of specialized expert systems are considered, as well as the tasks solved by the decision support system at the stage of preparing an object for construction. The purpose of the study is to develop the architecture of an expert system consisting of logical inference systems and a set of interconnected fuzzy expert modules of the knowledge base. The objective of the research is to develop a generalized algorithm for the functioning of the expert system, the architecture of the knowledge base and a prototype of the software implementation of the expert system. As a result of the research, two software products have been developed in Python and a prototype in Matlab. Examples of interfaces and program code of the developed expert decision support system in the field of construction are given.

Full Text

Введение Строительная отрасль в России интенсивно развивается: внедряются новые методы как самого строительства, так и проектирования в нем различных систем, включая расчетные системы интеграции различных коммуникаций, аналитические системы выбора и обоснования инженерных решений. Актуальными становятся вопросы организации умных городов, оптимизации систем электроснабжения в многоквартирных домах, поддержки принятия решений для управления рисками, инвестиций в строительство и др. [1-6]. Поскольку объем новых знаний в строительной области стремительно увеличивается, встает задача их формализации,с тем, чтобы тиражировать и применять эти знания там, где не хватает специалистов (экспертов) в соответствующих областях (как правило, в узкопрофильных, специализированных обла-стях строительства). В разработке таких экспертных систем (ЭС) заинтересованы крупные подрядные и строительные организации, а также организации и органы государственной власти, которые занимаются проектированием многоквартирных жилых домов и планированием городских застроек. Порой из-за инженерных ошибок в строительной области построенный многоквартирный дом сдается с неверными техническими характеристиками и впоследствии признается подлежащим сносу. Это негативно сказывается на имидже строительных компаний и интересах инвесторов. Очевидно, что большинство ошибок происходит на этапе проектирования, в связи с чем представляется актуальным решить задачу эффективного хранения и передачи экспертных знаний в строительной области. Это позволит стабильно, с минимальным риском развивать и внедрять инженерно-технические решения [7]. Для выполнения поставленной задачи целесообразно применять методы машинного обучения и системы искусственного интеллекта, получившие в последние годы мощное развитие и широкое распространение. Следует отметить, что существенным ограничением для использования систем машинного обучения является обязательное наличие репрезентативной обучающей выборки. В то же время существуют экспертные системы, функционирующие на основе экспертных знаний. Именно их стоит использовать для создания программных продуктов и систем поддержки принятия решений для широкого круга инженерно-строительных задач. 1. Разработка архитектурыэкспертной системы поддержкипринятия инженерных решенийв области строительства В соответствии с результатами теоретических и прикладных научных исследований [8] архитектура экспертной системы включает следующие элементы: - модуль приобретения знаний; - базу знаний (правила логического вывода); - систему логического вывода; - интерфейс взаимодействия с пользователем; - модуль объяснения результатов. Согласно изученным теоретическим трудам [9-13] построение экспертной системы является итерационной процедурой, в которой когнитолог (инженер по знаниям), взаимодействуя с экспертами, итеративно пополняет базу знаний (БЗ), поддерживая экспертную систему в актуальном состоянии. Этот процесс реализуется методами инженерии знаний, в соответствии с которыми процесс создания экспертной системы начинается с установки предъявляемых к ней требований; анализа данных, полученных из открытых источников; сбора имеющихся знаний для определения необходимых характеристик объектов, задач, типов пользователей и пр. Одна из задач когнитолога - формализация знаний в той или иной модели их представ-ления (продукционной, фреймовой, логической и др.) с последующей постановкой задачи программистам. Таким образом, в процессе построения экспертной системы он взаимодействует с программистами, экспертами и другими источниками знаний для сбора информации и формирования базы знаний. Затем следует разработка базы знаний, вклю-чающая определение типа входных данных (например, текстовые документы и стандарты); возможных значений и взаимосвязи между переменными; методов представления знаний и логического вывода. Использование математического аппарата нечеткой логики при создании экспертных систем позволяет учитывать нелинейную зависимость между переменными и опираться на стохастические модели принятия решений, что способствует снижению вероятности ошибок. Обобщенная структурно-функциональная схема экспертной системы схематически представлена на рис. 1. Экспертная система состоит из следующих функциональных элементов: - базы знаний (на основе нечеткой логики); - блока приобретения знаний; - системы логического вывода; - пользовательского интерфейса. Система логического вывода обладает интерпретатором, что отличает ЭС от нейронных сетей. Посредством интерфейса пользователь получает доступ к знаниям и может интерпретировать полученные ответы экспертной системы в соответствии с БЗ и правилами логического вывода. База знаний ЭС связана с определенной проблемной областью строительства. Система логического вывода обеспечивает экспертную оценку и расчет численных характеристик строительных объектов. Такая система представляет собой программно-аппаратное ядро интеллектуальной информационной системы. В настоящей работе рассмотрен логический формат обработки информации, при этом по рассчитанным параметрам можно визуализировать пространственную модель посадки зданий. Для организации работы экспертной системы был разработан алгоритм, представленный на рис. 2. Рис. 1. Обобщенная структурно-функциональная схема экспертной системы И с т о ч н и к: выполнено А.А. Меркуловым Figure 1. Generalized structural and functional scheme of the expert system S o u r c e: made by A.A. Merkulov Рис. 2. Алгоритм функционирования экспертной системы поддержки принятия инженерных решений в области строительства И с т о ч н и к: выполнено А.А. Меркуловым Figure 2. The algorithm of functioning of the expert system for support of engineering decision-making in the field of construction S o u r c e: made by A.A. Merkulov Данный алгоритм не содержит циклов, так как все входные значения преобразуются в выходные посредством системы логических правил, содержащейся в базе знаний. В соответствии с разработанным алгоритмом по входным параметрам ЭС определяется вид логического вывода: четкий, нечеткий или комбинированный. Наличие модуля четкой логики обусловлено необ-ходимостью учета строго регламентированных правил и ГОСТов (в частности касающихся отступов зданий от соседних строений, линий связи и коммуникации, деревьев), а также других регламентированных параметров и нормативов. При этом одни и те же входные параметры могут соответствовать сразу нескольким модулям как в четкой, так и в нечеткой логике. Разработанная архитектура подразумевает, что часть входных переменных относится только к соответствующим модулям, а часть может применяться более чем в одном модуле. После того как по входам определены модули логического вывода, на выход системы подаются выходные значения, доступные пользователю через интерфейс ЭС. Обобщенная архитектура логического ядра экспертной системы поддержки принятия решений в области строительства схематически изображена на рис. 3. Она состоит из ряда подсистем, каждая из которых реализована на основе методов инженерии знаний и нечеткой логики. В разработанном прототипе ЭС используются разреженные связи между входными параметрами и соответствующими им модулями. Рис. 3. Многомодульная архитектура базы знаний экспертной системы поддержки принятия решений И с т о ч н и к: выполнено А.А. Меркуловым Figure 3. The multi-module architecture of the knowledge base of the expert decision support system S o u r c e: made by A.A. Merkulov Разработанная база знаний состоит из следующих экспертно-аналитических модулей: - ЭС расчета параметров лифтового оборудования; - ЭС расчета ориентации здания по сторонам света в зависимости от параметров инсоляции; - четырех ЭС расчета количества этажей в разных условиях городской застройки; - ЭС оценки технического состояния зданий и сооружений; - ЭС оценки инвестиционной привлекательности строительных объектов; - ЭС оценки инвестиционных проектов; - ЭС расчета инвестиционных рисков. По мере развития разработанной архитектуры экспертной системы возможно применение математического аппарата нечеткой логики для анализа выходных значений с последующим их использованием в качестве входных переменных других подсистем. Это полезно для выработки более точных рекомендаций по посадке зданий или другим техническим инженерным решениям. В таком случае ЭС будет иметь каскадную иерархическую структуру базы знаний. 2. Разработка программнойреализации экспертной системыподдержки принятия решенийв области строительства Прототип каждого расчетного модуля экспертной системы был выполнен на языке Matlab в пакете FuzzyLogic Toolbox, который позволяет определить входные и выходные переменные, их функции принадлежности и правила логического вывода. Для внедрения в практику разработанных экспертных систем использован язык программирования Python (библиотеки Pylab, Numpy, PySimpleGUI и Skfuzzy), на котором помимо баз знаний разработан графический пользовательский интерфейс. Данная программная реализация не зависит от сторонних разработчиков и может запускаться в различных операционных системах. Все разработанные базы знаний хранятсяв отдельных python-файлах, начинающихся с префикса baza_, которые можно использовать для редактирования правил вывода, лингвистических переменных и их функций принадлежности, а также для создания и отладки новых баз знаний для экспертных систем. Были разработаны две многопрофильные экспертно-аналитические системы «Посадка» и «Оценка», объединяющие группы экспертных модулей по назначению. Формат программного задания системы управления базы знаний: - имя лингвистической переменной с пре-фиксом _range задает диапазон изменения и шаг соответствующей переменной; - идентификаторы ctrl.Antecedent() и ctrl.Consequent() определяют входные и выходные переменные соответственно; - конструкция имя переменной [‘название функции принадлежности’] = fuzz.gaussmf(имя переменной_range, 4, 3) задает гауссовскую функцию принадлежности для лингвистической переменной с центром в точке 4 и шириной 3. Для треугольных функций принадлежности предусмотрена функция trimf. Таким образом, задаются функции принадлежности для всех переменных (параметры этих функций значительно влияют на работу экспертной системы); - для просмотра заданных функций следует использовать команду: имя переменой.view(); pl.show(); - правила вывода имеют вид «если …, то» и задаются в программе в формате: ctrl.Rule(переменная1[‘значение’] &переменная2[‘значение’], выходная переменная[‘значение’]), где знак & описывает условие «и» (для условия «или» следует формировать отдельные правила). После строки «if _name_ == '_main_':» следуют методы визуализации двумерных проекций поверхности отклика для отладки экспер-тной системы. В Приложении приведен фрагмент листинга программного кода базы знаний по расчету количества этажей в строительном объекте. Для программной реализации прототипа экспертной системы были использованы знания экспертов и информация, полученная из открытых источников. В соответствии с предлагаемой архитектурой разработанная ЭС состоит из набора специализированных модулей. Каждый модуль выполняет свои функции и сконструирован на основе экспертных знаний из соответствующей предметной области. С использованием методов инженерии знаний были выявлены все объекты предметной области и их взаимосвязи. Для этого инженер по знаниям проводил опрос среди экспертов и анализировал тематическую литературу. Таким образом, благодаря разработанной многомодульной структуре базы знаний, выбранным лингвистическим переменным и их значениям, а также входным и выходным переменным для каждой подсистемы логического вывода были определены переменные, необходимые для создания базы знаний многомодульной экспертной системы. На одном из этапов разработки были проведены подбор и определение лингвистических переменных и их функций принадлежности. Каждая переменная подвергалась анализу с целью определения диапазона ее значений и фор-мы функций принадлежности, что позволило создать основу для обоснованного логического вывода. Кроме того, были разработаны входные и выходные переменные для каждой подсистемы логического вывода, за счет чего можно удобным и структурированным образом передавать данные между модулями, используя фун-кциональные возможности базы знаний и решая узкоспециализированные задачи в области строительства, которые требуют наличия экспертных знаний. Следует отметить, что при эквивалентном наборе правил в БЗ разработанная многомодульная архитектура ЭС является более выгодной по сравнению с одномодульной, поскольку в многомодульном подходе каждый модуль имеет индивидуальный алгоритм дефаззификации [12]. Многомодульная архитектура БЗ позволяет более точно и гибко подстраивать выходные значения под каждую проблемную область в сфере строительства. Как уже было отмечено ранее, разработанная архитектура экспертной системы может расширяться и дополняться другими модулями. При этом некоторые объекты и правила вывода являются общими для разных модулей. По мере наполнения базы знаний экспертной системы число правил, входных и выходных переменных будет увеличиваться. Комплексный подход позволяет охватить максимальное количество аспектов строительства и масштабировать ЭС для приобретения и тиражирования знаний, необходимых для проектирования многоквартирных жилых домов, с учетом современных и актуальных требований и нормативов. В результате была создана программная реализация экспертной системы на языке Matlab, а также разработана усовершенствованная платформа «ПрогрессСтройЭксперт» с пользовательским интерфейсом на языке Python. Созданы все необходимые функции и классы для дальнейшего наполнения, отладки и совершенствования прототипа экспертной системы совместно со специалистами-экспертами. Программа выполнена в виде двух подпрограмм «Посадка» и «Оценка», интерфейс которых фрагментарно изображен на рис. 4, 5. После выбора входных значений в соответствующем модуле следует нажать кнопку «Рассчитать» для получения результатов расчета. На основе рассчитанных числовых значений можно выстроить 3D-модель дома на участке застройки. Также возможно добавление информации о близлежащих газопроводах, стоянках, деревьях и прочих сведений для определения требуемого отступа от границ участка. Рис. 4. Интерфейс многомодульной ЭС «Посадка» И с т о ч н и к: выполнено А.А. Меркуловым Figure 4. Interface of the multimodule ES “Landing” S o u r c e: made by A.A. Merkulov Рис. 5. Интерфейс ЭС «Оценка» И с т о ч н и к: выполнено А.А. Меркуловым Figure 5. The interface of the ES “Assessment” S o u r c e: made by A.A. Merkulov Исследование описывает методологические и программные подходы к проектированию экспертных систем поддержки принятия решений в сфере строительства. Основой служит архитектурное и программное решение, выстроенное на базе теории нечетких множеств [14-18]. Заключение Рассмотрены подходы к проектированию экспертных систем, которые помогают анализировать данные, давать экспертные рекомендации и принимать решения с использованием доступной информации в условиях неопределенности. Сделан вывод о том, что применение инструментария нечеткой логики в качестве метода хранения и обработки знаний при создании экспертных систем для проектирования строительства зданий является эффективным подходом к решению широкого класса задач в этой области. Рассмотрены программные и архитектурные подходы к проектированию экспертных систем и основные задачи, которые разработанная экспертная система способна решать на этапе подготовки к строительству, что важно для повышения качества, инвестиционной привлекательности и эффективности строительных объектов. Архитектура разработанной экспертной системы состоит из набора аналитических модулей, которые решают задачи, исходя из различных аспектов предстроительного проектирования. Структура объединенной базы знаний, состоящая из отдельных модулей, каждый из которых отвечает за определенную проблемную область, позволяет решать задачи в различных областях строительства. Таким образом, решение, на котором основана экспертная система, учитывает решение широкого класса задач, связанных с подготовкой объекта к строительству, что в целом способствует развитию экспертных систем для использования в строительной отрасли в России. Приложение. Листинг программного кода import numpy as np import pylab as pl import skfuzzy as fuzz from skfuzzy import control as ctrl sg_range=np.arange(0, 4, 0.1) … sg = ctrl.Antecedent(sg_range, 'sg') sh = ctrl.Antecedent(sh_range, 'sh') kt = ctrl.Antecedent(kt_range, 'kt') # Auto-membership #kz.automf(3, names = ['1', '2','3']) ins1 = ctrl.Consequent(ins1_range, 'ins1') # Auto-membership #kz.automf(3, names = ['1', '2','3']) ins2 = ctrl.Consequent(ins2_range, 'ins2') # … sg['1'] = fuzz.gaussmf(sg_range, 0,0.65) # [0.65 0] '0-1': … ins1['1'] = fuzz.gaussmf(ins1_range, 105, 10) # '85-135': 'gaussmf',[12.5 105.19] … fuzzy_system = ctrl.ControlSystem([ ctrl.Rule(sg['5'] & sh['3'] & kt['1'], ins1['15'] ), ctrl.Rule(sg['5'] & sh['3'] & kt['2'], ins1['2'] ), … ]) fuzzy_simulation = ctrl.ControlSystemSimulation(fuzzy_system) if _name_ == '_main_': sg.view() sh.view() kt.view() ins1.view() ins2.view() pl.show() # Set input values fuzzy_simulation.input['kz'] = 50 fuzzy_simulation.input['pz'] = 7000 fuzzy_simulation.compute() out = fuzzy_simulation.output['e'] print(out) outs=[] for i in kz_range: fuzzy_simulation.input['pz'] = 0 fuzzy_simulation.input['kz'] = i fuzzy_simulation.compute() outs.append(fuzzy_simulation.output['e'])
×

About the authors

Alexander A. Merkulov

RUDN University

Author for correspondence.
Email: amerkulov@levelgroup.ru
ORCID iD: 0009-0006-0211-808X

Postgraduate student of the Department of Mechanics and Control Processes, Academy of Engineering

Moscow, Russia

References

  1. Sotnikova KN, Kolosova NV, Drapalyuk RA. Model-ing of a hybrid expert system for the design of “Green building” buildings. Engineering systems and structures. 2012;(2):105–113. (In Russ.) EDN: PCGGMN
  2. Tur VV, Yalovaya YS. Fuzzy logic — based expert system for assessment of existing concrete structures. Construction of Unique Buildings and Structures. 20196(81):7–17. http://doi.org/10.18720/CUBS.81.1
  3. Sergienko MA. Development of fuzzy expert systems using FuzzyCLIPS. Proceedings of the International Scientific Conference Actual problems of applied mathematics, com-puter Science and Mechanics. Voronezh, December 17–19, 2018. Voronezh: Scientific research publications Publ.; P. 323–325. (In Russ.) EDN: YYJUQH
  4. Kashevarova GG, Tonkov YuL, Fursov MN. Fuzzy expert system for diagnosing damage to building structures. Bulletin of the Volga regional branch of the russian Academy of architecture and building sciences. 2014(17):167–173. (In Russ.) EDN: VXPZWN
  5. Sotnikova KN, Kolosova NV, Tolmachev AP. Expert decision-making system for the reconstruction of buildings taking into account the principles of “Green construction”. Engineering systems and structures. 2012;(1):98–105. (In Russ.) EDN: OUIBVF
  6. Kashevarova GG, Drozdov KD. Expert systems based on fuzzy logic in construction. Modern technologies in con-struction. Theory and practice. 2019;1:268–273. (In Russ.) EDN: VOISNR
  7. Chesalin AN, Grodzensky SYa, Van Ty F, Nilov MYu, Agafonov AN. Technology for risk assessment at product lifecycle stages using fuzzy logic. Russian Technological Journal. 2020;8(6):167–183. (In Russ.) http://doi.org/10.32362/2500-316X-2020-8-6-167-183
  8. Ens ES. Making management decisions in a busi-ness environment based on fuzzy logic methods, expert systems. Proceedings of the International Scientific and Practical Conference Theoretical and applied scientific research: problems and solutions. Yekaterinburg, October 10, 2020. Yekaterinburg: NOO “Professional science”. p. 35–46. (In Russ.) EDN: ASNOCP
  9. Savchenko D.V., Reznikova K.M., Smyshlyaeva A.A. Fuzzy logic and fuzzy information technology. Waste and resources. 2021;8(1):10. (In Russ.) http://doi.org/10.15862/10ECOR121
  10. Lyapko AM, Kurochkin AV. Library for creating expert systems based on fuzzy inference algorithms in TypeScript. Minsk. 2020. (In Russ.)
  11. Tonkov YuL. Mathematical models for the iden-tification of the category of technical condition of building structures based on fuzzy logic: Dis. candidate of Technical Sciences. Perm National Research Polytechnic University, 2018. 208 с. (In Russ.) EDN: EQBLJS
  12. Balmaganbetova FT. Theory of fuzzy sets in modern science. Almanac of World Science. 2019;(7):5–6. (In Russ.) EDN: KEWNTS
  13. Bakaev V, Blagov A. The research of approaches to create self-learning expert systems with fuzzy logic. Proceedings of the V International Conference and Youth School of Information Technology and Nanotechnology. Samara, May 21–24, 2019. Vol. 4. Samara: Novaya texnika Publ.; 2019. p. 867–871. (In Russ.) EDN: YHKERC
  14. Nabokin AA, Matveev MG. Development of an expert system shell based on fuzzy logic // Proceedings of the student scientific papers of the Faculty of Computer Science at VSU. Voronezh, 2019. Р. 139–145. (In Russ.) EDN: QMBBSX
  15. Khramov V.Iu., Molchanov A.N., Zinkevich G.V. The integrated expert system shell with a fuzzy logic. Energy — the XXI century. 2019;(4):61–69. (In Russ.) EDN: OHKOSX
  16. Varlamov OO. Overview of 18 mivar expert systems created on mogan base. News of the Kabardino-Balkarian scientific center of RAS. 2021;3(101):5–20. (In Russ.) http://doi.org/10.35330/1991-6639-2021-3-101-5-20
  17. Kiseleva EA, Kraeva AA, Savinova YS. Review of fuzzy logic in management. International journal of applied sciences and technology Integral. 2019. № 3. С. 401–405. (In Russ.) EDN: WHWWVT
  18. Kulmamirov SA, Rakhimberdin DR. Possibilities of the theory of fuzzy logic in risk analysis of information security systems. Synergy of sciences. 2020;54:817–831. (In Russ.) EDN: WTMRZP

Supplementary files

Supplementary Files
Action
1. JATS XML

Copyright (c) 2024 Merkulov A.A.

License URL: https://creativecommons.org/licenses/by-nc/4.0/legalcode