https://arxiv.org/abs/2107.05664
Altruistic Maneuver Planning for Cooperative Autonomous Vehicles Using Multi-agent Advantage Actor-Critic
With the adoption of autonomous vehicles on our roads, we will witness a mixed-autonomy environment where autonomous and human-driven vehicles must learn to co-exist by sharing the same road infrastructure. To attain socially-desirable behaviors, autonomou
arxiv.org
Introduction
"Altruistic" = "이타적인"
이 논문에서는 decentralized RL 구조를 적용하여 maneuver planning 과정에서 implicit하게 autonomous agent들의 altruism을 유도할 수 있는 e2e 방법론을 소개하고 있다. (2021 CVPR)
Contribution은 다음과 같다.
- Multi-agent A2C (Advantage Actor-Critic)를 사용한 decentralized RL 알고리즘을 적용하여 AV의 decision-making 과정에서 altruism을 유도하고, 다른 agent들의 utility를 고려함으로써 socially-desirable behavior를 갖게 함.
- Altruistic AV가 egoistic AV에 비해 충돌 수를 감소시키고 전체적인 traffic flow를 향상시키는 긴 sequence의 planning이 가능함을 복잡한 시나리오를 통해 검증함.
Multi-agent RL
Multi-agent RL이 어려운 기본적인 이유는 agent들과 environment가 nonstationary한 특성을 갖고 서로 상호작용하기 때문이다. 기존의 연구들은 world의 global GT state에 대한 접근이 가능하다고 가정했으며, 이는 real-world에 적용 불가능하다는 단점을 갖고 있다 [2], [6].
본 논문에서는 partial observerbility를 가정했으며, AV간 협력을 촉진할 수 있는 decentralized reward function을 정의하여 training 및 execution 과정에서 모두 사용하였다. 또한, [13]에서 제안한 바와 같이 centralized action-value function을 적용한 Actor-Critic method를 사용했다. 하지만, [13]에서는 다른 모든 agent들의 state set과 같은 local observation를 쓸 수 있었던 반면, 여기서는 다른 HV나 AV들의 action에 대해 접근하지 못한다.
(위 설명이 무슨 뜻인지 모르겠으면 유사한 알고리즘을 소개한 여기를 보는 것도 좋을 것 같다!)
[2] Itamar Arel, Cong Liu, Tom Urbanik, and Airton G Kohls. Reinforcement learning-based multi-agent system for network traffic signal control. IET Intelligent Transport Systems, 4(2):128–135, 2010.
[6] Jakob Foerster, Gregory Farquhar, Triantafyllos Afouras, Nantas Nardelli, and Shimon Whiteson. Counterfactual multi-agent policy gradients. In Proceedings of the AAAI Conference on Artificial Intelligence, volume 32, 2018.
Social Navigation
Multi-agent navigation 문제에 대한 기존의 접근법들은 agent간 상호작용을 modeling했다. 주로 cooperative 또는 competitive한 성향을 가정하며, [1]에서는 learning 기반의 general human movement prediction 네트워크인 "Social LSTM"을 소개하기도 했다.
하지만, 본 논문에서는 다른 주변 agent들의 behavior를 modeling하는 것은 불가능하며, 운전자마다 그 성향이 너무 다양하기 때문에 explicit하게 표현할 수 없다고 주장하고 있다. 대신, 제어할 AV가 altruistic 성향을 가지게 유도함으로써 주변 agent들의 behavior modeling 없이 task를 수행할 수 있도록 의도했다.
[1] Alexandre Alahi, Kratarth Goel, Vignesh Ramanathan, Alexandre Robicquet, Li Fei-Fei, and Silvio Savarese. Social lstm: Human trajectory prediction in crowded spaces. In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 961-971, 2016.
Problem Statement
심리학 분야에서는 사람의 Social Value Orientation (SVO)를 정의하며, 자율주행 분야에서도 social behavior에 대한 연구에 이를 활용하고 있다 [24]. 이러한 연구들은 사람의 행동 특성에 대한 가정을 부여하지만, 이는 모호하기 때문에 여기서는 최악의 시나리오를 고려하기로 한다. 즉, 모든 HV들은 egoistic하며 AV들과 협력하여 주행하는 것을 고려하지 않는다고 가정하는 것이다. 이러한 상황에서 AV들은 전체 group의 benefit을 최대화하는 방향으로 social goal을 잡게 된다.
Human driver들의 prior 정보를 전혀 사용하지 않고, AV들의 SVO를 조절하는 방식을 사용하며, 이때 HV들이 AV와 같은 도로를 공유하며 협력 주행하는 그림이 나올 수 있게 의도한다. Decentralized RL 방식의 적용을 통해 explicit behavior model의 사용 없이 오로지 경험으로부터 implicit하게 학습하는 e2e decision 모델을 제안하고 있다.
[24] Wilko Schwarting, Alyssa Pierson, Javier Alonso-Mora, Sertac Karaman, and Daniela Rus. Social behavior for autonomous vehicles. Proceedings of the National Academy of Sciences, 116(50):24972–24978, 2019.
Proposed Solution
본 논문에서 고려하는 상황은 고속도로의 merging ramp 시나리오이다. HV의 합류에 AV가 대응하며, 주변에 다수의 차량들이 존재하는 복잡한 상황이다. Observation 과정에서 인지가 아닌 V2V 통신을 통한 GT 값을 사용한다.
Formalism
- (( \mathcal{I} )) : Set of autonmous vehicles (AVs)
- (( \mathcal{V} )) : Set of human-driven vehicles (HVs)
- (( M \in \mathcal{V} )) : Human-driven merging vehicle
각 AV들은 local partial observation을 갖는다고 가정하며, observe된 subset들을 (( \tilde{\mathcal{I}} \subset \mathcal{I} )), (( \tilde{\mathcal{V}} \subset \mathcal{V} ))로 정의한다.
Observations and Actions
먼저, meta-action은 다음의 deiscrete set으로 정의된다.
$$ a_i \in \mathcal{A}_i = \begin{bmatrix}
\text{Lane Left}\\
\text{Idle}\\
\text{Lane Right}\\
\text{Accelerate}\\
\text{Decelerate}
\end{bmatrix} \tag{1} $$
다음으로, Figure 3과 같은 multi-channel VelocityMap embedding을 생성한다. Rasterized image 형태이며, agent 및 environment의 feature를 표현한다. 총 4개의 layer로 구성되어 있으며, 연속된 time-step동안 쌓아 temporal 정보를 담는다(본 논문에서는 10 step 쌓아 사용). Layer 구성은 아래와 같다.
- Relative position of AVs w/ pixel values proportional to relative speed
- Relative position of HVs w/ pixel values proportional to relative speed
- Road layout w/ position of the observer
- Relative position of merging vehicle
Decentralized Reinforcement Learning
AV agent (( I_i \in \mathcal{I} ))의 decentralized reward function을 다음과 같이 정의한다. Reward function은 agent 별로 정의되며, 그들의 SVO (( \phi_i ))에 기반한다. SVO의 표현 방식은 Figure 2를 참고하자.
$$ \begin{align*}
R_i(s_i,a_i;\phi_i) &= \cos(\phi_i)R_i^E + \sin(\phi_i)R_i^A \\
& =\cos(\phi_i)r_i^E(s_i,a_i)+\sin(\phi_i)\left [ \sum_{j}r_{i,j}(s_i,a_i) + \sum_{k}r_{i,k}(s_i,a_i) \right ]
\end{align*} \tag{2} $$
여기서, (( j \in \tilde{\mathcal{I}} \setminus \left\{I_i\right\} )), (( k \in \tilde{\mathcal{V}} \setminus \left\{M\right\} )) 이다. 식의 앞부분, (( r_i^E )) 항은 egoistic part로 차량의 individual performance를 나타낸다. 뒷부분은 altruistic part로 다른 차량들의 individual performance들을 합한 것이다.
Individual reward ((r))은 다음과 같이 부여되도록 설계되었다.
- ((\oplus)) : Travel distance, Average speed
- ((\ominus)) : Unnecessary maneuvers, Acceleration, Deceleration, Jerk
Multi-agent Advantage Actor-Critic (A2C)
앞서 설명했듯이, MARL은 environment가 단일 agent의 action에 따라 변화하는 것이 아닌 동시에 update되는 agent들의 jointed action에 영향을 받기 때문에 non-stationary한 특성을 갖고 있다. 이때, experience replay 방식은 효과적이지 못하며, buffer의 사용을 피하기 위해 synchronous A2C 알고리즘을 사용한다.
여기서 critic은 state-value function을 approximate하며, actor는 critic으로부터의 gradient을 기반으로 stochastic policy를 업데이트한다. 이를 위해 다음의 "Advantage Function"을 정의한다.
$$ A(s_t,a_t)=r_{t+1} + \gamma V_{\mathbf{w}_C}(s_{t+1}) - V_{\mathbf{w}_C}(s_{t}) \tag{3} $$
이때, (( \mathbf{w}_C ))는 critic, 즉 value function의 approximation을 위한 neural network의 weight이다. 이를 이용하여 update rule은 다음과 같이 정의된다.
$$ \triangledown_\theta J(\theta) \sim \sum_{t=0}^{T-1} \triangledown_\theta \log \pi_\theta (\left. a_t \right|s_t)A(s_t,a_t) \tag{4} $$
최종적으로, 전체 MA A2C framework의 모습은 Figure 4-(1)과 같으며, 구체적인 architecture는 Table 1에 나와있다. Conv3D 네트워크를 통해 stacked VelocityMap으로부터 feature를 추출하고, 이를 Actor와 Critic을 위한 2개의 개별 MLP 네트워크의 input으로 활용한다. 이후 Actor 네트워크는 각 action별 확률 분포를 계산하고, Critic 네트워크는 각 state에 대응하는 state-value를 계산한다.
Training 과정은 MA training의 stability를 위해 two-stage로 나뉜다. 우선, 사전 정의된 ((k))-step동안 각 AV 별로 weight update를 진행하며, 이때 update되는 AV agent 외에 다른 AV들의 weight (( (\mathbf{w}_A^-, \mathbf{w}_C^-) ))는 freeze 시킨다. ((k))-step이 끝나면, 그다음 stage에서 update된 weight (( (\mathbf{w}_A^+, \mathbf{w}_C^+) ))를 다른 모든 agent들에게 disseminate하고, 이 과정을 계속 반복한다.
Experiments
Setup
- Environment : OpenAI Gym - Abstract traffic simulator [11]
- AVs : kinematic bicycle model 적용. PID low-level controller 사용.
- HVs : [8], [33]에서 제안된 dynamics 및 decision-making 알고리즘 적용.
- Training specifications : Training (30,000 episodes), Test (3,000 episodes)
- Performance metrics
- Travel distance : 전체적인 traffic flow 향상 여부
- Collision rate : Driving safety 향상
- Counting successful & seamless merging : Socially desirable한 결과 생성 여부
Result
Figure 5와 Figure 6은 AVs의 SVO를 다르게 설정하여 그 성능을 비교한 것이다. Pure egoistic (((\phi_i=0)))일 때와 altruistic (((\phi_i=\pi / 4)))일 때를 비교했으며, travel distance의 측정은 merging vehicle ((M))이 고착되거나 다른 agent와 충돌한 경우 멈춘다. 즉, 이 metric은 성공적인 merging 여부와 traffic flow 정도에 대한 정보를 함께 포함하고 있다.
AVs가 egoistic한 경우 평균적으로 (( \sim 220m )) 정도를 주행했으며, altruistic한 경우 평균적으로 (( \sim 450m )) 정도를 주행했다. 즉, altruistic한 경우가 더 좋은 decision-making 과정을 수행한다는 것을 검증했다.
Figure 8은 GAV가 altruistic behavior를 가졌을 때의 test sample 결과이다. 왼쪽부터 순서대로 설명하자면 다음과 같다. 그리고, 앞에서 설명했듯이, 모든 HV들은 egoistic하다.
- Case 1
- GAV 기준 좌측 차량들로 인해 LLC 불가.
- LK를 지속하며 감속을 통해 후방에 오는 차량들을 막음.
- MV의 safe merging 성공. 하지만, overall traffic flow에서 손해를 봄.
- Case 2
- GAV 기준 전방에 저속 차량 존재.
- LLC를 통해 MV가 합류할 수 있는 gap 형성.
- MV의 safe merging 성공.
- Case 3 (Best performance!)
- 이번엔 GAV가 LLC를 통해 gap 형성 후, 다시 RLC를 통해 기존 차선으로 복귀.
- MV의 safe merging 성공.
- 동시에 GAV의 local utility도 향상.
- 기존 차선의 전방 AV들도 GAV의 복귀를 위해 가속함.
[8] Arne Kesting, Martin Treiber, and Dirk Helbing. General lane-changing model mobil for car-following models. Transportation Research Record, 1999(1):86–94, 2007.
[11] Edouard Leurent, Yann Blanco, Denis Efimov, and Odalric-Ambrym Maillard. Approximate robust control of uncertain dynamical systems. arXiv preprint arXiv:1903.00220, 2019.
[33] Martin Treiber, Ansgar Hennecke, and Dirk Helbing. Congested traffic states in empirical observations and microscopic simulations. Physical review E, 62(2):1805, 2000.
Remarks
Summary
- 주변 agent들의 utility를 고려하는 decentralized RL을 설계함으로써 AV는 socially-desirable behavior를 학습.
- HV에 대한 explicit한 behavior model을 사용하지 않고, e2e로 implicit하게 학습하여 AV와 HV의 indirect한 상호작용까지 추론함. 또한, DM 과정에서 AV들의 altruisitc한 SVO를 갖게 유도함으로써 전체적인 주행 성능 향상.
- HV들을 egoistic하게 설정하고, 복잡한 merging 환경을 선정하여 worst-case에 대한 성능을 검증함.
Limitations
- 주변 차량들의 GT 정보를 사용했으며, 인지 결과를 사용할 때의 uncertainty를 반영하지 못함.
- 논문에서 말하는 HV는 특정 rule-based로 주행하며, 실제 사람의 운전 특성을 반영하지 못함.
- Simulation에서만 검증되었으며, highway merging 시나리오만을 다룸.
- 결과에 대한 명시적인 explanation을 제공하기 어려움. (Reward function의 설계에 의존)