최근 아마존 (Amazon)에서는 인공지능의 알고리즘중에 하나인, 강화학습(Reinforcement learning)을 이용하여 자율주행 RC카를 제어할 수 있는 상품을 개발하였습니다.
유저가 파이썬을 이용하여, 차량의 가속/감속/조향에 대한 강화학습 알고리즘을 구현하고, 이를 온라인 AWS 3D 트랙 시뮬레이터를 통해서, 학습을 시킬 수 있습니다.
Deep Racer League
학습한 자율주행 모델은 매달 온라인에서 개최되는 DeepRacer대회에 참여하여 성능을 시험해 볼 수 있습니다.
aws.amazon.com/ko/deepracer/league/
시작하는 유저들을 위한 오픈디비전 리그에서 타임랩을 겨뤄서, 상위 10%내에 입상하면, 프로 디비전 리그에 진출할 수 있습니다.
프로 디비전에서는 다른 봇 차량들과 경주를 하게 되는데, 봇 차량들과의 충돌 및 트랙 이탈에 대한 페널티를 피하면서, 랩타임을 경쟁하게 됩니다. 매 월말에 16위안에 드는 경주자는 프로 파일널 리그에 진출할 수 있는 자격이 주어집니다.
프로 파이널 리그에 참여한 개발자들은 AWS DeepRacer 콘솔에서 라이브(Live)로 경주할 모형을 제출하게 됩니다.
프로 파이널 이전의 리그에서는 참가자들이 각자 시뮬레이션환경에서 따로 따로 랩타임을 측정하여 경쟁하였는데, 프로 파이널 리그 부터는, Live (생방송)으로 참가자들이 동시에 접속하여 3D시뮬레이션 트랙을 달리면서, 경주를 진행하게 됩니다.
4월 프로 파이널은 Lars 서킷에서 열리는 장애물 회피 경주로 구성됩니다. 각 개발자에게는 가장 빠른 단일 랩 타임을 달성할 수 있는 두 번의 시도가 제공됩니다. 경주가 끝나고 파이널 순위표의 10위 안에 든 개발자에게는 AWS DeepRacer Evo 디바이스가 수여됩니다. 이것을 이용해서, 추후에 갖게 될 수도 있는 오프라인 대회를 준비하면 될 것 같습니다.
또한, 3위 안에 든 개발자에게는 AWS re:Invent (아마존에서 매년하는 개최하는 클라우드 관련 세미나 행사)의 AWS DeepRacer League Championships 참가를 위한 여행 경비를 받을 수 있는 기회가 제공됩니다. (Amazon 본사가 있는 미국)
DeepRacer League Championships에서는 오프라인에서 실재 DeepRacer 경주용 자동차(차량의 1/18 비율 크기)를 갖고 시합에 참여하게 됩니다.
Deep Racer 강화학습 모델 개발
아마존에서는 쉽게 강화학습을 즐길 수 있는 자율주행 강화학습 플랫폼을 제공하고 있습니다.
강화학습은 크게 가치기반 최적화와, 정책기반 최적화로 분류할 수 있습니다. DeepRacer의 경우에는 정책기반 최적화를 이용합니다.(Policy optimization)
강화학습은 모델을 구성하고 에이전트가 행동을 하면서, 환경에서 얻게되는 보상들을 최대로 만들기 위한 최적화 훈련입니다. (목표치는 하나의 학습 시나리오에서의 최대의 보상을 얻게 되도록 설정)
Deeprace자동차는 앞에 달린 두개의 카메라로, 자신의 앞에 두개의 영상을 1초에 15번 찍으면서 트랙라인과 앞의 사물객체의 거리 심도를 계산합니다.
모델과 보상함수를 이용해서 에이전트는 환경에서 계속 행동에 대한 보상을 받게 됩니다. 하나의 시나리오(여기서는 트랙)가 종료된 이후에, 이 보상들을 평가하여 모델을 개선하고 다시 환경에 에이전트를 보내서 훈련하는 과정을 반복하게 됩니다.
모델을 생성하고 나면 훈련할 트랙을 AWS에서 고를 수 있습니다.
개발자는 강화학습의 보상함수를 직접 만들고 콘솔에서 학습을 진행 할 수 있습니다.
아래 주소에서 학습 주행 시나리오들에 대한 주행 괘적 로그를 분석할 수 있습니다.
DeepRacer 자동차
AWS DeepRacer(399 USD)는 물리적 트랙에서 타임 트라이얼 모델을 테스트할 수 있도록 설계된 1/18 비율의 사륜구동 완전 자율 주행 자동차입니다. 1080p 해상도의 단일 4메가픽셀 카메라를 통해 트랙과 강화 학습 모델을 보면서 스로틀과 조향 장치를 제어할 수 있으므로, 시뮬레이션 환경에서 훈련한 타임 트라이얼 모델을 실제 환경으로 이전하는 방법을 알아볼 수 있습니다.
AWS DeepRacer Evo(598 USD)는 차세대 자율 경주용 자동차입니다. 스테레오 카메라와 LiDAR 센서를 완벽하게 갖추고 있어 객체 회피 및 헤드투헤드 경주를 가능하게 하므로 개발자에게 경주를 한 단계 끌어올리는 데 필요한 모든 것을 제공합니다. 객체 회피 경주에서 개발자는 센서를 사용하여 트랙의 장애물을 탐지하고 피합니다. 헤드투헤드 경주에서 개발자는 같은 트랙의 다른 DeepRacer와 경주를 벌이며 상대 차량을 피하면서 최고의 랩 타임을 내기 위해 노력합니다. 전방을 향한 왼쪽과 오른쪽 카메라는 스테레오 카메라를 구성하여 자동차가 이미지의 심도 정보를 학습하는 데 도움이 됩니다. 이 정보는 트랙에서 접근하는 객체를 감지하고 피하는 데 사용될 수 있습니다. LiDAR 센서는 후방을 향하고 있으며 차량 뒤와 옆에 있는 객체를 탐지합니다. DeepRacer를 이미 소유하고 있는 개발자는 AWS DeepRacer Sensor Kit(249 USD)를 통해 Evo와 동일한 성능을 갖도록 차량을 업그레이드할 수 있습니다.
위의 문제들을 쉽게 해결하기 위해서, 아마존에서 RL을 위한 아래와 같은 플랫폼도 있다고 하니, 관심있으면 사용해 볼 수도 있습니다.
*아래의 DeepRacer 개발 프로세스 설명하는 AWS유튜브를 참조하였습니다.
www.youtube.com/watch?v=3Q6ZlqSrBks
개발 비용
1. 자율주행 모델의 온라인 강화학습 비용
모델 학습 비용 예제:
aws.amazon.com/ko/deepracer/pricing/#Free_Tier
2. Deepracer RC카 구매 비용
DeepRacer자동차를 구매하여 실제 트랙에서 모델을 시험해 볼 수 있습니다. 온라인 리그내의 파이널 디비전에서 10위안에 입상하면, 자동차를 상으로 받을 수 있기 때문에, 만약에 3위안에 들어서 Championship에 진출한다고 해도, 오프라인 대회를 진행하기 위해서, 따로 구매할 필요는 없어집니다.
위에서 설명한 것 처럼,
아마존에서는 강화학습 개발자가, 자동차 경주라는 콘텐츠를 이용해서 재미있게 강화학습을 체험하고 학습할 수 있는 좋은 플랫폼을 제공하고 있습니다.
실재로 인공지능이든 머신러닝이든 목적의식을 갖고, 더 좋은 모델을 위해서 노력할만한 동기가 부족한 초기 개발자 및 학습자들에게, 서로 다른 유저들과 경쟁하면서 발전할 수 있는 좋은 AI학습 환경을 제공하고 있습니다.
*DeepRacer개발을 위한 보다 자세한 사항은 아마존 DeepRacer 홈페이지에 나와있습니다.