Abstract
This paper considers a problem to find a set of intervals containing all the points for the given n points and m intervals on a line, This is a special case of the set cover problem, well known as an NP-hard problem. As optimization criteria of the problem, there are minimizing the number of intervals to cover the points, maximizing the number of points each of which is covered by exactly one interval, and so on. In this paper, the intervals have weights and the sum of weights of intervals to cover a point is defined as a membership of the point. We will study the problem to find an interval cover minimizing the maximum of memberships of points. Using the dynamic programming method, we provide an O(m2)-time algorithm to improve the time complexity O(nm log n) given in the previous work.
본 논문은 직선상에 n개의 점들과 m개의 구간들이 주어 질 때, 모든 점들을 포함하는 구간들의 집합을 구하는 문제를 다룬다. 이러한 구간들의 집합을 점들의 구간 커버(interval cover)라고 부른다. 이 문제는 NP-hard 문제로 잘 알려진 집합 커버(set cover)의 특별한 경우이다. 이 문제의 최적화 기준으로 커버하는 구간 개수의 최소화, 점을 커버하는 구간이 1개인 점들의 개수 최대화 등을 생각할 수 있다. 본 논문에서는 구간에 가중치가 주어지는 경우, 각 점을 커버하는 구간들의 가중치 합을 그 점의 맴버쉽으로 정의한다. 그리고 점들의 맴버쉽의 최대값을 최소화하는 구간 커버를 찾는 문제를 연구한다. 동적계획법 설계를 이용하여, 이전 연구의 시간 복잡도 O(nm log n)를 개선하는 O(m2)시간 알고리즘을 제안한다.