Аспекты использования алгоритма силовой укладки графа в промышленной технологии укладки кабелей в судостроении

УДК 658.512

Н.В. Старостин, С.В. Небайкин

АСПЕКТЫ ИСПОЛЬЗОВАНИЯ АЛГОРИТМА СИЛОВОЙ УКЛАДКИ ГРАФА В ПРОМЫШЛЕННОЙ ТЕХНОЛОГИИ УКЛАДКИ КАБЕЛЕЙ В СУДОСТРОЕНИИ

Национальный исследовательский Нижегородский государственный университет им. Н.И. Лобачевского

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

Ключевые слова: укладка графа, силовой алгоритм, кабельная арматура, программное обеспечение.

Введение

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

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

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

Постановка задач в терминах предметной области

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

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

© Старостин Н.В., Небайкин С.В.

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

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

Формальная постановка задач

В задаче подбора размеров имеет место множество M вариантов кабельной арматуры (типовых кабельных коробок или подвесов), каждый из которых характеризуется собственными габаритами прямоугольной области: Wm е R - ширина и Нт е R - высота, m е M .

В общем случае под моделью в обозначенных задачах предлагается рассматривать размещение набора n кругов (соответствуют кабельным изделиям) различных диаметров d е R, i — 1, n в заданной прямоугольной области кабельной арматуры. В этом случае под решением для заданного m е M понимается размещение центров кругов p — (p, p2,...pn), гдеp — (x, y ) е R2, удовлетворяющее следующим ограничениям.

1. Круги не должны пересекаться

II Рг - Pj 11^ dг + dj , i Ф j, i, j = ;

2. Круги не должны в^1ходить за пределы ограничивающей области

dt < xt < Wm - dt, i — 1n.

d, < y, < Hm - d,, i — 1,n.

В рамках заданной арматуры m е M под множеством D будем понимать множество всех возможных размещений кабельных изделий. В задаче подбора размеров требуется подобрать арматуру минимальной ширины (4):

W

При этом величина max( y + dt) описывает высоту общего пучка кабельной арматуры.

i=1,n

Требуется найти допустимую укладку пучка минимальной высоты:

Т

При наличии требований размещения с учетом групп предлагается ввести неориентированный граф G(V, E), в котором каждая вершина соответствует кабельному изделию, а каждое ребро графа , v . }е E отражает факт принадлежности соответствующих инцидентным вершинам кабельным изделий одной группе. В этом случае получаем следующий критерий:

С

Здесь коэффициент г > 0, он определяет важность компактной упаковки групп кабельных изделий в общем пространстве коробки или подвеса.

Задачу (1-6) будем называть многокритериальной задачей подбора размеров и расчета способа укладки. Очевидно, что задача расчета порядка и способа укладки в рамках заданной арматуры является частным случаем задачи (1-6), в которой |М| = 1. Переход от трех критериев (4-6) к однокритериальному случаю можно осуществить ранжированием критериев по степени важности. В этом случае задачу (1-3) с лексикографической сверткой критериев (4-6) будем называть общей задачей подбора размеров и расчета способа укладки. Таким образом, имеем 6 вариантов постановки задач.

Сложность и обзор подходов

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

Указанная задача относится к классу задач раскроя и упаковки и является комбинаторной ЫР-трудной задачей [1,2], поэтому получение точного решения за полиномиальное время в общем случае не представляется невозможным. Стоит отметить, что в открытой печати встречаются работы с положительным примером применения точных переборных схем решения [3] для относительно небольших задач. Актуальность проблемы «больших» трудно-решаемых задач привела к появлению значительного числа работ, в которых предлагаются различные приближенные и эвристические подходы. На практике нередко выбирается «жадные» стратегии [4] упаковки. Много работ посвящено применению итерационных методов и рандомизированным стратегиям, направленным на преодоление локальных экстремумов [4, 5], таких как имитации отжига [6], запретных направлений и многократного рестарта [7], генетических алгоритмов [8, 9] и других. Отдельный практический интерес имеют так называемые многоуровневые алгоритмы [10], основанные на последовательной редукции исходных данных, переходу к более простой задаче, ее решении и восстановлении решения в терминах исходной задачи. В работе [11] продемонстрировано, как использование итерационного поиска и техники многоуровневой редукции позволяет преодолевать локальные экстремумы.

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

Метод подбора типовых размеров кабельной арматуры

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

Однако в ряде случаев можно сократить издержки без уменьшения точности решения задачи. Рассмотрим случай лексикографическая свертки вида ((4), (5), (6)) или ((4), (6), (5))1.

1 «Важность» критерия

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

В этом случае предлагается осуществлять выбор размера кабельной арматуры по схеме дихотомии [8] на множествеМ , упорядоченном согласно (7):

а < Ь < Жь )v

На каждой итерации дихотомии происходит выбор значения т е М и находится решение одного частного случая задачи (1-6). Общее число итераций определяется как М|.

Силовая модель укладки кабелей

Поиск решения частной задачи расчета порядка и способа укладки в рамках заданной арматуры предлагается построить на базе известного подхода силовой укладки графа (Югсе&геСеё) [5], который основан на моделировании сил притяжения и отталкивания между вершинами. Классические алгоритмы силовой укладки построены на итерационной схеме поиска экстремума функции энергии системы, которая описывается в виде интегральной характеристики системы сил (8):

+

(г,] У-Е (¡^):

Здесь ЕаШ и ^ описывают энергию сил притяжения и отталкивания, соответственно. Коэффициент линейной свертки 1 и показатели степени а и г определяют степень влияния каждого компонента на итоговую укладку. Общепринятыми ограничениями являются: 1 е [0,1], а > 0 и г < 0, т.е., силы притяжения растут, а силы отталкивания убывают с увеличением расстояния.

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

Ограничения (1), обеспечивающие отсутствие пересечений, предлагается описать как (9):

Р1

Ч'

г, 2, г < di + d,;

чч']

Г, Л г, > d1 + d].

где г] =11 Рг - Р] ll, ' Ф ], i, ] = 1 П .

Ограничения (2) и (3), контролирующие выход /-го кабеля г = 1, п за пределы ограничивающей области, задаются как силы отталкивания от граничных областей (10), (11):

Р (Рг ) =

Р (Рг ) =

Требование (4) в силу того, что |М| = 1 можно отбросить.

- X |3, х < di;

I

X - Жт + di\ , X' > Жт - dг;

0, < X < - di.

г - Уг |3, Уг < ^ ;

У - Нт + di\, Уг > Нт - di ;

0, di < Уг < Нт - di.

<

Требование (5), направленное на минимизацию высоты укладки пучка кабелей, с точки зрения силы, действующей на /-ый кабель г = 1, п , пример вид (12):

Требование (6), направленное на компактное размещение групп кабелей, с точки зрения каждой пары вершин графа примет вид (13):

¥6

В результате система требований задачи (1 -6) трансформировалась в систему сил, действующих на вершины графа (9-13). Обобщенную функцию цели в этом случае можно записать через сумму норм всех действующих сил на все объекты графа (14):

р

у1еУ {у1 }еЕ

где ¥у (р, ) = ^ (р,) + ^з (р,) + ^ (р,), ^ (р,, р} )= ^ (р,., р})+ ^ (р,, р}).

Задача поиска оптимального расположения вершин графа с точки зрения критерия (14) будем называть силовой моделью задачи (1-6). Для решения данной задачи будем использовать итерационные алгоритмы, основанные на градиентной оптимизации.

Реализация алгоритма силовой укладки вершин графа

Алгоритм силовой укладки графа стартует с некоторого начального решения. На каждой итерации алгоритм для каждой вершины вычисляет суммарный вектор сил (9-13), оказывающих влияние на ее расположение. Далее выполняется пересчет положения вершин, вычисляется общее значение функции цели (14). Наилучшее с точки зрения функции цели расположение вершин сохраняется в качестве рекордного результата. Нередко в реализацию классического алгоритма включают условия останова: по числу итераций, по времени работы, по переходу в стадию стагнации - некоторое время (количество итераций) не наблюдается регистрация нового рекорда.

Особенностью данного алгоритма является его квадратичная вычислительная сложность для каждой итерации, которая оценивается как 0(п2), что ограничивает его использование при решении задач сверх больших размерностей. На практике, производительности классического алгоритма силовой укладки графа достаточно для решения задач укладки кабелей. Количество кабелей в реальных задачах, как правило, находится в пределах нескольких сотен. При появлении задач большей размерности, возможно применение подходов, изложенных в [10, 11].

Алгоритм силовой укладки должен стартовать с некоторого начального размещения вершин на плоскости. В этом качестве может быть использовано либо случайное размещение, либо размещение, сгенерированное при помощи некоторого «жадного» алгоритма [4]. В простом случае это может быть алгоритм, помещающий кабели в область укладки в порядке убывания их диаметров.

Описание программного обеспечения

На основе приведенного алгоритма разработано программное обеспечение (далее -ПО) «Компоновщик», которое позволяет автоматизировать решение задач размещения кабелей в кабельных коробках и подвесках.

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

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

Рис. 1. Перечень кабельной арматуры

Добавить кабель X

название [Первый кабель |

тип кабеля |_КМ-НР 19x1.5

мэркэ кабеля ЬКМ-НР

внешний диаметр кабеля (мм) 18

число жил 19

сечение (мм2) 1.5

допуск ©ООО О О О

нет Т/. 4'/. £•/. 8'/. № т

Отменить

Рис. 2. Добавление кабеля в задачу

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

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

Рис. 3. Решение задачи

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

Результаты промышленной эксплуатации системы

ПО «Компоновщик» прошло апробацию и внедрено в промышленную эксплуатацию в ЗАО «Сормовское Электромонтажное Предприятие» (г. Нижний Новгород). До внедрения ПО использовались расчеты в «ручном режиме», что на практике приводило либо к завышенным габаритам коробок/подвесов, в результате чего не оптимально использовались материалы, либо к обратной ситуации, когда габариты кабельной арматуры оказывались заниженными, что вело к дополнительным работам и затратам. За период эксплуатации ПО общее число некорректного подбора кабельной арматуры практически отсутствует, что говорит о его высокой эффективности и надежности.

Заключение

В рамках данной работы была исследована прикладная задача компоновки (укладки) кабельных изделий в кабельные короба и подвески прямоугольного сечения типовых размеров, построена математическая модель и разработан метод решения на основе алгоритма силовой укладки графа. Разработанная методика была реализована в программном обеспечении «Компоновщик», позволяющем решать практические задачи укладки кабелей в корпусе судна при его проектировании. ПО внедрено в промышленную эксплуатацию и более 10 лет успешно функционирует в ЗАО «Сормовское Электромонтажное Предприятие» (г. Нижний Новгород).

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

1. Hifi, M. Approximate algorithms for constrained circular cutting problems / M. Hifi, R. M'Hallah // Computers & Operations Research. Volume 31, Issue 5, 2004. - P. 675-694.

2. Гэри, М. Джонсон Д. Вычислительные машины и труднорешаемые задачи / М. Гэри, Д. Джонсон. - М.: Мир, 1982, - 416 с.

3. Новокрещенов, А.А. Программно-аппаратные средства повышения эффективности использования вычислительных ресурсов в полнопереборных задачах автоматизированного размещения элементов. Информационно-измерительные и управляющие системы / А.А. Новокрещенов, В.П. Хра-нилов. - 2013. - Т. 11. - № 7. - С. 77-80.

4. Huang, W.Q. Greedy algorithms for packing unequal circles into a rectangular container / W.Q. Huang, Y.Li, H Akeb & C M. Li // Journal of the Operational Research Society, 2005, - Р. 539-548.

5. Fruchterman, T. Graph drawing by force-directed placement / T. Fruchterman, E. Reingold // Software. - Pract. Exp. - 1991. - № 21(11). - P. 1129-1164.

6. Zhang, Defu & Liu Packing Different-sized Circles into a Rectangular Container Using Simulated Annealing Algorithm / Defu & Liu Zhang, Yanjuan & Chen Shengda // International Conference on Computational Intelligence, - Istanbul, Turkey, Proceedings 2004, - P. 388-391.

7. Fu, Zhanghua Iterated tabu search for the circular open dimension problem / Zhanghua Fu, Huang Wen-qi, Lu Zhipeng // European Journal of Operational Research. - 2013. - Vol. 225. - Р. 236-243.

8. Старостин, Н.В. Генетические алгоритмы решения задачи отображения графа / Н.В. Старостин, М.А. Панкратова // Вестник Нижегородского университета им. Н.И. Лобачевского. - 2013. - № 51. - С. 204-209.

9. Старостин, Н.В. Многоуровневый эволюционно-генетический метод размещения прямоугольников на плоскости / Н.В. Старостин, И.О. Седых, А.Н. Силаев // Вестник Нижегородского университета им. Н.И. Лобачевского. - 2009. - № 5. - С. 163-168.

10.Батищев, Д.И. Многоуровневый алгоритм решения задачи компоновки интегральных схем / Д.И. Батищев, Н.В. Старостин, А.В. Филимонов // Системы управления и информационные технологии. - 2007. - Т. 29. - № 3. - С. 48-52.

11. Старостин, Н.В. Многоуровневый итерационный алгоритм декомпозиции графа // Системы управления и информационные технологии. - 2015. - Т.61. - №3. - C. 27-30.

Дата поступления в редакцию: 04.04.2019

N.V. Starostin, S.V. Nebaikin

ASPECTS OF USING FORCE-DIRECTED GRAPH-DRAWING ALGORITHM IN INDUSTRIAL TECHNOLOGY OF CABLE INSTALLATION IN SHIPBUILDING

Lobachevsky State University of Nizhny Novgorod

Purpose: Cable fittings selection is an important part of ship engineering. The paper considers cable fittings selection automation task for choosing a minimal size fitting to house the defined cable set. We formulized the multicriterial fittings size choice and evaluation of cable placement into the fittings task.

Approach: We use the lexicographical convolution of criterions to formalize the task. Considering the particular properties of cable fittings, we propose to use a dichotomy for a process of choosing. Modeling cable set as weighted graph allows using the force-directed algorithm to evaluate the cable set placement for the different fittings. Results: We used the considered methods while implementing the software, which allows solving applied tasks of finding an optimal cable fitting. One of the companies specialized on electrical installation (including one in the shipbuilding) successfully uses this software for several years.

Key words: graph drawing, force-directed algorithm, cable fittings, software.