Программная реализация задач моделирования основных интегральных показателей функционирования экономических информационных
систем
1 2 3 3 3
О.А. Терновский , А.Н. Кузьминов , А.Н. Скоба , В.К. Михайлов , Н.С. Скорик
1 Каменский институт (филиал) государственного образовательного учреждения высшего образования «Южно-Российский государственный политехнический университет им. М.И. Платова (НПИ)» 2Ростовский государственный экономический университет (РИНХ), г. Ростов-на-Дону.
3Южно-Российский государственный политехнический университет (НПИ) им.
М. И. Платова, Новочеркасск
Аннотация: в данной статье описан программный комплекс для решения задачи оптимального размещения информационных ресурсов по узлам распределённой экономической информационной системы по критерию минимума среднего времени реакции системы на запросы пользователей, а также для решения задач моделирования основных технико-экономических показателей эффективности работы таких систем. Комплекс состоит из программно реализованных математических моделей функционирования распределённых систем обработки экономической информации, а также алгоритма оптимизации. Разработанный программный продукт также позволяет производить эксперименты для получения и последующего анализа зависимостей реактивности распределённых систем от таких интегральных характеристик, как размерность задачи, интенсивности формирования запросов пользователями, скорости передачи сообщений по каналам связи, скорости считывания, скорости записи и обработки в узлах, производительности используемых ПЭВМ и т.д. Программная реализация была выполнена на языке C#, платформе NetFramework 4.6.1, с использованием среды разработки Microsoft Visual Studio 2017 Community. Ключевые слова: экономическая информационная система, распределённая система обработки информации, уравнение глобального баланса, замкнутая экспоненциальная сеть массового обслуживания, пространство состояний случайного процесса, матрица переходных вероятностей, интенсивности обслуживания в узлах сети, стационарные вероятности, среднее время реакции системы на запросы пользователей.
Основными задачами, решаемыми экономическими информационными системами (ЭИС) на предприятиях, являются задачи автоматизации документооборота (бухгалтерский учёт, учёт планово-экономических показателей), автоматизация управленческой деятельности (учёт комплектующих изделий и материалов на заводских складах, учёт готовой продукции), формирование годовых производственных программ на основе
использования экономико-математических методов, управление реализацией и сбытом готовой продукции и т.д.
Как было отмечено в работе [1] архитектура современных ЭИС базируется на принципах клиент-серверного взаимодействия программных компонентов информационной системы, которая реализует многопользовательский режим работы и относится к распределённым системам обработки информации (СОИ).
При внедрении таких систем возникает целый ряд качественно новых исследовательских задач, от решения которых в значительной степени будет зависеть эффективность использования ресурсов ЭИС и качество информационного сервиса, предоставляемого пользователям.
Среди наиболее важных задач можно назвать следующие: выбор архитектуры разрабатываемой ЭИС и аппаратно-программных средств для её реализации (необходимого количества серверов и их производительности , оптимальной скорости передачи данных по каналам связи, скорости записи/считывания информации в узлах и т.д.) ; организация системы управления ресурсами и реализация взаимодействия различных элементов системы; оптимальное размещение информационного и программного обеспечения коллективного пользования по узлам распределённой СОИ.
Разработанные авторами аналитико-численные модели функционирования распределённых СОИ, а также алгоритм оптимизации [2 - 9] составили методологическую базу программного комплекса для решения задач оптимального размещения информационных ресурсов по узлам распределённой ЭИС по критерию минимума среднего времени реакции системы на запросы пользователей, а также для моделирования зависимости реактивности работы ЭИС от основных интегральных показателей её функционирования: размерности задачи, интенсивности формирования
запросов пользователями, скорости передачи сообщений по каналам связи, скорости считывания, скорости записи и обработки в узлах и т.д.
Разработанный программный комплекс включает следующие модули: модуль конструирования исходных данных; модуль моделирования; модуль оптимизации; модуль проведения экспериментов.
Модуль конструирования исходных данных позволяет сформировать исходные данные для различных архитектур распределённых СОИ. Так подробное конструирование исходных данных для распределённых СОИ, реализованных на базе архитектуры «файл-сервер» представлено в работах [2-3].
Отличительной особенностью конструирования исходных данных для функционирования распределённой СОИ на базе двухуровневой архитектуры «клиент-сервер» от архитектуры «файл-сервер» является то, что на сервере происходит селективная выборка информации и по каналу связи передаётся не полная база данных, а некоторое количество кортежей базы данных, удовлетворяющих условию SQL-запроса . В соответствии с этим, в исходные данные вводится матрица объёмов информации, получаемой после процессорной обработки [4-5].
Для моделей функционирования распределённых СОИ на базе трёхуровневой архитектуры «клиент-сервер» исходные данные, по сравнению с двухуровненвой архитектурой «клиент-сервер», модифицируются следующим образом - добавляются следующие величины: множество серверов приложений и множество бизнес-приложений, размещаемых на них; матрица распределения бизнес-приложений по серверам приложений; матрица объемов считываемой информации по SQL запросам, сформированных бизнес-приложениями к базам данных. Подробно процесс конструирования исходных данных для данной архитектуры распределённых СОИ описан в работах [6-7].
В основе модуля моделирования лежит решение уравнения глобального баланса для замкнутых экспоненциальных сетей массового обслуживания (СеМО), которое в стационарном режиме имеет вид:
N п N N п /_ _ _\
XIр(Vкг =шР(( + 1/г - к))(г), (1)
к=1 г=1 /=1 к=1 г=1
где Р(0 - стационарная вероятность того, что сеть находится в состоянии 1,
- — - N
где 1 е Е(п, N) = 1к > 0,11к = п} - векторное пространство состояний; ^общее
к=1
количество центров обслуживания заявок; п-количество пользователей; ц,(г = 1, п, к = 1, N) - интенсивность обслуживания в к-м узле сообщения г-го пользователя; ц 1г ,(г = 1, п, / = 1, Ы) - интенсивность обслуживания в 1-м узле сообщения г-го пользователя; 1кг ,1/г - вектора, в к-ой и 1-ой координате которых (к = 1, N, / = 1, N), на г-ом месте (г = 1, п) стоит 1, а все остальные значения равны нулю; Р1к (г)- вероятность того, что сообщение г-го пользователя после обслуживания в /-м узле попадёт в к-й узел.
Подробная методика расчёта элементов матриц переходных вероятностей приведена в работах [2, 3].
При расчёте величины ц г = 1, N, г = 1, п) учитываются различные группы потока заявок в СеМО в зависимости от выбранной архитектуры распределённой СОИ [2 - 6]. Кроме того, для обеспечения целостности данных, при расчёте величин цг,(,*; = 1,N,г = 1,п), учитываются временные задержки, связанные с возможностью состояний блокировок на уровне всей базы данных [3, 5, 7].
В работах [2, 4, 6] было показано, что выражения для стационарных вероятностей состояний СеМО, описываемой уравнением (1) имеют мультипликативную форму и могут быть представлены в виде:
- , N -
Р(1) = О -1(п, N )П ^ (is),
«=1
где G(n, N) - нормализующая константа, значение которой определяется тем, что сумма вероятностей P(1) всех состояний СеМО равна единице, т.е. X P(i) = 1, is - общее число сообщений в центре
1eE (n, N)
n — n 1 (e \lsr - -
s,(is =X isr), zs (is) = is !П"--— , где esr ,(s = 1, N, r = 1, n) - коэффициенты
r=1 r=1 1 sr • V ^ sr /
передачи, которые находятся из решения системы линейных алгебраических уравнений вида:
esr = NejrPjs (r), (s = 1,N, r = 1,n) .
j=1
Расчёт величины T - среднего времени реакции системы на запросы пользователей, определяется соотношением вида:
TI лT , (2)
I* r
r r
r=1
r
r=1
где Xг ,(г = 1, п) - интенсивность формирования запросов г-м пользователем; тг ,(г = 1, п) - среднее время реакции системы на запрос г-го пользователя.
В работах [2, 4, 6] было показано ,что расчёт величины т по формуле (2) сводится, по существу, к расчёту нормализующей константы G(n, N), для вычисления которой был использован метод ,описанный в работе [8].
Модуль оптимизации решает задачу оптимального размещения информационных ресурсов по узлам распределённой СОИ по критерию минимума среднего времени реакции на запросы пользователей, которая может быть представлена в виде:
T = T(X) ^ min
при ограничении
Ь]к =1 j =1 d. k=i
(3)
где X = ||xjk||, (j = 1, d, к = 1, n) - матрица, задающая взаимосвязь между ПЭВМ и
размещаемыми на них отношениями (базами данных),количество которых равно d ; T(X) - имеет вид (2), для размещения, задаваемого матрицей X.
Как показал проведённый анализ, задача (3) является задачей нелинейной комбинаторной оптимизации с булевыми переменным, которая относится к классу NP-сложных задач, для которых, в настоящее время, отсутствуют эффективные процедуры решения [9]. Для решения задачи (3) был использован, разработанный авторами , полуэвристический алгоритм, основанный на методах стохастического программирования, подробное описание которого и результаты эффективности его работы приведены в работе [10].
Программная реализация описанных модулей, была выполнена на языке C#, платформе NetFramework 4.6.1, с использованием среды разработки Microsoft Visual Studio 2017 Community и частично изложена в работе [11],без подробного описания разработанного интерфейса и модуля проведения экспериментов. Главное окно программы представлено на рис. 1.
Рис. 1. - Главное окно программы Так функциональная компонента 1 - предоставляет переход к следующим вспомогательным формам: создание нового проекта (рис. 2);
ввод исходных данных (рис. 3); ввод основных настроек проекта (рис. 4); проведение экспериментов (рис. 5).
Рис. 2. - Окно создания нового проекта
Рис. 3. - Окна ввода исходных данных модели
Настройки — □ X
Тонкие клиенты !СП и СЕД! ЕДи БП Запросы Количество:
СЕД:
СП:
Скорость передачи данных по каналу (8 f [1000t 1CCSD] (КБ/с»:
Поста нннан задержка при передаче данных по каналу (9D(c)):
Постоянная задержка
при обработке б : С П (аО (с)):
СЕД {а1 (с)): Скорость считывания (КБ/с): С БД: min:
10
10
ьж
о.оооз
3E-D6
3E-D5
6DDDC
СП: rnin:
6DDD
Скорость записи (КБ/с): С БД: min:
10000000
СП: min:
1DDDDDC
max: max:
max: max:
1DDDDD
1DDDC
3DDDDDDD
3DDDDDC
Производительность процессоров (операций/с): С БД: min:
25DDDDDDDD
35DDDDDDDD
СП: min:
35CHHIIIIIIII
Рис. 4. - Основные настройки проекта Функция «Расчёт» запускает полный цикл вычисления основных характеристик модели и выводит результат на экран. Функция «Оптимизация» запускает алгоритм оптимизации для загруженной модели и в итоге предоставляет пользователю результат решения задачи-вариант оптимального размещения информационных ресурсов по узлам распределённой СОИ, с правом сохранения или отказа.
В программе предусмотрен режим автоматического конструирования
матрицы х =
X
RUk
= x ■
= 1, й, к = 1, п) (начального распределения) в основе
которого лежит использование генератора равновероятного выбора [11].
Для вычисления значений нормализующей константы О(п, N в программе был использован метод , изложеннывй в работе [8], трудоёмкость
которого равна «О^ *22п), где ^количество узлов СеМО, п-количество пользователей. Для уменьшения трудоёмкости вычисления нормализующей константы, авторами была разработана и программно реализована оригинальная процедура уменьшения количества арифметических операций и запоминаемых промежуточных элементов [11], основанная на константном поиске элемента массива, путем перевода идентифицирующей части величин От (п) и От (п - 1Г) (речь идет о векторах п и п - 1Г) в десятичную систему счисления, что позволило снизить трудоёмкость данной вычислительной процедуры до вполне приемлимой величины « О(N *2п). После завершения процедуры расчёта величины т (рис. 5), результат будет загружен на главную форму программы и отобразится в диалогом окне и статус-панели, а также будет выгружен на диск в соответствующем каталоге.
Файл Проект Настройки
Расчет Оптимизация Колонки: растянуть
Р(1) Р(2) Р(3) Р{4> Р(5) Р(6) Р<7) Р(3) Р{Э> Р(10) ц е х
11 Р12 Р13 Р14
0,15 0 0
0 0,176 0,235
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
Р1 Р2 РЗ Р4 Р5 Р6 Р7 Р8 Р9
Р1
Р2 Р| 0,85
Результат X
Среднее время реакции системы: 0,0592734533077В55 Для каждого пользователя:
0,0396 сек 0,0395 сек 0,0396 сек 0,0395 сек 0,0734 сек 0,0667 сек 0,0734 сек 0,0734 сек 0,0734 сек
А10 : 0,0734 сек
□ К
ста Выполнен расчет. Среднее время реакции системы;: 0,0592734533077855
И
Рис. 5. - Результат работы алгоритма расчета среднего времени реакции
системы
После этого включается процедура оптимизации величины т, связанная
с перераспределением информационных ресурсов х =
X
крк
= X
к
((= IЛ, к = п) (в соответствии с алгоритмом оптимизации) по узлам
распределённой СОИ. При этом окончательное величиныт отображается на статус-панели (рис. 6).
значение
Рис. 6. - Точка останова алгоритма оптимизации Разработанный программный комплекс также позволяет проводить эксперименты для получения и последующего анализа зависимости величины т от таких характеристик, как размерность задачи, интенсивности формирования запросов, скорости передачи сообщений по каналу связи, скорости считывания, записи и обработки в узлах, а также определять степень влияния блокировок на величину Т и т.д. Для этого в программе предусмотрен режим проведения экспериментов, главное окно которого представлено на рис. 7.
Эксперименты — □ X
Выполнить Параметр оси X: Скорость считыванш т Архитектура: Файл-сервер т Блокировки: Учитывать т Оптимизация: Не выполнять т 1
Размерности задач:
N D Q
5 10 10
7 20 30
э 30 50
11 40 70
■
Параметры эксперимента:
■ От ее W VD PU
о 0 0 0
1С
® ,
о H
3, 3,23 56 3, 54 Г, 5- 3, 5Î 3, 50 3, 49 Ъ, 1S 3, 4S 3, 47
£4* " IT?? к'1?
i. 29 1, 28 1В 1, 23 1, 27 1, 21 1, 27 26
Размерность задачи
n=5;q=10;d=10; n=7;q=30;d=20: n=9;q=50;d=30; n=11:q=70:d=40:
>
W (КБ / сек)
Ход эксперимента (ось X):
х:2 х:3 х:4 х:5 х:6 х:7 х:8 х:9
[wooo 7НХЮ 75000 ВОООО S5000 5D000 55000 1D000D
Рис. 7. - Главное окно модуля проведения экспериментов
Разработанный авторами программный комплекс [12,13] был протестирован на решении прикладных задач для ОАО «Каменскволокно» (г.Каменск-Шахтинский, Ростовская область) и в настоящее время доробатывается с учётом пожеланий-рекомендаций специалистов 1Т-отдела данного предприятия.
Статья подготовлена при финансовой поддержке гранта РФФИ № 18-010-01095 «Междисциплинарный подход к исследованию крупномасштабных экономических систем на основе теории ценозов»
Литература
1. Кузьминов А.Н. Ценологический инструментарий управления региональной рыночной средой предприятий малого бизнеса. Ростов-на-Дону: СКНЦ ВШ, 2007. С. 124.
2. Скоба А.Н., Терновский О.А. Математическая модель оптимального распределения ресурсов при внедрении распределённой информационной системы на предприятии // Интеграция науки и практики как механизм развития отечественных наукоёмких технологий производства: сб. науч. ст. по материалам IV Всерос. науч.-практ. конф, Каменск-Шахтинский, 12 нояб. 2014г./ Каменский ин-т(фил.) ЮРГПУ(НПИ) им. М.И. Платова. Новочеркасск: Лик, 2015. С. 180-189.
3. Скоба А.Н., Терновский О.А. Аналитико-численная модель оптимального размещения распределённой базы данных по узлам ЛВС на базе архитектуры «файл-сервер» с учётом влияния блокировок // Интеграция науки и практики как механизм развития отечественных наукоёмких технологий производства: сб. науч. ст. по материалам V Всерос. науч.-практ. конф., Каменск-Шахтинский, 2 дек. 2015г./ Каменский ин-т(фил.) ЮРГПУ(НПИ) им. М.И. Платова. Новочеркасск: Лик, 2016. С. 61-70.
4. Скоба А.Н., Состина Е.В. Математическая модель оптимального размещения распределённой базы данных по узлам ЛВС на базе
двухуровневой клиент-серверной архитектуры // Инженерный вестник Дона, 2015, №2. URL:ivdon.ru/ru/magazine/archive/n2y2015/2882.
5. Скоба А.Н., Терновский О. А., Логанчук М.Л. Аналитико-численная модель оптимального размещения информационных ресурсов по узлам локальной вычислительной сети на базе двухуровневой архитектуры «клиент-сервер» с учётом влияния блокировок // Интеграция науки и практики как механизм развития отечественных наукоёмких технологий производства: сб. науч. ст. по материалам VI Всерос. науч.-практ. конф., Каменск-Шахтинский, 14 фев. 2017г./ Каменский ин-т(фил.) ЮРГПУ(НПИ) им. М.И. Платова. Новочеркасск: Лик, 2017. С. 158-167.
6. Скоба А.Н., Айеш Ахмед Нафеа Айеш. Математическая модель оптимального размещения информационных ресурсов по узлам распределённой информационной системы на базе трёхуровневой клиент-серверной архитектуры без учёта влияния блокировок //Инженерный вестник Дона, 2018, №1. URL:ivdon.ru/ru/magazine/archive/n1y2018/4658.
7. Скоба А.Н., Михайлов В.К., Айеш Ахмед Нафеа Айеш. Модель оптимального размещения информационных ресурсов по узлам распределённой системы обработки информации предприятия на базе трёхуровневой архитектуры «клиент-сервер» с учётом влияния блокировок. // Изв. вузов. Электромеханика, 2018. Т. 61. №3. С. 68-75.
8. Buzen J.P. Computational Algorithms for Closed Queueing Networks with Exponential Servers. Commun. ACM. 1983. Vol.16, №9. - pp. 527-531.
9. Antunes C. H. et al. A Multiple Objective Routine Algorithm for Integrated
Communication Network. Proc ITC-16. 1999. V. 3b. pp. 1291-1300.
10. Скоба А.Н., Айеш Ахмед Нафеа Айеш, Михайлов В.К. Эвристический алгоритм решения задачи размещения информационных ресурсов // Инженерный вестник Дона, 2018, №1 URL: ivdon.ru/ru/magazine/archive/n1y2018/4744.
11. Михайлов В.К., Скоба А.Н., Айеш Ахмед Нафеа Айеш. Программная реализация моделей оптимального распределения информационных ресурсов // Инженерный вестник Дона, 2018, №2 URL:ivdon.ru/ru/magazine/archive/n2y2018/4888.
12. Айеш Ахмед Нафеа Айеш, Михайлов В.К., Скоба А.Н. Моделирование и оптимизация информационных ресурсов на базе файл-серверной архитектуры. Свидетельство об официальной регистрации программы для ЭВМ №2018618683, Роспатент, М., 17.07.2018.
13. Айеш Ахмед Нафеа Айеш, Михайлов В.К., Скоба А.Н. Моделирование и оптимизация информационных ресурсов на базе двухуровневой клиент-серверной архитектуры. Свидетельство об официальной регистрации программы для ЭВМ №2018618844, Роспатент, М., 20.07.2018.
References
1. Kuz minov A.N. Cenologicheskij instrumentarij upravleniya regional'noj ry'nochnoj sredoj predpriyatij malogo biznesa [Cenological management instrumentation regional market environment of small businesses]. Rostov-on-Don: SKNCz VSh, 2007. 124 p.
2. Skoba A.N., Ternovskij O.A. Integraciya nauki i praktiki kak mexanizm razvitiya otechestvennyx naukoyomkix texnologij proizvodstva: sb. nauch. st. po materialam IV Vseros. nauch.-prakt. konf. Novocherkassk: Lik, 2015. pp. 180189.
3. Skoba A.N., Ternovskij O.A. Integraciya nauki i praktiki kak mexanizm razvitiya otechestvennyx naukoyomkix texnologij proizvodstva: sb. nauch. st. po materialam V Vseros. nauch.-prakt. konf. Novocherkassk: Lik, 2016. pp. 61-70.
4. Skoba A.N., Sostina E.V. Inzenernyj vestnik Dona (Rus), 2015. №2. URL: ivdon.ru/ru/magazine/archive/n2y2015/2882.
5. Skoba A.N., Ternovskij O.A., Loganchuk M.L. Integraciya nauki i praktiki kak mexanizm razvitiya otechestvenny'x naukoyomkix texnologij proizvodstva: sb. nauch. st. po materialam VI Vseros. nauch.-prakt. konf. Novocherkassk: Lik,
2017. pp. 158-167.
6. Skoba A.N., Ayesh Achmed Nafea Ayesh Inzenernyj vestnik Dona (Rus),
2018. №1. URL: ivdon.ru/ru/magazine/archive/n1y2018/4658.
7. Skoba A.N., Mikhaylov V.K., Ayesh Achmed Nafea Ayesh. Izv. vuzov. E'lektromexanika, 2018. V. 61. №3. pp. 68-75.
8. Buzen J.P. Computational Algorithms for Closed Queueing Networks with Exponential Servers. Commun. ACM. 1983. Vol.16, №9. pp. 527-531.
9. Antunes C. H. et al. A Multiple Objective Routine Algorithm for Integrated Communication Network. Proc ITC-16. 1999. V. 3b. pp. 1291-1300.
10. Skoba A.N., Ayesh Achmed Nafea Ayesh, Mikhaylov V.K. Inzenernyj vestnik Dona (Rus), 2018. №1. URL: ivdon.ru/ru/magazine/archive/n1y2018/4744.
11. Mikhaylov V.K., Skoba A.N., Ayesh Achmed Nafea Ayesh Inzenernyj vestnik Dona (Rus), 2018. №2. URL: ivdon.ru/ru/magazine/archive/n2y2018/4888
12. Ayesh Achmed Nafea Ayesh, Mikhaylov V.K., Skoba A.N. Svidetel'stvo ob oficial'noj registracii programmy' dlya E'VM №2018618683 [Certificate of official registration of computer programs №2018618683]. Rospatent, М, 17.07.2018.
13. Ayesh Achmed Nafea Ayesh, Mikhaylov V.K., Skoba A.N. Svidetel'stvo ob oficial'noj registracii programmy' dlya E'VM №2018618844 [Certificate of official registration of computer programs №2018618844]. Rospatent, М., 20.07.2018.