Научная статья на тему 'Вероятностный анализ различных шельфовых алгоритмов упаковки прямоугольников в полосу'

Вероятностный анализ различных шельфовых алгоритмов упаковки прямоугольников в полосу Текст научной статьи по специальности «Математика»

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

Аннотация научной статьи по математике, автор научной работы — Кузюрин Н. Н., Поспелов А. И.

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

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

Текст научной работы на тему «Вероятностный анализ различных шельфовых алгоритмов упаковки прямоугольников в полосу»

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

H.H. Кузюрин, А.И. Поспелов, {nnkuz,ap}@ispras.ru ИСП РАН, 109004, Москва, Б.Коммунистическая, 25

Аннотация. Рассматривается задача упаковки множества прямоугольников в вертикальную полосу (strip packing problem). Изучается важный подкласс онлайновых алгоритмов для этой задачи — так называемые шельфовые алгоритмы. Предложен общий метод вероятностного анализа шельфовых алгоритмов, позволяющий для многих шельфовых алгоритмов оценивать математическое ожидание незаполненной площади, в предположении, что высота и ширина каждого прямоугольника являются случайными величинами.

1. Введение

В задаче упаковки в полосу (strip packing) цель состоит в упаковке множества прямоугольников в вертикальную полосу единичной ширины так, что стороны прямоугольников должны быть параллельны сторонам полосы (вращения запрещены). При анализе по худшему случаю обычно минимизируют необходимую для упаковки высоту полосы, а при анализе в среднем — математическое ожидание незаполненной площади (от нижней границы прямоугольников в упаковке до верхней) [8, 3]. Эта задача возникает во многих контекстах и имеет много приложений, в частности, при разработке СБИС, построении оптимальных расписаний для кластеров и т.д. Ее частными случаями являются задача упаковки в контейнеры (bin packing) и задача об то-процессорном расписании.

'Работа выполнена при поддержке РФФИ, проект05-01-00798.

При анализе on-line версии задачи упаковки в полосу в [ ] были введены так называемые шельфовые алгоритмы. Упаковка состоит из серии слоев (шельфов). Высоты слоев выбираются из множества {?’„}, где rn = (1 — 6)п, S — некоторый параметр, 0 < 6 < 1. Прямоугольники упаковываются в минимальные по высоте шельфы, в которые они входят, т.е. если высота прямоугольника 1ц, упаковываем его в шельфы высоты г„, такой что ?’n+i < h, < г„. Упаковка в слои заданной ширины и порождение новых шельфов осуществляется некоторой одномерной эвристикой упаковки в контейнеры.

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

Мы будем рассматривать вероятностное распределение U ([0,1]) — равномерное распределение на отрезке [0,1]. Всюду в дальнейшем будем считать, что для каждого прямоугольника высота 1ц и ширина га, имеют равномерное распределение на отрезке [0,1]. Будем предполагать, что все случайные величины га,, hi — независимы в совокупности. В дальнейшем будем обозначать через £ математическое ожидание площади, не заполненной прямоугольниками, между основанием полосы и верхней границей самого верхнего шельфа. Будем предполагать, что число прямоугольников N — бесконечно большая величина (N —> оо). Отметим, что вероятностному анализу различных эвристик одно и двумерной упаковки посвящено много работ [ ,3,4, 5, 6,7 ].

Пусть для одномерной эвристики Е выполнено следующее соотношение для математического ожидания разности

где L — число шельфов, в которые эвристика Е упаковывает набор отрез-

ков {їй,;}.

Теорема 1. Пусть для Е выполнено соотношение: /(ЛГ) = ІV"log,3ІV, где О < а < 1, /3 > 0. Тогда для алгоритма А(Е) справедлива следующая оценка:

Отметим, в частности, что для трех важных эврнстнк упаковки в контейнеры известно: для First Fit (FF): f(N) = iV2/3, для Best Fit (BF):

f(N) = iV1/2(logiV)3/4, H для нанлучшей онлайновой эврнстнкн (best

on-line) BO: f{N) = (NlogN)x/2 [ ]. Поэтому из теоремы сразу выте-

кает, что для шельфового алгоритма A(FF) £ = 0(N3/4), для A(BF) £ = О (Ж2/3 (log Ж)1/2) [ ], для А(ВО) £ = О (Ж2/3 (log Ж)1/3). Первые два соотношения дают ответ на вопрос нз [ ].

Известно, что если отказаться от требования, чтобы алгоритм работал в режиме on-line, то, как показано в [ ], можно достичь опенки средней величины незаполненной площади £ = О (N1/2 logAT). Открытым вопросом является достижимость подобной опенки в классе on-line алгоритмов.

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

Теорема 2 .Для любого шельфового алгоритма с произвольной одномерной эвристикой упаковки в контейнеры при распределении w,: и по закону U ([0,1]) справедлива следующая оценка: при N5 ^ оо

Выбирая 5 = N(a х)/(2 log^2 N, получаем оценку £ = О (N1/{2-a) log^2-“» N) .

при 5 1 = О, (ЛГ)

£ = П(ЛГ).

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

2. Доказательство теоремы 1

Пусть зафиксированы N —число прямоугольников, и {?’п}^=0 — высоты шельфов. Каждый ¡-й прямоугольник определён своей высотой 1ц и шириной га.,, которые являются независимыми в совокупности случайными величинами. Для краткости будем обозначать через Ь набор (/?•!,... /?лг), а через лу — набор (г«1,... гул?). Пусть ЛГ„ обозначает число прямоугольников, попавших в шельфы высоты г„, т.е.

Заметим, что случайная величина ЛГ„ не зависит от w, а зависит только от Ь.

соты г,,. Так как к, имеет равномерное распределение то случайная величина ЛГ„ имеет биномиальное распределение, такое что Р{Л^„ = А;} = (*1)рк( 1 — р)м~к, где р = О < к < N. Пусть 5„ — число шельфов высоты гп, образо-

вавшихся в процессе упаковки.

Используя для условного математического ожидания Е(Х|У) равенство ЕХ = Е(Е(Х|У)), оценим ожидаемую пустую площадь:

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

Е = О (V2/3)

Пусть {го™, — набор прямоугольников, упакованных в шельфы вы

ОО .IV ОО дт- ОО ДТ-

Е ^ /-, >■, ^ «•:/•: =Е^Г„5„--=Е^Г„Е(5„|Ь)--. (1)

Откуда, ввиду независимости ю™ от Ь, получаем оценку для числа шельфов

Е(5„|Ь) =Е

Ь | + О (ЛГ“ 1о/ ЛГ„) =^+0 (лГ“ 1о^ ЛГ„) .

Используя это соотношение, получим, что математическое ожидание пустой площади равно

т = ЕЕ'

гг=0 гг=0

аг(г„ - г„+1;

00 ЛГ 00 Г ЛГ

Е ^ Г„ Е (5„ | Ь) - - = Е ]Г Г„ -^ + 0 (ЛГ“ 1о/ ЛГ„)

Ж

Т

£

гг=0

+ Ег„о(л^1о/ЛГ„)

В последнем равенстве мы использовали очевидное соотношение:

ЕЖ„ = ЛГ(?’„ — ?’п+1). Учитывая, что гп = (1 — 6)п, 0 < 6 < 1, получаем для некоторой константы с > 0:

я V-» N N

Е < с 1о/ ^ Е( 1 - ^ Е + 2(23*) - Т•

Для получения верхней опенки воспользуемся неравенством Иенсена

ЕЩ < (ЕЖ,,)".

Поскольку]? = гп — гп+1 = (1 — 6)п6 н ЕЖ„ = Ир, то Е(ЛГ„)“ < (ЛГр)“. Тогда оценим сумму в (2), обозначив ее через Ех.

оо оо

Е1 < ^(1-<^)"ЕЛ/'“ < ^(1 — й')п(Ж(1 — 6)п6)а.

п=О п=О

Далее, имеем

ОО оо

£х < £(1 “ <^)"(ЛГ(1 - <*)"<*)“ ^ Е(1 “ д')П(^( 1 - ¿Т<5)“ =

п=0 гг=0

(ЛГ£)“

_ 1-(1-г)“+1-

(2)

Таким образом, получаем оценку для £.

Выбирая 6 = \о^^2 ЛГ, получаем оценку

£ = О (Ж1/(2-а) 1оё(^/(2-“))

3. Доказательство теоремы 2

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

Используя известную оценку для оптимального алгоритма заполнения одномерного контейнера (см. [ ]), получаем:

Откуда, ввиду независимости го" от Ь, получаем оценку для числа шельфов

Подставляя это выражение в равенство (1), получим, что математическое ожидание пустой площади равно

І= 1

00 1\Т 00 Г 1\Т

Е ]Г Г„ Е (5„ І її) - - = Е ]Г Г„ -у- + п (

+ п (\/ж)

N

~4

п=0 гг=0

_ \ ' №(гп — ?’„+! ) -2., Гп о

+ Е?'ПП

В последнем равенстве мы нспользовалн очевидное соотношение:

ЕЖ„ = ЛГ(?’„ — ?’п+х). Учитывая, что?’,, = (1 — 6)п, 0 < 6 < 1, получаем:

Е=£(1-г)"Е!1И+2^-т-

гг=0 4 7

Получим теперь оценку снизу Имеем (учитывая только первую сумму):

£>Х>-дУ £ аД/2(1У(1 ~Р)м~к^

П=о к: \к-Мр\<2ЫМр^Мр ^ '

°° /ЛГ\

> £(1-дТ№-21пл^у/ад1/2 Е (д.¡р'^1-?)1

к: \k—Np\<2\nNp^/Np

/А Т\

\Ы-к

\ к }у ^~Р

п—0 к: ¡к — Мр|<2 1п N р\/ N р

Используем известное неравенство для вероятностей больших уклонений

[12]: для любого 0 < а < 1

£ - 2е~ЛГр“2/3-_ ЛГ I ЛГ пи ' '

(3)

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

к: \к—Мр\>Мра

Пусть Со больший нз двух корней уравнения

\/С = 41пС.

Тогда, если Жр > Со, то

2е-1п2ЛГр <

ЛГр — 21п Выбрав а = , получим:

£ > 1 - 2е-1п2лГр.

1 -

к: | А;—Ир\ >2 1п Ирл/Ыр

Используя полученные неравенства и вспоминая, чтор = ¿(1 — 6)п, получаем для некоторой константы с' > 0:

£>с' 22 (1-<5)п(Мр)1/2 = с,(Ш)1''2 22 (1-й')(3/2)п-

{п| Мр>Со} {п| Мр>Со}

Условие Жр > Со равносильно следующему условию на п

\nN6-\nCo П~ —1x1(1 — 5) '

Обозначая 1 через К и преобразуя сумму, получим

К о / о / 1п ^¿-1п с о

Е > ¿(Ш)1/2^1 ~ ¿)(3/2)п > ЛЫб)1'21 ~ (1 ~ Й) _ ^

п=0 ^ '

Далее имеем:

1 — (1 — (5)3/2( 1ПЛп(~1-Д)0 ) 1 - ('1п^1')3/2

Е > С/(^)3/2 1_(1_Д)3/3--- ^ С'^112 I _ (1 ^)3/а ^

^ ;М1/2 (л (\П СЛ3/2^

- С ¿1/2 ^

При N5 —> оо имеем

/Ж1/2\

Е = П (¿1ж) •

Для оставшейся части суммы справедливо неравенство:

N ( 1 Л N ( д \ N _

> —д.

2 V2 — ^ 2/ 4 \2-6J ~ 8

Таким образом, получаем общую нижнюю оценку:

/Л/1/2 £ = п(_+Ж).

Нетрудно проверить, что минимум достигается при 6 = N г/3, что дает нижнюю оценку

Е = П (ж2/3) .

Осталось рассмотреть случай 6 1 = S1(N). Имеем для некоторой константы с > 0:

ОО

1/5

N

Е > с]Г(1 -ёГЕМ^2 > с]Г( 1 -¿)1/5X>1/2L W >

гг=0

гг=0

fc=l

1/5

> - 5)”(1 - 5(1 - >

п=0

1/5

> се-Ц 1 - ^(1 - > се-2Ж(1 - б)1*-1 = ЩЫ).

п=0

Доказательство теоремы 2 завершено.

Литература

[1] B.S. Baker, J.S. Schwartz, Shelf algorithms for two dimensional packing problems. SIAMJ. Computing, (1983) 12, 508-525 18

[2] E.G. Coffman, Jr., C. Courcoubetis, M.R. Garey, D.S. Johnson, P.W. Shor, R.R. Weber, M. Yannakakis, Perfect packing theorems and the average-case bahavior of optimal and online bin packing, SIAM Review, (2002) 44 (1), 95— 108. 18

[3] RM. Karp, M. Luby, A. Marchetti-Spaccamela, A probabilistic analysis of multidimensional bin packing problems, In: Proc. Annu. ACM Symp. on Theorty of Computing, 1984, pp. 289-298. 17, 18, 19

[4] P. W. Shor, The average-case analysis of some on-line algorithms for bin packing. Combinatorica (1986) 6, 179-200. 18

[5] P. W. Shor, How to pack better than Best Fit: Tight bounds for average-case on-line bin packing, Proc. 32nd Annual Symposium on Foundations of Computer Science, (1991) pp. 752-759. 18, 19

[6] E. G. Coffman, Jr., D. S. Johnson, P. W. Shorand G. S. Lueker. Probabilistic analysis of packing and related partitioning problems, Statistical Science (1993)8,40-47. 18, 19,22

[7] E. G. Coffman, Jr., P. W. Shor. Packings in two dimensions: Asymptotic average-case analysis of algorithms, Algorithmica (1993) 9, 253-277. 18

[8] J. Csirik, G.J. Woeginger, Shelf Algorithms for On-Line Strip Packing. Inf. Process. Lett. (1997), 63(4), 171-175. 17

[9] Кузюрнн H.H., Поспелов А.И., Вероятностный анализ шельфовых алгоритмов упаковки прямоугольников в полосу, Дискретная математика, 2006, т. 18, N 1, с-76-90. 19

[10] J. Csirik, D.S. Johnson, С. Kenyon, J.B. Orlin, P.W. Shor, R.R. Weber, On the Sum-of-Squares Algorithm for Bin Packing, Proc. Annu. ACM Symp. on Theory of Computing, Portland, Oregon, May 21-23, 2000, pp. 208-217.

[И] C. Kenyon and E. Remila, A near optimal solution to a two-dimensional cutting stock problem, Mathematics of Operations Research, (2000) 25, 645-656.

[12] R. Motwani and P. Raghavan, Randomized algorithms, Cambridge Univ. Press, 1995. 23

[13] Ee-Chien Chang, W. Wang, M.S. Kankanhalli, Multidimensional online bin-packing: An algorithm and its average-case analysis, Information Processing Letters, 48, 1993, 121-125.

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