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

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

CC BY
221
38
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ / ЯЗЫК ПРОГРАММИРОВАНИЯ JAVA / СЕРВЛЕТ / ОБЛАЧНЫЕ ВЫЧИСЛЕНИЯ / ДИСТАНЦИОННАЯ СИСТЕМА ОБУЧЕНИЯ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Быков А.Ю., Глинская Е.В., Колинько Ф.К.

Рассмотрена обучающая система для имитационного моделирования SimJavaWeb, реализованная в виде интернет-приложения на языке Java с использование специальной библиотеки классов Java и ориентированная на использование в учебном процессе. Структура имитационной модели похожа на структуру модели языка GPSS. Исходный код модели может быть реализован или на языке Java с использованием библиотеки классов, или на языке, похожем на GPSS. Имитационные эксперименты выполняются на стороне сервера, клиенту достаточно иметь браузер со стандартными функциями. Приведены примеры моделей для системы вида М/М/n/0, результаты моделирования и аналитические расчеты.

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Быков А.Ю., Глинская Е.В., Колинько Ф.К.

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

Cloud-Based SimJavaWeb Software Tool to Learn Simulation

Currently, in simulation there is a trend towards using the distributed software tools, particularly ones, which are using cloud technologies and the Internet. The article considers a simulation educational tool, implemented as a web application using the Java language with special Java class library developed for simulation. It is focused on a discrete event approach to modeling, similarly to the GPSS language, and intended for queuing systems simulation. The structure of the models obtained using this class library is similar to that of the GPSS language models. Also, the simulation language interpreter similar to GPSS is created using this class library, with some differences in the individual statements. Simulation experiments are performed on the server-side, and on client-side you must use a browser with standard functions to enter the source code into HTML-created form. Mobile devices can be used as clients. The source code of a model can be represented both in the Java language using a class library and in the language similar to GPSS. The simulation system implements functions especially for educational process. For example, there is possibility for a student to upload learning materials on the server, send developed software and reports of test control to the teacher via the Internet, and receive a detailed assessment of their results from the teacher. Also detailed results of passed tests in learning modules are entered, and some other functions are implemented in the system. As examples, the article considers models of the m/M/n/0 type queuing system in Java with a class library, and in the language similar to GPSS, shows simulation results, and presents the analytical model and calculations for this system. Analytical calculations proved that the modeling system is useful, as it overlaps simulation results with the acceptable error. Some approaches to the interaction with students through the Internet, used in modeling environment, can find application in teaching other subject matters.

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

Наука и Образование

МГТУ им. Н.Э. Баумана

Наука и Образование. МГТУ им. Н.Э. Баумана. Электрон. журн. 2017. № 01. С. 110-126.

JSSN 19&4-G40(1

DOI: 10.7463/0117.0000924

Представлена в редакцию: Исправлена:

© МГТУ им. Н.Э. Баумана

13.12.2016 27.12.2016

УДК 004.738.5 : 519.682 : 519.872

Инструментальное программное средство SimJavaWeb на основе облачных технологий для изучения имитационного моделирования

Быков А.Ю.1'*, Глинская Е.В.1, Колинько Ф.К.1

1МГТУ им. Н.Э. Баумана, Москва, Россия

аЪукоу&ЬтьШли

Рассмотрена обучающая система для имитационного моделирования - SimJavaWeb, реализованная в виде интернет-приложения на языке Java с использование специальной библиотеки классов Java и ориентированная на использование в учебном процессе. Структура имитационной модели похожа на структуру модели языка GPSS. Исходный код модели может быть реализован или на языке Java с использованием библиотеки классов, или на языке, похожем на GPSS. Имитационные эксперименты выполняются на стороне сервера, клиенту достаточно иметь браузер со стандартными функциями. Приведены примеры моделей для системы вида М/М/n/O, результаты моделирования и аналитические расчеты.

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

Введение

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

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

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

Рассмотрим некоторые примеры инструментальных средств моделирования, которые используют Web-интерфейс, и (или) ориентированы на распределенное моделирование. Следует отметить, что не все средства реализуют эти механизмы полностью, но развиваются в данном направлении.

Язык SLX (Simulation Language with Extensibility) [1] опирается на сильные стороны средства GPSS/H, разработанного Wolverine Software Corporation. Язык представляет собой многоуровневую (послойную) структуру c ядром SLX в основании пирамиды, далее в середине традиционный язык имитационного моделирования (типа GPSS/H) и на вершине специализированные и прикладные диалекты языка. Наиболее важной характеристикой языка является его послойная (многоуровневая) архитектура, это позволяет его применять пользователями с разными уровнями квалификации (от уровня системного программиста до уровня пользователя-непрограммиста), язык также поддерживает средства параллельных вычислений.

SIMUL8 [2] - это простая графическая среда для моделирования бизнес или производственных операций. Рабочие модели могут размещаться в Интернет, т.е. встраиваться в Web-интерфейс.

RT-LAB [3] - средство моделирования используется крупными компаниями, такими как, Ford, GM, Toyota NASA, Канадское космическое агентство и др. Среда интегрирована с MATLAB/Simulink, является открытой средой моделирования в режиме реального времени, может использоваться в локальной сети, подключенной к Интернет.

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

Forio [5]. Среда позволяет пользователю в Интернет создавать собственную модель, используя язык сценариев. Также предоставляются Web-инструменты для разработки пользовательского интерфейса. Моделирование выполняется на Web-сервере. Среда ориентирована на моделирование бизнес-процессов и на решении оперативных вопросов (например, разработка рыночной стратегии).

Система WebGPSS (aGPSS) [6]. Разработка WebGPSS осуществлена Стокгольмской школой высшей экономики. Система предназначена для изучения языка GPSS и разработки простейших имитационных моделей при работе в сети Интернет. Сейчас WebGPSS -профессиональная система удаленного обучения GPSS. Языком имитационного моделирования в WebGPSS служит модернизированная версия Micro-GPSS. Основными отличиями являются графический интерфейс для работы в сети и некоторые педагогические упрощения. Суть обучения состоит в последовательном выполнении онлайн - уроков по GPSS.

Oryx [7] платформа графического моделирования, разрабатываемая в Потсдамском университете (Германия). Задача проекта Oryx - моделирование бизнес-процессов. Моделирование в многопользовательской системе Oryx осуществляется в стандартном браузере Mozilla Firefox. Моделирование в Oryx производится путем перемещения элементов из панели с шаблонами на рабочую область («холст»). Быстрый доступ к именам и значениям атрибутов элементов модели осуществляется посредством панели. Модели в Oryx описываются в формате RDF (Resource Description Framework) и хранятся на сервере в виде XHTML-документов. Модель несет в себе как структурную информацию (описание элементов и отношений между ними), так и информацию о графическом представлении (описание правил отображения элементов). Каждой модели соответствует уникальный URL, позволяющий получить к ней доступ по протоколу HTTP.

Средства моделирования на основе интернет-технологий разрабатываются в России, в том числе, в высших учебных заведениях. В национальном исследовательском ядерном университете «МИФИ» разработана Web-среда компьютерного моделирования процессов, протекающих в стационарных линейных динамических системах [8]. При этом используется Web-сервис, который имеет трехуровневую клиент-серверную архитектуру. Построение модели и изменение ее параметров проводится пользователем в окне браузера на основе передаточной функции динамической системы в виде структурной схемы, или в векторно-матричной форме в пространстве состояний. Web-среда выполняет визуализацию частотных и логарифмических характеристик динамической системы, переходных процессов и др. Web-среда используется в учебном процессе для компьютерного моделирования объектов, процессов и систем при проведении лабораторных работ, выполнения расчетно-графических задач в ходе самостоятельной подготовки, создания иллюстрированного электронного учебно-методического контента электронного обучающего ресурса.

В Нижегородском государственном техническом университете им. Р.Е. Алексеева предложена архитектура среды моделирования динамических систем, построенная с применением технологий открытых систем и Web 2.0 [9]. Особенностями среды являются возможность ее расширения (по методам интегрирования, моделям и диалоговым окнам), независимость от ряда программных и аппаратных платформ (к последней относятся операционная система и Web-браузер), возможность внедрения в другие системы и поддержка механизмов взаимодействия с внешними системами посредством XML, возможность расчета параметров модели разными методами интегрирования. Кроме того, пользователь

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

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

Сервер GPSS обеспечивает и планирует функции удаленного использования одной или нескольких копий GPSS World несколькими пользователями как в локальной сети, так и в сети Интернет. Сервер использовался уже в целом ряде имитационных приложений и позволил решить две важные задачи: вынести «моделирующее ядро» на более высокопроизводительный компьютер (сократив длительность эксперимента с моделью) и уменьшить число приобретаемых Заказчиком лицензий (снизив благодаря этому стоимость исследований).

В институте вычислительной математики и математической геофизики СО РАН разработана среда AGNES (AGent NEtwork Simulator) [11], являющаяся системой имитационного моделирования больших систем с дискретным числом состояний. Система AGNES является кроссплатформенной (Java-приложение), возможен распределенный запуск (на локальной сети или вычислительном кластере) и полунатурное моделирование. Область применения: локальные компьютерные сети, беспроводные сенсорные сети, вычисления на суперЭВМ.

Один из широко распространённых отечественных коммерческих программных продуктов, который конкурирует с зарубежными аналогами, является среда моделирования AnyLogic [12]. AnyLogic позволяет использовать различные подходы к моделированию: агентный, дискретно-событийный, подход на основе системной динамики. AnyLogic поддерживает как дискретный, так и непрерывный подход в пределах одной модели. AnyLogic базируется на языке Java, что позволяет расширять модели за счет использования других библиотек, получаемые модели являются кроссплатформенными и могут быть размещены в Интернет в форме апплета.

В МГТУ им. Баумана также разрабатывались подобные средства разработки. В [13, 14] представлено описание кроссплатформенной библиотеки функций языка Си++, имеющей реализации для ОС типа Windows и UNIX. Данные средства не подходят для удаленной работы в сети Интернет, так как удаленная работа в сети Интернет предполагает использование на локальном компьютере из дополнительного программного обеспечения только Web - браузер со стандартными функциями. Продолжение этой работы являлась библиотека классов языка Java [15]. В [16] представлены примеры использования этой библиотеки в клиентских приложениях типа Java-апплетов для сети Интернет. В [17,

18] рассмотрена задача разделения заданий имитационного моделирования между клиентом и сервером по аналогии с задачами балансировки нагрузки и эксперименты по ее решению.

Распределенные вычисления могут использоваться и для решения других задач, требующих существенных вычислительных ресурсов, например, для задач типа [ 19-21 ].

1. Описание среды моделирования SimJavaWeb

Среда моделирования SimJavaWeb представляет собой кроссплатформенное интернет-приложение, построенное на технологии Java-сервлетов, в данном приложении используется библиотека классов языка Java [15]. Для реализации проекта было использовано следующее программное обеспечение с открытой лицензией:

• JDK (Java Development Kit), версии 1.8, производитель компания Oracle;

• Eclipse Java EE IDE for Web Developers, версии Luna Service Release 2 (4.4.2), производитель некоммерческая организация Eclipse Foundation;

• контейнер сервлетов Apache Tomcat, версии 1.8, производитель Apache Software Foundation.

Приложение имеет модульную структуру, упрощенная структура модулей приложения представлена на рис. 1.

Рис. 1. Назначение основных программных модулей среды моделирования и их взаимосвязи

При работе с ресурсом введены два вида пользователей: пользователь-преподаватель и пользователь-студент.

Преподавателю доступны следующие функции:

• ввод исходных текстов моделей как на языке программирования Java с использованием библиотеки классов для имитационного моделирования, так и на языке, похожем на GPSS, для этого на сервере реализован интерпретатор этого языка, хранение моделей на сервере, их отладка и запуск на стороне сервера;

• предоставление прав доступа зарегистрированным студентам;

• размещения на сервере учебных материалов в формате pdf (лекций, семинаров, лабораторных работ);

• размещение объявлений для студентов;

• получение уведомлений о представленных студентами текстах имитационных моделей, разработанных при выполнении заданий лабораторных работ, проверка исходных текстов моделей с возможностью их запуска на стороне сервера, ввод данных о результатах проверки;

• получение уведомление о представленных студентами отчетов по лабораторным работам, проверка отчетов, ввод данных о результатах проверки;

• ввод и просмотр данных о контрольных мероприятиях курса;

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

• ввод данных о полученных студентами баллов по контрольным мероприятиям и семинарам;

• ввод тестов в базу данных сервера для тестирования и самотестирования студентов;

• размещение на сервере вариантов заданий для контрольных работ, для последующей автоматической раздачи студентам;

• получение статистических данных об успеваемости всех студентов по выбранным учебным группам;

• получение справочной информации с примерами моделей и возможностью их запуска на стороне сервера;

• участие в форуме и редактирование материалов форума;

• резервное копирование и восстановление баз данных сервера.

Студенту доступны следующие функции:

• ввод исходных текстов моделей как на языке программирования Java с использованием библиотеки классов для имитационного моделирования, так и на языке, похожем на GPSS, для этого на сервере реализован интерпретатор этого языка, хранение моделей на сервере, их отладка и запуск на стороне сервера;

• получение доступа к учебным материалам сервера;

• знакомство с объявлениями для студентов;

• представление текстов имитационных моделей в качестве заданий лабораторных работ на проверку преподавателю, получение уведомлений от преподавателя о результатах проверки;

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

• просмотр данных о контрольных мероприятиях курса;

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

• проведение самотестирования по темам курса;

• автоматическое получение на сервере варианта задания для контрольной работы во время ее выполнения;

• получение статистических данных о своей успеваемости;

• получение справочной информации с примерами моделей и возможностью их запуска на стороне сервера;

• участие в форуме.

В настоящее время среда доступна по адресу в Интернет: http://student.bmstu.cloud:10288/SimJavaWeb/ServMain. Внешний вид главной страницы ресурса представлен на рис. 2.

Рис. 2. Внешний вид главной страницы образовательного ресурса

2. Примеры моделей в среде SimJavaWeb

Для разработки моделей, которые выполняются на стороне сервера, возможно использовать два языка:

• язык Java с библиотекой классов для имитационного моделирования [15], библиотека дополнена специальными методами классов для вывода данных в формате HTML для отображения в браузере;

• язык, похожий на GPSS (есть некоторые отличия от GPSS), интерпретатор этого языка реализован в виде класса языка Java, описание интерпретатора приведено в [16].

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

Трехканальная система массового обслуживания (СМО) обслуживает пуассоновский поток заявок, время между заявками является случайной величиной распределенной по показательному закону, интенсивность потока заявок - 10 заявок в минуту. Время обслуживания одной заявки также распределено по показательному закону, интенсивность потока обслуживания - 4 заявки в минуту. Если заявка приходит в момент времени, когда все каналы заняты, то она получает отказ в обслуживании. Провести имитационное моделирование СМО в течение 1000 часов, определить параметры СМО: вероятность отказа в обслуживании, вероятность того, что заявка будет обслужена, абсолютную пропускную способность (среднее число заявок, обслуживаемых в единицу времени), среднее число занятых каналов.

Данная задача имеет аналитическое решение [22], называется задачей Эрланга или СМО вида М/М/п/0. Основные соотношения имеют следующий вид:

p = (—+ р+2рр + ~ +"р") ,

где р0 - вероятность того, что в системе нет ни одной заявки;

р=А,/ д - приведенная интенсивность;

А=10 заявок в минуту - интенсивность входного потока заявок;

д=4 заявки в минуту - интенсивность обслуживания;

n=3 - число каналов обслуживания;

1 n

pn = — р p0 - вероятность того, что в системе n заявок; n!

Ротк = pn - вероятность отказа в обслуживании;

Робс =1 - Ротк =1- — р"Ро - вероятность того, что заявка будет обслужена; n!

1

nV

A = ЛРобс = Л(1- — pnp0) - абсолютная пропускная способность;

к = A / л = р

1--- Р

V n! У

среднее число занятых каналов.

Подставив заданные значения, получаем результаты:

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

Ротк ~ 0,282, Робс ~ 0,718, А ~ 7,178 заявки в мин., к « 1,795.

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

Исходный код модели на языке Java с использованием библиотеки классов для имитационного моделирования в окне браузера представлен на рис. 3. Результаты моделирования этой модели, также в окне браузера приведены на рис. 4. Исходный код модели на языке, похожем на GPSS, в окне браузера представлен на рис. 5. Результаты моделирования этой модели в окне браузера приведены на рис. 6.

Рис. 3. Исходный код модели на языке Java с использованием библиотеки классов

Рис. 4. Результаты моделирования на языке Java

.... В С : Q -С, П И 4. П =

( [¡.миши сирлнки. iiucinNin ini.tH ми и mi)ними||hi ii.i ci'jiuvpi' ii j hiukc. миложсм no upss

Примеры ИШОВЬП I 4f ■'.1 UlUKi.fjHKK! M EJ G PSS, .[ [II IDDICKl II U tt tlj|l»i|Jl

Uillf J IIII: I Р1ШЙ cnpjbkll III 4? :|.'MII II. I ll> I II 41, t H 1 П.". I Mil ■ I Ш HI tf pttf f Ith C4t|i]tllHtM«.'IL!!'!. Mltu I ^KIIIJ IMI JII CMD T 1*11-Л H l lsj^ij ilp ши t} » и. шгг i\ij<i n

Трчхминльнш шу wt.'i^'kiiiviife riydituipjivtilhd irt(uj< $ubok, лрсхх м?"ги: hubtiami яишк fin сйучилнил fcejuniufm pfluipcasiktimil

(W III;;ii.nn;.. IIH jfll.jlL-ihijiLT-L niilutii шЯАш ! I ;;i.4iiL'i: h чину Г- Н|кЫЧ i-iC4_-Jl;, .*hb;iKii:J 1W)H ]&::;i--i.':ii!,1vHli ПО

□ошиагальнсщ} мы.чн;, innnuKWicn по-токл |К5слуи1[нанш - I l-ubecu с uiqrrf. Fl'h: щшев цишдп п лоипйг времени, когда ке шнвш HBtiu, [о сна пчлучлс! отуи il о5^л;и:;[тн5и1. riposiLiii жшгтпшокнй» иоделнровз№е СЫО и гечейк^ Lliiчасоа. определить цишры ONTO' вергчтппгтъ шги с обслуязтлнш]. всрлттапеть гепп. чю iFiasKi оослуни1а, вбашлцш проникну»

сшги&юпъ (срсамсе ■"■.■ и нивок, обслулйшз^Шх и -'.и'шгп:. livtMi i n ■. ¿ртдл:; ii^hj tiutnux mraitoi. (Пркнсрш r<i№lS CMOikwxi миц ii.lii i с ■! i и .14 и a in 111 н! Код мпаели Fin ятию; потянем !гл CiP^S: г ц^|ии.|ищилт1ем|1 -ti'I с

Гтлзшня =tcragt J : л:, чмш калэ.юэ 3

«с>в№Ш11| 1DF ; Гифртор чн«еи L. чн1аМвйж>#ь ^чэоя ] а^к-л г егтчиу брэм-ни

ЛИТгшз ' «¡(Панм'я, С'кАЕ : Oaia TiMHSJKTii

г^-гl-.u mtirsi стоящи j г,ч~f-г- ^paa-.-.ti ч; 1гд qfcjiyqpiliahw

advance auroner.^ial _ -I ; reidepiT-p с.туч. 'л:-?л 2, штаыБцЬлостъ о'слуимэйкмч 4 салаки, s Бранеыи

l«ve Гтшидд 5!.kdi lermiDal-t

делегате Ur E300L j Зр'.-Uh ислизгр^ьлни^ ШЛО ID□ С£7 ыинуг;

. QLV. Г r.-.-'Z-Ji^.H ЦГрйЯГНЗСП й?ГСЭ=й

--' pst (3i?No~Dckai/iul) : Гэгучд^м a^i^.nc-TKyu прэг.у1г~уж: Hrf.insve. 1 start ]

11 kin iPia>iCh(KrC> фпЛла t НЮИЫ«: FirvHr!] h*t

мм илгпи ш nrpiifii и >1пу*-шгь ern

Рис. 5. Исходный код модели на языке, похожем на GPSS

Рис. 6. Результаты моделирования на языке, похожем на GPSS

Заключение

Как видно из представленных на рис. 4 и рис. 6 отчетов, результаты имитационного моделирования совпали (с точностью до третьего знака десятичной дроби) с результатами, полученными при аналитических расчетах. Следует отметить, что время проведения машинных экспериментов, которое зависит также от быстродействия сервера, при использовании языка Java с библиотекой классов на порядок меньше, чем время проведения машинных экспериментов на том же сервере при использовании интерпретатора языка, похожего на GPSS.

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

Работа выполнена при поддержке благотворительного фонда Владимира Потанина.

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

1. SLX a new approach to simulation modeling. Режим доступа: http://www.wolverinesoftware.com (дата обращения 26.12.2016).

2. SIMUL8 Business Simulation Player. Режим доступа: http://www.simul8.com (дата обращения 26.12.2016).

3. RT-LAB Professional - Real Time Digital Simulation Software. Режим доступа: http://www.opal-rt.com/product/rt-lab-professional-real-time-digital-simulation-software (дата обращения 26.12.2016).

4. Gridsim Projects. Режим доступа: https://academiccollegeprojects.com/cse-projects/gridsim-projects (дата обращения 26.12.2016).

5. Training Simulations & Predictive Analytics Applications. Режим доступа: https://forio.com/ (дата обращения 26.12.2016).

6. aGPSS - Simulation made simple. Режим доступа: http://agpss.com (дата обращения 26.12.2016).

7. Декер Г., Веске М., Смирнов С., Овердик Х. Открытая BPM-платформа // Открытые системы. СУБД. 2009. № 4. Режим доступа: http://www.osp.ru/os/2009/04/9285904 (дата обращения 26.12.2016).

8. Карпелевич Д.М., Густун О.Н. ВЕБ-среда компьютерного моделирования линейных динамических систем // В книге: Научная сессия НИЯУ МИФИ-2014. Aннотации докладов: в 3-х томах. 2014. С. 80.

9. Жевнерчук Д.В., Aристов A3. Web 2.0 среда моделирования динамических систем // Программные продукты и системы. 2011. № 2. С. 16-19.

10. Власов СА., Девятков В.В., Кобелев Н.Б. Имитационные исследования: от классических технологий до облачных вычислений // Сборник докладов пятой (юбилейной) всероссийской научно-практической конференции по имитационному моделированию и его применению в науке и промышленности «Имитационное моделирование. Теория и практика» ИММОД-2011 (Санкт- Петербург, 2011 г.). Т.1. С. 42-50.

11. Подкорытов Д.И. Aгентно-ориентированная среда моделирования сетевых систем AGNES // Ползуновский вестник. 2012. № 2-1, C. 94- 99.

12. AnyLogic ®. Режим доступа: http://www.anylogic.ru/ (дата обращения 26.12.2016).

13. Медведев Н.В., Быков A.^^, Гришин T.A. Имитационное моделирование систем массового обслуживания с использованием межплатформенной библиотеки функций языка Си++ // Вестник МГТУ им. Н.Э. Баумана. Сер. Приборостроение. 2005. № 4. С. 85-93.

14. Журавлев AM., Медведев Н.В., Быков A^. Использование межплатформенной библиотеки функций языка Си++ для реализации имитационных моделей типовых систем массового обслуживания // Вестник МГТУ им. Н.Э. Баумана. Сер. Приборостроение. 2008. № 4. С. 3-15.

15. Быков А.Ю., Панфилов Ф.А., Сумарокова О.О. Имитационное моделирование с применением библиотеки классов языка Java, разработанной для «облачных» сервисов // Инженерный журнал: наука и инновации. Электронное научно- техническое издание. 2013. № 2. DOI: 10.18698/2308-6033-2013-2-535

16. Быков А. Ю., Кожемякина Е.В., Панфилов Ф.А. Имитационное моделирование систем массового обслуживания в клиентских приложениях при использовании технологии «облачных» вычислений // Инженерный журнал: наука и инновации. Электронное научно-техническое издание. 2013. № 11. DOI: 10.18698/2308-6033-2013-11-1001

17. Быков А. Ю., Медведев Н.В., Панфилов Ф.А. Тестирование клиента и сервера для выбора объекта проведения экспериментов в инструментальном программном средстве имитационного моделирование на основе технологии «облачных» вычислений // Инженерный журнал: наука и инновации. Электронное научно- техническое издание. 2013. № 11. DOI: 10.18698/2308-6033-2013-11-989

18. Быков А.Ю. Задача распределения заданий между клиентом и сервером в имитационном моделировании на основе технологии облачных вычислений и результаты экспериментов по ее решению // Инженерный вестник МГТУ им. Н.Э. Баумана. Электрон. журн. 2014. № 1. Режим доступа: http://engbul.bmstu.ru/doc/697425.html (дата обращения 26.12.2016).

19. Ключарёв П.Г. Реализация криптографических хэш-функций, основанных на обобщенных клеточных автоматах, на базе ПЛИС: производительность и эффективность // Наука и образование. МГТУ им. Н.Э. Баумана. Электрон. журн. 2014. № 1.

DOI: 10.7463/0114.0675812

20. Балк Е.А., Ключарёв П.Г. Исследование характеристик лавинного эффекта обобщенных клеточных автоматов на основе графов малого диаметра // Наука и образование. МГТУ им. Н.Э. Баумана. Электрон. журн. 2016. № 4. DOI: 10.7463/0416.0837506

21. Ключарёв П.Г. Производительность поточных шифров, основанных на клеточных автоматах, при реализации на графических процессорах // Наука и образование. МГТУ им. Н.Э. Баумана. Электрон. журн. 2016. № 6. DOI: 10.7463/0616.0842091

22. Клейнрок Л. Теория массового обслуживания. М.: Машиностроение, 1979. 432 с.

Science ¿Education

of the Bauman MSTU

El

tft

tronic journa

iSSH 1994-0408

/

Science and Education of the Bauman MSTU, 2017, no. 01, pp. 110-126.

DOI: 10.7463/0117.0000924

Received: 13.12.2016

Revised: 27.12.2016

© Bauman Moscow State Technical Unversity

Cloud-Based SimJavaWeb Software Tool to Learn Simulation

A.Yu. Bykov1'*, E.V. Glinskaja1, "atykov^bmstuju

F.K. Kolin'ko1

:Bauman Moscow State Technical University, Moscow, Russia

Keywords: simulation, Java language, Java servlet, cloud computing, distance education

Currently, in simulation there is a trend towards using the distributed software tools, particularly ones, which are using cloud technologies and the Internet. The article considers a simulation educational tool, implemented as a web application using the Java language with special Java class library developed for simulation. It is focused on a discrete event approach to modeling, similarly to the GPSS language, and intended for queuing systems simulation.

The structure of the models obtained using this class library is similar to that of the GPSS language models. Also, the simulation language interpreter similar to GPSS is created using this class library, with some differences in the individual statements.

Simulation experiments are performed on the server-side, and on client-side you must use a browser with standard functions to enter the source code into HTML-created form. Mobile devices can be used as clients. The source code of a model can be represented both in the Java language using a class library and in the language similar to GPSS.

The simulation system implements functions especially for educational process. For example, there is possibility for a student to upload learning materials on the server, send developed software and reports of test control to the teacher via the Internet, and receive a detailed assessment of their results from the teacher. Also detailed results of passed tests in learning modules are entered, and some other functions are implemented in the system.

As examples, the article considers models of the m/M/n/0 type queuing system in Java with a class library, and in the language similar to GPSS, shows simulation results, and presents the analytical model and calculations for this system. Analytical calculations proved that the modeling system is useful, as it overlaps simulation results with the acceptable error. Some approaches to the interaction with students through the Internet, used in modeling environment, can find application in teaching other subject matters.

References

1. SLX a new approach to simulation modeling. Available at: http://www.wolverinesoftware.com, accessed 26.12.2016.

2. SIMUL8 Business Simulation Player. Available at: http://www.simul8.com, accessed 26.12.2016.

3. RT-LAB Professional - Real Time Digital Simulation Software. Available at: http://www.opal-rt.com/product/rt-lab-professional-real-time-digital-simulation-software, accessed 26.12.2016.

4. Gridsim Projects. Available at: https://academiccollegeproiects.com/cse-projects/gridsim-projects, accessed 26.12.2016.

5. Training Simulations & Predictive Analytics Applications. Available at: https://forio.com, accessed 26.12.2016.

6. aGPSS - Simulation made simple. Available at: http://agpss.com, accessed 26.12.2016.

7. Deker G., Veske M., Smirnov S., Overdik H. Otkrytaja BPM-platforma. Otkrytye sistemy. SUBD = Open Systems. DBMS, 2009, no. 4. Available at: http://www.osp.ru/os/2009/04/9285904, accessed 26.12.2016. [In Russian]

8. Karpelevich D.M., Gustun O.N. VEB-sreda komp'iuternogo modelirovaniia lineinykh dinamicheskikh sistem. In book: Nauchnaja sessija NlJaU MIFI-2014. Annotacii dokladov: on 3 volumes, 2014, p. 80. [In Russian]

9. Zhevnerchuk D.V., Aristov A.V. Web 2.0 sreda modelirovaniia dinamicheskikh sistem [Web 2.0 simulation environment of dynamical systems]. Programmnye produkty i sistemy = Software & Systems, 2011, no. 2, pp. 16-19. [In Russian]

10. Vlasov S.A., Deviatkov V.V., Kobelev N.B. Imitatsionnye issledovaniia: ot klassicheskikh tekhnologii do oblachnykh vychislenii. Sbornik dokladov piatoi (iubileinoi) vserossiiskoi nauchno-prakticheskoi konferentsii po imitatsionnomu modelirovaniiu i ego primeneniiu v nauke i promyshlennosti «Imitatsionnoe modelirovanie. Teoriia i praktika» IMMOD-2011 (Saint Petersburg, 2011), vol. 1, pp. 42-50. [In Russian]

11. Podkorytov D.I. Podkorytov D.I. Agentno-orientirovannaia sreda modelirovaniia setevykh sistem AGNES. Polzunovskii vestnik = Polzunovsky herald, 2012, no. 2-1, pp. 94- 99. [In Russian]

12. AnyLogic ®. Available at: http://www.anylogic.ru, accessed 26.12.2016. [In Russian]

13. Medvedev N.V., Bykov A.Ju., Grishin G.A. Imitatsionnoe modelirovanie sistem massovogo obsluzhivaniia s ispol'zovaniem mezhplatformennoi biblioteki funktsii iazyka Si++. Vestnik MGTU Im. N.E. Baumana. Seriya: Priborostroenie [Herald of the Bauman Moscow State Technical University. Series: Instrument Engineering], 2005, no. 4, pp. 85-93. [In Russian]

14. Zhuravlev A.M., Medvedev N.V., Bykov A.Iu. Ispol'zovanie mezhplatformennoi biblioteki funktsii iazyka Si++ dlia realizatsii imitatsionnykh modelei tipovykh sistem massovogo obsluzhivaniia. Vestnik MGTU im. N.E. Baumana. Vestnik MGTU Im. N.E. Baumana. Seriya:

Priborostroenie [Herald of the Bauman Moscow State Technical University. Series: Instrument Engineering], 2008, no. 4. pp. 3-15. [In Russian]

15. Bykov A.Iu., Panfilov F.A., Sumarokova O.O. Imitatsionnoe modelirovanie s primeneniem biblioteki klassov iazyka Java, razrabotannoi dlia "oblachnykh" servisov [Simulation with usage of the Java class library, developed for "cloud" services]. Inzhenernyi zhurnal: nauka i innovatsii MGTU im. N.E. Baumana = Engineering Journal: Science and Innovations of the Bauman MSTU, 2013, no. 2. DOI: 10.18698/2308-6033-2013-2-535 [In Russian]

16. Bykov A.Ju., Kozhemjakina E.V., Panfilov F.A. Imitacionnoe modelirovanie sistem massovogo obsluzhivanija v klientskih prilozhenijah pri ispol'zovanii tehnologii "oblachnyh" vychislenij [Simulation of queuing systems in client applications using cloud computing technology]. Inzhenernyi zhurnal: nauka i innovatsii MGTU im. N.E. Baumana = Engineering Journal: Science and Innovations of the Bauman MSTU,, 2013, no. 11. DOI: 10.18698/2308-6033-2013-111001 [In Russian]

17. Bykov A.Ju., Medvedev N.V., Panfilov F.A. Testirovanie klienta i servera dlja vybora ob'ekta provedenija jeksperimentov v instrumental'nom programmnom sredstve imitacionnogo modelirovanie na osnove tehnologii "oblachnyh" vychislenij [Testing of the client and the server for a choosing of an object for experiments in instrumental software for simulation based on "cloud" computing]. Inzhenernyi zhurnal: nauka i innovatsii MGTU im. N.E. Baumana = Engineering Journal: Science and Innovations of the Bauman MSTU, 2013, no. 11.

DOI: 10.18698/2308-6033-2013-11-989 [In Russian]

18. Bykov A.Iu. Zadacha raspredeleniia zadanii mezhdu klientom i serverom v imitatsionnom modelirovanii na osnove tekhnologii oblachnykh vychislenii i rezul'taty eksperimentov po ee resheniiu [The problem of distribution of jobs between the client and server in the simulation based on cloud computing technology and results of experiments on its solution]. Inzhenernyi vestnik = Instrument Engineering. Bauman Moscow State Technical University: Electronic scientific publication, 2014, no. 1. Available at: http://engbul.bmstu.ru/doc/697425.html, accessed 26.12.2016. [In Russian]

19. Kliucharev P.G. Realizatsiia kriptograficheskikh khesh-funktsii, osnovannykh na obobshchennykh kletochnykh avtomatakh, na baze PLIS: proizvoditel'nost' i effektivnost' [The FPGA realization of the general cellular automata based cryptographic hash functions: Performance and effectiveness]. Nauka i obrazovanie = Science and education. Electronic scientific and technical publication, 2014, no. 1. DOI: 10.7463/0114.0675812 [In Russian]

20. Balk E.A., Kliucharev P.G. Issledovanie kharakteristik lavinnogo effekta obobshchennykh kletochnykh avtomatov na osnove grafov malogo diametra [Small Diameter Graph-based Investigation of Avalanche Effect Characteristics of Generalized Cellular Automata]. Nauka i obrazovanie = Science and education. Electronic scientific and technical publication, 2016, no. 4. DOI: 10.7463/0416.0837506 [In Russian]

21. Kliucharev P.G. Proizvoditel'nost' potochnykh shifrov, osnovannykh na kletochnykh avtomatakh, pri realizatsii na graficheskikh protsessorakh [Performance of Cellular Automata-

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

based Stream Ciphers in GPU Implementation]. Nauka i obrazovanie = Science and education. Electronic scientific and technical publication, 2016, no. 6. DOI: 10.7463/0616.0842091 [In Russian]

22. Leonard Kleinrock. Queueing Systems: Volume I - Theory. Wiley Interscience, New York, 1975. 417 p. (Russian ed.: Kleinrok L. Teoriia massovogo obsluzhivaniia. Mashinostroenie = Mechanical engineering, Moscow, 1979. 432 p.).

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