Применение метаэвристических алгоритмов для минимизации длины холостого хода режущего инструмента

ВЕСТНИК ПНИПУ

2015 Электротехника, информационные технологии, системы управления № 14 УДК 519.81

Р.Т. Мурзакаев, В.С. Шилов, А.В. Бурылов

Пермский национальный исследовательский политехнический университет,

Пермь, Россия

ПРИМЕНЕНИЕ МЕТАЭВРИСТИЧЕСКИХ АЛГОРИТМОВ ДЛЯ МИНИМИЗАЦИИ ДЛИНЫ ХОЛОСТОГО ХОДА РЕЖУЩЕГО ИНСТРУМЕНТА

В статье рассмотрена задача минимизации длины холостого хода режущего инструмента (РИ), возникающая в CAD/CAM системах при генерации управляющих программ для станков с ЧПУ. Модель задачи представлена для стандартной технологии резки листового материала, при которой рез одного контура выполняется непрерывной линией без выключения РИ, и на каждом контуре определяется только одна точка врезки (входа/выхода). Отмечена связь данной задачи с обобщенной задачей коммивояжера с условиями предшествования (GTSP+SOP), которая является NP-трудной. В виду сложности решаемой задачи для разработки алгоритма минимизации длины холостого хода РИ были отобраны три метаэвристики: метод имитации отжига (SA), метод пороговой допустимости (TA) и алгоритм всемирного потопа (GD). Предложена обобщенная схема решения поставленной задачи, состоящая из десяти этапов. Для выбора наиболее эффективной мета-эвристики и проверки работоспособности алгоритма проведен вычислительный эксперимент на тестовой карте раскроя, содержащей пятьдесят три контура (внутренних и внешних суммарно). Время работы алгоритма при использовании различных метаэвристик было синхронизировано и разбито на два интервала: 3-5 с. (быстрый поиск маршрута), 10-15 с. (длительный поиск маршрута). Результаты показали, что при использовании GD разработанный алгоритм построил кратчайший по длине холостого хода маршрут РИ в обоих временных интервалах за меньшее время. Отмечено, что часть шагов алгоритма не зависит от использования SA, TA или GD, поэтому алгоритм может быть легко адаптирован и для других рассмотренных методов.

Ключевые слова: метаэвристика; задача коммивояжера; имитация отжига; алгоритм всемирного потопа; холостой ход; ЧПУ; контур детали.

R.T. Murzakaev, V.S. Shilov, A.V. Burylov

Perm National Research Polytechnic University, Perm, Russian Federation

APPLICATION OF METAHEURISTIC ALGORITHMS TO MINIMIZE IDLE RUNNING LENGTH OF CUTTING TOOL

The paper deals with minimizing of idle running length of cutting tool which appears in CAD/CAM systems while generating control program of the CNC machine. We present problem model for standard cutting technology, i.e. one contour is cut by one continuous line without cutting tool shutdown and every contour contains the only incut point. Connection between presented problem and general traveler salesman problem with precedence conditions (GTSP+SOP) is shown. This problem is

NP-hard one. In the view of complexity of the problem to be solved, to develop algorithm of cutting tool idle run length optimization three metaheuristics were choosen: Simulated Annealing (SA), Threshold Accepting (TA) and Great Deluge Algorithm (GD). Common scheme of solving given problem is suggested which contains of ten stages. To determine the most effective metaheuristic and check operabil-ity of algorithm we conduct computational experiment test cutting layout, which contains fifty three contours including inner ones. Timework of algorithm with different metaheuristics was synchronized and divided into two intervals: 3-5 seconds (quick route search), 10-15 (long route search). Experiments results show that algorithm based on GD constructed a shortest route on running length for both time intervals in a smaller time. It was pointed out what some steps of algorithm do not depend on SA, TA or GD usage, therefore algorithm can be easily adapted for other considered methods.

Keywords: metaheuristic; travelling salesman problem; simulated annealing; great deluge algorithm; idle running; cutting tool; CNC; detail's contour.

Современные CAD/CAM системы, используемые на производстве, позволяют генерировать управляющие программы (УП) для режущего оборудования с ЧПУ в автоматическом режиме. Поэтому возникает необходимость оптимизации маршрута режущего инструмента (РИ) еще до генерации самой УП. Сформированный маршрут РИ должен обладать следующими свойствами:

- корректностью, т.е. не должен нарушать используемую технологию резки;

- рациональностью, т.е. быть близким к оптимальному и без лишних перемещений РИ.

Общая длина маршрута РИ представляется суммой длин рабочего и холостого хода. При использовании стандартной технологии резки, при которой контур детали имеет ровно одну точку врезки и вырезается без прерывания, возможно уменьшить только длину холостого хода. При этом данный подход позволит сократить время работы режущего оборудования [1].

Особенность задачи минимизации длины холостого хода РИ заключается в том, что она основана на задаче коммивояжера (TSP - Travelling Salesman Problem), которая, как известно, является #Р-трудной. Из этого следует невозможность применения точных методов оптимизации, так как число вариантов перемещения РИ очень велико.

В подобных случаях, когда для решения задачи оптимизации не применимы точные методы, используются эвристические и метаэври-стические подходы. Они не гарантируют достижения наилучшего решения задачи (глобального оптимума), но находят «достаточно хорошее» (квазиоптимальное) решение за приемлемое время [2].

Целью данной работы являются выбор эффективной метаэври-стики и разработка на её основе алгоритма минимизации длины холостого хода РИ.

Анализ существующих работ показывает, что наиболее популярными методами оптимизации маршрута РИ являются генетические (GA -Genetic Algorithms) [3] и муравьиные алгоритмы (ACO - Ant Colony Optimization) [4, 5]. При удачной настройке перечисленные методы позволяют получить сравнимые результаты для данной задачи. Недостаток GA и ACO заключается в наличии большого числа управляющих параметров, что затрудняет настройку методов для решения конкретных задач.

В [6] для решения классического варианта TSP успешно применен метод имитации отжига (SA - Simulated Annealing), получивший кратчайший маршрут по сравнению с ACO, GA и рядом других метаэв-ристик. В [7] отмечено, что SA способен находить приемлемое решение быстрее, чем GA. В книге [8] рекомендуется отдавать предпочтение данному методу при решении широкого круга задач оптимизации.

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

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

Интересными для исследования и применения являются метод пороговой допустимости (TA - Threshold Accepting) [9] и алгоритм всемирного потопа (GD - Great Deluge Algorithm) [10]. Эти метаэври-стики имеют некоторое сходство с SA, однако не так хорошо освещены в литературе на русском языке. Основное отличие TA и GD от SA заключается в использовании детерминированных правил перехода к новому решению. Достоинство данных методов заключается в наличие небольшого числа управляющих параметров, что значительно упрощает настройку алгоритмов, разработанных на их основе.

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

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

Таким образом, для разработки и экспериментальной проверки алгоритма минимизации длины холостого хода РИ были выбраны три метаэвристики:

- метод имитации отжига (£А);

- метод пороговой допустимости (ТА);

- алгоритм всемирного потопа (ОП).

Исходными данными при решении задачи минимизации длины холостого хода РИ являются карты раскроя, содержащие информацию о контурах деталей (пример дан на рис. 1). Каждый контур представлен набором геометрических объектов (ГО), который состоит из отрезков, дуг и окружностей. Выделяют две группы контуров:

- внешние контуры, присутствующие у каждой детали;

- внутренние контуры, которые могут отсутствовать.

Рис. 1. Пример карты раскроя, сформированной программным комплексом ITAS NESTING [11]

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

1. Маршрут начинается и заканчивается в начале координатной системы.

2. Маршрут проходит только через одну точку каждого контура (точку врезки).

3. Внешний контур детали вырезается только после всех внутренних контуров.

Данная задача с учетом ограничений 1-3 соответствует обобщенной задаче коммивояжера с условиями предшествования, которая является #Р-трудной, как и базовый вариант Т8Р [12].

Введем ряд обозначений. Конечное множество контуров на карте раскроя обозначим С = {с1,с2,..,сп}. При построении пути РИ, если

применяется стандартная технология резки, на каждом контуре ci е С

необходимо выбрать единственную точку врезки = (xi, у), i = 1, п.

Поскольку контур является непрерывной геометрической фигурой, состоящей из набора ГО, точка врезки выбирается из конечного множества потенциальных точек врезки i -го контура Qi = {цЛ,qi2,...,} .

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

ц =Т

где (, ) - координаты первой точки, (— у 1) - координаты второй точки.

Отметим, что согласно [8] многие приближенные методы для метрических задач работают значительно лучше, чем для Т8Р в базовой постановке.

При минимизации общей длины холостого хода РИ целевая функция представляет собой сумму длин допустимых переходов между точками:

Ш1П

г = п-1

Аобщ.хх (к) = ^ А',г +1 + 4,! г=1

где £общхх - общая длина холостого хода РИ, к - допустимый маршрут.

Последовательность вырезания контуров кор1, при которой достигается минимальное значение целевой функции (2), должна принадлежать множеству К допустимых маршрутов, где К = {г1(рДг2(р2),..., 1п(рп)} -перестановка чисел 1,2,...,п , такая, что получаемый маршрут удовлетворяет ограничениям 1-3.

Для решения поставленной задачи предложена обобщенная схема алгоритма, состоящая из десяти этапов:

1) получение списка контуров;

2) определение множества потенциальных точек врезки для каждого контура;

3) инициализация параметров метаэвристики;

4) создание начального маршрута;

5) генерация нового маршрута;

6) проверка маршрута на допустимость;

7) переход к новому маршруту;

8) сохранение лучшего маршрута;

9) если выполнен критерий остановки, то переход на 10, иначе на 5;

10) выдача лучшего решения.

Конкретизация этапов 3, 7, 9 зависит от выбора SA, ТА или ОП в качестве метода оптимизации маршрута, остальные этапы являются общими и не зависят от используемой метаэвристики.

Рассмотрим этапы 2, 4, 5, 6 более подробно.

Для определения множества потенциальных точек врезки контура (этап 2) в работе используются следующие правила:

- для каждого отрезка, составляющего контур, в качестве потенциальных точек врезки рассматриваются начальная и конечная точки;

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

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

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

Для создания начального маршрута (этап 4) может быть использован модифицированный вариант жадного алгоритма ближайшего соседа (NN - Nearest Neighbor Algorithm). NN начинает работу из начала координатной системы и строит решение поэтапно, добавляя на каждом шаге по одному допустимому контуру в маршрут, который имеет ближайшую потенциальную точку врезки к последней добавленной в маршрут. Алгоритм закончит работу, когда в маршрут будут добавлены все контуры.

Для генерации нового маршрута (этап 5) в данной статье используется следующая процедура:

1. Выбираются два случайных контура в текущем маршруте.

2. Выполняется инверсия порядка всех контуров между ними, включая выбранные.

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

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

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

С целью определения наиболее эффективной из рассматриваемых метаэвристик и подтверждения работоспособности алгоритма

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

При проведении вычислительного эксперимента было выполнено по десять запусков алгоритма минимизации длины режущего инструмента для каждой из метаэвристик ЗА, ТА, GD. Поскольку методам необходимо различное время для получения сравнимых результатов, время работы алгоритма было синхронизировано и разбито на два интервала:

- быстрый поиск маршрута, Ь = 3.. .5 с;

- длительный поиск маршрута, г2 = 10.15 с;

Рис. 2. Тестовая карта раскроя

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

Результаты вычислительного эксперимента

г 3-5 с 10-15 с

№ БЛ ТА ОБ БЛ ТА ОБ

1 3454 3368 3391 3303 3128 3005

2 3395 3371 3355 3168 3178 3117

3 3436 3355 3357 3156 3075 3114

4 3405 3349 3248 3315 3044 2973

5 3374 3397 3386 3361 3088 3056

В таблице символом № обозначен номер испытания, в заголовках столбцов приведены названия метаэвристик, в первом столбце - номера испытаний, значения в ячейках - длина холостого хода РИ.

Из рис. 3 видно, что разработанный алгоритм минимизации длины холостого хода продемонстрировал наилучший результат при использовании ОБ в обоих временных интервалах, худший результат был получен при использовании £Л. Отметим, что маршрут с минимальной длиной холостого хода при использовании ОБ был достигнут за 11,04 с, а при использовании $Л и ТЛ за 14,6 и 13,1 с соответственно. Таким образом, использование ОБ в алгоритме минимизации длины холостого хода позволило получить лучший результат за меньшее время.

10-15 с

3-5 с

2700 2800 2900 3000 3100 3200 3300 3400 3500

3-5 с 10-15 с

1<зс 3248 2973

и ТА 3349 3044

£А 3374 3156

Длина холостого хода РИ

Рис. 3. Лучшие результаты оптимизации длины холостого хода

Блок-схема алгоритма минимизации длины РИ при использовании ОБ в качестве метода оптимизации представлена на рис. 4.

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

Рис. 4. Блок-схема алгоритма минимизации длины холостого хода РИ с использованием метаэвристики ОБ

Таким образом, в работе рассмотрена задача минимизации длины холостого хода РИ, разработан метод её решения. В ходе вычислительного эксперимента была выбрана метаэвристика GD. Разработанный на основе GD алгоритм показал лучшие результаты при минимизации длины холостого хода РИ за меньшее время.

Библиографический список

1. Петунин А. А., Ченцов А.Г., Ченцов П. А. К вопросу маршрутизации движения инструмента в машинах листовой резки с числовым программным управлением // Научно-технические ведомости СПбГПУ. Информатика. Телекоммуникации. Управление. - 2013. - № 2 (169). -С.103-100.

2. E.G. Metaheuristics: from design to implementation. - Wiley, 2009.

3. Khashayar Danesh Narooei, Rizauddin Ramli. Application of Artificial Intelligence Methods of Tool Path Optimization in CNC Machines: A Review // Research Journal of Applied Sciences, Engineering and Technology - 2014. - Vol. 8(6). - P. 746-754.

4. Верхотуров М.А., Тарасенко П.Ю. Математическое обеспечение задачи оптимизации пути режущего инструмента при плоском фигурном раскрое на основе цепной резки // Вестник УГАТУ (Уфимский авиационный технический университет). Управление, вычислительная техника и информатика. - Уфа: Изд-во УГАТУ, 2008. - Т.10, № 2 (27). -С.123-130.

5. Ганелина Н.Д., Фроловский В.Г. Исследование методов построения кратчайшего пути обхода отрезков на плоскости // Сибирский журнал вычислительной математики. - Новосибирск, 2006. - Т. 9, № 3. -С.123-130.

6. Antosiewicz M., Koloch G., Kaminski B. Choice of best possible metaheuristic algorithm for the travelling salesman problem with limited computational time: quality, uncertainty and speed // Journal of Theoretical and Applied Computer Science - 2013. - Vol. 7(1). - P. 46-55.

7. Adewole A.P, Otubamowo K., Egunjobi T.O. A Comparative Study of Simulated Annealing and Genetic Algorithm for Solving the Travelling Salesman Problem // International Journal of Applied Information Systems. -2012. - Vol. 4(4). - P. 6-12.

8. Скиена С. Алгоритмы. Руководство по разработке: пер. с англ. -2-е изд. - СПб.: БХВ-Петербург, 2011. - 720 с.

9. Dueck G., T Scheuer. Threshold Accepting. A General Purpose Optimization Algorithm Superior Appearing Superior to Simulated Annealing // J. Comp. Phys. - 1990. - Vol. 90. - P. 161-175.

10. Dueck G. New optimization heuristics // J. Comp. Phys. - 1993. -Vol. 104(1). - P. 86-92.

11. Мурзакаев Р.Т., Шилов В.С., Брюханова А. А. Программный комплекс фигурного раскроя материала ITAS NESTING // Вестник Пермского национального исследовательского политехнического университета. Электротехника, информационные технологии, системы управления. - 2015. - № 13. - С. 15-25.

12. Castelino K., D'Souza R., Wright P.K. Toolpath optimization for minimizing airtime during machining // Journal of Manufacturing Systems -2003. - Vol. 22(3). - P. 171-180.

References

1. Petunin A.A., Chentsov A.G., Chentsov P.A. K voprosu marshrutizatsii dvizheniia instrumenta v mashinakh listovoi rezki s chislovym programmnym upravleniem [More on the tool routing in sheet cutting machines with CNC]. Nauchno-tekhnicheskie vedomosti Sankt-Peterburgskogo gosudarstvennogo politekhnicheskogo universiteta. Informatika. Telekommunikatsii. Upravlenie, 2013, no. 2 (169), pp. 103-100.

2. E.G. Metaheuristics: from design to implementation. Wiley, 2009.

3. Khashayar Danesh Narooei, Rizauddin Ramli. Application of Artificial Intelligence Methods of Tool Path Optimization in CNC Machines: A Review. Research Journal of Applied Sciences, Engineering and Technology. 2014, vol. 8(6), pp. 746-754.

4. Verkhoturov M.A., Tarasenko P.Iu. Matematicheskoe obespechenie zadachi optimizatsii puti rezhushchego instrumenta pri ploskom figurnom raskroe na osnove tsepnoi rezki [Mathematic support of the task related to the cutting tool track optimization, in case of the cutting chain flat shaping]. Vestnik Ufimskogo aviatsionnogo tekhnicheskogo universiteta. Upravlenie, vychislitel'naia tekhnika i informatika, 2008, vol. 10, no. 2 (27), pp. 123-130.

5. Ganelina N.D., Frolovskii V.G. Issledovanie metodov postroeniia kratchaishego puti obkhoda otrezkov na ploskosti [The research of methods of constructing the shortest circuits of segments on a plane]. Sibirskii zhurnal vychislitel'noi matematiki. Novosibirsk, 2006, vol. 9, no. 3, pp. 123-130.

6. Antosiewicz M., Koloch G., Kaminski B. Choice of best possible metaheuristic algorithm for the travelling salesman problem with limited computational time: quality, uncertainty and speed. Journal of Theoretical and Applied Computer Science, 2013, vol. 7(1), pp. 46-55.

7. Adewole A.P, Otubamowo K., Egunjobi T.O. A Comparative Study of Simulated Annealing and Genetic Algorithm for Solving the Travelling Salesman Problem. International Journal of Applied Information Systems, 2012, vol. 4(4), pp. 6-12.

8. Skiena S. Algoritmy. Rukovodstvo po razrabotke [Algo-rithms.Design manual]. Sankt-Peterburg: BKhV-Peterburg, 2011. 720 p.

9. Dueck G., Scheuer T. Threshold Accepting. A General Purpose Optimization Algorithm Superior Appearing Superior to Simulated Annealing. J. Comp. Phys, 1990, vol. 90, pp. 161-175.

10. Dueck G. New optimization heuristics. J. Comp. Phys, 1993, vol. 104(1), pp. 86-92.

11. Murzakaev R.T., Shilov V.S., Briukhanova A.A. Programmnyi kompleks figurnogo raskroia materiala ITAS NESTING [Software package of the figured material shaping ITAS NESTING]. Vestnik Permskogo natsio-nal'nogo issledovatel'skogo politekhnicheskogo universiteta. Elektrotekhnika, informatsionnye tekhnologii, sistemy upravleniia, 2015, no. 13. pp. 15-25.

12. Castelino K., D'Souza R., Wright P.K. Toolpath optimization for minimizing airtime during machining. Journal of Manufacturing Systems, 2003, vol. 22(3), pp. 171-180.

Сведения об авторах

Мурзакаев Рустам Талгатович (Пермь, Россия) - кандидат технических наук, доцент кафедры информационных технологий и автоматизированных систем Пермского национального исследовательского политехнического университета (614990, Пермь, Комсомольский пр., 29, e-mail: rustmur@gmail.com).

Шилов Вадим Сергеевич (Пермь, Россия) - аспирант кафедры информационных технологий и автоматизированных систем Пермского национального исследовательского политехнического университета (614990, Пермь, Комсомольский пр., 29, e-mail: vadim.shilov@gmail.com).

Бурылов Артём Валерьевич (Пермь, Россия) - магистрант кафедры информационных технологий и автоматизированных систем Пермского национального исследовательского политехнического университета (614990, Пермь, Комсомольский пр., 29, e-mail: artyom.burylov@mail.ru).

About the authors

Murzakaev Rustam Talgatovich (Perm, Russian Federation) is Ph.D. in Technical Sciences, Associate Professor at the Department of Information Technologies and Computer-Aided Systems, Perm National Research Polytechnic University (614990, Perm, 29, Komsomolsky pr., e-mail: rustmur@gmail.com).

Shilov Vadim Sergeevich (Perm, Russian Federation) is a post-graduator of the Department of Information Technologies and Computer-Aided Systems, Perm National Research Polytechnic University (614990, Perm, 29, Komsomolsky pr., e-mail: vadim.shilov@gmail.com).

Burylov Artyom Valerievich (Perm, Russian Federation) is the Master's Degree Student of the Department of Information Technologies and Computer-Aided Systems, Perm National Research Polytechnic University (614990, Perm, 29, Komsomolsky pr., e-mail:artyom.burylov@mail.ru).

Получено 15.04.2015