гильотинные порезы против общих порезов


18

Проблемы с обрезкой - это проблемы, при которых определенный большой объект следует разрезать на несколько небольших объектов. Например, представьте , у вас есть завод , который работает с большими листами сырого стекла, шириной и длиной . Есть несколько покупателей, каждый из которых хочет неограниченное количество маленьких стеклянных листов. Покупатель хочу листы длина и ширину . Ваша цель состоит в том, чтобы вырезать из большого листа маленькие листы, чтобы общее использованное количество было максимальным, а количество отходов - минимальным (существуют также другие типы проблем резки и упаковки ).WLяLявеся

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

Мой вопрос: есть ли верхняя и нижняя границы для соотношения между оптимальным срезом гильотины и оптимальным общим срезом?

Связанная работа: Song et al. (2009) описывают алгоритм, который использует ограниченный тип гильотинных надрезов - дважды гильотинные надрезы . Используя геометрические ограничения, они доказывают, что отношение между максимальным срезом гильотины и максимальным срезом гильотины ограничено . Я ищу сопоставимый результат относительно соотношения между максимальным срезом гильотины и максимальным общим срезом.67

Ответы:


9

Хотя это не так уж сложно, я могу предложить нижнюю и верхнюю границы и для наихудшего соотношения между гильотинными и общими разрезами.1/43/4

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

введите описание изображения здесь

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

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

введите описание изображения здесь

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

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


Хороший ответ - добро пожаловать в CS Stack Exchange!
Дэвид Ричерби
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.