Научная статья на тему 'Программное обеспечение для построения A-цепей с упорядоченным охватыванием в плоском связном 4-регулярном графе'

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

CC BY
77
8
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ПЛОСКИЙ ГРАФ / МАРШРУТ / РАСКРОЙНЫЙ ПЛАН / ПОЛИНОМИАЛЬНЫЙ АЛГОРИТМ / CAD/CAM / PLANE GRAPH / PATH / CUTTING PLAN / POLYNOMIAL-TIME ALGORITHM

Аннотация научной статьи по математике, автор научной работы — Макаровских Татьяна Анатольевна

В CAD/CAM-системах технологической подготовки процессов раскроя встает задача построения маршрута движения режущего инструмента, при котором отрезанная от листа часть не требует дополнительных разрезаний и запрещены пересечения траектории резки (касания допускаются). Формально такая задача может быть сформулирована как задача построения самонепересекающейся цепи в плоском эйлеровом графе, представляющим гомеоморфный образ раскройного плана. В конечном счете задачи построения маршрутов, удовлетворяющих технологическим ограничениям, сводятся к нахождению A-цепи с упорядоченным охватыванием в плоском связном 4-регулярном графе. В статье предложен алгоритм нахождения такой цепи. Выполнение алгоритма состоит из двух этапов. На первом этапе выявляются и расщепляются точки сочленения ранга k. На втором этапе построение цепи начинается из произвольной вершины, инцидентной внешней грани; первым ребром цепи выбирается инцидентное данной вершине ребро максимального ранга; далее организуется итерационный процесс, где в качестве следующего ребра выбирается непройденное ребро максимального ранга, являющееся левым либо правым соседом текущего ребра. Показано, что для плоского связного 4-регулярного графа алгоритм строит маршрут с указанными свойствами за линейное время. Представленные алгоритмы реализованы в виде компьютерной программы. Приведены примеры решения ряда тестовых задач.

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

SOFTWARE FOR CONSTRUCTING OF A-CHAINS WITH ORDERED ENCLOSING FOR A PLANE CONNECTED 4-REGULAR GRAPH

The task of constructing the cutting path of the tool when the part cut off from the sheet does not require additional cuts and the trajectories of cuts intersections are forbidden (the touches are allowed) may arise in CAD/CAM-systems of technological preparation of cutting processes. Formally, such a task can be formulated as the problem of constructing a self-non-intersecting chain in a plane Euler graph representing a homeomorphic image of a cutting plan. Finally, the tasks of constructing routes satisfying the technological constraints are reduced to defining an A-chain with ordered enclosing for a plane connected 4-regular graph. This article is devoted to the algorithm for finding such a chain. The execution of this algorithm consists of two stages. At the first stage, cut-vertices of rank k are identified and splitted. At the second stage, the construction of the chain starts from an arbitrary vertex incident to the outer face; the first edge of the chain is chosen to be an edge of maximal rank incident to a given vertex; next, an iterative process is organized where, as the next edge, an unpassed edge of maximum rank is chosen, which is the left or right neighbour of the current one. It is shown that the algorithm constructs a route with the indicated properties in linear time for a plane connected 4-regular graph. The considered algorithms are realized as a computer program. The examples of some test problems are given in this paper.

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

УДК 512.5, 519.1(075.8)

DOI: 10.14529/cmsel90103

ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ДЛЯ ПОСТРОЕНИЯ А-ЦЕПЕЙ С УПОРЯДОЧЕННЫМ ОХВАТЫВАНИЕМ В ПЛОСКОМ СВЯЗНОМ 4-РЕГУЛЯРНОМ ГРАФЕ

© 2019 Т.А. Макаровских

Юмсно-Уральский государственный университет (454080 Челябинск, пр. им. В.И. Ленина, д. 76) E-mail: Makarovskikh. [email protected] Поступила в редакцию: 24.07.2018

В CAD/CAM-системах технологической подготовки процессов раскроя встает задача построения маршрута движения режущего инструмента, при котором отрезанная от листа часть не требует дополнительных разрезаний и запрещены пересечения траектории резки (касания допускаются). Формально такая задача может быть сформулирована как задача построения самонепересекающейся цепи в плоском эйлеровом графе, представляющим гомеоморфный образ раскройного плана. В конечном счете задачи построения маршрутов, удовлетворяющих технологическим ограничениям, сводятся к нахождению А-цепи с упорядоченным охватыванием в плоском связном 4-регулярном графе. В статье предложен алгоритм нахождения такой цепи. Выполнение алгоритма состоит из двух этапов. На первом этапе выявляются и расщепляются точки сочленения ранга к. На втором этапе построение цепи начинается из произвольной вершины, инцидентной внешней грани; первым ребром цепи выбирается инцидентное данной вершине ребро максимального ранга; далее организуется итерационный процесс, где в качестве следующего ребра выбирается непройденное ребро максимального ранга, являющееся левым либо правым соседом текущего ребра. Показано, что для плоского связного 4-регулярного графа алгоритм строит маршрут с указанными свойствами за линейное время. Представленные алгоритмы реализованы в виде компьютерной программы. Приведены примеры решения ряда тестовых задач.

Ключевые слова: плоский граф, маршрут, раскройный план, полиномиальный алгоритм, CAD/CAM.

ОБРАЗЕЦ ЦИТИРОВАНИЯ

Макаровских Т.А. Программное обеспечение для построения A-цепей с упорядоченным охватыванием в плоском связном 4-регулярном графе / / Вестник ЮУрГУ. Серия: Вычислительная математика и информатика. 2019. Т. 8, № 1. С. 36-53.

DOI: 10.14529/cmsel90103.

Введение

Лазерная резка является одной из основных современных технологий, используемых при обработке листового материала, что делает актуальной задачу определения траектории движения режущего инструмента. Задача определения траектории заключается в определении точной последовательности резов. Развитие автоматизации производства привело к появлению технологического оборудования с числовым программным управлением, используемого для резки листовых материалов. Новые технологии позволяют осуществлять вырезание по произвольной траектории с достаточной для практики точностью. Преимуществом при использовании лазерной резки является минимальность таких показателей как ширина реза и термические деформации. Целью задачи определения маршрута резки является поиск такого пути режущего инструмента, при котором выполняются условия предшествования, а время, затраченное на вырезание, минимально [1].

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

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

• во-первых, все элементы внутренних контуров должны быть вырезаны прежде, чем будут полностью отрезаны от листа внешние контуры;

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

При технологической подготовке процессов раскроя с применением лазерной резки (для CAD/CAM систем) возникает задача нахождения маршрута для режущего инструмента, при котором отрезанная от листа часть не требует разрезаний, и не допускаются пересечения в траектории резки (касания допускаются) [1, 2]. В процессе лазерной резки происходит нагревание металлического листа. В связи с этим при определении траектории движения режущего инструмента необходимо учитывать как термические эффекты, так и возможные деформации. Это приводит к необходимости избегать пересечений резов.

В работах [1, 3] приводится классификация задач маршрутизации режущего

инструмента и отмечается, что технологии ЕСР (Endpoint Cutting Problem) и ICP (Intermittent Cutting Problem) за счет возможности совмещения границ вырезаемых деталей позволяют сократить расход материала, длину резки и длину холостых проходов [3]. Проблемы уменьшения отходов материала и максимального совмещения фрагментов контуров вырезаемых деталей решаются на этапе составления раскройного плана.

Несмотря на очевидные преимущества технологий ЕСР и ЮР, в настоящее время большинство отечественных [6-10] и зарубежных [1, 3-5] работ посвящено развитию технологии GTSP (General Travelling Salesman Problem), которая не предполагает совмещение контуров вырезаемых деталей. Таким образом, при использовани данной технологии длина траектории будет равна сумме периметров всех контуров, а количество точек врезки — количеству контуров. Однако при этом проблема выполнения отмеченных выше условий предшествования оказывается тривиальной.

Построению эффективных алгоритмов для раскройных планов, в которых допускаются совмещения границ контуров, посвящен ряд работ [11—13]. Алгоритм из работы [11] находит траекторию движения режущего инструмента и минимизирует число точек врезки. Предложенный в работе алгоритм применим только для раскройных планов, допускающих плоскую достройку до эйлерова графа. В статье [12] рассмотрена та же задача, что и в [11], задача формализована достаточно подробно, введено понятие маршрута с ограничениями в плоском графе (ОЕ'-маршрутов) и приведен не только алгоритм решения задачи для эйлерова графа, но и решена задача китайского почтальона (таким образом, приведен алгоритм решения задачи для плоского связного графа). Один из подходов к построению покрытия упорядоченной последовательностью реберно-непересекающейся последовательностью цепей рассмотрен и в работе [13]. Он требует решения задачи сельских почтальонов. Напомним, что в маршруте почтальона отсутствует требование, чтобы маршрут являлся реберно-непересекающимся.

Все отмеченные выше работы [11-13] не исключают построение траектории с самопересечениями.

О построении маршрута, не допускающего пересечения траекторий, впервые упоминается в работе [14]. В данной работе речь идет о самонепересекающейся цепи, тем не менее, в данной статье понятие самонепересекающейся цепи ошибочно сужено до понятия А-цепи [15]. В действительности, класс самонепересекающихся цепей шире класса А-цепей [17]. Под самонепересекающейся цепью понимают эйлеров цикл С в плоском графе G, гомеоморфный плоскому циклическому графу G (представляющему жорданову кривую на плоскости), который может быть получен из графа G с помощью применения 0(\E(G)\) операций расщепления вершин. В работах [17, 18] показано, что задача построения самонепересекающейся цепи в графе G сводится к задаче нахождения A-цепи с упорядоченным охватыванием для плоского связного 4-регулярного графа G, полученного в результате введения в гомеоморфный образ раскройного плана фиктивных вершин и ребер. После стягивания всех фиктивных вершин и ребер в графе G будет получена самонепересекающаяся цепь в графе G.

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

Статья организована следующим образом. В разделе 1 приводится представление гомеоморфного образа раскройного плана. В разделе 2 введены необходимые определения и предварительные результаты, используемые в дальнейших рассуждениях. Приведен полиномиальный алгоритм построения АОЕ-\щш в плоском связном 4-регулярном графе. Доказана его результативность. В разделе 3 приведены примеры тестовых задач, решенных с помощью разработанного алгоритма. В заключении перечислены полученные в работе результаты, отмечены направления дальнейших исследований.

1. Абстрактное представление раскройного плана в виде плоского графа

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

Рассмотрим подробнее представление плоского графа в виде его гомеоморфного образа, т.е. в виде системы инцидентности. Гомеоморфным образом раскройного плана является плоский граф G с внешней гранью /о на плоскости S. Для любой части J графа G (т.е. J С G) обозначим через Int(J) теоретико-множественное объединение его внутренних граней (объединение всех связных компонент S \ J, не содержащих внешней грани). Тогда Int( J) можно интерпретировать как отрезанную от листа часть. Множества вершин, ребер и граней графа J будем обозначать через V(J), E{J) и F{J) соответственно.

1 Циклическим порядком называется способ расположения объектов на окружности.

Топологическое представление плоского графа G на плоскости S с точностью до гомеоморфизма определяется заданием для каждого ребра е £ E{G) следующих функций [2, 20]:

• Vk(e), к = 1,2 — вершины, инцидентные ребру е;

• lk(e), к = 1,2 — ребра, полученные вращением ребра е против часовой стрелки вокруг вершины иДе);

• гь (е), к = 1,2 — ребра, полученные вращением ребра е по часовой стрелке вокруг вершины иДе);

• /Де) — грань, находящаяся справа при движении по ребру е от вершины гДе) к вершине г>з_Де), к = 1, 2.

Иллюстрация введенных функций дана на рис. 1.

Рис. 1. Функции для представления плоского графа

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

Представление графа фактически задает ориентацию его ребер. Далее предполагается, что движение по ребру для определенности осуществляется от вершины v\(e) к вершине гДе). Поскольку при задании графа G неизвестно, какое из ребер в каком направлении будет пройдено, то при выполнении алгоритма производится перестановка значений полей иДе), гДе) и 4(e), /Де), к = 1,2 некоторых ребер. В алгоритме данную

процедуру выполняет функция REPLACE, функциональным назначением которой является перестановка индексов функций гДе), 4(е) и гДе) на 3 — к, к = 1, 2 [20].

Далее будем считать, что все рассматриваемые плоские графы представлены указанными функциями. Пространственная сложность такого представления будет 0(\E(G)\ ■ log2 |П(С)|).

2. Построение АОЕ-цепи в плоском графе

2.1. Определения и обозначения

В дальнейшем будем использовать ряд понятий, определения которых имеются в работах [15, 21, 22]. Приведем их для полноты изложения.

Определение 1. Графом разрешенных переходов Tq{v) вершины v £ H(G) [21] будем называть граф, вершинами которого являются ребра, инцидентные вершине v, т.е. V(Tg(v)) = Eg(v), а множество ребер — разрешенные переходы между ребрами.

Определение 2. Системой разрешенных переходов Tq [21] будем называть множество {Tg(v) | v £ V{G)}, где Tg(v) — граф переходов в вершине v.

Определение 3. Путь Р = vq, е\, щ,..., е&, гд в графе G является Тс-совместимым [21], если а, е*_|_1 £ Е(Тс(Уг)) для каждого i (1 < i < к — 1).

Определение 4. Пусть для цепи Т = vq, гц,..., кп, vn, vn = vq в графе G = (V,E) в каждой вершине v £ V задан циклический порядок 0±(г>), определяющий систему переходов Ag(v) С 0±(г>). В случае, когда \/v G V(G) Aq(v) = 0±(г>), систему переходов Aq{v) будем называть полной системой переходов.

В частности, маршруты, в которых цикл из пройденных ребер не охватывает еще непройденных (т.е. заданы условия предшествования: отрезанная от листа часть не требует дополнительных разрезаний) представляют класс ОЕ'-маршрутов.

Определение 5. Будем говорить, что цикл С = • • • Vk в плоском эйлеровом

графе G имеет упорядоченное охватывание (называется ОЕ'-цепью), если для любой его начальной части Ci = vieiV2&2 ■ ■ ■ i < \E(G)\ выполнено условие Int (С*) П G = 0.

Определение 6. Упорядоченная последовательность реберно-непересекающихся О-Е-цепей

называется маршрутом с упорядоченным охватыванием (ОЕ-маршрутом).

Определение 7. Эйлерову цепь Т будем называть А-цепъю [15], если она является А^-совместимой цепью. Таким образом, последовательные ребра в цепи Т (инцидентные вершине v) являются соседями в циклическом порядке 0±(u).

Определение 8. Будем говорить, что цепь является АОЕ-цепъю, если она одновременно является ОЕ-цепью и А-цепью.

Определение 9. Рангом ребра е £ E{G) будем называть значение функции rank(e) : E{G) —>• N, определяемое рекурсивно:

• пусть Ei = {е £ Е : е С /о} — множество ребер, ограничивающих внешнюю грань /о графа G(V, Е), тогда (Ve £ Ei) (rank(e) = 1);

• пусть Ek{G) — множество ребер ранга 1 графа

тогда (Ve £ Е*,) (rank(e) = к).

Ранг ребра определяет его удалённость от внешней грани и показывает, какое минимальное число граней необходимо пересечь, чтобы добраться от внешней грани /о до этого ребра. Это позволяет для определения ранга использовать граф G', топологически двойственный исходному графу G: множеством вершин графа G' является множество E(G),

покрывающая граф G и такая, что

(Vm : m < п)

а ребрам графа G' соответствует наличие между двумя гранями границы ненулевой длины, т.е. ребра е G E{G).

Для всех / G F{G) расстояние в графе G' между / и внешней гранью /о можно определить, построив в графе G' дерево Tq, кратчайших путей до вершины /о G F. Наличие в представлении графа G функций Ik : E{G) —>• E(G), к = 1,2 позволяет найти функции ранга за время, не превосходящее величины 0{\E{G)\ ■ log2 |V(G)|).

Различные способы вычисления значений функции rank(e) приведены в работах [22, 23].

Теорема 1. Если в плоском графе G графе существует Л-цепь, то существует и АОЕ-щмъ.

Доказательство. Л-цепь в плоском эйлеровом графе представляет замкнутую жорданову кривую без самопересечений. Данную кривую можно получить следующим образом: рассмотрим граф G, в каждой вершине которого задана система переходов, соответствующая Л-цепи, и граф G', полученный из графа G расщеплением вершин в соответствии с системой разрешенных переходов (рис. 2). Построенный таким образом граф G' представляет собой жорданову кривую без пересечений и в соответствии с теоремой Жордана [16] разбивает плоскость на внешнюю и внутреннюю компоненты связности.

Рис. 2. Плоский граф G с заданной системой переходов Л-цепи и соответствующий ему граф G", являющийся жордановой кривой на плоскости

Очевидно, что на полученной кривой найдется вершина г>о, инцидентная внешней грани графа G и ребру еп: rank(en) = 1. Если принять вершину vq за начало АОЕ-цепи, а направление обхода выбрать таким образом, чтобы ребро (еп) было концом цепи Сп, то в силу отсутствия пересечений для внутренности любой начальной части цепи (Д = voeiVie2 ■ ■ ■ вг, i < \E(G)\ будет выполнено условие

Int (Ci) П G = 0,

т.е. такая Л-цепь Сп будет являться и ОЕ'-цепью. Действительно, предположение существования ребра е G Int (СД сразу приводит к противоречию с тем, что в системе переходов цепи отсутствуют пересечения. Теорема доказана.

Теорема 2. В плоском связном 4-регулярном графе G существует АОЕ-цепь.

Доказательство. Доказательство существования Л-цепи в связном 4-регулярном графе приведено в [15, Следствие VI.6]. Так как в этом графе существует Л-цепь, то в силу теоремы 1 в нем существует и ЛОЕ'-цепь. Теорема доказана.

Определение 10. Суграф Gk графа G, для которого E{Gk) = {е G E{G) : rank(e) > k} назовем су графом ранга к.

а) Верная система переходов для расщепления точки сочленения суграфа Gk

б) Расщепление в соответствии с системой переходов в точке сочленения суграфа Gk

Рис. 3. Расщепление точек сочленения ранга к

Далее будет рассмотрен алгоритм ADE-TRAIL, позволяющий найти АОЕ-цеиь в плоском связном 4-регулярном графе, в котором любой суграф G ранга к не имеет точек сочленения.

При поиске точек сочленения суграфа Gk используются следующие свойства 4-регулярных графов.

Предложение 1. Вершина, инцидентная четырем ребрам, смежным внешней грани, является точкой сочленения.

Предложение 2. Внешняя грань суграфа Gk является объединением всех граней ранга к в графе G.

Справедливость этих предложений очевидна в силу 4-регулярности графа. Определение 11. Рангом грани / Е E(G) будем называть значение функции rank :

где E{f) — множество ребер инцидентных грани / Е F.

Определение 12. Точкой сочленения ранга к назовем вершину, инцидентную четырем ребрам, смежным внешней грани суграфа Gk-

2.2. Расщепление точек сочленения ранга к

Для корректного построения АОЕ-ищш в плоском связном 4-регулярном графе необходимо предварительно «правильно» расщепить все точки сочленения суграфов Gk-В результате такого расщепления получим граф, у которого любой суграф Gk не содержит точек сочленения. Последовательность расщепления вершин не имеет значения, т.к. это локальная операция.

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

F(G) -a Z-0:

mine6£:(j) rank(e), в противном случае,

О, при / = /о,

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

Алгоритм 1 CUT-POINT-SPLITTING

Require: плоский связный 4-регулярный граф G = (V,E), представленный для всех е € E(G) функциями vs, ls, rs , s = 1, 2.

Ensure: гомеоморфный образ графа G = (V,E), представленный для всех е € E(G) функциями vs, ls, rs , s = 1,2, в котором любой суграф Gk не имеет точек сочленения.

Промежуточные данные: ¥с £ V(G)\ point(r) — массив указателей на одно из ребер, инцидентных вершине v, rank(r) — массив рангов вершин, count(r) — счетчик инцидентных ребер одного ранга для каждой вершины;

V/ € F(G): массив rank(/).

1: Initiate():

2:

3

4

5

6 7

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

9

10

11

12

13

14

15

16

17

18

19

20 21 22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

> Обнулить счетчик инцидентных вершине ребер одного ранга

> Определение ранга всех вершин, ребер и граней графа

> Нахождение точек сочленения

> Просмотреть последовательно все вершины

> Сохранить значение ранга к инцидентного ребра е > Определить ориентацию ребра е

for all v £ V(G) do

point(r) := 0; count(r) := 0 end for Ranking(G)

FindingQ:

for all e € E(G) do

point(ri(e)) := e point(r2(e)) := e end for

for all v € V (G) do

e := point(r) к := rank(r) if v = Vi(e) then s := 1

else

s := 2 end if e := ls(e) for i = 1 up to 4 do if rank(e) = к then

count(r) := count(r) + 1 if i < 4 then e := ls(e) end if end if end for

if count(r) = 4 then > Если найдена точка сочленения, расщепить вершину

if (Л(е) = fs(h(e)) and /3-фе) = /3_8(Це))) or (/s(e) = /3_s(Zs(e)) and /3_s(e) = fs(h(e))) then

e* := ls(e), ls(e) := rs(e), rs(rs(e)) := e, rs(e*) :=ls(e*), ЦЦе*)) := e*

> Подсчет количества инцидентных вершине v ребер ранга к

else

е* := rs(e), rs(e) := ls(e), ls(ls(e) := e, h(e*) := rs(e*), rs(rs(e*)) := e* end if end if end for

Справедлива следующая теорема.

Теорема 3. Алгоритм CUT-POINT-SPLITTING определяет точки сочленения всех рангов плоского связного 4-регулярного графа и расщепляет их без нарушения связности за время не превосходящее 0{\Е\).

Доказательство. На этапе инициализации (функция Initiate(), строки 1-4) для каждой вершины v £ V(G) обнуляется счетчик country) инцидентных ей ребер, ранг которых совпадает с рангом у. Затем вычисляются ранги всех вершин, ребер и граней графа (функция RankingO, строка 5).

Далее осуществляется поиск и расщепление точек сочленения каждого ранга (строки 6-37). В первом цикле (строки 7-10) осуществляется инициализация массива point{v): для каждой вершины определяется инцидентное ей ребро. В следующем цикле (строки 11-37) определяется ранг к текущей вершины (строка 13), уточняется ориентация текущего ребра (строки 14-18). В цикле (строки 19-27) подсчитывается количество инцидентных вершине у ребер, ранг которых совпадает с рангом к вершины. Если текущая вершина инцидентна четырем ребрам ранга к, то в соответствии с предложением 1, то она является точкой сочленения ранга к. В этом случае выполняется расщепление точки сочленения ранга к за счет соответствующей модификации указателей на смежные ребра (см. строки 28-37 алг. 1) в соответствии с рис. 3.

Итак, алг. 1 за время не превосходящее 0{\Е\) осуществляет последовательный просмотр всех вершин графа Сив случае обнаружения точки сочленения ранга к выполняет расщепление найденной вершины на две вершины степени 2 без нарушения связности графа. Повторный просмотр вершин не требуется: алгоритм не изменяет ранги ребер, а только модифицирует их смежность. В результате каждой операции расщепления будет получено две вершины степени 2. Следовательно, в результате единственного последовательного просмотра всех вершин графа для каждого ранга к будут расщеплены все имеющиеся точки сочленения. Появление новых точек сочленения ранга к невозможно, т.к. значение функции rank(e) не изменяется. Теорема доказана.

2.3. Алгоритм построения АОЕ-и^етш в плоском связном 4-регулярном графе без точек сочленения ранга к

Рассмотрим алг. 2, выполняющий построение АОЕ-щзш в плоском связном 4-регулярном графе без точек сочленения.

Алгоритм 2 AOE-TRklL

Require: плоский связный 4-регулярный граф G без точек сочленения, представленный функциями Vk, Ik, гк (рис. 1), к = 1,2;

1: начальная вершина v £ Р(/о).

Ensure: ATrail — выходной поток, содержащий построенную алгоритмом АОЕ-цепь.

2: Initiate(G, гд)

3: Ranking(G) > Ранжирование

4: Constructing() > Построение

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

Функциональное назначение процедуры Ranking () — определить для каждого ребра е £ E(G) графа его ранг rank(e). Как отмечалось ранее, различные алгоритмы вычисления значений функции rank(e) приведены в работах [22, 23], их вычислительная сложность не превосходит величины 0(\E(G)\ ■ log2 |К(С)|).

Описание процедуры Construct ing(), выполняющей построение АОЕ-гщш представлено ниже (см. алг. 3). * •

Алгоритм 3 Constructing (v)

1 е = argmaxgg^,,) rank(e) > Выбрать ребро максимального ранга, инцидентное вершине v

2 repeat

3 if v ф Vi(e) then

4 REPLACE(e)

5 end if > При необходимости скорректировать нумерацию функций для ребра е

6 Print(r, е) > Вывести ребро е в результирующую последовательность

7 mark(e) := false; counters =counter+l; v := v2(e) > Пометить ребро как пройденное

8 if (rank(r2(e)) > rank(Z2(e))) then > Выбрать следующим ребро максимального ранга

9 if mark(r2(e)) then > Проверить, пройдено ли добавляемое в цепь ребро

10 e := r2(e) > Для пройденных ребер значение в массиве mark — ложь

11 else

12 e := l2(e)

13 end if

14 else

15 if (mark(Z2(e)) then > Выбрать непройденное ребро

16 e := l2(e)

17 else

18 e := r2(e)

19 end if

20 end if

21 until (counter > |E(G)|) > Завершить цикл, когда просмотрены все ребра

В строке 1 предписано для заданной инцидентной внешней грани вершины v выбрать инцидентное ей ребро е максимального ранга.

В следующем далее цикле repeat — until (строки 2-21) осуществляется построение АОЕ-цеии:

• при необходимости корректируется нумерация функций для ребра е (строки 3-5), т.е. производится взаимообмен номеров инцидентных ребру е вершин, таким образом, чтобы вершина v\(e) посещалась при обходе раньше вершины ц2(е);

• текущее ребро выводится в результирующую последовательность (строка 6);

• помечается как пройденное (mark(e)=false), в качестве текущей вершины v выбирается 112(e), увеличивается значение счётчика пройденных ребер (строка 7);

• в качестве следующего текущего ребра е выбирается инцидентное вершине v непройденное ребро (mark(e)=true), являющееся по возможности левым или правым соседом предыдущего ребра.

Теорема 4. Алгоритм ADE-TRAIL и процедура Constructing(v) строят АОЕ-цеиь в плоском связном 4-регулярном графе G за время 0(\E(G)\ ■ log2 |К(С)|).

Доказательство. Результативность процедуры Initiate() очевидна. Результативность процедуры Ranking () доказана в [24]. Их совокупная вычислительная сложность не превосходит 0(\E(G) \ ■ log2 |И(С)|).

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

Докажем результативность процедуры Constructing(). Если для текущего ребра е вершина v = 112(e) посещается впервые, то выполнение тела цикла можно интерпретировать как расщепление вершины v* = 112(e) в соответствии с системой переходов И-цепи. После расщепления гомеоморфный образ полученного графа уже не будет содержать вершины и*. При повторном попадании алгоритма в вершину v* £ H(G) алгоритм продолжает формирование цепи в соответствии с гомеоморфным образом полученного ранее ребра.

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

После выполнения |V(G)| расщеплений в соответствии с системой переходов А-цепи получим гомеоморфный образ графа, являющийся окружностью. В этом случае поток ATrail будет содержать полученную АОЕ-щль.

При выполнении расщеплений гомеоморфный образ остается связным графом, поэтому все ребра будут обработаны алгоритмом (получат пометку false). Процедура ConstructingO имеет единственный цикл. Вычислительная сложность тела цикла не превосходит величины 0(log2 |П(С)|), а число итераций этого цикла равно \E(G)\. Следовательно, вычислительная сложность алгоритма не превосходит величины 0(\E(G) \ ■ 1оё2|П(С)|). Теорема доказана.

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

3. Примеры работы алгоритма

Представленные выше алгоритмы реализованы в виде компьютерной программы. Приведем примеры тестовых задач, решенных с помощью этой программы.

Во входном файле указывается общее число ребер, каждая последующая строка файла соответствует одному ребру. В ней приведены значения указанных в разделе 1 функций в следующем порядке: инцидентные вершины (функции иДе), к = 1,2); левые (функции 1к(е), к = 1,2) и правые (функции гДе), к = 1,2) соседние ребра; грани /Де), к =

1,2, инцидентные ребрам 1Де); последним числом в строке указывается ранг rank(e) соответствующего ребра. Плоский связный 4-регулярный граф с примером его кодирования приведены на рис. 4.

Разработанная программа в зависимости от номера начальной вершины (задаваемого пользователем) определяет АОЕ-реаъ в графе, либо выводит сообщение, что задача не имеет решения.

Для тестирования разработанной программы достаточно рассмотреть следующие возможные случаи:

• граф, не имеющий точек сочленения (в этом случае не осуществляется вызов функции CutPointSplitting, пример такого графа представлен на рис. 4); найденные программой последовательности ребер, соответствующие АОЕ-цепям в указанном графе, приведены в табл. 1;

16

1 2 4 12 2 10 1 1

1 6 1 13 3 12 0 2

1 5 2 5 4 13 0 2

1 4 3 7 15 11

4 5 4 14 6 3 0 2

4 8 5 8 7 14 0 2

4 3 6 10 4 8 1 1

3 8 7 15 9 6 0 2

3 7 8 11 10 15 0 2

3 2 9 1 7 11 1 1

2 7 10 16 12 9 0 2

2 6 11 2 1 16 0 2

6 5 16 3 2 14 0 3

5 8 13 6 5 15 0 3

8 7 14 9 8 16 0 3

7 6 15 12 11 13 0 3

Рис. 4. Пример плоского связного 4-регулярного графа с помеченными вершинами и ребрами и данные входного файла для этого графа

Таблица 1

Найденные программой АОЕ-цепи для графа, приведенного на рис. 4

Вершина АОЕ-цеиь (ребра)

1 2-13-14-15-16-12-11-9-8-7-6-5-3-4-7-10-1

2 11-16-13-14-15-9-8-6-5-3-2-12-1-4-7-10

3 8-15-16-13-14-6-5-3-2-12-11-9-10-1-4-7

4 5-14-15-16-13-3-2-12-11-9-8-6-7-10-1-4

• граф, имеющий одну точку сочленения (см. рис. 5а); найденные программой последовательности ребер, соответствующие АОЕ- цепям в указанном графе, приведены в табл. 2; •

Таблица 2

Найденные программой АОЕ-\\еш1 для графа, приведенного на рис. 5а

Вершина АОЕ-щлъ (ребра)

1 2-4-3-9-8-5-7-10-6-1

2 2-3-4-6-5-8-7-10-9-1

3 5-8-7-10-9-3-4-2-1-6

4 7-5-8-9-3-4-2-1-6-10

• граф, имеющий более одной точки сочленения, но все точки сочленения имеют один и тот же ранг (см. рис. 56); найденные программой последовательности ребер, соответствующие АОЕ-цепям в указанном графе, приведены в табл. 3;

• граф, имеющий точки сочленения разных рангов (см. рис. 6); найденные программой последовательности ребер, соответствующие АОЕ-цепям в указанном графе, приведены в табл. 4.

Разработанное программное обеспечение в рассмотренных случаях корректно находит решение задачи для корректно заданных исходных данных. Так как других случаев

а) Пример плоского связного 4-регулярного графа с помеченными вершинами и ребрами, имеющего одну точку сочленения ранга 2 в вершине 5

б) Пример плоского связного 4-регулярного графа с помеченными вершинами и ребрами, имеющего две точки сочленения ранга 2 в вершинах 2 и 3

Рис. 5. Примеры графов, имеющих точки сочленения

Таблица 3

Найденные программой АОЕ-цепи для графа, приведенного на рис. 56

Вершина АОЕ-щлъ (ребра)

1 3-4-2-6-8-7-5-1

4 5-7-8-6-2-4-3-1

4

Рис. 6. Пример плоского связного 4-регулярного графа с помеченными вершинами и ребрами, имеющего точки сочленения ранга 2 в вершинах 5, 7, 9, 11 и ранга 3 в вершинах 13, 14, 15 и 16

Таблица 4

Найденные программой АОЕ-цетш для графа, приведенного на рис. 6

Вершина АОЕ-цепь (ребра)

1 9- 8-23-30-24-25-31-26-27-32-29-22-7-20-21-28-19-18-17-16-15-14-13-12-11 10- 2-3-4-5-6-1

2 5-6-1-9-8-23-30-24-25-31-26-27-32-29-22-7-20-21-28-19-18-17-16-15-14-13-12-11 10-2-3-4

3 17-16-27-32-29-22-23-30-24-25-31-26-15-14-13-12-11-10-9-8-7-20-21-28-19-18-4-5-6-1-2-3

4 13-12-25-31-26-27-32-29-22-23-30-24-11-10-9-8-7-20-21-28-19-18-17-16-15-14-3-4-5-6-1-2

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

Заключение

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

В статье предложен подход для построения A-цепи с упорядоченным охватыванием (ЛОЕ'-цепи) в плоском связном 4-регулярном графе. Разработанный алгоритм позволяет решить задачу за полиномиальное время.

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

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

Литература

1. Dewil R., Vansteenwegen Р., Cattrysse D. A Review of Cutting Path Algorithms for Laser Cutters // International Journal Adv Manuf. Technol. 2016. Vol. 87. P. 1865-1884. DOI: 10.1007/s00170-016-8609-l

2. Makarovskikh T.A., Panyukov A.V., Savitsky E.A. Mathematical Models and Routing Algorithms for CAD Technological Preparation of Cutting Processes // Automation and Remote Control. 2017. Vol. 78, No. 4. P. 868-882.

3. Dewil R., Vansteenwegen P., Cattrysse D., Laguna M., Vossen T. An Improvement Heuristic Framework for the Laser Cutting Tool Path Problem // International Journal of Production

Research. 2015. Vol. 53, Issue 6. Р. 1761-1776. DOI: 10.1080/00207543.2014.959268

4. Hoeft J., Palekar U. Heuristics for the Plate-cutting Travelling Salesman Problem. // HE Transactions. 1997. Vol. 29(9). P. 719-731.

5. Dewil R., Vansteenwegen P., Cattrysse D. Construction Heuristics for Generating Tool Paths for Laser Cutters. // International Journal of Production Research. 2014. Vol. 52(20). P. 5965-5984.

6. Петунии А.А., Ченцов А.Г., Ченцов П.А. К вопросу о маршрутизации перемещений при листовой резке деталей // Вестник Южно-Уральского государственного университета. Серия: Математическое моделирование и программирование. 2017. Т. 10, № 3. С. 25-39. DOI: 10.14529/mmpl70303

7. Chentsov A.G., Grigoryev А.М., Chentsov A.A. Solving a Routing Problem with the Aid of an Independent Computations Scheme / / Вестник Южно-Уральского государственного университета. Серия: Математическое моделирование и программирование. 2018. Т. 11, № 1. С. 60-74. DOI: 10.14529/mmpl80106

8. Petunin A., Stylios С. Optimization Models of Tool Path Problem for CNC Sheet Metal Cutting Machines. // 8th IFAC Conference on Manufacturing Modelling, Management and Control MIM 2016 Troyes, France, June 28-30, 2016. IFAC-PapersOnLine, 2016. Vol. 49. P. 23-28.

9. Chentsov A., Khachay M., Khachay D. Linear Time Algorithm for Precedence Constrained Asymmetric Generalized Traveling Salesman Problem / / 8th IFAC Conference on Manufacturing Modelling, Management and Control MIM 2016, Troyes, France, June 28-30, 2016. IFAC-PapersOnLine, 2016. Vol. 49. P. 651-655.

10. Khachay M., Neznakhina K. Towards Tractability of the Euclidean Generalized Travelling Salesman Problem in Grid Clusters Defined by a Grid of Bounded Height // Communications in Computer and Information Science. 2018. Vol. 871. P. 68-77.

11. Manber U., Israni S. Pierce Point Minimization and Optimal Torch Path Determination in Flame Cutting // J. Manuf. Syst. Vol 3(1). 1984. P. 81-89. DOI: 10.1016/0278-6125(84)90024-4

12. Panyukova T.A. Constructing of OE-postman Path for a Planar Graph // Вестник

Южно-Уральского государственного университета. Серия: Математическое

моделирование и программирование. 2014. Т. 7, № 4. С. 90-101. DOI: 10.14529/mmpl40407

13. Garfinkel R.S., Webb I.R. On Crossings, the Crossing Postman Problem, and the Rural Postman Problem. // Networks. 1999. Vol. 34(3). P. 173-180.

14. Manber U., Bent S.W. On Non-intersecting Eulerian Circuits // Discrete Applied Mathematics. 1987. Vol. 18. P. 87-94. DOI: 10.1016/0166-218X(87)90045-X

15. Fleischner H. Eulerian Graphs and Related Topics. Part 1, Vol. 1.: Ann. Discrete

Mathematics, 1990. № 45.

16. Филиппов А.Ф. Элементарное доказательство теоремы Жордана // Успехи математических наук. 1950. Т. 5, Вып. 5(39). С. 173-176.

17. Makarovskikh Т., Panyukov A. The Cutter Trajectory Avoiding Intersections of Cuts // IFAC-PapersOnLine. 2017. Vol. 50, Issue 1. P. 2284-2289.

18. Makarovskikh Т., Panyukov A. Development of Routing Methods for Cutting out Details // CEUR Workshop Proceedings. 2018. Vol. 2098. P. 249-263. URL: htpp://ceur-ws. org/ Vol-2098 (дата обращения: 20.07.2018).

19. Зыков А.А. Основы теории графов. М.: Вузовская книга, 2004. 664 с.

20. Makarovskikh Т.А., Panyukov A.V., Savitsky Е.А. Mathematical Models and Routing Algorithms for CAM of Technological Support of Cutting Processes / / ScienceDirect IFAC-PapersOnLine 49-12. 2016. P. 821-826. DOI: 10.1016/j.ifacol.2016.07.876

21. Szeider S. Finding Paths in Graphs Avoiding Forbidden Transitions // Discrete Applied Mathematics. 2003. No. 126. P. 261-273. DOI: 10.1016/S0166-218X(02)00251-2

22. Panyukova T. Chain Sequences with Ordered Enclosing // Journal of Computer and System Sciences International. 2007. Vol. 46, No. 1(10). P. 83-92. DOI: 10.1134/S1064230707010108

23. Савицкий Е.А. Использование алгоритма поиска в ширину для определения уровней вложенности ребер плоского графа / / Информационные технологии и системы: Труды Третьей междунар. науч. конф. Челябинск: Изд-во ЧелГУ, 2014. С. 43-45.

24. Панюкова Т.А. Цепи с упорядоченным охватыванием в плоских графах // Дискретный анализ и исследование операций. Часть 2. 2006. Т. 13, № 2. С. 31-43.

Макаровских Татьяна Анатольевна, к.ф.-м.н., доцент, кафедра математического

и компьютерного моделирования, Южно-Уральский государственный университет

(национальный исследовательский университет) (Челябинск, Российская Федерация)

DOI: 10.14529/cmsel90103

SOFTWARE FOR CONSTRUCTING OF A-CHAINS WITH ORDERED ENCLOSING FOR A PLANE CONNECTED

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

4-REGULAR GRAPH

© 2019 T.A. Makarovskikh

South Ural State University (pr. Lenina 76, Chelyabinsk, 454080 Russia)

E-mail: Makarovskikh. [email protected] Received: 24.07.2018

The task of constructing the cutting path of the tool when the part cut off from the sheet does not require additional cuts and the trajectories of cuts intersections are forbidden (the touches are allowed) may arise in CAD/CAM-systems of technological preparation of cutting processes. Formally, such a task can be formulated as the problem of constructing a self-non-intersecting chain in a plane Euler graph representing a homeomorphic image of a cutting plan. Finally, the tasks of constructing routes satisfying the technological constraints are reduced to defining an А-chain with ordered enclosing for a plane connected 4-regular graph. This article is devoted to the algorithm for finding such a chain. The execution of this algorithm consists of two stages. At the first stage, cut-vertices of rank к are identified and splitted. At the second stage, the construction of the chain starts from an arbitrary vertex incident to the outer face; the first edge of the chain is chosen to be an edge of maximal rank incident to a given vertex; next, an iterative process is organized where, as the next edge, an unpassed edge of maximum rank is chosen, which is the left or right neighbour of the current one. It is shown that the algorithm constructs a route with the indicated properties in linear time for a plane connected 4-regular graph. The considered algorithms are realized as a computer program. The examples of some test problems are given in this paper.

Keywords: plane graph, path, cutting plan, polynomial-time algorithm, CAD/CAM.

FOR CITATION

Makarovskikh Т.А. Software for Constructing of А-chains with Ordered Enclosing for a Plane Connected 4-regular Graph. Bulletin of the South Ural State University. Series: Computational Mathematics and Software Engineering. 2019. vol. 8, no. 1. pp. 36-53. (in Russian) DOI: 10.14529/cmsel90103.

This paper is distributed under the terms of the Creative Commons Attribution-Non Commercial 3.0 License which permits non-commercial use, reproduction and distribution of the work without further permission provided the original work is properly cited.

References

1. Dewil R., Vansteenwegen P., Cattrysse D. A Review of Cutting Path Algorithms for Laser Cutters. International Journal Adv Manuf. Technol. 2016. vol. 87. pp. 1865-1884. DOI: 10.1007/s00170-016-8609-l

2. Makarovskikh T.A., Panyukov A.V., Savitsky E.A. Mathematical Models and Routing Algorithms for CAD Technological Preparation of Cutting Processes. Automation and Remote Control. 2017. vol. 78, no. 4. pp. 868-882.

3. Dewil R., Vansteenwegen P., Cattrysse D., Laguna M., Vossen T. An Improvement Heuristic Framework for the Laser Cutting Tool Path Problem. International Journal of Production Research. 2015. vol. 53, iss. 6. pp. 1761-1776. DOI: 10.1080/00207543.2014.959268

4. Hoeft J., Palekar U. Heuristics for the Plate-cutting Travelling Salesman Problem. HE Transactions. 1997. vol. 29(9). pp. 719-731.

5. Dewil R., Vansteenwegen P., Cattrysse D. Construction Heuristics for Generating Tool Paths for Laser Cutters. International Journal of Production Research. 2014. vol. 52(20). pp. 5965-5984.

6. Petunin A.A., Chentsov A.G., Chentsov P.A. On the Issue of Routing Movements in Sheet Cutting of Parts. Vestnik Yuzhno-Ural’skogo gosudarstvennogo universiteta. Seriya: Matematicheskoe modelirovanie i programmirovanie [Bulletin of the South Ural State University, Series: Mathematical Modelling and Programming], 2017. vol. 10, no. 3. pp. 25-39. DOI: 10.14529/mmpl70303 (in Russian)

7. Chentsov A.G., Grigoryev A.M., Chentsov A.A. Solving a Routing Problem with the Aid of an Independent Computations Scheme. Vestnik Yuzhno-Ural’skogo gosudarstvennogo universiteta. Seriya: Matematicheskoe modelirovanie i programmirovanie [Bulletin of the South Ural State University, Series: Mathematical Modelling and Programming]. 2018. vol. 11, no. 1. pp. 60-74. DOI: 10.14529/mmpl80106 (in Russian)

8. Petunin A., Stylios C. Optimization Models of Tool Path Problem for CNC Sheet Metal Cutting Machines. 8th IFAC Conference on Manufacturing Modelling, Management and Control MIM 2016 Troyes, France, June 28-30, 2016. IFAC-PapersOnLine, 2016. vol. 49. pp. 23-28.

9. Chentsov A., Khachay M., Khachay D. Linear Time Algorithm for Precedence Constrained Asymmetric Generalized Traveling Salesman Problem. 8th IFAC Conference on Manufacturing Modelling, Management and Control MIM 2016, Troyes, France, June 28-30, 2016. IFAC-PapersOnLine, 2016. vol. 49. pp. 651-655.

10. Khachay М., Neznakhina К. Towards Tractability of the Euclidean Generalized Travelling Salesman Problem in Grid Clusters Defined by a Grid of Bounded Height. Communications in Computer and Information Science. 2018. vol. 871. pp. 68-77.

11. Manber U., Israni S. Pierce Point Minimization and Optimal Torch Path Determination in Flame Cutting. J. Manuf. Syst. 1984. vol. 3(1). pp. 81-89. DOI: 10.1016/0278-6125(84)90024-4

12. Panyukova T.A. Constructing of OE-postman Path for a Planar Graph. Bulletin of the South Ural State University, Series: Mathematical Modelling, Programming and Computer Software. 2014. vol. 7, no. 4. pp. 90-101. DOI: 10.14529/mmpl40407

13. Garfinkel R.S., Webb I.R. On Crossings, the Crossing Postman Problem, and the Rural Postman Problem. Networks. 1999. vol. 34(3). pp. 173-180.

14. Manber U., Bent S.W. On Non-intersecting Eulerian Circuits. Discrete Applied Mathematics. 1987. vol. 18. pp. 87-94. DOI: 10.1016/0166-218X(87)90045-X

15. Fleischner H. Eulerian Graphs and Related Topics. Part 1, Vol.l. Ann. Discrete Mathematics. 1990. no. 45.

16. Filippov A.F. The Elementary Proof of Jordan Theorem Uspekhi matematicheskikh nauk [Successes of Mathematical Sciences]. 1950. vol. 5, no. 5(39). pp. 173-176. (in Russian)

17. Makarovskikh T., Panyukov A. The Cutter Trajectory Avoiding Intersections of Cuts. IFAC-PapersOnLine. 2017. vol. 50, issue 1. pp. 2284-2289.

18. Makarovskikh T., Panyukov A. Development of Routing Methods for Cutting out Details. CEUR Workshop Proceedings. 2018. vol. 2098. pp. 249-263. Available at: htpp://ceur-ws. org/Vol-2098 (accessed: 20.07.2018).

19. Zykov A.A. Osnovy teorii grafov [The Basics of Graph Theory]. Moscow, High School Book, 2004. 664 p. (in Russian)

20. Makarovskikh T.A., Panyukov A.V., Savitsky E.A. Mathematical Models and Routing Algorithms for CAM of Technological Support of Cutting Processes. ScienceDirect IFAC-PapersOnLine 49-12. 2016. pp. 821-826. DOI: 10.1016/j.ifacol.2016.07.876

21. Szeider S. Finding Paths in Graphs Avoiding Forbidden Transitions. Discrete Applied Mathematics. 2003. no. 126. pp. 261-273. DOI: 10.1016/S0166-218X(02)00251-2

22. Panyukova T. Chain Sequences with Ordered Enclosing. Journal of Computer and System Sciences International. 2007. vol. 46, no. 1(10). pp. 83-92. DOI: 10.1134/S1064230707010108

23. Savitskiy E.A. Using of Wide-with Search Algorithm for Ranking of Edges of a Plane Graph. Informacionnye tekhnologii i sistemy: tr. Tret’ej mezhdunar. nauch. konf. [Information technologies and systems: Proceedings of the Third International conference]. Chelyabinsk, Publishing of Chelyabinsk State University. 2014. pp. 43-45. (in Russian)

24. Panyukova T.A. Chains with Ordered Enclosing for Plane Graphs. Diskretnyj analiz i issledovanie operacij. Chast’ 2. [Discrete analysis and operation research. Part 2]. 2006. vol. 13, no. 2. pp. 31-43. (in Russian)

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