Skip to main content
QUICK REVIEW

[논문 리뷰] Bounds on the Number of Longest Common Subsequences

Ronald I. Greenberg|ArXiv.org|2003. 01. 28.
Algorithms and Data Compression참고 문헌 22인용 수 9
한 줄 요약

이 논문은 두 수열에서 서로 다른 최장 공통 부분수열(LCS)의 수와 LCS 임bedding의 수에 대해 날카로운 渐近적 경계를 설정하며, 출력 크기 비례하는 시간에 이러한 출력을 생성하는 효율적 알고리즘이 난수적 백트래킹 방법보다 훨씬 더 확장 가능함을 보여준다. 핵심 결과는 동일한 길이의 입력에 대해 난수적 알고리즘의 최악경우 오버헤드가 Θ(4ⁿ/√n)에 이르기까지 클 수 있음을 보여주며, 이는 최적화된 열거 기법의 必要성 을 강조한다.

ABSTRACT

This paper performs the analysis necessary to bound the running time of known, efficient algorithms for generating all longest common subsequences. That is, we bound the running time as a function of input size for algorithms with time essentially proportional to the output size. This paper considers both the case of computing all distinct LCSs and the case of computing all LCS embeddings. Also included is an analysis of how much better the efficient algorithms are than the standard method of generating LCS embeddings. A full analysis is carried out with running times measured as a function of the total number of input characters, and much of the analysis is also provided for cases in which the two input sequences are of the same specified length or of two independently specified lengths.

연구 동기 및 목표

  • 입력 크기를 함수로 하여 모든 서로 다른 최장 공통 부분수열(LCS)을 생성하는 데 필요한 최악경우 시간 복잡도를 정량화하는 것.
  • 난수적 열거 전략 하에서, 중복을 포함한 LCS 임bedding의 최대 수를 경계하는 것.
  • 중복 임bedding을 생성할 수 있는 난수적 백트래킹 방법과 출력에 민감한 효율적 알고리즘 간의 효율성 비교.
  • LCS 열거 작업에서 난수적 접근보다 최적화된 알고리즘을 사용할 이론적 근거 제공.

제안 방법

  • 길이를 3으로 나눈 나머지에 따라 교차하는 문자 패턴을 가진 수열을 사용하여 서로 다른 LCS의 수에 대한 하한을 유도한다.
  • 다른 초기 문자를 가진 서로 다른 LCS의 임bedding이 반드시 교차함을 증명하기 위해 교차 렘마를 사용하며, 이는 출력 크기의 재귀적 경계 설정을 가능하게 한다.
  • 입력 수열의 총 길이에 대해 귀납법을 적용하여 서로 다른 LCS의 수에 대한 상한 D(t) ≤ 4^(t/5) 를 확립한다.
  • 정규화된 시간 분석을 도입하여, 동적 프로그래밍 트레이스백을 통해 이항계수와 관련지어 LCS 임bedding의 수를 경계한다.
  • 난수적 백트래킹의 최악경우 오버헤드를 진짜 출력 크기와 비교하여, 조합 항등식과 渐近적 근사치를 사용해 분석한다.
  • 조합 항등식 C(n+m, m) 을 사용하여 난수적 열거의 최악경우 시간 복잡도를 표현하며, 중심 이항계수를 통해 경계를 도출한다.

실험 결과

연구 질문

  • RQ1총 길이 t 인 두 수열에 대해 가능한 서로 다른 LCS의 최대 수는 얼마인가요?
  • RQ2난수적 백트래킹 알고리즘이 생성할 수 있는 LCS 임bedding(중복 포함)의 최대 수는 얼마인가요?
  • RQ3난수적 LCS 임bedding 열거의 최악경우 시간 복잡도는 출력에 민감한 알고리즘보다 얼마나 떨어지나요?
  • RQ4같은 길이의 수열에 대해 난수적 방법의 점근적 오버헤드는 진짜 출력 크기 대비 얼마나 되나요?
  • RQ5이항계수와 같은 조합 구조를 사용하여 난수적 LCS 열거의 최악성능을 경계할 수 있나요?

주요 결과

  • 총 길이 t 인 두 수열에 대해 서로 다른 LCS의 최대 수는 4^(t/5) < 1.32^t 이하로 경계되며, t 가 6의 배수일 경우 최소하한은 3^(t/6) 이다.
  • 난수적 백트래킹에 의해 생성된 LCS 임bedding(중복 포함)의 수는 길이 n 인 두 수열에 대해 최대 Θ(4ⁿ/√n) 에 이르며, 일부 최악의 경우 진짜 출력 크기는 O(1) 이다.
  • 총 길이 t 인 수열에 대해 난수적 열거의 최악경우 오버헤드는 Θ(2^t / √t) 이며, 이는 t 에 대해 지수적으로 증가한다.
  • 교차 렘마는 서로 다른 LCS에 속한 다른 초기 문자의 임bedding이 반드시 교차함을 증명하며, 이는 출력 크기의 재귀적 분해와 경계 설정을 가능하게 한다.
  • 출력 크기 비례하는 시간에 모든 서로 다른 LCS나 모든 임bedding을 생성하는 효율적 알고리즘은, 동일한 임bed딩을 지수적으로 다수 보고할 수 있는 난수적 방법보다 점근적으로 열등하지 않다.
  • 난수적 백트래킹의 최악경우 오버헤드는 Θ(C(2n, n)) = Θ(4^n / √n) 이며, 이는 그 비효율성의 주요 원인이다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.