본문으로 건너뛰기

Optimal Parking 시리즈 요약 - 샘플링에서 최적화 궤적까지

Optimal Parking은 서로 다른 두 가지 추론을 결합합니다. RRT*는 자유 공간을 통과하는 경로를 탐색하고, 궤적 최적화는 그 경로를 차량 모델과 수치 제약을 만족하는 부드러운 시퀀스로 바꿉니다.

전체 흐름​

플래너는 다음 처리 과정으로 이해할 수 있습니다.

scenario→kinematic model→RRT* path→state/input seed→linearized QPs→parking trajectory.\text{scenario} \rightarrow \text{kinematic model} \rightarrow \text{RRT* path} \rightarrow \text{state/input seed} \rightarrow \text{linearized QPs} \rightarrow \text{parking trajectory}.

시나리오는 pose, 차량 크기, 장애물, 시간 설정, 범위, 가중치를 제공합니다. 모델은 어떤 운동이 가능한지 정의합니다. RRT*는 충돌을 고려한 경로의 위상 구조를 제공하고, 최적화기는 그 경로를 국소적으로 개선합니다.

핵심 방정식​

차량의 상태와 입력은 다음과 같습니다.

x=[px,py,ψ,v,δ]T,u=[a,δ˙]T.x = [p_x, p_y, \psi, v, \delta]^T, \qquad u = [a, \dot{\delta}]^T.

비선형 모델은 다음과 같이 이산화합니다.

xk+1=f(xk,uk).x_{k+1} = f(x_k, u_k).

현재 궤적 주변에서 각 SQP 반복은 다음 국소 근사를 사용합니다.

Δxk+1≈AkΔxk+BkΔuk+rk.\Delta x_{k+1} \approx A_k\Delta x_k + B_k\Delta u_k + r_k.

QP는 종단 정확도, 기준 경로 추종, 제어 입력, 모델 일관성, 장애물 회피 사이의 균형을 맞춥니다.

각 계층의 역할​

  • 자전거 모델은 차량이 임의의 방향으로 옆으로 움직이지 못하게 합니다.
  • RRT*는 직접 보간이 막힌 상황에서 경로를 제공합니다.
  • SQP와 QP solver는 경로를 부드럽게 만들고 국소 제약을 적용합니다.
  • 범위와 패널티는 차량이 안전하게 실행할 수 있는 조건을 표현합니다.
  • WebAssembly는 같은 플래너를 인터랙티브 브라우저에서 확인하게 합니다.

핵심 설계는 역할 분담입니다. 샘플링은 전역 경로 탐색을 담당하고, 국소 최적화는 연속적인 개선을 담당합니다. 어느 한 계층이 전체 문제를 혼자 해결할 필요는 없습니다.

권장 읽기 순서​

Part 1과 Part 2에서 모델과 초기 경로를 먼저 이해합니다. Part 3과 Part 4에서는 수치적 개선 과정을 설명하고, Part 5와 Part 6에서 feasibility와 구현으로 확장합니다.