이진 지도에서 제한 시설 최적 배치
이 논문은 0·1 로 이루어진 이진 행렬 형태의 지도에서 다양한 형태(정사각형, 체스보드 패턴, 대각선 1·0 패턴, 다이아몬드, 빈 사각형 등)의 최적 시설 위치를 찾는 알고리즘을 제시한다. 각 문제에 대해 O(m·n) 혹은 O(n²) 시간 복잡도의 동적 계획법·스택·전처리 기법을 활용한 해법을 제시하고, 연결 성분의 깊이 계산까지 확장한다.
저자: Mugurel Ionut Andreica, Cristina Teodora Andreica, Madalina Ecaterina Andreica
본 논문은 이진 행렬(0·1) 형태로 표현된 지도에서 제한된 형태의 시설을 최적 위치에 배치하는 여러 문제를 정의하고, 각각에 대해 효율적인 알고리즘을 제시한다. 전체 구조는 다음과 같다.
1. **정사각형 패턴 탐색**
- **단색 정사각형**: 각 셀 (i, j) 에 대해 오른쪽·아래쪽 연속 0·1 길이(RM, DM)를 재귀적으로 계산하고, 세 값을 최소화해 해당 위치에서 가능한 가장 큰 정사각형의 변 길이 SQ(i, j)를 구한다. 시간 복잡도는 O(m·n).
- **체스보드 패턴 정사각형**: 인접 셀의 값이 서로 다른지를 검사하는 추가 조건을 DP에 포함시켜, 기존 단색 정사각형 알고리즘을 그대로 활용한다. 동일하게 O(m·n) 시간에 최적 해를 얻는다.
- **대각선 1·0 패턴 정사각형**: 주대각선에만 1을 두고 나머지는 0인 정사각형을 찾기 위해, 대각선 방향의 연속 0·1 길이(IM)와 일반적인 RM, DM을 조합한 DP 식을 만든다. 역시 O(m·n) 시간에 해결한다.
2. **다이아몬드(45도 회전 정사각형) 탐색**
- 다이아몬드는 네 개의 직각 이등변 삼각형으로 분해될 수 있다. 각 방향(동남, 동북, 남서, 북서)별 최대 삼각형 크기 TSE, TSW, TNE, TNW 를 DP 로 구한다.
- 셀 (i, j) 에서 가능한 다이아몬드 반지름은 네 삼각형 크기의 최소값이므로, 전체 최적 다이아몬드의 크기를 O(m·n) 시간에 산출한다.
- 또한, 다이아몬드의 상단 셀을 기준으로 하는 D(i, j) 를 정의해, 동일한 복잡도로 구현 가능함을 보였다.
3. **빈 직사각형(Empty Rectangle) 최대 면적**
- n개의 점이 주어지면, x·y 좌표를 정렬해 2n+1×2n+1 이진 행렬을 만든다. 행·열마다 실제 거리 차이를 반영한 가변 높이·폭(cw, rh)을 부여한다.
- 각 셀에 대해 위쪽으로 연속된 0의 높이(ch) 를 누적하고, 스택 기반 ‘계단식’ 알고리즘을 적용해 각 행을 기준으로 가장 큰 0-채워진 직사각형을 찾는다.
- 열 폭이 1이 아닌 가중치를 고려하도록 수정했으며, 전체 복잡도는 O(n²) 이다. 기존 O(n·log² n) 알고리즘보다 구현이 단순하지만, 입력 규모가 작을 때는 충분히 실용적이다.
4. **주변선 합이 최대인 사각형**
- 실수값 행렬 B 에 대해, 두 행 l₁, l₂ 를 고정하고 해당 구간의 열 합 v(l₁,l₂)(j)를 전처리된 열 누적합 Scol 로 O(1) 에 계산한다.
- 1차원 최대 부분합 문제와 유사하게, 왼쪽 경계와 오른쪽 경계를 동적으로 갱신하는 u와 w 배열을 정의한다.
- u(l₁,l₂)(j) 는 현재 열을 포함한 최적 사각형의 왼쪽 경계를, w(l₁,l₂)(j) 는 오른쪽 경계를 나타내며, 재귀식은 u(j)=max{v(j), u(j‑1)+B(l₁,j)+B(l₂,j)} 와 w(j)=u(j‑1)+v(j) 로 구성된다.
- 모든 행 쌍에 대해 위 과정을 수행하면 전체 최대 주변선 합을 O(m²·n) 시간에 구할 수 있다.
5. **연결 성분 깊이(Depth) 계산**
- 검은 성분(4방향 연결)과 흰 성분(8방향 연결)을 정의하고, 경계 셀을 초기 깊이 1(또는 2) 로 설정한 뒤, 양방향 큐를 이용해 BFS 형태로 깊이를 전파한다.
- 현재 셀과 이웃 셀의 색이 동일하면 같은 깊이, 다르면 깊이+1 로 할당한다. 이렇게 하면 같은 색 성분 내부의 모든 셀은 동일 깊이를 갖게 된다.
- 검은 성분의 깊이는 D(i,j)/2 로 해석되며, 이 정보를 통해 ‘포갠’ 구조(예: 검은 성분이 흰 성분을 둘러싸는 경우)를 정량화할 수 있다. 알고리즘은 O(m·n) 시간에 전체 행렬을 처리한다.
**결론 및 향후 과제**
논문은 위와 같은 여러 패턴 탐색 문제에 대해 선형 혹은 준선형 시간 복잡도의 해법을 제시함으로써, 이진 지도 기반 시설 배치 문제에 대한 이론적 기반을 마련한다. 다만, 일부 문제는 입력 제약(예: 정사각형이 반드시 단색이어야 함) 때문에 실무 적용에 제한이 있을 수 있다. 향후 연구에서는 보다 일반적인 패턴(불규칙 형태, 가중치가 섞인 지도)이나 동적 업데이트(점 추가·삭제) 상황에 대한 알고리즘 확장이 필요하다.
원본 논문
고화질 논문을 불러오는 중입니다...
댓글 및 학술 토론
Loading comments...
의견 남기기