본문 바로가기
논문 리뷰/MARL algorithm

[ACCNet] Actor-Coordinator-Critic Net for“Learning-to-Communicate”with Deep Multi-agent Reinforcement Learning

by xi2d 2022. 9. 1.
반응형

[Submitted on 10 Jun 2017 (v1), last revised 29 Oct 2017 (this version, v3)]

Abstract

: Mulit-agent의 'learning to communicate' problem을 해결하기 위한 ACCNet(Actor-Coordinator-Critic Net) framework를 제안한다. 해당 논문은 paritally observable env에서도 처음부터 communication protocol을 학습 가능하다. 결과적으로, continuous와 discrete actino space env 모두에서 좋은 결과를 얻을 수 있었다. 

 

 


Introduction

: 우리는 partially observable env에서 shared discounted sum of reward R을 최대화하는 fully cooperative distributed agents setting을 고려한다. fully cooperation은 모든 agents가 기여와 무관하게 동일한 R을 받는다는 것을 의미한다. problem setting은 Dec-POMDP extension인 Dec-POMDP-Com으로 modeling이 가능하다. 새로운 점은 communication bandwidth가 제한되어 있다는 것이다. 이는 두 가지 의미를 가진다. 

 

1. 특정 time-step에서의 message는 bandwidth를 고려하여 몇 개의 packet를 사용하여 전송 가능하다. 

 

2. Bandwidth 요구 사항을 추가로 줄이려면 valuable message만 있으면 된다.

 

즉, message는 가끔씩만 오고, intermittent time은 time-specific하다. 이전의 limited bandwidth를 달성하기 위해 neural network를 사용하여 message 압축을 통해 message dimension과 message tranport에 필요한 packet를 모두 제어할 수 있도록 한다.

 

- 추가로 발생하는, space limitation으로 인해 다른 논문에서 제안된 Gating mechanism과 Token mechanism을 기반으로 하는 방법을 소개한다. 

 

- ACCNet은 두가지 paradigm으로 동작하고, actor와 critic은 하나의 agent에 있는 두 가지의 service이다.  

 

1. AC-CNet

: Coordinator의 도움을 받아 actor 간의 communication protocol을 학습하고 critic의 independent를 유지한다. 그러나 actor들은 execution 중에도 불가피하게 communication이 필요하며, 이는 특수한 상황에서는 비현실적일 수 있다. 

 

2. A-CCNet

: Coordinator의 도움을 받아 critic 사이의 communication protocol을 학습하고 actor의 independent를 유지한다. actor는 independent하기 때문에 A-CCNet 학습 후에는 communication 없이도 cooperate가 가능하다. 

 

- 실험 결과 AC-CNet과 A-CCNet 모두 간단한 multi-agent env에서 좋은 결과를 얻을 수 있고, 복잡한 env의 경우 A-CCNet은 더 나은 generalization 능력을 가지며 ideal fully observable model과 거의 같은 성능을 보인다.

 

 


Actor-Coordinator-Critic Net framework

: 기존 actor-critic model에 기반하여 communication protocol를 학습하기 위한 ACCNet의 두 가지 frrmawork를 살펴본다.

 

 

AC-CNet

: 가장 직접적인 approach는 actors 간의 communication channel을 구축하고 critic을 독립적으로 유지하는 것이다. 그림 (b)와 같이 actor를 coordinate하여 coordinated action을 생성하기 위해 coordinator communication channel이 사용되는 것을 AC-CNet이라고 한다. 

 

- 특히 각 agent는 각 local state를 다른 모든 agents' message를 고려하여 해당 agent에 대한 global communication signal을 생성하는 coordinator에게 전송하여 encoding한다. global signal은 모든 local message의 encoding이므로 system의 global 정보를 포착할 수 있을 것으로 기대된다. 

 

- Integrated state는 actor-critic model에 input으로 제공되는 local state와 global signal이 연결이다. 그런 다음 전체 AC-CNet이 원래 actor-critic model로 학습된다. 

 

그러나 AC-CNet은 execution 중에도 global 정보를 얻기 위해 actor와 coordinator 간의 communication이 불가피하게 필요하며 이는 일부 특수한 상황에서는 비현실적이다. 따라 초기 훈련을 위한 보조 데이터 사용을 통해 problem을 일부 해소한다. 

 

 

A-CCNet

: 그림 (c)와 같이 coordinator communication channel은 critic이 더 나은 estimated Q-value를 생성하도록 조정하는데 사용되므로 로 이를 A-CCNet이라 한다. A-CCNet의 actor는 그림 (a)의 original actor-critic model의 actor와 동일하지만, critic는 estimated Q-value를 생성하기 전에 coordinator를 통해 communicate 해야 한다. 

 

- Actor 간의 communication이 발생하고 communication signal가 local state만 encoding 가능한 AC-CNet과 다르게 A-CCNet은 state와 action이 모두 communication signal로 encoding될 수 있는 critic 간의 communication을 제공한다. 추가로, critic을 위한 두 가지 design이 존재한다. 

 

1. Critic 1은 global signal를 사용하여 Q-value를 직접 생성한다.

 

2. Critic 2는 global signal과 local message를 결합하여 Q-value를 생성한다. 

 

두 design 모두에서 actor는 execution 중 communication 없이 독립적으로 action 선택이 가능하다. 추후 A-CCNet이 실험을 통해 더 나은 policy를 생성할 수 있을 것으로 기대한다. 

 

 

 


Formal formulation of ACCNet

- AC-CNet의 경우, critic이 독립적이므로 single actor-critic agent를 update하는 것처럼 equation(1~4)에 따라 각 agent를 update할 수 있다. 한 가지 차이점은 communication protocol도 동시에 optimize할 수 있도록 actor의 gradient를 coordinator pcommunication channel로 밀어 넣어야 한다는 것이다. 

 

 

- A_CCNet의 경우, critic이 서로 communicate하므로 i'th agent's critic network는 이제 s^g가 global communication signal일 때, 아래 V^i 혹은 Q^i이다. 또한 equation(1~4)를 multi-agent formulation으로 확장할 수 있다. 

 

 

ACCNet(특히 A-CCNet)에 대한 primary insight는 각 agent가 다른 agent의 state와 action을 알게 되면, policy 변경에 상관없이 환경이 stationary하다고 취급이 가능하다는 것이다. 

 

 


ACCNet results

: 아래 table의 algorithm들과 비교하며, continuous 그리고 discrete action space env에 대해서 각각 실험을 진행한다. 해당 env는 partial observable하며 multiple distributed 그리고 fully cooperative agents로 동작한다. continuous action space env는 network routing domain problem을, discrete action space env는 traffic junction problem을 사용하였다. 자세한 env 설정은 생략한다. 

 

 

- Continuous env에서의 결과는 다음과 같다. A-CCNet은 AC-CNet과 IND보다 더 좋은 성능을 보였고, fully observable FC model과 거의 비슷한 결과를 보였다.

 

A-CCNet은 local state와 action이 모두 communication signal로 encoding될 수 있는 반면, AC-CNet의 communication signal은 local state만 encoding할 수 있고, IND는 전혀 정보를 교환하지 않는 critic 간의 communication만을 제공하기에, A-CCNet은 다른 model보다 많은 global 정보를 가질 수 있었다. 

 

 

- Discrete env에서의 결과는 다음과 같다. 300 episode 학습 후 A-CCNet은 다른 algorithm보다 현저히 낮은 FR(Failure Rate)를 기록했고, 600 episode 학습 후에는 더 낮은 FR과 더 높은 CR을 획득할 수 있었다. 

 

 

 


Conclusion

: Deep model과 actor-critic RL의 결합으로 제안된 ACCNet은 communication protocol을 학습하기 위한 framework이다. action space가 continuous 혹은 dircrete하던 상관없이 완전히 cooperate하고, partially observable MARL problem에 대해 학습 가능하다. 특히 A-CCNet은 MARL system의 학습을 이전보다 stationary하게 만들 수 있다. 또한 execution 중, communication이 필요하지 않으면서도 우수한 generalization 능력을 지닌다는 강점이 있다. 

 

 

반응형

댓글