Разбиение многосвязного ортогонального полигона с минимизацией протяженности стыков на основе линейного программирования | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 28 декабря, печатный экземпляр отправим 1 января.

Опубликовать статью в журнале

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

Валиахметова, Ю. И. Разбиение многосвязного ортогонального полигона с минимизацией протяженности стыков на основе линейного программирования / Ю. И. Валиахметова, В. А. Горбатов, Н. М. Пятаев. — Текст : непосредственный // Молодой ученый. — 2019. — № 20 (258). — С. 1-5. — URL: https://moluch.ru/archive/258/59083/ (дата обращения: 16.12.2024).



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

Ключевые слова: разбиение многосвязного ортогонального полигона, минимизация протяженности стыков, декомпозиция полигона, модель Бизли, линейное программирование

Введение

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

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

− прямоугольные элементы не должны перекрываться между собой и с препятствиями;

− прямоугольные элементы должны покрывать всю полезную площадь исходной области МОП.

Стыком между двумя прямоугольными элементами разбиения будем называть часть общего ребра двух прямоугольных элементов разбиения. Нередко на практике именно такие стыки подлежат дорогостоящей обработке — например, герметизации. Исходя из этих соображений, имеет смысл направлять целевую функцию на минимизацию суммарной протяженности стыков в разбиении МОП. В английском сегменте задача разбиения МОП с минимизацией протяженности стыков называется Minimum Edge Length Partitioning of Rectilinear Polygons with Interior Holes.

Задача эта является частным случаем задач геометрического покрытия. Важным признаком для определения алгоритмической сложности задач такого рода является многосвязность исходного МОП: в случае односвязного МОП задача имеет полиномиальную сложность, в противном случае задача является NP-трудной (даже если препятствия представлены в виде точек, через которые должна пройти хотя бы одна сторона простой фигуры) [1]. Ввиду неполиномиальной сложности алгоритмов решения таких задач, авторами многих работ уделяется значительное внимание различным упрощениям и приближенным методам.

Цель

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

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

1) Выбрать математическую модель и метод решения задачи.

2) Разработать алгоритм решения задачи на основе выбранного метода решения.

Постановка задачи разбиения МОП с минимизацией протяженности стыков

Имеется многосвязный ортогональный полигон , где — множество вершин полигона, — множество препятствий, заданных координатами верхней левой и правой нижней вершин (Рис.1).

Рис.1. Описание модели

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

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

Рис.2. Иллюстрация понятия «препятствие», «стык»

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

Изображение выглядит как снимок экрана

Описание создано с высокой степенью достоверности

Рис. 3. Минимизация количества простых фигур. 5 простых фигур, длина стыков — 17

Изображение выглядит как снимок экрана

Описание создано с высокой степенью достоверности

Рис. 4. Минимизация протяженности стыков. 7 простых фигур, длина стыков — 8

Модификация модели Бизли

Образуем множества и , содержащие в себе и координаты МОП и препятствий соответственно. И пусть — это все возможные точки растровой сетки.

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

— множество всех возможных непересекающихся прямоугольников, координаты вершин которых принадлежат множеству , причем точка k расположена правее и ниже точки j.

Из получим множество «плохих» прямоугольников , которые пересекаются хотя бы с одним препятствием из или лежат вне полигона.

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

Сформируем множество всех возможных прямоугольников с координатами из , кроме тех, которые пересекаются хотя бы с одним прямоугольником из . Опять же, точка k должна быть расположена правее и ниже точки j. Заметим также, что прямоугольники из могут пересекаться.

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

E:\Dropbox\Documents\Учеба\Научная деятельность\Иллюстрации\принадлежность точки.png

Рис.5. Точки 1,2,3 принадлежат прямоугольнику, а точки 4 и 5 — нет

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

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

Лемма 2: если для всех точек из выполняется это условие, значит выбранные прямоугольники образуют разбиение.

Переход к модели линейного программирования

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

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

Таким образом, функция цели: , где — периметр прямоугольника .

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

В результате решения этой модели симплексным методом станут известны значения всех . Совокупность прямоугольников , таких что , образует оптимальное разбиение исходной области МОП.

Выводы

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

Литература:

  1. Lingas A., Pinter R. Y., Rivest R. L., Shamir A., Minimum edge length partitioning of rectilinear polygons, Proc. 20th Allerton Conf. Comput., 1982, с. 53–63
  2. Teofilo F. Gonzales Handbook of Approximation Algorithms and Metaheuristics — Taylor & Francis LLC, 2007, с. 802–815
  3. J. E. Beasley, Bounds for Two-Dimensional Cutting — The Journal of the Operation Research Society, Vol. 36, No. 1 (Jan. 1985) с. 71–74.
Основные термины (генерируются автоматически): минимизация протяженности стыков, многосвязный ортогональный полигон, прямоугольник, линейное программирование, разбиение, задача, задача разбиения, исходная область, минимальная протяженность стыков, оптимальное разбиение.


Ключевые слова

линейное программирование, минимизация протяженности стыков, разбиение многосвязного ортогонального полигона, декомпозиция полигона, модель Бизли

Похожие статьи

Комбинированный алгоритм линейной оптимизации с поиском максимального потока на графе

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

Построение локально оптимальных систем с использованием проекционного метода

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

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

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

Эффективность применения поиска полным перебором минимального покрывающего подмножества вершин на неориентированном графе

В статье рассматривается эффективность метода полного перебора при поиске минимального покрывающего подмножества вершин на неориентированном графе.

Решение начальной задачи для линейных рекуррентных соотношений первого порядка в случае одношагового расщепления

Рассматривается начальная задача для неоднородного линейного рекуррентного соотношения первого порядка с операторными коэффициентами A,B, задаваемыми квадратными числовыми матрицами. Оператор A необратим, вследствие чего задача имеет решение не при к...

Аппроксимация полиномов n степени методом наименьших квадратов

В данной статье рассмотрено решение проблемы уменьшения суммы квадратов отклонений определённых функций от искомых переменных для полиномиальных уравнений n степени. Приведено подробное решение для уравнений 2 степени, рассматриваемой проблемы. Предс...

Расстояние от точки до многогранника в пространстве

В данной работе рассмотрена задача поиска минимального расстояния между многогранником и точкой, не лежащей внутри него. Предложен алгоритм решения этой задачи и способ его применения в 3D-моделировании.

Построение равноугольных жёстких фреймов

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

Реализация численного алгоритма метода вариаций в пространстве управлений

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

Математическая модель расчета распределения трафика в полносвязной сети методом контуров

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

Похожие статьи

Комбинированный алгоритм линейной оптимизации с поиском максимального потока на графе

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

Построение локально оптимальных систем с использованием проекционного метода

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

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

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

Эффективность применения поиска полным перебором минимального покрывающего подмножества вершин на неориентированном графе

В статье рассматривается эффективность метода полного перебора при поиске минимального покрывающего подмножества вершин на неориентированном графе.

Решение начальной задачи для линейных рекуррентных соотношений первого порядка в случае одношагового расщепления

Рассматривается начальная задача для неоднородного линейного рекуррентного соотношения первого порядка с операторными коэффициентами A,B, задаваемыми квадратными числовыми матрицами. Оператор A необратим, вследствие чего задача имеет решение не при к...

Аппроксимация полиномов n степени методом наименьших квадратов

В данной статье рассмотрено решение проблемы уменьшения суммы квадратов отклонений определённых функций от искомых переменных для полиномиальных уравнений n степени. Приведено подробное решение для уравнений 2 степени, рассматриваемой проблемы. Предс...

Расстояние от точки до многогранника в пространстве

В данной работе рассмотрена задача поиска минимального расстояния между многогранником и точкой, не лежащей внутри него. Предложен алгоритм решения этой задачи и способ его применения в 3D-моделировании.

Построение равноугольных жёстких фреймов

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

Реализация численного алгоритма метода вариаций в пространстве управлений

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

Математическая модель расчета распределения трафика в полносвязной сети методом контуров

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

Задать вопрос