[논문 리뷰] Solving High Volume Capacitated Vehicle Routing Problem with Time Windows using Recursive-DBSCAN clustering algorithm
이 논문은 고체적 차량 경로 문제(Capacitated Vehicle Routing Problem with Time Windows, CVRPTW) 인스턴스를 더 작고 다룰 수 있는 클러스터로 분할하여 솔버 런타임을 크게 줄이는 재귀적 DBSCAN(Recursive-DBSCAN)을 제안한다. OR-tools 솔버를 전체 노드 집합이 아닌 각 클러스터 내에서 최적화하도록 제한함으로써, 런타임을 61% 감소시키면서 총 거리는 오직 3.6% 증가시키고 차량 수는 타당한 수준을 유지하며, 2000개 노드의 제한을 초월해 최대 5000개 노드까지의 문제 해결을 가능하게 한다.
This paper introduces a new approach to improve the performance of the Capacitated Vehicle Routing Problem with Time Windows (CVRPTW) solvers for a high number of nodes. It proposes to cluster nodes together using Recursive-DBSCAN - an algorithm that recursively applies DBSCAN until clusters below the preset maximum number of nodes are obtained. That approach leads to 61% decrease in runtimes of the CVRPTW solver as benchmarked against Google Optimization Tools, while the difference of total distance and number of vehicles used by found solutions is below 7%. The improvement of runtimes with the Recursive-DBSCAN method is because of splitting the node-set into constituent clusters, which limits the number of solutions checked by the solver, consequently reducing the runtime. The proposed method consumes less memory and is able to find solutions for problems up to 5000 nodes, while the baseline Google Optimisation Tools solves problems up to 2000 nodes.
연구 동기 및 목표
- 기존의 CVRPTW 솔버(예: Google Optimization Tools)의 확장성 한계를 해결하기 위해, 노드 수가 많아질수록 런타임과 메모리 사용이 과도해지는 문제를 해결한다.
- 배달 노드의 지능적인 클러스터링을 통해 검색 공간을 축소시켜 대규모 온디맨드 물류 응용에서 솔버 성능을 향상시킨다.
- 해당 문제의 해결 품질을 유지하면서도 계산 시간과 메모리 소비를 크게 줄이는 클러스터링 방법을 개발한다.
- 저지연 시간이 필수적인 실시간 고용량 물류 응용 분야에서 CVRPTW 솔버의 실용적 구현을 가능하게 한다.
제안 방법
- Recursive-DBSCAN은 클러스터에 포함된 노드 수가 사전 정의된 최대 크기(max_cluster_size) 이하가 될 때까지 DBSCAN 클러스터링을 재귀적으로 적용하여 솔버가 다룰 수 있는 문제 크기를 보장한다.
- 알고리즘은 지리적 근접성과 밀도를 기반으로 전체 배달 웨이포인트 집합을 공간적으로 일관성 있는 클러스터로 분할하여, 클러스터 간 할당 수를 줄인다.
- 각 클러스터는 독립적으로 OR-tools 라우팅 라이브러리를 사용하여 해결되며, 탐색해야 할 가능한 경로 조합과 할당 수를 크게 줄인다.
- 이 방법은 큰 CVRPTW 인스턴스에서 발생하는 조합 폭발 문제를 소규모 하위 문제로 분리하여 해결함으로써 효율성을 높인다.
- 최종 솔루션은 각 클러스터의 최적화된 경로를 연결하여 구성되며, 클러스터 간 최적화는 수행되지 않는다.
- 이 방법은 메모리 효율적이며, OR-tools가 메모리 고갈로 인해 실패하는 5000개 노드 인스턴스까지도 확장 가능하게 설계되어 있다.
실험 결과
연구 질문
- RQ1배달 노드의 재귀적 클러스터링이 해결 품질을 크게 떨어뜨리지 않으면서도 CVRPTW 솔버의 런타임을 줄일 수 있는가?
- RQ2Recursive-DBSCAN의 런타임, 총 거리, 사용 차량 수 측면에서 OR-tools 및 표준 DBSCAN과 비교해 성능은 어떠한가?
- RQ3클러스터링을 통해 OR-tools와 같은 기존 도구의 2000개 노드 제한을 초월해 CVRPTW 솔버의 확장성을 어느 정도 높일 수 있는가?
- RQ4재귀적 정련을 통해 클러스터 수를 줄이면 단일 패ass DBSCAN보다 더 나은 해결 품질을 얻을 수 있는가?
- RQ5저지연 시간이 요구되는 실세계 온디맨드 물류 시스템에서 이 방법을 실용적으로 구현할 수 있는가?
주요 결과
- Recursive-DBSCAN은 전체 노드 집합에 직접 최적화하는 것과 비교해 OR-tools CVRPTW 솔버의 평균 런타임을 61% 감소시켰다.
- Recursive-DBSCAN가 생성한 솔루션의 총 거리는 OR-tools의 결과와 비교해 오직 3.6% 높을 뿐이며, 이는 높은 해결 품질 유지의 증거이다.
- Recursive-DBSCAN 솔루션에서 사용된 차량 수는 OR-tools 대비 6.4% 높았지만, 여전히 실용적이고 수용 가능한 범위 내에 있었다.
- Recursive-DBSCAN는 OR-tools가 2000개 노드에서 메모리 제약으로 인해 붕괴하는 것과는 달리, 최대 5000개 노드의 인스턴스에 대해 성공적으로 솔루션을 계산했다.
- 반면 DBSCAN는 OR-tools 대비 거리(+120%)와 차량 수(+150%)가 크게 증가하여, 단일 패스 클러스터링은 재귀적 정련보다 효과가 떨어지는 것으로 나타났다.
- 재귀적 클러스터링 접근법은 문제를 더 작은 독립적인 하위 문제로 분할함으로써 가능한 경로 할당 수를 줄여 수렴 속도를 가속화했다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.