Автоматизированное заполнение матрицы проекта на основе онтологии
Автор: Боргест Николай Михайлович, Шустова Дина Владимировна, Гиматдинова Светлана Рашитовна
Журнал: Известия Самарского научного центра Российской академии наук @izvestiya-ssc
Рубрика: Механика и машиностроение
Статья в выпуске: 6-1 т.14, 2012 года.
Бесплатный доступ
В статье описано применение мультиагентных технологий для поддержки процессов принятия решений при проектировании самолета. Предлагается онтологическая модель для реализации поэтапного проектирования пассажирского самолёта путём автоматизированного заполнения матрицы проекта с использованием мультиагентной системы Magenta.
Онтология предметной области, самолет, автоматизированное проектирование, дескриптивная онтология, техническое задание, матрица проекта, матчинг
Короткий адрес: https://sciup.org/148201648
IDR: 148201648
Текст научной статьи Автоматизированное заполнение матрицы проекта на основе онтологии
вооружённости самолёта, подбору в базе данных соответствующего двигателя на основании заданных требований к двигателю проектируемого самолета по тяге, удельному расходу топлива и массе [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) и два «агента ресурса» для концептов «самолёт-
- л
ОntologyLibrary_Designing of airplane]
S ф Ontology_ Designing of airplane
5 ^ Objects
£ Project_Plane
Д BD_Plane
^ Engine
| I S Schedules
^ Properties
Ё ^ Attributes
-
- 1J Project_Distance
ijQ Percent of the Deviation_Distar
_JJ Project_Min Distance Project_Max Distance
-
- 2J Project_N umber of Passengers h] Percent of the Deviation_Numb
-
- J-J Project_Min Number of Passenc _JJ Project_Max Number of Passen Щ BD_Name of thePlane Qj BD_Distance
Qj BD_Number of Passengers
Used concepts:

^ K_max Calculate begin result := 1 / ( 0.43 * sqrt("CX_0") ) + 1; end;
Рис. 1. Атрибуты и тело скрипта K_max Calculate
3 BD_Mass
_5j _Effective_mehan
4 _H_kr
LO] Motn_topl
□] V_kr ijQ DeltaH_kr
LC] K_max
^ D^° ig Lambda_fuz by P0_zahpos bQ P0_H Й po bQ _Dist_razb
_N_dvig
LilKsi
Ly K_kreis uh TG
а)

б)
Рис. 2. Представление онтологии предметной области “Проектирование самолета” :
а – в виде дерева концептов дескриптивной онтологии; б - в виде семантической сети
прототип» и «двигатель» ( BD_Plane Resource и Engine Resource соответственно). Для заполнения матрицы проекта пассажирского самолёта реализован матчинг (процесс взаимодействия между агентами), состоящий из двух этапов [2], один из которых – это двусторонний матчинг между проектируемым самолётом и самолётами – прототипами из базы данных. В результате произведён выбор лучшего самолёта–прототипа из представленных в базе данных в соответствии с техническим заданием на проектирование. Второй этап – это односторонний матчинг между выбранным прототипом и двигателями базы данных. После его реализации для лучшего прототипа подобран наиболее подходящий двигатель. На процесс матчинга как в первом случае, так и во втором наложены условия двух видов:
-
- условия матчинга, которые фактически представляют собой ограничения, согласно которым из всего множества агентов, потенциально участвующих в матчинге, выбираются только те агенты, чьи атрибуты находятся в заданных пределах;
-
- условия принятия решения, предназначенные для работы машины принятия решений, позволяют агенту выбрать одно из множества возможных предложений (матчингов). Для условия принятия решения необходимо определить атрибут условия, направление оптимизации (макси-
- мум/минимум) и весовой коэффициент, определяющий «значимость» данного условия.
Онтологическая сцена - модель реальной ситуации, которая обрабатывается системой (рис. 3). Сцена содержит экземпляры всех заказов и ресурсов, участвующих в моделируемом процессе, и отношения между ними.
В предложенной онтологической модели поэтапного проектирования самолёта в окне физического мира созданы базы данных самолётов-прототипов и двигателей. С помощью инспектора агентов установлены указанные в табл. 1 значения атрибутов для агента проектируемого самолета для десяти агентов самолетов-прототипов (табл. 2) и для десяти двигателей-прототипов в базе данных (табл. 3).
На рис. 4 в окне виртуального мира показан процесс двойного матчинга между рассмотренными сущностями.
В разработанной модели автоматизированного заполнения матрицы проекта процесс двустороннего матчинга начинается с того, что агент проекта со своей стороны проверяет значения атрибутов агентов самолетов-прототипов и выбирает агентов, у которых значения атрибутов соответствуют ограничениям на минимально и максимально допустимые значения дальности полета и количества пассажиров. Из рисунка видно, что матчинг прошёл со всеми, кроме самоле-

Рис. 3. Создание онтологической сцены предметной области «Проектирование самолета»
Таблица 1. Значения атрибутов для агента проектируемого самолёта
Дальность расчетная |
4000 |
Количество пассажиров |
160 |
Допустимый процент отклонений от требуемой дальности |
0.2 |
Допустимый процент отклонений от требуемого количества пассажиров |
0.1 |
Таблица 2. Значения атрибутов для агентов самолёта-прототипа
агента |
самолета |
Высота полета, де |
Эффект ивная меха низ крыло; до/нет |
Длина разбега по ВПП, |
Маха |
Колич естео двига телей |
Дал внос т в полета, ^ |
Количество пассажиров |
Количество пассажиров в |
Взлетная масса, ^ |
BD_ Plane_l |
B-727-200 |
12192 |
1770 |
0,9 |
2 |
4020 |
189 |
6 |
95030 |
|
BD_ Plane_2 |
Ty-204-100 |
12100 |
2150 |
0,78 |
3 |
4500 |
165 |
6 |
103000 |
|
BD_ Plane_3 |
A-320-100 |
11800 |
2000 |
0,78 |
2 |
3890 |
175 |
6 |
70000 |
|
BD_ Plane_4 |
A-320-200 |
11800 |
2090 |
0,88 |
3 |
4800 |
175 |
6 |
77000 |
|
BD_ Plane_5 |
MD-90 |
11300 |
2160 |
0,76 |
3 |
4200 |
172 |
5 |
70700 |
|
BD_ Plane_6 |
Ил-86 |
11000 |
- |
2800 |
0,88 |
4 |
3600 |
350 |
9 |
208000 |
BD_ Plane_7 |
Ty-214 |
12500 |
2050 |
0,77 |
3 |
4340 |
168 |
6 |
110750 |
|
BD_ Plane_8 |
MD-82 |
11300 |
2270 |
0,78 |
2 |
3800 |
172 |
5 |
67800 |
|
BD_ Plane_9 |
MD-83 |
11300 |
2550 |
0,78 |
2 |
4640 |
172 |
5 |
72600 |
|
BD_ Plane_10 |
Ty-104 |
11500 |
- |
1900 |
0,7 |
2 |
2750 |
100 |
5 |
78100 |
Таблица 3. Значения атрибутов для агентов двигателя
Имя |
агента |
Tun двигателя |
Суд кр баз |
М дв баз, кг |
РО баз |
Engine_ |
.1 |
Д-З ОКУ-154 lcep |
0,71 |
2675 |
10500 |
Engine_ |
2 |
Д-30КУ2сер |
0,7 |
2690 |
11000 |
Engine_ |
3 |
Д-110 (пр.) |
0,52 |
3600 |
22000 |
Engine_ |
4 |
НК-56 |
0,625 |
3340 |
18000 |
Engine_ |
НК-108 (пр.) |
0,44 |
3600 |
18000 |
|
Engine_ |
.6 |
НК-63 (пр.) |
0,535 |
5450 |
30000 |
Engine_ |
7 |
Д-18Т |
0,57 |
4100 |
23430 |
Engine_ |
.8 |
Д-ЮО (пр.) |
0,544 |
3500 |
19000 |
Engine_ |
9 |
НК-8-2 |
0,79 |
2150 |
9500 |
Engine |
10 |
РД36-51 |
1,23 |
4200 |
21000 |

Рис. 4. Процесс матчинга тов–прототипов под номерами 1, 6 (не соответствуют ограничениям по количеству пассажиров) и 10 (не отвечает ограничениям ни по дальности, ни по количеству пассажиров). В свою очередь агенты самолетов-прототипов взаимодействовали с агентом проектируемого самолета с целью проведения расчетов основных аэродинамических, массовых и иных параметров, необходимых для проектирования.
Агент проекта построил таблицу принятия решений, в которой разместил прототипы по убыванию дальности полета (BD_Distance), с указанием значений максимального аэродинамического качества (K_max), потребной тяговооружен-ности (P0_max), потребной взлетной тяги двигателя (P_0) и по возрастанию взлетной массы самолета, удельной нагрузки на крыло, удельного расхода топлива двигателя на крейсерском режиме, массы двигателя (рис.5) и выбрал из таблицы лучший самолет-прототип под номером 4. Также рассчитаны основные параметры для лучшего прототипа (рис. 6).
Объект самолёта-прототипа являлся в предложенном решении задачи автоматизированного заполнения матрицы проекта как ресурсом (в процессе двустороннего матчинга), так и инициатором матчинга (по отношению к двигателям в базе данных). В окне физического мира агенты самолетов-прототипов созданы единожды, а в окне виртуального мира они автоматически дуб-

Рис. 5. Таблица принятия решений агента проектируемого самолёта

Рис. 6. Структура агента проектируемого самолёта
лировались под одинаковыми номерами, выполняя сразу две роли в сцене.
В процессе одностороннего матчинга BD_Plane Demand – Engine Resource активный агент прототипа запустил скрипты, необходимые для вычисления значений атрибутов. Процесс матчинга начался с того, что каждый агент прототипа проверял значения атрибутов агентов двигателей-прототипов в базе данных и выбирал агентов, у которых значения атрибутов соответствуют установленным ограничениям (по тяге двигателя, удельному расходу топлива двигателя и его массе).
На рис. 7 в таблице принятия решений показаны двигатели по возрастанию удельного расхода топлива (BD_C_kr) и массы двигателя (BD_M_dvig), а на рис. 8 показаны рассчитан-
£# Matchefs I— Decision making machine
Agen t BD C kr' BD M dvig
Engine Resource_5 |
0.44 |
3600 |
Engine Resource_3 |
0 52 |
3600 |
Engine Resource_6 |
0.535 |
5450 |
Engine Resource_8 |
0.544 |
3500 |
Engine Resource_7 |
0.57 |
4100 |
Engine Resource_4 |
0.625 |
3340 |
Рис. 7. Таблица принятия решений агента заказа самолёт – прототип номер 4

Рис. 8. Структура агента заказа самолёт – прототип номер 4

Рис. 9. Структура агента ресурса двигатель номер 5
ные значения параметров для подбора двигателя и параметры лучшего двигателя.
Структура агента ресурса двигатель показана на рис. 9: в левой части указан агент самолета-прототипа (BD_Plane Demand_4), с которым происходил процесс матчинга, а справа - параметры подобранного двигателя.
Целесообразно рассматривать взаимодействие с двигателями только тех прототипов, которые прошли матчинг с агентом проектируемого самолета. Например, лучший прототип под номером 4 (это было выяснено на первом этапе матчинга) взаимодействовал с двигателями 3–8 (рис. 7 и 8), лучшее решение с учетом минимизации удельного расхода топлива и массы – двигатель номер 5.
После двойного матчинга получено, что в соответствии с заданными ограничениями и условиями в контексте данной задачи рационально проектировать самолет по следующей цепочке: проектируемый самолёт ^ самолёт -прототип номер 4 ^ двигатель номер 5.
Сцена в созданной онтологической модели являет собой перечень параметров для конкретного момента времени. По мере поступления событий, влияющих на проектирование, агенты могут обновлять сцену с целью отображения в ней новых установленных соответствий между заказами и ресурсами, появление которых вызвано новым событием.
В результате проведённого онтологического моделирования по данным технического задания поэтапно заполнилась матрица проекта. Был выбран лучший прототип с основными параметрами, уже последовательным образом подсчитанными для него, благодаря использованию двустороннего матчинга. По этим параметрам впоследствии был подобран двигатель, удовлетворяющий требованиям самолета. Очевидно, что, благодаря одновременному выполнению нескольких операций, уменьшилась трудоёмкость работ по проектированию самолёта. Таким образом, решена задача автоматизированного заполнения матрицы проекта при заданных условиях.
Список литературы Автоматизированное заполнение матрицы проекта на основе онтологии
- Боргест Н. М., Симонова Е.В. Основы построения мультиагентных систем: учеб. пособие. Самара: СГАУ, 2009. 76 с.
- Боргест Н. М., Шустова Д. В., Гиматдинова С. Р. Метод. указания к лабораторной работе №5 по курсу онтологии производственной сферы: «Поэтапное проектирование самолёта». Самара: СГАУ, 2012. 76 с.
- Иващенко А.В., Лада А.Н., Симонова Е.В., Скобелев П.О. Мультиагентная технология управления мобильными ресурсами в режиме реального времени: учеб. пособие. Самара: Поволжский государственный университет телекоммуникаций и информатики, 2011. 177 с.
- Скобелев П.О. Онтологии деятельности для ситуационного управления предприятиями в реальном времени/Онтология проектирования. 2012. № 1. С.6-38
- Смирнов С.В. Онтологический анализ предметных областей моделирования//Известия Самарского научного центра РАН. 2001. Т.З. №1. С.62-70.
- 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, P.3-39
- Сайт компании «Magenta Technology». URL: http://www.magenta-technology.ru (дата обращения 2.10.2012).