절대 2배 근사 알고리즘으로 푸는 2차원 박스 포장 문제
초록
본 논문은 회전이 금지된 직사각형들을 단위 정사각형 빈에 채우는 2차원 Bin Packing 문제에 대해, 모든 입력에 대해 최악의 경우 2배 이하의 빈 개수만을 사용함을 보장하는 절대 근사 비율 2의 알고리즘을 제시한다. 이 비율은 P≠NP 가정 하에 최적임을 증명한다.
상세 분석
이 논문은 기존 연구가 주로 비대칭적인 입력 규모에 대해 “점근적 근사 비율”(asymptotic approximation ratio)을 분석한 것과 달리, 입력 크기에 관계없이 항상 2배 이하의 해를 제공하는 절대 근사 비율(absolute approximation ratio)에 초점을 맞춘다. 핵심 아이디어는 입력 인스턴스를 두 가지 경우로 나누어 처리하는 것이다. 첫 번째는 최적 해가 1인 경우, 즉 모든 직사각형을 하나의 빈에 넣을 수 있는 경우이며, 두 번째는 최적 해가 2 이상이지만 일정 상수 k 이하인 경우이다.
OPT=1인 경우를 다루기 위해 저자들은 ‘wide’(너비 >½)와 ‘high’(높이 >½) 아이템을 각각 W와 H로 정의하고, 이들 사이의 충돌을 최소화하는 구조적 배치를 설계한다. 특히, δ‑wide 아이템 집합 Wδ의 총 높이가 특정 함수 (δ−ε)/(1+2δ) 이하인 경우, Steinberg 알고리즘과 BCS(두 차원 배낭) 알고리즘을 조합해 두 개의 빈에 정확히 포장할 수 있음을 보인다. 이때 δ는 ε(≈1/200)보다 큰 값으로 선택 가능하며, 실제 δ는 각 아이템의 너비에 따라 선형 탐색으로 찾을 수 있다.
만약 위 조건을 만족하는 δ가 존재하지 않으면, 저자들은 넓은 아이템과 높은 아이템 각각의 총 면적이 일정 수준(ξ≈0.075) 이상임을 증명한다. 이는 넓은 아이템 집합 W와 높은 아이템 집합 H가 서로 겹치지 않도록 배치할 수 있는 충분한 “면적 여유”를 제공한다. 이 면적 하한을 이용해, W와 H를 각각 좌측 상단·우측 하단에 스택 형태로 배치하고, 남은 작은 아이템들을 Steinberg 알고리즘으로 채워 두 개의 빈에 모두 포장한다.
OPT가 1보다 크고 k 이하인 경우에는, 먼저 면적이 ε(고정 상수) 이상인 큰 아이템들을 완전 탐색으로 배정하고, 나머지 아이템을 wide와 high로 구분한다. 이후 네 가지 경우(예: w(H) > ½, w(H) ≤ ½ 등)에 따라 서로 다른 포장 전략을 적용한다. 여기서도 BCS 알고리즘을 활용해 각 부분 집합의 면적을 거의 최대로 끌어올리고, Steinberg 정리를 통해 남은 공간을 채운다.
전체 알고리즘의 시간 복잡도는 각 단계에서 O(n log²n / log log n) 정도이며, 다항식 시간 안에 구현 가능하다. 최종적으로, 모든 입력에 대해 alg(I) ≤ 2·OPT(I) 를 만족함을 증명하고, P≠NP 가정 하에 2보다 작은 절대 근사 비율은 존재하지 않음을 보인다.
이 논문은 절대 근사 비율을 최우선 목표로 삼음으로써, 실제 시스템에서 작은 입력이나 제한된 자원 상황에서도 신뢰할 수 있는 성능 보장을 제공한다는 점에서 실용적 의의를 가진다. 또한, Steinberg와 BCS 같은 기존 강력한 서브루틴을 적절히 결합하고, 넓은·높은 아이템의 구조적 특성을 정량화한 방법론은 향후 2차원 포장 문제의 다른 변형(예: 회전 허용, 다중 자원 스케줄링)에도 확장 가능성을 시사한다.
댓글 및 학술 토론
Loading comments...
의견 남기기