DOI QR코드

DOI QR Code

전수데이터를 생성하는 빠른 콤비나토리얼 프로그램

Fast Combinatorial Programs Generating Total Data

  • 투고 : 2013.02.21
  • 심사 : 2013.03.07
  • 발행 : 2013.03.31

초록

이 논문은 콤비나토리얼 문제인 조합(combination)과 순열(permutation), r-순열(r-permutation) 규칙에 의거하여 전수데이터를 생성하는 빠른 프로그램과 알고리즘을 다룬다. 이들 프로그램은 전수데이터 검사나 시뮬레이션의 입력값 선정과 같은 응용에서 사용된다. 본 연구에서는 조합, 순열, r-순열 문제의 규칙을 만족하는 프로그램들을 수집하여 부문별로 가장 빠른 프로그램을 선정하고 추가연구를 통하여 수집된 프로그램보다 수행시간을 단축한 프로그램을 완성하였다. 본 연구를 위해서 다음과 같은 선행조사가 이루어졌다. 첫째 인터넷에 공지된 백 개 이상의 프로그램을 수집하고 완성하였다. 둘째, 확보된 프로그램을 구동하여 수행시간을 측정하였고, 그 결과 가장 빠르게 수행하는 프로그램을 부분별로 발췌하였다. 셋째, 선별된 가장 빠른 프로그램에 대해서 알고리즘을 설명하고 의사코드로 정리하였다. 본 논문에서는 이러한 기초작업을 토대로 수행시간이 단축된 프로그램을 완성할 수 있었다. 첫째로 조합 문제에서는 재귀형식에서 비재귀형식으로 변형시켰고, 둘째로 r-순열 문제에서는 조합 프로그램과 순열 프로그램을 결합하는 방법으로 수행시간을 단축하였다. 분석결과에 따르면 전자와 후자는 수집한 가장 빠른 프로그램에 비해서 수행속도를 각각 22%에서 34%, 및 62%에서 226%의 범위로 개선하였다. 본 논문에서 제공한 의사코드를 바탕으로 응용에 쉽게 적용시킬 수 있으며, 전수조사 방법에 소요되는 수행시간을 예측하여 전수조사의 타당성 여부를 결정할 수 있다. 또한, 제공한 코드를 바탕으로 최소의 시간으로 전수데이터를 생성할 수 있다.

This paper deals with the programs and algorithms that generate the full data set that satisfy the basic combinatorial requirement of combination, permutation, partial permutation or shortly r-permutation, which are used in the application of the total data testing or the simulation input. We search the programs able to meet the rules which is permutations and combinations, r-permutations, select the fastest program by field. With further study, we developed a new program reducing the time required to processing. Our research performs the following pre-study. Firstly, hundreds of algorithms and programs in the internet are collected and corrected to be executable. Secondly, we measure running time for all completed programs and select a few fast ones. Thirdly, the fast programs are analyzed in depth and its pseudo-code programs are provided. We succeeded in developing two programs that run faster. Firstly, the combination program can save the running time by removing recursive function and the r-permutation program become faster by combining the best combination program and the best permutation program. According to our performance test, the former and later program enhance the running speed by 22% to 34% and 62% to 226% respectively compared with the fastest collected program. The programs suggested in this study could apply to a particular cases easily based on Pseudo-code., Predicts the execution time spent on data processing, determine the validity of the processing, and also generates total data with minimum access programming.

키워드

참고문헌

  1. Michael R. Fellows, et al., "Local Search: Is brute-force avoidable?," J. Comput. Syst. Sci. (JCSS), vol.78, no.3, p.707-719, 2012. DOI: http://dx.doi.org/10.1016/j.jcss.2011.10.003
  2. A. B. Morton, I. M. Y. Mareels, "An Efficient Brute Force Solution to the Network Reconf. Problem," IEEE Trans. on Power Delivery, vol.15, p.996-1000, Jul. 2000. DOI: http://dx.doi.org/10.1109/61.871365
  3. L. Barton, B. Sharangpani, "Statistical Analysis of Floating Point Flaw in the Pentium Processor," Intel Corp., Nov. 1994.
  4. Cleve Moler, "Pentium Division Bug Documents," MATLAB Central, May 2002.
  5. Selim G. Akl, Henk Meijer, Ivan Stojmenovic, "An Optimal Systolic Algorithm for Generating Permutations in Lexicographic Order," J. Parallel Distr. Comput., vol.20 no.1, pp.84-91, 1994. DOI: http://dx.doi.org/10.1006/jpdc.1994.1008
  6. Vince Vatter, "Enumeration Schemes for Restricted Permutations," Combinatorics, Probability and Comp., vol.17, p.137-159, 2008. DOI: http://dx.doi.org/10.1017/S0963548307008516
  7. Hesterberg, Tim C., "Perf. Evaluation using Fast Permutation Tests," Proc. of 10'th Int. Conf. on Telecomm. Systems, p.465-474, 2002.
  8. Skiena S., "Implementing Discrete Mathematics: Combinatorics and Graph Theory with Mathematica," Addison-Wesley, p.40-46, 1990.
  9. Selmer M. Johnson, "Generation of Permutations by Adjacent Transposition," Mathematics of Computation, vol.17, no.83, p.282-285, Jul. 1963. DOI: http://dx.doi.org/10.1090/S0025-5718-1963-0159764-2
  10. Youssef Bassil, "A Comparative Study on the Performance of Permutation Algorithms," Journal of Computer Science & Research(JCSCR), vol.1, no.1, p.7-19, 2012.
  11. H. F. Trotter, "Algorithm 115: Perm," Communications of the ACM, vol.5, issue.8, p.434-435, Aug. 1962. DOI: http://dx.doi.org/10.1145/368637.368660