Научная статья на тему 'Комбинированный алгоритм упругой нейросети для решения задачи коммивояжера'

Комбинированный алгоритм упругой нейросети для решения задачи коммивояжера Текст научной статьи по специальности «Компьютерные и информационные науки»

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

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

ботку всех заданий в ^м процессоре за время I. Если 1-й элемент отказал, то ^-е задание с длиной I,, должно быть добавлено в формулы для вычисления всех Dj

(1Ф ]) следующим образом:

где ^ - размер очереди заданий для )-го процессора (количество байт),

V, - быстродействие]-го процессора (байт/с).

Процессор с минимальной нагрузкой можно определить по формуле

Ор = ттф},0!ь0^...дД_2,01ы_1). (2)

Процессор с параметром О™111 получит на выполнение {5-е задание. АК

распределит последующие задания /-го процессора (Ъ , ь , ц ,■■■, !к)> последовательно выполняя вычисления по формулам (1) и (2).

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

УДК 007.52

Ю.В. Чернухин, Д.В. Манаков

КОМБИНИРОВАННЫЙ АЛГОРИТМ УПРУГОЙ НЕЙРОСЕТИ ДЛЯ РЕШЕНИЯ ЗАДАЧИ КОММИВОЯЖЕРА

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

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

Задача коммивояжера принадлежит классу NP - полных задач, поскольку ее вычислительная сложность растет экспоненциально в функции от количества городов. Поэтому для решения ЗК, как правило, используются различные эвристики: моделирование отжига с его различными модификациями, алгоритмы, основанные на эволюционных принципах (генетические алгоритмы, эволюционное программирование и эволюционные стратегии), а также искусственные нейронные сети. Однако не все алгоритмы удовлетворяют двум основным критериям качества оптимизационных методов: скорости сходимости и близости получаемого решения к оптимальному.

Среди известных методов особого внимания заслуживают методы, основанные на использовании алгоритмов нейронных сетей с обратными связями, как наиболее перспективные. Один из них - алгоритм упругой нейросети (АУС), известный как Elastic Net Algorithm (ENA), был специально разработан для решения ЗК. АУС получен из гипотетической модели «tea trade model» для установления топографически упорядоченных, сохраняющих соседство проекций [1]. Функция энергии Е(х) в упругой сети равна

r/m 2гупт — 2

Е(х) = -у-Ё|х*+1-х;| -^Ё1п£ехр(-Нхр-х,| ), (1)

i=l P p=l j=l

где значение х; определяет координату i-й точки упругой сети, Хр представляет местоположение города р (сетевой аттрактор); п -число городов хр; m - количество точек х; в сети; al, а2, р - параметры, влияющие на качество решения.

Первое слагаемое выражения Е(х) определяет сумму квадратов расстояний между достигнутыми точками сети (которые, в достаточной степени, соответствуют длине пути объезда), а второе слагаемое определяет сравнение между местоположением каждого города и положением одной из точек упругой нейронной сети. На практике точки хр (города) расположены в масштабе в пределах единичной площади в соответствии с условием конкретной задачи, в то время как точки упругой сети х( равномерно распределены в середине этой площади. Взаимное расположение всех точек х* и хр определяет значение функции энергии (1). В процессе релаксации одна или несколько точек сети х, притягиваются соответствующим аттрактором хр (на практике m > п), при этом значение целевой функции (1) уменьшается с каждой итерацией. Обход ш точек упругой сети формирует вид упругого кольца, которое должно быть растянуто до всех п городов. Применение метода градиентного спуска к уравнению (1) дает, после шага дискретизации, правило корректировки

Ах;= а2(х;+1-2х;+хм) + <Х1Р£Лра)(хр-х^ At,

р

где временной шаг А1 = 1/р и соответствует текущей искусственной температуре Т, и параметр Лр(д) определяется соотношением:

АУС имеет важную особенность: число требуемых переменных х; линейно зависит от количества городов (сеть имеет двухразмерные точки), в то время как в модели нейронной сети Хопфилда это соотношение имеет квадратичную зависимость. Иными словами местоположение каждой точки х* (i = l,m) определяется двумя координатами Xj и Yi; каждая из которых изменяется согласно правилу корректировки (2).

Анализ моделирования показывает, что возможность получения недопустимого решения определяется тремя причинами:

• при достаточно большой удаленности точки упругой сети от соответствующего ей аттрактора последний не способен ее захватить;

• два соседних аттрактора получают одну и ту же точку упругой сети, как наиболее близкую;

• параметр Т понижается слишком быстро, при этом один или несколько аттракторов не успевают «захватить» соответствующие им точки сети.

Это является существенными недостатками алгоритма.

В связи с этим, в настоящей работе предлагается комбинированный алгоритм, суть которого заключается в объединении АУС и метода выпуклой комбинации (convex combination method) [2]. В этом случае, при инициализации, все точки упругой сети располагаются в центре единичной площади и каждой координате города р присваивается новое значение

где а - коэффициент адаптации.

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

Лр(0 =

к

(3)

х'р =а-хр +0.5-(1-а),

(4)

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

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

Кроме того, большое внимание необходимо уделять выбору оптимального подхода к уменьшению температуры Т (шага АО. Этот вопрос упоминается в литературе (см., например, [2]), и связывается с «оптимальным моделируемым отжигом». В работе [2] было показано, что скорость уменьшения температуры должна быть обратно пропорциональна логарифму времени решения задачи, чтобы была достигнута сходимость к глобальному минимуму. Основной эффект этого понижения температуры состоит в крупномасштабной, глобальной корректировке на раннем этапе. Далее имеют место меньшие уточнения, соответствующие все большей локальной адаптации упругой сети. Скорость охлаждения в такой системе выражается соотношением

Т(1) = Т0/1о8(1 + 0, (6)

где Т(0 - искусственная температура как функция времени; Т0 - начальная искусственная температура; и 1е(0,1,2,...). Выражение (6) предсказывает очень медленную скорость решения, что было подтверждено экспериментально.

Решения, которые были получены с помощью комбинированного алгоритма, являются оптимальными для небольшого количества городов (п < 10). В экспериментах использовались следующие значения параметров:

- ш = п; а! = 2.0;

<*2= 0.2;

- То =0.2; (1 = 0),

шаг Л1:, равный Т(0, уменьшается до конечного значения 0.01 - 0.02 согласно соотношению (6), при этом 1=1+1 каждые п итераций.

Для п > 10 комбинированный метод производит не всегда оптимальные решения (превышение оптимума равно примерно 5-10%). В частности, при математическом моделировании комбинированного АУС на ЭВМ (Репйит II 266МНг, 64МЬ ЯАМ, операционная система МгкЗошб Ш" 4.0) были получены следующие результаты.

При решении ЗК с 5 городами с помощью исходного АУС для достижения оптимального решения потребовалось 15 точек сети, в то время как при использовании комбинированного АУС необходимо 5-7 точек, при одном и том же шаге изменения температуры, что снижает время вычислений примерно на 30%.

При решении ЗК с 10 городами исходным АУС необходимо было более 30 точек сети и результат получался не всегда оптимальным. Возникали случаи захвата аттрактором двух несоседних точек. Вероятно, это было следствием несовершенных значений параметров в выражении (1), которые затруднительно подобрать. Однако модифицированный АУС выполнил данную задачу на 100%, используя при этом всего 10-15 точек. В обоих случаях результат решения проверялся с помощью алгоритма полного перебора. Экспериментальные исследования для большего количества городов подтверждают преимущества модифицированного АУС.

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

ЛИТЕРАТУРА

1. Van den Bout D.E. and Miller Т.К. 1988. A traveling salesman objective function that works.

Proceedings of the IEEE International Conference on Neural Networks.

2. Уоссермен Ф. Нейрокомпьютерная техника: Теория и практика М.: Мир, 1992. 240 с.

3. Чернухин Ю.В. Нейропроцессорные сети: Монография. Таганрог: Изд-во ТРТУ, 1999.

439с.

УДК 007.52

Ю.В. Чернухин, М.А. Беляев

ОБУЧЕНИЕ ИСКУССТВЕННЫХ НЕЙРОСЕТЕЙ ПЕРЦЕПТРОННОГО ТИПА ГЕНЕТИЧЕСКИМИ МЕТОДАМИ

Искусственные нейронные сети (ИНС) представляют собой приближенную модель естественной нервной системы. Они обладают способностью решать трудно формализуемые задачи, такие как кластеризация, распознавание образов, ассоциативная обработка информации и т.д. Наибольший интерес представляет способность ИНС к обучению, т.е. к автоматической настройке параметров сети в соответствии с решаемой задачей [1].

Одной из наиболее распространенных нейросетевых моделей является модель многослойного перцептрона. Нейроны такой сети работают по следующему принципу: значения, подающиеся на входы нейрона, умножаются на соответствующие входам синаптические веса и суммируются. Полученная сумма передается в качестве аргумента активационной функции (как правило, используется гиперболический тангенс или логистическая функция), и результат подается на выход нейрона. При соединении выходов одних нейронов с входами других получается сеть, состоящая из нескольких слоев, где число слоев определяется числом соединений между Нейронами [1]. i

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