Data_study/Paper_Review

[논문 리뷰] Search-based Local Path Planning for Connected Autonomous Vehicles in Urban Environments

onsemiro 2023. 9. 9. 17:00

Introduction

자율 주행의 증가로 복잡한 다양한 환경을 다룰 수 있는 알고리즘이 필요해졌다.

고속도로와 같은 환경이 아닌, 혼잡이 많은 시내 주행은 고려되는 다양한 과제가 필요하다.

  1. 타이트한 교통 구정을 무조건 따라야한다. (속도 제한, 신호, 차선)
  2. 자동차, 보행자, 물체 등등이 포함된 주변 다이나믹한 곡선을 예측해야한다.
  3. LiDAR, 카메라, 라이다와 같은 센서 기반 vision은 불확실한 환경요소를 다룰 필요가 있다. (불확실한 환경요소 : 객체의 일부만 보이거나 가려진 상황)

본 논문에는 5가지의 시나리오를 소개한다.

<1> 상대 차량이 본 차량의 기준 경로를 막고 있는 경우

  • 이 경우는 보통 우회전 차선에 추월 차량이 정지할 때 발생한다. (이 상황에서 추월하는 것은 교통 규정을 위반하는 것이지만, 추월할지 기다릴지 결정해야함)

⇒ 본 연구는 robust한 행동 계획을 통해 이런 상황을 피하는 것을 목표로 한다.

 

<2> 본 차량의 차선 변경이나 추월을 위한 모든 묘색을 차선 침범 차량이 차단한 경우

  • 옆 차로의 차량이 본 차량과 같은 속도로 움직일 때 발생한다.

⇒ 본 차량은 가속을 하거나 감속을 하여 시행 가능한 차선변경 궤도를 만들어야한다.

 

<3> 정적인 물체로 간주될 수 있는 느리게 움직이는 차량이 있는 경우

  • 시나리오 1과 동일한 상황으로 추월은 안전하지 않다.

⇒ 본 차량은 차선 변경 또는 신호등의 거리를 계산함으로써, 차선을 바꿀지 그대로 갈지를 결정해야한다.

 

<4> 갑자기 차선에 끼어드는 경우

  • 시나리오1과 기준 경로를 막는다는 점은 유사하지만 빠르게 반응해야한다는 점이 다르다.

<5> 정적의 차량을 우회해서 가는 경우

⇒ 정적의 차량의 위치는 본 차량의 이동 방식에 영향을 준다.

  • 도로 끝지점과 먼 경우 : 추월하는데 제약이 없다.
  • 도로 끝지점과 매우 가까운 경우 : 물리적으로 어려운 움직임을 수행하거나 교통 제약을 반하는 묘책을 행해야한다.

[본 연구에서 제안하는 로컬 경로 플래너는 실시간 제약 조건이 있는 복잡하고 동적인 주행 환경에서 주행 가능한 궤적을 생성하는 것을 목표로 한다.]

⇒ Frenet frame의 Search-based local planning은 planning 문제를 graph-search 문제로 단순화 하기 위해 사용된다.

  • 도심 주행에 특화된 로컬 경로 플래너 구현, Frenet frame에서의 단순화된 모션 예측, 실제 도심 환경의 차량을 이용한 알고리즘 평가 등을 주요 내용으로 한다.
  • V2X를 통해 수집된 데이터를 결합하여 제안한 알고리즘은 실시간 교통 데이터에 따라 동적으로 계획되는 교통 인식 궤적을 생성할 수 있다.

Chapter 2

LITERATURE SURVEY

2.1 Motion Prediction Methods

주변 차량과 장애물의 미래 동작을 충돌이 없는 궤도로 생성하기 위해 예상해야한다.

  • physics based models
  • Maneuver based models
  • Interaction based models

이 세가지 모델이 충돌 없는 궤도를 생성할 수 있도록 도와준다.

 

2.1.1 Physics Based

physics-based model은 물리적 법칙에 따른 동적 실체로 간주한다.

미래 동작은 속도, 조종 등과 같은 운동학적인 조율 입력과 무게, 타이어 압력, 외부 상태와 같은 차량의 특징과 관련있다.

Physics-based model의 예측은 단순함 때문에 궤적 예측에 널리 사용되는 모션 모델이다.

모델의 복잡도는 불확실성을 처리하는 방법을 매핑하거나 도로 기하학과 같은 기타 외부 요인을 고려함으로써 미세하게 조정할 수 있다.

dynamic model은 차량의 움직임에 작용하는 다양한 힘을 고려하고 이를 라그랑주 방정식에 따라 설명한다.

라그랑주 방정식 : 최대 / 최소를 구하는 방정식으로 제한 조건들 내에서의 최대 , 최소값을 변형해가며 구하는 것.

다양한 힘으로는 종방향, 횡방향, 도로의 경사도, 엔진, 변속기, 바퀴의 동작이 모션 모델에 미치는 영향 등이 포함 된다.

kinematic model

: 외부 힘을 고려하지 않고 위치, 속도 및 가속도와 같은 모션 파라미터간의 관계를 기반으로 설명.

(Dynamic model보다 모션 모델링이 더 단순하기 때문에 일반적으로 더 선호되며 ITS 어플리케이션에서 널리사용됨.)

[The simplest kinematic]

  • CV(constant velocity), CA(constant Acceleration) : 각 일정한 속도, 가속도로 이동한다고 가정 => 시간 t부터의 종방향 위치를 상수로 계산 가능
  • CTRV(Constant Turn Rate and Velocity), CTRA(Constant Turn Rate and Acceleration) : 회전율이 z축을 중심으로 일정하다고 가정

현재 차량 상황의 불확실성은 정규분포를 사용하여 모델링할 수 있다.

Kalman filtering은 노이즈가 많은 센서 측정으로 부터 차량의 상황를 추정하는데 넓게 사용되는 기술이다.

→ 센서와 차량 모델이 선형이고 불확실성이 정규 분포를 사용하여 표현되는 베이지안 필터링을 수정한 것.

kalman filtering : Prediction step & Update step

  • Prediction step : t+1시점의 차량 상태를 예측한다.
  • Update step : 현재와 예측한 부분을 결합한다.

⇒ 두 step을 반복하면 새로운 측정값을 사용할 수 있게 된다.

단일 궤적 시뮬레이션 방법과 비교하면 가우시안 모델은 불확실성을 완화할 수 있다.

BUT, 다양한 묘색의 불확실성을 고려할 수 없다는 한계가 있다.

해결책 : 가우시안 + Switching Kalman Filters(SKF)를 혼합하여 다양한 기동을 제시해야한다.

Monte Carlo 기법은 입력 변수에서 무작위 샘플을 추출하여 잠재적인 미래 궤적을 생성하는 것

도로 토폴로지(위상기하학) 고려하여, Weights는 도로 레이아웃 제약 조건을 따르지 않는 생성된 track에 페널티를 줄 수 있다.

 

2.1.2 Maneuver Based(기동 기반)

Maneuver Based 모델은 차량을 독립적인 기동단위로 나타낸다.

<도로에서 차량의 움직임은 상대 차량과 독립적으로 수행되는 일련의 기동과 일치한다고 가정>

-프로토타입 궤적 기반 ⇒ 프로토타입 궤적을 사용하여 향후 모션의 모델로 사용 가능(이전 다른 차량에서 관찰된 기동을 사용하여 생성)

-토폴로지 네트워크 ⇒ 미리 결정된 단일 그래프 구조로 많은 동작을 병합하는 것

Gaussian process(GP)는 교통에서 이동 패턴을 설명하는데 적합

훈련데이터셋의 궤적은 차량 궤적의 맥락에서 활용될 때 GP의 함수 인스턴스임.

이런 함수에 가우시안 분포(정규분포)를 적용하는 것이 학습임.

장점 : 관찰된 궤적의 노이즈에 대한 저항성과 모션 패턴 실행의 차이를 일관되고 확률적인 방식으로 표현할 수 있음.

 

2.1.3 Interaction Aware Based

 

서로 상호 작용하는 움직이는 것으로 간주

Maneuver Based(기동 기반)이 더 차량 모션을 잘 해석함.

결과적으로 문제를 더잘 이해하고 정확한 위험 평가를 함.

⇒ 프로토타입 궤적 or 동적 베이지안 네트워크를 기초로 함.

(프로토타입 기반 방식 : 결과 모션 패턴의 수를 빠르게 제어할 수 없음.→ 학습 단계에서 차량간의 효과를 고려할 수 없음)

(대부분 동적 베이지안 네트워크(DBN)기반으로 함.

로컬 시나리오 설정의 함수로 차량 인과 관계를 모델링 하면 과정이 크게 줄어든다.

현지 상황과 운전자의 목적 사이의 의존성을 명시적으로 표현하는 대신 ‘예상 운행’이라는 중간 변수를 사용한다.

2.2 Local Path Generation

Local path Generation은 차량이 주행할 수 있는 주행 가능 경로를 생성하는 연구다.

Non-holonomic constraint : 직접 이동할 수 없는 차량의 물리적 한계

초기 위치에서 특정 위치 공간의 목표 영역까지 경로를 찾는 것.

접근 방식은 “실행 가능” 과 “최적”으로 평가

[실현가능]: 출력의 품질을 무시하면서 문제의 제약 조건을 충족하는 궤적을 결정하는 것

[최적]: 특정 제약 조건에 따라 특정 품질 기준을 최적화하는 것

2.2.1 Spatiotemporal Sampling(시공간 샘플링)

특정 기능에 제약을 받으면서 본 차량과 장애물을 연결하기 위해 생성한다.

샘플링 : 결정적 샘플링 & 무작위 샘플링

도로 형태에 맞게 샘플링 조정

⇒ 계획의 효율성을 높이고 사람과 유사한 동작을 생성하는데 도움을 줌.

2.2.2 Trajectory Aware(궤적 인식)

궤적 표현 문제 : 시작과 종료 상태를 경계 조건으로 하는 최적 제어 문제

실행 가능한 옵션이 두개 이상 존재하는 경우 : parametric Functional을 가정하여 최적 제어 문제를 파라미터 찾기 또는 제약 최적화 문제로 변환하는 경우가 많다.

(Parametric Functional : 하나의 물체를 기술하기 위하여 몇 개의 매개 변수를 사용하여 표현하는 함수)

Parametric Representation

  • 궤적의 기하학적 형상(ex, 경로)을 제어하고 그후 속도 프로파일을 적용하여 궤적 생성
  • 차량의 궤적을 종방향 및 횡방향 참조 측면

2.3 Vehicle to Everything

V2X : 차량이 다른 차량, 보행자, 도로변 장비, 인터넷과 통신(차량-사물 간)

실시간 교통, 센서, 고화질 매핑 데이터 이용 가능

IEEE 802.11p기반 DSRC 기술 도입을 검토중.

DSRC 기술 : 뛰어난 신뢰성, 데이터 보안 등 인증이 필요한 V2V 애플리케이션을 위해 개발 됨. (하이패스, 네비게이션등 양방향으로 정보를 주고 받는 분야에서 사용됨)

Chapter 3.

Proposed system

3.1 Connected Autonomous Vehicle

기아 니로 EV차량 튜닝

종방향 (가스 , 브레이크) & 횡방향(steering) 시스템은 내부 C-CAN을 통해 제어되도록 수정.

차량 신호는 Kvaser CAN 어댑터를 통해 제공

외부적으로, 차량 후방을 통과하는 루프랙에 오스터 OS-1 라이다를 장착

차선 , 물체, 여유공간 감지를 위해 총 4대의 Sekonix GNSL카메라 부착

3D 프린팅 마운트 사용 60도 및 190도 시야각의 전방 카메라를 각각 하나씩 부착 & 사이드 미러 아래에는 차선 변경 시 차량을 감지하기 위해 60도 FOV카메라 부착

내부적으로는 정밀한 위치 측정을 위해 SBG Ellipse-D INS를 사용

듀얼 채널 RTK 수신기를 통해 RTK 보정 정보를 제공

모든 모듈간 상호작용은 ROS 시그마 기반이다.

ROS drivers : 하드웨어와 네트워크 채널을 생성하여 ROS 네트워크의 모든 모듈이 필요한 신호를 수신할 수 있도록 함.

“can_writer” 모듈 : Ros 네트워크의 신호를 변환하여 차량이 이해할 수 있는 신호를 차량이 이해할 수 있는 신호로 변환

NMEA 모듈 : (RS232 포트를 통해 연결된 RTK 모듈의 NMEA 메시지를 분석함.) ⇒분석된 메시지는 ROS Fix 메시지로 전환된다.

(ROS Fix 메시지는 신호의 정확성에 관한 메타 데이터와 함께 차량의 좌표가 포함된다.)

“OS-1 노드” 와 “GMSL 노드” : 라이다와 카메라에서 센서 데이터를 수신하여 Point Cloud Data형식으로 변환

(Point Cloud Data : 3D 프레임에서 포인트의 XYZ위치와 정도(표면 반사 정도)를 포함하는 포인트의 표현)

3.2 Motion Prediction

차량 경로를 단순화하는 대체 좌표 공간인 Frenet을 광범위하게 사용.

(Frenet -serret 공식: 곡선의 움직임을 묘사하는 공식으로, 단위 접벡터, 법벡터 및 이중접벡터 사이의 관계를 나타낸다)

(Frenet Freme : {T,N,B}로 구성, 곡선 위에 각 점들에 대해서 어떻게 구성되어 있는지 접벡터,법벡터,이중법벡터로 표현한다.)곡률 : 접벡터의 변화량 , 열률(비틀린 정도) : 이중법벡터의 변화량)

Frenet Frame에서는 중심선 or 기준 경로가 일반화된 기준선으로 선택됨.

중앙선의 접선 및 법선 벡터가 선택되고 기준 경로가 s 및 d 좌표로 변환된다.

s는 기준 경로를 따라 종방향으로 이동하는 것을 나타내고 d는 기준 경로의 중앙선을 따라 루트 포인트에서 수직으로 상쇄된다.

Frenet Frame의 모든 교통 개체를 변환하고 시간 t에 따른 (s,d)의 변화를 계싼하면 d가 변하지 않을 가능성이 높다고 가정하여 차량의 움직임을 쉽게 추정할 수 있다.

데카르트 좌표는 차량이 가야할 위치와 차량의 위치를 전 세계적으로 파악하는데 적합.

But, 직교 프레임에서 경로를 계획하고 차량의 충돌 여부를 결정하는 것은 어렵다.(차량의 수학적 표현이 도로의 구조에 따라 다르기 때문)

3.3 경로 생성

Frenet Frame의 최적 로컬 경뢰 계획에 대해 2,5차 spline의 빠르게 움직임을 최소화하는 경로를 생성했다.

흔들림을 최소화 하는 경로를 생성하는데 효과적 But, 좁은 경로의 경우 교통법규(중앙선 침범)를 위반하는 경로가 생성돼서 문제가 있었다.

그래프 탐색 기반은 최적의 경로를 생성하지만 , 생성된 경로가 차량의 물리적 제약을 고려하지 않아 차량이 따라갈 수 없는 경로가 생성되는 문제가 있다.

⇒ 하이브리드 A*은 rounding 문제 해결과 함께 주행가능한 경로를 생성한다.

Frenet Frame 검색 기반 로컬 계획 방법 : 두 장점을 모두 추출하기 위해 제시

글로벌 Frenet 좌표 : 일반적으로 d는 차량이 어느 차선에 위치하는지를 나타냄.(중앙선 기준으로 선정)

로컬 Frenet 좌표 : 본 차량의 속도에 따라 로컬 가변 경로가 생성되고 로컬 Frenet Frame이 생성됨.(차선 변경, 장애물 회피, 추월과 같은 횡방향 모션에 사용)

횡방향 (글로벌) Frame 경우, s는 t에 대해 그래프로 표시 , y축인 속도가 일정하다고 가정할때 t시점에 s 또는 차량이 어디에 위치할 지 나타냄.

현재 차량 s에서 사건 지평선까지 가능한 모든 경로가 매번 계산됨. 신호등이나 장애물이 기준 경로를 막고 있을때 검색 지평선이 감소하여 속도가 줄어듦.

측면 모션의 경우 하이브리드 A* 검색이 사용되지만, 검색 공간은 프레넷 프레임에 있다.

데카르트 검색 공간에 비해,

d 값에 따라 휴리스틱이 생성될 수 있다. (휴리스틱 : 시간이나 정보가 충분하지 않아 합리적인 판단을 할 수 없을 때, 혹은 굳이 합리적 판단을 할 필요가 없을 때 사람들이 신속하게 사용하는 어림짐작)

Chapter 4.

실험 결과 및 토론

4.1 실험 설정

상암 DMC 테스트베드에서 다른 차량과 함께 도로를 주행하며 테스트

제안한 알고리즘으로 5가지 시나리오를 각각 테스트 ⇒ 순수 검색 기반 알고리즘과 결과를 비교하기 위해 기준 경로도 직교 그래프에 표시함.

4.2 결과

4.2.1 프레넷 프레임의 모션 예측

상대 차량의 움직임 예측은 실제 차량 위치와 비교하여 차이를 계산하였다.

횡방향(d)예측은 1미터 미만의 범위 내에서 유지되는 반면,

위치 오차(s)는 3.5m 이상에서 가장 심하다는 것을 보여준다.

상대 차량의 측정 및 추정 위치 (빨간색 점은 실제 측정의 중심점, 파란색 점은 추정 위치를 나타냄)

4.2.2 검색 기반 로컬 경로 계획

로컬 경로 플래너는 5개의 시나리오에 대해 검증하였다.

개별 시나리오에 맞게 설계되지 않고 일괄적인 시스템으로 모든 시나리오에 동일한 플래너를 사용했다.

제한 속도 50km/h 이하에서 추가 가속을 위한 공간 확보를 위해 40km/h로 설정 & 횡방향 궤적은 네이버 고화질 로드맵에 정의된 중앙선을 사용하여 생성

[첫 번째 시나리오 - 본 차량의 기준 경로를 막는 상대 차량]

시나리오에서는 충돌 전 종방향 이동을 제어하고 인접 차선의 추가 측면 변화를 고려하기 위해 가속도 프로파일의 변경이 필요.

가속도 전환 프로파일은 한 가속도에서 다른 가속도로 부드러운 변화를 생성하는데 사용됨.(cubic acceleration polynomials의 형태로 표현됨)

cubic acceleration polynomials : 4차 이하의 항을 가진 다항식으로, 주로 시간에 따른 가속도 변화를 모델링하는 데 사용

위 사진은 참조 경로(빨간 점선)와 정적 차량(빨간 사각)과 함께 생성된 측면 궤적(녹색선)을 보여준다.

충돌 전 종방향 이동을 제어하면서 인접 차선으로 횡방향 변화를 고려하기 위해 가속도 프로파일을 변경했다.

 

[시나리오 3,5 - 느리고 정적인 차량 포함]

충돌 전 종방향 이동을 제어해서 추가적인 측면 변화를 고려하기 위해 가속 프로파일을 변경해야함.

숫자는 인덱스를 나타냄

차선 변경을 하려면 종방향 플래너가 가속 또는 감속 속도 프로파일을 생성해야한다.

본 차량이 거의 기준 속도에 가깝게 움직이고 있었기에 속도 플래너는 감속 속도 프로파일을 계획했다.

인덱스 28-38에서 감속하는 차량과 본 차량이 통과한 후 본차량이 기준 경로를 따르는 궤적을 생성한다.

[시나리오 4 - 갑자기 끼어드는 차량 포함]

충돌 전 종방향 이동을 제어하기 위해 가속도 프로파일을 변경함.

상대 차량이 본 차랑의 기준 경로에 진입하면 종방향 제어기가 즉시 감속하는 것을 볼 수 있다. 횡방향 플래너는 훨씬 큰 곡선의 우회경로를 생성함.

chapter 5.

결론 및 향후 작업

5.1 결론

동적 교통 상태를 통합해야만 최적의 경로를 계획할 수 있다.

제안한 경로 플래너는 모든 환경에서 최적으로 작동하는 것은 아니지만, 도시 지역에서 계산 복잡성을 줄이면서 코너 케이스 시나리오에서도 안전한 궤적을 생성할 수 있다.

본 알고리즘의 상위 특성은 알고리즘 복잡성과 궤적의 생성에 실패할 확률을 줄여준다.

<1> 상대 차량이 본 차량의 기준 경로를 막고 있는 경우

  • 이 경우는 보통 우회전 차선에 추월 차량이 정지할 때 발생한다. (이 상황에서 추월하는 것은 교통 규정을 위반하는 것이지만, 추월할지 기다릴지 결정해야함)

⇒ 본 연구는 robust한 행동 계획을 통해 이런 상황을 피하는 것을 목표로 한다.

<2> 본 차량의 차선 변경이나 추월을 위한 모든 묘색을 차선 침범 차량이 차단한 경우

  • 옆 차로의 차량이 본 차량과 같은 속도로 움직일 때 발생한다.

⇒ 본 차량은 가속을 하거나 감속을 하여 시행 가능한 차선변경 궤도를 만들어야한다.

<3> 정적인 물체로 간주될 수 있는 느리게 움직이는 차량이 있는 경우

  • 시나리오 1과 동일한 상황으로 추월은 안전하지 않다.

⇒ 본 차량은 차선 변경 또는 신호등의 거리를 계산함으로써, 차선을 바꿀지 그대로 갈지를 결정해야한다.

<4> 갑자기 차선에 끼어드는 경우

  • 시나리오1과 기준 경로를 막는다는 점은 유사하지만 빠르게 반응해야한다는 점이 다르다.

<5> 정적의 차량을 우회해서 가는 경우

⇒ 정적의 차량의 위치는 본 차량의 이동 방식에 영향을 준다.

  • 도로 끝지점과 먼 경우 : 추월하는데 제약이 없다.
  • 도로 끝지점과 매우 가까운 경우 : 물리적으로 어려운 움직임을 수행하거나 교통 제약을 반하는 묘책을 행해야한다.

[본 연구에서 제안하는 로컬 경로 플래너는 실시간 제약 조건이 있는 복잡하고 동적인 주행 환경에서 주행 가능한 궤적을 생성하는 것을 목표로 한다.]

⇒ Frenet frame의 Search-based local planning은 planning 문제를 graph-search 문제로 단순화 하기 위해 사용된다.

  • 도심 주행에 특화된 로컬 경로 플래너 구현, Frenet frame에서의 단순화된 모션 예측, 실제 도심 환경의 차량을 이용한 알고리즘 평가 등을 주요 내용으로 한다.
  • V2X를 통해 수집된 데이터를 결합하여 제안한 알고리즘은 실시간 교통 데이터에 따라 동적으로 계획되는 교통 인식 궤적을 생성할 수 있다.

Chapter 2

LITERATURE SURVEY

2.1 Motion Prediction Methods

주변 차량과 장애물의 미래 동작을 충돌이 없는 궤도로 생성하기 위해 예상해야한다.

  • physics based models
  • Maneuver based models
  • Interaction based models

이 세가지 모델이 충돌 없는 궤도를 생성할 수 있도록 도와준다.

2.1.1 Physics Based

physics-based model은 물리적 법칙에 따른 동적 실체로 간주한다.

미래 동작은 속도, 조종 등과 같은 운동학적인 조율 입력과 무게, 타이어 압력, 외부 상태와 같은 차량의 특징과 관련있다.

Physics-based model의 예측은 단순함 때문에 궤적 예측에 널리 사용되는 모션 모델이다.

모델의 복잡도는 불확실성을 처리하는 방법을 매핑하거나 도로 기하학과 같은 기타 외부 요인을 고려함으로써 미세하게 조정할 수 있다.

dynamic model은 차량의 움직임에 작용하는 다양한 힘을 고려하고 이를 라그랑주 방정식에 따라 설명한다.

라그랑주 방정식 : 최대 / 최소를 구하는 방정식으로 제한 조건들 내에서의 최대 , 최소값을 변형해가며 구하는 것.

다양한 힘으로는 종방향, 횡방향, 도로의 경사도, 엔진, 변속기, 바퀴의 동작이 모션 모델에 미치는 영향 등이 포함 된다.

kinematic model

: 외부 힘을 고려하지 않고 위치, 속도 및 가속도와 같은 모션 파라미터간의 관계를 기반으로 설명.

(Dynamic model보다 모션 모델링이 더 단순하기 때문에 일반적으로 더 선호되며 ITS 어플리케이션에서 널리사용됨.)

[The simplest kinematic]

  • CV(constant velocity), CA(constant Acceleration) : 각 일정한 속도, 가속도로 이동한다고 가정 => 시간 t부터의 종방향 위치를 상수로 계산 가능
  • CTRV(Constant Turn Rate and Velocity), CTRA(Constant Turn Rate and Acceleration) : 회전율이 z축을 중심으로 일정하다고 가정

현재 차량 상황의 불확실성은 정규분포를 사용하여 모델링할 수 있다.

Kalman filtering은 노이즈가 많은 센서 측정으로 부터 차량의 상황를 추정하는데 넓게 사용되는 기술이다.

→ 센서와 차량 모델이 선형이고 불확실성이 정규 분포를 사용하여 표현되는 베이지안 필터링을 수정한 것.

kalman filtering : Prediction step & Update step

  • Prediction step : t+1시점의 차량 상태를 예측한다.
  • Update step : 현재와 예측한 부분을 결합한다.

⇒ 두 step을 반복하면 새로운 측정값을 사용할 수 있게 된다.

단일 궤적 시뮬레이션 방법과 비교하면 가우시안 모델은 불확실성을 완화할 수 있다.

BUT, 다양한 묘색의 불확실성을 고려할 수 없다는 한계가 있다.

해결책 : 가우시안 + Switching Kalman Filters(SKF)를 혼합하여 다양한 기동을 제시해야한다.

Monte Carlo 기법은 입력 변수에서 무작위 샘플을 추출하여 잠재적인 미래 궤적을 생성하는 것

도로 토폴로지(위상기하학) 고려하여, Weights는 도로 레이아웃 제약 조건을 따르지 않는 생성된 track에 페널티를 줄 수 있다.

2.1.2 Maneuver Based(기동 기반)

Maneuver Based 모델은 차량을 독립적인 기동단위로 나타낸다.

<도로에서 차량의 움직임은 상대 차량과 독립적으로 수행되는 일련의 기동과 일치한다고 가정>

-프로토타입 궤적 기반 ⇒ 프로토타입 궤적을 사용하여 향후 모션의 모델로 사용 가능(이전 다른 차량에서 관찰된 기동을 사용하여 생성)

-토폴로지 네트워크 ⇒ 미리 결정된 단일 그래프 구조로 많은 동작을 병합하는 것

Gaussian process(GP)는 교통에서 이동 패턴을 설명하는데 적합

훈련데이터셋의 궤적은 차량 궤적의 맥락에서 활용될 때 GP의 함수 인스턴스임.

이런 함수에 가우시안 분포(정규분포)를 적용하는 것이 학습임.

장점 : 관찰된 궤적의 노이즈에 대한 저항성과 모션 패턴 실행의 차이를 일관되고 확률적인 방식으로 표현할 수 있음.

2.1.3 Interaction Aware Based

서로 상호 작용하는 움직이는 것으로 간주

Maneuver Based(기동 기반)이 더 차량 모션을 잘 해석함.

결과적으로 문제를 더잘 이해하고 정확한 위험 평가를 함.

⇒ 프로토타입 궤적 or 동적 베이지안 네트워크를 기초로 함.

(프로토타입 기반 방식 : 결과 모션 패턴의 수를 빠르게 제어할 수 없음.→ 학습 단계에서 차량간의 효과를 고려할 수 없음)

(대부분 동적 베이지안 네트워크(DBN)기반으로 함.

로컬 시나리오 설정의 함수로 차량 인과 관계를 모델링 하면 과정이 크게 줄어든다.

현지 상황과 운전자의 목적 사이의 의존성을 명시적으로 표현하는 대신 ‘예상 운행’이라는 중간 변수를 사용한다.

2.2 Local Path Generation

Local path Generation은 차량이 주행할 수 있는 주행 가능 경로를 생성하는 연구다.

Non-holonomic constraint : 직접 이동할 수 없는 차량의 물리적 한계

초기 위치에서 특정 위치 공간의 목표 영역까지 경로를 찾는 것.

접근 방식은 “실행 가능” 과 “최적”으로 평가

[실현가능]: 출력의 품질을 무시하면서 문제의 제약 조건을 충족하는 궤적을 결정하는 것

[최적]: 특정 제약 조건에 따라 특정 품질 기준을 최적화하는 것

2.2.1 Spatiotemporal Sampling(시공간 샘플링)

특정 기능에 제약을 받으면서 본 차량과 장애물을 연결하기 위해 생성한다.

샘플링 : 결정적 샘플링 & 무작위 샘플링

도로 형태에 맞게 샘플링 조정

⇒ 계획의 효율성을 높이고 사람과 유사한 동작을 생성하는데 도움을 줌.

2.2.2 Trajectory Aware(궤적 인식)

궤적 표현 문제 : 시작과 종료 상태를 경계 조건으로 하는 최적 제어 문제

실행 가능한 옵션이 두개 이상 존재하는 경우 : parametric Functional을 가정하여 최적 제어 문제를 파라미터 찾기 또는 제약 최적화 문제로 변환하는 경우가 많다.

(Parametric Functional : 하나의 물체를 기술하기 위하여 몇 개의 매개 변수를 사용하여 표현하는 함수)

Parametric Representation

  • 궤적의 기하학적 형상(ex, 경로)을 제어하고 그후 속도 프로파일을 적용하여 궤적 생성
  • 차량의 궤적을 종방향 및 횡방향 참조 측면

2.3 Vehicle to Everything

V2X : 차량이 다른 차량, 보행자, 도로변 장비, 인터넷과 통신(차량-사물 간)

실시간 교통, 센서, 고화질 매핑 데이터 이용 가능

IEEE 802.11p기반 DSRC 기술 도입을 검토중.

DSRC 기술 : 뛰어난 신뢰성, 데이터 보안 등 인증이 필요한 V2V 애플리케이션을 위해 개발 됨. (하이패스, 네비게이션등 양방향으로 정보를 주고 받는 분야에서 사용됨)

Chapter 3.

Proposed system

3.1 Connected Autonomous Vehicle

기아 니로 EV차량 튜닝

종방향 (가스 , 브레이크) & 횡방향(steering) 시스템은 내부 C-CAN을 통해 제어되도록 수정.

차량 신호는 Kvaser CAN 어댑터를 통해 제공

외부적으로, 차량 후방을 통과하는 루프랙에 오스터 OS-1 라이다를 장착

차선 , 물체, 여유공간 감지를 위해 총 4대의 Sekonix GNSL카메라 부착

3D 프린팅 마운트 사용 60도 및 190도 시야각의 전방 카메라를 각각 하나씩 부착 & 사이드 미러 아래에는 차선 변경 시 차량을 감지하기 위해 60도 FOV카메라 부착

내부적으로는 정밀한 위치 측정을 위해 SBG Ellipse-D INS를 사용

듀얼 채널 RTK 수신기를 통해 RTK 보정 정보를 제공

모든 모듈간 상호작용은 ROS 시그마 기반이다.

ROS drivers : 하드웨어와 네트워크 채널을 생성하여 ROS 네트워크의 모든 모듈이 필요한 신호를 수신할 수 있도록 함.

“can_writer” 모듈 : Ros 네트워크의 신호를 변환하여 차량이 이해할 수 있는 신호를 차량이 이해할 수 있는 신호로 변환

NMEA 모듈 : (RS232 포트를 통해 연결된 RTK 모듈의 NMEA 메시지를 분석함.) ⇒분석된 메시지는 ROS Fix 메시지로 전환된다.

(ROS Fix 메시지는 신호의 정확성에 관한 메타 데이터와 함께 차량의 좌표가 포함된다.)

“OS-1 노드” 와 “GMSL 노드” : 라이다와 카메라에서 센서 데이터를 수신하여 Point Cloud Data형식으로 변환

(Point Cloud Data : 3D 프레임에서 포인트의 XYZ위치와 정도(표면 반사 정도)를 포함하는 포인트의 표현)

3.2 Motion Prediction

차량 경로를 단순화하는 대체 좌표 공간인 Frenet을 광범위하게 사용.

(Frenet -serret 공식: 곡선의 움직임을 묘사하는 공식으로, 단위 접벡터, 법벡터 및 이중접벡터 사이의 관계를 나타낸다)

(Frenet Freme : {T,N,B}로 구성, 곡선 위에 각 점들에 대해서 어떻게 구성되어 있는지 접벡터,법벡터,이중법벡터로 표현한다.)곡률 : 접벡터의 변화량 , 열률(비틀린 정도) : 이중법벡터의 변화량)

Frenet Frame에서는 중심선 or 기준 경로가 일반화된 기준선으로 선택됨.

중앙선의 접선 및 법선 벡터가 선택되고 기준 경로가 s 및 d 좌표로 변환된다.

s는 기준 경로를 따라 종방향으로 이동하는 것을 나타내고 d는 기준 경로의 중앙선을 따라 루트 포인트에서 수직으로 상쇄된다.

Frenet Frame의 모든 교통 개체를 변환하고 시간 t에 따른 (s,d)의 변화를 계싼하면 d가 변하지 않을 가능성이 높다고 가정하여 차량의 움직임을 쉽게 추정할 수 있다.

데카르트 좌표는 차량이 가야할 위치와 차량의 위치를 전 세계적으로 파악하는데 적합.

But, 직교 프레임에서 경로를 계획하고 차량의 충돌 여부를 결정하는 것은 어렵다.(차량의 수학적 표현이 도로의 구조에 따라 다르기 때문)

3.3 경로 생성

Frenet Frame의 최적 로컬 경뢰 계획에 대해 2,5차 spline의 빠르게 움직임을 최소화하는 경로를 생성했다.

흔들림을 최소화 하는 경로를 생성하는데 효과적 But, 좁은 경로의 경우 교통법규(중앙선 침범)를 위반하는 경로가 생성돼서 문제가 있었다.

그래프 탐색 기반은 최적의 경로를 생성하지만 , 생성된 경로가 차량의 물리적 제약을 고려하지 않아 차량이 따라갈 수 없는 경로가 생성되는 문제가 있다.

⇒ 하이브리드 A*은 rounding 문제 해결과 함께 주행가능한 경로를 생성한다.

Frenet Frame 검색 기반 로컬 계획 방법 : 두 장점을 모두 추출하기 위해 제시

글로벌 Frenet 좌표 : 일반적으로 d는 차량이 어느 차선에 위치하는지를 나타냄.(중앙선 기준으로 선정)

로컬 Frenet 좌표 : 본 차량의 속도에 따라 로컬 가변 경로가 생성되고 로컬 Frenet Frame이 생성됨.(차선 변경, 장애물 회피, 추월과 같은 횡방향 모션에 사용)

횡방향 (글로벌) Frame 경우, s는 t에 대해 그래프로 표시 , y축인 속도가 일정하다고 가정할때 t시점에 s 또는 차량이 어디에 위치할 지 나타냄.

현재 차량 s에서 사건 지평선까지 가능한 모든 경로가 매번 계산됨. 신호등이나 장애물이 기준 경로를 막고 있을때 검색 지평선이 감소하여 속도가 줄어듦.

측면 모션의 경우 하이브리드 A* 검색이 사용되지만, 검색 공간은 프레넷 프레임에 있다.

데카르트 검색 공간에 비해,

d 값에 따라 휴리스틱이 생성될 수 있다. (휴리스틱 : 시간이나 정보가 충분하지 않아 합리적인 판단을 할 수 없을 때, 혹은 굳이 합리적 판단을 할 필요가 없을 때 사람들이 신속하게 사용하는 어림짐작)

Chapter 4.

실험 결과 및 토론

4.1 실험 설정

상암 DMC 테스트베드에서 다른 차량과 함께 도로를 주행하며 테스트

제안한 알고리즘으로 5가지 시나리오를 각각 테스트 ⇒ 순수 검색 기반 알고리즘과 결과를 비교하기 위해 기준 경로도 직교 그래프에 표시함.

4.2 결과

4.2.1 프레넷 프레임의 모션 예측

상대 차량의 움직임 예측은 실제 차량 위치와 비교하여 차이를 계산하였다.

횡방향(d)예측은 1미터 미만의 범위 내에서 유지되는 반면,

위치 오차(s)는 3.5m 이상에서 가장 심하다는 것을 보여준다.

상대 차량의 측정 및 추정 위치 (빨간색 점은 실제 측정의 중심점, 파란색 점은 추정 위치를 나타냄)

4.2.2 검색 기반 로컬 경로 계획

로컬 경로 플래너는 5개의 시나리오에 대해 검증하였다.

개별 시나리오에 맞게 설계되지 않고 일괄적인 시스템으로 모든 시나리오에 동일한 플래너를 사용했다.

제한 속도 50km/h 이하에서 추가 가속을 위한 공간 확보를 위해 40km/h로 설정 & 횡방향 궤적은 네이버 고화질 로드맵에 정의된 중앙선을 사용하여 생성

[첫 번째 시나리오 - 본 차량의 기준 경로를 막는 상대 차량]

시나리오에서는 충돌 전 종방향 이동을 제어하고 인접 차선의 추가 측면 변화를 고려하기 위해 가속도 프로파일의 변경이 필요.

가속도 전환 프로파일은 한 가속도에서 다른 가속도로 부드러운 변화를 생성하는데 사용됨.(cubic acceleration polynomials의 형태로 표현됨)

cubic acceleration polynomials : 4차 이하의 항을 가진 다항식으로, 주로 시간에 따른 가속도 변화를 모델링하는 데 사용

위 사진은 참조 경로(빨간 점선)와 정적 차량(빨간 사각)과 함께 생성된 측면 궤적(녹색선)을 보여준다.

충돌 전 종방향 이동을 제어하면서 인접 차선으로 횡방향 변화를 고려하기 위해 가속도 프로파일을 변경했다.

[시나리오 3,5 - 느리고 정적인 차량 포함]

충돌 전 종방향 이동을 제어해서 추가적인 측면 변화를 고려하기 위해 가속 프로파일을 변경해야함.

숫자는 인덱스를 나타냄

차선 변경을 하려면 종방향 플래너가 가속 또는 감속 속도 프로파일을 생성해야한다.

본 차량이 거의 기준 속도에 가깝게 움직이고 있었기에 속도 플래너는 감속 속도 프로파일을 계획했다.

인덱스 28-38에서 감속하는 차량과 본 차량이 통과한 후 본차량이 기준 경로를 따르는 궤적을 생성한다.

[시나리오 4 - 갑자기 끼어드는 차량 포함]

충돌 전 종방향 이동을 제어하기 위해 가속도 프로파일을 변경함.

상대 차량이 본 차랑의 기준 경로에 진입하면 종방향 제어기가 즉시 감속하는 것을 볼 수 있다. 횡방향 플래너는 훨씬 큰 곡선의 우회경로를 생성함.

chapter 5.

결론 및 향후 작업

5.1 결론

동적 교통 상태를 통합해야만 최적의 경로를 계획할 수 있다.

제안한 경로 플래너는 모든 환경에서 최적으로 작동하는 것은 아니지만, 도시 지역에서 계산 복잡성을 줄이면서 코너 케이스 시나리오에서도 안전한 궤적을 생성할 수 있다.

본 알고리즘의 상위 특성은 알고리즘 복잡성과 궤적의 생성에 실패할 확률을 줄여준다.

반응형