АПВПМ-2019
ГЕНЕТИЧЕСКИЙ АЛГОРИТМ РАЗМЕЩЕНИЯ СТОКОВ В БЕСПРОВОДНЫХ СЕНСОРНЫХ СЕТЯХ С НЕНАДЁЖНЫМИ УЗЛАМИ ДЛЯ ПОВЫШЕНИЯ ВЕРОЯТНОСТИ УСПЕШНОГО МОНИТОРИНГА
Д, А. Мигов, К, А. Волжанкина
Институт вычислительной математики и математической геофизики СО РАН, 630090, Новосибирск
УДК 519.17+519.24
DOI: 10.24411/9999-016А-2019-10052
В статье рассмотрена задача оптимального размещения стоков (sink nodes) в беспроводных сенсорных сетях (wireless sensor networks) в предположении, что сенсоры подвержены отказам. Под оптимальным понимается такое расположение стоков, которое максимизирует надёжность функционирования сети, т.е. вероятность успешного мониторинга заданной области. Предлагается метод размещения стоков в сети, основанный на использованием генетических алгоритмов.
Ключевые слова: беспроводная сенсорная сеть, беспроводная самоорганизующаяся сеть, надежность сети, задача размещения, генетические алгоритмы, площадь покрытия.
Введение
Беспроводные сенсорные сети (БСС, wireless sensor networks, WSNs) получают всё большее развитие, что связано, в первую очередь, с многочисленными приложениями в различных областях, простотой их развертывания, и рядом других преимуществ [1,2]. БСС являются беспроводными самоорганизующимися сетями (ad hoc networks), наряду с транспортными сетями (VANET), беспроводными mesh-сетями, и другими. Способность самоорганизации и самовосстановления БСС позволяет в случае отказа части узлов спонтанно формировать новую структуру сети.
Основная цель при использовании таких сетей заключается в мониторинге различных объектов: зданий, местности, периметра (границы), и многих других. Узлы БСС содержат некоторые датчики, которые могут быть самыми разнообразными. Чаще других используются датчики температуры, давления, влажности, освещенности, вибрации, реже — магнитоэлектрические, химичские, звуковые и некоторые другие. Набор применяемых датчиков зависит от функций, выполняемых сетью.
Для БСС надежность является важным фактором эффективности их работы [1]. Разработанные ранее классические показатели сетевой надежности не являются в данном случае достаточно адекватными, так как не учитывают специфику функционирования беспроводных сенсорных сетей. В первую очередь, это изначально избыточное количество сенсоров для обеспечения функционирования сети. При этом сеть функционирует, как правило, если достаточное количество сенсоров может устанавливать соединение с одни из стоков. Связность стоков между собой тоже, как правило, является обязательной, но для некоторых сетей это требование будет лишним, так как в них стоки связываются с базовой станцией напрямую и независимо друг от друга. Ранее нами был предложен новый показатель надежности, удовлетворяющий этим условиям [2].
В данной работе рассмотрена возможность оптимального размещения стоков, позволяющей максимально повысить надёжность БСС в указанном выше смысле. Предлагается использовать для размещения стоков биоинспирированные методы, а именно, генетические алгоритмы (ГА). Они хорошо зарекомендовали себя в решении различных задач оптимизации, в том числе задач расстановки [5,6].
Работа выполнена при финансовой поддержке Российского фонда фундаментальных исследований, код проекта 18-07-00460.
ISBN 978-5-901548-42-4
1 Размещение стоков в БСС для максимизации надежности БСС
Пусть структура беспроводной самоорганизующейся сети представлена в виде неориентированного графа С = (У,Е), ¡V| = Ж, \Е| = М. Для каждой вершины задана вероятность её присутствия в графе, что соответствует надёжности сенсоров. К — выделенное множество вершин, которые соответствуют стокам сети. Предполагается, что К содержит хотя бы один элемент.
Задано также натуральное число Т, такое, что 0 < Т < N — \К\ + 1. Смысл этого параметра следующий: Т — это требуемое для успешного функционирования сети количество работоспособных сенсоров, имеющих связь с каким-либо стоком, т.к. изначально количество сенсоров часто избыточно, и сеть может функционировать, если достаточное количество сенсоров может устанавливать соединение с одни из стоков.
Определим надёжность сети как вероятность такого события, что вершины К образуют связное множество, и количество вершин, связанных с не меньше Т. Будем обозначать введённый показатель как К-к,т (С) . Подробнее этот показатель описан в [2].
Рассмотрим также ещё один показатель, а именно, вероятность покрытия сетью заданной площади. Предполагается, что сеть в состоянии оставаться работоспособной при выходе из строя определённого количества узлов при сохранении покрываемой сетью площади, которая не должна опускаться ниже заданного порогового значения. Другими словами, под надёжностью беспроводной самоорганизующийся сети понимается вероятность её безотказной работы за определённый временной промежуток, под безотказным функционированием сети подразумевается возможность стока получать данные (и, возможно, обрабатывать, в зависимости от функционального назначения узла) от работоспособных (неотказавших) сенсоров, которые ведут мониторинг на области ограниченной снизу площади. Будем обозначать введённый показатель как $к,т(С), где К — множество стоков, Т — порог площади. Подробнее этот показатель описан в [4].
Вычислять надёжность предлагается с помощью специально модифицированного для этой цели метода факторизации (ветвления) Идея метода ветвления проста — выбрать еще не рассмотренный элемент графа и перейти к рассмотрению двух подграфов, в одном из которых элемент присутствует с вероятностью 1 (ветвь стягивания), в другом — с вероятностью 0 (ветвь удаления). Вероятность первого из этих случаев будет равна вероятности присутствия элемента, вероятность второго — вероятности отсутствия элемента. Выбранный для ветвления элемент графа называется разрешающим. К полученным подграфам рекурсивно применяем эту же процедуру. Формула полной вероятности при этом дает искомое выражение для надежности на каждом шаге ветвления. Например, для Кк (С) — вероятности связности подмножества вершин К в графе с ненадёжными ребрами — она принимает такой вид:
Кк (С) = тЛк (¿(в)) + (1 — ге)Нк (С\{е}), (1)
где ге — надежность ребра е, С(е) — граф, стянутый по ребру е, С\{е} — граф, получаемый из С удалением ребра е. Рекурсии продолжаются до получения либо несвязного графа, либо до получения графа, для которого вероятность связности можно вычислить непосредственно — графа специального вида или графа малой размерности
Особенности факторизации при расчёте Кк,т(С) и вк,т (С) приводятся псевдокод алгоритма с подробным описанием приведен в [2,4]. В частности, так рассмотрена возможность раннего прекращения процесса ветвления при достижении заведомо неуспешных событий. Кроме того, используется и оценка этого параметра методом Монте-Карло, что позволяет получать значение с высокой точностью за приемлемое время. Для определения скорости сходимости и необходимого количества итераций использован аппарат, приведённый в одной из наших прошлых работ [3].
2 Генетические алгоритмы
Многие задачи оптимизации в исследовании анализа функционирования современных сетей являются М'Р-трудными из-за большого пространства решений, поэтому для таких задач часто используют бионические методы, например, генетические алгоритмы, алгоритмы клонирования и др. [7,8].
В классическом генетическом алгоритме задача формализуется таким образом, чтобы её решение могло быть закодировано в виде вектора генов («генотипа»), в нашем случае каждый ген представлен битовой строкой. Случайным образом создаётся множество генотипов исходной популяции и рассчитывается значение «приспособленности» для каждой особи, чаще всего это значение функции пригодности. Из полученного множества возможных решений («поколения») с помощью оператора «селекция» выбираются особи, к которым применяются «операторы генетического алгоритма»: скрещивание (кроссовер) и мутация, результатом
чего является получение новых решений. Для них вычисляется значение приспособленности, и, после этого производится отбор наилучших решений в следующее поколение.
Такой порядок действий итеративно повторяется, и таким образом моделируется «эволюционный процесс», который продолжается несколько жизненных циклов (поколений), пока не будет выполнен один из критериев остановки алгоритма. Этими критериями чаще всего являются:
• нахождение глобального или субоптимального решения;
• достижение заданного количества итераций, отпущенных па эволюцию;
•
•
Настрой ко алгоритма для решения задачи расстановки стоков. Для представления решения (генотипа) будем использовать битовые строки, каждый бит кодирует наличие стока в узлах заданного графа.
Функцией пригодности (приспособленности) является Кк,т(С) для некоторой расстановки стоков в вершинах V = («1,..., )■
Есть несколько типов селекции решений для последующего скрещивания, в этой работе использован метод турнирной селекции, так как он имеет преимущество перед методом колеса рулетки из-за более обширного разнообразия генотипов популяции, что позволяет расширить область поиска решений и предотвратить преждевременное вырождение популяции. Оператор селекции отбирает пары родителей Аг,Вг,г = 1,..., Рорвгге, где Рорвгге — размер популяции, для последующего скрещивания.
Скрещивание проводится следующим образом: у пары родительских генотипов А и В все совпадающие
1
стоков.
Оператор мутации реализован двумя разными способами, сохраняющими количество стоков:
•
обратной последовательности.
3 Эксперименты
Расчеты проводились на беспроводной сенсорной сети, представленной в виде решётки 5 х 5, при фиксированном количестве стоков равном 3. В силу небольшого пространства решений, при расчётах было выявлено, что для нахождения оптимального решения достаточно взять размер популяции равным 10 и количество итераций равное 5, вероятность мутации — 0,01. Результаты подсчётов сравнивались с алгоритмом полного перебора.
О—<
а
б
в
Рис. 1: Оптимальные варианты расстановки стоков
На рис. 1 представлены оптимальные варианты расстановки для Т = 15 при р = 0,1 и 0, 5 (а), при р = 0, 9 (б), для Т = 20 (в) иТ = 10 (г) при любых значениях р, полученные в [2]. Все эти варианты были найдены ГА за время, указанное в таблице 1.
При расстановке стоков для максимизации площади покрытия была рассмотрена структура сети, приведённая на рис. 2. Найденными узлами для размещения в них трёх стоков оказались узлы 12, 14, 23.
Таблица I: Время расчёта на решётке 5 х 5
р = 0.5 Т = 10 Т =15 Т = 20
Генетический 48с 820мс 94мс
33с 613мс
алгоритм
Полный перебор 9м 24с 650мс Им 39с 200мс 2с 91мс
Рис. 2: Тестовая беспроводная сенсорная сеть
При использовании приближенного расчёта методом Монте Карло удалось значительно сократить время оптимизационного процесса и получить в большинстве случаев те же варианты расстановок. Расчёты велись до обеспечения точности надёжности с погрешностью не более 0.01. чему соответствует 2250 итераций метода Монте-Карло [3].
Заключение
В данной работе мы предлагаем способ размещения стоков в БСС, делающий БСС более надёжной. В качестве надёжности рассматриваются два показателя: вероятность покрытия сетыо заданной площади и вероятность доступа к стокам определённого количества сенсоров. Для каждого показателя были использованы точный и приближённый методы расчёта, эксперименты показали целесообразность использования приближённых методов.
Список литературы
[1] Мочалов В.А. Алгоритм оценки надежности структуры сенсорной сети // Информационно-управляющие системы. 2009. № 5. С. 61 66.
[2] Мигов Д.А. Показатель надежности для беспроводных самоорганизующихся сетей // Вестник СибГУ-ТИ. 2014. № 3. С. 3 12.
[3] Д.А. Мигов, Д.В. Вине. Параллельная реализация и имитационное моделирование оценки надёжности сети методом Монте-Карло // Вестник Томского государственного университета. Управление, вычислительная техника и информатика. Т. 47, 2019. С. 66 74.
[4] Кучеров А.В., Мигов Д.А. Расчёт ожидаемой площади покрытия беспроводной сенсорной сети с ненадёжными узлами // Проблемы информатики. № 3 , 2018, с. 21-33.
[5] Tkachev K.V., Volzhankina К.A., Sokolova, O.D. On a Problem of the Monitoring Devices Placement on Transport Networks // 14th International Scientific-Technical Conference on Actual Problems of Electronic Instrument Engineering, APEIE 2018 — Proceedings, 2018, p. 232-235.
[6] J. Sanner, Y. Hadjadj-Aoul, M. Ouzzif and G. Rubino, "An evolutionary controllers' placement algorithm for reliable SDN networks,"2017 13th International Conference on Network and Service Management (CNSM), Tokyo, 2017, pp. 1-6.
[7] Volzhankina K.A., Rodionov A.S. A Parallel Genetic Algorithm Approach for Monitoring Devices Placement // Труды 13-ой Международной Азиатской школы-семинара в рамках международной мультиконфе-ренции IEEE SIBIRCON 2017. Под редакцией А.С. Родионова. 2017. С. 186-189.
[8] Ulutas, В.Н., Islier, A. A. Parameter Setting for Clonal Selection Algorithm in Facility Layout Problems // In Proc. of the ICCSA-2007, LNCS 4705, Part I, pp. 886-899.
Мигов Денис Александрович — к.ф.-м.н., науч.сотр. Института вычислительной математики и математической геофизики СО РАН;
e-mail: [email protected];
Волжанкина Ксения Александровна — мл.науч.сотр. Института вычислительной математики и математической геофизики СО РАН;
e-mail: [email protected].
Дата поступления — 30 апреля 2019 г.