Научная статья на тему 'Удаленные вычисления через Web-сервер Matlab как система массового обслуживания'

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

CC BY
455
49
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
WEB-ПРИЛОЖЕНИЕ / УДАЛЕННЫЕ ВЫЧИСЛЕНИЯ / МАТЕМАТИЧЕСКИЕ ЗАДАЧИ / ЧИСЛЕННЫЕ МЕТОДЫ / СИСТЕМА МАССОВОГО ОБСЛУЖИВАНИЯ / ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ / ПАКЕТ ANYLOGIC / MATLAB WEB SERVER / WEB-APPLICATION / REMOTE COMPUTING / MATH PROBLEMS / NUMERICAL METHODS / QUEUEING SYSTEM / SIMULATION MODELING / ANYLOGIC PACKAGE

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Нгуен Зуи Тхаи

Разработано Web-приложение «Лабораторный практикум» с помощью Matlab Web Server (MWS) и удаленных вычислений для решения различных математических задач с точки зрения теории массового обслуживания. При этом MATLAB, MWS и Web-приложения образуют многоканальную систему массового обслуживания без отказа. В качестве источника запросов выступают удаленные пользователи, а прибор обслуживания представляют системы MATLAB и MWS. Приведены сравнительные результаты работы системы в соответствии с теоретическими заключениями и согласно имитационному моделированию в среде моделирования AnyLogic.

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Нгуен Зуи Тхаи

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

REMOTE COMPUTING THROUGH MATLAB WEB-SERVER AS QUEUEING SYSTEM

A Web-based application is designed with the use of Matlab Web Server (MWS) and remote computing for solving various mathematical problems of Laboratory workshop in terms of the queueing theory. In this case MATLAB, MWS, and Web-based applications form a multi-channel queueing system with no refusal. Remote users are the sources of queries, and the system of MATLAB and MWS is a servicing device. Comparative results of system operation are given in accordance with the theoretical conclusions and simulation modeling in AnyLogic simulation environment.

Текст научной работы на тему «Удаленные вычисления через Web-сервер Matlab как система массового обслуживания»

Библиографический список

1. Леоненков А.В. Нечеткое моделирование в среде MATLAB и fuzzyTECH. СПб.: БХВ - Петербург, 2005. 736 с.

2. Сосинская С.С. С662 Методы искусственного интеллекта и представления знаний: учеб. пособие. Старый Оскол: ТНТ, 2010. 165 с.

3. Солнцев Ю.П., Пряхин Е.И. С601 Материаловедение: учебник для вузов. Изд. 4-е, перераб. и доп. СПб.: ХИМАЗ-ДАТ. 2007. 784 с.

4. Mahmoud M. Farag "Quantitative methods of materials selection", Handbook of Materials Selection - Chapter 1, 2002 John Wiley & Sons, Inc., New York.

5. Michael F. Ashby "Materials Selection in Mechanical Design - 3rd Edition". Copyright © 1992, 1999, 2005 Michael F. Ashby.

6. www.specialmetals.com

7. www.bssa.org.uk

УДК 004.942

УДАЛЕННЫЕ ВЫЧИСЛЕНИЯ ЧЕРЕЗ WEB-СЕРВЕР MATLAB КАК СИСТЕМА МАССОВОГО ОБСЛУЖИВАНИЯ

Нгуен Зуи Тхаи1

Иркутский государственный технический университет, 664074, г. Иркутск, ул. Лермонтова, 83.

Разработано Web-приложение «Лабораторный практикум» с помощью Matlab Web Server (MWS) и удаленных вычислений для решения различных математических задач с точки зрения теории массового обслуживания. При этом MATLAB, MWS и Web-приложения образуют многоканальную систему массового обслуживания без отказа. В качестве источника запросов выступают удаленные пользователи, а прибор обслуживания представляют системы MATLAB и MWS. Приведены сравнительные результаты работы системы в соответствии с теоретическими заключениями и согласно имитационному моделированию в среде моделирования AnyLogic. Ил. 10. Табл. 1. Библиогр. 5 назв.

Ключевые слова: Matlab Web Server; web-приложение; удаленные вычисления; математические задачи; численные методы; система массового обслуживания; имитационное моделирование; пакет AnyLogic.

REMOTE COMPUTING THROUGH MATLAB WEB-SERVER AS QUEUEING SYSTEM Nguyen Duy Thai

Irkutsk State Technical University, 83 Lermontov St., Irkutsk, 664074.

A Web-based application is designed with the use of Matlab Web Server (MWS) and remote computing for solving various mathematical problems of "Laboratory workshop" in terms of the queueing theory. In this case MATLAB, MWS, and Web-based applications form a multi-channel queueing system with no refusal. Remote users are the sources of queries, and the system of MATLAB and MWS is a servicing device. Comparative results of system operation are given in accordance with the theoretical conclusions and simulation modeling in AnyLogic simulation environment. 10 figures. 1 table. 5 sources.

Key words: Matlab Web Server; web-application; remote computing; math problems; numerical methods; queueing system; simulation modeling; AnyLogic package.

Введение. Применение новой технологии в реформировании средств организации учебного процесса, интенсивное внедрение дистанционного обучения происходит во многих учебных заведениях. В связи с этим направлением в свой работе автор уже разработал технологию MWS для создания Web-приложения на основе «Лабораторного практикума» по численным методам в системе МДИДВ.

Система (МДИДВ, MWS, Web-приложения), используемая для предоставления удаленным пользователям доступа к лабораторному практикуму, должна обеспечивать возможность многопользовательского режима работы в реальном масштабе времени, следовательно, обеспечивать необходимую пропускную способность.

С целью определения конфигурации и основных динамических параметров, система исследована в

данной работе с точки зрения теории массового обслуживания. Удаленные пользователи рассматриваются как источник запросов, а MWS и MATLAB играют роль прибора обслуживания. Для реализации математической модели и проведения требуемых расчетов был выбран пакет AnyLogic, который предназначен для разработки и исследования имитационных моделей.

MWS и ее компоненты. MWS - это обширная библиотека стандартных функций. Она позволяет создавать приложения, в которых MATLAB использует возможности Всемирной Паутины (World Wide Web) для посылки данных в MATLAB и отображения результатов в Web-браузере. MWS позволяет создавать приложения для работы в режиме удаленного доступа, используя стандартные компоненты Matlab. Приложение работает на сервере, а пользователь взаи-

1 Нгуен Зуи Тхаи, аспирант, тел.: 79246256668, e-mail: duythaipistu@gmail.com Nguyen Thai Duy, Postgraduate, tel.: 79246256668, e-mail: duythaipistu@gmail.com

модействует с ним через Web-браузеры. Для работы с приложением пользователю нужна не Matlab, а только скоростная линия связи с сервером.

MWS включает в себя программы, позволяющие создать MATLAB-приложение, имеющее доступ к Интернету: программу matlabserver, которая управляет связями между Web-приложением и MATLAB; программу matweb, которая является TCP/IP клиентом matlabserver и извлекает данные из HTML-страниц, а затем передает их matlabserver с помощью Common Gateway Interface (CGI); системный файл matweb.m, который в связи с программой matweb вызывает написанные M-файлы для загрузки Web-приложений. Кроме MWS нужно установить программу Apache в качестве Web-сервера (Web Server).

При работе MWS возможно запускать на сервере столько экземпляров MATLAB одновременно, сколько позволяет компьютер в зависимости от мощности его процессора и объема памяти.

Анализ структуры MWS. Функционирование MWS осуществляется по принципу сервер-пользователя. Взаимодействие удаленных пользователей (УП) с Web-сервером осуществляется через глобальную вычислительную сеть - Интернет. Принятые Web-сервером от УП запросы на вычисление обрабатываются и передаются MATLAB, который использует нужные M-файлы и данные. Взаимодействие Web-сервера и MATLAB осуществляется напрямую, так как в данной работе был рассмотрен случай,

в котором Web-сервер MATLAB и MATLAB были установлены на одном компьютере. В случае, если Web-сервер MATLAB и MATLAB устанавливаются на различных компьютерах локальной сети, взаимодействие Web-сервера и MATLAB осуществляется через локальную вычислительную сеть (ЛВС).

На рис. 1 представлена структурная схема MWS, которая используется для описания её математической модели.

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

T = ^з.интер + ^з.обр + ^жид + ^ыч + ^.обр + ^.интер ,

где ^.интер - время на передачу запросов от пользователя Web-серверу через Интернет; ^.о6р - время на обработку запроса; ^жид - время на ожидание вычисления; ^ыч - время на вычисление; ^.о6р - время на обработку результата вычисления; ^.интер - время на передачу результата пользователю через Иинтернет.

Выбор структуры математической модели MWS. Структуру, представленную на рис. 1, можно заменить схемой системы массового обслуживания (СМО), предназначенной для обслуживания потока заявок [2]. Такая система показана на рис. 2.

В качестве источника заявок A выступают удаленные пользователи, формирующие поток заявок на

Удаленный пользователь

\\

t р.интер^^ з

)нет ^^

зеп ^

L р.интер "V ^v ^з.интер

1 1 Интернет

^р.обр

Web-сервер

httpd

matweb

j k.

i f

matlabserver

i V

i f

MATLAB

М-файлы Данные

Удаленный пользователь

Графики

ожид

t

з

t

Рис. 1. MATLAB в сети Интернет

вычисление. Необходимость использования очереди обусловлена тем, что на осуществление вычислений по каждому запросу требуется определенное время, при этом определенные запросы, поступающие в те моменты, когда заняты приборы обслуживания, не должны быть потеряны. Все запросы, безусловно, принимаются в очередь на обслуживание, и очередь является неограниченной по числу мест. В системе MWS приборы обслуживания представляют собой экземпляры MATLAB, в которых происходят вычисления. Количество экземпляров MATLAB задается администратором. Следовательно, с точки зрения теории массового обслуживания система MWS будет являться одноканальной системой без отказов (одноканаль-ная СМО без потерь), если количество MATLAB равно 1, и многоканальной системой без отказов, если количество MATLAB равно n (n>1).

Следовательно, по дисциплине ожидания система является СМО с ожиданием и по дисциплине обслуживания система имеет принцип взаимодействия очереди и системы обслуживания FIFO - первым пришел, первым обслужился. По системе обслуживания система имеет одинаковые приборы обслуживания по производительности [3].

Интенсивность поступления запросов определяется интервалом времени t между запросами. Данная величина имеет случайный характер. Она зависит от количества удаленных пользователей, подключающихся к системе, и интервала времени t между запросами.

Время, затрачиваемое на вычисление запросов (^ыч), зависит от мощности компьютеров и количества экземпляров MATLAB, работающих одновременно под управлением Web-сервера MATLAB. Фактически это время слишком мало по сравнению со временем реакции системы.

Длительность передачи запросов и результатов вычисления по Интернету ^зинтер, ^.интер) и время обработки запросов и результатов вычисления ^зо6р, ^.о6р) могут считаться постоянными, потому что запросы и результаты вычисления почти не отличаются друг от друга по объему передаваемых данных.

Аналитическое моделирование системы MWS. В теории массового обслуживания основной задачей является нахождение вероятности того, что в системе находится k запросов. Зная эти вероятности, находят показатели эффективности, а далее, при необходимости, значения экономических критериев. Основными показателями эффективности СМО являются: Q -

пропускная способность; Ротк - вероятность отказа в обслуживании; Роч - вероятность появления очереди; п - среднее число занятых приборов; т- среднее число запросов в очереди; N - среднее число запросов в системе; tоч- среднее время нахождения запросов в очереди; tс - среднее время нахождения запросов в системе (в моделировании для вычисления tс не учитываются постоянные значения параметров винтер, ^з.обр, ^.обр, ^.интер)-

Предположим, что количество экземпляров МАИ.АБ равно 3 (п = 3). Следовательно, система имеет 3 прибора обслуживания. С точки зрения теории массового обслуживания система MWS представляет собой многоканальную систему без отказов или чистую систему с ожиданием [1].

Для моделирования системы MWS важными величинами являются интенсивность потока запросов, интенсивность обслуживания, число приборов обслуживания. Поэтому для остальных величин приведены только средние значения:

t з. интер = 2, t з. обр = 0.1,t р. обр = 0.15^ р. интер = 3.

Предположим, что средний интервал времени между отправкой запросов на вычисление одним

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

й, 0 < ^ < t2 < < Ъ...) [2]. Легко заметить, что данный поток заявок обладает следующими свойствами:

стационарностью, так как вероятность появления к заявок за время t не зависит от начального времени Ъ: РкОс, № РкГО;

отсутствием последействия, так как существует взаимная независимость появления того или иного числа заявок в непересекающиеся промежутки времени: Рк(Ц = РМ(У Рк2^), t = ^ + t2, к = к! + к2;

ординарностью, так как невозможно возникновение двух или более заявок за малый промежуток времени, Р0(Д^ + Р-|(ДЦ ^ 1 при Дt ^ 0.

Следовательно, поток запросов является пуассо-новским [2]. Далее найдем показатели эффективности системы в различных моделях.

ожид

Рис. 2. Схема СИО для MWS

t

Как показано выше, система является многоканальной СМО без отказа, то есть система имеет вид М/М/п/«. График гибели и размножения для этой системы показан на рис. 3.

х X х х

зователей от 1 до 1000 и изменении среднего времени вычисления одного запроса в трех случаях: при tобр = 0.2, 0.25, 0.3.

А

А

А

/ 2/ к/ (k+1)/ n/

Рис. 3. График гибели и размножения системы вида М/М/п/х

nu

Количество состояний системы бесконечно Z¡ (I =0, 1, 2, 3,...), соответственно их вероятности в стационарном режиме Р| (I =0, 1, 2, 3,.). Показатели эффективности СМО в стационарном режиме определяются следующими равенствами [2]:

1-1

P0 =

, n ak an+1

1 + z — +-

k=1 k! n!(n -a)

a

k

P =-Pn,k = 1..n;

k k! 0

Pk =

a

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

n! n

k-nP0,k > n;

n = a;m = -

aP,

оч

n-a

n-1

;N = n+ m;Q = А

Po4 = 1 - z Pk; k=0

t оч =

_m _N

= А Jc =T

Увеличение N обуславливает увеличение среднего времени ожидания в очереди и среднего времени нахождения запроса в системе.

Изменяя количество экземпляров MATLAB от 2

до 4, получим график зависимости tоч от количества удаленных пользователей в стационарном режиме (рис. 5). Из графика видно, что при увеличении количества экземпляров MATLAB уменьшается среднее время нахождения запросов в очереди.

Предположим, что система не имеет очереди, то есть система имеет вид М/М/п/0. При n=3 состояния системы Zi (i=0, 1, 2, 3) и соответственно их вероятности Pi (i=0, 1, 2, 3). На основе графика гибели и размножения получим систему дифференциальных уравнений Колмогорова для вероятностей состояний системы [1]:

Расчеты производились при количестве удаленных пользователей N=1000, tср = 200, tобр = 0.25. Были получены такие показатели эффективности системы:

Q=5, m = 0.1110 , N = 1.3611, О = 0.0222, Ь = 0.2722 , п = 1.25

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

0.06

0.045

0.04

dPg(t)

dt dP1(t)

dt dP2(t)

dt dP3(t)

dt

= -AP0(t) + /P1(t), = -(/ + A)P1(t) + AP0(t) + 2/>2(t), = -(2/ + А )P2(t) + AP1(t) + 3/P3(t), = -3/P3(t) + AP2( t),

P0(0) = 1;Pk(0) = 0,k = 1,2,3.

- *о6с=0-з/ /

- 4>6с= 0.25

-

300

400

500

600

700

Количество удаленных пользователей N

Рис. 4. Графики зависимости tоч от N при tобР = 0.2, 0.25, 0.3

k

Рис. 5. График зависимости

Решив эту систему численным методом Рунге-Кутта четвертого порядка, получим значения вероятностей состояний системы Р0(^, Р^), Р2(^, Pз(t), которые отображают переходные процессы работы системы. На рис. 6 показан график изменения вероятностей состояний системы при п=3, Л=0.005, ц=0.25, N=1000.

Показатели эффективности СМО в стационарном режиме можно определить из следующих равенств [2]: 1-1

tоч от N при п =2, 3, 4

3, т=1 состояния системы 2| (I =0, 1, 2, 3, 4) и соответственно их вероятности Р| (I =0, 1, 2, 3, 4). Получим систему дифференциальных уравнений Колмогорова для вероятностей состояний системы [1]:

>0(г)

р0 =

Р„

а

k

1 + Е — /с=1 ^

а

k

; p^ =-рп* = 1..п;

k ^ 0

а

= Pn =— Po;Q = М1 - Pотк ) =

п!

= п ц;п =а(1 - ротк );tc = —.

Л

При п=3, 1=0.005, ¡¡=0.25, n=1000 получились коэффициенты эффективности: po=0.2979, p1=0.3724, p2=0.2327, p3=0.0970, pотк=0.0970, q=4.5151,

-о = 0.2258 , п = 1.1288.

Предположим, что система имеет одно место в очереди, то есть система имеет вид М/М/п/т. При п =

йг йР1 (г)

йг йР2 (г)

йг йРъ (г)

йг йР4(г)

йг

= -ЛР0(г) + ИР1(г), = -(ц + Л) Р (г) + АР0 (г) + 2^Р2 (г), = -(2 ц + Л) Р2 (г) + ХРХ (г) + 3^Р3 (г), = -(3ц + Л) Р (г) + ЛР2 (г) + 3цР4 (г), = -3цР4(г) + ЛР3(г);

Р0(0) = 1; Рк (0) = 0, к = 1,2,3,4.

Время (с)

Рис. 6. График изменения вероятностей состояний системы вида М/М/п/0

п

<

При m=0 имеются 9.7% заявок, которым отказано в обслуживании, при m=1 и m=2 - соответственно 3.88 и 1.59%.

Увеличение количества мест в очереди повысило среднее число занятых приборов и увеличило пропускную способность, но уменьшило вероятность отказа от обслуживания.

Имитационное моделирование системы MWS в AnyLogic. В соответствии с описанной выше формализацией системы была проведена программная реализация имитационной модели в среде программного пакета AnyLogic. Этот пакет является отечественным профессиональным инструментом нового поколения, который предназначен для разработки и исследования имитационных моделей. Разработчик продукта -компания «Экс Джей Текнолоджис» (XJ Technologies), г. Санкт-Петербург [3]. Ниже на рис. 9 показана схема моделирования системы MWS. Объект «Удаленные пользователи» моделирует поток заявок удаленных пользователей на вычисление. Объект «Web-Сервер» моделирует очередь заявок, ожидающих обслуживания. В данном случае он имитирует Web-Сервер, где находятся заявки, ожидающие обслуживания, когда все приборы заняты. Объект «MATLAB» моделирует задержку. Он имитирует экземпляры MATLAB, затрачивающие случайное время на вычисление заявок удаленных пользователей. Объект «Отказ 1» моделирует поток заявок, которым отказано в обслуживании в случае М/М/n/m. Объект «Отказ 2» моделирует подобный поток заявок в случае М/М/n/O. Объект «Результаты» обозначает выходной поток заявок.

Моделирование производилось в течение t = 200 c. Результаты моделирования показаны на рис. 10.

1 -1-1-1-1-1-1-1-i-г

(5

О О

£ Я

о $

CQ

Рис. 7. График изменения вероятностей состояний системы вида M/M/n/m

Решив эту систему численным методом Рунге-Кутты четвертого порядка, получим значения вероятностей состояний системы Р0(Ц, Р^), Р2(Ц, Р3(^, Р4(Ц, которые отображают переходные процессы работы системы. На рис. 7 показан график изменения вероятностей состояний системы при п=3, т=1, Л=0.005, ^1=0.25, N=1000.

Показатели эффективности СМО в стационарном режиме определяются следующими равенствами [2]:

P =

n ak an m fas

1 + Z 77+— Z .

k=1 k! n! s=1\ n

-1

Pk —Ъ," = L.";Pn+s = a {0; 1,P0,1 *s * m;

Pотк = Pn+m;Q = А(1 - Pтк ) = n /;n = a(1 - pотк );

- m n ---- m - N m = Z sPn+s''N = n+ m;t оч = — ;tc = — s=1 А А

При п=3, т=1, Л=0.005, ^=0.25, N=1000 получили Р0=0.2863, Р1=0.3579, Р2=0.2237, Р3=0.0932,

P4=0.0388, Ротк=0.0388^=4.8058, t оч = 0.0078

tc = 0.2481, П = 1.2015

На рис. 8 показан график зависимости вероятности отказа от количества мест в очереди системы.

Рис. 8. График зависимости вероятности отказа от количества мест в очереди системы вида M/M/n/т (m=0,1, 2)

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

Рис. 9. Схема моделирования системы MWS в Any Logic

О 20 40 60 80 1 00 120 140 160 180 200 — Среднее время нахождения в очереди — Среднее время нахождения в системы

Рис. 10. Результат имитационного моделирования системы вида М/М/п/х

Сравнительные результаты работы системы

" ——^^^^Показатели Модели ' ' ■—■— Pотк n m N t оч tc

М/М/nh (1) - 1.25 0.111 1.3611 0.0222 0.2722

(2) - 1.262 0.114 1.376 0.022 0.272

M/M/n/0 (1) 0.097 1.1288 - - - 0.2258

(2) 0.095 1.129 - - - 0.228

M/M/n/т (1) 0.0388 1.2015 0.035 1.2365 0.0078 0.2481

(2) 0.038 1.202 0.038 1.240 0.008 0.252

Моделировались работы системы в разных режимах. В таблице приведены сравнительные результаты работы системы в соответствии с теоретическими заключениями - в строке (1) и согласно имитационному моделированию - в строке (2).

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

Библиографический список

1. Вентцель Е.С., Овчаров Л.А. Теория вероятностей. М.: Наука, 1973. 360 с.

2. Краковский Ю.М. Имитационное моделирование. Иркутск: Изд-во ИГЭА, 2002. 138 с.

3. Карпов Ю. Имитационное моделирование систем. Введение в моделирование с AnyLogic 5. СПб.: БХВ Петербург, 2005.

4. Альянах И.Н. Моделирование вычислительных систем. Л.: Машиностроение. Ленингр. отд-ние, 1998. 223 с.

5. Советов Б.Я., Яковлев С.А. Моделирование систем. М.: Высш. шк., 2001. 343 с.

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