ASP에서 유사·다양한 해 찾기
초록
이 논문은 답집합 프로그래밍(ASP) 기반 문제에 대해, 주어진 거리 함수에 따라 ‘유사’하거나 ‘다양한’ 해들의 집합을 효율적으로 구하는 여러 결정·최적화 모델과 알고리즘을 제시한다. 오프라인 방식(전체 해를 미리 구하고 클러스터링)과 세 가지 온라인 방식(문제 재작성, 반복적 탐색, 탐색 알고리즘 수정)을 제안하고, 마지막 온라인 방식은 Clasp를 변형한 Clasp‑NK 구현으로 C++‑레벨 거리 함수를 지원한다. 복잡도 분석, 인도유럽어 계통수 재구성 및 블록스 월드 플래닝 사례 실험을 통해 방법들의 정확성·완전성·성능을 평가한다.
상세 분석
본 연구는 “유사/다양한 해 집합”이라는 새로운 요구를 ASP에 정형화함으로써, 기존 최적해 탐색을 넘어 다수의 후보 해를 의미 있게 선택할 수 있는 프레임워크를 제공한다. 먼저 두 종류의 문제 정의를 제시한다. 하나는 크기 n 인 해 집합 S 가 주어졌을 때, 거리 함수 Δ(S) 가 k 이하(유사) 혹은 k 이상(다양)인지 판단하는 결정 문제이며, 다른 하나는 기존 집합 S 에 새 해 s 를 추가했을 때 동일한 거리 제한을 만족하는지 여부를 묻는 확장 문제이다. 이 정의는 n, k 을 파라미터화함으로써 “k‑similar n‑set”, “k‑diverse n‑set”, “k‑close solution”, “k‑distant solution” 등 다양한 최적화 변형을 자연스럽게 도출한다.
복잡도 측면에서 저자들은 일반적인 ASP 인코딩이 NP‑complete임을 이용해, 거리 함수가 다항 시간에 계산 가능하고 값의 범위가 다항적으로 제한될 때 전체 문제는 Σ₂^P‑complete 혹은 Π₂^P‑complete 수준에 놓인다고 증명한다. 이는 기존의 단일 해 탐색보다 한 단계 높은 복잡도이며, 거리 함수가 비다항적이거나 무한 범위를 가질 경우 더욱 높은 복잡도로 상승한다는 점을 강조한다.
알고리즘적으로는 오프라인 방식과 세 가지 온라인 방식을 제안한다. 오프라인 방식은 ASP 프로그램을 이용해 모든 해를 열거한 뒤, 거리 기반 클러스터링(예: k‑means, 계층적 군집)으로 원하는 유사·다양 집합을 추출한다. 이 방법은 완전하고 정확하지만 해의 수가 폭발적으로 늘어날 경우 메모리·시간 부담이 크다.
첫 번째 온라인 방식은 기존 문제 프로그램에 “다중 해 생성” 규칙과 거리 함수의 ASP 정의를 추가해, 하나의 SAT‑like 탐색으로 n개의 해를 동시에 산출한다. 이 방식은 완전하지만 거리 함수가 ASP로 표현 가능해야 한다는 제약이 있다.
두 번째 온라인 방식은 기존 프로그램을 그대로 두고, 현재까지 얻은 해 하나와 거리 함수 ASP 정의를 결합해 새로운 k‑close 혹은 k‑distant 해를 하나씩 순차적으로 구한다. 이렇게 반복하면 n개의 해를 얻을 수 있지만, 초기 해 선택에 따라 전체 집합의 품질이 크게 달라지며 완전성을 보장하지 못한다.
세 번째 온라인 방식은 탐색 엔진 자체를 수정한다. 저자들은 Clasp의 충돌‑전파·백트래킹 메커니즘에 거리 제한 검사를 삽입해, 해를 찾는 도중에 현재까지 선택된 해들과의 거리 조건을 실시간으로 검사한다. 거리 함수는 C++ 로 구현되어 ASP 표현의 제한을 피할 수 있다. 이 방식은 메모리 사용을 최소화하고, 실험적으로 가장 빠른 성능을 보였지만, 탐색 순서에 의존하므로 완전성은 보장되지 않는다.
실험에서는 인도유럽어 계통수 재구성 문제에 새롭게 정의한 “분할 거리”와 “트리 구조 거리”를 적용하였다. 오프라인 방식과 온라인 방식 3(Clasp‑NK)이 특히 큰 해 공간에서도 10~20배 빠른 실행 시간을 기록했으며, 유사·다양한 계통수를 효과적으로 구해 전문가가 직접 비교·선택할 수 있게 했다. 블록스 월드 플래닝에서는 행동 기반 해밍 거리를 사용해, 동일 목표에 대한 여러 플랜을 유사·다양하게 생성하였다. 여기서도 Clasp‑NK가 가장 효율적이었으며, 거리 함수가 복잡한 수학 연산을 포함할 경우 ASP‑기반 표현이 불가능함을 보여준다.
전체적으로 이 논문은 ASP를 활용한 다중 해 탐색이라는 새로운 연구 영역을 체계화하고, 이론적 복잡도 분석과 실용적 구현을 동시에 제공한다. 특히 거리 함수의 구현 자유도를 높인 Clasp‑NK는 향후 복잡한 도메인(예: 생물학적 네트워크, 설계 최적화)에서 유사·다양한 솔루션을 요구하는 상황에 직접적인 적용 가능성을 제시한다.
댓글 및 학술 토론
Loading comments...
의견 남기기