Раздел II. Интеллектуальные системы и САПР
УДК 519.854.2
В.Н. Балабанов, Ю.А. Скобцов
ЭВОЛЮЦИОННЫЙ АЛГОРИТМ РЕШЕНИЯ ЗАДАЧИ РАЦИОНАЛЬНОГО РАСКРОЯ РУЛОННОГО МАТЕРИАЛА
Представлен новый метаэвристический метод решения многокритериальной задачи рационального раскроя рулонных материалов, выполняемого на линиях продольной резки. Математическая модель рассматриваемой задачи комбинаторной оптимизации разработана на основе существующей модели целочисленного линейного программирования. Сформулированы частные критерии эффективности использования материала и технологичности искомого плана раскроя. Предложенный метод основан на оптимизационном аппарате эволюционных вычислений и адаптивной генерации раскройных карт. При выборе способа представления решений в эволюционном алгоритме учтены комбинаторные свойства исходной задачи. Отличительной особенностью предложенного эволюционного метода является использование составного пятикомпонентного оператора мутации. При разработке целевой функции выполнено сведение исходной многокритериальной задачи к задаче скалярной оптимизации с заменой векторного критерия линейной сверткой частных критериев. Для генерации раскройных карт приспособлен существующий рандомизированный метод решения задачи ранцевого типа. Подготовлены тестовые задачи и поставлен ряд вычислительных экспериментов. Полученные результаты подтверждают состоятельность избранного подхода к построению эволюционного алгоритма, который может быть адаптирован для решения других задач рационального раскроя в схожей постановке.
Рациональный раскрой; рулонные материалы; многокритериальная модель; комбинаторная оптимизация; эволюционный алгоритм.
V.N. Balabanov, Y.A. Skobtsov
AN EVOLUTIONARY ALGORITHM FOR OPTIMIZATION OF ROLL CUTTING
A new metaheuristic solution method is presented for multi-objective cutting stock problem, which arises when roll materials are cut using slitting lines. The mathematical model of the combinatorial optimization problem in question is built on the basis of the existing integer linear programming model. Two objective functions are constructed one of which is related to material usage and the other to equipment changeovers. The proposed solution method is based on evolutionary computation and adaptive pattern generation. The choice of coding scheme used to represent solutions in evolutionary algorithm is influenced by the combinatorial structure of the original cutting stock problem. One of the main features of the proposed evolutionary method is the use of the complex five-component mutation operator. To obtain a fitness function original multiobjective problem is reformulated as a single-objective problem through replacement of the vector criterion with weighted sum of the two objective functions. Pattern generation is treated as a knapsack problem, which, in turn, is solved with modified version of the existing randomized algorithm. A new suite of test problems is proposed and used to evaluate performance of the method in computational experiments. The results show that the proposed approach is feasible and could be adapted to solve multi-objective cutting stock problems of similar structure.
Cutting stock problem; roll materials; multiobjective model; combinatorial optimization; evolutionary algorithm.
Введение. Задача о рациональном раскрое (ЗРР) впервые была сформулирована выдающимся советским математиком и экономистом Л.В. Канторовичем и состоит в нахождении такого плана раскроя, который позволяет получить заготовки в нужном ассортименте и при этом обеспечивает минимальный расход материала [1]. В общем случае ЗРР может быть классифицирована как ОТ-сложная задача комбинаторной оптимизации.
План раскроя, являющийся решением ЗРР, представляет собой перечень раскройных карт (РК), которые определяют способы раскроя отдельных частей исходного материала (например, рулонов или листов) на наборы заготовок. При построении формальных моделей ЗРР наибольшее распространение получил поход, основанный на сведении исходной комбинаторной задачи к задаче целочисленного линейного программирования общего вида. Актуальным направлением является построение уточненных моделей, в которых более полно учитываются ограничения, налагаемые конструкцией раскройного оборудования, либо раскрой рассматривается как одна из стадий технологического процесса производства некоторой продукции.
В решении ЗРР широко используются как точные, так и приближенные методы [2-4]. Применимость точных методов до последнего времени была ограничена задачами в классической постановке, предполагающей рассмотрение только одного оптимизационного критерия - минимизации расхода исходного материала. Для решения практических ЗРР был предложен ряд эвристических методов, которые позволяют находить решения, удовлетворяющие требованиям реального производства [3, 4].
Рулонные материалы широко применяются в металлургической, целлюлознобумажной, химической, текстильной и некоторых других отраслях промышленности. В данной статье рассматривается ЗРР рулонного материала, выполняемого с помощью специализированного оборудования - линий продольной резки рулонов. При планировании раскроев такого типа требуется учитывать дополнительные критерии, применяемые для оценки качества получаемых решений, и ограничения, связанные с особенностями технологического процесса продольного раскроя рулонов. Изложение материала статьи организовано следующим образом: вначале дается уточненная формальная модель ЗРР рулонов на линиях продольной резки, далее рассматриваются различные аспекты построения эволюционного алгоритма (ЭА), обсуждаются результаты вычислительных экспериментов и делаются соответствующие выводы.
Постановка задачи. При раскрое рулонов на линиях продольной резки материал раскраивается на полосы заданной ширины, все продольные резы выполняются от края до края, параллельно боковой кромке исходной полосы. Исходя из этого, продольный раскрой рулонного материала может быть классифицирован как одномерный. В тоже время, в отличие от классической постановки одномерной ЗРР, основанной на поштучном способе учета комплектности раскроя (когда требуемое количество заготовок каждого типа задается целым числом), при продольном раскрое рулонов может указываться только требуемая общая длина или масса полос заданной ширины, но не их точное количество.
Введем ряд обозначений. Положим, что ассортимент заготовок, которые требуется получить в результате раскроя рулонов, ограничен М наименованиями. Размеры заготовок и комплектность раскроя задаются следующим образом: для получения заготовки длиной /. допускается использование произвольного количества отдельных полос шириной , 1 = 1,...,М. Пусть исходный материал представлен перечнем из N рулонов, с каждым из которых сопоставлен порядковый номер у = 1,N. Пригодные для использования длину и ширину рулона с номером у обозначим через и ^ соответственно.
(1)
Множество РК опишем с помощью целых чисел ай, которые определяют количество полос шириной ^, полученное при раскрое рулона по способу с номером к. Для того чтобы установить связь между РК и рулонами, введем булевы переменные Тд •
11, рулон j раскраивается по способу k,
Т]к = | п
10, иначе.
Если предположить, что все допустимые РК перечислены по к = 1,то задача нахождения рационального плана, который позволит раскроить рулоны на наборы полос заданного размера с минимальными потерями исходного материала, может быть сформулирована следующим образом:
К N ( М \
*1 = ттЕЕТ]к1] -Еа^, ,
к=1 ]=1 V ,=1
К N
ЕЕТ,Л^, ^ I, V,. (2)
к=1 ]=1
М
Т]к Е агк™г * ^ ^ к , (3)
,=1
К
ЕТк * 1 V]. (4)
к=1
I М}, ] е{1,...,N1, к е{1,...,К}.
Известно, что операции настройки отдельных агрегатов линии продольной резки рулонов, выполняемые при смене РК, характеризуются значительной трудоемкостью [3]. Повышение качества составляемых планов раскроя может быть достигнуто за счет повторного использования РК: при раскрое двух и более рулонов на одинаковые наборы полос количество необходимых настроечных операций сокращается, поскольку смена РК в таком случае не требуется. Для того чтобы формализовать данный критерий, введем вспомогательную функцию (5).
N
1 Е] " 0 (5)
О, иначе.
S(k ) =
Критерий оптимальности для задачи минимизации количества различных РК, используемых в плане раскроя, может быть записан следующим образом:
К
*2 = шт Е^(к). (6)
к=1
Таким образом, ЗРР рулонного материала на линиях продольной резки может рассматриваться как многокритериальная задача комбинаторной оптимизации с векторным критерием (7) и системой линейных ограничений (2)-(4):
2 =( *1, *2 ). (7)
Нередко при рассмотрении ЗРР в подобной либо схожей постановке вместо
многокритериальной решается задача скалярной оптимизации: вводятся коэффи-
циенты, характеризующие относительную важность частных критериев, а вектор-
ный критерий заменяется соответствующим ему обобщенным критерием. ЭА успешно применяются для решения сложных задач комбинаторной оптимизации, в том числе и ЗРР. С учетом комбинаторной сложности рассматриваемой задачи выбор ЭА в качестве общей схемы для построения приближенного метода решения ЗРР рулонов представляется логичным.
Эволюционный алгоритм. ЭА для эффективной организации поиска решений оптимизационных задач заимствуют ряд базовых принципов из дарвиновской теории эволюции [5]. В зависимости от особенностей решаемой задачи может использоваться дополнительное кодирование решений, когда с помощью некоторого правила решения преобразуются в «особи» - структуры данных, специфичные для той или иной разновидности ЭА. На этапе инициализации ЭА формируется начальная популяция заданного размера, составленная из особей, сгенерированных случайным образом или же полученных с помощью вспомогательной процедуры. Каждая итерация ЭА состоит из последовательного выполнения эволюционных операторов, изменяющих структуру особей в текущей популяции, и формирования новой популяции при помощи механизма, имитирующего естественный отбор: в новую популяцию переносятся лишь наиболее приспособленные особи из текущей популяции. Степень приспособленности определяется значением целевой функции, рассчитанным для решения, соответствующего оцениваемой особи. Например, при решении задач минимизации вероятность попадания в следующую популяцию выше у особей с меньшими значениями целевой функции. Таким образом, для построения ЭА решения оптимизационной задачи требуется выбрать подходящий способ представления решений в виде особей, сформулировать целевую функцию, разработать эволюционные операторы и выполнить настройку параметров ЭА.
За основу для построения метода решения ЗРР была выбрана одна из разновидностей ЭА - эволюционная стратегия (ЭС). Каждая итерация ЭС состоит из двух шагов: вначале из л родительских особей текущей популяции с помощью
оператора мутации получают Л новых особей-потомков, затем формируется новая популяция и осуществляется переход на следующую итерацию. В предлагаемом ЭА для формирования новой популяции вместо стандартной двухшаговой схемы «мутация-отбор» применен более совершенный механизм, предложенный в работе [6].
При поиске решения ЗРР требуется из множества исходных рулонов 3 выделить подмножество 3и8ей, содержащее только те рулоны, которые будут раскроены, а также определить способы раскроя этих рулонов. В обозначениях формулировки (1)-(7):
Следует отметить, что множество допустимых РК в формулировке (1)-(7) задано неявно, поскольку на практике задача генерации и перебора всех его элементов является трудноосуществимой вследствие значительной мощности множества. Исходя из этого предлагается применить адаптивную генерацию РК, выполняемую по мере необходимости в процессе поиска решений с помощью специальной процедуры. На ЭА при этом возлагаются функции по подбору рулонов, вызову процедуры генерации РК и внесению соответствующих изменений в структуру планов раскроя.
Способ представления решений. При решении задач комбинаторной оптимизации выбор правила, в соответствие с которым решения задачи преобразуются в особи, определяется логической структурой исходной задачи. Как уже было от-
мечено, при составлении плана продольного раскроя рулонов требуется учитывать не только потери материала, но также контролировать количество введенных в план различных РК. Удобным для реализации эффективных эволюционных операторов представляется такой способ представления решений, при котором отдельные рулоны, включенные в план, будут объединяться в группы ^ , каждой группе
рулонов будет соответствовать собственный, отличный от других групп способ раскроя материала. Предположим, что номера РК, используемых в плане, известны и равняются Р , д = 1,., Q, тогда задача разбиения множества рулонов 3и8ес1
на группы ^ может быть сформулирована следующим образом:
Gq глОг = 0 , при г и q,r е
Целевая функция. Решение ЗРР в многокритериальной постановке (1)-(7) предполагает использование аппарата Парето-оптимальности. Однако при решении большинства практических ЗРР имеется возможность сопоставить стоимость единицы площади рулонного материала со средней трудоемкостью выполнения операций по настройке агрегатов линии продольной резки рулонов на заданную РК. Следовательно, система предпочтений составителя планов раскроя может быть описана с
помощью коэффициентов относительной важности Q и С2 частных критериев (1) и (6) соответственно. Заменим векторный критерий (7) обобщенным критерием (8), который будем использовать в качестве целевой функции в ЭА.
Z * = min (Qz* + C2z*),
(8)
C > о, c2 > о, с + Q = i.
Одним из требований, предъявляемых к допустимым планам раскроя, является их комплектность, т.е. возможность получить в результате выполнения плана заготовку каждого типа требуемой длины. В предложенной формулировке (1)-(7) данному требованию соответствует ограничение (2). Для удобства обозначим длину заготовки шириной W ■, полученную в результате выполнения плана раскроя
/prod через li :
K N
г'=££Wv.
k=i j=i
На практике, для оценки качества допустимых планов раскроя в дополнение к комплектности требуется контролировать избыточную длину получаемых заготовок. Для того чтобы не вводить в целевую функцию третий частный критерий, будем рассматривать избыточную длину полученных заготовок как потери материала. Если предположить, что значение целевой функции рассчитывается только
для тех особей, которым соответствуют комплектные планы раскроя, то критерий
2
zx может быть сформулирован следующим образом:
M I K N
z* = 1-L(w,/ZLVW ■ (9)
i=1 / k=1 j=1
Значение критерия (9), рассчитанное для заданного комплектного плана раскроя, показывает, какая часть раскроенного материала пойдет в отход, если такой план будет реализован.
Нормализованный критерий (6), пригодный для подстановки в целевую функцию (8), имеет следующий вид:
Существуют различные подходы к разработке ЭА для решения оптимизационных задач с ограничениями. В предлагаемом ЭА допускается наличие в популяции особей, которым соответствуют как комплектные, так и некомплектные планы раскроя. Нарушение остальных ограничений упреждается соответствующей реализацией эволюционных операторов. В процессе работы ЭА может потребоваться оценка приспособленности особи, которой соответствует некомплектный план раскроя. Для решения данной проблемы был использован предложенный в работе [7] прием, который основывается на попарном сравнении особей и предполагает введение вспомогательной целевой функции.
В дальнейшем допустимой будем называть особь, которой соответствует допустимое решение, недопустимой - ту, которой соответствует недопустимое решение. Вспомогательная целевая функция используется в случае, если требуется сравнить между собой приспособленность двух недопустимых особей. Рассматривается три возможных ситуации:
1. Сравниваются две допустимых особи, для оценки приспособленности обеих используется базовая целевая функция, предпочтение отдается более приспособленной особи.
2. Сравниваются допустимая и недопустимая особи, предпочтение всегда отдается допустимой особи.
3. Сравниваются две недопустимых особи, для оценки приспособленности обеих используется вспомогательная целевая функция, предпочтение отдается более приспособленной особи.
Для использования в качестве вспомогательной целевой функции дополнительно был сформулирован критерий (11), который может трактоваться как мера недоукомплектованности плана раскроя.
Операторы мутации. Исходя из выбранного способа представления решений в виде перечня групп ^, сложность реализованных операторов мутации условно
можно оценить по количеству групп, претерпевающих изменения в результате выполнения каждого из них. Были разработаны четыре оператора мутации, вносящие изменения только в одну из групп особи, а также один более сложный оператор мутации, предназначенный для объединения нескольких групп особи в одну.
Вначале рассмотрим операторы мутации, при выполнении которых изменяются свойства только одной из групп Од . Предположим, что в исходной особи
случайным образом выбрана некоторая группа ^, 1 < г < Q. Для того чтобы из исходной особи получить новую особь, группа Gr может быть подвергнута следующим модификациям:
1. Изменен перечень входящих в группу рулонов, Ог ^ &г.
2. Изменен способ раскроя рулонов группы, p ^ P* .
(10)
(11)
3. Совместно выполнены первые два преобразования: ОгРг ^Ог,Рг .
Предварительное тестирование ЭА выявило, что наиболее эффективными являются операторы, выполняющие преобразования р ^ Р* и Ог ,РГ ^ О*г,Р*.
Для дальнейшего использования в ЭА было отобрано четыре наиболее эффективных оператора мутации, реализация которых основывается на трехшаговом алгоритме следующего вида:
Шаг 1. Выбрать г : 1 < г < Q.
Шаг 2. Изменить группу рулонов Ог ^ Gr.
Шаг 3. Сгенерировать новую РК с номером Р*.
Следует отметить, что первый и последний шаги данного алгоритма всеми операторами мутации выполняются одинаково, отличия проявляются в характере изменений, вносимых в группу рулонов Ог на втором шаге. Способы модификации содержимого групп рулонов, использованные при реализации операторов, приведены в табл. 1. Запись Gт обозначает группу, полученную в результате выполнения второго шага оператора мутации с порядковым номером т .
Очевидно, что если для раскроя нескольких рулонов применяется один и тот же способ, то общая ширина соответствующей РК не должна превышать ширину наиболее узкого из раскраиваемых рулонов. Для того чтобы лучше контролировать потери рулонного материала, выбор нового рулона шириной Wnew, вводимого в группу при выполнении второго и четвертого операторов мутации, осуществляется в соответствие со следующим правилом:
W (Ог )= шт W ,
З^-Ог 3
Wnew = шт | З е 3 \ WJ > W(Gг)}.
Таблица 1
Мутационные изменения группы рулонов ^
Преобразование Описание
Gr ^ G1 Группа Сг сохраняется в исходном виде, Охг = Ог
Gr ^ G^ В группу добавляется новый, ранее не использованный в раскрое, рулон шириной Wew
Gr ^ G3 Из группы удаляется случайным образом выбранный рулон с номером у є Ог
Gr ^ Gr4 В группе случайным образом выбранный рулон с номером І є Ог заменяется другим, ранее не использованным в раскрое, рулоном шириной
В результате выполнения второго шага оператора мутации мы получаем новую особь, которая состоит из групп ^ , Ч є {-,• • •, в}, Ч ^ г, перенесенных в
исходном виде, и одной измененной группы Сг . Если Сл = 0, то такая группа
удаляется из особи, в остальных случаях РК с номером Р , определявшая способ раскроя рулонов из группы Ог в исходном решении, заменяется новой РК. Задача, решаемая на третьем шаге оператора мутации, заключается в поиске для изменен-
у-. *
такой РК с номером Р , введение которой в план раскроя даст наиболее приспособленную новую особь.
Рассмотрим, каким образом задача составления РК может быть сведена к задаче о ранце [8]. Частичным решением будем называть план раскроя, состоящий
из групп рулонов О , Ч е (1,..., Q}. Ч Ф г . Представим, что такой план был реализован. Длина полученной заготовки шириной wi составит
к
Г” (О )=1 I ТлА •
к=1 О*
РК для оставшейся группы рулонов О* должна составляться таким образом, чтобы итоговый план раскроя был комплектным, поскольку от этого зависит приспособленность новой особи. Недостающая длина заготовки шириной wi, которую требуется получить при раскрое группы рулонов О* , равняется
г«, (о. )=|/, - г1 (о* ) /, > /гО; ),
I 0, иначе •
Минимальное число полос шириной щ, которое необходимо откроить от каждого из рулонов, входящих в группу О * , для получения заготовки соответствующего наименования общей длиной не менее (о* ) рассчитывается по фор-
муле (12):
d. (g; )
/г“ (g; Vs Lj
r'! "4 J
JєGr
(12)
Задача составления такой допустимой РК, которая обеспечит минимальные
G*
, заключается в нахождении неизвестных целых x , удовлетворяющих требованиям (13)—(15):
M
max S xiwi > (13)
І=1
M
S x,w, < w (g; ), (14)
i=1
X < d.. (g; ) Vi, (15)
i є {і,...,M}.
G*
r ,
измененной на втором шаге оператора мутации: = X., І є {і, ...,M}, k = P*.
Поскольку каждая итерация ЭС предполагает получение заданного количества новых особей с помощью применения оператора мутации к особям текущей популяции, то общее количество мутаций, выполняемых за один запуск ЭА, явля-
ется значительным. Предварительное тестирование базовой конфигурации ЭА выявило, что реализация процедуры генерации РК на основе точного метода решения задачи о ранце приводит к существенному снижению вычислительной эффективности метода. Исходя из этого, вместо существующих точных методов для решения задачи (13)—(15) был применен рандомизированный алгоритм, предложенный в работе [4].
Процедура, применяемая для генерации РК, выполняет серию повторных запусков рандомизированного алгоритма, каждый из запусков осуществляется с одним и тем же набором входных данных щ , W(Ог), ^(о*), , е (1,М}. Количество повторных запусков является параметром процедуры генерации РК, в дальнейшем обозначаемым как pgp_. Лучшее из решений задачи (13)—(15), найденное с помощью рандомизированного алгоритма, используется в качестве РК с номером Р*, определяющей способ раскроя группы рулонов Ог .
Рассмотренные четыре оператора мутации реализованы таким образом, чтобы при поиске решений контролировать потери материала, однако приспособленность особей также зависит и от значения критерия (10). Для того чтобы ЭА был эффективным при любых значениях коэффициентов С и С2, введем в его состав еще один оператор мутации, выполняющий слияние нескольких групп рулонов в одну. Подобное изменение в структуре особи соответствует уменьшению количества различных РК, использованных в соответствующем ей плане раскроя. Для реализации нового оператора мутации, выполняющего слияние двух групп, используем следующий простой алгоритм:
Шаг 1. Если Q = 1, прекратить вычисления.
Шаг 2. Выбрать г и £ : 1 < г < Q, 1 < £ < Q, г Ф 5 .
Шаг 3. Объединить две группы рулонов О* = Ог ^ О .
7") *
Шаг 4. Сгенерировать новую РК с номером Рг .
Шаг 5. Пересчитать значения индексов групп Ч .
Первая из двух объединяемых групп, О , выбирается случайным образом. Для выбора второй группы, О , используется следующее правило:
W (О, ) = шт ^(Ог)-W (Оч )],
Ч е(1,..., 0}, Ч Ф г.
Таким образом, на втором шаге выбирается две близкие по ширине группы
О и О (под шириной группы подразумевается ширина наиболее узкого из рулонов, входящих в ее состав). Рулоны из группы О переносятся в группу О , затем при помощи рассмотренной ранее процедуры осуществляется генерация новой РК
^ /--г*
для измененной группы О .
Выбор ЭС одного из пяти реализованных операторов при выполнении очередной мутации осуществляется случайным образом, операторы используются с одинаковой частотой. Следует отметить, что в качестве исходной особи при выполнении операторов мутации всегда используется не оригинал, а копия особи из текущей популяции. Это позволяет при необходимости включать в следующую популяцию как исходную особь, так и ее мутировавшую копию.
Входными данными для ЭА являются условие решаемой задачи (w., l ■, i e{l,...,M}; Wj, Lj, j e{l,..., #}), а также заданные параметры ЭС (/и , Л) целевой функции (C, C) и процедуры генерации РК (pgp _ trials ). Перед выполнением первой итерации необходимо инициализировать ЭА, поместив в начальную популяцию и особей, полученных с помощью некоторого вспомогательного метода. В предлагаемом ЭА реализован следующий подход: начальная популяция заполняется особями, которым соответствуют приближенные решения, найденные с помощью упрощенной версии последовательной эвристической процедуры [3]. Модификация оригинального метода [3] заключается в том, что вместо задачи (1)-(7) решается упрощенная задача (1)-(4): при построении планов раскроя критерий (6) не рассматривается, для большинства найденных таким образом решений выполняется * 1
z2 ~ l. В качестве критерия останова в ЭА используется следующее правило: вычисления прекращаются после выполнения заданного числа полных итераций ЭС.
Вычислительные эксперименты. Для проведения вычислительных экспериментов была разработана программная реализация ЭА на языке программирования Java. Исходный код разработанной программной библиотеки находится в открытом доступе и доступен для скачивания [9].
Для исследования работы ЭА был составлен набор из 64 тестовых задач различной сложности (табл. 2) и разработан формат их представления, основанный на XML. Тестовые задачи и документация с описанием формата хранятся в том же репозитории, что и исходный код разработанной библиотеки [9].
Таблица 2
Классы тестовых задач
Класс задач Количество M N Описание
optimal 10 [4 . . 12] [10 . . 300] Задачи с известными оптимальными решениями
production 18 [4 . . 12] [37 . . 143] Задачи, основанные на производственных данных
random 36 [4 . . 20] [13 . . 106] Задачи, составленные с использованием случайной генерации данных
На этапе предварительного тестирования был определен такой набор параметров, при котором ЭА работает стабильно, т.е. обеспечивается воспроизводимость результатов, получаемых при решении тестовых задач. Значения параметров, составляющие данный набор, следующие: и = 50, Л = 45, pgp _ trials = 5.
Для оценки эффективности предлагаемого метода была выполнена серия вычислительных экспериментов, в которых тестовые задачи решались с помощью ЭА и модификации последовательной эвристической процедуры (МПЭП), предложенной в работе [4]. Выбор второго метода обусловлен его пригодностью для решения ЗРР в постановке (1)-(7). Вычислительные эксперименты осуществлялись в соответствие со следующей методикой: для каждой из 64 тестовых задач выполнялось по 10 последовательных запусков тестируемого метода с одним и тем же набором параметров, в каждом из запусков фиксировались его продолжительность и лучшее из найденных решений. В случае с ЭА использовался приведенный выше базовый набор параметров, продолжительность запуска ограничивалась временем, необходимым для выполнения 2000 итераций ЭС.
При решении тестовых задач было сделано допущение, что критерии (9) и (10) имеют одинаковую важность, т.е. С = С = 0,5. Соответствующим образом были настроены и параметры метода МПЭП. Результаты вычислительных экспериментов, подвергнутые статистической обработке, представлены в табл. 3.
Таблица 3
Характеристика планов раскроя, найденных с помощью ЭА и МПЭП
Класс задач ЭА МПЭП
z1, % * z1, % z 2 z1, % z 1—1 * % O4 z 2
optimal 1,1 2,6 2,6 12,3 15,4 4,6
production 3,4 13,3 1,7 15,4 18,9 5,5
random 3,2 15,7 2,6 10,4 19,5 6,4
Во всех вычислительных экспериментах использовалась рабочая станция с процессором Intel Core i5-3427U под управлением операционной системы OS X 10,8. В зависимости от класса решаемых задач средняя продолжительность одного запуска ЭА колебалась в пределах от 1 до 4 секунд. Аналогичный показатель для МПЭП составил менее одной секунды.
Сопоставив характеристики полученных решений, можно прийти к выводу,
что ЭА позволяет находить более технологичные планы раскроя (критерий z2) с
*
меньшим уровнем совокупных потерь материала (критерий z ). Также следует отметить эффективность избранного подхода к построению целевой функции - все планы раскроя, найденные с помощью ЭА, являются допустимыми решениями задачи (1)-(7).
Заключение. ЭА широко применяются для решения ЗРР как в классической, так и в уточненной многокритериальной постановке. Характерным отличием предложенного ЭА решения ЗРР рулонного материала является использование составного оператора мутации, позволяющего в процессе поиска изменять решения несколькими различными способами. Реализованный подобным образом ЭА обладает схожими чертами с другим метаэвристическим методом - поиском с чередующимися окрестностями [10]: фактически, каждый из пяти операторов мутации неявным образом задает собственное правило построения окрестности текущего решения, а мутация особи представляет собой один шаг локального поиска в соответствующей окрестности. Эффективность ЭА, использующего составной оператор мутации, подтверждается результатами вычислительных экспериментов.
Дальнейшие исследования могут быть направлены на разработку бинарных эволюционных операторов, а также реализацию механизма автоматической подстройки параметров ЭА. Кроме того, предложенный ЭА может быть адаптирован для решения многокритериальных одномерных ЗРР с поштучным способом учета комплектности раскроя.
БИЛИОГРАФИЧЕСКИЙ СПИСОК
1. Канторович Л.В. Математические методы в организации и планировании производства.
- Л.: Изд-во ЛГУ, 1939. - 68 с.
2. Скобцов Ю.А., Балабанов В.Н. К вопросу о применении метаэвристик в решении задач рационального раскроя и упаковки // Вестник Хмельницкого национального университета. - 2008. - Т. 1, № 4. - С. 205-217.
3. Haessler R.W. Selection and design of heuristic procedures for solving roll trim problems // Management Science. - 1988. - Vol. 34, № 12. - P. 1460-1471.
4. Vahrenkamp R. Random search in the one-dimensional cutting stock problem // European Journal of Operational Research. - 1996. - Vol. 95, № 1. - P. 191-200.
5. Скобцов Ю.А. Основы эволюционных вычислений: Учебное пособие. - Донецк: Дон-НТУ, 2008. - 326 с.
6. Michalewicz Z. Genetic algorithms + data structures = evolution programs. - 3rd ed. - Berlin [etc.]: Springer-Verlag, 1998. - 387 p.
7. Deb K. An efficient constraint handling method for genetic algorithms // Computer Methods in Applied Mechanics and Engineering. - 2000. - Vol. 186, № 2-4. - P. 311-338.
8. Martello S., Toth P. Knapsack problems: algorithms and computer implementations.
- Chichester [etc.]: John Wiley & Sons Ltd., 1990. - 318 p.
9. GitHub: EA-based solver for 1.5D MSSCSP [Electronic resource]. - 2013. - [Cited 2013,
1 June]. - Available from: https://github.com/akavrt/csp.
10. Mladenovic N., Hansen P. Variable neighborhood search // Computers & Operations Research. - 1997. - Vol. 24, № 11. - P. 1097-1100.
Статью рекомендовал к опубликованию д.т.н., профессор В.В. Курейчик.
Балабанов Виктор Николаевич - Донецкий национальный технический университет;
e-mail: [email protected]; Украина, 83001, г. Донецк, ул. Артема, 58; тел.: +380919242116;
кафедра автоматизированных систем управления; аспирант.
Скобцов Юрий Александрович - e-mail: [email protected]; тел.: +380623010996;
кафедра автоматизированных систем управления; зав. кафедрой; д.т.н.; профессор.
Balabanov Virtor Nikolaevich - Donetsk National Technical University; e-mail: [email protected];
58, Artema street, Donetsk, 83001, Ukraine; phone: +380919242116; the department of automated control systems; postgraduate student.
Skobtsov Yuri Alexandrovich - e-mail: [email protected]; phone: +380623010996;
the department of automated control systems; head of department; dr. of eng. sc.; professor.
УДК 004.896
Ю.В. Чернухин, Р.В. Сапрыкин, М.В. Лисичкин
ЭКСПЕРИМЕНТАЛЬНОЕ ИССЛЕДОВАНИЕ ЖИВУЧЕСТИ НЕЙРОСЕТЕВЫХ СИСТЕМ УПРАВЛЕНИЯ АДАПТИВНОГО МОБИЛЬНОГО РОБОТА
В настоящее время возрос интерес к адаптивным мобильным роботам. Сферы их применения весьма обширны и разнообразны: подводные и космические исследования, военная промышленность и спасательные операции, ремонтно-восстановительные работы в экстремальных условиях. В большинстве случаев они используются там, где присутствие человека либо невозможно, либо связано с опасностью для жизни и здоровья. Конечно, мобильные роботы использовались и ранее, но навигация в них, как правило, была реализована с помощью традиционных систем управления автоматного типа. Выход из строя одного из элементов такой системы зачастую приводит к выходу из строя всей системы, а увеличение живучести чаще всего достигалось за счёт дублирования элементов и подсистем. Построение системы управления бионического типа для адаптивного мобильного робота на основе нейронной сети, с использованием нейронов формально-логического типа, увеличивает живучесть нейросетевой системы управления и позволяет выполнять задачу навигации, даже тогда, когда значительная часть элементов управляющей системы выведена из строя.
Адаптивный мобильный робот; живучесть технических систем; нейросетевая система управления формально-логического типа.