НИИ системных исследований РАН, Москва Я.М. КАРАНДАШЕВ, Б.В. КРЫЖАНОВСКИЙ ПОВЫШЕНИЕ ЭФФЕКТИВНОСТИ АЛГОРИТМА

advertisement
ISBN 978-5-7262-1226-5. НЕЙРОИНФОРМАТИКА – 2010. Часть 2
Я.М. КАРАНДАШЕВ, Б.В. КРЫЖАНОВСКИЙ
НИИ системных исследований РАН, Москва
iont.niisi@gmail.com
ПОВЫШЕНИЕ ЭФФЕКТИВНОСТИ АЛГОРИТМА
КЕРНИГАНА-ЛИНА ПУТЁМ МОДИФИКАЦИИ
МАТРИЦЫ МЕЖСВЯЗЕЙ*
В работе предлагается улучшенный алгоритм Кернигана-Лина для задачи минимизации квадратичной формы в конфигурационном пространстве. Улучшение алгоритма происходит за счёт предложенного ранее авторами метода возведения матрицы функционала в степень. Этот метод
приводит к существенному увеличению вероятности отыскания глобального минимума функционала. Так, для размерности задачи 100 – увеличение эффективности в среднем в три раза, для размерности 200 – почти в
десять раз, а для размерности 500 – почти в двести раз.
Введение
Настоящая работа направлена на решение задач бинарной оптимизации. Это класс задач, решение которых сводится к минимизации квадратичного функционала E1 ( S ) , построенного на заданной матрице T , в N мерном конфигурационном пространстве состояний S  ( s1 , s2 ,..., sN ) с
дискретными переменными si  1 , i  1, N .
Предложено много эвристических методов решения этой задачи. Известно, что с ростом размерности задачи N экспоненциально увеличивается число локальных минимумов функционала, что приводит к неэффективности алгоритмов локального поиска со случайных стартов. Наиболее
эффективными оказываются гибридные методы, использующие эволюционные алгоритмы вкупе с локальным поиском [2].
Обычно эффективность процедуры локального поиска пытаются повысить, видоизменяя динамику спуска по поверхности [3, 4], описываемой функционалом E1 ( S ) . В отличие от такого подхода, в работе [1]
предлагалось изменять не динамику спуска по поверхности, а трансфор* Работа выполнена при финансовой поддержке Гранта Президента Российской Федерации по государственной поддержке ведущих научных школ, а также
Гранта РФФИ, проект № 09-07-00159-а.
УДК 004.032.26(06) Нейронные сети
188
ISBN 978-5-7262-1226-5. НЕЙРОИНФОРМАТИКА – 2010. Часть 2
мировать саму поверхность так, чтобы увеличился радиус области притяжения глобального минимума (равно как и других минимумов, сравнимых
с глобальным по глубине). Для осуществления такой модификации предлагалась трансформация функционала путем возведения матрицы T в
степень k ( k  2, 3,... ).
Там же было продемонстрировано, что этот подход весьма продуктивен. Его проверка проводилась на примере случайного нейросетевого поиска [5]. Для функционалов, построенных на матрицах двумерной модели
Изинга размерности N  100 , было достигнуто увеличение вероятности
обнаружения глобального минимума более чем на три порядка. Также
проводилась проверка на более эффективной динамике с «отскоками».
Для неё также наблюдалось значительное увеличение вероятности попадания в глобальный минимум (почти в сто раз) [1].
В настоящей работе мы дадим теоретическое обоснование этого подхода, а также продемонстрируем его эффективность при использовании
другого популярного алгоритма локального поиска, алгоритма КерниганаЛина для разбиения графа [3].
Постановка задачи
Стандартная постановка задачи бинарной минимизации такова: задана
N  N -матрица T , следует найти N -мерный конфигурационный вектор
Sm  (sm1 , sm 2 ,..., smN ) , smi  1 , i  1, N , доставляющий минимум функционалу энергии E1 ( S ) :
E1 ( S )  
1
T N 2
N
N
 T s s
i 1 j 1
ij i
j
,
(1)
где  T – стандартное отклонение матричных элементов Tij . Функционал
(1) симметризуется, поэтому без ограничения общности будем полагать
матрицу Tij симметричной, а диагональные элементы матрицы примем
равными нулю ( Tii  0 ).
Рассмотрим некоторую конфигурацию S . Будем называть конфигурацию S локальным минимумом функционала (1), если при перевороте любой координаты si этой конфигурации энергия функционала повышается.
Удобно ввести понятие локального поля, действующего на спин (переменную) si , по следующей формуле:
УДК 004.032.26(06) Нейронные сети
189
ISBN 978-5-7262-1226-5. НЕЙРОИНФОРМАТИКА – 2010. Часть 2
hi 
1
T N 2
N
 Tij s j .
(2)
j i
Тогда конфигурация S является локальным минимумом, если все её спины удовлетворены (стабильны), т.е. знак спина совпадает со знаком действующего на него локального поля ( hi si  0, i  1, N ).
Известно, что функционал (1) имеет большое количество локальных
минимумов. Их число экспоненциально растёт с ростом размерности задачи. Задачу нахождения глобального минимума функционала (1) относят
к классу NP-сложных.
Теоретическое обоснование метода
Строгое обоснование эффективности метода возведения матрицы
функционала в степень мы приведем только для «случайных» матриц,
элементы которых получены как случайные независимые переменные
(матрицы модели Изинга, матрицы с равномерным или нормальным распределение матричных элементов и т.д.). Применение алгоритма для другого типа матриц будет эвристическим.
Пусть S0  (s01 , s02 ,..., s0 N ) – конфигурация, соответствующая глобальному минимуму E0  E1 (S0 ) . Прежде чем перейти к вопросу о
трансформации поверхности, установим основные соотношения, связанные с глубиной глобального (локального) минимума, на которых будут
базироваться все последующие выводы.
Первое соотношение связано с ограничением на глубину минимума.
Вычленим из матрицы T слагаемое T0 , ответственное за образование
этого минимума. Для этого представим T в виде:
(3)
T  T0  T1 , T0  r0 T S0 S0 .
Статвес r0 найдем из условия отсутствия корреляции между элементами матриц T0 и T1 . Рассчитав ковариацию матричных элементов и положив ее равной нулю, получим выражение для r0 :
2
 N


s
,
(4)
r0  
  0 i   N  ,
2
1 
 i 1 

где T – среднее значение элементов матрицы T , а  – величина с нуле-
E0  T 

1
N2
вым средним и малым стандартным отклонением    2 / N . Для проУДК 004.032.26(06) Нейронные сети
190
ISBN 978-5-7262-1226-5. НЕЙРОИНФОРМАТИКА – 2010. Часть 2
стоты выражений положим T  0 и   0 (обобщение на иные случаи
очевидно). Тогда из (4) получим соотношение:
E0  r0 ,
(5)
устанавливающее связь между статвесом r0 и глубиной минимума E0 .
Дисперсии элементов матриц T0 и T1 имеют вид  02  r02 T2 и
 12   T2   02 , подтверждающий, что случайную матрицу T удалось
представить как сумму двух независимых случайных матриц T0 и T1 .
Кроме того, из (3)-(4) вытекает выражение S0 T1 S0  0 , показывающее,
что вклад в энергию E0 от T1 строго равен нулю, т.е. минимум в S0 обусловлен исключительно вкладом от T0 .
Следуя [6], продолжим разложение (3). Пусть конфигурация S1 является экстремумом квадратичного функционала на основе матрицы T1 .
Аналогично (3) представим T1 в виде T1  r1 T S1 S1  T2 , определяя статвес
r1 из условия нулевой ковариации элементов матриц S1 S1 и T2 . Повторяя
эту процедуру, мы получаем представление матрицы в виде взвешенного
разложения по внешним произведениям случайных векторов:
T   T  0 rm Sm Sm ,

r
2
m
 1 . Для такого типа матриц справедливы все
выводы, полученные в [7] на основании статфизического подхода. В частности, можно утверждать, что любой из векторов S m , присутствующий в
разложении матрицы T , будет минимумом функционала (1) в том и только том случае, если его статвес rm больше критического значения
rc 
1
2 c N
,
(6)
где  c  0.138 – параметр максимальной загрузки нейронной сети [7].
Это утверждение прежде всего относится к точке S0 , которая по определению является минимумом функционала (1), и для нее справедливы соотношения:
1  r0  rc , Ec  E0  1 , Ec  rc .
Ограничение на r0 сверху очевидно: при r0  1 имеем T  T0 , т.е. матрица T образована как внешнее произведение вектора S0 на себя, и функУДК 004.032.26(06) Нейронные сети
191
ISBN 978-5-7262-1226-5. НЕЙРОИНФОРМАТИКА – 2010. Часть 2
ционал E1 ( S ) имеет один единственный минимум в точке S0 . Этот предел ( r0  1 ) не представляет интереса, поскольку отыскание глобального
минимума не представляет труда. В подавляющем большинстве минимизационных приложений реализуется ситуация r0  rc и E0  Ec , когда вероятность отыскания глобального минимума чрезвычайно мала.
Второе необходимое соотношение связывает глубину минимума с его
шириной. Как показано в [8], с ростом глубины минимума E0 его ширина
возрастает. Соответственно, вероятность отыскания этого минимума возрастает как P( E0 ) ~ exp   NEc2 / E02  . Такую жесткую связь между глубиной минимума и вероятностью его отыскания несложно понять из следующих простых соображений. Вероятность отыскания глобального минимума в процессе случайного поиска есть не что иное, как отношение числа точек в пределах его области притяжения к общему числу точек в Nмерном пространстве. Можно показать, что форма энергетической поверхности вокруг минимума описывается выражениями:
( N  2n)2  N
,
E0 (n)  E0
N ( N  1)
 02 (n) 
8n( N  n)( A  B  C )
,
N ( N  1)( N  2)( N  3)
где E0 ( n) и  0 (n) – соответственно среднее значение и стандартное отклонение величины энергии в точках S0 (n) , отстоящих от S0 на расстоянии n (по Хэммингу) и введены обозначения:
N N
A  4(n  1)( N  n  1)  Tij2 ,
i 1 j i
N
B  2 ( N  2n) 2  N  2   hi2 ,


i 1
N ( N  2)  (2 N  3)( N  2n)2
.
N ( N  1)
В работе [9] даются упрощенные выражения, справедливые в асимптотике N   :
C  E02
E0 (n)  E0
( N  2n) 2  N
,
N ( N  1)
УДК 004.032.26(06) Нейронные сети
(7)
192
ISBN 978-5-7262-1226-5. НЕЙРОИНФОРМАТИКА – 2010. Часть 2
n 
n
1  .
3 
N  N
Как видно из (7), ширина минимума прямо пропорциональна его глубине
E0 , а дисперсия энергии в n-окрестности с ростом N стремится к нулю.
Это и означает, что число точек внутри области притяжения экспоненциально возрастает с ростом глубины минимума.
Все полученные выше выводы справедливы для любого экстремума
S m функционала E1 ( S ) : для минимумов справедливы ограничения
 02 (n)  16 1  E02 
1  rm  rc и Ec  Em  1 , ограничения для максимумов имеют вид
rc  rm  1 и Ec  Em  1 .
Как итог, мы установили следующие два соотношения: а) чем больше
статвес r0 примеси конфигурации S0 в исходной матрице T , тем глубже
минимум E0 и тем больше вероятность его отыскания; б) точка S0 может
быть минимумом только в случае r0  rc , т.е. глубина минимума всегда
больше критического значения Ec . Отсюда вытекает направленность
наших усилий по повышению эффективности алгоритма случайного поиска: трансформацию энергетической поверхности (1) необходимо произвести таким образом, чтобы увеличить глубину глобального минимума и,
тем самым, увеличить вероятность его отыскания.
Трансформировать описываемую квадратичной формой E1 ( S ) поверхность можно, только трансформируя матрицу, на которой она построена. Подставим в выражение (1) матрицу M  (1  z )T  zT k , где T k –
матрица, получаемая возведением матрицы T в степень k с последующим обнулением диагональных элементов. Изменяя параметр z от 0 до 1,
перейдем от матрицы T к матрице M  T k . Соответственно, поверхность, описываемая функционалом E1 ( S ) , трансформируется в поверхность, описываемую функционалом Ek (S ) :
N N
1
M ij si s j ,
(8)

 M N 2 i 1 j 1
где  M – стандартное отклонение элементов матрицы M . Очевидно, что
при трансформации поверхности глобальный минимум сдвигается в пространстве, одновременно изменяются его глубина и ширина области притяжения. Ниже мы покажем, что при небольших значениях k ( 2  k  5 )
Ek ( S )  
УДК 004.032.26(06) Нейронные сети
193
ISBN 978-5-7262-1226-5. НЕЙРОИНФОРМАТИКА – 2010. Часть 2
указанная трансформация приводит к значительному увеличению глубины минимума и относительно небольшому сдвигу.
А. Убедимся, что предложенная трансформация поверхности приводит
к углублению минимума на примере k  2 . Рассмотрим энергию
E20  E2 ( S0 ) в точке S0 . Следуя (3), матрицу M  T 2 представим в виде
M  T02  T12  (T0 T1  T1T0 ) . Тогда с учетом соотношений S0 T1 S0  0 и
 M  N T2 из (8) получим:
E20   N E02 
N
1
N 5 / 2 T2
N
 (T
i 1 j  i
2
1 ij
) s0i s0 j .
(9)
В пределе N  1 энергию E20 можно рассматривать как нормально распределенную величину со средним E 20   N E02 и относительно небольшим
стандартным
отклонением
 E  (1  r02 ) / N .
Поскольку
E 20 / E0  r0 N  1.33 , то следует ожидать, что в результате произведенной трансформации поверхности минимум углубится. Вероятность такого
события описывается выражением:
Pr E20  E0  
1
(1  erf  ) ,
2
E0  E20
r0 N (r0 N  1)
(10)
где

2 E

2(1  r02 )
.
Из соотношения r0  rc следует   0.3 N . Следовательно, с ростом
N величина Pr E20  E0  асимптотически стремится к единице. Иными
словами, трансформация поверхности с подавляющей вероятностью приводит к существенному углублению минимума ( E20 / E0  1.33 ), что в
соответствии с [8] ведет к экспоненциальному по N возрастанию вероятности отыскания глобального минимума.
Отметим, что E 20   N E02 , т.е. минимум функционала E2 (S ) , достигается как в конфигурации S0 , соответствующей минимуму ( E0  0 )
функционала E1 ( S ) , так и в конфигурации S 0' , соответствующей его максимуму ( E0  0 ).
Б. Оценим, насколько сдвинется минимум при трансформации поверхности. Среднюю величину сдвига можно представить в виде d  NP ,
УДК 004.032.26(06) Нейронные сети
194
ISBN 978-5-7262-1226-5. НЕЙРОИНФОРМАТИКА – 2010. Часть 2
где P  Pr{s0i hi( k )  0} – вероятность того, что направления спина s0i и
локального поля hi( k ) не совпадают. Из (8) для величины s0i hi( k ) получим:
si(0) hi( k ) 
R
1
N  T2
1
N3/ 2
  Nr 
j i
0
( Nr02  R ) ,
(11)
T  T12  s0i soj ,
T 1
ij
где R – нормально распределенная величина с нулевым средним и стандартным отклонением  R  1  r02 . С учетом (11) выразим P через
функцию ошибок и для величины сдвига получим:
d
N
(1  erf  ) ,  
2
Nr02
2(1  r02 )
.
(12)
Как видим, сдвиг минимума невелик: с учетом r0  rc из (12) следует
d  0.04 N .
Из выражений (10)-(12) можно сделать следующие выводы. Трансформация поверхности с подавляющей вероятностью приводит к углублению минимумов и, как следствие, к увеличению вероятности их отыскания. Причем, величина углубления E 20 / E0  r0 N тем больше, чем
больше изначальная их глубина E0  r0 . Иными словами, глубокие минимумы становятся еще более глубокими, и вероятность их отыскания
становится еще больше, а мелкие минимумы становятся еще мельче (или
вовсе исчезают) и вероятность их отыскания становится еще меньше. Это
означает, что спектр минимумов, находимых с помощью предлагаемого
алгоритма, существенно сдвинется в сторону глобального минимума, а
вероятность отыскания последнего существенно возрастет. Вызываемый
трансформацией сдвиг относительно невелик: из (12) следует, что
наименьшие сдвиги ожидаются для наиболее глубоких минимумов.
Динамика Кернигана-Лина
В работе [2] была предложена эффективная динамика локального поиска. Фактически эта динамика есть алгоритм Кернигана и Лина для разбиения графа [3], адаптированный под задачу минимизации бинарного
квадратичного функционала.
Для описания алгоритма нам понадобятся следующие определения.
Рассмотрим произвольную конфигурацию и выберем в ней один спин
УДК 004.032.26(06) Нейронные сети
195
ISBN 978-5-7262-1226-5. НЕЙРОИНФОРМАТИКА – 2010. Часть 2
(переменную) si . Выигрышем wi этого спина будем называть понижение
энергии конфигурации при перевороте si (выигрыш положительный, если
энергия понижается, и наоборот, отрицательный, если энергия конфигурации повышается при перевороте спина). Выигрыш wi связан с локальным полем hi простой формулой wi  4hi si .
Можно расширить понятие одного спина до понятия кластера. Кластер – это набор связанных (посредством матрицы межсвязей) спинов.
Аналогично можно расширить понятие выигрыша для кластера как взятое
с обратным знаком полное изменение энергии конфигурации при перевороте кластера. Соответственно, кластер тоже может быть стабильным или
нестабильным.
В динамике Кернигана-Лина количество спинов, которые образуют
кластер, не фиксируется наперёд заданным образом, а выбирается из расчёта наибольшего выигрыша на каждом шаге. Вкратце опишем этот алгоритм.
1. На первом этапе выбираем спин, из которого будет расти кластер.
Выбор производится среди сильно нестабильных спинов текущей конфигурации, либо, если таких нет, берётся произвольный спин. Виртуально
переворачиваем его и отмечаем, чтобы при дальнейшем процессе роста
кластера больше его не использовать. Обновляем значения выигрышей
для каждого спина полученной конфигурации.
2. Добавляем к кластеру спин с наибольшим выигрышем среди оставшихся, вне зависимости от того, положительный выигрыш или отрицательный. Этот спин тоже виртуально переворачиваем, отмечаем его, и
пересчитываем конфигурацию.
3. Повторяем шаг 2 до тех пор, пока не закончатся неиспользованные
спины, т.е. когда все спины окажутся в кластере.
4. Если наилучший кластер, встретившийся в процессе роста кластера,
имеет положительный выигрыш, переворачиваем его.
5. Возвращаемся к шагу 1 до тех пор, пока на шаге 4 не окажется, что
все кластеры имеют отрицательный выигрыш.
УДК 004.032.26(06) Нейронные сети
196
ISBN 978-5-7262-1226-5. НЕЙРОИНФОРМАТИКА – 2010. Часть 2
Локальный поиск и двухэтапный спуск
Процедура локального поиска понижает энергию начальной конфигурации, изменяя одну или несколько переменных (спинов) за один раз,
принимая при этом только улучшающие изменения.
Процедура поиска заключается в следующем. Произвольным образом
задается начальное состояние сети и затем в соответствии с динамикой
производится спуск в локальный минимум. Эта процедура повторяется
множество раз до тех пор, пока не будет найден минимум с приемлемой
глубиной. Мерилом эффективности процедуры случайного поиска служит
вероятность отыскания глобального минимума, скорость отыскания минимума заданной глубины, либо среднее значение глубины находимых
минимумов.
Предлагается следующий двухэтапный алгоритм минимизации. На
первом этапе осуществляется спуск по поверхности Ek (S ) и находится
конфигурация S m( k ) , доставляющая минимум функционалу Ek (S ) . На втором этапе проводится коррекция: из точки S m( k ) по поверхности E1 ( S )
спускаемся в ближайший минимум S m функционала E1 ( S ) .
Окончательно сформулируем предлагаемый нами алгоритм минимизации. Подготовительная фаза состоит в следующем: исходная матрица T
симметризуется (если она изначально не симметрична) и диагональные
матричные элементы обнуляются; матрица возводится в k-ю степень и в
полученной матрице M  T k обнуляются диагональные элементы; на основе матрицы M в соответствии с (8) строится функционал Ek (S ) .
После подготовки можно приступать к процедуре случайного поиска
на основе алгоритма двухэтапного спуска, состоящего в следующем: на
первом этапе из начальной конфигурации осуществляется спуск по поверхности Ek (S ) в локальный минимум S m( k ) функционала Ek (S ) ; на втором этапе проводится коррекция – из точки S m( k ) по поверхности E1 ( S )
спускаемся в локальный минимум S m функционала E1 ( S ) , который как
правило находится недалеко от точки S m( k ) .
Алгоритм тестировался на матрицах двумерной модели Изинга [10]
размерности N  100, 200, 500 . Данный тип матриц выбран по двум причинам. Во-первых, процедура случайного нейросетевого поиска для данного типа матриц малоэффективна – при N  100 вероятность отыскания
глобального минимума меньше 2*106 . Во-вторых, для Изинговых матУДК 004.032.26(06) Нейронные сети
197
ISBN 978-5-7262-1226-5. НЕЙРОИНФОРМАТИКА – 2010. Часть 2
риц методом ветвей и границ [10] можно найти глобальный минимум S0 ,
что позволяет контролировать эффективность процесса.
Полученные результаты
Проверка эффективности алгоритма двухэтапного спуска с динамикой
Кернигана-Лина проводилась при значениях k  2  6 . Результаты численных экспериментов сведены в табл. 1. В первой колонке содержатся
данные для приведенного в [2] стандартного алгоритма Кернигана-Лина,
описывающего спуск по поверхности E1 ( S ) , в последующих колонках –
данные для двухэтапного алгоритма, основанного на спуске по поверхности Ek (S ) при k  2, 3 .
Таблица 1
Результаты для алгоритма Кернигана-Лина при использовании метода
возведения матрицы в степень и без использования
( E0  E) / E0
T2
T3
1.4%
2.8%
6.0%
5.0%
8.2%
16.2%
4.7%
4.0%
2.6%
2.2*10-4
4.3*10-4
0.23%
0.54%
2.08%
( E0  E) / E0
5.9%
4.8%
3.4%
-
-
-
1.4*10-7
5.8*10-7
2.4*10-5
7.5%
6.1%
4.5%
вероятность попадания в
глобальный минимум
вероятность попадания в
интервал (-1;-0,99)
( E0  E) / E0
УДК 004.032.26(06) Нейронные сети
N=484
5*10-5
N=196
вероятность попадания в
глобальный минимум
вероятность попадания в
интервал (-1;-0,99)
N=100
вероятность попадания в
глобальный минимум
вероятность попадания в
интервал (-1;-0,99)
Исходный алгоритм
Кернигана-Лина
198
ISBN 978-5-7262-1226-5. НЕЙРОИНФОРМАТИКА – 2010. Часть 2
Выделены три характеристики для оценки эффективности алгоритмов:
вероятность попадания в глобальный минимум в первой строке; во второй
строке – вероятность попадания в близкий к глобальному минимуму интервал энергий Em  [1,  0.99] (энергия глобального минимума считается равной -1); в третьей строке приведена относительная разность между
средним значением энергии находимых минимумов E m и энергией глобального минимума E0 . Результаты для k  4, 5 (в таблице не приведены)
мало отличаются от результаP( E )
KL3
тов для k  2, 3 соответствен0.20
a) N  100
0.18
но. При k  5 результаты ху0.16
0.14
же, поэтому дальнейший рост
KL2
0.12
0.10
показателя матрицы k не це0.08
KL
0.06
лесообразен.
0.04
0.02
На рис. 1 приведена плот0.00
E
-1.05
-1
-0.95
-0.9
-0.85
-0.8
ность вероятности P( E ) , доP( E )
0.30
стигаемая разными алгоритKL3
б ) N  196
0.25
мами, где величина P( E )dE –
KL2
0.20
вероятность отыскания мини0.15
KL
мума функционала E1 ( S ) в
интервале энергии [ E, E  dE] .
Как видим, с ростом параметра
k
трансформации
спектр
находимых минимумов сильно
смещается в сторону глобального минимума.
Наличие оптимума при
k  3 объясняется разными
причинами. Главная состоит в
следующем. При возведении
матрицы в квадрат минимум в
точке S0 становится глубже.
Однако он уже не является
глобальным для функционала
E2 (S ) , поскольку образуются
новые еще более глубокие минимумы – так называемые хи-
0.10
0.05
0.00
-1.05
-1
-0.95
-0.9
-0.85
-0.8
E
KL3
P( E )
0.35
в) N  484
KL2
0.30
0.25
0.20
KL
0.15
0.10
0.05
0.00
-1.05
-1.00
-0.95
-0.90
-0.85
-0.80
E
Рис. 1. Плотность вероятности нахождения
минимумов для трёх алгоритмов: исходного алгоритма Кернигана-Лина (KL) и с
использованием возведения матрицы во
вторую (KL2) и третью (KL3) степени.
Рисунки а)-в) отличаются размерностями
задач (N = 100,196,484)
УДК 004.032.26(06) Нейронные сети
199
ISBN 978-5-7262-1226-5. НЕЙРОИНФОРМАТИКА – 2010. Часть 2
меры [9]. При последующем возведении матрицы в степень эти химеры
станут еще более глубокими, и вероятность попадания в них станет значительно больше, чем в конфигурацию S0 . Более того, на каком-то этапе
минимум в точке S0 станет относительно мелким и либо вовсе исчезнет,
либо вероятность его отыскания станет чрезвычайно мала.
Заключение
Сравнение показывает, что трансформация поверхности приводит к
существенному повышению эффективности оптимизационного алгоритма. В частности, при использовании динамики Кернигана-Лина при спуске по поверхности E3 ( S ) имеем:
 вероятность попадания в глобальный минимум увеличилась более
чем в три раза на размерности N  100 и почти в десять раз на размерности N  196 ;
 разница между средней энергией E m и энергией глобального минимума сократилась в полтора раза;
 вероятность попадания в близкий к глобальному минимуму интервал энергий Em  [1,  0.99] на размерности N  484 возросла в 200 раз.
Как видим, эффективность от применения нашего метода возведения
матрицы в степень тем больше, чем больше размерность задачи N . Вместе с тем вероятность отыскания глобального минимума с ростом N экспоненциально падает. Поэтому, даже предложенное нами улучшение алгоритма не гарантирует отыскание глобального минимума при больших
N . Так, уже для размерности N  484 за миллион стартов ни разу не
удалось попасть в глобальный минимум ни с помощью исходного алгоритма Кернигана-Лина, ни с помощью улучшенного алгоритма. С другой
стороны, с помощью улучшенного алгоритма всегда достигается значительное понижение средней энергии находимых минимумов.
Список литературы
1. Карандашев Я.М., Крыжановский Б.В. О трансформации энергетической поверхности в задаче бинарной оптимизации // ДАН. 2009. Т. 429.
№ 4.
2. Houdayer J., Martin O.C. Hierarchical approach for computing spin
glass ground states // Phys. Review E. 2001. V. 64. 056704.
УДК 004.032.26(06) Нейронные сети
200
ISBN 978-5-7262-1226-5. НЕЙРОИНФОРМАТИКА – 2010. Часть 2
3. Kernighan B.W., Lin S. An Efficient Heuristic Procedure for Partitioning Graphs // Bell System Tech. Journal. 1970. V. 49. P. 291-307.
4. Dang C., Ma W., Liang J. A deterministic annealing algorithm for approximating a solution of the min-bisection problem // Neural Networks. 2009.
V. 22(1). P. 58-66.
5. Hopfield J.J. Neural networks and physical systems with emergent collective computational abilities // Proc. National Acad. of Sciences USA. 1982.
V. 79. P. 2554-2558.
6. Kryzhanovsky B.V. Expansion of a matrix in terms of external products
of configuration vectors // Optical Memory & Neural Nets, 2007, v. 16(4).
P.187-199.
7. Amit D.J., Gutfreund H., Sompolinsky H. Spin-glass models of neural
networks // Phys. Rev. A., 1985. 32. P. 1007–1018.
8. Крыжановский Б.В., Магомедов Б.М. и др. Взаимосвязь глубины
локального минимума и вероятности его обнаружения в обобщённой модели Хопфилда // ДАН, 2005. Т. 405. № 3. С. 320-324.
9. Kryzhanovsky B.V., Kryzhanovsky V.M. The shape of a local minimum
and the probability of its detection in random search // LNEE 2009. Vol. 24. Р.
51-61.
10. New Optimization Algorithms in Physics / ed. by Hartmann A.K., Rieger H. Weinheim: WILEY-WCH Verlag GmbH & Co. KGaA, 2004. – 300 p.
УДК 004.032.26(06) Нейронные сети
201
Download