DOI QR코드

DOI QR Code

A Region-based Comparison Algorithm of k sets of Trapezoids

k 사다리꼴 셋의 영역 중심 비교 알고리즘

  • 정해재 (성신여자대학교 컴퓨터정보학부)
  • Published : 2003.12.01

Abstract

In the applications like automatic masks generation for semiconductor production, a drawing consists of lots of polygons that are partitioned into trapezoids. The addition/deletion of a polygon to/from the drawing is performed through geometric operations such as insertion, deletion, and search of trapezoids. Depending on partitioning algorithm being used, a polygon can be partitioned differently in terms of shape, size, and so on. So, It's necessary to invent some comparison algorithm of sets of trapezoids in which each set represents interested parts of a drawing. This comparison algorithm, for example, may be used to verify a software program handling geometric objects consisted of trapezoids. In this paper, given k sets of trapezoids in which each set forms the regions of interest of each drawing, we present how to compare the k sets to see if all k sets represent the same geometric scene. When each input set has the same number n of trapezoids, the algorithm proposed has O(2$^{k-2}$ $n^2$(log n+k)) time complexity. It is also shown that the algorithm suggested has the same time complexity O( $n^2$ log n) as the sweeping-based algorithm when the number k(<< n) of input sets is small. Furthermore, the proposed algorithm can be kn times faster than the sweeping-based algorithm when all the trapezoids in the k input sets are almost the same.

반도체 생산을 위한 마스크 자동 생성과 같은 기하 객체를 다루는 응용에서는, 사다리꼴로 분할된 수 많은 다각형으로 구성된 도면에 새로운 다각형을 추가하거나 삭제하기 위해 사다리꼴 삽입, 삭제, 및 검색 연산을 한다. 동일한 다각형에 대해 분할된 사다리꼴은 사용된 분할 알고리즘에 따라 모양, 크기 등에 있어서 다르게 된다. 사다리꼴로 구성된 기하 객체를 다루는 프로그램을 검증하는 것과 같은 예에서는 구성된 도면의 관심 부분을 나타내는 여러 사다리꼴 셋을 비교하는 알고리즘이 필요하다 본 논문에서는 k개 도면의 관심 영역으로부터 각각 추출된 사다리꼴로 구성된 k 셋이 주어졌을 때, 그 k 셋이 형성하는 기하 도형틀이 동일한지 아닌지를 비교하는 새로운 알고리즘을 제시한다. 제시된 알고리즘은 각 셋이 공히 n개의 사다리꼴을 포함하고 있다고 가정할 때, O(2$^{k-2}$ $n^2$(log n+k))시간 복잡도를 가진다. 제시된 알고리즘은 입력셋의 수 k(<$n^2$ log n)를 가지며, 특히 k 셋이 동일하거나 대부분 동일한 사다리꼴들로 구성되어 있을 경우 훑기 중심 알고리즘보다 kn배까지 빠른 것은 나타났다.다.

Keywords

References

  1. J. O'Rourke, 'Computational Geometry in C (2nd ed.),' Cambridge University Press, New York, pp.264-268, 1998
  2. S. Nahar and S. Sahni, 'Fast algorithm for polygon decomposition,' IEEE Transactions on Computer-Aided Design, 7(4), pp.473-483, Apr., 1988 https://doi.org/10.1109/43.3182
  3. Takao Asano, Tetsuo Asano, Hiroshi Imai, 'Partitioning a polygin regin into trapezoids,' JACM, 33(2), pp.290-312, 1986 https://doi.org/10.1145/5383.5387
  4. J. Ousterhout, 'Corner Stitching : A Data-Structuring Technique for VLSI Layout Tools,' IEEE Transactions on CAD, 3(1), pp.87-99, 1984 https://doi.org/10.1109/TCAD.1984.1270061
  5. F. P. Preparata and M. I. Shamos, 'Computational Geometry : An Introduction,' Springer-Verlag, New York, 1988
  6. Haejae Jung, 'Algorithms for external beam dose computation,' Ph.D. thesis, University of Florida, 2000
  7. V. J. Dielissen and A. Kaldewaij, 'Rectangulat partition is polynomial in two dimensions but NP-complete in three,' Information Processing Letters, 38(1), pp.1-6, Apr., 1991 https://doi.org/10.1016/0020-0190(91)90207-X
  8. E. Horowitz, S. Sahni and D. Mehta, 'Fundamentals of Data Structures in C++,' W. H. Freeman, San Fransico, 1995
  9. D. Sleator and R. Tarjan, 'Self-adjusting binary search trees,' Journal of the Association for Computing Machinary, 32(3), pp.652-686, 1985 https://doi.org/10.1145/3828.3835
  10. J. Benrley, T. Ottmann, 'Algorithms for reporting and counting gemnetric intersections,' IEEE Transactions on Computer, C-28, pp.643-647, 1979 https://doi.org/10.1109/TC.1979.1675432
  11. I. J. Balaban, 'An optimal algorithm for finding segment intersections,' Proc. 11th Annual ACM Symposium on Computational Geometry, pp.211-219, 1995 https://doi.org/10.1145/220279.220302
  12. K. L. Clarkson and P. W. Shor, 'Applications of random sampling in computational geometry, II,' Discrete & Computational Geometry, 4, pp.387-421, 1989 https://doi.org/10.1007/BF02187740