УДК 004.42:51-74 DOI: 10.17213/0321-2653-2016-1-47-51
СРАВНЕНИЕ АЛГОРИТМОВ, ПРИМЕНЯЕМЫХ ДЛЯ РЕШЕНИЯ ЗАДАЧИ ОПТИМИЗАЦИИ ИНФОРМАЦИОННОЙ ЗАЩИТЫ РАСПРЕДЕЛЁННЫХ СИСТЕМ
COMPARISON OF ALGORITHMS USED TO SOLVE OPTIMIZATION PROBLEMS IN DISTRIBUTED SYSTEMS OF INFORMATION PROTECTION
© 2016 г. А.А. Кацупеев, Е.А. Щербакова, С.П. Воробьёв, Р.К. Литвяк
Кацупеев Андрей Александрович - аспирант, ЮжноРоссийский государственный политехнический университет (НПИ) имени М.И. Платова, г. Новочеркасск, Россия. E-mail: andreykatsupeev@gmail. com
Щербакова Елена Александровна - канд. экон. наук, доцент, Южно-Российский государственный политехнический университет (НПИ) имени М.И. Платова, г. Новочеркасск, Россия. E-mail: [email protected]
Воробьёв Сергей Петрович - канд. техн. наук, ЮжноРоссийский государственный политехнический университет (НПИ) имени М.И. Платова, г. Новочеркасск, Россия. E-mail: [email protected]
Литвяк Роман Константинович - ст. преподаватель, Южно-Российский государственный политехнический университет (НПИ) имени М.И. Платова, г. Новочеркасск, Россия. E-mail: [email protected]
Katsupeev Andrey Aleksandrovich - post-graduate student, Platov South-Russian State Polytechnic University (NPI), Novocherkassk, Russia. E-mail: [email protected]
Shcherbakova Elena Aleksandrovna - Candidate of Economic Science, assistant professor, Platov South-Russian State Polytechnic University (NPI), Novocherkassk, Russia. E-mail: [email protected]
Vorobyev Sergey Petrovich - Candidate of Technical Sciences, Platov South-Russian State Polytechnic University (NPI), Novocherkassk, Russia. E-mail: [email protected]
Litvyak Roman Konstantinovich - Senior Lecturer, Platov South-Russian State Polytechnic University (NPI), Novocherkassk, Russia. E-mail: [email protected]
Рассматриваются алгоритмы решения модели выбора оптимальной стратегии информационной безопасности распределённой системы с учётом эквивалентности средств защиты. Проводится анализ следующих алгоритмов решения модели: жадный алгоритм, алгоритм имитации отжига, генетический алгоритм Холланда и ряд его модификаций, включающих в себя изменение операторов кроссин-говера, мутации и непосредственно хода алгоритма. В частности, рассматриваются алгоритмы с постоянной и переменной мутацией, с относительной фитнесс-функцией. Проведено сравнение этих алгоритмов по критериям поиска оптимального решения и временным затратам.
Ключевые слова: информационная безопасность; распределённые системы; генетический алгоритм; жадный алгоритм; алгоритм имитации отжига; фитнесс-функция.
The article discusses algorithms for choosing the optimal model of information security strategy in distributed systesm taking into account the equivalence of protection. The analysis of these algorithms for solving model have been provided: a greedy algorithm, simulated annealing algorithm, genetic algorithm Holland and a number of its modifications, including changing crossover operator, mutation and directly stroke of algorithm. In particular, the algorithms with fixed and variable mutation, with relative fitness function were discussed. A comparison of these algorithms for finding the optimal decision criteria and time-consuming were provided.
Keywords: information security; distributed systems; genetic algorithm; greedy algorithm; simulated annealing algorithm; fitness function.
Обеспечение инфраструктурной безопасности поскольку недочёты в данном аспекте могут привести надлежащего качества - приоритетная задача при к огромным экономическим и репутационным про-проектировании любой информационной системы, блемам. Однако до сих пор не существует какой-то
универсальной модели выбора оптимальных средств защиты информации из всего многообразия вариантов относительно конкретной инфраструктуры системы. В данной работе рассматриваются и анализируются некоторые из алгоритмов решения модели выбора оптимальной стратегии информационной безопасности распределённой системы.
Нижеприведённая модель основана на модели, подробно изложенной в работе [1]. Она базируется на комбинаторной задаче о мультипликативном рюкзаке с мультивыбором, где мультивыбор отражает возможность поиска оптимального решения среди эквивалентных средств защиты [2]. Модель выглядит следующим образом: имеется Р классов точек, на которых могут быть размещены средства информационной защиты. На данных классах элементов сети необходимо разместить средства информационной защиты. Всего имеется N классов средств информационной защиты. Каждый класс содержит в себе К элементов защиты. Класс объединяет в себе эквивалентные средства защиты, обладающие сходным предназначением и способом действия.
Предлагается составить таблицу эффективности Е, которая будет показывать эффективность еу конкретного средства защиты I, принадлежащего классу у, относительно размещения на г-м классе точек. Также вводятся суммарные ограничения и. Например, стоимость всех используемых в системе средств защиты не должна превышать значения иС. Помимо того, вводятся локальные ограничения иСХ, затрагивающие только отдельный узел сети.
Необходимо найти оптимальное количество ху каждого средства защиты I из класса у, размещаемого на точке г.
Таким образом, задачу оптимизации средств размещения информационной защиты можно сформулировать так - эффективность EF созданной архитектуры информационной безопасности должна быть максимальной:
P N
EF = LLL e4ix4i ^max.
i=1 j=1l(=Nj
При этом должны соблюдаться следующие усло-
вия:
1. Соблюдение общих ограничений:
где с1:
ijls
Е Е Ъс1чьхт <и,,
г=1 уеЫ1еу
характеристика элемента относительно
ограничения 5.
Под общими ограничениями понимаются те факторы, для которых важно суммарное значение. К таким факторам относится, например, цена, значение которой целесообразно рассчитывать для всей системы в целом, а не для отдельных элементов.
2. Соблюдение локальных ограничений: с1фХу1 ~иСЬу1у; г еР;у еN; Iеу для любых г,у, I, V.
Локальные ограничения, в отличие от общих, не имеет смысла считать вместе, поскольку они относятся только к конкретному узлу сети. К локальным ограничениям относится, например, объём оперативной памяти на определённом устройстве.
3. Одно и то же средство защиты не может быть размещено больше одного раза на одном и том же классе точек: Уху <1; геР; у е N; I е у .
4. Из эквивалентных средств защиты на конкретном классе точек можно разместить только одно, что-
N
бы избежать дублирования функций: Ее^х^ <1 для
j=i
любого leN,; ieP .
В данной работе рассматриваются следующие алгоритмы решения представленной модели: жадный алгоритм, алгоритм имитации отжига и несколько модификаций генетического алгоритма.
Суть жадного алгоритма заключается в том, что из всего набора средств защиты по очереди выбираются те, отношение эффективности которых к ресурсным затратам (ограничивающим характеристикам) максимально [3, 4].
Формализованно это можно представить в следующем виде: для каждого элемента вычисляется коэффициент эффективности
k^i —
Ес1ф
1
где еу; ге Р; у е N; I е у - эффективность конкретного
средства защиты I, принадлежащего классу у, относительно размещения на г-м классе точек; с1ф - ресурсное значение конкретного средства защиты I, принадлежащего классу у, размещаемого на г-м классе точек, относительно ресурса 5; 5 - количество ограничений.
Затем коэффициенты эффективности сортируются таким образом, что для всех kеY ky >ky+l, где Y -
количество всех вариантов размещения средств защиты на классах точек, Y = I*] *1.
После этого к оптимальному набору средств защиты добавляются элементы по убыванию коэффициента эффективности до тех пор, пока соблюдаются ограничения:
р
Е Е Ес1уьху1 < и5,
г=1 уеЫ1еу
где и5 - ограничение по ресурсам, 5 е 5 .
В основе метода имитации отжига лежит процесс кристаллизации вещества, который используется в металлургии для повышения однородности металла. Каждый металл обладает своей кристаллической решёткой, описывающей геометрическое положение атомов вещества. Совокупность позиций всех атомов называется состоянием системы, каждому состоянию
соответствует определенный уровень энергии. Цель отжига - привести систему в состояние с наименьшей энергией.
В ходе отжига металл сначала нагревают до некоторой температуры, что заставляет атомы кристаллической решетки покинуть свои позиции. Затем начинается медленное и контролируемое охлаждение. Атомы стремятся попасть в состояние с меньшей энергией, однако с определенной вероятностью они могут перейти и в состояние с большей. Эта вероятность уменьшается вместе с температурой. Переход в худшее состояние помогает в итоге отыскать состояние с энергией меньшей, чем начальная, поскольку позволяет игнорировать локальные экстремумы. Процесс завершается, когда температура падает до заранее заданного значения [5, 6].
Метод имитации отжига для решения представленной выше модели выглядит следующим образом: задана максимальная (исходная) температура ^ = и минимальная (конечная) температура tmm , а также шаг понижения температуры Дt.
Случайным образом определяется исходное состояние кристаллической решётки, представляющей собой совокупность нулей и единиц. Единица означает наличие средства защиты на определённом классе точек, ноль, соответственно, - его отсутствие.
В дальнейшем, до тех пор, пока текущее время ti > , проводятся следующие действия:
1. Вычисляется новое состояние системы, которое получается из предыдущего состояния путём инверсии битов. Каждый бит инвертируется с вероятностью 1 %. Данного показателя достаточно, учитывая тот факт, что за время алгоритма имитации отжига успевает смениться достаточно большое число состояний.
2. Рассчитывается энергия нового состояния Ес.
Если энергия нового состояния, представляющая собой эффективность средств защиты, составляющих состояние, больше энергии предыдущего состояния (Ес > Ег_1), то в таком случае новое состояние становится текущим состоянием Е^ .
Если Ес < Ег_1, то переход нового состояния в текущее осуществляется с вероятностью Р = е(~Ес_Е'-1)Л' . В противном случае текущим состоянием становится предыдущее: Ег = Е1_1.
Состояние системы при минимальной температуре признаётся оптимальным.
На основании представленной выше математической модели был разработан генетический алгоритм
[7, 8].
В качестве хромосомы выступают векторы решений У. Каждая хромосома состоит из набора элементов у1, которые могут принимать значение 0 либо 1
(отсутствие или наличие элемента на классе точек I).
Фитнесс-функция каждой хромосомы вычисляется как сумма эффективностей средств защиты, составляющих хромосому. При этом производится про-
верка на выполнение суммарных и локальных ограничений. В случае, если размещение средств защиты согласно конкретной хромосоме превышает заданные ограничения, фитнесс-функции присваивается значение 0.
Процесс селекции основан на фитнесс-функции. Хромосомы внутри одного вида разбиваются на пять групп в зависимости от значения фитнесс-функции. Каждая группа имеет свою вероятность выбора хромосомы (5, 10, 15, 25, 45 %) из неё с целью дальнейшего скрещивания [9].
В процессе реализации ГА было получено два вида кроссинговера:
1. Одноточечный кроссинговер. Внутри хромосомы случайно выбирается локус, который разбивает родительские хромосомы на две части и меняет эти части у родителей. Принцип действия одноточечного кроссинговера изображён на рис. 1.
2. «-точечный кроссинговер, где число п равно количеству классов точек размещения средств информационной защиты. Отличие этого вида кроссингове-ра состоит в том, что родительские хромосомы меняются своими частями не полностью, а последовательно и лишь в рамках одного класса. Принцип действия п-точечного кроссинговера изображён на рис. 2.
Родители Класс 1 Класс 2 Потомки Класс 1 Класс 2
1 1 1 1 0 0 1 1 0 1 1 1 1 1 1 0 1 1
2 0 1 0 1 1 0 1 1 2 0 1 0 0 0 1 1 0
Рис. 1. Пример одноточечного кроссинговера
Родители Класс 1 Класс 2 Потомки Класс 1 Класс 2
1 1 1 1 0 0 1 1 0 1 1 1 0 1 0 1 1 1
2 0 1 0 1 1 0 1 1 2 0 1 1 0 1 0 1 0
Рис. 2. Пример п-точечного кроссинговера
С помощью программного обеспечения [10] проведён ряд экспериментов на случайно сформированной матрице эффективности ста средств защиты семи различных классов, которые необходимо разместить на четырёх классах точек.
В эксперименте 1 сравнивались два вида крос-синговера. Установлено, что одноточечный и многоточечный кроссинговеры дают практически идентичный результат.
Таким же образом использованы и два вида мутации:
1. Постоянная мутация, при которой каждая позиция в хромосоме инвертируется с вероятностью 1 %.
2. Переменная мутация, в которой вероятность мутации зависит от текущих потребностей алгоритма. Коэффициент мутации может достигать 6 %.
По итогам эксперимента однозначно установлено превосходство переменной мутации над постоянной, алгоритмы с которой не способны находить решение при достаточно маленьких значениях ограничений. Результаты эксперимента 1 представлены на рис. 3.
Значение фитнесс-функции 2500 2000 1500 1000 500
100 500 1000 2000 Сумма ограничений
4000
Рис. 3. Результаты эксперимента 1: 1 - постоянная мутация; 2 - переменная мутация; 3 - многоточечный кроссинговер
Алгоритмы с постоянной и переменной мутацией включают в себя одноточечный кроссинговер.
Что касается критерия оптимальности, то в том случае, если полученное поколение не превосходит по значению фитнесс-функции предыдущее, оно признаётся оптимальным. При этом установлено ограничение, согласно которому в рамках алгоритма должно смениться как минимум 500 поколений, чтобы избежать локальных экстремумов.
Отличие генетического алгоритма с относительной фитнесс-функцией от стандартного ГА заключается в том, что здесь во время работы алгоритма в качестве фитнесс-функции используется не сумма эффективностей средств защиты, составляющих хромосому, а сумма отношений эффективностей к ограничивающим характеристикам средства защиты (коэффициент эффективности). Можно сказать, что данная модификация генетического алгоритма является неким объединением стандартного ГА с жадным алгоритмом.
Суть модификации генетического алгоритма, не допускающей превышения ограничений, заключается в том, что в том случае, если хромосома превышает заданные ограничения, её фитнесс-функции не присваивается нулевое значение, а проводится следующий вариант мутации: из хромосомы случайным образом выбирается бит, имеющий значение 1, и инвертируется. Это происходит до тех пор, пока хромосома не будет соответствовать ограничениям. Данный способ позволяет добиться того, что генетический алгоритм получит положительные значения фитнесс-функции уже в первом поколении, что позволит быстрее приступить непосредственно к оптимизации набора средств защиты.
Особенность генетического алгоритма с раздельной мутацией заключается в том, что мутация осуществляется не над всей хромосомой, а только над её отдельным участком, соответствующим определённому классу точек, выбранному случайно.
В эксперименте 2 данные алгоритмы сравнивались с целью выяснения, какой из них показывает наиболее эффективное распределение средств защиты (рис. 4, а), а также определения время работы каждого алгоритма (рис. 4, б).
Учитывая хорошие показатели жадного алгоритма, был проведён ещё один эксперимент, при котором начальное состояние в эволюционных алгоритмах задавалось соответственно решению, найденному жадным алгоритмом. В результате ни в одном из экспериментов эволюционным алгоритмам не удалось улучшить это решение.
Фитнесс-функция 600
500
400
300
200
100
25 50 100 200
Суммарное ограничение
400
Время, мс 1000
800 600 400 200
2
\
25 50 100 200 400 Суммарное ограничение б
Рис. 4. Результаты эксперимента 2: 1 - метод имитации отжига; 2 - жадный алгоритм; 3 - ГА (стандартный); 4 -ГА (без превышения ограничений); 5 - ГА (с относительной фитнесс-функцией); 6 - ГА (с раздельной мутацией)
Таким образом, можно сделать вывод, что из рассмотренных алгоритмов наиболее применим к данной задаче жадный алгоритм. Однако стоит отметить, что данный метод решения является не самым надёжным, поскольку он при некоторых условиях может предоставить решение задачи, далёкое от оптимального. В связи с этим предполагается дальнейшее исследование генетического и других эволюционных алгоритмов с целью поиска наиболее подходящего для решения задачи оптимизации информационной безопасности.
0
0
а
4
5
6
1
0
Литература
1. Кацупеев А.А., Щербакова Е.А., Воробьёв С.П. Постановка и формализация задачи формирования информационной защиты распределённых систем // Инженерный вестн. Дона. 2015. № 1-2.
2. Pisinger D. Knapsack problems. Copenhagen, SpringerVerlag, 1995. 199 р.
3. Алгоритмы: построение и анализ / Т. Кормен, Ч. Лейзер-сон, Р. Ривест, К. Штайн. Москва; Вильямс, 2005. 1296 с.
4. Левитин А.В. Алгоритмы. Введение в разработку и анализ. Москва, Вильямс, 2006. 576 с.
5. Каллан Р. Основные концепции нейронных сетей. Москва, Вильямс, 2003. 288 с.
6. Джонс М.Т. Программирование искусственного интеллекта в приложениях. Москва, ДМК-Пресс, 2004. 312 с.
7. Гладков Л.А., Курейчик В.М., Курейчик В.В. Генетические алгоритмы: учеб. пособие. Ростов н/Д.: Ростиздат, 2004. 400 с.
8. Скобцов Ю.А. Основы эволюционных вычислений. Донецк. ДонНТУ, 2008. 452 с.
9. Кацупеев А.А. Применение генетического алгоритма к решению задачи формирования информационной защиты распределённых систем // Результаты исследований -2015: материалы 13-й междунар. науч.-практ. конф. «Теория, методы проектирования, программно-техническая платформа корпоративных информационных систем» / Южно-Российский государственный политехнический университет им. М.И. Платова (НПИ). Новочеркасск: ЮРГПУ (НПИ). 2015.
10. Кацупеев А.А. Описание программного продукта, реализующего генетический алгоритм формирования информационной защиты распределённых систем // Результаты исследований - 2015 - материалы 13-й междунар. на-уч.-практ. конф. «Теория, методы проектирования, программно-техническая платформа корпоративных информационных систем» / Южно-Российский государственный политехнический университет им. М.И. Платова (НПИ). Новочеркасск: ЮРГПУ (НПИ). 2015.
References
1. Katsupeev A.A., Shcherbakova E.A., Vorob'ev S.P. Postanovka i formalizatsiya zadachi formirovaniya informatsionnoi zashchity raspredelennykh sistem [Statement and formalization of a problem of formation of information protection of the distributed systems]. Inzhenernyi vestnik Dona, 2015, no. 1-2.
2. Pisinger D. Knapsack problems. Copenhagen, 1995. 199 р.
3. Kormen T., Leizerson Ch., Rivest R., Shtain K. Algoritmy: postroenie i analiz [Algorithms: construction and analysis]. Moscow, 2005, 1296 p.
4. Levitin A.V. Algoritmy. Vvedenie v razrabotku i analiz [Algorithms. Introduction to development and analysis]. Moscow, 2006. 576 p.
5. Kallan R. Osnovnye kontseptsii neironnykh setei [Main concepts of neural networks]. Moscow, 2003, 288 p.
6. Dzhons M.T. Programmirovanie iskusstvennogo intellekta v prilozheniyakh [Programming of artificial intelligence in appendices]. Moscow, 2004, 312 p.
7. Gladkov L.A., Kureichik V.M., Kureichik V.V. Geneticheskie algoritmy [Genetic algorithms]. Rostov-on-Don, 2004, 400 p.
8. Skobtsov Yu.A. Osnovy evolyutsionnykh vychislenii [Bases of evolutionary calculations]. Donetsk, 2008, 452 p.
9. Katsupeev A.A. Primenenie geneticheskogo algoritma k resheniyu zadachi formirovaniya informatsionnoi zashchity raspredelennykh system [Application of genetic algorithm to the solution of a problem of formation of information protection of the distributed systems]. Teoriya, metody proektirovaniya, programmno-tekhnicheskaya platforma korporativnykh informatsionnykh system, 2015.
10. Katsupeev A.A. Opisanie programmnogo produkta, realizuyushchego geneticheskii algoritm formirovaniya informatsionnoi zashchity raspredelennykh sistem [The description of the software product realizing genetic algorithm of formation of information protection of the distributed systems]. Teoriya, metody proektirovaniya, programmno-tekhnicheskaya platforma korporativnykh informatsionnykh system, 2015.
Поступила в редакцию 28 января 2016 г.