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

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

CC BY
833
127
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
НЕЙРОННЫЕ СЕТИ / ГРАФИК ДВИЖЕНИЯ ПОЕЗДОВ

Аннотация научной статьи по строительству и архитектуре, автор научной работы — Игнатенков Александр Владимирович, Ольшанский Алексей Михайлович

Рассмотрены вопросы построения искусственной нейронной сети для формирования расписания процессов. Описаны архитектура сети, методика расчёта выхода сети и обучение сети.

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

Похожие темы научных работ по строительству и архитектуре , автор научной работы — Игнатенков Александр Владимирович, Ольшанский Алексей Михайлович

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

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

Игнатенков А.В.1, Ольшанский А.М.2

гФГБОУ ВПО «Самарский государственный университет путей сообщения», аспирант кафедры

«Автоматика, телемеханика и связь на железнодорожном транспорте»; ООО «Научно-технологический центр по эксплуатации железных дорог», Москва, заместитель генерального директора по информационным технологиям, a.ignatenkov @gmail . com

2ФГБОУ ВПО «Самарский государственный университет путей сообщения», докторант кафедры

«Автоматика, телемеханика и связь на железнодорожном транспорте»; ООО «Научно-технологический центр по эксплуатации железных дорог», Москва, кандидат технических наук, заместитель генерального директора по науке, lexolshans@gmail . com

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

КЛЮЧЕВЫЕ СЛОВА

Нейронные сети, график движения поездов. АННОТАЦИЯ

Рассмотрены вопросы построения искусственной нейронной сети для формирования расписания процессов. Описаны архитектура сети, методика расчёта выхода сети и обучение сети.

В настоящее время теория расписаний как часть более общей отрасли математики под названием «исследование операций» очень популярна как с практической, так и с теоретической точки зрения. Подобные задачи в общем виде являются NP-сложными, на практике они решаются с помощью одного из многочисленных методов либо их комбинаций [5]. Каждая из постановок задач характеризуется набором ограничений, а процесс составления расписаний сводится к поиску наиболее удовлетворяющего им решения. Часто этот поиск минимизирует некоторую целевую функцию, составленную из комбинаций различных условий. Таким образом, каждое решение задачи теории расписания подходит к конкретному классу требований.

Целью данного доклада является реализация нейросетевого подхода к одному из классов задачи теории расписаний. Данный подход обусловлен такими свойствами нейронных сетей, как способность к самообучению и возможностью работы с малоформализованными данными [4]. Выбор такой области построения расписания, как график движения поездов, обусловлен

значимостью данной сущности для эффективного функционирования железных дорог [2].

График движения поездов является отображением зависимости t=f(s), где t - время движения поезда, s - координаты поезда на сети железных дорог. Пример графика приведён на рисунке 1.

Объектом исследования будет нейронная сеть, построенная следующим образом [1]. Каждый слой нейронной сети соответствует выбранной железнодорожной станции. В слое представлены нейроны, каждый из которых имеет номер от 0 до 1439. Из каждого нейрона ьго слоя идут связи к каждому нейрону соседнего слоя (всего 1440 связей). Кроме того, каждый нейрон связан с несколькими нейронами слева (т.е. с нейронами с меньшим номером) и справа (с нейронами с большим номером).

Фрагмент сети приведён на рисунке 2.

00 И

Внутренние связи

1439

\\\ ч Слой 1 {Станция 1)

Обратная связь

Связи между слоями

1439

0 0 \

Минимальное время хода СЛОЙ 2 (Станция 2)

Рис. 2. Фрагмент искусственной нейронной сети

Каждая матрица весов № между двумя слоями с номерами i, i-1 представляет собой квадратную матрицу с количеством строк и столбцов, равным 1440.

w

0,1

w

0,1339

\

w

1339,0

w

1339,1339

где - значение веса на связи, соединяющей нейрон с номером i одного слоя с нейроном с номером j соседнего слоя.

Каждая строка представляет собой веса нейрона с фиксированным индексом. Номер столбца - номер нейрона предыдущего слоя, который связан с нейроном данного слоя.

Рассмотрим задание весов связей для прокладки нечётных поездов. Нейрон с номером j связан со всеми нейронами соседнего слоя. Учитывая, что при движении поезда между двумя станциями должно соблюдаться некоторое минимальное время хода ^ от нейрона с номером 0 до нейрона с номером j+t все веса являются нулевыми. Все прочие (веса связей нейрона с номером i с нейронами последующего слоя с номерами от j+t до 1439) являются равномерно распределёнными случайными числами от 0 до 0,1.

0

w

0,2

w

0,3

w

0,1438

w

0,1439

0 0 0

0 w1

1439,1439

Сигнал, характеризующий конкретный поезд, выходит со слоя нейронной сети (из данной станции) из некоторого нейрона (в некоторую минуту) и попадает на предыдущий слой. Передача сигнала по слоям.

Прямой проход работы сети выполняется следующим образом.

• На последний (первый) слой подаётся вектор X — {x0,x1 ,...,x1439} , который представляет собой последовательность нулей и единиц. Единица означает, что соответствующая минута связана с прохождением поезда. Эти же числа переходят с последнего (первого) слоя как выходные значения.

• Под X1 будем понимать вектор значений нейронов со слоя с номером l .

• Для всех значений, выходящих со слоёв с номерами П,П — 1,... 1 выполняется:

V kе (0,1 ,.1439)еслиХ[]>0, то3 jе (0,1,... 1439): wk j — max{wkm},X'-1—0 , тогда

устанавливаем X1- 1 — f (Xk,wk -) .

где

wkm - вес на связи между нейронами слоев k и m, k - номер нейрона текущего слоя, j - номер слоя, смежного с рассматриваемым,

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

0, еслих — 0,

Функция активации

f (x,w)

1 (1)

-,e^ux>0' LJ

1 , -x*w

1+e

где

f (X ) - значение функции активации, w - нейрон с максимальным весом, победивший в конкуренции нейронов, X - вход, подаваемый на нейрон-победитель. • Выходом сети Yпримем вектор значений нулевого слоя X□ .

Существует желаемый выход сети Yц, который представляет собой последовательность нулей и единиц, смысл которой идентичен смыслу входного вектора X .

Введём понятие «номер поезда», который обозначим как г . Мы говорим, что поезд проходит по станции с номером 11 в минуту к 1 и по станции с номером 12 в минуту к2 , если

выполняется равенство: г (Xк) = г (Хк) V Г V I 3 !к: Г (Х'к) = Г , т.е. все поезда проходят по

каждой станции ровно в одной точке-минуте. По номерам поездов производится отслеживание прохождения поездов по всем станциям.

Обучение сети производится согласно следующему алгоритму. Вычисление ошибки: ошибка сети вычисляется по формуле:

Е=^(кц-ку )2 + С , (2)

где

Ь - число поездов, которые требуется проложить в графике движения.

Г (Yk) = Г (Yку) - номер поезда, для всех поездов, дошедших до нулевого слоя, С - функция штрафа для недошедших поездов.

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

Физический смысл обучения заключается в следующем: когда происходит уменьшение весов связей «слева» от связи с максимальным весом, тем самым уменьшается шанс пройти по уменьшенным связям сигналу нейрона при следующей попытке. «Справа» от этой связи, наоборот, производится увеличение значений весов.

Изменение весов производится пропорционально разнице между максимальным весом и весом текущей связи. После каждой эпохи (после нового вычисления значений сети) скорость

п

обучения п увеличивается на значение, равное — , т.е.

п(е )=п,

е-1

е

(3)

где е - номер эпохи.

Особенности построенной сети

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

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

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

Проверка сети

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

Границы исследования: скорость обучения менялась от 0,0005 до 0,0999 с шагом 0,0001, желаемая точность менялась от 5 до 100 с шагом 5. После 5000 эпох обучение прекращалось.

После всех проведённых экспериментов были выбраны те результаты, в ходе получения которых обучение прекратилось до 5000 эпох более чем в половине случаев для заданной скорости обучения и заданной точности.

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

Резул ьтат работы прототипа И НС

ЯЗ IX мз

ЗГТ ЯЗ эк

Рис. 3. Пример построения ГДП

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

п

е

Зависимость ошибки сети и количества эпох от скорости обучения

¿500

¿030

1500

1000

..................................................мммммимиимимммиммммммим

1 Е 9 13 17 21 25 29В37 4145ад5Э57е1©Ю7Э77а185Ю®}97Ш1

Рис. 4. Зависимость функции ошибки сети от различных факторов при использовании различных

выборок

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

Было проведено 9898 прогонов сети. По результатам полученных результатов динамика сети характеризуется следующими данными (рис.4).

Общий вид функции ошибки сети представлен на рис.5.

ЗМ График поверхности (дельта-скорость-ошибка-эпохи 4у*&ё&Вс) ошибка = Расстояние взвешенных наименьших КЕадратоЕ

Ш-

Рис. 5. Трехмерный вид функции ошибок

Таким образом, в представленном докладе авторами предлагается специализированная нейронная сеть, которая совмещает в себе признаки сети Хопфилда (преимущественно в части топологии), признаки многослойных персептронов (алгоритм обратного распространения

ошибки), а также специфические черты поведения.

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

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

Литература

1. Игнатенков А.В., Ольшанский А.М. О построении квазихопфилдовской искусственной нейронной сети для решения задач упорядочения процессов// В кн.: Перспективные информационные технологии (ПИТ-2015), том 2: труды Международной научно-технической конференции / под ред.С.А.Прохорова. - Самара, Издательство Самарского научного центра РАН, 2015. - 388 с., с.74-78 - ISBN 978-5-93424-735-7.

2. Бородин А.Ф., Шаров В.А. Интегрированная технология управления движением поездов по расписанию.//Железнодорожный транспорт. - №8. - 2011. - с.5-11.

3. Кормен Т., Лейзерсон Ч., Ривест Р., Штайн К. Алгоритмы. Построение и анализ. Издание второе. - Пер. с англ. - М., издательский дом «Вильямс», 2013. - 1296 с., ил. - ISBN 978-5-8459-0857-5 (rus).

4. Лазарев А.А., Гафаров Е.Р., Теория расписаний. Задачи и алгоритмы. Учебное пособие, Москва, 2012, с. 16.

5. Назаров А.В, Лоскутов А.И. Нейросетевые алгоритмы прогнозирования и оптимизации систем - Спб.: Наука и Техника, 2003. С. 228. ISBN 5-94387-076-8.

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