"A survey on motion prediction and risk assessment for intelligent vehicles"라는 이 논문은 자율주행이 주행할 때 필요한 Motion planning과 Risk assessment의 역사(?)에 대해서 기술한 survey 논문이다.
저자가 전달하고자 하는 내용이 방대하고 어려워서 읽는데 상당히 애를 먹었다.
논문 리뷰에 사용된 그림은 논문에서 가져왔다.
저자 : Stephanie Lefevre, Dizan Vasquez and Christian Laugier
Abstract :
With the objective to improve road safety, the automotive industry is moving toward more "intelligent" vehicles. One of the major challenges is to detect dangerous situations and react accordingly in order to avoid or mitigate accidents. This requires predicting the likely evolution of the current traffic situation, and assessing how dangerous that future situation might be. This paper is a survey of existing methods for motion prediction and risk assessment for intelligent vehicles. The proposed classification is based on the semantics used to define motion and risk. We point out the tradeoff between model completeness and real-time constraints, and the fact that the choice of a risk assessment method is influenced by the selected motion model.
점점 사고를 예측해서 피하는 등의 똑똑한 차량이 개발 중이다.
이 논문은 motion prediction, risk assessment를 평가하는 여러 방법에 대한 survey논문이다.
1. Introduction
Metric -> Symbolic 수준에 따라 Fig. 1과 같이 구분
2 ~ 4장에서 각각에 대해서 설명한다.
각각의 모션 모델에 따른 차이는 Fig. 2를 통해 알 수 있다.
Physics based -> 차를 위한 일정한 속도, 방위를 가정
Maneuver based -> black차량 직진, blue차량 좌회전
Interaction based -> 교통수칙을 따르면서 black차량 직진, blue차량은 좌회전
5장은 문제의 다른 양상(risk 평가에 이런 모델들을 어떻게 적용하는가)에 대해 다룬다.
5-1 : 차량들의 물리적 충돌에 대해 'risk' 평가
5-2 : 교통수칙을 지키지 않는 것에 대해 'risk' 평가
2. Physics-based motion models
control input(종, 횡제어 -> 엑셀, 핸들), car properties(차량 무게 등), external conditions(도로마찰계수 등)를 dynamics & kinematic 모델에 연결하여 Future motion을 예측한다.
차량 상태의 evolution(position, heading, speed 등등)으로....
physics-based motion model은 지금도 널리쓰이고, 궤적예측과 risk 평가를 위한 modeling에 가장 흔히 쓰인다.
2.1 Evolution models
2.1.1 Dynamic models
Lagrange 방정식에 기반하여 만들어진 Dynamic model은 다양한 것들을 고려하여 만들어지는데, 궤적 예측 등에 이를 적용하기엔 복잡해서, 간단한 bicycle 모델이 주로 사용된다.
2.1.2 Kinematic models
Kinematic model은 동작에 영향을 주는 힘들을 고려하지 않고, 동작의 parameter(position, velocity 등)들 사이의 관계를 수학적으로 묘사한 것이다.
Kinematic model이 Dynamic model보다 간단하고 충분하기 때문에, 궤적 예측 시 훨씬 많이 쓰인다.
Kinematic model은 덜 복잡한 편이지만, 여기서 복잡도를 더 낮추려면 아래의 2가지 방법을 추가적으로 해줘야 한다.
[1] steering angle, velocity, acceleration 등을 상수로
[2] velocity(종제어), Yawrate(횡제어) 분리
2.2 Trajectory prediction
2.1에서 설명한 Evolution model은 Uncertainty(불확실성)를 다루는 차이에 따라 여러 방식으로 궤적 예측에 쓰인다.
2.2.1 Single trajectory simulation
장점 : computational efficiency
단점 : '예측' 시 현재 상태의 불확실성, evolution model의 결점을 고려하지 않는다 -> 긴 시간이 흐를 경우, 예측된 궤적은 믿을 수 없다.
2.2.2 Gaussian noise simulation
현재 차량 상태와, 어떻게 진행될 지에 대한 불확실성은 정규분포를 통해 모델링된다.
Gaussian noise는 칼만필터(KF)에 사용되면서 유명해졌다.
칼만필터는 각각의 시간마다 예측, 업데이트를 반복해서 차량의 상태로부터 반복적으로 노이즈를 제거하는 기본적인 방법이다.
장점 : 2.2.1 Single~~ 보다, 예측된 궤적의 불확실성을 표현하기 좋다.
단점 : 2.2.1과 같이, 모델링의 불확실성이라는 점에서 단점이다. 정규분포만으로는 다양한 동작을 제시하기 부족하기 때문에....
Switching을 통해 단점을 해결할 수 있다!!
[1] Switch Kalman Filters
[2] Switch Kinematic Models
2.2.3 Monte Carlo simulation
모델 선형화 또는 불확실성에 대한 Gaussianity에 대한 가정이 없다면 -> 예측되는 상태의 분포에 관한 분석적 표현(수학식 등)은 알 수 없다.
이럴 경우에 Monte Carlo가 효과적이다!
Monte Carlo method : 잠재적인 future trajectory를 만들기 위해 evolution model의 input 변수를 랜덤 샘플링한다.
아래의 Fig. 5를 보면 이해가 쉽다.
다발경로를 만들어서 future trajectories를 만든다.
2.3 Limitations
low레벨을 다루는 Physics-based motion은 short-term motion 예측에만 한정된다.
운행 중 밝생하는 particular maneuver(교차로 앞 감속, 교차로 앞 좌회전 등)에 대응이 힘들다.
3. Maneuver-based motion models
Maneuver-based motion model은 도로위의 차량들이 각각 독립적으로 움직인다고 가정한다. 이 모델은 prototype trajectories 또는 동작 의도 평가를 기반으로 한다.
Maneuver-based motion model의 trajectory 예측은 운전자가 어떻게 동작할지를 일찍 인지하는 것을 기반으로 한다.
2장의 Physics-based motion보다 믿을만하다.
3.1 Prototype trajectories
데이터를 통해 구축된 prototype trajectories를 이용하여 각각 물체의 motion pattern을 선정한다.
3.1.1 Representation
Motion pattern은 이전에 샘플 trajectories로부터 얻는 prototype trajectories를 사용한다.
road network는 structured된 환경이어서, motion pattern은 미리 정해진다고 가정한다.
각각의 trajectory는 이미 할당되어서, 클러스터링은 필요 없다.
방법 1 : sample trajectories의 평균, 표준편차를 계산해서 각각의 prototype trajectory를 만들기.
방법 2 : 여러 class를 위한 여러 개의 prototype trajectories를 만들어 놓기.
가우시안 확률분포의 일반화로 보이는 Gaussian Process(GP)들은 road traffic의 관점에서 motion pattern을 포현하기 적합하다.
Gaussian Process들은 함수에 대한 가우시안 분포로 프로세스를 모델링한다.
(참고 : 가우시안분포는 정규분포와 비슷한 뜻이란다!)
vehicle trajectories의 관점에서 적용될 때, 학습데이터의 trajectories는 GP로부터 얻는 sample function이라는 가정이다.
GP 장점 :
[1] 이전(이 논문 앞에 있는 것들)보다 noise에 강건
[2] motion pattern 실행이 일관적이고 확률적 기반으로 실행됨
3.1.2 Trajectory prediction
Future motion을 위한 trajectory prediction은 미리 학습된 motion pattern을 상황에 따라 선택한다.
가장 확률이 높은 motion pattern을 계산해서 trajectory를 선정한다.
3.1.3 Limitations
[1] : 엄격하게 결정론적인 시간 표현
ex) heavy traffic같은 상황에선 이 model을 적용하기가 어렵다.
복잡한 상황에 의해 속도 등 변수를 미묘하게 변화시키기 어렵다.
[2] : motion 모델이 구체적인 교차로 geometry & topology로 train되어서, 경로 선택시 이를 재사용할 뿐 다른 도로 layout에 적용시키기 어렵다.
3.2 Maneuver intention dstimation & maneuver execution
trajectory prototypes의 대안은 아래와 같다.
대안 : 운전자의 maneuver 의도(정지선 서기, 전방차량 follow하기 등등)를 측정한 후, 식별된 maneuver을 실행할 수 있도록 지속적으로(연속적으로) physical states를 예측한다.
trajectory prototypes에 비해 가장 큰 장점은 부분 trajectory와 이전에 가지고 있는 trajectory를 비교할 필요가 없다.
그 대신에, 더 높은 수준의 특징들이 추출되어 maneuver를 인지할 목적(학습된 모델을 임의의 layout으로 쉽게 일반화할 수 있게)으로 사용된다.
3.2.1 Maneuver intention estimation
단서 1 : 차량의 physical state(position, speed, heading, yawrate 등)
단서 2 : road network 정보(road, speed limit, traffic rules의 geometry, topology)
단서 3 : 운전자의 행동(머리 움직임, 운전습관 등)
위와 같은 여러 단서로 운전자의 maneuver 의도를 측정할 수 있다.
여러 방법으로 Maneuver 의도 평가는 조사된다.
이 논문에서는 교차로 상황에서의 Maneuver 의도 평가에 초점을 두었지만, 다른 교통상황에도 대부분 적용 가능할 것이다.
Context와 Heuristic은 가까운 미래에 분류하기 위해 discriminate한(구별해주는) 알고리즘이 많이 사용된다.
알고리즘 종류
[1] : Multi Layer Perception (MLP)
[2] : Logistic regression
[3] : Relevance Vector Machines (RVM)
[4] : Support Vector Machines (SVM)
[5] : Hidden Markov Model (HMM)
인기있는 대안은 각각의 maneuver를 연속적인 event chain으로 나누고 HMM을 사용해서 나눠진 event 순서(sequence)들을 나타내는 것이다.
다른 events 사이의 전환(transition) 개연성(probability)은 관찰 모델(observation model)과 데이터로부터 학습될 수 있다.
observation 순서동안, maneuver 의도는 HMM의 observation 가능성을 비교함으로써 측정된다.
maneuver 의도 평가(측정)에 대한 자세한 review는 아래의 Table 1 참고
3.2.2 Maneuver execution
식별된 maneuver를 맞추기 위해(match하기 위해) trajectories는 예측된다.
이것은 식별된 maneuver에 해당하는 input control을 유도하고, kinematic motion model에서 single trajectory를 생성함으로써 결정론적(deterministic) 방식으로 수행될 수 있다.
이렇게 strictly deterministic하게 하는 이유 : maneuver 도중에 current vehicle state의 불확실성을 고려하지 않아서(current vehicle state가 확실해야만 하기 때문에!)
확률적으로 maneuver가 수행될 수도 있는 space를 찾을 때는 GP나 RRT가 사용될 수 있다.
GP : training data로부터 각각의 maneuver 학습되고, 각각의 maneuver의 trajectories를 만들기 위한 생산적인 방법이 사용됨.
RRT : vehicle의 evolution model의 input space 안에서 sampling points에 의해 RRT 트리가 생기고, 측정되는 maneuver 의도에 따라 sampling에서 성향(bias)을 적용.
GP나 RRT 사용의 장점 : 항상 maneuver에 바로 사용될만한 trajectory를 생산.
궤적에 대한 대안 : future motion을 대표하기 위해 Reachable sets(stochastic 또는 geometric) 사용
자세한 것은 아래의 Fig. 7 참고
3.3 Limitations
주변 차량과 독립적으로 움직인다는 가정은 틀린 것임(유지할 수 없음)
다른 차량과 도로를 공유하고, maneuver 수행 시 서로에게 영향을 받기 때문이다.
교차로와 같이 운전 우선 권한이 있는 상황에서 차량간 의존성(inter-vehicle dependency)은 커진다.
차량간 의존성을 무시할 시, Risk는 커진다!
4. Interaction-aware motion models
주행 중 여러 차량이 서로 영향을 받는 것을 의미하는 모델이다.
차량 간의 의존성을 고려하는 것은 3장의 Maneuver-based motion model보다 움직임을 잘 해석(파악)할 수 있게끔 한다.
장점 1 : 주행 상황에 대해 더 잘 이해할 수 있다.
장점 2 : risk evaluation을 더 신뢰할 수 있다.
종류는 prototype trajectories(4,1), Dynamic Bayesian Networks(4.2) 2가지가 있다.
4.1 Models based on trajectory prototypes
Trajectory prototypes에 의존하는 경우, motion pattern의 수가 빠르게 다루기 어려워지기 때문에, 학습단계(learning phase)에서 차량 간 영향(inter-vehicle influences)을 고려할 수 없다.
-> 하지만, 운전자가 충돌을 되도록 피하려 한다는 가정을 함으로써 매칭 단계(matching phase)에서 상호 영향(matual influences)을 고려할 수 있다.
trajectory prototype에서 상호종속성을 고려하기 위한 방법으로 아래와 같은 것이 있다.
(충돌을 피할 수 없게 하는 trajectories 쌍들은 매칭 단계에서 페널티 부과 -> 안전한 trajectory가 위험한 trajectory보다 많이 고려됨)
4.1의 한계 : 한 차량이 다른 차량의 궤적에 미치는 영향을 직접 설계(모델링)할 수 없기 때문에, 다른 유형의 영향을 모델링하는 문제는 남아있다.
4.2 Models based on Dynamic Bayesian Networks
Bayesian Network : 랜덤 변수의 집합과 방향성 비순환 그래프를 통해 그 집합을 조건부 독립으로 표현하는 확률의 그래픽 모델
Dynamic Bayesian Network(동역학적 베이지안 네트워크) : 시간이 지남에 따른 랜덤변수들을 다룬다. 데이터를 다룰때 시간이 사용되기에 Markov property가 사용된다. 랜덤변수의 값은 바로 직전 시간대의 값만 영향을 끼친다(Xt의 값엔 Xt-1의 값만 영향을 끼침).
대부분의 Interaction-aware motion model은 Dynamic Bayesian Network를 기반으로 한다.
multiple moving entities 사이의 쌍의존성은 Coupled HMMs(CHMMs)로 설계될 수 있다.
↓
하지만 가능한 쌍 의존성 개수 감소
↓
복잡도 증가
↓
주변교통은 차량에 영향을 끼치지만, 반대는 아니라는 가정으로 CHMMs를 비대칭으로 만들어서 간단하게 만듬(복잡도 감소)
↓
이 가정은 계산 복잡도를 아주 줄여놓음
이후 4.2의 나머지 내요은 개개인마다 심화연구한 것을 써놓았다.
4.3 Limitations
Interaction-aware motion model은 이 논문 내용 중 가장 포괄적인(comprehensive)모델이다.
Physics-based motion model보다 긴 시간 예측이 가능하고,
Maneuver-based motion model보다 믿을 수 있다.
하지만 이런 철저함(exhaustiveness)에도 약점(drawback) 2가지가 있다.
약점 1 : 계산량 증가
약점 2 : 실시간 Risk assessment와 양립이 불가
이러한 이유로 trajectory prediction에 의존하지 않는 일부 위험 평가 기술이 최근 제안되었다(5.2에 쓰여있음).
5장은 Risk assessment에 대한 내용으로 넘긴 내용이다.
추후 필요하다고 생각이 들 때에, 리뷰할 예정이다.
이로써 motion model에 대한 내용을 모두 정리하였다.