Научная статья на тему 'Полуопределенная оптимизация в задаче расположения датчиков в сети'

Полуопределенная оптимизация в задаче расположения датчиков в сети Текст научной статьи по специальности «Математика»

CC BY
207
44
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ЗАДАЧА РАСПОЛОЖЕНИЯ ДАТЧИКОВ В СЕТИ / ПОЛУОПРЕДЕЛЕННАЯ РЕЛАКСАЦИЯ / ПОЛУОПРЕДЕЛЕННЫЙ СИМПЛЕКС-МЕТОД / ПОЛУОПРЕДЕЛЕННАЯ ОПТИМИЗАЦИЯ / SENSOR NETWORK LOCALIZATION PROBLEM / SEMIDEFINITE RELAXATION / SEMIDEFINITE SIMPLEX-METHOD / SEMIDEFINITE OPTIMIZATION

Аннотация научной статьи по математике, автор научной работы — Косолап А. И., Перетятько А. С.

Рассматривается задача расположения датчиков в сети с минимизацией нормы отклонений от заданных расстояний. Для ее решения используются полуопределенная релаксация и новый полуопределенный симплекс-метод. Метод реализован програмно, проведены многочисленные эксперименты, которые показывают, что полуопределенная релаксация для этого класса задач является эффективной.

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

Sensor network localization problem with minimization of deviation norm from required distances is considered. For its solving semidefinite relaxation and new semidefinite simplex-method are used. The method was implemented and numerical experiments were performed. They show that semidefinite relaxation is efficient for this class of problems.

Текст научной работы на тему «Полуопределенная оптимизация в задаче расположения датчиков в сети»

УДК 519.85

А.И. КОСОЛАП*, А.С. ПЕРЕТЯТЬКО*

ПОЛУОПРЕДЕЛЕННАЯ ОПТИМИЗАЦИЯ В ЗАДАЧЕ РАСПОЛОЖЕНИЯ ДАТЧИКОВ В СЕТИ

Украинский государственный химико-технологический университет, Днепропетровск, Украина

Анотаця. Розглядаеться задача розташування датчиюв у мереж1 з м1шм1зац1ею норми в1дхилень eid заданих в1дстаней. Для ii розв'язку використовуються натввизначена релаксация та новий на-тввизначений симплекс-метод. Метод реалiзований програмно, проведет численш експерименти, яю свiдчать, що натввизначена релаксащя для цього класу задач е ефективною. Ключов1 слова: задача розташування датчиюв у мережi, натввизначена релаксащя, натввизначе-ний симплекс-метод, натввизначена оптимiзацiя.

Аннотация. Рассматривается задача расположения датчиков в сети с минимизацией нормы отклонений от заданных расстояний. Для ее решения используются полуопределенная релаксация и новый полуопределенный симплекс-метод. Метод реализован програмно, проведены многочисленные эксперименты, которые показывают, что полуопределенная релаксация для этого класса задач является эффективной.

Ключевые слова: задача расположения датчиков в сети, полуопределенная релаксация, полуопределенный симплекс-метод, полуопределенная оптимизация.

Abstract. Sensor network localization problem with minimization of deviation norm from required distances is considered. For its solving semidefinite relaxation and new semidefinite simplex-method are used. The method was implemented and numerical experiments were performed. They show that semidefinite relaxation is efficient for this class ofproblems.

Keywords: sensor network localization problem, semidefinite relaxation, semidefinite simplex-method, semidefinite optimization.

1. Вступление

Полуопределенная оптимизация (SDP) является новой отраслью оптимизации, начиная с 90-х годов ХХ века. Многие NP-сложные задачи общей квадратичной оптимизации, комбинаторной оптимизации, положительной оптимизации, теории графов, теории управления, вычислительной геометрии, некоторые технические и финансовые задачи сводятся с помощью полуопределенной релаксации к задачам SDP [1-3]. Все эти задачи могут быть сформулированы как общие квадратичные задачи, которые затем с помощью преобразования xAxT = AxxT = A • X сводятся к задачам полуопределенной оптимизации, где X -полуопределенная матрица ранга «единица» [4]. Релаксация заключается в том, что на матрицу X накладывается только условие полуопределенности. Если решением задачи SDP будет матрица ранга «единица», то такая релаксация будет точной. Во многих случаях оптимальное решение SDP-релаксации может быть преобразовано к допустимому решению исходной задачи.

Важной задачей, где используется полуопределенная релаксация, является локализация датчиков в сети. В последние годы данная проблема интенсивно исследуется [5-12]. Важность этой задачи состоит в том, что в современном информационном обществе существует проблема автоматического сбора данных. Одним из основных факторов автоматизации сбора данных являются датчики, которые обеспечивают информационные сети данными. От количества и структуры датчиков зависит эффективность обработки данных, поступающих в компьютер. Существуют системы, которые уже имеют какое-то количество датчиков с заданной структурой, и необходимо дополнить эту структуру новыми датчиками. Задача локализации датчиков в сети заключается в том, чтобы определить такую

© Косолап А.И., Перетятько А.С., 2014

ISSN 1028-9763. Математичш машини i системи, 2014, № 2

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

Целью данной работы является исследование полуопределенной релаксации для решения задачи локализации датчиков в сети, а также проверка целесообразности использования нового полуопределенного симплекс-метода для полученной в результате релаксации задачи полуопределенной оптимизации.

2. Постановка задачи

Рассмотрим задачу оптимального расположения датчиков в сети [11-12]. Задача локализации датчиков в сети состоит в нахождении оптимального расположения датчиков, которое удовлетворяет заданным расстояниям между ними. Пусть имеется граф С = (У,Е). Датчиками называют его вершины, координаты которых необходимо определить.

Пусть имеется т закрепленных вершин графа а1, ..., ат е Яа и п вершин х1, ..., хп е Яа, чье расположение нам необходимо определить. К тому же нам известны значения евклидовых расстояний diмежду а' и х1 для некоторых г, j и diмежду хг и

для некоторых ' < у . Введем обозначения: пусть Ыа ={ (г, 1): di 1 определено }

и

NX = { (', 1) :' < 1, di у определено } . Задача локализации датчиков в сети состоит в поиске

таких х1, ..., хп е Яа, которые удовлетворяют следующим условиям:

а' - х'

х'

"(г, 1) е Ыа

(1)

2 _ = d, 2

"(%, 1) е N .

Таким образом, задача локализации датчиков в сети свелась к решению нелинейной квадратичной системы уравнений (1). Решить эту задачу достаточно сложно и к тому же она может не всегда иметь решение (заданные расстояния между датчиками невозможно реализовать), поэтому заменим ее оптимизационной задачей:

Ш1П <

аг -х1

22 II и || + || у ||

хг - х1

= 4 + и1 -= % + ^,

"(%, 1), г = 1,—,т, 1 = 1,..,к % < 1, % = 1,—,к, 1 = 2,...,к

(2)

где иг1- - отклонение от заданного расстояния между i -той вершиной и 1 -тым датчиком ("(г, 1), г = 1,—,т, 1 = 1,..,к ), у у - отклонение от заданного расстояния между г -тым и у -тым датчиками (г < у, г = 1,—,к, у = 2,...,к ). Все значения игу, где г = 1, —,т, 1 = 1,..,к, формируют вектор и размерности р, где р - количество известных расстояний di у. Все значения уц , где % < 1, % = 1, —,к, 1 = 2,...,к, формируют вектор у размерности I, где I -количество расстояний di у.

Таким образом, целевая функция задачи (2) минимизирует отклонения от заданных расстояний. Очевидно, что задача (2) всегда имеет решение.

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

х

2

х

2

2

даче нелинейной глобальной оптимизации. Альтернативный подход с использованием SDP был разработан относительно недавно [11].

3. Полуопределенная релаксация задачи локализации датчиков в сети

Преобразуем задачу (2) к задаче полуопределенной оптимизации (SDP) [4]. Для этого используем преобразование xAxT = AxxT = A • X, где X - полуопределенная матрица ранга «единица». При решении преобразованной задачи упускается ограничение на ранг матрицы X .

Усовершенствуем релаксацию, которая используется в [11], для нашей постановки задачи (3), учитывающей отклонения от заданных расстояний. Получим следующую задачу полуопределенной оптимизации:

min <j C ■ X

Aj ■ X = 0, "(i, j), i = 1,...,m, j = 1,...,k, X>0 Ätj ■ X = 0, i < j, i = 1,.,k, j = 2,...,k, X^0

(3)

где

X

X X

vt v2 I размерности (n + k + p +1) x (n + k + p +1),

XX

(4)

X = I

X,

( x1

v xn

(1 0 ... 0 ^

0 1 ••.• 0

v 0 0 .. z

и1 . .. up v1 ... v

размерности nx n,

: 0 ... 0 0 ... 0 xk 0 ... 0 0 ... 0

размерности n x (k + p +1).

Х3 = Х2.Х2 размерности (к + р +1) х (к + р +I). Очевидно, что матрица С будет иметь следующий вид:

(0 ... 0 о4^

С =

0 . 0 0 0... 0 I

J

где I - единичная матрица размерности (р +1) х (р +1) .

Рассчитаем матрицы ограничений Ац . Из (2) имеем

(5)

a' - xJ

2 и и 2 и ц2

2 -. _ -J2 . II _г|| , ll..j||

- d.. - и,, = -d:, + al +1|xj

j У j

- 2aixj - и

= -dj + (a|2 +... + an2) + (x/2 +... + x]j 2) - 2(a;x/ + . + a1nx]ri) - щ = 0.

(6)

Учитывая (4) и (6), имеем

( A A )

A'j = I AT A'. I размерности (n + k + p +1) x (n + k + p +1),

(7)

d + 0 0

a

0 ... 0 0 ....0

0 . 0

размерности n x n,

k

2

и1

о .. . -о.5 о . о

о .. .. о о . о

о . . о о . о

размерности п х (к + р +I),

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

а

г о

о о о

]

о о о

о о о

0 1 о

о о о

о о о

о ^

о о о

размерности (к + р +I) х (к + р +I).

То есть в матрице А2 в j -том столбце элементы равны компонентам вектора

а

взятым с противоположным знаком, и элемент, соответствующий и у в матрице Х2, равен -о,5 . Все элементы матрицы А, равны нулю, кроме а у = 1. Рассчитаем матрицы ограничений Ау . Из (2) имеем

хг - X1

- - ъ=-¿1+

х

+

х

-2х'х} -V

= -¿1 + (х1 +... + х'п ) + (х/ +... + хП )-2(х1'х/ +... + х'пх]п)-VI = о. Тогда, учитывая (4) и (8), имеем

(

А А \

Ат А I размерности (п + к + р +I)х(п + к + р +1),

(

А/ =

- о о о

оо

размерности п х п,

(8)

(9)

У1

г о ... о -о.5 о ; ; о ; о ... о о о

1

А =

о ^

размерности п х (к + р +I),

Го .. о о о .. • о I

о .. . 1 о -1 .. . о

о .. о о о . . о

о .. -1 о 1 . . о

чо .. о о о . •

размерности (к + р +I) х (к + р +1).

То есть в матрице А2 все элементы равны нулю, кроме элемента, соответствующего VI в матрице Х2, который равен -о, 5. Все элементы матрицы А, равны нулю, кроме

-1.

У

а. = а

и

:1, а1 = ап

о

о

п

о

о

2

2

2

о

о

о

/

2

о

1о8

¡ББК Ю28-9763. Мaтемaтичнi машини i системи, 2о14, № 2

Очевидно, что количество ограничений Aij будет равно p, а количество ограничений Aij будет равно l.

Таким образом, задачу (3) можем записать в общем виде:

min{ C • X | A • X = 0, ХУ0 }. (10)

SDP-алгоритмы предусматривают релаксацию ограничения на ранг матрицы Х в задаче (10) (ищется полуопределенная матрица Х произвольного ранга). Задача (10) может быть решена алгоритмом внутренней точки [1, 13] или полуопределенным симплекс-методом [14]. Для решения задачи (10) в данной работе использован предложенный авторами полуопределенный симплекс-метод [14].

4. Полуопределенный симлекс-метод для решения задачи SDP

Полуопределенный симплекс-метод [14] ищет решение задачи полуопределенной оптимизации (10)в виде

Х = £a}X} , (11)

где Xj = XjXtj - матрицы ранга «единица», число слагаемых в сумме больше размерности Х и a > 0. Матрицы Xj являются образующими конуса полуопределенных матриц и образуют его начальную аппроксимацию.

Тогда задача полуопределенной оптимизации (10) сводится к задаче линейного программирования:

min{£af • Xj | £a]Ai • = Ъг,i = 1,...,m,a> 0}. (12)

Алгоритм полуопределенного симплекс-метода [14] для задачи (12) на каждой итерации строит базисное решение, преобразуя строку целевой функции (так, чтобы при базисных переменных коэффициенты целевой функции равнялись нулю) и включает в базис столбец с минимальным значением коэффициента целевой функции. При добавлении в сумму (11) новых образующих полуопределенный симплекс-метод рассчитывает строку целевой функции и для этих образующих. Если не существует образующих, для которых оценка в строке целевой функции будет неотрицательной, то решение задачи (12) совпадает с решением задачи (10).

Таким образом, на каждой итерации полуопределенного симплекс-метода решается задача линейного программирования (12) и проверяется полуопределенность матрицы

m

Q = C - £ с • xxT £ ъ-1 Aj ,

j=1

где bj1 - элементы обратной матрицы базисных элементов. Суммирование проводится по индексам всех базисных столбцов матрицы ограничений задачи (12). Эта матрица совпадает с оценкой целевой функции для новой образующей xkxT. Другими словами, если x'T Qxk < 0, то ввод k -го столбца в базис приведет к уменьшению целевой функции задачи (10). Если же матрица Q - полуопределенная, то значение целевой функции задачи (12) не может быть уменьшено, и текущее решение является оптимальным для задачи (10).

Определяем ранг матрицы Х. Когда он равен единице, получаем точное решение начальной задачи (2), а если ранг матрицы Х больше единицы, то получаем нижнюю оценку решения задачи (2).

Полученная нижняя оценка решения задачи (2) использовалась в качестве начальной точки для нахождения допустимого решении задачи (2) методом внутренней точки [15].

5. Результаты численных экспериментов

Полуопределенный симплекс-метод для решения задачи локализации датчиков в сети был реализован программно средствами VBA для Excel и были проведены значительные численные эксперименты.

В следующем примере задача локализации датчиков в сети с помощью полуопределенной релаксации сводится к задаче полуопределенной оптимизации, которая решалась полуопределенным симплекс-методом [14].

Рассмотрим задачу локализации датчиков в сети с тремя известными вершинами и двумя датчиками. Имеем известные вершины

a1 (1, 0), a2 (2,1), a3 (0, 3) , заданные расстояния между известными вершинами и датчиками

d11 = d21 = d31 = d12 = 1

и расстояние между датчиками

d12 = 1.

Графически положение известных вершин представлено на рис. 1, из которого очевидно, что задача (1) не имеет решения (невозможно расположить датчики так, чтобы расстояния между ними и известными вершинами были равны единице).

Поэтому будем решать задачу (2), которая имеет следующий вид:

mini

I u |

+ II V |

a1 - xJ

x'

-xJ

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

= à, + u, :

=à2 + v,,

"(i,j), i = 1,...,m, j = 1,..,к

i < j, i = 1,.,к, j = 2,...,к

(13)

Из условия задачи следует, что т = 3, к = 2, п = 2, р = 4, I = 1. Преобразуем задачу (13) к задаче полуопределенной оптимизации. Для этого используем схему (3), (4), (5), (7),

(9).

Получим следующую задачу полуопределенной оптимизации:

где

C =

min i C • X A X = 0, "(i, j), i = 1,. ,3, j= 1,.. ,2, X^0 1

A12 • X = 0, X ^0 J

Г 0 0 0 0 0 0 00 0 > Г 0 0 -1 0 -0.5 0 0 0 0 ^

0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 00 0 -1 0 1 0 0 0 0 0 0

0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0

0 0 0 0 1 0 00 0 , A11 = -0.5 0 0 0 0 0 0 0 0

0 0 0 0 0 1 00 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 10 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 01 0 0 0 0 0 0 0 0 0 0

10 0 0 0 0 0 00 1 y l0 0 0 0 0 0 0 0 0 )

2

2

2

2

А

Г 4 0 -2 0 0 -0.5 00 0 ^ Г 8 0 0 0 0 0 -0.5 0 0 ^

0 0 -1 0 0 0 00 0 0 0 -3 0 0 0 0 00

-2 -1 1 0 0 0 00 0 0 -1 1 0 0 0 0 00

0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 00

0 0 0 0 0 0 00 0 , А31 = 0 0 0 0 0 0 0 00

-0.5 0 0 0 0 0 00 0 0 0 0 0 0 0 0 00

0 0 0 0 0 0 00 0 0.5 0 0 0 0 0 0 00

0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 00

V 0 0 0 0 0 0 00 0, V 0 0 0 0 0 0 0 0 0)

г 0 0 0 -1 0 00 -0.5 0 ^ г -1 0 0 0 0 0 0 0 -0.5 >

0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 00 0 0 0 0 1 -1 0 0 0 0 0

-1 0 0 1 0 00 0 0 0 0 -1 1 0 0 0 0 0

0 0 0 0 0 00 0 0 , А12 = 0 0 0 0 0 0 0 0 0

0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0

0.5 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0

V 0 0 0 0 0 00 0 0) V 0.5 0 0 0 0 0 0 0 0)

С помощью полуопределенного симплекс-метода найдено приближенное решение задачи (13), которое равно 5,6485. Матрица решения Х имеет ранг 3, а это означает, что мы

нашли приближенное решение начальной задачи (13):

1,0000 0,0000 0,7612 1,3523 1,3914 0,8133 1,7466 0,0001 0,0000

0,0000 1,0000 1,5279 0,8366 0,0077 -0,0002 0,0009 0,0001 0,0002

0,7612 1,5279 2,9138 2,3093 1,0710 0,6188 1,3308 0,0001 0,0002

1,3523 0,8366 2,3093 2,7047 1,8888 1,0997 2,3629 0,0001 0,0001

1,3914 0,0077 1,0710 1,8888 1,9363 1,1317 2,4303 0,0001 0,0000

0,8133 -0,0002 0,6188 1,0997 1,1317 0,6615 1,4206 0,0001 0,0000

1,7466 0,0009 1,3308 2,3629 2,4303 1,4206 3,0507 0,0001 -0,0001

0,0001 0,0001 0,0001 0,0001 0,0001 0,0001 0,0001 0,0000 0,0000

0,0000 0,0002 0,0002 0,0001 0,0000 0,0000 -0,0001 0,0000 0,0000

(14)

Из матрицы (14) получим приближенное решение (13):

*1 =

0,7612 1,5279

Х2 =

1,3523 0,8366

и приближенные значения отклонений

и11 = 1,3914, и12 = 0,8133,

и13 = 1,7466, и21 = 0,0001,

^2 = 0.

Для получения верхней оценки используем найденные векторы х, и и V в качестве начальных и будем решать задачу (13) методом внутренней точки [15]. Получим координаты датчиков:

X =

0,7634 1,5297

Х2 =

1,5075 0,8616

при отклонениях

и11 = 1,396, и12 = 0,8097.

и13 = 1,7445, и21 = 0, v12 = 0

и значение минимума 5,6479, которое является оптимальным.

На рис. 2 изображены расположение вершин и найденное оптимальное расположение датчиков.

6. Выводы

В данной работе решалась задача локализации датчиков в сети путем ее преобразования к общей задаче квадратичной оптимизации. Затем использовалась полуопределенная релаксация. Было проведено значительное количество численных экспериментов, которые подтверждают эффективность выбранного метода для решения задачи локализации датчиков в сети. Приведенная в статье постановка задачи локализации датчиков в сети дает возможность всегда находить решение. Как показали численные эксперименты, использование нижней оценки в качестве начальной точки для нахождения верхней оценки решения задачи в большинстве случаев приводит к нахождению глобального минимума исходной задачи. Таким образом, полуопределенная релаксация в сочетании с методами локального поиска дает возможность находить оптимальное решение задачи локализации датчиков в сети. В дальнейшем авторы видят перспективы использования предложенного подхода для решения других сложных прикладных задач.

СПИСОК ЛИТЕРАТУРЫ

1. Overton M. Semidefinite Programming / M. Overton, H. Wolkowicz // Mathematical Programming. -1997. - N 77. - P. 105 - 109.

2. Helmberg C. Semidefinite Programming For Combinatorial Optimization / Helmberg C. - Berlin, 2000. - 150 p.

3. Freund R.M. Introduction to Semidefinite Programming / Freund R.M. - Massachusett: Massachusetts Institute of Technology, 2004. - 54 p.

4. Косолап А.1.Використання нашввизначено! оптимiзацil для моделювання складних систем / А.1. Косолап, А.С. Перетятько // Математичш машини i системи. - 2012. - № 1. - С. 174 - 179.

5. Nie J. Sum of Squares Method for Sensor Network Localization / J. Nie. - University of Minnesota, 2006. - 24 p.

6. Spaseloc: An Adaptive Subproblem Algorithm For Scalable Wireless Sensor Network Localization / Michael W. Carter, Holly H. Jin, M. A. Saunders [et al.] // Siam J. Optim. - 2006. - Vol. 17, N 4. -P.1102 - 1128.

7. Anderson B.D.O. Wireless sensor network localization techniques / B.D.O. Anderson, G. Mao, B. Fi-dan // Computer Networks. - 2007. - N 51. - P. 2529 - 2553.

8. Biswas P. Semidefinite programming for ad hoc wireless sensor network localization / P. Biswas, Y. Ye // Proc. of the 3-rd International Symposium on Information Processing in Sensor Networks: Berkeley, CA, USA. - 2004. - P. 46 - 54.

9. Cassioli A. Solving the Sensor Network Localization Problem using an Heuristic Multistage Approach / A. Cassioli. - Universita degli Studi di Firenze, 2009. - 25 p.

10. Krislock N. Explicit Sensor Network Localization using Semidefinite Representations and Facial Reductions / N. Krislock, F. Wolkowicz. - Waterloo: University of Waterloo, 2010. - 35 p.

11. Man-Cho A. Theory of Semidefinite Programming for Sensor Network Localization / A. Man-Cho, Y. Ye. - ACM-SIAM Symposium on Descrete Algorithms, 2004. - 16 p.

12. SFSDP: a Sparse Version of Full Semidefinite Programming Relaxation for Sensor Network Localization Problems / S. Kim, M. Kojima, H. Waki [et al.]. - Tokyo, 2009. - 19 p.

13. Freund R.M. Introduction to Semidefinite Programming / Robert M. Freund. - Massachusett: Massachusetts Institute of Technology, 2004. - 54 p.

14. Косолап А.И. Обобщение симплекс-метода для решения задач полуопределенной оптимизации / А.И. Косолап // Математичне та комп ютерне моделювання. - 2010. - Вип. 3. - С. 99 - 106.

15. Terlaky T. Interior Point Methods of Mathematical Programming / Terlaky T. - Springer, 1996. -528 p.

Стаття над1йшла до редакцп 28.01.2014

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