Научная статья на тему 'Организация распределенных инструментальных средств поддержки многократно используемых моделей'

Организация распределенных инструментальных средств поддержки многократно используемых моделей Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
178
37
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
СИСТЕМЫ МОДЕЛИРОВАНИЯ / МНОГОКРАТНО ИСПОЛЬЗУЕМЫЕ МОДЕЛИ / ТРАНСЛЯЦИЯ МОДЕЛЕЙ / XML-ФОРМАТ / РАСПРЕДЕЛЕННАЯ БАЗА ДАННЫХ МОДЕЛЕЙ / SIMULATION SYSTEMS / REUSABLE MODELS / MODELS TRANSLATION / XML-FORMAT / DISTRIBUTED DATABASE OF MODELS

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Поленов Максим Юрьевич

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

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Поленов Максим Юрьевич

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

ORGANIZATION OF THE DISTRIBUTED TOOLS OF REUSABLE MODELS SUPPORT

In the given paper is considered the organization of tools for the complex technical objects modeling, allowing to realize support of reuse of the models developed earlier in various modeling systems and written on various description languages and formats. These tools represent the modules set incorporated in a uniform program environment of the description, editing, import/export and distributed storing of models. As the intermediate description and the models storage form in these tools the XML-format is used, and also such tools have client-server architecture.

Текст научной работы на тему «Организация распределенных инструментальных средств поддержки многократно используемых моделей»

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

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Бахвалов Ю.А., Зарифьян А.А., Кашников В.Н., Колпахчьян П.Г., Плахов Е.М., Янов В.П. Моделирование электромеханической системы электровоза с асинхронным тяговым приводом. - М.: Транпорт, 2001.

2. Пшихопов ВХ., Гайдук А.Р., Медведев М.Ю., Полуянович Н.К., Волощенко Ю.П.. Энергосберегающее управление тяговым приводом электроподвижного состава // Известия ЮФУ. Технические науки. - 2013. - № 2 (139). - C. 192-200.

3. Тугарев А.С. Математическое моделирование взаимовлияния двух единиц подвижного состава через контактную сеть постоянного тока // Методы прикладной математики и компьютерной обработки данных в технике, экономике и экологии: Материалы всероссийской научной конференции. - Орёл: Орёл ГТУ, 2004. - С. 225-228.

Статью рекомендовал к опубликованию д.т.н., профессор В.Э. Бурлаков.

Полуянович Николай Константинович - Федеральное государственное автономное образовательное учреждение высшего профессионального образования «Южный федеральный университет»; e-mail: [email protected]; 347928, г. Таганрог, пер. Некрасовский 44; тел.: 89185693365; кафедра электротехники и мехатроники; доцент.

Волощенко Юрий Петрович - e-mail: [email protected]; тел.: 89185405991; кафедра электротехники и мехатроники; доцент.

Шушанов Иван Иорданович - e-mail: [email protected]; тел.: 89526070670; студент.

Poluyanovich Nikolaj Konstantinovich - Federal State-Owned Autonomy Educational Establishment of Higher Vocational Education “Southern Federal University”; e-mail: [email protected]; 44, Nekrasovsky, Taganrog, 347928, Russia; phone: +79185693365; the department of electric technics and mechatronics; associate professor.

Voloshenko Yurij Petrovich - e-mail: [email protected]; phone: +79185405991; the department of electric technics and mechatronics; associate professor.

Shushanov Ivah Iordanovich - e-mail: [email protected]; phone: +79526070670; student.

УДК 004.4'4

М.Ю. Поленов

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

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

Системы моделирования; многократно используемые модели; трансляция моделей; ХМЬ-формат; распределенная база данных моделей.

M.Yu. Polenov

ORGANIZATION OF THE DISTRIBUTED TOOLS OF REUSABLE MODELS

SUPPORT

In the given paper is considered the organization of tools for the complex technical objects modeling, allowing to realize support of reuse of the models developed earlier in various modeling systems and written on various description languages and formats. These tools represent the modules set incorporated in a uniform program environment of the description, editing, import/export and distributed storing of models. As the intermediate description and the models storage form in these tools the XML-format is used, and also such tools have client-server architecture.

Simulation systems; reusable models; models translation; XML-format; distributed database of models.

Введение. При исследовании смешанных моделей сложных динамических объектов, представленных в нескольких областях, в настоящее время широко применяются различные среды моделирования [1]. Проведенный анализ ряда существующих систем моделирования, приводит к заключению, что для подобных систем, несмотря на достаточно широкий набор собственных моделей, весьма актуальной является проблема расширения и пополнения их внутренних библиотек [2].

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

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

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

Представление моделей. Ранее были исследованы различные форматы представления и повторного использования моделей [4, 5] и на основе проведенного анализа было предложено использовать многоуровневое описание моделей [6]. Рассмотрим назначение двух базовых уровней представления моделей -математического и функционального.

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

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

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

Основными элементами функционального базиса являются: базовые (структурные) элементы; функциональные компоненты и схема линий связи.

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

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

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

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

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

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

♦ хранение моделей на сервере;

♦ использование открытого универсального формата хранения моделей;

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

♦ возможность загружать модели с сервера и изменять их;

♦ возможность синхронизировать модели на локальной рабочей станции разработчика и на сервере;

♦ предоставление средств для совместной работы над проектом определенного числа разработчиков.

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

На основе проведенных исследований и рассмотренных подходов была разработана структура распределенных инструментальных средств поддержки многократно используемых моделей для систем моделирования, представленная на рис. 1. Основными компонентами средств являются сервер, работающий с центральной базой данных (БД) моделей и клиент, поддерживающий свою собственную БД. Таким образом база моделей состоит из центрального хранилища моделей и локальных баз, распределенных по сети.

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

Рис. 1. Клиент-серверная организация распределенных инструментальных

средств

На стороне сервера размещаются следующие компоненты: модуль описания моделей, модуль трансляции моделей, менеджер моделей и центральная база-хранилище моделей.

Модуль описания моделей содержит редакторы описания моделей математического и функционального уровней и генератор кода моделей на языке внутреннего представления XML [9].

Модуль трансляции моделей позволяет при помощи подключаемой среды Мультитранслятора выполнять прямой перевод (импорт) внешних моделей с языков описания моделей различных систем моделирования для их сохранения в распределенной БД в XML-формате или экспорт из БД в необходимом для определенной среды моделирования формате. Трансляция моделей производится при помощи разрабатываемых в среде Мультитранслятора трансляционных модулей перевода моделей с входного языка на выходной язык [2, 3]. Эффективность применения Мультитранслятора для перевода моделей была экспериментально подтверждена как на примере трансляции с языков моделирования [l0], так и на примере языков описания аппаратуры [ll].

Менеджер моделей сервера выполняет три основные функции:

♦ управление базами моделей (создание или загрузка новой базы; сохранение или удаление текущей базы);

♦ управление иерархической структурой базы (добавление или удаление категорий моделей);

♦ управление моделями (создание, модификация, импорт-экспорт или удаление моделей).

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

В качестве СУБД на сервере устанавливается MySQL [12]. Использование данной СУБД обусловлено тем, что сервер в данном случае, является компонентом инструментальных средств с высокой нагрузкой, доступ к базе данных осуществляется из разных потоков/процессов одновременно, изменения и запросы производятся довольно часто.

На клиентских рабочих станциях поддержка работы с локальной БД моделей реализована на основе СУБД SQLite [13].

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

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

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

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

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

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Бенькович Е.С., Колесов Ю.Б., Синеченков Ю.Б. Практическое моделирование динамических систем. - СПб.: БХВ-Петербург, 2002. - 464 с.

2. Чернухин Ю.В., Гузик В.Ф., Поленов М.Ю. Многоязыковая трансляция средств виртуального моделирования. - Ростов-на-Дону: Изд-во ЮЦН РАН, 2009. - 368 с.

3. Чернухин Ю.В., Гузик В.Ф., Поленов М.Ю. Подход к формированию внешних библиотек сред виртуального моделирования на базе мультиязыковой трансляции // Вестник компьютерных и информационных технологий, 2008. - № 10. - С. 2-12.

4. Stewart Robinson, Richard E. Nance, Ray J. Paul, Michael Pidd, Simon J.E. Taylor Simulation model reuse: definitions, benefits and obstacles // Simulation Modelling Practice and Theory 12, 2004. - P. 479-494.

5. Breunese A.P.J., Top J.L., Broenink J.F., Akkermans J.M. Libraries of Reusable Models: Theory and Application // Simulation. - 1998. - Vol. 71. - P. 7-22.

6. Поленов М.Ю. Распределенная библиотека моделей среды структурного моделирования // Компьютерное моделирование - 2009: Труды Международной научно-технической конференции. - СПб.: Изд-во Политехн. ун-та, 2009. - С. 3б1-3б4.

7. Поленов М.Ю., Бельчич А.А. Разработка средств описания и хранения внешних моделей для систем моделирования // VIII Всероссийская научная конференция молодых учёных, аспирантов и студентов «Информационные технологии, системный анализ и управление»: Сборник трудов. - Таганрог: Изд-во ТТИ ЮФУ, 2010. - С. б5-б9.

8. Бельчич А.А., Поленов М.Ю. Организация распределенной библиотеки моделей для сетевых систем виртуального моделирования // Высокопроизводительные вычислительные системы. Труды молодых ученых ЮФУ и ЮНЦ РАН. - Таганрог: Изд-во ТТИ ЮФУ, 2011. - С. 40-44.

9. Организация и функциональные возможности платформы XML. Портал Российские электронные библиотеки [Электронный ресурс]. - Режим доступа: http://www.elbib.ru/index.phtml?page=elbib/rus/methodology/xmlbase/analysis.

10. Chernukhin Y., Polenov M., Vemulapally C. et al. Deploying Modelica Models into Multiple Simulation Environments // Proceedings of IEEE International Behavioral Modeling and Simulation Conference (BMAS 2005), San Jose, 2005. - P. 134-139.

11. Чернухин Ю.В., Поленов М.Ю., Булгаков Д.В. Использование мультиязыковой трансляции при конверсии моделей, представленных на языках описания аппаратуры // Искусственный интеллект. - Донецк, Украина: Изд-во «Наука i освгга», 2009. - № 4. - С. 4б2-471.

12. MySQL. The world's most popular open source database. [Электронный ресурс]. - Режим доступа: http://www.mysql.com/.

13. SQLite. SQL database engine. [Электронный ресурс]. - Режим доступа: http://www.sqlite.org/.

Статью рекомендовал к опубликованию д.т.н., профессор Н.И. Витиска.

Поленов Максим Юрьевич - Федеральное государственное автономное образовательное учреждение высшего профессионального образования «Южный федеральный университет», е-mail: [email protected]; 347928, г. Таганрог, пер. Некрасовский, 44; тел.: 88634371550; кафедра вычислительной техники; к.т.н.; доцент.

Polenov Maxim Yuryevich - Federal State-Owned Autonomy Educational Establishment of Higher Vocational Education “Southern Federal University”; е-mail: [email protected]; 44, Nekrasovskiy, Taganrog, 347928, Russia; phone: +78634371550; the department of computer engineering; cand. of eng. sc.; associate professor.

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