Научная статья на тему 'Применение метода изменяющихся вероятностей для задач оптимального размещения на сети'

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

CC BY
525
90
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ДИСКРЕТНАЯ ОПТИМИЗАЦИЯ / P-МЕДИАННАЯ ЗАДАЧА / МЕТОДЫ СЛУЧАЙНОГО ПОИСКА / ЗАДАЧИ РАЗМЕЩЕНИЯ / DISCRETE OPTIMIZATION / P-MEDIAN PROBLEM / METHODS OF RANDOM SEARCH / THE LOCATION PROBLEM

Аннотация научной статьи по математике, автор научной работы — Антамошкин Александр Николаевич, Казаковцев Лев Александрович

Рассматривается p-медианная задача оптимального размещения на графе (сети), являющаяся популярной моделью как в логистических задачах (оптимальное размещение транспортной, телекоммуникационной и иной инфраструктуры), так и опосредованно в задачах кластерного анализа, распознавания образов, в теории оценивания. Цель p-медианной задачи на графе (сети) заключается в нахождении определенного числа вершин (узлов) таких, чтобы суммарное расстояние от всех узлов сети до ближайшей из выбранных вершин (узлов) было минимальным. Для приближенного решения рассматриваемой неразрешимой (в общем случае) за полиномиальное время задачи предложен эвристический алгоритм, основанный на идеях метода изменяющихся вероятностей, являющегося методом случайного поиска с адаптацией. Идея алгоритма заключается в случайном выборе вершин в соответствии с заданными вероятностями выбора каждой из вершин и изменении этих вероятностей для каждой из выбранных вершин и вершин в некоторой ее окрестности в зависимости от достигнутого значения целевой функции (т. е. в зависимости от суммарного расстояния от каждой из вершин графа до ближайшей из выбранных вершин). При создании алгоритма для p-медианных задач с большой размерностью и вычислительной сложностью ставится задача оптимального использования вычислительных мощностей. Эффективность алгоритма подтверждена экспериментальной проверкой на тестовых примерах из библиотеки ORLIB. Также приведены результаты работы комбинированного алгоритма комбинации предложенного алгоритма с процедурой локального поиска для решения данной задачи. Экспериментально показано, что результаты такой комбинации превосходят результаты оригинального многократных запусков алгоритма, реализующего локальный поиск из случайным образом выбранных вершин. Кроме того, в работе экспериментально показано, что для небольших задач алгоритм способен получить точное решение задачи.

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

Application of the probability changing method for optimal location problems on a network

In this paper, the authors consider the p-median optimal location problem on a graph (network) which is a popular model for both logistic problems (optimal transportation, telecommunication and other infrastructure elements placement) and problems of cluster analysis, pattern recognition and estimation theory. The aim of the p-median problem on a graph (network) is to find the given number p of vertices of a graph such that the total distance from each vertex to the nearest chosen vertex reaches its minimum. To solve this NP-hard (in general) problem approximately, the authors propose a heuristic algorithm based on ideas of the probability changing method which is a random search method with adaptation. The idea of the proposed algorithm is based on random choosing of vertices in accordance with the given probabilities of choosing each of them. The probabilities for every chosen vertex and its neighborhood alter depending on the value of the objective function (i.e. in accordance with the total distance from each of the vertices to the nearest chosen vertex). For the algorithm for the large-scale p-median problems, a problem of optimal use of computational capacity is important. The effectiveness of the proposed algorithm was proved experimentally on test datasets from the ORLIB (special dataset library for operations research). In addition, the authors illustrate the results for the proposed algorithm combined with a local search procedure for the considered problem. The experiments show that the results of such combination exceed the results of the multiple start of the local search procedure from randomly chosen vertices. In addition, the experiments demonstrate the ability of the proposed algorithm to reach an exact solution for small problems.

Текст научной работы на тему «Применение метода изменяющихся вероятностей для задач оптимального размещения на сети»

УДК 519.6

Вестник СибГАУ 2014. № 5(57). С. 10-19

ПРИМЕНЕНИЕ МЕТОДА ИЗМЕНЯЮЩИХСЯ ВЕРОЯТНОСТЕЙ ДЛЯ ЗАДАЧ ОПТИМАЛЬНОГО РАЗМЕЩЕНИЯ НА СЕТИ

А. Н. Антамошкин, Л. А. Казаковцев

Сибирский государственный аэрокосмический университет имени академика М. Ф. Решетнева Российская Федерация, 660014, г. Красноярск, просп. им. газ. «Красноярский рабочий», 31

Е-mail: levk@bk.ru

Рассматривается p-медианная задача оптимального размещения на графе (сети), являющаяся популярной моделью как в логистических задачах (оптимальное размещение транспортной, телекоммуникационной и иной инфраструктуры), так и опосредованно в задачах кластерного анализа, распознавания образов, в теории оценивания. Цель p-медианной задачи на графе (сети) заключается в нахождении определенного числа вершин (узлов) таких, чтобы суммарное расстояние от всех узлов сети до ближайшей из выбранных вершин (узлов) было минимальным. Для приближенного решения рассматриваемой неразрешимой (в общем случае) за полиномиальное время задачи предложен эвристический алгоритм, основанный на идеях метода изменяющихся вероятностей, являющегося методом случайного поиска с адаптацией. Идея алгоритма заключается в случайном выборе вершин в соответствии с заданными вероятностями выбора каждой из вершин и изменении этих вероятностей для каждой из выбранных вершин и вершин в некоторой ее окрестности в зависимости от достигнутого значения целевой функции (т. е. в зависимости от суммарного расстояния от каждой из вершин графа до ближайшей из выбранных вершин). При создании алгоритма для p-медианных задач с большой размерностью и вычислительной сложностью ставится задача оптимального использования вычислительных мощностей. Эффективность алгоритма подтверждена экспериментальной проверкой на тестовых примерах из библиотеки ORLIB. Также приведены результаты работы комбинированного алгоритма - комбинации предложенного алгоритма с процедурой локального поиска для решения данной задачи. Экспериментально показано, что результаты такой комбинации превосходят результаты оригинального многократных запусков алгоритма, реализующего локальный поиск из случайным образом выбранных вершин. Кроме того, в работе экспериментально показано, что для небольших задач алгоритм способен получить точное решение задачи.

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

Vestnik SibGAU 2014, No. 5(57), P. 10-19

APPLICATION OF THE PROBABILITY CHANGING METHOD FOR OPTIMAL LOCATION PROBLEMS ON A NETWORK

A. N. Antamoshkin, L. А. Kazakovtsev

Siberian State Aerospace University named after academician M. F. Reshetnev 31, Krasnoyarsky Rabochy Av., Krasnoyarsk, 660014, Russian Federation

E-mail: levk@bk.ru

In this paper, the authors consider the p-median optimal location problem on a graph (network) which is a popular model for both logistic problems (optimal transportation, telecommunication and other infrastructure elements placement) and problems of cluster analysis, pattern recognition and estimation theory. The aim of the p-median problem on a graph (network) is to find the given number p of vertices of a graph such that the total distance from each vertex to the nearest chosen vertex reaches its minimum. To solve this NP-hard (in general) problem approximately, the authors propose a heuristic algorithm based on ideas of the probability changing method which is a random search method with adaptation. The idea of the proposed algorithm is based on random choosing of vertices in accordance with the given probabilities of choosing each of them. The probabilities for every chosen vertex and its neighborhood alter depending on the value of the objective function (i.e. in accordance with the total distance from each of the vertices to the nearest chosen vertex). For the algorithm for the large-scale p-median problems, a problem of optimal use of computational capacity is important. The effectiveness of the proposed algorithm was proved experimentally on test datasets from the ORLIB (special dataset library for operations research). In addition, the authors illustrate the results for the proposed algorithm combined with a local search procedure for the considered problem. The

experiments show that the results of such combination exceed the results of the multiple start of the local search procedure from randomly chosen vertices. In addition, the experiments demonstrate the ability of the proposed algorithm to reach an exact solution for small problems.

Keywords: discrete optimization, p-median problem, methods of random search, the location problem.

Введение. Задачи размещения - класс задач оптимизации, в которых основными параметрами выступают координаты (местоположения) точек в некотором пространстве (непрерывном либо дискретном) и расстояния между ними [1; 2]. Задачи находят непосредственное практическое применение как при размещении производств, сетей, объектов инфраструктуры, датчиков и т. п., так и при решении задач кластерного анализа, распознавания образов, теории оценивания [3].

Задача Вебера (Ферма-Вебера) [1] - задача о поиске точки, сумма взвешенных расстояний от которой до известных точек (точек требования) минимальна, является обобщением простейшей задачи Ферма о нахождении точки, сумма расстояний от которой до трех известных точек минимальна, и имеет, в свою очередь, множество обобщений, главные из которых -множественная задача Вебера [4] и ¿»-медианная задача [5] на плоскости или на сети:

N

F((,X2,...,XM ) = £ Wi minL(Xj, A) min, (1)

¿=1 je{l,M)

где {Ai\ i = 1,N} - множество точек требования; {Xj | j = 1,p} - множество размещаемых точек; wi - весовой коэффициент i-й точки требования; L(.) - функция расстояния.

В общем случае задача не может быть решена за полиномиальное время, алгоритм с полиномиальным временем известен только для деревьев [6]. Использование релаксации Лагранжа [7] позволяет получать приближенные решения задач размерности до n = = 3 795. Под размерностью задачи будем понимать число вершин графа.

Непрерывные задачи размещения в евклидовой метрике (l2), а также в метриках l1 (прямоугольной или манхэттенской) и 4, (чебышевской) изучены и созданы универсальные алгоритмы на основе процедуры Вайсфельда, исследована их вычислительная сложность [8; 9]. Решение тех же задач, например с запретными зонами [10], уже не является тривиальным. В практических задачах при использовании евклидовой или прямоугольной метрики такие модели являются достаточно грубым приближением [11; 12], поскольку не учитывают свойства пространства и средств транспортировки, в частности, наличие и качество дорог, барьеры, рельеф и т. п. Нередко функция расстояния является решением другой (вложенной) оптимизационной задачи и задается в этом случае алгоритмически [12]. Таким образом, и в случае задачи, изначально сформулированной в виде задачи Вебера, зачастую целесообразной является ее дискретизация [13; 14]. Такие задачи можно рассматривать как p-медианные задачи на полном графе. Компромиссные подходы, сочетающие в формулировке задачи

элементы дискретного и непрерывного подходов, рассмотрены в [15-17].

В /»-медианной задаче на сети [5], которая рассматривается в настоящей работе, поиск решений (медиан) осуществляется в известном конечном множестве узлов графа (сети). В данной задаче требуется выбрать р вершин таким образом, чтобы сумма взвешенных расстояний от каждой из вершин графа до ближайшей из выбранных вершин была минимальной. Такое множество будем называть р-медианой, а элементы этого множества - медианами.

Эвристические методы случайного поиска не гарантируют нахождение точного решения, но они статистически оптимальны: процент задач, решенных «почти оптимально», растет с ростом размерности задачи [18] (т. е. с ростом числа булевых переменных). При решении дискретных задач размещения применяется генетический алгоритм и другие методы [19; 20].

Изначально разработанный для решения безусловных задач псевдобулевой оптимизации, метод изменяющихся вероятностей (МИВЕР) [18; 21; 22] - это метод случайного поиска, который некоторыми авторами рассматривается как специфический вариант генетического алгоритма [23], в котором происходит полная смена поколения особей от итерации к итерации, а процедуре скрещивания соответствует процедура адаптации вероятностей и генерация нового поколения в соответствии с новыми вероятностями.

Алгоритм 1. Метод изменяющихся вероятностей.

Дано: /(X) - псевдобулева целевая функция - вещественная функция N булевых переменных, Я - предельное число итераций. Здесь X = (хь ..., х^) - вектор булевых переменных.

1. Присвоить к = 0. Установить начальные значения вероятностей Рк = {ри, Рк2, ..., Ркы\, где р% = = Р^ = 1}. Здесь и далее индекс к - номер итерации. Корректный выбор начальных значений Р0 - важная проблема, особенно при переходе к условной оптимизации.

2. В соответствии с вектором распределений Рк генерируется набор N векторов Хкг, г е {1, ..., Nv},

каждый элемент р^ вектора Рк задает математическое ожидание генерации единицы в ]-й компоненте векторов Хкг. Число генерируемых на каждом шаге векторов N называется размерностью популяции по аналогии с генетическим алгоритмом.

3. Вычисляется значение /¡(Хь) для каждого из сгенерированных векторов.

4. Выбираются некоторые значения целевой функции /¡(Хкг) и соответствующие векторы Хы, например, экземпляры сгенерированных векторов с максимальным и минимальным значением /¡(Хкг).

5. На основе результатов шага 4 модифицируется вектор Рк.

6. к = к + 1, если к < Я, то переход к шагу 2. Возможны другие условия останова.

7. Иначе останов.

В задачах условной оптимизации применяются специальные модификации метода. Например, параллельные модификации алгоритма, предложенные в [24], позволяют решать задачи «рюкзачного» типа большой размерности (десятки тысяч переменных), а для задачи о коммивояжере, сформулированной в булевых переменных, число переменных может достигать 106.

При создании алгоритма для ¿»-медианных задач с большой размерностью и, соответственно, вычислительной сложностью, попутно должны быть решены задачи оптимального использования вычислительных мощностей. Прогнозируемое появление и распространение в ближайшем будущем персональных кластеров делают оправданной разработку параллельных алгоритмов размещения для систем с распределенной памятью. Эффективность параллельных алгоритмов на базе метода изменяющихся вероятностей, описанных в [13; 25; 26], для задач большой размерности доказана экспериментально.

Целью данной работы является адаптация метода изменяющихся вероятностей для решения ¿-медианной задачи и исследование применимости полученного алгоритма для решения задач большой размерности (п > 500).

Постановка задачи, алгоритм расчета значения целевой функции. Пусть О = (У,Е) - ненаправленный связный граф (сеть), V = {уь ..., уп} - множество вершин, Е = {е |/ = 1,т} - множество ребер, е^ = (),

' е {1, ..., п}, к е{1, ..., п}У = 1,т без петель, т. е. е' Ф {vj,vj), V/ = 1,т, ' = 1,п. Каждому ребру ei поставлена в соответствие его длина > 0 (для е1 = (У',ук) введем обозначение ^ к = ^ ), каждой j-й вершине поставлен в соответствие вес ^ > 0 . Для любой пары

вершин ('') определена функция расстояния ¿(¡¿) -длина кратчайшего пути между данными вершинами:

1 0')= Е 1к = Р ^ X 1к,

kePi

PpathEPi,j кер

path

где р' - множество ребер, составляющих кратчайший путь между /-й и'-й вершинами; Р, - множество всех возможных путей между данными вершинами; Ррал - любой путь из множества возможных путей Ру. Тогда р-медианную задачу можно сформулировать

как

min _ f (,..., mp ) =

mj, ..., mpe{1,n} ^ ^

n

= min _ Ё wi min L (m-, i ),p < n.

mJ, ..., mp ={j,n} i=j je{j,p} V '

Введем дополнительные обозначения.

(2)

Ci = {к e {1,n} | 3ej = (v,,vk), j e {1,m}} - множество индексов окружения i-й вершины (ее окрестности первого порядка);

l* = min L (M:,i) - длина кратчайшего пути из i-й

j=i,p j '

вершины до ближайшей из p вершин m1, ..., mp.

Значения функции f (m1, ..., mp) вычислим с помощью модификации алгоритма Дейкстры [27]: Алгоритм 2. Расчет значения целевой функции. Дано: индексы p выбранных вершин m1, ..., mp.

1. Присвоить l* = +<xNi = 1,n .

2. Присвоить l* = 0Vi = 1,p .

* i 4 ** *

3. Присвоить V = {m1, ..., mp }; V =V .

4. Пока V** ф 0, цикл:

4.1. Пока V = 0 .

**

4.2. Для i e V цикл:

4.2.1. Для j e Ci цикл:

4.2.1.1. Если j g V*, тогда V = Vu{j} ; l* = l* +ltj.

4.2.1.2. Иначе, если l* > l* , тогда l* = l* +ltj .

4.2.1.3. Конец цикла 4.2.1.

4.2.2. Конец цикла 4.2.

4.3. Присвоить V** =V ; V* =V* u V .

4.4. Конец цикла 4.

n

5. Возврат f (,..., mp) = ^ w;l* .

i=1

Метод изменяющихся вероятностей является методом псевдобулевой оптимизации, для его применения целевая функция должна быть выражена как функция булевых переменных.

Введем новые переменные хь ..., xn:

[1, i e(mj, ..., mp}; IQ, i i{m1, ..., mp}.

(3)

В случае булевых переменных задача имеет ограничение

Ё xi=p.

(4)

Обратный переход к исходным целочисленным переменным осуществляется следующим образом:

{т1, ..., тр } = {/ | х' = 1, ¡ = 1,п}.

Задачу с псевдобулевой целевой функцией можно сформулировать следующим образом:

/ъ (, ..., хп )=/ ({ ' | Х'= 1, '= Щ }) =

п

= Е { | } 1 0',' )

¡=1 0|х/=и=1,п}

с ограничением (4).

В данном виде задача может быть решена различными методами псевдобулевой оптимизации, в том числе и методом изменяющихся вероятностей. Предлагаемый нами алгоритм на базе метода изменяющихся вероятностей учитывает условие (4) на этапе

i=1

генерации очередной популяции векторов (шаг 2 алгоритма 1).

Алгоритм на базе метода изменяющихся вероятностей. Пусть Lmax - диаметр графа (максимальное из расстояний между парами вершин):

Lmax = max L(1, j) , i,je{1, ..., n}

lavg - средняя длина ребра:

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

m

lavg = X lj / m .

j=1

Наш алгоритм основан на следующих предположениях:

1. При

lavg / Lmax ^ 0 (5)

свойства задачи размещения на сети приближаются к свойствам непрерывной задачи, а именно: при замене в решении { m1, ..., mp } любой т,-й вершины на другую j-ю вершину такую, что L(j,m) мало, изменение значения целевой функции будет малым.

2. Если в решении { т1, ..., mp} для любых двух

вершин vи vm расстояние L(mi,mj) мало, велика

1 J

вероятность того, что при замене одной из компонент решения mj на k-ю точку такую, что при L(mi,k) >> >> L(mi,mj), значение целевой функции для нового решения будет ближе к оптимальному:

fmi, ..., m, ..., mj, ..., mp) >f(mb ..., m„ ..., k, ..., mp).

Под «малым» расстоянием будем подразумевать L(mhmj) < L0, L0 = const.

Эксперимент для доказательства данного утверждения приведен ниже.

Наша модификация алгоритма 1 сводится к изменению на шагах 2 и 5.

На шаге генерации экземпляров вектора X должно быть учтено ограничение (4). Это достигается следующим алгоритмом.

Алгоритм 3. Генерация одного члена популяции на шаге 2 алгоритма 1.

Дано: вектор вероятностей P = (p1, ..., pn), число вершин в решении p.

1. Присвоить х = 0 .

2. Пока | х | < Р, цикл:

n

2.1. r = Random ( )• X Pj ; S = 0.

j=1

2.2. Для каждого j e {1,n} цикл:

2.2.1. Присвоить S = S + pj.

2.2.2. Если S > r , тогда х = X u{j} ; прервать цикл

2.2.

2.2.3. Конец цикла 2.2.

2.3. Конец цикла 2.

3. Возврат х.

Результатом алгоритма является множество х. Соответствующий вектор Xki, i e {1, ..., Nv} (см. шаг 2 алгоритма 1), может быть получен согласно формуле (3).

Здесь Random() - функция, генерирующая случайные значения в интервале [0,1) с равномерным распределением.

Данный алгоритм имеет следующую геометрическую интерпретацию. Расположим на числовой прямой, начиная от точки 0, смежные отрезки S1, ..., Sn, причем длина i-го отрезка равна pi, i = 1, n . Длина

n

суммарного отрезка равна X Pj. Выберем случайную

j=1

точку r на суммарном отрезке. Определим, какому из отрезков Si, ..., Sn она принадлежит. Вероятность попадания r в отрезок Si пропорциональна pi. Дополним множество х соответствующим индексом. Повторяем, пока в х не наберется p индексов.

В следующей версии алгоритма снижается вероятность генерации решений с близкими друг к другу вершинами:

Алгоритм 4. Модифицированная процедура генерации члена популяции.

Дано: вектор вероятностей P = (p1, ..., pn), число вершин в решении p.

1. Присвоить х = 0 .

2. Пока | х |< p, цикл:

2.1. P* = P.

n

2.2. r = Random( p* ; S = 0.

j=1

2.3. Для каждого j e{1,n} цикл:

2.3.1. Присвоить S = S + p*.

2.3.2. Если S > r, тогда х = хu{j} ; j' = j; прервать цикл 2.3.

2.3.3. Конец цикла 2.3.

2.4. Для каждого j e {k e {1,n} | L (j',k) < L0} присвоить p* = p* • L (j,j') /L0; конец цикла 2.4.

2.5. Конец цикла 2.

3. Возврат х.

Алгоритм 4 дополнительно оперирует вторым временным вектором вероятностей P*, компоненты которого меняются по ходу генерации элементов множества х . Если на очередной итерации множество дополнено индексом j', то вероятности pj, соответствующие вершинам, лежащим от вершины vj' на расстоянии, не превышающем L0, уменьшаются, дабы избежать генерации близких друг к другу вершин в решении.

Шаг 5 алгоритма 1 (адаптация вектора вероятностей) на k-й итерации выполняется по формулам

pk,i = p(k-1), i • dk,i ; dki=dbi / dW ; Jb _ J1 + L0 / (1+ L(ib,i)), L(i, ib) < L0 I 1, L(i,ib) > L0;

Г1+ L0 / (1+ L(iW,i)), L(i,iw) <L0;

dw =

1,

L(i,iw) > L0.

b b . 6 X , I

Здесь I и Г - ближайшие к г-й вершине такие, что X , где х и х - те экземпляры сгенерированных алгоритмом 2 или алгоритмом 3 множеств индексов, входящих в решение вершин х, в которых целевая функция принимает лучшее (минимальное) и худшее (максимальное) значения.

Следует отметить, что дискретизированную задачу Вебера, описанную в [13], можно считать частным случаем рассматриваемой в настоящей работе задачи на сети, вследствие чего предлагаемые алгоритмы имеют некоторое сходство.

Результаты экспериментов. Сначала докажем экспериментом состоятельность предположения 2.

Алгоритм 5. Дано: граф О с п вершинами, количество вершин в решении р, предельное расстояние Ь0.

1. Присвоить N = 0, Ы>= 0.

2. Выбрать случайным образом р индексов вершин из п: т1, ..., тр е {1,п} .

3. Если не существуют е {1,р}:Ь (тпт. )<Ь0, то перейти к шагу 2.

4. Выбрать случайным образом к е{1,п}. Если Ь (к,т.) < Ь0, то повторить шаг 4.

5. Если /(т1, ..., mi, ..., т., ..., тр) > /(т1, ..., mi, ..., к, ..., тр), то N> = N + 1.

6. Присвоить N = N + 1; если N < 1 000, то перейти к шагу 2.

7. Останов, возврат Р> = N> /1000 .

Результаты работы алгоритма 5 для автоматически

сгенерированных задач (см. алгоритм 6) и для задач pmed22 и pmed39 из набора тестовых задач ОРЫБ [28] представлены на рис. 1. Оценка вероятности дана в процентах. Для задач pmed22 и pmed39, благодаря специфике их генерации [28], соотношение I / Ьшах

велико, и условие предположения 2 выполняется лишь при очень малых значениях Ь0 (много меньших, чем 4„г).

Для целей тестирования по основной теме статьи мы использовали автоматически сгенерированные тестовые задачи (см. алгоритм 6), схема одной из которых показана на рис. 2, а. Здесь длины ребер изображены в масштабе, диаметр вершин на изображении соответствует их весовому коэффициенту. На рис. 2 также изображено полученное нашим алгоритмом решение для р = 32. Здесь вершины, входящие в решение, обведены. Расстояние от каждой вершины до ближайшей вершины, входящей в решение, отмечено соответствующим цветом: вершины с меньшим расстоянием изображены темным цветом, с большим -светлым.

Алгоритм 6. Генератор тестовых задач.

Дано: п - число вершин.

1. Для каждого г е { 1,п } цикл: аг = Яапёот()-500;

Ьг = Капёот()-500, = 0,5 + Капйот()• 10; конец цикла.

2. Заполнить матрицу смежности А нулевыми значениями; множество ребер Е = 0.

3. Для г е {1,п } цикл:

3.1. Если г > 0,7п, тогда О^ = 1.

3.2. Иначе, если г > 0,3п, тогда Ог = 2.

3.3. Иначе Оi = 3 + [Лапй?от()-4].

3.4. Для

d б{ 1>Z A,, ,1

j=1

0 (I a - aj\+|b.- bj I ) ; A

цикл:

= 1; Ajj = 1;

j = argminНГп},a. ,=oV добавить к множеству E ребро (i,j); I. j = \й: - a\ + \b: - b\ ; конец цикла.

l,J I ' J I I ' J I

4. Останов, возврат результатов: матрица смежности A, множество ребер E, длины ребер li:j, где

(i, j) 6 E, весовые коэффициенты w,, где i 6 {1,n } .

В алгоритме 6 Random() - функция, генерирующая случайные значения в интервале [0,1) с равномерным распределением. На шаге 3.4 ведется поиск вершин, близких к i-й, которые соединяются с ней ребрами, вследствие чего lavg / Lmax мало (см. условие (5)).

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

Диаметр окрестности L0 - важный параметр, во многом определяющий эффективность работы алгоритма. При p = 12 сравнение результатов при различных значениях этого параметра показано на рис. 4.

Для построения графика зависимости достигнутого значения целевой функции от количества выполненных итераций к (см. шаг 6 алгоритма 1) в алгоритм добавлены специальные команды, записывающие значение целевой функции в массив. Для задачи, схема которой дана на рис. 2 (n = 500, p = 12), выполнялось по 10 запусков алгоритма с каждым из значений L0 6{1, 3, 10, 25, 50, 90, 120, 170, 250, 350, 500, 750}. На графике показаны усредненные значения для 10 запусков, достигнутые после каждой итерации. Линии L0 = 0 соответствует алгоритм, не учитывающий соседство вершин, в котором генерация поколений экземпляров векторов X осуществляется согласно алгоритму 3. Наилучшие результаты достигаются при L0 = 90. Оптимальное значение параметра L0 зависит от параметра p. Тем не менее при изменении параметра L0 в широком диапазоне (L0 = 10...350) для данной задачи алгоритм стабильно показывает лучшие результаты, чем «классический» алгоритм схемы МИВЕР с генерацией экземпляров вектора X согласно алгоритму 3.

Применимость алгоритма для задач большой размерности проверена на тестовом примере с n = 5 000 (рис. 5). Использовалась вычислительная система DEPO X8Sti (6-core CPU Xeon X5650 2.67 GHz, 12Gb RAM), HyperThreading отключен, компилятор ifort с опцией полной оптимизации (-О3).

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

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

предложенные Хакими [5], также имеют экспоненциальную асимптотическую сложность. Для р = 3 сравнение результата на сети с 170 вершинами, полученного нашим алгоритмом и алгоритмом случайного поиска без адаптации (хаотический поиск, при котором на каждой итерации случайным образом выбираются р вершин), с точным результатом, полученным полным перебором (горизонтальная асимптота), показано на рис. 6. Для построения графика к шагу 6 алгоритма 1 добавлены команды, которые через каждые 10 итераций фиксируют в специальном массиве достигнутое значение целевой функции и время с момента запуска алгоритма. Запуск алгоритма 1 и алгоритма хаотического поиска осуществлен по 10 раз, на рис. 6 показан усредненный (для 10 запусков) результат хаотического поиска и худший (из 10 запусков) результат нашего алгоритма на базе метода изменяющихся вероятностей. Следует отметить, что модифицированный алгоритм как улучшает усредненные результаты 10 запусков, так и несколько сужает разброс результатов. Так, анализ наихудших значений, полу-

Р>,

95 90 85 80 75 70 65 60 55

ченных алгоритмами после 10 запусков, дает картину, аналогичную на рис. 6. Вычислительная сложность полного перебора эквивалентна 402 220 итерациям алгоритма 1 (требуется 4 826 640 вычислений целевой функции, алгоритм генерирует на каждом шаге 12 экземпляров вектора X).

Скомбинируем предложенный алгоритм с процедурой локального поиска. Дополним алгоритм 2 шагом 0:

Шаг 0 алгоритма 2: запустить процедуру локального поиска из начального множества вершин с индексами ть ..., тр.

Мы будем использовать простейший [29] из множества методов локального поиска для данной задачи [30] - поиск в окрестности, состоящей из вершин, смежных с выбранными вершинами т1, ... , тр. Сравнение результатов полученного алгоритма с результатами многократного запуска процедуры локального поиска из случайно (хаотически) выбранных вершин для сгенерированной задачи большой размерности показано на рис. 7.

Рис. 1. Соотношение оценки вероятности выполнения условия предположения 2 и предельного расстояния Ь0 для сгенерированных задач и задач из библиотеки ОКЬЮ (pmed39 и pmed22). Указаны параметры задачи: п - число вершин сети, - среднее, Ьтах - максимальное расстояние между

вершинами в сети

Рис. 2. Схема сгенерированной задачи (п = 500) и ее решения (обведены окружностями): а - решение дляр = 32; б - решение дляр = 3

Рис. 3. Ход решения (изменение значений вероятностей) для р = 3, Ь0 = 100

0 50 100 150 200

Рис. 4. Сравнение результатов с различными значениями параметра Ь0, р = 12

Рис. 5. Усредненные результаты для 10 попыток запуска тестового примера с п = 5 000

Рис. 6. Схема задачи с оптимальным решением и сравнение результата алгоритма для р = 3 с результатом хаотического поиска и полного перебора

Рис. 7. Сравнение результатов комбинированного с локальным поиском алгоритма с результатами локального поиска из хаотически выбранных вершин. Сгенерированная задача, п = 7500, р = 10: 1 - комбинированный алгоритм, 2 - локальный поиск

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

Библиографические ссылки

1. Wesolowsky G. The Weber problem: History and perspectives // Location Science. 1993. Vol. 1. P. 53.

2. Drezner Z., Wesolowsky G. O. A Trajectory Method for the Optimization of the Multifacility Location Problem with lp Distances // Management Science. 1978. Vol. 24. P. 1507-1514.

3. Osinuga I. A., Bamigbola O. N. On the Minimum Norm Solution to Weber problem // SAMSA Conference Proceedings. Windhoek, 2007. P. 27-30.

4. Cooper L. An extension of the generalized Weber problem // Journal of Regional Science. 1968. Vol. 8, Iss. 2. P. 181-197.

5. Hakimi S. L. Optimum locations of switching centers and the absolute centers and medians of a graph // Operations Research. 1964. Iss. 12(3). P. 450-459.

6. Kariv O., Hakimi S. L. An algorithmic approach to network location problems. II. The p-medians // SIAM Journal on Applied Mathematics. 1979. Vol. 37(3). P. 539-560.

7. Avella P., Sassano A., Vasil'ev I. Computational Study of Large-Scale p-Median Problems // Mathematical Programming. 2007. Vol. 109(1). P. 89-114.

8. Masuyama, S., Ibaraki T., Hasegawa T. The Computational Complexity of the да-Center Problems on the Plane // The Transactions of the Institute of Electronics and Communication Engineers of Japan. 1981. Vol. 64E. P. 57-64.

9. Megiddo N., Supowit K. On the Complexity of Some Common Geometric Location Problems // SIAM Journal on Computing. 1984. No. 13. P. 182-196.

10. Забудский Г. Г., Нежинский И. В. Решение задачи размещения в евклидовом пространстве с запрещенной областью // Вестник Омского университета. 1999. № 2. С. 17-19.

11. Morris J. G. Convergence of the Weiszfeld Algorithm for Weber Problems Using a Generalized "Distance" Function // Operations Research. 1981. Vol. 29, No. 1. P. 37-48.

12. Wesolowsky G. O, Love R. F. A Nonlinear Approximation Method for Solving a Generalized Rectangular Distance Weber Problem // Management Science. 1972. Vol. 18, No. 11. P. 656-663.

13. Kazakovtsev L. A. Adaptation of the Probability Changing Method for Weber Problem with an Arbitrary Metric // Facta Universitatis series Mathematics and Informatics, University of Nis. 2012. Vol. 27, No. 2. P. 239-254.

14. Антамошкин А. Н., Казаковцев Л. А. Алгоритм случайного поиска для обобщенной задачи Вебера в дискретных координатах // Информатика и системы управления. 2013. Вып. 1. C. 87-98.

15. Single-facility Weber Location Problem Based on the Lift Metric / P. S. Stanimirovic [et al.] // Facta Universitatis series Mathematics and Informatics. 2012. Vol. 27, No. 2. P. 175-190.

16. Gugat M., Pfeiffer B. Weber problems with mixed distances and regional demand // Math. Meth. Oper. Res. 2007. Iss. 66. P. 419-449.

17. Bischoff M., Fleischmann T., Klamroth K. The Multi-Facility Location-Allocation Problem with Polyhedral Barriers // Computers and Operations Research. 2009. No. 36. P. 1376-1392.

18. Антамошкин А. Н., Сараев В. Н. Метод изменяющихся вероятностей // Проблемы случайного поиска. Рига : Зинатне. 1988. Вып. 11. С. 26-34.

19. A Comprehensive Study of Optimization Algorithm for Wireless Coverage in Indoor Area / A. W. Reza [et al.] // Optimization Letters. 2012. Doi 10.1007/s11590-012-0543-z. URL: http://link.springer.com/ article/10.1007 %2Fs11590-012-0543-z?LI=true (дата обращения: 10.05.2013).

20. Alp O., Erkut E., Drezner Z. An Efficient Genetic Algorithm for the p-Median Problem // Annals of Operations Research. 2003. Vol. 122, Iss. 1-4. P. 21-42.

21. Antamoshkin A., Saraev V On Definition of Informative Subsystem of Signs in the Pattern Recognition Problem // Computers and Artificial Intelligence. 1985. Vol. 4, Iss. 3. P. 245-252.

22. Antamoshkin A. Brainware for Searchal Pseudoboolean Optimization // Tr. оf Tenth Prague Conf. on Inf. Theory, Stat.Dec. Functions, Random Processes. Prague : Academia. 1987. Vol. 10A-B. P. 203-206.

23. Дегтерев А. С., Канашкин Ф. В., Сумароков А. Д. Обобщение генетических алгоритмов и алгоритмов схемы МИВЕР [Электронный ресурс] // Электронный журнал «Исследовано в России». 2004. Т. 7. С. 16581665. URL: http://zhurnal.ape.relarn.ru/articles/2004/ 153.pdf (дата обращения: 13.05.2013).

24. Казаковцев Л. А., Ступина А. А. Параллельная реализация метода изменяющихся вероятностей // Современные проблемы науки и образования. 2012. № 4. URL: www.science-education.ru/104-6810 (дата обращения: 31.10.2012).

25. Kazakovtsev L. A. Random Constrained Pseudo-Boolean Optimization Algorithm for Multiprocessor Systems and Clusters // ICUMT 2012, International

Congress on Ultra-Modern Telecommunications. IEEE Press. S-Petersburg, 2012. P. 650-656.

26. Казаковцев Л. А. Параллельный алгоритм случайного поиска с адаптацией для систем с распределенной памятью // Системы управления и информационные технологии. 2012. № 3 (49). С. 11-15.

27. Dijkstra E. W. A note on two problems in connexion with graphs // Numerische Mathematik. 1959. Vol. 1. P. 269-271.

28. Beasley J. E. OR-Library: distributing test problems by electronic mail // Journal of the Operational Research Society. 1990. Vol. 41, No. 11. P. 1069-1072.

29. Antamoshkin A. N., Kazakovtsev L. A. Random Search Algorithm for the p-Median Problem // Informatica (Ljubljana). 2013. Vol. 37(1). Рp. 267-278.

30. Scatter Search and Path Relinking: Fundamentals, Advances and Applications / M. G. C. Resende [et al.] // Handbook of Metaheuristics. 2nd ed. / M. Gendreau and Y. Potvin (editors). Springer, 2010. Pp. 87-107.

References

1. Wesolowsky G. The Weber problem: History and perspectives. Location Science. 1993, vol. 1, p. 53.

2. Drezner Z., Wesolowsky G. O. A Trajectory Method for the Optimization of the Multifacility Location Problem with lp Distances. Management Science. 1978, vol. 24, p. 1507-1514.

3. Osinuga I. A., Bamigbola O. N. On the Minimum Norm Solution to Weber problem. SAMSA Conference Proceedings. Windhoek, 2007, p. 27-30.

4. Cooper L. An extension of the generalized Weber problem. Journal of Regional Science. 1968, vol. 8, Iss. 2, p. 181-197.

5. Hakimi S. L. Optimum locations of switching centers and the absolute centers and medians of a graph. Operations Research. 1964, Iss. 12(3), p. 450-459.

6. Kariv O., Hakimi S. L. An algorithmic approach to the network location problems. II. The p-medians. SIAM Journal on Applied Mathematics. 1979, vol. 37(3), p. 539-560.

7. Avella P., Sassano A., Vasil'ev I. Computational Study of Large-Scale p-Median Problems. Mathematical Programming. 2007, vol. 109(1), p. 89-114.

8. Masuyama S., Ibaraki T., Hasegawa T. The Computational Complexity of the m-Center Problems on the Plane. The Transactions of the Institute of Electronics and Communication Engineers of Japan. 1981, vol. 64E, p. 57-64.

9. Megiddo N., Supowit K. On the Complexity of Some Common Geometric Location Problems. SIAM Journal on Computing. 1984, no. 13, p. 182-196.

10. Zabudsky G. G., Nezhinsky I. V. [Solution to the problem of accommodation in Euclidean space with a prohibited area]. Byuleten Omskogo universiteta. 1999, no. 2, p. 17-19 (In Russ.).

11. Morris J. G. Convergence of the Weiszfeld Algorithm for Weber Problems Using a Generalized "Distance" Function. Operations Research. 1981, vol. 29, no. 1, p. 37-48.

12. Wesolowsky G. O, Love R. F. A Nonlinear Approximation Method for Solving a Generalized

Rectangular Distance Weber Problem. Management Science. 1972, vol. 18, no. 11, p. 656-663.

13. Kazakovtsev L. A., Adaptation of the Probability Changing Method for Weber Problem with an Arbitrary Metric. Facta Universitatis series Mathematics and Informatics, University of Nis. 2012, vol. 27, no. 2, p. 239-254.

14. Antavoshkin A. N., Kazakovtsev L. A. [Random search algorithm for the generalized Weber problem in discrete coordinates]. Informatika i sistemy upravleniya. 2013, vol. 1, p. 87-98 (In Russ.).

15. Stanimirovic P. S., Ciric M., Kazakovtsev L. A., Osinuga I. A. Single-facility Weber Location Problem Based on the Lift Metric. Facta Universitatis series Mathematics and Informatics. 2012, vol. 27, no. 2, p. 175-190.

16. Gugat M., Pfeiffer B. Weber problems with mixed distances and regional demand. Math. Meth. Oper. Res. 2007, Iss. 66, p. 419-449.

17. Bischoff M., Fleischmann T., Klamroth K. The Multi-Facility Location-Allocation Problem with Polyhedral Barriers. Computers and Operations Research. 2009, no. 36, p. 1376-1392.

18. Antamoshkin A. N., Saraev V. N. [Probability changing method]. Problemy sluchainogo poiska. 1988, Iss. 11, p. 26-34 (In Russ.).

19. Reza A. W., Dimyati K., Noordin K. A., Kausar A. S. M. Z., Sarker Md. S. A Comprehensive Study of Optimization Algorithm for Wireless Coverage in Indoor Area. Optimization Letters. 2012. doi 10.1007/s11590-012-0543-z, Available at: http://link. springer.com/article/10.1007%2Fs11590-012-0543-z?LI=true (accessed 10.05.2013).

20. Alp O., Erkut E. and Drezner Z. An Efficient Genetic Algorithm for the p-Median Problem. Annals of Operations Research. 2003, vol. 122, Iss. 1-4, p. 21-42.

21. Antamoshkin A., Saraev V. On Definition of Informative Subsystem of Signs in the Pattern Recognition Problem. Computers and Artificial Intelligence. 1985, vol. 4, Iss. 3, p. 245-252.

22. Antamoshkin A. Brainware for Searchal Pseudoboolean Optimization. Tr. of Tenth Prague Conf.

on Inf. Theory, Stat.Dec. Functions, Random Processes. Prague: Academia. 1987, vol. 10A-B, p. 203-206.

23. Degterev A. S., Kanashkin F. V., Sumarokov A. D. [Generalization of genetic algorithms and algorithms of MIVER scheme]. Issledovano v Rossii. 2004, vol 7, p. 1658-1665. (In Russ.). Available at: http://zhurnal. ape.relarn.ru/articles/2004/153.pdf (accessed: 13.05.2013)

24. Kazakovtsev L. A., Stupina A. A. [Parallel implementation of the probability changing method]. Sovre-mennye problem nauki i obrazovaniya. 2012, no. 4 (In Russ.). Available at: www.science-education.ru/104-6810 (accessed: 31.10.2012).

25. Kazakovtsev L. A. Random Constrained Pseudo-Boolean Optimization Algorithm for Multiprocessor Systems and Clusters. ICUMT 2012, International Congress on Ultra-Modern Telecommunications. IEEE Press. S-Petersburg, 2012. P. 650-656.

26. Kazakovtsev L. A. [Parallel algorithm of random search with adaptation for systems with distributed memory]. Sistemy upravleniya i informatsionnye tekhnologii. 2012, no. 3(49), p. 11-15 (In Russ.).

27. Dijkstra E. W. A note on two problems in connexion with graphs. Numerische Mathematik. 1959, vol. 1, p. 269-271.

28. Beasley J. E. OR-Library: distributing test problems by electronic mail. Journal of the Operational Research Society. 1990, vol. 41, no. 11, p. 1069-1072.

29. Antamoshkin A. N., Kazakovtsev L. A. Random Search Algorithm for the p-Median Problem. Informatica (Ljubljana). 2013, vol. 37(1), p. 267-278.

30. Resende M. G C., Ribero C. C., Glover F., Marti R. Scatter Search and Path Relinking: Fundamentals, Advances and Applications. Handbook of Metaheuristics, 2nd edition, Gendreau M. and Potvin Y. (editors), Springer, 2010, p. 87-107.

© Антамошкин А. Н., Казаковцев Л. А., 2014

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