УПРАВЛЕНИЕ В СОЦИАЛЬНО-ЭКОНОМИЧЕСКИХ СИСТЕМАХ
УДК 156.6
решение задачи распределения ресурсов при выполнении административных регламентов
В. В. Науменко,
аспирант В. В. Копытов,
доктор техн. наук, профессор
Северо-Кавказский федеральный университет, г. Ставрополь
Рассматриваются проблемы повышения эффективности системы государственного управления, одной из которых является распределение ресурсов в процессе исполнения государственных функций и предоставления государственных услуг. Для решения данной проблемы предлагается применение оптимизационной модели, направленной на эффективное распределение выполняемых работ между исполнителями. При этом используются методы теории массового обслуживания и алгоритмы поиска оптимального значения целевой функции.
Ключевые слова — административный регламент, функциональная безопасность, распределение ресурсов.
Введение
Современная нормативно-правовая база [1, 2] требует от органов власти исполнения государственных функций и предоставления государственных услуг строго в соответствии с требованиями административных регламентов (АР), делая тем самым АР ключевым элементом системы государственного управления, от эффективности выполнения которого зависит эффективность всей системы государственного управления. В настоящее время информационная система государственного управления является критической социотехнической системой, неэффективная работа которой связана с невозможностью выполнять функции, закрепленные нормативно-правовыми актами и законами, что ухудшает социально-экономическое развитие. Поэтому на функциональную безопасность информационной подсистемы системы государственного и муниципального управления напрямую влияет выполнимость АР, которая в свою очередь выражается в невыполнении требований АР.
Анализ структуры административных регламентов
Рассмотрим структуру АР. Выделяются следующие составляющие АР [3]:
— область применения, которая ограничивается набором соответствующих нормативных регуляторов;
— функциональные цели;
— субъекты выполнения регламента, в интересах которых осуществляется регламент и (или) которые охватываются функциональной целью;
— объекты действия регламента;
— процессы и операции регламента.
Главное назначение АР заключается в интеграции совокупности процессов и операций, реализуемых субъектами действия над существующими объектами в интересах, определенных нормативными регуляторами и инструкциями, для достижения заданной цели [3]. Поэтому если рассматривать АР как алгоритмический процесс, реализующий государственную услугу, то его основу будут составлять процессы и операции, закрепленные в нормативно-правовом акте АР (рис. 1). Типовая структура АР предполагает наличие описания административных процедур с, каждая из которых достигается путем выполнения определенной последовательности задач г:
Р(ст)® Р({гп ), к > 0,
где Р — предикат наличия элемента системы (Р(е) принимает значение «истина», если е существует в системе).
При этом сам АР R будет характеризоваться последовательностью процедур:
(сп Тп=! ),
Р($)® Р((сп )П= ), к > 0.
■ Рис. 1. Типовая структура административного регламента
Каждая задача предполагает совершение определенных операций субъектов над объектами, т. е.
Р(гп )® Р(вт ) Р(гп )® Р(Чт )■
Субъект-пользователь инициирует выполнение первой задачи последовательности, в результате чего запускается процесс выполнения АР. При этом субъекты и объекты выступают в качестве ресурсов, необходимых для перехода от одной задачи к другой [4].
Основные проблемы, препятствующие выполнению требований АР, можно разделить на две группы:
— связанные с логической противоречивостью описания процессов АР;
— возникающие в процессе выполнения АР.
Решение проблем логической противоречивости связано с правильным выбором методов и средств моделирования информационных процессов, подходящих для описания АР. Построение адекватной информационной модели АР позволит выявить противоречия в описании до его реализации в виде совокупности информационных процессов, исключая появление в системе ряда угроз функциональной безопасности. Однако проблемы, возникающие в процессе выполнения, являются следствием либо отсутствия, либо неправильного распределения ресурсов системы — субъектов и объектов и требуют решения оптимизационных задач. Решение одной из таких задач предлагается ниже.
Постановка задачи распределения ресурсов
Как уже было отмечено, выполнение некоторой задачи гп связано с наличием в системе соответствующего субъекта s'm и объекта q’к, которые можно определить как необходимые требования для гп. Однако стоит отметить, что система госу-
дарственного управления является динамичной системой, и поэтому соблюдение условий P(s'm) ^ ^ P(sm) и P(q'k) ^ P(qk) зависит от того, заняты ли sm и qk в момент времени t, где tt — время начала выполнения задачи zn:
т(Ч )®(P(s'm)® P(sm }}л(р(дк)® P (qk)),
где x(t) — предикат, принимающий значение «истина» в момент времени tv
При этом, как показывает практика, каждый объект АР уникален и соответствует только одной задаче. Поэтому решение задачи обеспечения функциональной безопасности выполнения АР состоит в согласовании множества объектов — необходимых Q' и существующих в системе Q: Q С Q.
Иная ситуация обстоит с субъектами. Каждый субъект в системе государственного управления функционально может выполнять несколько задач АР. Поэтому для обеспечения функциональной безопасности выполнения АР необходимо решение оптимизационной задачи, направленной на эффективное распределение задач между субъектами-исполнителями.
Рассмотрим процедуру решения задачи оптимального распределения субъектов-исполнителей, входящих в группу So (с общим количеством субъектов-исполнителей а), где каждый из субъектов-исполнителей sneSo функционально может быть задействован в выполнении задач из группы Zl (с общим количеством задач b). Учитывая, что процесс выполнения задач непрерывный, а процесс поступления задач на выполнение — случайный, то АР можно рассматривать как сеть узлов массового обслуживания, где каждый узел — это субъект-исполнитель sn, который представляет собой систему массового обслуживания типа M/M/1, выполняющую поток заявок Xk, соответствующий задаче zkeZl. Каждая выполненная задача zk в свою очередь инициирует выполнение следующей задачи zk + 1, поэтому, согласно теореме Бёрке, исходящий поток с входящим потоком с параметром X и показательным распределением интенсивности обслуживания ц является пуассо-новским потоком с тем же параметром X [5]. Для определения интенсивности обслуживания задачи zk необходимо в качестве исходных данных использовать среднее время выполнения для каждой из выполняемых задач отдельно взятой организации t(zk):
В случае если субъект sn выполняет несколько задач, то интенсивность обслуживания отдельной задачи определяется с учетом всех входящих потоков, т. е.
(zn)'
(1)
1
Vk =
Pk
f(zk У
(2)
где рк — вероятность появления заявки из потока Хк, определяемая отношением потока Хк к сумме всех потоков, выполняемых субъектом:
Pk =
Хъ
k+P
Е х
i=k
(3)
Среднее время обслуживания для M/M/1 будет определяться следующим образом [5]:
Ть =-
11 Vk
(4)
1-хк / ук
В случае если одну задачу (один поток) выполняет несколько субъектов, то система массового обслуживания будет М/М/т, где т — число субъектов. Среднее время обслуживания
/ \т+1
Тк =---------------------^------------------, (5)
хь (m-1)! Е
n=0
(Pkm)n (m - L)2 - L
n!
где L — число заявок, ожидающих в очереди; среднее значение определяется по формуле
Pk (mPk )П
1
m
!(1-Pk )2
Е
n=0
1(mPk)n + (mPk У
n!
m
!(1-Pk)
(6)
где Рк = хк / (тУк )•
Просчитав для каждой задачи среднее время выполнения Тк и сравнив его с максимальным временем Тк тах, определенным нормативными регуляторами АР, можно сказать, что если Тк > Тк тах’ то задача не выполняется с заданными условиями, т. е. не соблюдаются требования функциональной безопасности. Результат представим в виде коэффициента
Тк
аъ =-
Т
(7)
k max
Данный показатель характеризует загруженность субъекта-исполнителя при выполнении задачи zк и позволяет оценить запас времени, который доступен для решения других задач из группы Zl.
Решение любых задач распределения ресурсов требует выбора определенного критерия в качестве целевой функции, на получение оптимальных значений которого и будет направлена задача.
Необходимо отметить, что государственное управление не имеет формализуемой целевой функции. С этим и связано отсутствие интегрального показателя качества государственного управления, на повышение которого могла быть направлена задача распределения ресурсов. Поэто-
му в качестве целевой функции необходимо использовать показатель, который характеризует, насколько сбалансировано распределение исполнителей между задачами АР. В качестве такого показателя целесообразно использовать дисперсию величины ак каждой из задач АР:
D(a) = 1 £ (ак - М[аъ ])2. (8)
Ьк=1
Таким образом, данная задача распределения ресурсов (субъектов между задачами АР) схожа с классической задачей распределения ресурсов (между поставщиками и потребителями) и состоит в определении величин хпк, определяющих поставку п-субъекта к-задаче и принимающих значение 1 либо 0. При этом для каждой из задач АР выполняется условие ак < 1, а величина D(a) минимальна.
Анализ методов решения задачи распределения ресурсов
Стоит отметить, что данная задача имеет сложную целевую функцию, которая зависит не только от входных данных (Хк, ^к)), но и от сложности взаимосвязей «субъект-задача» внутри системы. Поэтому для вычисления оптимального значения целевой функции необходимо отказаться от градиентных методов (методов, использующих значения градиентов или высших производных непрерывных функций, предназначенных для оценки шага и скорости приближения к точке оптимума в итерационных процессах) и применить один из безградиентных методов либо алгоритм открытого поиска. Подобные алгоритмы основаны на оценках критерия качества по множеству точек, расположенных вокруг текущей точки, и выборе одной из них, где критерий принимает наименьшее из всех оцениваемых значений [6].
Теперь рассмотрим процедуру распределения задач между субъектами-исполнителями. Приведем технологическую матрицу, характеризующую распределение ресурсов в системе (табл. 1). В левом столбце приведены все задачи группы Zl, в верхней строке — все субъекты группы So.
■ Таблица 1. Матрица распределения ресурсов в системе
Zi So
s1 s2 sn sa
Z1 Х1, t(z1>, T1max x11 x21 xn1 xa1
z2 Х2, t(z2), T2max x12 x22 xn2 xa2
zk Хk, t(zh), Tk max x1k x2k xnk xak
zb Xb, t(zb), Tbmax x1b x2b xnb xab
Для каждой задачи указывается поток заявок Хк и среднее время выполнения ^к). При этом сумма каждой строки должна быть больше 0, так как для любой из задач должен быть определен исполнитель:
Х11 + Х21 + ... + Хп1 +... + Ха1 > 0;
х12 + х22 +... + хп2 +... + ха2 > 0;
х1к + х2к +... + хпк +... + хак > 0; (9)
Х1Ь + х26 + ... + хпЬ + ... + хаЬ > 0.
Решение алгоритма открытого поиска заключается в поиске значения вектора x = [хи, ..., ха6], которое обеспечивало бы минимальное значение целевой функции D(а) за 2а6 шагов (размещение с повторениями). На каждом шаге определяется соответствие системе неравенств (9). Если вектор x не удовлетворяет условиям неравенства, то идет переход к следующему шагу, в противном случае вычисляется вектор Ц = [^1, ..., ц6] по выражениям (1)—(3), далее вычисляется вектор T = [Т1, ..., Ть] [выражения (4)-(6)], затем вектор а = [а^ ..., а6] и проводится проверка на соответствие условию ак < 1 [(выражение (7)]. Если любое из ак > 1, то идет переход к следующему шагу, иначе вычисляется значение D(a) [(выражение (8)]. После этого выбирается значение вектора x, соответствующее минимальному значению D(a):
х = а^шш^1 (а),..., D 2аЬ (а))'
Алгоритм открытого поиска позволяет получить все оптимальные значения вектора x, однако из-за большого количества шагов решения данный метод является слишком трудоемким.
В работе [7] проведен подробный анализ без-градиентных методов оптимизации для решения задачи подбора технических средств охраны. Рассматриваемая в работе задача, так же как и решаемая авторами данной статьи, имеет множество дискретных решений и сложную целевую функцию, в связи с чем был выбран генетический алгоритм (ГА).
Применение генетического алгоритма для решения задачи распределения ресурсов при выполнении АР
Рассмотрим применяемые в настоящее время различные модели ГА. Классическим (каноническим) ГА принято считать алгоритм Джона Холланда [8], который имеет следующие характеристики:
— целочисленное кодирование особей (хромосом);
— одинаковая длина всех хромосом в популяции;
— постоянный размер популяции;
— пропорциональный отбор;
— одноточечный кроссовер;
— битовая мутация;
— формирование следующего поколения из потомков текущего поколения.
Помимо классического ГА существуют и другие модели: гибридный, Genitor, CHC ГА и др. Они различаются принципами отбора и формирования нового поколения особей, операторами мутации, кодированием генов и т. д. В Genitor-модели (созданной Д. Уитли [9]) используется специфичная стратегия отбора. Вначале производится оценка особей начальной популяции. Далее выбираются случайным образом две особи, которые скрещиваются, причем получается только один потомок, который оценивается и занимает место наименее приспособленной особи. После этого снова случайным образом выбираются две особи, и их потомок занимает место особи с самой низкой приспособленностью. Таким образом, на каждом шаге в популяции обновляется только одна особь. В работе [10] утверждается, что при помощи Genitor-модели поиск гиперплоскостей происходит лучше, а сходимость быстрее, чем у классического ГА.
В CHC-модели (Cross generational elitist selection, Heterogeneous recombination, Cataclysmic mutation), характеризующейся отсутствием мутаций, используется популяция небольшого размера, отбор особей в следующее поколение ведется и между родительскими особями, и между их потомками. После нахождения некоторого решения алгоритм перезапускается, и лучшая особь копируется в новую популяцию, а оставшиеся особи являются сильной мутацией (мутирует примерно треть битов в хромосоме) существующих, и поиск повторяется. Другой специфичной чертой является стратегия скрещивания: все особи разбиваются на пары, причем скрещиваются только те пары, в которых хромосомы особей существенно различны. При скрещивании используется так называемый HUX-оператор (Half Uniform Crossover) — разновидность однородного кроссовера, но в нем к каждому потомку попадает ровно половина битов хромосомы от каждого родителя.
Использование гибридного алгоритма (Hybrid Algorithms) позволяет объединить преимущества ГА и классических методов. На каждом поколении каждый полученный потомок оптимизируется этим выбранным классическим методом, после чего продолжаются обычные для ГА действия. Стоит отметить, что такой метод ухудшает способность алгоритма к поиску решения с помощью отбора гиперплоскостей, однако на практике гибридные алгоритмы показывают успешные результаты [11]. Это связано с тем, что обычно вели-
ка вероятность того, что одна из особей попадет в область глобального максимума и после проведенной оптимизации окажется решением задачи.
Параллельные ГА предназначены для снижения преждевременной сходимости к локальному оптимуму, стимуляции разнообразия и поиска альтернативных решений той же проблемы. Они основаны на разбиении популяции на несколько отдельных подпопуляций, каждая из которых будет обрабатываться ГА независимо от других. Кроме того, разнообразные миграции индивидов порождают обмен генетическим материалом среди популяций, которые обычно улучшают точность и эффективность алгоритма. Наиболее распространенными из параллельных ГА являются островная модель (Island model) и ячеистый алгоритм (Cellular Genetic Algorithm).
Несмотря на очевидные преимущества параллельных ГА, для решения поставленной задачи будем использовать классический алгоритм, так как в рамках данной работы необходимо проверить адекватность разработанной математической модели распределения ресурсов при выполнении АР, которая в свою очередь заключается в наличии сходимости целевой функции. Получение приемлемых результатов с помощью алгоритма Холланда позволяет применять и другие модели ГА для решения задачи распределения ресурсов АР.
Этапы и пример решения задачи распределения ресурсов при выполнении АР
Теперь рассмотрим каждый из этапов решения задачи. Вначале случайным образом выбираются N (N > b) значений вектора x (начальная популяция из N особей), каждое из которых соответствует системе неравенств (9) и условию ak > 1. Далее генерируется промежуточная популяция — набор особей, получивших право размножаться. Для генерации промежуточной популяции используется принцип пропорционального отбора, заключающийся в том, что каждая особь попадает в популяцию с вероятностью, пропорциональной ее приспособленности. Для данной задачи чем меньше значение D(a), тем больше вероятность попадания в промежуточную популяцию:
Dp (a)
Pp = 1--, , p—ГГ ■ (11)
D (a) + ■■■ + Dn (a)
Далее особи в случайном порядке разбиваются на пары, и производится скрещивание (обмен случайными отсеченными частями):
x p [01011.01...101]« x p+1[11001.11...001] =
= x'p [11001.01...101].
К полученному в результате отбора и скрещивания новому поколению применяется оператор мутации, который инвертирует каждый бит популяции с вероятностью 1/N. Далее из полученных особей выбираются только те, что соответствуют системе неравенств (9) и условию ak > 1, после чего цикл повторяется снова. Процесс эволюции (цикл отбор—скрещивание—мутация) может продолжаться бесконечное число шагов, поэтому критерием останова является получение сходимости целевой функции за n число шагов. При этом оптимальному значению вектора x будет соответствовать наиболее приспособленная особь из последнего поколения:
x = argmin((D1 (a),..., DN (a ))n). (12)
В случае если ни на одном из шагов не обеспечивается выполнение любого из условий, то распределение ресурсов в системе невозможно ввиду их недостаточности, и решение данной проблемы возможно только путем перераспределения функциональных обязанностей, расширяя при этом группу S0.
Приведем пример работы ГА с использованием скрипта «ga.m», входящего в пакет среды MatLab, для распределения семи задач между пятью субъектами-исполнителями. В качестве исходных данных будем использовать значения Xk, t(zk), Tk max, удовлетворяющие условию l/ц < 1:
Xk = [1; 2; 1; 0.5; 0.4; 2; 1]; t(zk) = [0.2; 0.4; 0.1; 0.5; 0.05; 0.3; 0.8];
Tk max = [0.8; 3; 1.2; 5.6; 1.9; 3.3; 3.5].
Для подсчета дисперсии величины ak для среды MatLab написан специальный скрипт «ga_example.m», который также проверяет полученные промежуточные значения Tk на соответствие условию ak > 1, и в случае отсутствия такого соответствия присваивает целевой функции значение 100, в противном случае выводит значение дисперсии D(a).
В качестве начальной популяции использовалось значение вектора, при котором целевая функция отлична от 100:
x = [10; 30; 30; 18; 30; 12; 7];
D(a) = 0.082326984378338.
В результате расчета получены следующие численные значения:
Optimization running.
Objective function value: 0.004034869320015893 x = [10 19 2 25 2 18 7].
Полученное значение вектора x соответствует матрице (табл. 2).
Таблица 2. Результат распределения ресурсов в системе
Литература
Zl So
s1 s2 s4 s5
z1 1, О.2, О.8 О 1 О 1 О
z2 2, О.4, З 1 О О 1 1
z.j 1, О.1, 1.2 О О О 1 О
z4 0.5, О.5, 5.6 1 1 О О 1
z5 0.4, О.О5, 1.9 О О О 1 О
z6 2, О.З, З.З 1 О О 1 О
z7 1, О.8, З.5 О О 1 1 1
1GG
e
n
5Q
Best: 0.00403487 Mean: 0.00403487
• Best fitness • • Mean fitness
50
Generation
1G0
■ Рис. 2. Процесс оптимизации целевой функции при помощи ГА
Для наблюдения схождения целевой функции в среде MatLab использовался инструмент psearch-tool (рис. 2).
Из графика видно, что процесс сходится к установившемуся значению
D(a) = 0.004034869320015893 приблизительно за 30 итераций.
Заключение
Внедрение данного метода в виде программного решения в автоматизированные системы исполнения государственных функций и предоставления государственных услуг позволит вывести систему государственного управления на качественно новый уровень путем непрерывного решения задач выполнимости АР.
1. Федеральный закон «Об организации предоставления государственных и муниципальных услуг» № 210-ФЗ от 27 июля 2010 года. http://www. rg.ru/2010/07/30/gosusl-dok.html (дата обращения: 01.03.2013).
2. Постановление Правительства РФ от 16.05.2011 № 373 «О разработке и утверждении административных регламентов исполнения государственных функций и административных регламентов предоставления государственных услуг». http://www.rg. ru/2011/05/31/gosuslugi-site-dok.html (дата обращения: 01.03.2013).
3. Региональное электронное правительство: стратегия создания, архитектура, типовые решения / под ред. В. И. Дрожжинова, А. А. Лучина. — М.: Эко-Трендз, 2004. — 288 с.
4. Копытов В. В., Науменко В. В., Минин В. А., Зайцев А. А. Анализ проблем обеспечения бесконфликтного выполнения электронных административных регламентов // Сб. науч. ст. / Ставропольский филиал ИГУТИ. Ставрополь, 2012. Вып. XII. С. 72-78.
5. Клейнрок Л. Теория массового обслуживания / пер. с англ. И. И. Грушко; ред. В. И. Нейман. — М.: Машиностроение, 1979. — 432 с.
6. Жерновков В. А., Дмитриенко Д.В. Распределение ресурсов на основе алгоритмов открытого поиска // Журнал университета водных коммуникаций. 2009. № 3. С. 153-156.
7. Давидюк Н. В. Разработка системы поддержки принятия решений для обеспечения физической безопасности объектов [электронный ресурс]: дис. ... канд. техн. наук: 05.13.01, 05.13.19 — Астрахань: РГБ, 2010.
8. Holland J. H. Adaptation in Natural and Artificial Systems: an Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence. — Massachusetts Institute of Technology, 1992. — 328 p.
9. Уитли Д. Учебник по генетическим алгоритмам // Статистика и компьютинг. 1994. № 4. C. 65-85.
10. Syswerda G. Schedule optimization using genetic algorithms // Handbook of genetic algorithms / ed. By L. Davis. — N. Y.: Van Nostrand Reinhold, 1991. P. 332-349.
11. Газизов Р. К., Гагарин А. В. Гибридный генетический нейросетевой алгоритм в задаче идентификации параметров цифровых моделей // Вестник УГАТУ. Уфа, 2009. Т. 13. № 2. С. 246-256.
G
G