자율주행차가 CNN 기술을 사용하는 방법

어렸을 때 나는 스스로 운전하는 것처럼 보이는 자동차가 등장하는 만화 영화를 보는 것을 좋아했습니다. 그런 자동차가 진짜일 수 있는지, 그 안에 작은 로봇이 그 자동차를 마법처럼 운전할 수 있는지 궁금해졌습니다.

나이가 들수록 자율주행차가 현실화되고 있습니다! 나는 정말로 그들에게 매료되었습니다. 예를 들어, 정지 신호나 빨간 신호등에서 멈춰야 할 때를 이해합니까? 길을 가다가 동물이나 사람이 돌아다니는 모습도 볼 수 있나요? 그리고 밖이 모두 어두울 때나 날씨가 모두 비나 눈이 올 때 운전하는 것은 어떻습니까?

자율주행차에 대해 이야기해 볼까요! 사람이 운전하지 않아도 스스로 운전할 수 있는 자동차다. Tesla 및 Waymo와 같은 회사는 딥 러닝과 같은 스마트 컴퓨터 기술을 사용하여 이러한 자동차를 매우 스마트하게 만듭니다. 딥 러닝은 도로 표지판을 이해하고 날씨가 좋지 않을 때에도 안전하게 운전하는 등 자동차가 멋진 일을 할 수 있도록 도와줍니다. 첨단 기술을 사용하여 미래에 우리가 어떻게 움직일지 결정하는 것이 전부입니다!

역사

자율주행자동차의 역사는 길고 흥미진진한 모험과 비슷합니다. 자율주행 자동차가 여전히 사람들의 꿈에 불과했던 1920년대를 상상해 보세요. 창의적인 정신을 지닌 프랜시스 후디나(Francis Houdina)는 도로의 선을 따라가는 자동차를 만들어 두각을 나타냈습니다. 그러나 이를 안내하려면 도로 아래에 숨겨진 특수 전선이 필요했습니다.

출처: theatlantic.com

1980년대와 1990년대에 카네기 멜론 대학교의 뛰어난 인재들은 뭔가 큰 일에 몰두했습니다. 그들은 카메라를 사용하여 “볼” 수 있는 자동차를 개발하여 바쁜 도시 거리를 탐색하는 데 도움을 주었습니다. 이 자동차는 탐험가를 배우는 것과 같았고, 주변을 둘러보며 운전하는 방법을 발견했습니다.

그러다가 2004년 사막 도전을 배경으로 중요한 순간이 찾아왔습니다. 자율주행차가 현장에 등장해 힘든 경주를 시도했습니다. 이 경주는 승리하지 못했지만 시작이었습니다. 더 나은 운전자가 되기 위한 훈련장이라고 생각하세요.

그러나 실질적인 돌파구는 Tesla, Uber, Google(현재 Waymo)과 같은 대기업이 자동차 부문에 진출한 2000년대와 2010년대에 일어났습니다. Google은 2009년부터 자율주행차 테스트를 시작했습니다. 2015년에 Tesla의 자동차는 특정 도로에서 부분적으로 스스로 운전할 수 있는 기능을 도입했습니다. 그들은 인간의 지속적인 통제 없이도 조향과 도로 유지를 처리할 수 있었습니다.

더 많은 기업이 경쟁에 참여하면서 완전 자율주행차를 만들기 위한 경쟁이 뜨거워졌습니다. 사람이 조종하지 않고도 운전할 수 있는 자동차를 만들기 위해 경주하는 발명가 팀을 상상해보세요.

그러나 이야기는 계속 진행됩니다. 우리는 여전히 스스로 운전할 수 있는 자동차를 만들기 위해 노력하고 있으며, 이는 우리가 여행하는 방식을 변화시킬 것입니다. 이 모험은 지금도 계속되고 있으며, 이는 멋진 자율주행차가 점점 더 좋아지고 있기 때문에 우리가 더 안전하고 쉽게 여행할 수 있다는 것을 의미합니다.

자율주행차는 어떻게 작동하나요?

자율주행차는 매우 똑똑한 의사결정자와 같습니다! 그들은 카메라, LiDAR, RADAR, GPS 및 관성 센서를 사용하여 주변 환경에 대한 데이터를 수집합니다. 그런 다음 딥 러닝 알고리즘이라는 특수 알고리즘이 이 데이터를 처리하여 주변에서 일어나는 일을 이해합니다. 이러한 이해를 바탕으로 안전하고 원활한 운전을 위해 중요한 결정을 내립니다.

출처: arxiv.org

자율주행차가 실제로 어떻게 작동하는지 알고 싶다면 위 다이어그램에 표시된 네 가지 부분을 자세히 살펴보겠습니다. 이는 마치 퍼즐을 푸는 것과 같습니다. 각 조각을 이해하면 이 놀라운 자동차가 어떻게 작동하는지 더 큰 그림을 보는 데 도움이 됩니다.

  • 지각
  • 현지화
  • 예측
  • 의사결정
    • 높은 수준의 경로 계획
    • 행동 중재
    • 모션 컨트롤러

지각

#1. 카메라

카메라는 자율주행차의 눈과 같아서 매우 중요합니다! 그들은 자동차가 주변에서 무슨 일이 일어나고 있는지 알 수 있도록 도와줍니다. 이 카메라는 사물이 무엇인지 파악하고, 여러 부품을 분리하고, 자동차가 어디에 있는지 찾는 등 다양한 작업을 수행합니다.

차량이 어떤 것도 놓치지 않도록 전면, 후면, 왼쪽, 오른쪽에 카메라가 배치되어 있습니다. 이 카메라들은 함께 작동하여 자동차 주변의 모든 것에 대한 큰 그림을 만듭니다. 마치 자동차만의 특별한 360도 뷰와 같습니다!

이 카메라는 단지 보여주기 위한 것이 아닙니다. 그들은 똑똑합니다. 일부는 최대 200미터까지 먼 곳을 바라볼 수 있어 자동차는 앞으로 무슨 일이 일어날지 알 수 있습니다. 다른 사람들은 근처의 물건에 집중하여 자동차가 세부 사항에 세심한 주의를 기울일 수 있도록 합니다. 이 카메라 팀은 자동차가 마치 친구가 안내하는 것처럼 모든 것을 보고 이해하여 안전하게 운전하고 좋은 선택을 할 수 있도록 도와줍니다.

주차할 때와 같이 때로는 카메라가 큰 도움이 됩니다. 넓은 시야를 보여주고 신중하게 운전할 때 좋은 선택을 하는 데 도움이 되기 때문입니다.

그러나 사물을 보기 위해 카메라만 사용하는 것은 문제가 있습니다. 특히 안개, 폭우, 밤과 같은 악천후에서는 더욱 그렇습니다. 이런 때에는 카메라의 사진이 이상하고 지저분해 보일 수 있어 정말 안전하지 않을 수 있습니다.

이러한 어려운 상황을 처리하려면 완전히 어두울 때나 완전히 밤이 될 때에도 작동할 수 있는 특수 센서가 필요합니다. 또한 우리가 볼 수 있는 빛 없이도 사물이 얼마나 멀리 있는지 측정할 수 있어야 합니다. 이러한 센서를 자동차의 눈(인식 시스템)에 장착하면 날씨가 좋지 않거나 시야가 어려울 때 자동차의 운전 능력이 향상됩니다. 따라서 자동차는 더욱 안전하게 운전할 수 있으며 이는 도로에서 운전하는 모든 사람에게 좋습니다.

#2. 라이더

빛 감지 및 범위 지정을 의미하는 LiDAR는 레이저를 사용하여 사물이 얼마나 멀리 있는지 파악하는 멋진 기술입니다. LiDAR는 레이저 빔을 내보내고 사물에서 돌아오는 데 걸리는 시간을 측정합니다.

LiDAR와 카메라가 함께 작동하면 자동차가 사물을 더 명확하게 이해하는 데 도움이 됩니다. 자동차 주변의 모습을 3D 지도로 만들어줍니다. 이 특별한 정보는 스마트 컴퓨터 프로그램으로 확인될 수 있으며, 이는 자동차가 다른 자동차가 무엇을 할 것인지 추측하는 데 도움이 됩니다. 이는 혼잡한 교차로와 같이 도로가 까다로운 경우에 유용합니다. 자동차가 다른 자동차를 감시하고 안전하게 운전할 수 있기 때문입니다.

그러나 LiDAR에는 문제가 될 수 있는 한계가 있습니다. 밤이나 어두운 환경에서는 잘 작동하지만 비나 안개의 간섭으로 인해 어려움을 겪을 수 있으며 잠재적으로 인식이 부정확해질 수 있습니다. 이러한 문제를 해결하기 위해 우리는 LiDAR와 RADAR 센서를 동시에 사용합니다. 이러한 센서는 차량이 사물을 보다 명확하게 이해하는 데 도움이 되는 추가 정보를 제공합니다. 자동차는 더 안전하고 더 나은 방법으로 스스로 운전할 수 있습니다.

#삼. 레이더

RADAR는 RadioDetection and Ranging의 약자로 오랫동안 일상생활은 물론 군대에서도 사용되어 왔습니다. 원래 군대에서 물체를 탐지하기 위해 사용했던 RADAR는 전파 신호를 사용하여 거리를 계산합니다. 요즘 RADAR는 많은 자동차, 특히 자율주행 자동차에 필수적입니다.

RADAR는 어떤 종류의 날씨와 빛에서도 작동할 수 있기 때문에 정말 훌륭합니다. 레이저 대신 전파를 사용하므로 유연하고 매우 유용합니다. 그러나 RADAR는 잡음이 많은 센서로 간주됩니다. 즉, 카메라에 장애물이 보이지 않는 경우에도 장애물을 감지할 수 있습니다.

자율주행차의 두뇌는 우리가 “소음”이라고 부르는 RADAR의 모든 추가 신호로 인해 혼란을 겪을 수 있습니다. 이 문제를 해결하려면 자동차가 올바른 선택을 할 수 있도록 RADAR 정보를 정리해야 합니다.

데이터를 정리한다는 것은 중요한 신호와 중요하지 않은 신호를 분리하는 것과 같이 강한 신호와 약한 신호를 구별하기 위한 특별한 트릭을 사용하는 것을 의미합니다. 자동차는 정보를 더욱 잘 이해하기 위해 FFT(Fast Fourier Transforms)라는 영리한 기술을 사용합니다.

RADAR와 LiDAR는 종이 위의 점과 같은 단일 지점에 대한 정보를 제공합니다. 이러한 점을 더 잘 이해하기 위해 자동차는 그룹화와 같은 방법을 사용합니다. 비슷한 것을 하나로 합쳤을 때와 같습니다. 자동차는 유클리드 클러스터링(Euclidean Clustering)이나 K-평균 클러스터링(K-means Clustering)과 같은 영리한 통계 방법을 사용하여 유사한 점을 결합하고 이해합니다. 이를 통해 자동차는 더욱 스마트하고 안전하게 운전할 수 있습니다.

현지화

자율 주행 자동차에서 위치 확인 알고리즘은 VO(Visual Odometry)로 알려진 차량의 위치와 방향을 결정하는 데 중요한 역할을 합니다. VO는 연속된 비디오 프레임에서 핵심 포인트를 식별하고 일치시키는 방식으로 작동합니다.

자동차는 지도의 표시와 같은 정보의 특별한 점을 살펴봅니다. 그 후, 자동차는 SLAM이라는 통계를 사용하여 사물이 어디에 있는지, 어떻게 움직이는지 알아냅니다. 이는 자동차가 도로나 사람 등 주변 상황을 파악하는 데 도움이 됩니다.

그리고 이를 더욱 효과적으로 수행하기 위해 자동차는 딥러닝이라는 기술을 사용합니다. 그것은 슈퍼 스마트 컴퓨터와 같습니다.

이러한 트릭을 통해 자동차는 사물을 매우 잘 이해하게 됩니다. PoseNet 및 VLocNet++와 같은 신경망은 포인트 데이터를 활용하여 객체의 3D 위치와 방향을 추정합니다. 이러한 추정된 3D 위치와 방향은 아래 이미지에서 볼 수 있듯이 장면 의미를 도출하는 데 활용될 수 있습니다. 자동차가 수학과 스마트 컴퓨터 트릭을 사용하면 현재 위치와 주변에 무엇이 있는지 알 수 있습니다. 이는 차량이 스스로 안전하고 원활하게 운전할 수 있도록 도와줍니다.

예측

인간 운전자를 이해하는 것은 단순한 논리보다는 감정과 반응을 포함하기 때문에 실제로 복잡한 작업입니다. 우리는 다른 운전자가 무엇을 할지 모르기 때문에 자율주행차가 그들의 행동을 잘 추측하는 것이 중요합니다. 이는 도로에서의 안전을 보장하는 데 도움이 됩니다.

360도 뷰처럼 사방에 눈이 있는 자율주행 자동차를 상상해 보세요. 이를 통해 그들은 일어나는 모든 일을 볼 수 있습니다. 그들은 이 정보를 딥 러닝에 사용합니다. 자동차는 영리한 기술을 사용하여 다른 운전자가 무엇을 할지 예측합니다. 이는 잘하기 위해 미리 계획을 세워 게임을 하는 것과 비슷합니다.

딥러닝을 활용한 예측

자율주행차의 특수 센서는 눈과 같습니다. 그들은 자동차가 사진에 있는 물건이 무엇인지 알고, 주변에 있는 물건을 찾고, 어디에 있는지 알고, 물건이 끝나는 곳을 확인하도록 돕습니다. 이는 자동차가 근처에 무엇이 있는지 파악하고 현명한 선택을 하는 데 도움이 됩니다.

훈련 중에 딥 러닝 알고리즘은 LiDAR 및 RADAR에서 얻은 이미지와 클라우드 데이터 포인트에서 복잡한 정보를 모델링합니다. 실제 운전(추론) 중에 동일한 모델은 자동차가 제동, 정지, 감속, 차선 변경 등 가능한 움직임을 준비하는 데 도움을 줍니다.

딥러닝은 자동차의 똑똑한 도우미와 같습니다. 이를 통해 자동차는 확실하지 않은 사항을 이해하고, 위치를 파악하고, 운전을 더 잘 할 수 있습니다. 이를 통해 운전을 안전하게 유지하고 더욱 원활하게 이동할 수 있습니다.

그러나 까다로운 부분은 몇 가지 선택 중에서 최선의 조치를 결정하는 것입니다. 올바른 움직임을 선택하려면 자동차가 잘 운전하고 안전하게 지낼 수 있도록 신중한 사고가 필요합니다.

의사결정

자율주행차는 까다로운 상황에서 중요한 선택을 해야 하는데 그게 쉽지 않습니다. 이는 센서가 항상 정확하지 않을 수 있고 도로에 있는 사람들이 예상치 못한 일을 할 수 있기 때문입니다. 자동차는 충돌을 피하기 위해 다른 사람들이 무엇을 할지 추측하고 움직여야 합니다.

선택을 하려면 자동차에 많은 정보가 필요합니다. 자동차는 센서를 사용하여 이 정보를 수집한 다음 딥 러닝 알고리즘을 사용하여 사물의 위치를 ​​파악하고 무슨 일이 일어날지 예측합니다. 위치 파악은 자동차가 초기 위치를 파악하는 데 도움이 되는 반면, 예측은 환경을 기반으로 가능한 여러 가지 조치를 생성합니다.

그러나 질문은 남아 있습니다. 자동차는 어떻게 예측된 많은 행동 중에서 가장 좋은 행동을 선택합니까?

출처: semanticscholar.org

DRL(Deep Reinforcement Learning)은 의사결정을 내리는 기술로 MDP(Markov Decision Process)라는 알고리즘을 사용합니다. MDP는 도로 위의 사람들이 미래에 어떻게 행동할지 추측하는 데 도움이 됩니다. 움직이는 것이 많아지면 상황은 더욱 복잡해집니다. 이는 자율주행차가 더 많은 가능한 행동을 생각해야 함을 의미합니다.

자동차에 가장 적합한 움직임을 찾는 문제를 해결하기 위해 베이지안 최적화를 사용하여 딥 러닝 모델을 최적화했습니다. 경우에 따라 의사 결정을 위해 Hidden Markov 모델과 베이지안 최적화를 결합한 프레임워크가 사용되어 자율 주행 자동차가 다양하고 복잡한 시나리오에서 효과적이고 안전하게 탐색할 수 있습니다.

원천: arxiv.org

자율주행차의 의사결정은 4가지 주요 구성요소로 구성된 계층적 프로세스를 따릅니다.

경로 또는 경로 계획: 여행 시작 시 자동차는 현재 위치에서 원하는 목적지까지 최적의 경로를 결정합니다. 다양한 경로 중에서 최적의 솔루션을 찾는 것이 목표입니다.

행동 중재: 자동차는 경로를 계획한 후 경로를 따라 조종해야 합니다. 자동차는 도로나 교차로 같은 정적인 물체를 인식하지만 다른 운전자의 정확한 행동을 예측할 수는 없습니다. 이러한 불확실성을 처리하기 위해 우리는 계획을 위해 MDP(Markov Decision Process)와 같은 스마트한 방법을 사용합니다.

최상위 상태 머신의 시나리오 결정

모션 계획: 계획된 경로와 경로 탐색 방법을 결정하는 행동 계층을 통해 모션 계획 시스템은 자동차의 움직임을 조정합니다. 이는 차량이 탑승자에게 안전하고 편안한 방식으로 움직이는 것을 의미합니다. 얼마나 빨리 가는지, 차선을 변경하는지, 주변에 무엇이 있는지 등을 생각합니다.

차량 제어: 마지막 단계는 차량 제어로, 모션 계획 시스템에서 생성된 참조 경로를 실행하여 차량이 의도한 궤적을 원활하고 안전하게 따르도록 보장합니다.

의사결정을 이렇게 여러 부분으로 세분화함으로써 자율주행차는 복잡한 장소에서도 안전하고 잘 운전할 수 있습니다. 이를 통해 승객은 부드럽고 편안한 승차감을 느낄 수 있습니다.

컨볼루셔널 신경망

CNN(컨벌루션 신경망)은 공간 정보, 특히 이미지를 모델링하는 기능으로 인해 자율주행차에 널리 사용됩니다. CNN은 이미지에서 특징을 추출하는 데 탁월하여 다양한 것을 파악하는 데 도움이 됩니다.

CNN에서는 네트워크의 깊이가 증가함에 따라 다양한 레이어가 다양한 패턴을 포착합니다. 초기 레이어는 가장자리와 같은 단순한 특징을 감지하는 반면, 더 깊은 레이어는 개체 모양(나무의 나뭇잎, 차량의 타이어 등)과 같은 더 복잡한 특징을 인식합니다. 이러한 적응성은 CNN이 자율주행차의 핵심 알고리즘인 이유입니다.

CNN의 핵심 구성 요소는 컨벌루션 커널(필터 매트릭스)을 활용하여 입력 이미지의 로컬 영역을 처리하는 컨벌루션 계층입니다.

의미 있는 가중치를 얻기 위해 훈련 중에 필터 행렬이 업데이트됩니다. CNN의 기본 속성은 동일한 가중치 매개변수를 사용하여 다양한 변환을 표현하고 처리 공간을 절약하며 다양한 특징 표현을 가능하게 하는 가중치 공유입니다.

컨벌루션 레이어의 출력은 일반적으로 Sigmoid, Tanh 또는 ReLU와 같은 비선형 활성화 함수를 통해 전달됩니다. ReLU는 다른 것보다 빠르게 수렴하므로 선호됩니다. 또한 결과는 종종 최대 풀링 레이어를 통과합니다. 이렇게 하면 배경 및 질감과 같은 사진의 중요한 세부 정보가 유지됩니다.

CNN의 세 가지 필수 속성으로 인해 CNN은 자율주행차의 다용도 및 기본이 됩니다.

  • 로컬 수용 필드
  • 공유 가중치
  • 공간 샘플링

이러한 속성은 과적합을 줄이고 이미지 분류, 분할, 현지화 등에 중요한 표현과 기능을 저장합니다.

자율주행차를 개척하는 기업들이 사용하는 두 개의 CNN 네트워크는 다음과 같습니다.

  • Tesla의 HydraNet
  • Google Waymo의 ChauffeurNet

컨볼루셔널 신경망에 대해 자세히 알아보세요.

#1. Tesla의 HydraNet

HydraNet은 Ravi 등이 소개한 동적 아키텍처입니다. 2018년에는 주로 자율주행차의 의미분할을 위해 개발되었습니다. 핵심 목표는 추론 중 계산 효율성을 향상시키는 것입니다.

HydraNet의 개념에는 특정 작업에 할당된 분기라고 불리는 다양한 CNN 네트워크가 포함됩니다. 각 분기는 다양한 입력을 수신하며, 네트워크는 추론 중에 실행할 분기를 선택적으로 선택할 수 있으며, 궁극적으로 여러 분기의 출력을 집계하여 최종 결정을 내릴 수 있습니다.

테슬라의 하이드라넷

자율 주행 자동차의 맥락에서 입력은 정적 개체(나무 및 도로 난간), 도로 및 차선, 신호등 등과 같은 환경의 다양한 측면을 나타낼 수 있습니다. 이러한 입력은 별도의 분기에서 훈련됩니다. 추론 중에 게이트 메커니즘은 활성화할 분기를 결정하고 결합기는 해당 출력을 수집하여 최종 결정을 내립니다.

속도, 차선 및 움직임 감지

Tesla는 추론 중 개별 작업에 대한 데이터를 분리하는 문제를 해결하기 위해 공유 백본을 통합하는 HydraNet 아키텍처를 채택했습니다. 일반적으로 수정된 ResNet-50 블록인 공유 백본을 사용하면 네트워크가 모든 개체의 데이터에 대해 훈련될 수 있습니다. U-Net과 같은 의미론적 분할 아키텍처를 기반으로 하는 작업별 헤드를 사용하면 모델이 각 작업에 특정한 출력을 예측할 수 있습니다.

Tesla의 HydraNet은 조감도를 투사하여 모든 각도에서 환경을 3D로 표현하는 기능이 뛰어납니다. 이러한 향상된 차원성은 자동차의 탐색을 향상시키는 데 도움이 됩니다. 놀랍게도 Tesla는 LiDAR 센서를 사용하지 않고 이를 달성했습니다. 대신 카메라와 레이더라는 두 가지 센서에만 의존합니다. Tesla HydraNet의 효율성을 통해 8대의 카메라에서 얻은 정보를 처리하고 깊이 인식을 생성할 수 있어 추가 LiDAR 기술 없이도 인상적인 기능을 시연할 수 있습니다.

#2. Google Waymo의 ChauffeurNet

ChauffeurNet은 Google Waymo가 모방 학습을 사용하여 자율주행차를 훈련하는 데 사용하는 RNN 기반 신경망입니다. 주행 궤적을 생성하기 위해 주로 RNN에 의존하지만 FeatureNet으로 알려진 CNN 구성 요소도 통합합니다.

이 컨볼루셔널 특징 네트워크는 다른 네트워크에서 공유하는 상황별 특징 표현을 추출하고 인식 시스템에서 특징을 추출하는 데 사용됩니다.

원천: 리서치게이트

ChauffeurNet의 기본 개념은 모방 학습을 통해 전문 운전자를 모방하여 자율주행차를 훈련시키는 것입니다. 부족한 실제 훈련 데이터의 한계를 극복하기 위해 “ChauffeurNet: Learning to Drive by Imitating the Best and Synthesizing the Wors” 논문의 저자들은 합성 데이터를 도입했습니다.

이 합성 데이터는 궤적 경로 교란, 장애물 추가, 부자연스러운 장면 생성 등 다양한 편차를 가져옵니다. 실제 데이터만 사용하는 것보다 합성 데이터를 사용하여 자동차를 훈련하는 것이 더 효율적인 것으로 나타났습니다.

ChauffeurNet에서 인식 시스템은 엔드투엔드 프로세스의 일부가 아니라 중간 수준 시스템 역할을 합니다. 이를 통해 네트워크는 인식 시스템에서 다양한 입력 변형을 가질 수 있습니다. 네트워크는 센서에서 장면의 중간 수준 표현을 관찰하고 이 입력을 합성 데이터와 함께 사용하여 전문가의 운전 행동을 모방합니다.

ChauffeurNet은 인식 작업을 제외하고 환경에 대한 높은 수준의 조감도를 생성함으로써 더 쉬운 전이 학습을 촉진하고 네트워크가 실제 데이터와 시뮬레이션 데이터를 기반으로 더 나은 결정을 내릴 수 있도록 합니다. 네트워크는 중간 수준 표현을 기반으로 운전 경로의 연속 지점을 반복적으로 예측하여 운전 궤적을 생성합니다. 이러한 접근 방식은 자율 주행 차량을 보다 효과적으로 훈련시켜 보다 안전하고 신뢰할 수 있는 자율 주행 시스템을 향한 길을 제공할 수 있는 가능성을 보여주었습니다.

#삼. 자율주행차에 사용되는 부분적으로 관찰 가능한 마르코프 결정 프로세스

부분적으로 관찰 가능한 마르코프 결정 프로세스(POMDP)는 불확실성 하에서 결정을 내리기 위해 자율 주행 자동차의 맥락에서 사용되는 수학적 프레임워크입니다. 실제 시나리오에서 자율주행차는 센서 소음, 폐색 또는 불완전한 인식 시스템으로 인해 주변 환경에 대한 정보가 제한적인 경우가 많습니다. POMDP는 이러한 부분적인 관찰 가능성을 처리하고 불확실성과 사용 가능한 관찰을 모두 고려하여 최적의 결정을 내리도록 설계되었습니다.

POMDP에서 의사결정 에이전트는 부분적으로 관찰 가능한 상태가 있는 환경에서 작동합니다. 에이전트는 조치를 취하고 환경은 확률적으로 새로운 상태로 전환됩니다. 그러나 에이전트는 환경의 실제 상태에 대한 부분적인 관찰이나 노이즈 정보만 수신합니다. 목표는 환경의 불확실성과 에이전트의 관찰을 고려하면서 시간이 지남에 따라 예상되는 누적 보상을 최대화하는 정책을 찾는 것입니다.

원천: 리서치게이트

자율주행차의 맥락에서 POMDP는 모션 계획, 궤적 예측, 다른 도로 사용자와의 상호 작용과 같은 작업에 특히 유용합니다. 자율주행차는 주변 환경의 불확실성을 고려하여 POMDP를 사용하여 차선 변경, 속도 조정, 보행자 및 다른 차량과의 상호 작용에 대한 결정을 내릴 수 있습니다.

POMDP는 6개의 구성 요소로 구성되며 POMDP로 표시할 수 있습니다.

M:= (I, S, A, R, P, γ)

어디,

I: 관찰

S: 상태의 유한 집합

A: 유한한 동작 집합

R: 보상 기능

P: 전환 확률 함수

γ: 미래 보상에 대한 할인 요인.

POMDP는 여러 가능한 상태와 관찰을 고려해야 하기 때문에 계산이 까다로울 수 있습니다. 그러나 최적의 정책을 효율적으로 근사화하고 자율주행차에서 실시간 의사결정을 가능하게 하기 위해 신념 공간 계획 및 몬테카를로 방법과 같은 고급 알고리즘이 종종 사용됩니다.

POMDP를 의사결정 알고리즘에 통합함으로써 자율주행차는 복잡하고 불확실한 환경을 보다 효과적이고 안전하게 탐색할 수 있으며, 센서 판독값의 불확실성을 고려하고 정보에 입각한 결정을 내려 의도한 목표를 달성할 수 있습니다.

에이전트 역할을 하는 자율주행차는 머신러닝의 일종인 강화학습(RL)으로 환경과 상호작용하며 학습한다. 상태, 행동, 보상은 심층 강화 학습(DRL)의 핵심에 있는 세 가지 중요한 변수입니다.

상태(State): 도로에서의 위치 등 특정 시점의 자율주행차의 현재 상황을 설명합니다.

동작: 차선 변경이나 속도 조정과 같은 결정을 포함하여 자동차가 할 수 있는 모든 가능한 움직임을 나타냅니다.

보상: 자동차가 특정 조치를 취할 때마다 피드백을 제공합니다. 보상은 긍정적일 수도 있고 부정적일 수도 있으며, DRL의 목표는 누적 보상을 최대화하는 것입니다.

알고리즘에 올바른 동작이 명시적으로 제공되는 지도 학습과 달리 DRL은 환경을 탐색하고 해당 동작에 따라 보상을 받음으로써 학습합니다. 자율주행차의 신경망은 CNN(Convolutional Neural Network)에서 추출한 특징을 포함하는 인식 데이터를 기반으로 훈련됩니다.

그런 다음 DRL 알고리즘은 입력의 저차원 변환인 이러한 표현에 대해 훈련되어 추론 중에 보다 효율적인 의사 결정을 내릴 수 있습니다.

실제 시나리오에서 자율주행차를 훈련시키는 것은 위험하고 비실용적입니다. 대신 인간의 안전에 위험이 없는 시뮬레이터에서 훈련을 받습니다.

모의 실험 장치

일부 오픈 소스 시뮬레이터는 다음과 같습니다.

인식 데이터와 강화 학습을 결합함으로써 자율주행차는 복잡한 환경을 탐색하는 방법을 학습하고, 안전하고 최적의 결정을 내리며, 실제 운전 시나리오를 처리하는 데 더욱 능숙해질 수 있습니다.

자주 묻는 질문

자율주행차란 무엇인가요?

흔히 자율주행차라고 불리는 자율주행차는 최첨단 센서와 인공지능을 탑재해 스스로 길을 찾고 운전할 수 있는 자동차를 말합니다. 이러한 차량은 카메라, LiDAR, RADAR 및 정교한 알고리즘을 사용하여 주변 환경을 평가하고 주행 판단을 내립니다.

자율주행차는 안전한가요?

자율주행차 개발에서는 안전이 최우선이다. 높은 안전 규정을 준수하기 위해 이러한 차량은 철저한 테스트와 시뮬레이션을 거칩니다. 테스트 과정에서 사고가 발생하기도 했지만 궁극적인 목표는 인간이 운전하는 자동차보다 자율주행차를 더 안전하게 만드는 것입니다.

어떤 날씨에도 자율주행차를 사용할 수 있나요?

폭우나 눈 등 극단적인 날씨는 자율주행 자동차에 문제를 일으킬 수 있습니다. 날씨가 좋지 않으면 센서의 정확도가 떨어지고 운전 능력이 저하될 수 있습니다. 엔지니어들은 악천후 조건에서도 기술이 더 잘 작동하도록 끊임없이 노력하고 있습니다.

자율주행차 – 허용되나요?

자율주행차의 합법성은 국가와 위치에 따라 다릅니다. 자율주행차를 수용하기 위해 많은 관할권에서는 법률과 규정을 개정하고 있습니다. 자율주행차 테스트와 제한된 배포는 이미 일부 지역에서 허용됩니다.

자율주행차에는 사람의 개입이 필요한가?

현재 사용 가능한 대부분의 자율주행차는 레벨 2 또는 레벨 3 자동화 수준으로, 때로는 사람의 도움이 필요할 수 있습니다. 그러나 업계에서는 사람의 개입이 최소화되거나 불필요해지는 레벨 4 또는 레벨 5와 같은 더 높은 수준의 자동화에 도달하기 위해 노력하고 있습니다.

결론

결론적으로, 자율주행차는 도로 효율성과 안전성을 향상시켜 자동차 산업을 변화시킬 수 있는 능력을 갖추고 있습니다. LiDAR, RADAR, 카메라, 고급 알고리즘 등 이러한 자율주행차를 지원하는 모든 필수 구성 요소를 살펴보았습니다.

진전이 유망한 반면, 여전히 해결해야 할 중요한 과제가 있습니다. 현재 자율주행차는 발전 수준 5 중 수준 2에 있으며, 특정 시나리오에서는 사람의 개입이 필요합니다. 그러나 지속적인 헌신과 혁신을 통해 우리는 완전한 자율성을 달성하는 데 조금씩 가까워지고 있습니다.

주요 시사점

고급 알고리즘: 특히 도로 표시와 표지판이 부족한 까다로운 조건에서 도로 인식을 향상하려면 알고리즘을 더욱 최적화하는 것이 중요합니다.

감지 방식 개선: 매핑 및 위치 파악을 위한 감지 방식의 정확성과 효율성을 개선하는 것은 더 높은 수준의 자율성을 달성하는 데 중요한 역할을 합니다.

차량 간 통신: 차량 간 통신을 추구함으로써 연결되고 지능적인 도로 생태계 조성이 가능해집니다.

인간-기계 상호작용: 자율주행 기술에 대한 대중의 수용을 장려하려면 인간-기계 상호작용과 관련된 문제를 조사하고 해결해야 합니다.

미래 전망: 어려움에도 불구하고 지금까지의 성과는 놀랍습니다. 지속적인 협력과 연구를 통해 자율주행차는 모든 사람에게 보다 안전하고 효과적인 교통 환경을 제공할 수 있는 잠재력을 제공합니다.

우리 모두는 완전한 자율주행차를 향한 동일한 여정을 걷고 있습니다. 우리가 과제를 해결하고 혁신에 박차를 가하면서 차량이 도로를 원활하게 관리하고 모든 사람의 안전, 환경 및 편의성을 향상시키는 시대가 가까워지고 있습니다.

이제 공간 컴퓨팅과 자율 주행 자동차 개발에 적용되는 방법에 대해 배울 수 있습니다.