Научная статья на тему 'Решение задачи оптимизации упаковки многогранников в параллелепипедную область на основе построения годографа вектор-функции плотного размещения'

Решение задачи оптимизации упаковки многогранников в параллелепипедную область на основе построения годографа вектор-функции плотного размещения Текст научной статьи по специальности «Математика»

CC BY
314
47
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
УПАКОВКА / ГОДОГРАФ ФУНКЦИИ ПЛОТНОГО РАЗМЕЩЕНИЯ / УСЛОВИЯ ВЗАИМНОГО НЕПЕРЕСЕЧЕНИЯ / ОПТИМИЗАЦИЯ

Аннотация научной статьи по математике, автор научной работы — Ягудин Рустем Расламович

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

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

Похожие темы научных работ по математике , автор научной работы — Ягудин Рустем Расламович

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

The current work considers the problem of dense packing of a non-convex polyhedrons into a minimal height parallelepiped container. The no-fit polyhedron based algorithm is proposed to solve described task. The no-fit polyhedrons is used not only for providing conditions of the polyhedrons mutual non-intersection but also for finding the placement points. Some examples and computational results are also given for public input data.

Текст научной работы на тему «Решение задачи оптимизации упаковки многогранников в параллелепипедную область на основе построения годографа вектор-функции плотного размещения»

выми процедурами и информационными системами приведено на рис. 3.

Для реализации этапов методики предусмотрено применение методов и моделей системного анализа: методик структуризации целей, методов организации сложных экспертиз, для реализации которых разработаны соответствующие автоматизированные диалоговые процедуры [1, 2]. При анализе целей создания и требований к МТК применяют методики структуризации и целей, разработанные в теории систем и системного анализа, для реализации которых применяют автоматизированные диалоговые процедуры анализа целей и функций (АДП АЦФ). При анализе вариантов конфигурации проектов МТК предлагается применять сетевые модели типа PERT и информационные модели [3], основанные на оценке степени влияния

компоненты МТК на реализацию целей и требований к МТК в анализируемый период развития.

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

СПИСОК ЛИТЕРАТУРЫ

1. Волкова, В.Н Теория систем и системный анализ: Учебник [Текст] / В.Н. Волкова, А.А. Денисов // Сер. Университеты России. -М.: Изд-во «Юрайт», 2010. -679 с.

2. Волкова, В.Н. Методы организации сложных экспертиз [Текст] / В.Н.Волкова, А.А.Денисов. -СПб.: Изд-во Политехн. ун-та, 2010. -128 с.

3. Денисов, А.А. Современные проблемы системного анализа: Учебник [Текст] / А.А. Денисов. -СПб.: Изд-во Политехн. ун-та, 2009. -304 с.

4. Черняк, Ю.И. Системный анализ в управлении экономикой [Текст] / Ю.И. Черняк. -М.: Экономика, 1975. -191 с.

УДК 004.9

Р.Р. Ягудин

РЕШЕНИЕ ЗАДАЧИ ОПТИМИЗАЦИИ УПАКОВКИ МНОГОГРАННИКОВ В ПАРАЛЛЕЛЕПИПЕДНУЮ ОБЛАСТЬ НА ОСНОВЕ ПОСТРОЕНИЯ ГОДОГРАФА ВЕКТОР-ФУНКЦИИ ПЛОТНОГО РАЗМЕЩЕНИЯ

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

Вычислительная сложность решения задачи трехмерной упаковки в общей постановке вынужда-

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

Одно из самых распространенных упрощений - фиксация ориентации ГО в пространстве или использование набора фиксированных ори-ентаций каждого из них.

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

Постановка задачи. Задачу плотной упаковки ориентированных ГО в трехмерном пространстве можно свести к решению следующей математической задачи.

Системный анализ и управление

Имеется набор T = {T1, T2, ..., Tn}, i = 1, n ориентированных трехмерных ГО, каждый из которых имеет свою собственную систему координат.

Область упаковки Q с ЭТ3 представляет собой прямоугольный параллелепипед Q = {(x,y,z) е е ЭТ3: 0 < x < L, 0 < y < W, 0 < z < H}, у которого L - длина, W - ширина объекта Q рассматриваются как константы, а H - высота объекта Q - как переменная величина.

Введем следующие обозначения: T (и.) - смещение объекта T. на вектор щ. е ЭТ3; cl а' - граничные точки объекта T.; int v' - внутренние точки объекта T.; H(T(U)) - минимальная высота объекта Q для параметров размещения U объектов множества T.

Упаковкой назовем такой набор параметров размещения U = {и1, U2, ..., un} объектов T(U) = дад T1(u1), ..., Tn (Un)}, при котором выполняются следующие условия:

I int V (щ) П int V (Uj) = 0, Vi = 1, n, Vj = 1, n, i Ф j

1 v щ) U Q = V (щ), Vi = In '

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

Требуется для ГО Tt,i = 1,n найти такую упаковку U, чтобы высота области размещения была минимальной: H(T(U)) ^ min .

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

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

Одним из применяемых способов для решения таких задач является метод покоординатного спуска (метод Гаусса-Зайделя), который приводит к разбиению процесса решения на две части:

1) моделирование плотного движения объектов в области размещения - внутренняя часть.

2) формирование и изменение последовательности упаковываемых объектов - внешняя (комбинаторная часть).

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

танного и развитого до Ф-функций в харьковской школе академика Ю.Г. Стояна [4], являющейся мировым научным лидером в этой области на протяжении многих десятилетий.

Под функцией плотного размещения двух соприкасающихся ГО понимается зависимость расстояния между некоторыми точками (полюсами) этих объектов от их взаимного плотного размещения (cl V П cl а Ф 0, int а' П int V = 0). Годограф вектора, направленного от одного полюса к другому, при плотном перемещении одного (подвижного) объекта вокруг другого (неподвижного) называется годографом функции плотного размещения (ГФПР). Таким образом, для упаковываемого объекта ГФПР представляет собой границу области, запрещенной для размещения этого объекта.

Описание особенностей применяемого метода решения. Пусть дан набор T = {T1, T2, ..., Tn}: T с ЭТ3, i = 1,n многогранников, каждый из которых имеет свою собственную систему координат и задается списками вершин и определяемых ими граней. Будем считать, что все точки V = (м',y',z') с ЭТ3, i = 1,n каждого из объектов Ti лежат в первом октанте, кроме того, каждый из них касается трех координатных плоскостей ((XOY), (YOZ), (ZOX)).

В этом случае точка П с минимальными координатами (М_, y', zi.) П = (и, У, z) е а' : М < и < И, y' < y < у', < z < z' , принадлежащая его парал-лелепипедной оболочке, совпадает с началом координат.

1. Моделирование плотного движения объектов в области размещения. Для обеспечения условий взаимного непересечения объектов между собой и с границей области размещения требуется построить ГФПР G. всех пар многогранников и для каждого многогранника построить ГФПР Gq. к внешней области зоны размещения ЭТ3 \ Q (хотя в данном случае эта область является невыпуклой, но ГФПР для нее строится тривиально).

Если рассматривать множество допустимых для размещения объекта точек, то оно представляет собой объединение областей, ограниченных различными ГФПР (в общем случае оно может быть несвязным). Точки локальных экстремумов будут являться вершинами вогнутостей, лежащими на границах этого объединения. Если один из пары объектов невыпуклый, то ГФПР будет также невыпуклым. Значит вершины невыпуклых ГФПР, образующие вогнутости, также являются точками локальных экстремумов. Следовательно, точка занесения при упаковке трехмерных невыпуклых

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

1) вершина с минимальными координатами по 02, Оу и Ох ГФПР размещаемого многогранника Т. к области размещения Q - О^. (это соответствует следующему расположению: размещаемый многогранник касается трех граней области размещения);

2) вершина, являющаяся точкой пересечения ребер ГФПР размещаемого многогранника Т к области размещения Q - О& и любых ГФПР размещаемого многогранника Т к уже размещенным

многогранникам Т.. - О.,] = 1,7—1 (размещаемый многогранник касается одного из уже размещенных многогранников и двух смежных граней области размещения);

3) вершина, являющаяся точкой пересечения граней двух различных ГФПР размещаемого многогранника Т к размещенным многогранникам Т.,. = 1,7 — 1 - О.. и грани ГФПР размещаемого многогранника Т к области размещения Q - ОQ. (размещаемый многогранник касается двух других уже размещенных многогранников и грани области размещения);

4) вершина, являющаяся точкой пересечения граней трех различных ГФПР размещаемого многогранника Т к размещенным многогранникам Т'.,]' = 1,/—1 - О. (размещаемый многогранник касается трех других уже размещенных многогранников);

5) вершина вогнутости ГФПР размещаемого многогранника Т к любому размещенному многограннику Т= 1,/ — 1 - О. (размещаемый многогранник касается трех граней уже размещенного многогранника).

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

2. Формирование и изменение последовательности упаковываемых объектов. В рассматриваемом подходе для формирования упаковок многогранников реализованы следующие способы организации внешней процедуры оптимизации:

первый подходящий с упорядочиванием ППсУ объектов в порядке убывания объемов

(простая схема), а также его улучшение - локальный поиск (циклическая схема);

«жадный» метод с выбором на каждом шаге того объекта, который укладывается лучше других (совмещенная схема);

GRASP (Greedy Randomized Adaptive Search Procedures - Жадные Рандомизированные Адаптивные Процедуры Поиска) является итеративным методом, при каждом запуске которого выполняются две процедуры: генерация начального решения и локальный поиск.

При каждой генерации могут использоваться различные значения параметра случайности а. Этот параметр используется в критерии проверки возможности выбора объекта для размещения:

H . < tfmn + а(Hmax - HmJ, (1)

где H - высота размещения объекта T ; Hmin = = min(Hj, H2, ..., Hn) - минимальные высоты размещения объектов; Hmax = max(Hj, H2, ..., Hn) -максимальные высоты размещения объектов.

При а = 0 неравенство (1) преобразуется к виду Ht < Hmax, тогда любой объект Tt, t = 1, n может быть выбран для размещения - «случайная» конструкция. При а = 1 неравенство (1) преобразуется к виду Ht < Hmin , тогда может быть выбран объект P., у которого Ht =Н^п - «жадная» конструкция. При любом значении а выбирается случайный объект из множества объектов, удовлетворяющих неравенству (1).

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

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

GRASP является комбинацией совмещенной и циклической схем.

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

Результаты вычислительного эксперимента. Для оценки эффективности алгоритмов использованы тестовые данные из общедоступных источников [5].

В статье Ю.Г. Стояна [5] приведены четыре примера, составленные из невыпуклых много-

4

Системный анализ и управление^

Таблица 1

Описание алгоритмов

Название Описание алгоритма

Стоян 1 Быстрый алгоритм построения начального решения Ю.Г. Стояна

Стоян 2 Метод сужающихся окрестностей Ю.Г. Стояна

Стоян 3 Произвольный поиск Ю.Г. Стояна

ППсУ Первый подходящий с упорядочиванием по невозрастанию

ППсУ + ЛП Первый подходящий с упорядочиванием по невозрастанию с локальным поиском

Жадный Жадный метод

GRASP Жадные рандомизированные адаптивные процедуры поиска

GRASP + ЛП Жадные рандомизированные адаптивные процедуры поиска с локальным поиском

гранников десяти типов.

Описание алгоритмов, использованных в вычислительном эксперименте, приведено в табл. 1. Первые три из них предложены Ю.Г. Стояном [5], остальные разработаны в рамках статьи.

Пример 1. Задан набор из 20 многогранников, по два каждого типа. Основание зоны упаковки

имеет ширину 30 см и длину 35 см. Результат -табл. 2, пример 1.

Лучшее решение для примера 1 найдено алгоритмом «GRASP + ЛП», предложенным в данной статье (рис. а).

Пример 2. Задан набор из 30 многогранников, по три каждого типа. Основание зоны упаковки

Таблица 2

Сравнение эффективности алгоритмов

Пример Название алгоритма Высота Заполнение, % Время, с

Стоян 1 43,717 17,71 0,57

Стоян 2 32 24,2 791,12

Стоян 3 35,61 21,75 791,12

1 ППсУ 45,17 17,14 4,16

ППсУ + ЛП 33,97 22,8 506,81

Жадный 51,6 15,01 23,18

GRASP 40,08 19,32 318,21

GRASP + ЛП 31,65 24,47 1285,62

Стоян 1 58,95 19,7 1,24

Стоян 2 49 23,71 1979,16

Стоян 3 49 23,71 1979,16

2 ППсУ 59,83 19,42 8,67

ППсУ + ЛП 50,7 22,91 1119,75

Жадный 62,65 18,54 62,65

GRASP 53,35 21,78 736,23

GRASP + ЛП 47,33 24,54 3184,96

Стоян 1 81,37 19,03 2,9

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

Стоян 2 63,21 24,5 5300

Стоян 3 66,28 23,37 5300

3 ППсУ 67,25 23,03 18,26

ППсУ + ЛП 60,47 25,61 3127,4

Жадный 86,59 17,89 203,32

GRASP 75,43 20,53 2571,7

GRASP + ЛП 64,43 24,04 8962

Стоян 1 94,56 20,47 4,26

Стоян 2 78,7 24,6 7406,64

Стоян 3 81,17 23,85 7406,64

4 ППсУ 87,21 22,2 35,01

ППсУ + ЛП 74,73 25,91 4728,14

Жадный 104,16 18,59 375,31

GRASP 91,72 21,11 4102,52

GRASP + ЛП 78,81 24,57 13315,4

Лучшие варианты размещения многогранников по заданиям из [5]

имеет ширину 30 см и длину 35 см. Результат -табл. 2, пример 2.

Лучшее решение для примера 2 найдено алгоритмом «GRASP + ЛП», предложенным в данной статье (рис. б).

Пример 3. Задан набор из 40 многогранников, по четыре каждого типа. Основание зоны упаковки имеет ширину 30 см и длину 35 см. Результат - табл. 2, пример 3.

Лучшее решение для примера 3 найдено алгоритмом «ППсУ + ЛП», предложенным в данной статье (рис. в).

Пример 4. Задан набор из 50 многогранников, по пять каждого типа. Основание зоны упаковки имеет ширину 30 см и длину 35 см. Результат -табл. 2, пример 4.

Лучшее решение для примера 4 найдено алгоритмом «ППсУ + ЛП», предложенным в данной статье (рис. г).

Результаты проведенных вычислительных экспериментов показали следующее.

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

• Время генерации размещения больше, т. к. в реализации Ю.Г. Стояна на вход алгоритма подаются невыпуклые многогранники, представлен-

ные в виде объединения выпуклых. Таким образом, быстрее решаются задачи построения ГФПР, проверки принадлежности точки многограннику и поиска пересечения многогранников. Однако сама проблема разбиения невыпуклого многогранника на выпуклые в статье Ю.Г. Стояна не рассматривается.

• При реализации внешней (оптимизационной) процедуры «GRASP с ЛП» работает лучше, чем «Первый подходящий с упорядочиванием + ЛП» при малых размерах задачи. Это можно объяснить тем, что начальные решения чаще попадают в окрестности локальных минимумов, позволяя более эффективно производить локальный поиск.

1. Верхотуров, М.А. Задача нерегулярного размещения геометрических объектов: современное состояние методов решения [Текст] / М.А. Верхотуров // Ресурсосберегающие технологии. -СПб.: ЦНИИТС, 2001. -С. 33-56.

2. Стоян, Ю.Г. Математические модели и оптимизационные методы геометрического проектирования [Текст] / Ю.Г. Стоян, С.В. Яковлев. -Киев: Наук. Думка, 1986. -286 с.

3. Верхотуров, М.А. Об одном решении задачи плотной упаковки выпуклых многогранников на основе годографа функции плотного размещения [Текст] /

В статье приведен алгоритм решения NP-трудной задачи упаковки невыпуклых многогранников в прямоугольный параллелепипед минимальной высоты, позволяющий получать результаты, превосходящие известные методы решения этой проблемы, и базирующийся на построении годографа функции плотного размещения для моделирования условий взаимного непересечения многогранников. В дальнейшем предполагается проведение углубленного вычислительного эксперимента по исследованию эффективности применения различных методов оптимизации при реализации внешней (оптимизационной) процедуры. СПИСОК ЛИТЕРАТУРЫ

М.А. Верхотуров, Г.Н. Верхотурова, Р.Р. Ягудин // Информационные системы и технологии. -Орел, 2012. -№ 4. -С. 31-39.

4. Верхотурова, Г.Н. Построение годографа функции плотного размещения двух выпуклых многогранников [Текст] / Г.Н. Верхотурова, Р.Р. Ягудин // Принятие решений в условиях неопределенности. -Уфа: Изд-во УГАТУ, 2010. -В7. -С. 150-157.

5. Stoyan, Y. Packing of convex polytopes into a parallelepiped [Text] / Y. Stoyan, N. Gil, G. Scheithauer. -Preprint. -Dresden, 2004. -32 p.

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