최단 리셋 단어를 찾는 초고속 알고리즘

최단 리셋 단어를 찾는 초고속 알고리즘

초록

본 논문은 유한 동기화 자동기의 최소 리셋 단어를 찾기 위한 새로운 초고속 알고리즘을 제안한다. 양방향 BFS와 Patricia 트라이를 결합해 부분집합을 효율적으로 저장·비교함으로써 기존 방법보다 탐색 폭을 크게 줄인다. 이론적 복잡도는 여전히 지수적이지만 실험 결과는 n≤300 상태까지 확장 가능함을 보여준다. 특히 무작위 2문자 자동기에 대해 최단 리셋 단어의 평균 길이가 약 2.5√(n‑5)임을 새롭게 추정한다.

상세 분석

이 연구는 동기화 자동기 이론에서 오래된 난제인 최소 리셋 단어 찾기 문제에 실용적인 진전을 제공한다. 기존에는 SAT 기반 방법이나 전통적인 BFS가 사용됐으며, 상태 수가 100을 넘으면 메모리와 시간 제한에 부딪혔다. 저자들은 두 가지 핵심 아이디어를 도입한다. 첫째, 탐색을 양쪽에서 동시에 진행하는 bidirectional BFS를 적용한다. 시작점은 전체 상태 집합이며 목표점은 단일 상태 집합이다. 양쪽 탐색이 중간에서 만나면 경로가 연결되어 리셋 단어가 완성된다. 둘째, 중간에 생성되는 모든 부분집합을 Patricia 트라이(압축된 라디칼 트라이) 구조에 저장한다. 트라이는 공통 접두사를 공유하는 집합을 하나의 노드로 압축해 메모리 사용량을 크게 감소시키고, 집합 간 포함 관계를 빠르게 판단할 수 있다. 이러한 조합은 탐색 단계에서 발생하는 지수적 폭발을 실질적으로 억제한다.

이론적 분석에서는 양방향 탐색이 각각 평균적으로 √b(=√branching factor) 정도의 깊이만큼만 진행하면 된다는 점을 보이며, 전체 탐색 깊이는 기존 BFS의 절반 수준으로 감소한다. 또한, 트라이에 저장된 집합 수는 실제로는 전체 가능한 2ⁿ 중 극히 일부에 불과함을 실험적으로 확인한다. 복잡도는 여전히 O(2ⁿ) 수준이지만, 상수 계수가 크게 낮아져 n=300 정도까지도 실행 가능하게 만든다.

실험 부분에서는 무작위 2입력 자동기를 10⁴개 이상 생성해 평균 최단 리셋 길이를 측정한다. 기존 연구(예: Skvorsov와 Tipikin)의 n≤100 결과와 비교해, 새로운 알고리즘은 동일한 정확도로 n=300까지 확장한다. 데이터는 최단 리셋 길이가 n에 대해 약 2.5√(n‑5)라는 새로운 경험적 식을 따름을 보여준다. 이는 기존에 제시된 O(n³) 상한과는 크게 차이가 나며, 동기화 자동기의 평균적 복잡도가 실제로는 훨씬 낮다는 점을 시사한다.

이 논문의 주요 기여는 다음과 같다. (1) 양방향 BFS와 Patricia 트라이를 결합한 새로운 데이터 구조 설계, (2) 이 구조가 실제로 탐색 폭을 크게 줄여 대규모 자동기에도 적용 가능함을 입증, (3) 무작위 자동기에 대한 광범위한 실험을 통해 최단 리셋 길이의 새로운 기대값 식을 제시. 이러한 결과는 이론적 복잡도와 실용적 알고리즘 설계 사이의 격차를 메우는 중요한 단계로 평가될 수 있다.