본문으로 건너뛰기

Optimal Parking, Part 5 - 장애물, 범위, Feasibility

궤적은 안전하게 실행할 수 있을 때만 의미가 있습니다. 따라서 Optimal Parking은 실행 가능성을 차량 제한, 모델 일관성, 종단 정확도, 장애물 여유 거리의 조합으로 다룹니다.

1. 차량과 입력의 범위​

플래너는 속도와 조향각뿐 아니라 가속도와 조향각 변화율도 제한합니다. 이를 간단히 쓰면 다음과 같습니다.

z‾≤zk≤z‾,\underline{z} \le z_k \le \overline{z},

여기서 zkz_k는 상태 또는 입력 변수를 포함할 수 있습니다.

이 범위는 최적화기가 비현실적인 운동으로 주차 문제를 해결하지 못하게 합니다. 특히 조향각 변화율 제한이 중요합니다. 급격한 조향 변화가 있는 시퀀스는 위치 제약을 만족하더라도 실제로 실행할 수 없기 때문입니다.

2. 장애물 기하​

각 장애물은 중심, 길이, 너비, 방향각으로 표현합니다. 차량을 점으로 취급하지 않고 궤적 전체에서 차량 외곽을 평가합니다. 안전 여유를 사용하면 모델 오차나 원하는 여유 거리를 고려해 금지 영역을 확장할 수 있습니다.

비선형 충돌 관계는 현재 궤적 주변에서 국소적으로 근사합니다. 그러면 최적화기는 현재 QP에 선형화된 장애물 제약을 전달받습니다.

3. 패널티와 hard constraint​

일부 요구 사항은 하드 범위로 표현하는 것이 자연스럽습니다. 반면 더 나은 국소 해로 가기 위해 일시적으로 실행 불가능한 반복점이 유용할 때는 패널티를 사용합니다. 예를 들어 종단 패널티는 다음과 같습니다.

ρg∥xN−xgoal∥2\rho_g \lVert x_N - x_{goal} \rVert^2

이 항은 최종 상태가 목표에 도달하도록 유도합니다. 장애물 패널티나 제약 가중치는 최적화기가 금지된 영역에 들어가는 것을 억제합니다.

패널티를 키운다고 모든 실패가 해결되는 것은 아닙니다. 너무 큰 가중치는 QP를 수치적으로 나쁘게 만들 수 있고, 너무 작은 가중치는 최적화기가 다른 목표를 위해 안전을 희생하게 할 수 있습니다. 튜닝은 초기 경로와 예측 구간을 함께 고려해야 합니다.

4. 수렴 상태 읽기​

성공적인 해인지는 solver 상태만으로 판단하면 안 됩니다. 종단 오차, 동역학 잔차, 최소 장애물 여유 거리, 제어 범위, 반복 간 목적 함수 변화 등을 함께 확인해야 합니다.

수치적 수렴과 좋은 주차 동작은 서로 다른 주장입니다. 초기값이 적절하지 않거나 horizon이 너무 짧거나 제약 조건이 서로 맞지 않으면, solver가 국소적으로 정지했지만 실제로는 부적절한 궤적에 수렴할 수 있습니다.