19. Likhadanov V.M. O stabilizatsii potentsial'nykh sistem [On stabilization of potential systems], PMM [Journal of Applied Mathematics and Mechanics], 1975, Vol. 39, pp. 53-58.
20. Zakovorotnyy V.L., Bordachev E.V., Alekseychik M.I. Dinamicheskiy monitoring sostoyaniya protsessa rezaniya [Dynamic condition monitoring of the cutting process], STIN [Machines and Tools], 1998, No. 12, pp. 6-12.
21. Zakovorotnyy V.L., Ladnik I.V. Postroenie informatsionnoy modeli dinamicheskoy sistemy metallorezhushchego stanka dlya diagnostiki protsessa obrabotki [The building information model of the dynamic system of the cutting machine for the diagnosis of the treatment process], Problemy mashinostroeniya i nadezhnosti mashin [Journal of Machinery Manufacture and Reliability], 1991, No. 4, pp. 75-79.
22. Zakovorotnyy V.L., Bordachev E.V. Informatsionnoe obespechenie sistemy dinamicheskoy diagnostiki iznosa rezhushchego instrumenta na primere tokarnoy obrabotki [Information support system of dynamic diagnostics of wear of the cutting tool on the example of turning], Problemy mashinostroeniya i nadezhnosti mashin [Journal of Machinery Manufacture and Reliability], 1995, No. 3, pp. 95-101.
Статью рекомендовал к опубликованию д.т.н., профессор В.В. Шаповалов.
Заковоротный Вилор Лаврентьевич - Донской государственный технический университет; e-mail: [email protected]; 344010, г. Ростов-на-Дону, пл. Гагарина, 1; тел.: 88632738510; кафедра автоматизации технологических процессов; д.т.н.; профессор.
Лукьянов Александр Дмитриевич - e-mail: [email protected]; тел.: +79085069508; кафедра автоматизации технологических процессов; зав. кафедрой; к.т.н.; доцент.
Zakovorotny Vilor Lavrent'evich - Don State Technical University; e-mail: [email protected]; 1, Gagarin sq. Rostov-on-Don, 344000, Russia; phone: +78632738510; the department of production processes automation; dr. of eng. sc.; professor.
Lukjanov Alexandr Dmitrievich - e-mail: [email protected]; phone: +79085069508; the department of production processes automation; head of the department; cand. of eng. sc.; associate professor.
УДК 519.178
А.Н. Шабельников
ВЕРОЯТНОСТНЫЕ АЛГОРИТМЫ РЕШЕНИЯ ЗАДАЧ ДИСПЕТЧЕРИЗАЦИИ НА СОРТИРОВОЧНЫХ СТАНЦИЯХ И ГОРКАХ
Рассматривается класс задач диспетчеризации, касающихся определения оптимальной очередности обслуживания транспортных единиц и порядка их передвижений на примере задач формирования-расформирования железнодорожных составов на сортировочных станциях. Приводятся формализованные постановки нескольких вариантов данных задач. С математической точки зрения задачи диспетчеризации, связанные с определением оптимальных расписаний, маршрутов и порядка движения транспортных единиц, относятся к классу пр-полныгх задач, для решения которых хорошо зарекомендовали себя метаэвристические алгоритмы, основанные на идеях направленного случайного поиска и позволяющие находить оптимальные или близкие к ним решения пр-сложных задач за приемлемое время. В настоящей работе дается краткий анализ метаэвристических алгоритмов, используемых для решения задач диспетчеризации на железнодорожном транспорте, и на примере задач управления порядком роспуска составов на сортировочной горке рассматривается новый алгоритм диспетчеризации на основе случайного поиска с запретами. Рассматривается общий метаэвристический подход к их решению. На основе данного подхода предлагается новый вероятностный алгоритм локального поиска с запретами. Алгоритм осуществляет локальный поиск в пространстве возможных решений с использованием процедур интенсификации и диверсификации поиска, основанных на адаптивном изменении параметра рандомизации окрестности. Приводятся результаты численных экспериментов, показывающих эффективность алгоритма. На основе численных экспериментов быгли найдены оптимальные значения параметров алгоритма: параметр рандомизации и длина списка запретов. На известных тестовых примерах для частных случаев задачи
алгоритм в 93 % находил наилучшие решения задачи. На остальных примерах максимальна погрешность алгоритма не превысила 5 %, что подтверждает эффективность алгоритма для решения ряда частных задач диспетчеризации.
Диспетчеризация; метаэвристический алгоритм; генетический алгоритм; вероятностный поиск; локальный поиск с запретами; локальная окрестность решения.
A.N. Shabelnikov
PROBABILISTIC ALGORITHMS FOR SCHEDULING IN RAIL SORTING STATIONS AND HUMP YARDS
The class of scheduling problems relating to the definition of optimal scheduling of transport units and the order of their movement as an example ofproblems offormation, dissolution of trains in marshalling yards. We give formal setting of several variants of these tasks. From a mathematical point of view, the task scheduling related to the definition of optimal schedules, routes and order of traffic units classified as np-complete problems, for which well established metaheuristic algorithms based on ideas directed random search and allows to find optimal or close to These solutions np-complex tasks in a reasonable time. This paper presents a briefanalysis ofmetaheuristic algorithms for solving problems of scheduling in rail transport, and the example of management tasks in the order of dissolution of the compositions hump is considered a new scheduling algorithm based on random search with restrictions. The article discusses the general metaheuristic approach to solving them. On the basis of this approach, we propose a new probabilistic local search algorithm with restrictions. The algorithm carries out a local search in the space ofpossible solutions using the procedures of intensification and diversification of the search based on an adaptive randomization parameter changing neighborhood. Results ofnumer-ical experiments showing the effectiveness of the algorithm. On the basis of numerical experiments we have found the optimal parameters of the algorithm: parameter randomization and the length of the list of prohibitions. At a certain test cases for particular cases of the problem in 93 % of the algorithm to find the best solution. For example, the maximum error of the rest of the algorithm does not exceed 5 %, which confirms the efficiency of the algorithm for solving a number ofparticular problems scheduling.
Dispatching; metaheuristic algorithm; genetic algorithm; probabilistic search; local search with restrictions; local neighborhood of decision.
Введение. Одной из проблем, с которой приходится сталкиваться специалистам при разработке автоматизированных систем управления на железнодорожного транспорта, является особый класс задач диспетчеризации, связанных с определением оптимальной очередности работ по обслуживанию транспортных единиц и порядка их передвижений по отдельным участкам железнодорожной сети или станции [1, 2], Решение этих задач усложняется в условиях повышенной интенсивности перевозочного процесса в режиме реального и жесткого реального времени, например, при оперативном управлении процессами расформирования-формирования составов на сортировочных станциях и горках. К таким задачам, в частности, относятся [3]: управление порядком роспуска составов на сортировочной горке, определение очередности осаживания вагонов на путях сортировочного парка, планирование очередности выставки составов из сортировочного в отправочный парк, управления маршрутами локомотивов при нормализации процесса роспуска, определение очередности погрузки вагонов для ускоренного накопления составов на «нитки» плана отправления и др.
С математической точки зрения задачи диспетчеризации, связанные с определением оптимальных расписаний, маршрутов и порядка движения транспортных единиц, относятся к классу np-полных задач, для решения которых хорошо зарекомендовали себя метаэвристические алгоритмы, основанные на идеях направленного случайного поиска и позволяющие находить оптимальные или близкие к ним решения np-сложных задач за приемлемое время [4, 5]. В настоящей работе дается краткий анализ метаэвристических алгоритмов, используемых для решения задач диспетчеризации на железнодорожном транспорте, и на примере задач управления порядком роспуска составов на сортировочной горке рассматривается новый алгоритм диспетчеризации на основе случайного поиска с запретами.
1. Постановка задачи. Одним из важных критериев работы сортировочной станции является время нахождения вагона на станции, которое должно быть как можно меньше, чтобы ускорить процесс доставки грузов по назначению. Анализ технологии работы сортировочной станции выявил основные факторы, влияющие на время нахождения вагона на сортировочной станции, среди которых наиболее значимым является время ожидания «нужных» вагонов в парке отправления [6]. Для его сокращения необходимо обеспечить разборку железнодорожных составов таким образом, чтобы как можно более быстро шло высвобождение вагонов из-под накопления в парке приема и их отправка в парке отправления. С этой целью очередность расформирования-формирования составов на сортировочной станции должна быть такой, чтобы вагоны, высвобожденные из-под накопления, как можно быстрее были сформированы в готовые к отправке поезда и привязаны к графику движения грузовых составов.
В настоящее время маневровый диспетчер самостоятельно принимает решение о порядке формирования-расформирования поездов на сортировочной станции, опираясь на общую картину полигона и свой опыт работы. Поэтому автоматизация решения данной задачи является существенным резервом повышения эффективности работы сортировочной станции и экономической эффективности всего перевозочного процесса в целом.
Задача о порядке роспуска составов на сортировочной станции в наиболее общем виде формализуется следующим образом.
На сортировочной станции и в подходе к ней имеется N поездов, идущих в расформирование по М направлениям. При этом задан ряд начальных условий и ограничений, описывающих исходный порядок расположения поездов на путях подхода к станции и в парке приема, количество путей в парке формирования и их специализация по направлениям, технические характеристики вагонов, максимальное количество вагонов в сформированном составе, ориентировочное время роспуска состава и др.. Требуется определить такой порядок расформирования поездов, чтобы он был согласован с исходным порядком расположения поездов, соблюдены начальные условия и ограничения, и работа сортировочной станции была оптимальной в смысле некоторого заданного критерия. В зависимости от типа критерия и ограничений существуют различные варианты постановок данной задачи. Рассмотрим три основных варианта.
Вариант 1. Условиями задачи являются заданные характеристики вагонов и специализация путей, ограничениями - количества вагонов в полностью сформированных составах и общее время расформирования, критерием - количество полностью сформированных составов за заданное время.
Введем обозначения для постоянных и переменных параметров данной задачи. Постоянными параметрами являются: - параметр, принимающий два значения 1, если 1-й вагон в '-м составе направляется на к-й путь формирования и 0 в противном случае; С^ - количество вагонов в поезде, формируемом для к-го направления (на к-ом пути); ^ ■ - количество вагонов в'-ом составе; Т ■ - прогнозируемое время роспуска '-го состава; Т - ограничение на время формирования составов; X^ р - булева переменная, принимающая два значения: 1 если '-й состав расформировывается в очередности р (р-ым в очереди) и 0 в противном случае; Ш -количество составов, расформированных в анализируемый промежуток времени Т.
Логическими ограничениями в задаче являются:
N
^ X - = 1 - условие, означающее, что в очередности р может быть расфор-
з=1
мирован только один состав;
м
У ztjk = 1 - условие, означающее, что i-й вагон в j-ом составе может быть
k=1
направлен только на один путь.
С учетом введенных обозначений можно формализовать следующие условия задачи:
ш N
У У Xj -т. - время расформирования первых Ш составов;
p=i j=i
ш N Cj
У У У ztjk - xjp - количество вагонов, находящихся на k-ом пути после
p=i j=i ¿=i расформирования первых Ш составов.
Учитывая ограничение ск на число вагонов в поезде, сформированного для
k-го направления, условие готовности находящегося на пути k поезда к отправке может быть записано
ш N Cj
У У У Zijk ' Xjp = Ck ,
p=i j=i i=i
или, используя дельта-функцию 8 (),
ш N Cj
8(£ У У Zijk ■ Xjp - Ck)=i. (1)
p=i j=i i=i
С учетом (1) количество полностью сформированных поездов, готовых к отправке после расформирования первых Ш составов, определяется следующим выражением, являющимся критерием задачи:
M ш N Cj
J=У8(У У Уz.jk ■ xjp-ск) •
k=i p=i j=i i=i
Формальная постановка задачи определения оптимальной очередности роспуска состава в рассматриваемом варианте имеет вид:
м ш N Cj
У 8(УУ УУ - j - Ck) ^ max (6)
k =i p=i j=i i=i ш N
У У Xjp -т < Т (2)
p=i j=i
N
Ij=i
(3)
Е Ъг = 1 (4)
к=1
х]р £ {0,1} ш£{1,2,...,Щ. (5)
Задача заключается в определении значений х. £ {0,1} и ш £ {1,2,...,Щ}, удовлетворяющих условиям (2)-(5) и доставляющих максимум критерию (6).
Вариант 2. Условиями задачи являются заданные параметры вагонов и специализация путей, ограничениями - количество вагонов в полностью сформированном составе, Дополнительные условия описываются вектором числовых параметров 0 ., характеризующих величину штрафа за каждую единицу времени нахождения состава j-го направления в формировании на станции. Критерием является величина суммарного штрафа по всем составам. Предполагается, что полностью сформированный состав без задержки подается на отправку, то есть штраф накладывается лишь на время формирования состава в заданном направлении.
К ранее введенным обозначениям добавим вектор целочисленных параметров W = («2,...,«м), для формализации фактов готовности составов к отправке по каждому направлению. Для k-го пути условие готовности поезда к отправке определяется выражением
ш* N Cj
Ё Ё Ёz.Jk ■ xJP > c*, (7)
p=i j=i i=i
где <ок - число составов, требуемых для формирования поезда по k-му направлению.
На основании выражения (7) с учетом специфики критерия однозначно определяется параметр <ак из условия
z N Cj
= min{z e N | Ё Ё Ёz'jk • XjP > c*} • (8)
P=1 j=1 i=1
Время формирования поезда АТк на пути k определяется суммарным временем расформирования первых < составов, и равно
ш* N
ЛТк =Ё Ё XjpTj • (9)
P=1 j=i
Величина штрафа за простой поезда, находящегося в формировании на k-ом пути, равна
rn* N
J* = Мк -0* =Ё Ё xJP*j ©* • (10)
p=i j=i
Суммарный штраф за простой поездов, находящихся в формировании по всем направлениям, равен
M шк N
J = Л-ЛТк =Ё Ё Ё x^j©*• (11)
k=1 P=1 j=1
Выражение (11) является критерием в рассматриваемой постановке задачи.
Таким образом, задача определения оптимальной очередности формирования составов в рассматриваемом варианте заключается в минимизации критерия (11) с учетом условия (8) и ограничений (3)-(5).
Вариант 3. Задача заключается в определении оптимального порядка расформирования множества V из N составов, часть V из которых находится на подходе к станции, а часть V - на самой станции. Критерием является общее количество сформированных поездов за заданный промежуток времени. Данная задача включает помимо ранее приведенных дополнительное условие, связанное с ограничением на порядок формирования составов, а именно, составы из множества V должны расформировываться раньше, чем составы из множества V •
Для формализации ограничений на порядок подачи составов к роспуску введем в рассмотрение темпоральное отношение следования b, являющееся одним из базовых отношений темпоральной логики Аллена [9]. Тогда дополнительным условием задачи является:
Ууг eVi ,vj gV2 vjbvi . (12)
С учетом ограничения (12) формализованная постановка задачи имеет вид:
ш м N Cj
8(Ц У -ск) ^ max (13)
p=i k=i j=i i=i
XJP = 1 (14)
N
I
J=1
CJ
I = 1 (15)
i=1
Vvt eVj, Vj &V2 Vj bv2. (16)
2. Метаэвристический подход к решению задач диспетчеризации. Метаэв-ристические алгоритмы (МА) по своему назначению относятся к классу комбинаторных методов оптимизации. Анализ последних исследований показывает, что использование алгоритмов комбинаторной оптимизации (КО) позволяет решать многие практические задачи, включая задачи теории расписаний и диспетчеризации, поскольку может адекватно отражать нелинейные зависимости, дискретность объектов, ограничения логического типа и всевозможные технологические требования.
Согласно [10], задачей комбинаторной оптимизации (КО) 3 =< S, f > называется задача оптимизации, в которой задано конечное множество объектов S и целевая функция f: S ^ R+, назначающая положительное значение стоимости для каждого из объектов. Цель состоит в том, чтобы найти объект с минимальным значением стоимости. Выше рассмотренные и многие другие задачи диспетчеризации относятся к задачам КО.
Как правило, задачи КО являются NP-полными и в связи с их практической значимостью чрезвычайно актуальна разработка и исследование приближенных, в том числе метаэвристических алгоритмов для решения задач КО.
Главная особенность МА состоит в их способности решать сложные задачи без анализа всего поискового пространства. Это достигается путем реализации управляемого случайного поиска не по всему поисковому пространству, а лишь по его части, пока не будет выполнено условие окончания поиска.
Общие схемы решения задач КО, называемые метаэвристиками, были разработаны Гловером [7]. Метаэвристики объединяют основные эвристические методы в рамках алгоритмических схем более высокого уровня, направленных на эффективное использование пространства поиска. Основная проблема состоит в адаптации общих метаэвристических схем решения к конкретным задачам.
Класс МА включает в себя алгоритмы локального поиска [20], оптимизации муравьиной колонии [18, 19] (ant colony optimization (ACO)), эволюционные вычисления (ЭВ) и генетические алгоритмы (ГА) [13], метод имитации отжига [17] и алгоритм табу-поиска [19] (или поиска с запретами). В настоящее время существует достаточно обширная библиография по классификаций МА (см. напр. [11, 12]), Наибольшее распространение получили ГА и ЭВ [13].
В [7, 14] сформулированы некоторые фундаментальные свойства МА:
♦ метаэвристики - это стратегии, которые управляют процессом поиска решения;
♦ цель метаэвристики - эффективное исследование пространства поиска для нахождения квазиоптимальных решений;
♦ МА являются приближенными и, как правило, недетерминированными алгоритмами;
♦ МА могут включать механизмы избегания попадания в "ловушку" в ограниченной области пространства поиска;
♦ метаэвристики не всегда предназначены для решения конкретных задач и могут быть представлены на абстрактном уровне;
♦ метаэвристики используют предметно-ориентированные знания в виде эвристик, которые находятся под контролем стратегии верхнего уровня.
Каждый МА имеет свои особенности, зависящие от предметной области, однако все они обладают рядом неизменных базовых компонент, которые можно представить на абстрактном уровне в виде обобщенной схемы МА. Обобщенная схема МА приведена ниже [14].
1. Инициализация. Поиск начального решения R.
2. Формирование одной или нескольких локальных окрестностей начального решения Ех (R ),E2 (R ),...,EN (R ) .
3. Выбор наиболее перспективной окрестности Е. (R).
4. Отбор кандидата x £ Ej (R ) в выбранной окрестности с использованием
функции оценивания F(x, y), зависящей от таких параметров двух решений, как значение целевой функции, штрафы за нарушение некоторых ограничений и т.п. Результатом выбора является наилучшее решение по отношению к данному критерию y = arg opt {F(x, y) | y £ Ej (R )}.
5. Останов согласно одному из критериев, которым может быть время вычислений, число итераций или темпы улучшения решений.
Практически важным частным случаем МА является метаэвристика вероятностного локального поиска, обобщенная схема которой приведена ниже.
1. Определить исходное решение x0 £ Е, xopr = x0, k=0, (E - поисковое
пространство).
2. k = k + 1.
3. Найти xk = argmin{F(x) | x £ E(xk_1)}.
4. Если F(xk ) > xqpj, , то СТОП.
5. Иначе xOFT = xk , Go to 2.
Следует отметить, что метаэвристика вероятностного локального поиска лежит в основе большинства используемых на практике МА.
3. Алгоритм диспетчеризации на основе локального поиска с запретами. Разработанный алгоритм для поиска оптимальной очередности расформирования составов основан на принципах управляемого случайного поиска с запретами (ТАБУ-поиск) [8]. В основу разработанного алгоритма положена идея использования в ходе поиска совмещенного механизма интенсификации и диверсификации процесса поиска, предложенная в метаэвристике Iterated Local Search (ILS) [16] и получившая дальнейшее развитие в методе, разработанным в [15]. Особенностью метода ILS является то, что подобно ГА, для поиска он использует популяцию решений, но в отличие от ГА снабжен специальными механизмами, ответственными за интенсификацию (проведение поиска в перспективных областях пространства решений) и диверсификацию (избегание зацикливания поиска в локаль-
ных экстремумах) поиска. Проведенные исследования, основанные на примерах решения тестовых задач показали, что ILS способен находить решения более высокого качества по сравнению с обычными ГА или ЭВ.
Ключевым элементом любого метода локального поиска является локальная окрестность решения. От способа выбора окрестности существенно зависит трудоемкость одного шага алгоритма, общее число шагов и, в конечном счете, точность получаемого решения. Понятие окрестности относительное, в данном случае к решению. Для рассматриваемой задачи определения оптимальной очередности решение представляется матрицей бинарных значений X . Единичное значение
X:, указывает на то, что в рассматриваемом решении i-й состав имеет j-й порядковый номер. Для реализации алгоритма представляется более удобным задавать решение не в виде матрицы, а вектором перестановки R = , i2,..., iN ), составленным из номеров поездов, взятых в порядке очередности их расформирования. Элемент i. G R является порядковым номером j-го состава, согласно очередности, задаваемой вектором R .
Окрестности решений строятся с помощью операций над решениями. На множестве решений введем элементарную операцию ПЕРЕСТАНОВКИ, в результате которой меняются местами два элемента в векторе-решении R .
Определение 1. Два решения называются соседними, если одно из них получено из другого с помощью операции ПЕРЕСТАНОВКИ.
Определение 2. Локальной окрестностью решения R называется множество
решений E(R ) , являющихся соседними для R.
Несложно заметить, что для любых двух решений R и R . одно из них мо' J
жет быть получено из другого путем применения к нему конечного числа операций ПЕРЕСТАНОВКИ.
Определение 3. Расстоянием между двумя решениями R и R называется
' J
минимальное число S (R, R ) перестановок, необходимых для преобразования решения R в R или наоборот.
Утверждение 1. Для любых трех решений R, R, R G E имеют место следующие соотношения:
S (R, Rj ) = S (Rj , R ),
S (Ri, Rj ) < S (R., R ) + S (Rk, Rj ).
Данное утверждение позволяет использовать введенное определением 3 расстояние в качестве метрики в пространстве перестановок E. Имеет место следующее важное утверждение.
Утверждение. Для любых двух решений R и R , описывающих перестанов. J
ки из N номеров, имеет место
S (Ri, Rj ) < N.
Данное утверждение означает, что для любых двух решений число перестановок, требуемых для перевода одного в другое не превышает длины вектора решений. Отсюда вытекает важный факт, что пространство вех решений можно
обойти, начиная с любого решения с использованием операции ПЕРЕСТАНОВКИ, перемещаясь между соседними решениями. При этом оптимальное решение можно найти не более, чем за N шагов.
Для решения R введем в рассмотрение рандомизированную окрестность
Ep (R ) с E(R) , в которой каждый элемент окрестности E(R) включается в множество E (R ) с некоторой вероятностью P (0 < P < 1) независимо от других элементов. Заметим, что чем больше значение вероятности P, тем большую часть от E(R ) составляет Ep (R ) .
Разработанный алгоритм осуществляет вероятностный локальный поиск по рандомизированной окрестности, не останавливаясь в локальных экстремумах, как в традиционном методе локального спуска, а перемещаясь от одного локального оптимума к другому с целью нахождения среди них лучшего решения. Основным механизмом, позволяющим алгоритму покидать локальные оптимумы, является использование списка запретов TAB. Он формируется из решений, полученных на нескольких последних итерациях поиска, и запрещает участвовать в дальнейшем поиске оптимального решения часть окрестности E(R) текущего решения. На каждом шаге алгоритма очередное решение R выбирается как оптимальное в рандомизированной окрестности E (R ) , не включенное в список запретов TAB, т.е.
R = min{F (x) | x £ E(R ) \ TAB, (17)
где F () - функционал, выступающий в качестве критерия, которым для рассматриваемой задачи является выражение (11).
В ходе поиска окрестность текущего решения R ограничивается только теми, которые не входят в текущий список запретов TAB(R ). На каждой итерации
среди них выбирается лучшее решение в качестве нового текущего решения. Оно добавляется в список запретов TAB. Если длина списка запретов становится больше заданной, из него удаляется элемент, добавленный раньше всех.
Важными параметрами алгоритма являются количество шагов алгоритма, реализуемых в одной итерации поиска. На основании Утверждения 2 значение данного параметра можно выбирать равным N.
Общая схема алгоритма приведена ниже.
1. Выбрать начальное решение R .
2. Положить TAB = 0, г = R, f = F(R), P = (P^ + PnHt)/2.
3. Повторять, пока не выполнен критерий остановки.
3. Положить Q = 0.
3.1. Выполнить цикл по k ровно N раз.
3.1.1. Сформировать окрестность Ep (R ).
3.1.2. Найти R = min{F(x)| x £ EP )\TAB}.
3.1.3. Если F(Rk) < f, ТО г = R,f = F(R), Q = 1,
3.1.4. Обновить список запретов TAB := TAB ^R.
3.1.5. Если | TAB |>E, ТО TAB := TAB \ .
3.2. Если Q:=1, ТО P := P + AP, ИНАЧЕ P := P -AP.
13. Если P > Pmax ТО P = Pmax .
14. Если P < Pmin ТО P := Pmin .
4. В^1дать результат r и f.
Параметрами алгоритма являются: верхняя Р^ и нижняя Р^п границы параметра рандомизации, АР - шаг изменения параметра рандомизации, L - длина списка запретов.
Особенностью алгоритма является адаптация параметра рандомизации P в процессе поиска. В процессе поиска параметр рандомизации P меняется в пределах от Р^п до Ртх на величину АР в зависимости от того, насколько успешным
является результат поиска на текущей итерации. Если в процессе поиска удается найти решение лучшее, чем ранее найденное, то на последующей итерации параметр рандомизации увеличивается. В результате увеличивается доля просматриваемой окрестности и алгоритм начинает интенсификацию поиска в окрестности найденного лучшего решения. Если же на текущей итерации решение не улучшилось, то параметр рандомизации уменьшается. В результате уменьшается часть просматриваемой окрестности, и алгоритм переходит к стадии диверсификации, пытаясь выйти на новую область пространства решений. Если в процессе диверсификации на текущей итерации удается улучшить решение, то на последующей итерации алгоритм вновь переходит к стадии интенсификации поиска в окрестности лучшего решения. На каждом шаге алгоритма осуществляется корректировка списка запретов TAB путем включения в него текущего решения R и исключения наиболее раннее найденного R_£ • Критерием остановки алгоритма служит
либо время работы, либо число итераций, на протяжении которых алгоритму не удаётся улучшить значение целевой функции, либо общее число итераций.
4. Экспериментальная часть. Разработанный алгоритм был реализован на языке Си ++ и проходил тестирование на компьютере с процессором Pentium 2 GHz, Тестирование осуществлялось на множестве случайно сгенерированных примеров задачи определения оптимальной очередности расформирования составов, представленной вариантом 2. Каждый пример включал 30 подлежащих расформированию составов, для которых требовалось определить оптимальную очередность роспуска на сортировочной горке по 8 направлениям. Параметры подлежащих расформированию и вновь сформированных составов, а также ограничения на количество вагонов в составе, время роспуска и штрафы за задержку составов на станции генерировались случайным образом на основе нормальных законов распределения. Целью экспериментов являлась оценка влияния параметров рандомизации P и длины списка запретов L на эффективность алгоритма, а также оценка эффективности алгоритма при лучших найденных параметрах. Поэтому серия проводимых экспериментов состояла из двух частей: оценка параметров и оценка эффективности алгоритма.
В первой части экспериментов алгоритм реализовывался 10 раз при 10 различных значениях параметра рандомизации P = 0,05; 0,1; 0,15; 0,25; 0,3; 0,4; 0,5; 0,6; 0,7; 0,8. Длина списка запретов L была постоянной и равнялась 45. На рис. 1 показана зависимость оценки относительной погрешности от значения параметра P.
ОЦЕНКА ПОГРЕШНОСТИ
в%
20--
ЗНАЧЕНИЕ ПАРАМЕТРА РАНДОМИЗАЦИИ Р
Л-1-1-1—I—I-1-1-У
0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9
Рис. 1. Зависимость оценки погрешности от параметра рандомизации
В качестве оценки погрешности использовалась разность между найденным значением ЦФ и минимально возможным, в качестве которого использовалась наименьшая из всех полученных в эксперименте оценок ЦФ. Как видно из графиков, на данных примерах алгоритм достигает наибольшей эффективности при значениях р = 0,2 — 0,3. Следует отметить, что полученный результат полностью согласуется с ранее полученными результатами в [15] по оценки параметров рандомизации на примере решения задач упаковки.
Найденное оптимальное значение параметра рандомизации Р=0.25 использовалось в алгоритме для оценки влияния длины списка запретов на эффективность алгоритма. Длина списка запретов принимала значения L =0; 5; 10; 20; 30; 40; 50; 60; 70;80. Процентные значения в данном списке указаны относительно размеров локальной окрестности решения, которая для 30 составов равна Ь = (30 х 30) /2 = 450. Результаты представлены на рис. 2.
Рис. 2. Зависимость оценки погрешности от длины списка запретов
Заметим, что длина списка запретов оказывает существенное влияние на эффективность поиска, что также согласуется с результатами, полученными в [15]. Из графика также видно оптимальное значение длины списка запретов, равное 30 %, что согласуется с рекомендациями относительно размеров списка запретов 20-30 %, полученными в работе [17].
Во второй части экспериментов алгоритм вероятностного поиска с запретами при полученных оптимальных значениях параметров рандомизации и длины списка запретов отрабатывал 100 случайно сгенерированных примеров, для которых ранее были найдены наилучшие решения на основе алгоритма ветвей и границ. Оценивалась погрешность полученных на основе разработанного алгоритма решений относительно наилучших. В результате экспериментов было установлено, что алгоритм лишь в 7 случаях не нашел наилучшее решение, а максимальная погрешность при этом не превысила 5 , что подтверждает его высокую эффективность
Заключение. Рассмотрена одна из типовых задач диспетчеризации, связанная с определением оптимальной очередности расформирования составов на сортировочных станциях. Для ее решения разработан вероятностный алгоритм локального поиска с запретами, использующий кодирование решений в виде перестановок номеров составов. Алгоритм осуществляет локальный поиск в пространстве возможных решений с использованием процедур интенсификации и диверсификации, основанных на адаптивном изменении параметра рандомизации окрестности.
На основе численных экспериментов были найдены оптимальные значения параметров алгоритма: параметр рандомизации Р=0,25, длина списка запретов, равная Ь= 30 % от размеров окрестности.
На известных тестовых примерах для частных случаев задачи алгоритм в 93 % находил наилучшие решения задачи. На остальных примерах максимальна погрешность алгоритма не превысила 5 %, что подтверждает эффективность алгоритма для решения ряда частных задач диспетчеризации.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Гуда А.Н., Долгий А.И., Ковалев С.М. Эволюционные методы on-line диспетчеризации на основе темпоральных моделей // Вестник РГУПС. - 2014. - № 4. - С. 42-49.
2. Долгий И.Д., Ковалев С.М., Криволапов С.В. Оптимизация графиков движения поездов на основе методов эволюцимонного моделирования // Интеллектуальные модели и мягкие вычисления в искусственном интеллекте: Сборник научных трудов 7-й Международной научно-технической конференции. - Коломна 2013. В 3-х т. Т. 1. - С. 862-868.
3. Шабельников А.Н. и др. Системы автоматизации сортировочных горок на основе современных компьютерных технологий: Учебник для вузов ж/д транспорта / под ред А.Н. Шабельникова. - Ростов-на-Дону: РГУПС, 2010. - 436 с.
4. Glover F. Future paths for integer programming and links to artificial intelligence // Computers & Operations Research. - 1986. - P. 533-549.
5. Reeves C.R., ed. Modern Heuristic Techniques for Combinatorial Problems. - Oxford: Blackwell Scientific Publishing, 1993.
6. Борознов В.О., Попов Г.А. Системный анализ работы сортировочной станции на основе метода «дерево целей» // Вестн. Астрахан. гос. техн. ун-та. Сер. управление, вычисл. техн. информ. - 2009. - № 2. - P. 13-21.
7. Glover F. Future paths for integer programming and links to artificial intelligence // Computers & Operations Research. - 1986. - No. 131. - P. 533-549.
8. GloverF. andLagunaM. Tabu Search. - Norwell: Kluwer Academic Publishers, 1997.
9. Allen J.F. Towards a General Theory of Action and Time // Artificial Intelligence. - 1984. - No. 23(2).
10. Papadimitriou C.H. and Steiglitz K. Combinatorial Optimization - Algorithms and Complexity. - New York: Dover Publications, 1982.
11. Пантелеев А.В. Методы глобальной оптимизации: Метаэвристические стратегии и алгоритмы. - М.: Изд-во Вузовская книга, 2013. - 244 с.
12. L. Moccia J.-F. Cordeau, G. Laporte. An Incremental Tabu Search Heuristic for the Generalized Vehicle Routing Problem with Time Windows // Journal of the Operational Research Society. - 2012. - No. 63. - C. 232-244.
13. Курейчик В.В., Курейчик В.М., Родзин С.И. Теория эволюционных вычислений. - М.: Физматлит, 2012. - 260 с.
14. Щербина О.А. Метаэвристические алгоритмы для задач комбинаторной оптимизации // Таврический вестник информатики и математики. - 2014. - № 1 (24). - 24 с.
15. РудневА.С. Вероятностный поиск с запретами в задаче упаковки // Дискретный анализ и исследование операций. - Июль-август 2009. - Т. 16, № 4. - C. 61-86.
16. Stutzle T. Iterated local search for the quadratic assignment problem // European Journal of Operational Research. - November 2006. - Vol. 174, Issue 3. - P. 1519-1539.
17. PhamD.T. &KarabogaD. Intelligent Optimisation Techniques, Springer-Verlag, London, 2000.
18. DorigoM. Optimization, Learning and Natural Algorithms. PhD, Politecnico di Milano. - 1992.
19. Yaghini M., Foroughi A. & Nadjari B. Solving railroad blocking problem using ant colony optimization algorithm // Applied Mathematical Modelling. - 2011. - No. 35. - P. 5579-5591.
20. Maniezzo V., Stutzle T. & Vob, S. Matheuristics: hybridizing metaheuristics and mathematical programming. - New York, Springer, 2009.
REFERENCES
1. Guda A.N., Dolgiy A.I., Kovalev S.M. Evolyutsionnye metody on-line dispetcherizatsii na osnove temporal'nykh modeley [Evolutionary methods on-line scheduling based on temporal models], VestnikRGUPS [Vestnik RGUPS], 2014, No. 4, pp. 42-49.
2. Dolgiy I.D., Kovalev S.M., Krivolapov S.V. Optimizatsiya grafikov dvizheniya poezdov na osnove metodov evolyutsimonnogo modelirovaniya [Optimization of schedules of trains on the basis of methods of simulation evolyutsionnogo], Intellektual'nye modeli i myagkie vychisleniya v iskusstvennom intellekte: Sbornik nauchnykh trudov 7-y Mezhdunarodnoy nauchno-tekhnicheskoy konferentsii [Intelligent models and soft computing in artificial intelligence: proceedings of the 7th International scientific and technical conference]. Kolomna 2013. In 3 books. Vol. 1, pp. 862-868.
3. ShabeTnikov A.N. i dr. Sistemy avtomatizatsii sortirovochnykh gorok na osnove sovremennykh komp'yutemykh tekhnologiy: Uchebnik dlya vuzov zh/d transporta [The automation system of sorting yards on the basis of modern computer technology: Textbook for universities railway transport], By ed A.N. Shabel'nikova. Rostov-on-Don: RGUPS, 2010, 436 p.
4. Glover F. Future paths for integer programming and links to artificial intelligence, Computers & Operations Research, 1986, pp. 533-549.
5. Reeves C.R., ed. Modern Heuristic Techniques for Combinatorial Problems. Oxford: Blackwell Scientific Publishing, 1993.
6. Boroznov V.O., Popov G.A. Sistemnyy analiz raboty sortirovochnoy stantsii na osnove metoda «derevo tseley» [The system analysis of sorting station's work on the basis of the method "tree of objectives"], Vestn. Astrakhan. gos. tekhn. un-ta. Ser. upravlenie, vychisl. tekhn. inform. [Vestnik of Astrakhan State Technical University. Series: Management, Computer Science and Informatics], 2009, No. 2, pp. 13-21.
7. Glover F. Future paths for integer programming and links to artificial intelligence, Computers & Operations Research, 1986, No. 131, pp. 533-549.
8. GloverF. andLagunaM. Tabu Search. Norwell: Kluwer Academic Publishers, 1997.
9. Allen J.F. Towards a General Theory of Action and Time, Artificial Intelligence, 1984, No. 23(2).
10. Papadimitriou C.H. and Steiglitz K. Combinatorial Optimization - Algorithms and Complexity. New York: Dover Publications, 1982.
11. Panteleev A. V. Metody global'noy optimizatsii: Metaevristicheskie strategii i algoritmy [Methods of global optimization: a Metaheuristic strategies and algorithms]. Moscow: Izd-vo Vuzovskaya kniga, 2013, 244 p.
12. L. Moccia J.-F. Cordeau, G. Laporte. An Incremental Tabu Search Heuristic for the Generalized Vehicle Routing Problem with Time Windows, Journal of the Operational Research Society, 2012, No. 63, pp. 232-244.
13. Kureychik V.V., Kureychik V.M., Rodzin S.I. Teoriya evolyutsionnykh vychisleniy [The theory of evolutionary computation]. Moscow: Fizmatlit, 2012, 260 p.
14. Shcherbina O.A. Metaevristicheskie algoritmy dlya zadach kombinatornoy optimizatsii [Metaheuristic algorithms for combinatorial optimization problems], Tavricheskiy vestnik informatiki i matematiki [Taurida Journal of Computer Science Theory and Mathematics], 2014, No. 1 (24), 24 p.
15. Rudnev A.S. Veroyatnostnyy poisk s zapretami v zadache upakovki [Probabilistic search with exclusions in the task of packing], Diskretnyy analiz i issledovanie operatsiy [Diskretnyi Analiz i Issledovanie Operatsii. Iyul'-avgust 2009, Vol. 16, No. 4, pp. 61-86.
16. Stutzle T. Iterated local search for the quadratic assignment problem, European Journal of Operational Research, November 2006 Vol. 174, Issue 3, pp. 1519-1539.
17. Pham D.T. & Karaboga D. Intelligent Optimisation Techniques, Springer-Verlag, London, 2000.
18. Dorigo M. Optimization, Learning and Natural Algorithms. PhD, Politecnico di Milano, 1992.
19. Yaghini M., Foroughi A. & Nadjari B. Solving railroad blocking problem using ant colony optimization algorithm, Applied Mathematical Modelling, 2011, No. 35, pp. 5579-5591.
20. Maniezzo V., Stutzle T. & Vob, S. Matheuristics: hybridizing metaheuristics and mathematical programming. New York, Springer, 2009.
Статью рекомендовал к опубликованию д.т.н., профессор С.М. Ковалев.
Шабельников Александр Николаевич - Научно-исследовательский институт автоматизации и связи; e-mail: [email protected]; г. Ростов-на-Дону, ул. Ленина, 44/13; тел.
89034031133; директор Ростовского филиала; д.т.н.; профессор.
Shabelnikov Alexandr Nikolaevich - Rostov branch of the Research Institute for Automation
and Communication; e-mail: [email protected]; 44/13, Lenin street, Rostov-on-Don, Russia;
phone: +79034031133; director of the Rostov branch; dr. of eng. sc.; professor.