slide1
Download
Skip this Video
Download Presentation
Использование нейронной сети Хопфилда для решения оптимизационных задач маршрутизации

Loading in 2 Seconds...

play fullscreen
1 / 37

Использование нейронной сети Хопфилда для решения оптимизационных задач маршрутизации - PowerPoint PPT Presentation


  • 245 Views
  • Uploaded on

Использование нейронной сети Хопфилда для решения оптимизационных задач маршрутизации. Цель работы. ознакомление с проблемой использования искусственных нейронных сетей для решения оптимизационных задач; изучение алгоритма решения задачи коммивояжера с помощью нейронной сети Хопфилда ;

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Использование нейронной сети Хопфилда для решения оптимизационных задач маршрутизации' - riley-preston


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1

Использование нейронной сети Хопфилда для решения оптимизационных задач маршрутизации

slide2
Цельработы
  • ознакомление с проблемой использования искусственных нейронных сетей для решения оптимизационных задач;
  • изучение алгоритма решения задачи коммивояжера с помощью нейронной сети Хопфилда;
  • приобретение навыков в исследовании влияния параметров нейронной сети на качество решения задачи коммивояжера.
slide3
Общие сведения о сетях с обратными связями
  • Исследование принципов работы биологических нервных систем живых существ указывает на наличие множественных обратных связей (feedback), то есть связей идущих от выходов нервных сетей к их входам.
slide4
Общие сведения о сетях с обратными связями
  • Нейронные сети бывают:без обратных связейи собратными связями.

Скрытый

слой

Выходной

слой

Входной

слой

slide5
Общие сведения о сетях с обратными связями
  • Значения выходов в искусственных нейронных сетях с обратными связями, в отличие от элементарного персептрона, зависят от значений входов, которые, в свою очередь, зависят от значений выходов на предыдущей итерации.
  • Нейронная сеть, содержащая хотя бы одну обратную связь, называется рекуррентной (recurrent).
  • При этом возникает проблема устойчивости сети, которая может проявляться в смене состояний нейронов, не проводящей к стационарному состоянию сети (постоянным значениям выходов).
slide6
Общие сведения о сетях с обратными связями
  • В 1970-х годах наблюдался спад интереса к нейронным сетям, многие исследования были заброшены и поддерживались лишь немногочисленными учёными.
  • Однако к 1980-м годам интерес к этой

области снова возник, из-за появления

модели рекуррентной искусственной

нейронной сети, разработанной

Дж. Хопфилдом.

slide7
Общие сведения о сетях с обратными связями
  • Сеть Хопфилда состоит из единственного слоя нейронов {Ne i}, где i = 1,…,n, число которых n является одновременно числом входов и выходов сети.
slide8
Общие сведения о сетях с обратными связями
  • Каждый нейрон связан синапсами со всеми остальными нейронами, но нейрон не связывается с самим собой.
slide9
Общие сведения о сетях с обратными связями
  • На входы сети подается первичный сигнал.
  • Фактически его ввод осуществляется непосредственной установкой начальных значений выходов.
slide10
Общие сведения о сетях с обратными связями
  • Возможность использования нейронных сетей с обратной связью для решения задачи коммивояжера впервые была установлена Дж. Хопфилдом и Д. Танком в 1985 году.
  • Это достижение дает возможности широко использовать аппарат нейронных сетей для решения различных оптимизационных задач маршрутизации.
slide11
2. Математическая модель нейронной сети Хопфилда
  • Нейронная сеть Хопфилда представляет собой специальную двухслойную структуру, в которой нулевой слой не выполняет вычислительных функций, а лишь собирает выходы сети и направляет их обратно на входы.
  • Каждый j-й нейрон первого слоя вычисляет взвешенную сумму своих входов (с помощью весов wij, где , а также веса смещения w0j), давая сигнал NETj, который затем с помощью нелинейной функции активации F преобразуется в сигнал OUTj, где j=1,…,n.
slide12
2. Математическая модель нейронной сети Хопфилда
slide13
2. Математическая модель нейронной сети Хопфилда
  • В качестве функции активации F можно использовать пороговую функцию.
  • Если взвешенная сумма выходов с других нейронов больше порога Tj – выход j-го нейрона будет равен единице, в противном случае он равен нулю или остается без изменения, если сигнал NETj равен порогу Tj.
  • Таким образом, должны выполняться следующие условия:

OUTj= 1, если NETj>Тj

OUTj= 0, если NETj<Тj

OUTj не изменяется, если NETj = Тj

где

slide14
3. Устойчивость нейронных сетей с обратными связями
  • В теории нелинейных динамических систем под устойчивостью понимают устойчивость по Ляпунову.
  • В 1892 году русский математик Ляпунов А.М. разработал фундаментальныеконцепции теории устойчивости,известные как прямой методЛяпунова.
  • Непосредственное применениеэтого метода для решенияоптимизационных комбинаторныхзадач довольно затруднительнои сложно формализуемо.

Александр Михайлович Ляпунов

(25 мая 1857 — 3 ноября 1918) —русский математик и механик, академик Петербургской Академии наук.

slide15
3. Устойчивость нейронных сетей с обратными связями
  • Нейронная сеть Хопфилда является устойчивой, при выполнении следующих условий:

1)wij=wji – матрица связей между нейронами

является полной и симметричной;

2) wii=0 для всех i– отсутствие самовоздействия нейрона.

  • Условие симметричности сети (wij=wji) является достаточным, но не необходимым условием устойчивости системы.
slide16
3. Устойчивость нейронных сетей с обратными связями

Устойчивость сети может быть доказана следующим образом:

  • Допустим, что существует функция «энергии сети» E, убывающая при изменении состояния сети и достигающая минимума, гарантируя тем самым устойчивость сети. Такая функция, называемая функцией Ляпунова, для сетей с обратными связями может быть представлена следующим образом:
slide17
3. Устойчивость нейронных сетей с обратными связями
  • Изменение энергии E, вызванное изменением состояния нейронаOUTj, можно представить как:
  • В случае если величина NETj больше порога Tj, выражение в скобках будет положительным.
  • Из условия 1 (OUTj = 1, если NETj>Тj) следует, что OUTj≥ 0.
  • Следовательно E ≤0.
slide18
3. Устойчивость нейронных сетей с обратными связями
  • Допустим, что NETj < Tj.
  • Тогда изменение выхода j-го нейрона согласно условию 2 (OUTj = 0, если NETj<Тj): OUTj≤ 0 и энергия E должна уменьшиться или остаться без изменения.
  • Если взвешенная сумма входов с других нейронов равна порогу NETj=Tj, то в соответствии с (3): и энергия OUTj=0 остаётся без изменения.
slide19
3. Устойчивость нейронных сетей с обратными связями
  • Вывод:
  • любое изменение состояния нейрона либо уменьшит энергию, либо оставит её без изменения. Благодаря такому свойству к уменьшению, энергия, в конце концов, должна достигнуть минимума и прекратить изменения, гарантируя устойчивость сети.
  • Состояние, к которому со временем сходятся другие состояния из некоторой окрестности, называется аттрактором.
  • Условие симметричности сети (wij=wji) является достаточным, но не необходимым условием устойчивости системы.
slide20
3. Устойчивость нейронных сетей с обратными связями
  • Основная проблема, возникающей при использовании функции Ляпунова:

наличие в сети нескольких аттракторов и необходимость уклонения от локальных минимумов при нахождении глобального минимума функции.

  • Привлекательность подхода, предложенного Хопфилдом, состоит в том, что в нейронной сети не используются обучающие итерации, а синапсические веса вычисляются на основании вида функции энергии сети.
slide21
4. Решение задач комбинаторной оптимизации с использованием нейронной сети Хопфилда
  • В классической постановке задачу коммивояжера можно сформулировать следующим образом: для некоторой группы городов с заданными расстояниями между ними требуется найти кратчайший маршрут с посещением каждого города один раз и с возвращением в начальную точку маршрута.
  • Так как полный и направленный перебор практически неосуществимы для задачи коммивояжера большой размерности (так для 60 городов количество маршрутов составит приблизительно 1080), то для её решения используются различные приближенные методы для нахождения приемлемых, но не обязательно оптимальных решений.
slide22
4. Решение задач комбинаторной оптимизации с использованием нейронной сети Хопфилда
  • Оптимальный маршрут коммивояжёра через 15 крупнейших городов Германии.
  • Указанный маршрут является самым коротким из всех возможных

43 589 145 600.

slide23
4. Решение задач комбинаторной оптимизации с использованием нейронной сети Хопфилда
  • Рассмотрим нейросетевую постановку задачи коммивояжера, позволяющую значительно увеличить скорость её решения:

Пусть заданы неориентированный граф G(V,U) с множеством вершин V и множеством расстояний между вершинами U.

slide24
4. Решение задач комбинаторной оптимизации с использованием нейронной сети Хопфилда
  • Решением задачи будем считать упорядоченное множество вершин, которое необходимо посетить, а функцией решения является суммарная длина маршрута.
  • Для этого представим матрицу, размером V×V. Каждую вершину графа Gпредставим строкой из V нейронов, выход только одного из которых равен единице, а выходы остальных равны нулю. В таком случае порядковый номер единичного нейрона укажет на номер вершины при обходе.
slide25
Решение задач комбинаторной оптимизации с использованием нейронной сети Хопфилда
  • Решением задачи будем считать упорядоченное множество вершин, которое необходимо посетить, а функцией решения является суммарная длина маршрута.
  • Для этого представим матрицу, размером V×V. Каждую вершину графа Gпредставим строкой из V нейронов, выход только одного из которых равен единице, а выходы остальных равны нулю. В таком случае порядковый номер единичного нейрона укажет на номер вершины при обходе.
slide26
Решение задач комбинаторной оптимизации с использованием нейронной сети Хопфилда
  • Так как каждая вершина посещается только один раз, и в каждый момент посещается только одна вершина, то в каждой строке и каждом столбце окажется по одной единице.

Маршрут коммивояжера

slide27
Решение задач комбинаторной оптимизации с использованием нейронной сети Хопфилда
  • Построим энергетическую функцию нейронной сети Хопфилда для выбранной постановки задачи коммивояжера.
  • При кодировании нейронов будем использовать два индекса, которые соответствуют номеру вершины и порядковому номеру посещения этого пункта в маршруте.
  • Например, показывает, что пункт X был i-м в маршруте.
slide28
Решение задач комбинаторной оптимизации с использованием нейронной сети Хопфилда
  • Функция энергии должна удовлетворять двум требованиям:
  • должна быть малой только для тех решений, которые имеют по одной единице в каждой строке и в каждом столбце;
  • должна оказывать предпочтение решениям с короткой длиной маршрута.
slide29
Решение задач комбинаторной оптимизации с использованием нейронной сети Хопфилда
  • Первое требование удовлетворяется введением следующей, состоящей из трех сумм, функции энергии:

где,

А, В, С – некоторые константы

slide30
Решение задач комбинаторной оптимизации с использованием нейронной сети Хопфилда
  • Исходя из функции энергии, достигается выполнение следующих условий:
  • Первая тройная сумма равна нулю в том и только в том случае, если каждая строка содержит не более одной единицы.
  • Вторая тройная сумма равна нулю в том и только в том случае, если каждый столбец (порядковый номер посещения) содержит не более одной единицы.
  • Третья сумма равна нулю в том и только в том случае, если матрица содержит ровно V единиц.
slide31
Решение задач комбинаторной оптимизации с использованием нейронной сети Хопфилда
  • Второе требование – предпочтение коротким маршрутам – удовлетворяется с помощью добавления следующего члена к функции энергии:
  • При достаточно больших значениях A, B и C низкоэнергетические состояния будут представлять допустимые маршруты, а большие значения D гарантируют, что будет найден короткий маршрут.
slide32
Решение задач комбинаторной оптимизации с использованием нейронной сети Хопфилда
  • Затем, необходимо установить соответствие между членами функции энергии в общем виде

( )

и энергетической функцией задачи коммивояжера , то есть задать значения весов:

где: – символ Кронекера, принимающий значение 1, если i=j.

И значение 0 в противном случае.

slide33
Решение задач комбинаторной оптимизации с использованием нейронной сети Хопфилда
  • Символ Кронекера — индикатор равенства элементов, формально: функция двух целых переменных, которая равна 1, если они равны, и 0 в противном случае.
  • Например,  , но  .
slide34
Решение задач комбинаторной оптимизации с использованием нейронной сети Хопфилда
  • В качестве пороговой функции активации F нейрона удобно использовать функцию вида:

где,

  • u0– пороговое значение смещения сети;
  • tahn– гиперболическая тангенциальнаяфункция.
slide35
Решение задач комбинаторной оптимизации с использованием нейронной сети Хопфилда
  • Итог:
  • После того, как исходные веса сети определены и сеть построена, можно, стартовав со случайного начального состояния (задав возмущение путём первоначальной генерации синапсических весов), проследить её эволюцию к устойчивой конфигурации, которая и даст решение задачи. Для этого необходимо предоставить сети возможность уменьшать свою функцию энергии путём движения в пространстве состояний в нужном направлении.
  • Критерием останова для сети Хопфилда является итерация, на которой состояния нейронов не изменяются, а функция энергии достигнет минимума. В этом случае необходимо остановить вычисления, а полученные значения выходов нейронов взять в качестве искомого маршрута коммивояжера.
slide36
Программа решения задачи коммивояжера с использованием нейронной сети Хопфилда
  • Интерфейс программной реализации задачи коммивояжера с использованием нейронной сети Хопфилда обеспечивает:
  • возможность задания произвольной сети вершин и расстояний между ними;
  • возможность изменения исходных данных нейронной сети (параметров энергетической функции, начальных значений весов);
  • наглядность представления и доступность входных и выходных результатов работы нейронной сети Хопфилда;
  • возможность пошагового решения задачи коммивояжера и наглядное отображение пошагового решения.
slide37
Программа решения задачи коммивояжера с использованием нейронной сети Хопфилда

Интерфейс программы решения задачи коммивояжера с использованием нейронной сети Хопфилда.

ad