УДК 025.4.03
АВТОМАТИЗИРОВАННОЕ ЗАПОЛНЕНИЕ МАТРИЦЫ ПРОЕКТА НА ОСНОВЕ ОНТОЛОГИИ
© 2012 Н.М. Боргест, Д.В. Шустова, С.Р. Гиматдинова
Самарский государственный аэрокосмический университет имени академика С. П. Королёва (национальный исследовательский университет)
Поступила в редакцию 17.10.2012
В статье описано применение мультиагентных технологий для поддержки процессов принятия решений при проектировании самолета. Предлагается онтологическая модель для реализации поэтапного проектирования пассажирского самолёта путём автоматизированного заполнения матрицы проекта с использованием мультиагентной системы Magenta.
Ключевые слова: онтология предметной области, самолет, автоматизированное проектирование, дескриптивная онтология, техническое задание, матрица проекта, матчинг.
Подход к решению задачи оперативной обработки информации в процессах принятия решений может быть основан на применении мультиагентных технологий. Мультиагентная технология - это программная технология, которая предназначена для поддержки принятия решений в сложном и быстро меняющемся мире [1-7]. Решаемые задачи отличает априорная неопределенность и высокая динамика, наличие многих взаимосвязей и взаимозависимостей, высокая вычислительная сложность, необходимость учета множества индивидуальных факторов, нелинейность поведения, зависимость решения от истории процессов и т.п. Предметная область определяется как часть реального мира, рассматриваемая в пределах определённого контекста, задающего область деятельности предприятия, конкретного специалиста, область исследования и т.д. [5].
В работе в качестве предметной области рассмотрена область «Проектирование самолёта» и поставлена задача автоматизации в данной области. В качестве решения разработана онтологическая модель, представляющая собой поэтапное заполнение матрицы проекта. Моделирование осуществляется в мультиагентной системе Magenta [7]. Рассмотрены проектные процедуры по подбору в базе данных самолетов-прототипов, отвечающих заданным тактико-техническим требованиям для проектируемого самолета, выбору удельной нагрузки на крыло и потребной тяго-
Боргест Николай Михайлович, кандидат технических наук, профессор кафедры конструкции и проектирования летательных аппаратов СГАУ. E-mail: [email protected] Шустова Дина Владимировна, аспирантка кафедры конструкции и проектирования летательных аппаратов СГАУ. E-mail: [email protected] Гиматдинова СветланаРашитовна, студентка СГАУ. E-mail: [email protected]
вооружённости самолёта, подбору в базе данных соответствующего двигателя на основании заданных требований к двигателю проектируемого самолета по тяге, удельному расходу топлива и массе [1-2]. Предлагаемая онтологическая модель, представляющая собой объединение вышеупомянутых этапов проектирования в одну онтологию, повышает скорость проектирования и снижает его трудоёмкость.
Для реализации предложенного интегрирования была создана дескриптивная онтология, предназначенная для описания предметной области и оперирующая такими понятиями, как объект, атрибут, скрипт [1] и онтология мира заказов и ресурсов (онтология виртуального мира).
Предметная область «Проектирование самолёта» содержит три сущности, присутствующие в мире, описанном в онтологии: объект проектируемого самолёта (Project_Plane), объект самолёта-прототипа из базы данных (BD_Plane) и объект двигателя из базы данных (Engine).
Каждый из объектов имеет необходимые атрибуты. Атрибут - характеристика концепта, которая используется для его уточнения [1]. Они бывают качественные (например, «эффективная механизация») и количественные («количество пассажиров», «относительная масса топлива»). Например, объект проектируемый самолет имеет атрибуты: требуемая или расчетная дальность полета, количество пассажиров, минимальное и максимальное значение этих величин или допустимый процент отклонений их от расчетных значений; объект самолет-прототип - атрибуты, характеризующие его лётные характеристики (например, дальность полёта, высота полёта, удельная нагрузка на крыло при заходе на посадку и т.п.) и технические характеристики (тип самолета, количество пассажиров, масса самолета, масса двигателя и т.д.). Для объекта двигатель
самолета-прототипа созданы атрибуты: название двигателя, тяга двигателя, удельный расход топлива двигателя, масса двигателя.
Значения некоторых атрибутов рассчитываются при помощи скриптов - определённых правил или алгоритмов расчета, записанных на языке программирования [4]. В конструкторе онтологий для написания скриптов используется подмножество языка Object Pascal. На рис. 1 показан пример расчёта максимально аэродинамического качества с помощью скрипта (K_max Calculate), используемого в предложенной модели поэтапного проектирования пассажирского самолёта.
Дескриптивная онтология может быть представлена не только в виде дерева концептов (рис. 2, а), но также в виде семантической сети (рис. 2, б), представляющей собой ориентированный граф, в котором вершинами являются концепты онтологии (все они связаны между собой), а ребрами показаны связи между ними.
В отличие от традиционных систем, в которых решение находят с помощью централизованных, последовательных и детерминированных алгоритмов, в мультиагентной системе решение достигается в результате распределённого взаимодействия множества агентов. Агентом считает-
ся все, что действует (слово агент произошло от латинского слова agere - действовать) [6]. Но предполагается, что компьютерные агенты обладают некоторыми другими атрибутами, которые отличают их от обычных «программ», такими как способность функционировать под автономным управлением, воспринимать свою среду, существовать в течение продолжительного периода времени, адаптироваться к изменениям и обладать способностью взять на себя достижение целей, поставленных другими [5]. Агенты нацелены на поиск наилучшего из возможных решений на каждый момент времени. Если найденный агентом лучший вариант уже забронирован другим агентом, агенты оказываются способны выявить конфликт и разрешить его путём переговоров, в ходе которых достигается компромисс, отражающий временное, и, как правило, неустойчивое рав-новесие(баланс) их интересов[1, 4].
В предложенной модели автоматизации проектирования самолёта для получения онтологии мира заказов и ресурсов создан концепт «агент заказа» для концепта «проектируемый самолёт» (Project_Plane Demand), «агент заказа» для концепта «самолёт-прототип» (BD_Plane Demand) и два «агента ресурса» для концептов «самолёт-
UntologyLibraryJDesigning of airplane
Н-» Ontology_ Designing of airplane B-^ Objects
A Project_Plane 2 BD_Plane ^ Engine fjfj Schedules Properties - @ Attributes
lj Project_Dislance
Percent of the Deviation_Distar ij F'roiect_Min Distance F'rojectjvlax Distance Jj ProjectJM umber of Passengers iji] Percent of the Devialion_Numb ij ProjecLMin Number of Passenc Project_Man Number of Passen BD_Name of thePlane i ] BD_D¡stance
BD_Number of Passengers }_]X
3Y
1J BD_Mass
^J _Effective_mehan
i] _H_kr
ijff| _M
ij _n_vr
J1] Motn_topl
m v_kr i.(|] DeltaH_kr Ail] K_ITidX
m cx_o
Lambda_fuz vti] P0_zahpos
m po_h
ij F'O
1J|] _Dist_razb i] _N_dvig
Ksi yi] K_kreis it'1 TG
а)
Рис. 1. Атрибуты и тело скрипта K_max Calculate
б)
Рис. 2. Представление онтологии предметной области
"Проектирование самолета": а - в виде дерева концептов дескриптивной онтологии; б - в виде семантической сети
прототип» и «двигатель» (BD_Plane Resource и Engine Resource соответственно). Для заполнения матрицы проекта пассажирского самолёта реализован матчинг (процесс взаимодействия между агентами), состоящий из двух этапов [2], один из которых - это двусторонний матчинг между проектируемым самолётом и самолётами - прототипами из базы данных. В результате произведён выбор лучшего самолёта-прототипа из представленных в базе данных в соответствии с техническим заданием на проектирование. Второй этап - это односторонний матчинг между выбранным прототипом и двигателями базы данных. После его реализации для лучшего прототипа подобран наиболее подходящий двигатель. На процесс матчинга как в первом случае, так и во втором наложены условия двух видов:
- условия матчинга, которые фактически представляют собой ограничения, согласно которым из всего множества агентов, потенциально участвующих в матчинге, выбираются только те агенты, чьи атрибуты находятся в заданных пределах;
- условия принятия решения, предназначенные для работы машины принятия решений, позволяют агенту выбрать одно из множества возможных предложений (матчингов). Для условия принятия решения необходимо определить атрибут условия, направление оптимизации (макси-
мум/минимум) и весовой коэффициент, определяющий «значимость» данного условия.
Онтологическая сцена - модель реальной ситуации, которая обрабатывается системой (рис. 3). Сцена содержит экземпляры всех заказов и ресурсов, участвующих в моделируемом процессе, и отношения между ними.
В предложенной онтологической модели поэтапного проектирования самолёта в окне физического мира созданы базы данных самолётов-прототипов и двигателей. С помощью инспектора агентов установлены указанные в табл. 1 значения атрибутов для агента проектируемого самолета для десяти агентов самолетов-прототипов (табл. 2) и для десяти двигателей-прототипов в базе данных (табл. 3).
На рис. 4 в окне виртуального мира показан процесс двойного матчинга между рассмотренными сущностями.
В разработанной модели автоматизированного заполнения матрицы проекта процесс двустороннего матчинга начинается с того, что агент проекта со своей стороны проверяет значения атрибутов агентов самолетов-прототипов и выбирает агентов, у которых значения атрибутов соответствуют ограничениям на минимально и максимально допустимые значения дальности полета и количества пассажиров. Из рисунка видно, что матчинг прошёл со всеми, кроме самоле-
Рис. 3. Создание онтологической сцены предметной области «Проектирование самолета» Таблица 1. Значения атрибутов для агента проектируемого самолёта
Дальность расчетная 4000
Количество пассажиров 160
Допустимый процент отклонений от требуемой дальности 0.2
Допустимый процент отклонений от требуемого количества пассажиров 0.1
Таблица 2. Значения атрибутов для агентов самолёта-прототипа
Имя агента Tun самолета высота попета, ^ Эффект иеная механиз ация крыла: да/нет Длина разбега по ВЛП, ш Число Маха Колич ест ео дои га щелей Дальность полета, да Поли чес meo пассажиров Поли честео пассажиров е ряду взлетная масса,
BD_ Plane 1 B-727-200 12192 f 1770 0,9 2 4020 139 £ 95030
BD_ Plane 2 TY-204-1D0 12100 4- 2150 0,73 3 4500 165 103000
BD_ Plane_3 А-З 20-100 11800 + 200(1 0,73 2 3390 175 70000
BD_ Plane_4 A-320-200 11300 f 2050 3 4300 175 « 77000
BD_ Plane 5 МО-SO 11300 f 2160 0,76 3 4200 172 5 70700
BD_ Plane E Ил-36 11000 " 2300 0,33 а 3600 350 9 203000
BD_ Plane_7 ту-ги 12500 f 2050 0,77 3 4340 163 Ш 110750
BD_ Plane 3 MD-B2 11300 f 2270 0,73 2 3300 172 5 £7300
BC_ Plane 9 MD-33 11300 + 2550 0,73 2 4640 172 5 72600
BD_ Plane 10 Ty-104 11500 - 1900 0,7 2 2750 100 5 73100
Таблица 3. Значения атрибутов для агентов двигателя
Имя агента Тип двигателя С уд кр баз Л/ дв баз, кг РО баз
Engin е_1 Д-ЗОКУ-154 lcep 0,7| 2675 10500
Engine_2 Д-ЗОКУ 2сер 0=7 2690 11000
Engin е_3 Д-110 (пр.) 0:52 3600 22000
Engine_4 НК-56 0:625 3340 18000
Engine_5 НК-108 (пр.) 0;44 3600 18000
Engine 6 НК-бЗ (пр.) 0.535 5450 30000
Engine_7 Д-1 ВТ 0=57 4100 23430
Engine S Д-100 (пр.) 0.544 3500 19000
Engine 9 НК-5-2 0.79 2150 9500
Engine 10 РДЗб-51 1.23 4200 21000
взаимодействовали с агентом проектируемого самолета с целью проведения расчетов основных аэродинамических, массовых и иных параметров, необходимых для проектирования.
Агент проекта построил таблицу принятия решений, в которой разместил прототипы по убыванию дальности полета (BD_Distance), с указанием значений максимального аэродинамического качества (К_тах), потребной тяговооружен-ности (Р0_тах), потребной взлетной тяги двигателя (Р_0) и по возрастанию взлетной массы самолета, удельной нагрузки на крыло, удельного расхода топлива двигателя на крейсерском режиме, массы двигателя (рис.5) и выбрал из таблицы лучший самолет-прототип под номером 4. Также рассчитаны основные параметры для лучшего прототипа (рис. 6).
Объект самолёта-прототипа являлся в предложенном решении задачи автоматизированного заполнения матрицы проекта как ресурсом (в процессе двустороннего матчинга), так и инициатором матчинга (по отношению к двигателям в базе данных). В окне физического мира агенты самолетов-прототипов созданы единожды, а в окне виртуального мира они автоматически дуб-
Рис. 4. Процесс матчинга
тов-прототипов под номерами 1, 6 (не соответствуют ограничениям по количеству пассажиров) и 10 (не отвечает ограничениям ни по дальности, ни по количеству пассажиров). В свою очередь агенты самолетов-прототипов
Agent Project Plane Demand_1 structu
Тф Matchers
making machine j
Agent BD Distance I BD Mass I P0 К max P0 max P 0 С kr M dvig
BD_Plane Res... 4800 77000 565.3415897... 16.74034544... 0.272787060... 17412 1.097494814... 5515
BD_Plane Res... 4640 72600 592.0442438... 16.19949755... 0.321 42451 1.029444398... 11426
BD_Plane Res... 4500 103000 506.9622219... 16.95133521... 0.291549322... 23549 1.043815048... 6979
BD_Plane Res... 4340 110750 449.3974328... 16.93475149... 0.312892006... 23480 1.005036064... 6484
BD_Plane Res... 4200 70700 567.0475997... 16.22196541... 0.271823696... 17676 0.930670935... 5618
BD_Plane Res... 3890 70000 523.4939508... 16.85599979... 0.321 23876 0.895496628... 6426
BD_Plane Res... 3300 67S00 532.2280836... 16.19949755... 0.321 22258 0.841283996... 5991
Рис. 5. Таблица принятия решений агента проектируемого самолёта
Partner I Status Name Value i State Type
Project_Min Number of P.. 144 Assigned Scripted
Percent of the Deviation... 0.1 Assigned Simple
Project_N umber of Pass... 160 Assigned Simple
Project_Max Number of... 176 Assigned Scripted
Project_Min Distance 3200 Assigned Scripted
Percent of the Deviation... 0 2- Assigned Simple
Project_Distance 4000 Assigned Simple
Project_Max Distance 4800 Assigned Scripted
BD_Distance 4800 Assigned Partner
BD Mass 77000 Assigned Partner
P0 565.341589700463 Assigned Partner
K._max 16.7403454421527 Assigned Partner
P0 max 0.27278706047552 Assigned Partner
P 0 17412 Assigned Partner
C_kr 1.08748481454065 Assigned Partner
M_dvig 5515 Assigned Partner
Рис. 6. Структура агента проектируемого самолёта
лировались под одинаковыми номерами, выполняя сразу две роли в сцене.
В процессе одностороннего матчинга BD_Plane Demand - Engine Resource активный агент прототипа запустил скрипты, необходимые для вычисления значений атрибутов. Процесс матчинга начался с того, что каждый агент прототипа проверял значения атрибутов агентов двигателей-прототипов в
базе данных и выбирал агентов, у которых значения атрибутов соответствуют установленным ограничениям (по тяге двигателя, удельному расходу топлива двигателя и его массе).
На рис. 7 в таблице принятия решений показаны двигатели по возрастанию удельного расхода топлива (BD_C_kr) и массы двигателя (BD_M_dvig), а на рис. 8 показаны рассчитан-
Рис. 7. Таблица принятия решений агента заказа самолёт - прототип номер 4
** 1"1а:':-Лег::: |= = иес|:Ю'1т.ак|пд ггас пте |
Partner Status Name Value I State I Type
M_dvig 5515 Assigned Scripted
BD_M_dvig 3600 Assigned Partner
_M_dvig 3' Assigned Simple
M su 0.108 Assigned Scripted
M_0 191485 Assigned Scripted
Motn_topl 0.402342228384423 Assigned Scripted
BD Distance 4800 Assigned Simple
V kr 256.612171349162 Assigned Scripted
H kr 11800 Assigned Simple
M 0.88 Assigned Simple
M pi 0.392 Assigned Scripted
M kn 18400 Assigned Scripted
С kr 1.09749481454065 Assigned Scripted
BD_C_kr 0.44 Assigned Partner
К ma« 16.7403454421527 Assigned Scripted
cx_o 0.0218290366627752 Assigned Scripted
Lambda_fu2 8.78805073431242 Assigned Scripted
_n_vr 6 Assigned Simple
BD Number of Passeng.. 175 Assigned Simple
P 0 17412 Assigned Scripted
BD_P_0 18000 Assigned Partner
F'0_max 0.27278706047552 Assigned Scripted
Temp 0' Assigned Simple
P0 3 0.2475 Assigned Scripted
TG 0.027 Assigned Scripted
F'0_2 0.236081177611978 Assigned Scripted
_Effective_mehan True Assigned Simple
Dist razb 2090 Assigned Simple
P0 565.341589700463 Assigned Scripted
P0 H 686.114036882747 Assigned Scripted
DeltaH_kr 0.2572 Assigned Scripted
P0 2ahpos 565.341589700463 Assigned Scripted
P0_1 0.27278706047552 Assigned Scripted
К kreis 13.3922763537221 Assigned Scripted
Ksi 1.02134528 Assigned Scripted
Рис. 8. Структура агента заказа самолёт - прототип номер 4
Partner
Status
BD Plane Demand 4 Passive
Name
GD_M_dvig BD C_k BD_P_0
зепо
0.44 18000
_S
Assigned Assigned Assigned
Type Simple Simple Simple
Рис. 9. Структура агента ресурса двигатель номер S
ные значения параметров для подбора двигателя и параметры лучшего двигателя.
Структура агента ресурса двигатель показана на рис. 9: в левой части указан агент самолета-прототипа (BD_Plane Demand_4), с которым происходил процесс матчинга, а справа - параметры подобранного двигателя.
Целесообразно рассматривать взаимодействие с двигателями только тех прототипов, которые прошли матчинг с агентом проектируемого самолета. Например, лучший прототип под номером 4 (это было выяснено на первом этапе матчинга) взаимодействовал с двигателями 3-8 (рис. 7 и 8), лучшее решение с учетом минимизации удельного расхода топлива и массы - двигатель номер 5.
После двойного матчинга получено, что в соответствии с заданными ограничениями и условиями в контексте данной задачи рационально проектировать самолет по следующей цепочке: проектируемый самолёт ^ самолёт -прототип номер 4 ^ двигатель номер 5.
Сцена в созданной онтологической модели являет собой перечень параметров для конкретного момента времени. По мере поступления событий, влияющих на проектирование, агенты могут обновлять сцену с целью отображения в ней новых установленных соответствий между заказами и ресурсами, появление которых вызвано новым событием.
В результате проведённого онтологического моделирования по данным технического задания поэтапно заполнилась матрица проекта. Был выбран лучший прототип с основными параметрами, уже последовательным образом подсчитанными
для него, благодаря использованию двустороннего матчинга. По этим параметрам впоследствии был подобран двигатель, удовлетворяющий требованиям самолета. Очевидно, что, благодаря одновременному выполнению нескольких операций, уменьшилась трудоёмкость работ по проектированию самолёта. Таким образом, решена задача автоматизированного заполнения матрицы проекта при заданных условиях.
СПИСОК ЛИТЕРАТУРЫ
1. Боргест Н. М., Симонова Е.В. Основы построения мультиагентных систем: учеб. пособие. Самара: СГАУ, 2009. 76 с.
2. Боргест Н.М., Шустова Д.В., Гиматдинова С.Р. Метод. указания к лабораторной работе №S по курсу онтологии производственной сферы: «Поэтапное проектирование самолёта». Самара: СГАУ, 2012. 76 с.
3. Иващенко A.B., Лада А.Н., Симонова Е.В., Скобелев П.О. Мультиагентная технология управления мобильными ресурсами в режиме реального времени: учеб. пособие. Самара: Поволжский государственный университет телекоммуникаций и информатики, 2011. 177 с.
4. Скобелев П. О. Онтологии деятельности для ситуационного управления предприятиями в реальном времени / Онтология проектирования. 2012. № 1. С.6-38
5. Смирнов С.В. Онтологический анализ предметных областей моделирования // Известия Самарского научного центра РАН. 2002. Т.З. №1. С.62-70.
6. Wooldridge M., Jennings N.R. Agent Theories, Architectures, and Languages: A Survey. In: Intelligent Agents. ECAI-94 Workshop on Agent Theories, Architecture and Languages. Amsterdam, The Netherlands, August 8-9, 1994, (Eds. M.J. Wooldridge and N.R. Jennings). Proceedings. Springer Verlag:1994, P3-39
7. Сайт компании «Magenta Technology». URL: http:// www.magenta-technology.ru (дата обращения 2.10.2012).
AUTOMATED FILLING PROJECT MATRIX BASED ONTOLOGY
© 2012 N.M. Borgest, D.V. Shustova, S.R. Gimatdinova
Samara State Aerospace University named after Academician S.P. Korolev (National Research University)
The article describes the use of multi-agent technology to support decision-making processes in the design of the aircraft. It is proposed ontological model for phased implementation of the design of passenger aircraft by automated matrix filling project using multi-agent system Magenta.
Keywords: ontology of the aircraft, computer-aided design, descriptive ontology specification, the matrix of the project, matching.
Nikolay Borgest, Candidate of Technics, Professor at the Construction and Design of Aircraft Department. E-mail: [email protected]
Dina Shustova, Graduate Student at the Construction and Design of Aircraft Department. E-mail: [email protected]
Svetlana Gimatdinova, Student. E-mail: [email protected]