> 기술 주변기기 > 일체 포함 > 심층 강화 학습으로 실제 자율 주행을 다룬다

심층 강화 학습으로 실제 자율 주행을 다룬다

WBOY
풀어 주다: 2023-04-09 11:01:08
앞으로
1601명이 탐색했습니다.

arXiv 논문 "심층 강화 학습을 사용하여 현실 세계 자율 주행 다루기"가 2022년 7월 5일에 업로드되었습니다. 저자는 이탈리아 파르마 대학의 Vislab과 Ambarella(Vislab 인수) 출신입니다.

심층 강화 학습으로 실제 자율 주행을 다룬다

일반적인 자율 주행 조립 라인에서 규제 및 제어 시스템은 가장 중요한 두 가지 구성 요소를 나타내며, 센서에서 검색한 데이터와 인식 알고리즘에서 처리한 데이터를 사용하여 안전하고 편안한 자율 주행을 구현합니다. 행동. 특히, 계획 모듈은 자율주행차가 올바른 상위 작업을 수행하기 위해 따라야 하는 경로를 예측하는 반면, 제어 시스템은 조향, 스로틀 및 제동을 제어하는 ​​일련의 하위 작업을 수행합니다.

이 연구에서는 가속도와 조향 각도를 예측하기 위해 신경망을 훈련시키는 모델이 없는 심층 강화 학습(DRL) 플래너를 제안하고 이를 통해 자율주행차에 대한 위치 파악 및 인식 알고리즘의 출력을 얻습니다. 데이터는 단일 모듈을 구동합니다. 그 차량. 특히, 완벽하게 시뮬레이션되고 훈련된 시스템은 시뮬레이션 및 실제(팔마시 지역) 무장애 환경에서 원활하고 안전하게 주행할 수 있어 시스템의 일반화 능력이 우수하고 훈련 시나리오가 아닌 환경에서도 주행할 수 있음을 입증합니다. 또한 실제 자율 주행 차량에 시스템을 배포하고 시뮬레이션 성능과 실제 성능 간의 격차를 줄이기 위해 저자는 시뮬레이션 훈련 중 실제 환경의 동작을 재현할 수 있는 소형 신경망으로 표현되는 모듈도 개발했습니다. . 자동차의 동적 행동.

지난 수십 년 동안 단순한 규칙 기반 접근 방식부터 AI 기반 지능형 시스템 구현에 이르기까지 차량 자동화 수준을 향상시키는 데 엄청난 진전이 있었습니다. 특히 이러한 시스템은 규칙 기반 접근 방식의 주요 제한 사항, 즉 다른 도로 사용자와의 협상 및 상호 작용 부족, 장면 역학에 대한 이해 부족 등을 해결하는 것을 목표로 합니다.

강화 학습(RL)은 바둑, 아타리 게임, 체스 등 개별 제어 공간 출력을 사용하는 작업과 연속 제어 공간에서의 자율 주행을 해결하는 데 널리 사용됩니다. 특히, RL 알고리즘은 자율주행 분야에서 능동 차선 변경, 차선 유지, 추월 기동, 교차로 및 로터리 처리 등과 같은 의사 결정 및 기동 실행 시스템을 개발하기 위해 널리 사용됩니다.

이 기사에서는 소위 Actor-Critics 알고리즘 제품군에 속하는 D-A3C의 지연 버전을 사용합니다. 특히 배우와 비평가라는 두 가지 다른 개체로 구성됩니다. Actor의 목적은 에이전트가 수행해야 하는 작업을 선택하는 것이고, Critics는 상태 가치 함수, 즉 에이전트의 특정 상태가 얼마나 좋은지 추정합니다. 즉, 행위자는 행동에 대한 확률 분포 π(a|s; θπ)이고(여기서 θ는 네트워크 매개변수임) 비평가는 추정된 상태 값 함수 v(st; θv) = E(Rt|st)입니다. 여기서 R은 예상 수익.

자체 개발한 고화질 지도는 시뮬레이션 시뮬레이터를 구현한 것으로, 실제 자율주행차 테스트 시스템의 일부 지도 영역인 그림 a에 장면의 예가 나와 있고, 그림 b에는 주변 모습이 나와 있습니다. 50×에 해당하는 지능형 신체 인식 50미터 영역은 장애물(그림 c), 주행 가능 공간(그림 d), 에이전트가 따라야 하는 경로(그림 e), 정지선(그림 e)의 4개 채널로 구분됩니다. 에프). 시뮬레이터의 고화질 지도를 사용하면 위치나 차선 수, 도로 속도 제한 등과 같은 외부 환경에 대한 여러 정보를 검색할 수 있습니다.

심층 강화 학습으로 실제 자율 주행을 다룬다

부드럽고 안전한 운전 스타일을 달성하는 데 중점을 두어 에이전트가 장애물이나 다른 도로 사용자를 제외하고 정적인 장면에서 훈련되어 경로를 따르고 속도 제한을 준수하는 방법을 학습합니다.

그림에 표시된 신경망을 사용하여 에이전트를 훈련하고 100밀리초마다 조향 각도와 가속도를 예측합니다. 이는 두 개의 하위 모듈로 나누어집니다. 첫 번째 하위 모듈은 조향 각도 sa를 정의할 수 있고 두 번째 하위 모듈은 가속도 acc를 정의하는 데 사용됩니다. 이 두 하위 모듈에 대한 입력은 에이전트 주변 시야에 해당하는 4개 채널(주행 가능 공간, 경로, 장애물 및 정지선)로 표시됩니다. 각 시각적 입력 채널에는 에이전트에 과거 상태 기록을 제공하기 위한 4개의 84×84 픽셀 이미지가 포함되어 있습니다. 이 시각적 입력과 함께 네트워크는 목표 속도(도로 속도 제한), 에이전트의 현재 속도, 현재 속도-목표 속도 비율, 조향 각도 및 가속과 관련된 최종 동작을 포함한 5개의 스칼라 매개변수를 수신합니다.

심층 강화 학습으로 실제 자율 주행을 다룬다

탐색을 보장하기 위해 두 개의 가우스 분포를 사용하여 두 하위 모듈의 출력을 샘플링하여 상대 가속도(acc=N(μacc, σacc))와 조향 각도(sa=N(μsa)를 얻습니다. , σsa) ). 표준 편차 σacc 및 σsa는 모델의 불확실성을 추정하기 위해 훈련 단계 동안 신경망에 의해 예측되고 변조됩니다. 또한 네트워크는 각각 가속도 및 조향 각도와 관련된 두 가지 서로 다른 보상 함수 R-acc-t 및 R-sa-t를 사용하여 해당 상태 값 추정치(vacc 및 vsa)를 생성합니다.

신경망은 팔마(Palma)시의 네 장면에서 훈련됩니다. 각 시나리오에 대해 여러 인스턴스가 생성되고 에이전트는 이러한 인스턴스에서 서로 독립적입니다. 각 에이전트는 조향 각도가 [-0.2, +0.2]이고 가속도가 [-2.0m, +2.0m]인 운동학적 자전거 모델을 따릅니다. 세그먼트가 시작될 때 각 에이전트는 임의의 속도([0.0, 8.0])로 운전을 시작하고 도로 속도 제한을 준수하면서 의도한 경로를 따릅니다. 이 도시 지역의 도로 속도 제한은 4ms에서 8.3ms입니다.

마지막으로 훈련 장면에 장애물이 없으므로 클립은 다음 최종 상태 중 하나로 끝날 수 있습니다.

  • 목표 달성: 에이전트가 최종 목표 위치에 도달합니다.
  • 도로 이탈: 에이전트가 의도한 경로를 벗어나 조향 각도를 잘못 예측합니다.
  • Time's Up: 조각 완료 시간이 만료됩니다. 이는 주로 도로 제한 속도 이하로 운전하는 동안 가속 출력을 조심스럽게 예측하기 때문입니다.

시뮬레이션 및 실제 환경에서 자동차를 성공적으로 운전할 수 있는 전략을 얻으려면 원하는 행동을 달성하기 위한 보상 형성이 중요합니다. 특히, 두 가지 동작을 각각 평가하기 위해 두 가지 다른 보상 함수가 정의됩니다. R-acc-t와 R-sa-t는 각각 다음과 같이 정의된 가속도 및 조향 각도와 관련됩니다.

심층 강화 학습으로 실제 자율 주행을 다룬다

R-sa-t와 R-acc-t는 모두 공식에 가속도와 조향 각도의 차이가 각각 특정 임계값 δacc 및 δsa보다 큰 두 개의 연속 동작에 페널티를 주는 요소를 포함합니다. 특히 연속된 두 가속도의 차이는 다음과 같이 계산됩니다. Δacc=|acc(t)−acc(t−1)|, rac_indecision은 다음과 같이 정의됩니다.

심층 강화 학습으로 실제 자율 주행을 다룬다

이에 비해 두 조향 각도는 연속 예측 간의 차이는 Δsa=|sa(t)−sa(t−1)|로 계산되는 반면, rsa_indecision은 다음과 같이 정의됩니다:

심층 강화 학습으로 실제 자율 주행을 다룬다

마지막으로 R-acc-t와 R-sa-t는 터미널에 따라 달라집니다. 에이전트가 달성한 상태:

심층 강화 학습으로 실제 자율 주행을 다룬다

목표 달성: 에이전트가 목표 위치에 도달하므로 두 보상에 대한 r터미널이 +1.0으로 설정됩니다.

도로를 벗어나는 경우: 주로 예측으로 인해 에이전트가 경로에서 벗어납니다. 조향 각도가 부정확합니다. 따라서 Rsa,t에 -1.0의 음수 신호를 할당하고 R-acc-t에 0.0의 음수 신호를 할당합니다.

심층 강화 학습으로 실제 자율 주행을 다룬다Time is up: 세그먼트를 완료하는 데 사용할 수 있는 시간이 만료됩니다. 따라서 rterminal은 R-acc-t의 경우 -1.0, R-sa-t의 경우 0.0을 가정합니다.

시뮬레이터와 관련된 주요 문제 중 하나는 시뮬레이션 데이터와 실제 데이터의 차이입니다. 이는 시뮬레이터 내에서 실제 상황을 실제로 재현하기 어렵기 때문에 발생합니다. 이 문제를 극복하기 위해 합성 시뮬레이터를 사용하여 신경망에 대한 입력을 단순화하고 시뮬레이션 데이터와 실제 데이터 간의 격차를 줄입니다. 실제로 신경망에 입력되는 4개 채널(장애물, 주행 공간, 경로, 정지선)에 포함된 정보는 실제 자율주행차에 내장된 인지 및 위치 파악 알고리즘과 고화질 지도를 통해 쉽게 재현할 수 있습니다.
  • 또한 시뮬레이터 사용과 관련된 또 다른 문제는 시뮬레이션 에이전트가 목표 작업을 수행하는 방식과 자율주행차가 해당 명령을 수행하는 두 가지 방식의 차이점과 관련이 있습니다. 실제로, 시간 t에서 계산된 목표 동작은 이상적으로는 시뮬레이션에서 동일한 정확한 순간에 즉시 영향을 미칠 수 있습니다. 차이점은 실제 차량에서는 이런 일이 발생하지 않는다는 것입니다. 왜냐하면 현실적으로 그러한 대상 작업은 일부 역학을 통해 실행되어 실행 지연(t+δ)이 발생하기 때문입니다. 따라서 실제 자율주행차의 에이전트가 이러한 지연을 처리하도록 훈련하려면 시뮬레이션에 이러한 응답 시간을 도입하는 것이 필요합니다.
  • 이를 위해 에이전트는 보다 현실적인 행동을 달성하기 위해 먼저 에이전트가 목표 행동을 예측하기 위해 수행해야 하는 신경망에 저역 통과 필터를 추가하도록 훈련됩니다. 그림에서 볼 수 있듯이 파란색 곡선은 목표 동작(예의 조향 각도)을 사용한 시뮬레이션에서 발생하는 이상적이고 순간적인 응답 시간을 나타냅니다. 그런 다음 저역 통과 필터를 도입한 후 녹색 곡선은 시뮬레이션된 에이전트 응답 시간을 나타냅니다. 대조적으로, 주황색 곡선은 동일한 조향 조작을 수행하는 자율주행차의 동작을 보여줍니다. 그러나 시뮬레이션 차량과 실제 차량 간의 응답 시간 차이는 여전히 관련이 있음을 그림에서 알 수 있습니다.

실제로 신경망에 의해 미리 설정된 가속도 및 조향 각도 지점은 실행 가능한 명령이 아니며 시스템의 관성, 액추에이터의 지연 및 기타 비이상적인 요소와 같은 일부 요소를 고려하지 않습니다. 따라서 실제 차량의 동역학을 최대한 현실적으로 재현하기 위해 3개의 완전 연결 레이어(심층 응답)로 구성된 작은 신경망으로 구성된 모델이 개발되었습니다. 깊이 응답 거동의 그래프는 위 그림에서 빨간색 점선으로 표시되어 있으며, 실제 자율주행차를 나타내는 주황색 곡선과 매우 유사하다는 것을 알 수 있습니다. 훈련 장면에 장애물과 교통 차량이 없다는 점을 감안할 때 설명된 문제는 조향 각도 활동에서 더 두드러지지만 가속 출력에도 동일한 아이디어가 적용되었습니다.

자율 운전 자동차에서 수집된 데이터 세트를 사용하여 심층 응답 모델을 훈련합니다. 여기서 입력은 인간 운전자가 차량에 내린 명령(가속기 압력 및 스티어링 휠 회전)에 해당하고 출력은 차량의 스로틀에 해당합니다. , 제동 및 굽힘은 GPS, 주행 거리계 또는 기타 기술 측정을 사용하여 수행할 수 있습니다. 이러한 방식으로 이러한 모델을 시뮬레이터에 내장하면 자율주행차의 동작을 재현하는 확장성이 뛰어난 시스템이 탄생합니다. 따라서 깊이 응답 모듈은 조향 각도 보정에 필수적이지만 덜 명백하더라도 가속에는 필요하며 이는 장애물이 도입되면 명확하게 드러납니다.

심층 응답 모델이 시스템에 미치는 영향을 확인하기 위해 두 가지 다른 전략이 실제 데이터에서 테스트되었습니다. 그런 다음 차량이 경로를 올바르게 따르고 HD 지도에서 도출된 속도 제한을 준수하는지 확인합니다. 마지막으로 모방 학습을 통해 신경망을 사전 훈련하면 전체 훈련 시간을 크게 줄일 수 있다는 것이 입증되었습니다.

전략은 다음과 같습니다.

  • 전략 1: 훈련에 심층 응답 모델을 사용하지 말고 저역 통과 필터를 사용하여 목표 동작에 대한 실제 차량의 반응을 시뮬레이션합니다.
  • 전략 2: 훈련을 위한 심층 응답 모델을 도입하여 보다 현실적인 역학을 보장합니다.

시뮬레이션에서 수행된 테스트는 두 전략 모두에서 좋은 결과를 얻었습니다. 실제로 훈련된 장면이든 훈련되지 않은 지도 영역이든 에이전트는 100% 원활하고 안전한 행동으로 목표를 달성할 수 있습니다.

실제 시나리오에서 전략을 테스트하여 다른 결과를 얻었습니다. 전략 1은 차량 동역학을 처리할 수 없으며 시뮬레이션의 에이전트와 다르게 예측된 작업을 수행합니다. 이러한 방식으로 전략 1은 예측의 예상치 못한 상태를 관찰하여 자율 차량의 시끄러운 동작과 불편한 동작으로 이어집니다.

이러한 행동은 시스템의 신뢰성에도 영향을 미치며, 실제로 도로를 벗어나는 자율주행차를 피하기 위해서는 인간의 도움이 필요할 때도 있습니다.

반면, 자율 주행 자동차에 대한 모든 실제 테스트에서 전략 2에서는 차량 역학과 시스템이 행동을 예측하기 위해 어떻게 진화할지를 알고 인간이 인계받을 필요가 없습니다. 사람의 개입이 필요한 유일한 상황은 다른 도로 사용자를 피하는 것입니다. 그러나 전략 1과 2는 모두 무장애 시나리오에서 훈련되었기 때문에 이러한 상황은 실패로 간주되지 않습니다.

전략 1과 전략 2의 차이점을 더 잘 이해하기 위해 신경망에서 예측한 조향 각도와 짧은 실제 테스트 기간 내에 중앙 차선까지의 거리를 보여드립니다. 두 가지 전략이 완전히 다르게 동작한다는 것을 알 수 있습니다. 전략 1(파란색 곡선)은 전략 2(빨간색 곡선)에 비해 시끄럽고 안전하지 않습니다. 이는 진정한 자율주행 차량에 배포하는 데 심층 응답 모듈이 중요하다는 것을 증명합니다. .

심층 강화 학습으로 실제 자율 주행을 다룬다

최적의 솔루션에 도달하기 위해 수백만 개의 세그먼트가 필요한 RL의 한계를 극복하기 위해 IL(모방 학습)을 통해 사전 학습을 수행합니다. 또한 IL의 추세는 대규모 모델을 훈련하는 것이지만 동일한 작은 신경망(~100만 개의 매개변수)이 사용됩니다. 더 견고성과 일반화 기능을 보장하기 위해 RL 프레임워크를 사용하여 시스템을 계속 훈련하는 것이 아이디어이기 때문입니다. 이렇게 하면 하드웨어 리소스의 사용량이 증가하지 않으며 이는 가능한 미래의 다중 에이전트 교육을 고려하는 데 중요합니다.

IL 훈련 단계에 사용되는 데이터 세트는 움직임에 대한 규칙 기반 접근 방식을 따르는 시뮬레이션 에이전트에 의해 생성됩니다. 특히, 벤딩의 경우 에이전트가 특정 웨이포인트를 따라 이동하는 것을 목표로 하는 순수 추적 추적 알고리즘이 사용됩니다. 대신 IDM 모델을 사용하여 에이전트의 종방향 가속도를 제어하세요.

데이터세트를 생성하기 위해 규칙 기반 에이전트를 4개의 훈련 장면으로 이동하여 100밀리초마다 스칼라 매개변수와 4개의 시각적 입력을 저장했습니다. 대신 순수 추적 알고리즘과 IDM 모델을 통해 출력이 제공됩니다.

출력에 해당하는 두 개의 수평 및 수직 컨트롤은 단순히 튜플(μacc, μsa)을 나타냅니다. 따라서 IL 훈련 단계에서는 표준편차(σacc, σsa) 값이 추정되지 않으며, 가치함수(vacc, vsa)도 추정되지 않습니다. 이러한 기능과 깊이 응답 모듈은 IL+RL 훈련 단계에서 학습됩니다.

그림과 같이 사전 훈련 단계(파란색 곡선, IL+RL)부터 동일한 신경망의 훈련을 보여주며, 4가지 경우의 RL(빨간색 곡선, 순수 RL) 결과와 비교합니다. . IL+RL 훈련은 순수 RL보다 더 적은 횟수가 필요하고 추세가 더 안정적이지만 두 방법 모두 좋은 성공률을 달성합니다(그림 a).

심층 강화 학습으로 실제 자율 주행을 다룬다

또한 그림 b에 표시된 보상 곡선은 순수 RL 접근 방식(빨간색 곡선)을 사용하여 얻은 정책이 더 많은 훈련 시간에 대해 허용 가능한 솔루션에 도달하지 못하는 반면 IL+RL 정책은 몇 시간 내에 이를 달성한다는 것을 증명합니다. 조각 최적의 솔루션(그림 b의 파란색 곡선). 이 경우 최적의 솔루션은 주황색 점선으로 표시됩니다. 이 기준선은 4가지 시나리오에 걸쳐 50,000개의 세그먼트를 실행하는 시뮬레이션 에이전트가 얻은 평균 보상을 나타냅니다. 시뮬레이션된 에이전트는 IL 사전 훈련 데이터 세트를 수집하는 데 사용된 것과 동일한 결정론적 규칙을 따릅니다. 즉, 굽힘에는 순수 추적 규칙이 사용되고 종방향 가속에는 IDM 규칙이 사용됩니다. 지능-신체 상호작용이 필요할 수 있는 더 복잡한 기동을 수행하기 위한 훈련 시스템에서는 두 접근 방식 사이의 격차가 훨씬 더 커질 수 있습니다.

위 내용은 심층 강화 학습으로 실제 자율 주행을 다룬다의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:51cto.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿