ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Distributive Dynamic Spectrum Access with DRL 논문 리뷰
    최신 기술동향/인공지능 (AI) 2020. 8. 17. 10:40
    반응형

     이번 글에서는 AI-based 5G, 6G 논문 리뷰에서 언급했던 Distributive DSA에 DRL을 적용하는 논문을 리뷰한다. 이 논문은 5G에 초점을 맞췄다기 보다는 DSA에 DRL을 적용했다는 내용에 의의가 있는 논문이라고 생각되어서 강화학습 Section에서 다루는 것이 맞다고 생각했다.


     

    제목: Distributive Dynamic Spectrum Access through Deep Reinforcement Learning : A Reservoir Computing Based Approach [1]

     

    저널명 : IEEE Internet of Things Journal

     

    출판년도 : September, 2018

     

    저자 : Hao-Hsuan Chang, Hao Song, Yang Yi, Jianzhong (Charlie) Zhang, Haibo He, and Lingjia Liu


     

    Introduction

     이 논문에서는 Primary User (PU)와 Secondary User (SU)를 나눠서 PU가 더 높은 Prioirity를 가지고 있는 User라고 가정한다. 따라서, SU는 PU가 Transmit하지 않는 Timing을 잘 맞춰서 PU의 Interference를 최소화하고, 다른 SU들과의 간섭도 최소화 해야한다. 추가적으로, SU는 Centralized Controller의 도움을 받지 못하기 때문에, System의 정보를 모두 알 수 없고, 자신이 Sensing한 정보를 기반으로 Resource Access를 하게 된다. 이런 조건을 만족시키면서, 자신이 보내려는 Data의 Throughput은 충분히 확보해야 한다. 

     다른 User들과의 간섭을 최소화하면서 Resource Allocation을 최적화하기 위한 많은 기법들이 다른 논문을 통해 이미 많이 제시되었다. 가장 먼저, PU가 보내는지 먼저 Sensing하고, 안 보내는 것을 확인한 이후에 전송을 시작하는 Listen-Before-Talk (LBT)가 있다. LBT는 Wi-Fi의 Inter Frame Seconds (IFS)와 비슷하게, 보낼 데이터가 있어도 바로 보내지 않고, 살짝 기다려서 채널이 비어있는지 Sensing하고 보내는 방식이다. 하지만, 실제 시스템에서는 복잡한 무선 환경 (e.g., SU간의 Cooperation 문제, Sensing의 정확도 문제 등)으로 인해 SU가 데이터를 보낼 Timing을 잡는 것이 쉽지 않다.

     두 번째 방법으로는 SU가 PU가 보내는 Timing에 함께 보낼 수 있지만(Underlying), Trasmit Power가 Threshold를 넘지 않게 조심해서 보내는 방법이 있다. Threshold를 넘는 Tx Power로 보내면, 해당 Channel의 간섭이 너무 심해져서, 다른 User들의 Packet Error가 생길 가능성이 높아진다. 즉, 다른 User들의 위치들을 파악하고, 다른 User의 Packet Error가 발생하지 않을 최대의 Threshold를 설정하는 논문들이 있다. 하지만, Centralized Controller가 없는 상황에서는 Channel State Information (CSI)를 알고 있다고 가정하기 힘들기 때문에 이 방법 또한 문제가 있다.

     이런 문제점들을 극복하기 위해, 최근 Machine Learning을 사용해서 Imperfect Channel State에서 Scheudling을 하는 논문들이 나오고 있다. Controlized Controller처럼 모든 정보를 갖고 있지 않아도, 내가 Sensing할 수 있는 데이터들을 Input으로 넣음으로써 좋은 성능을 내는 시스템을 구축하고자 하는 것이다. 이 논문에서는 DRL을 사용해서 Underlying system에 대한 정보가 Imperfect한 상황에서 Scheduling을 하는 방법을 제시하고 있다.

     

    System Modeling & DRL with Reservoir Computing

     기본적인 System Modeling은 다른 논문과 비슷하다. WINNER II Channel Model의 Path-loss 식을 써서, Random하게 퍼져있는 Tx와 Rx 사이의 SINR을 구하고, 이를 통해 Channel Capacity를 구한다. 이런 Channel 환경에서 SU가 보게 될 강화학습 환경인 State, Action, Reward, Policy에 대해 얘기해보자. 

    N 개의 Orthogonal한 Channel과 L 개의 SU가 있다. 각 Channel은 PU에게 Occupied 되어 있는지 되어 있지 않은지로 Active (0), Inactive (1)로 구분된다. 

     다음으로는, Time slot (t)에서 SU가 N개의 Channel을 봤을 때, 다른 User가 사용중인지 알아보는 Sensed State를 정의한다. Sensed State(S_t)와 실제 State인 (T_t)가 맞는지 다른지에 대한 확률인 Sensing Error Probability도 있다. 하지만, SU가 당장 Sensing할 수 있는 것은 Observed 된 State인 S_t 뿐이기 때문에, S_t가 DQN의 Input으로 들어가게 된다.

     Observed된 State와 갖고 있는 Policy를 기반으로, N개의 Channel 중 n 번째 (n<N) Channel을 선택할지, 선택을 안 할지 (n=0)를 Action으로 선택하게 된다.

     만약 SU가 PU에게 간섭을 일으키면 -C만큼의 보상을 받고, PU에게 간섭이 없을 때, log_2(1+SINR)만큼의 보상을 받는다. 이런 구조로 DQN을 구성하게 되는데, 이 논문에서는 Q-Network를 구성할 때, 일반 Multi Layer Perceptron (MLP)이 아닌, Recurrent Neural Network (RNN)의 일종인 Reservoir Computing (RC) [2]를 사용했다. 

     Resource Allocation에서 사용하는 CSI에 대한 시계열 정보들도 Time-Series이기 때문에, RNN 계열을 쓰는 것이 좋겠다는 생각은 하고 있었다. 하지만, Channel N이 늘어날 수록 Complexity Issue가 생기는데, 기존 RNN에서는 Complexity 문제가 생긴다. 이 논문에서는 이를 해결하기 위해, Reservoir Computing (RC)를 사용해서 Convergence되는 시간을 줄였다고 한다. Reservoir Computing은 아직 공부해보지 못한 분야이기 때문에, 이 논문 이후에 한번 관련된 자료를 찾아서 읽어봐야겠다는 생각을 했다.

     

    Performance Evaluation & Conclusion

     결국은 Trainning step을 증가시킨 결과 Convergence는 다른 DQN + MLP 모델보다 더 빠르게 성능이 향상되는 것을 볼 수 있었다. 하지만, 그래프를 통해 확인한 결과, Q-Learning에 비해서 큰 성능향상이 있는지는 잘 모르겠다는 생각이 들었다. 추가적으로, DQN + RC 알고리즘을 통해서 PU와의 Collision Probability도 낮출 수 있다는 것을 Performance Evaluation으로 알 수 있었다.

     개인적으로 이 논문을 보고 들었던 생각은 앞으로 Resource Allocation에 관련한 모델을 만들 때, 이 논문처럼 RNN 계열의 딥러닝 알고리즘을 적용해서 시계열적인 요소를 DRL에 추가하는 것이 좋겠다는 생각이었다. 하지만, 이 논문에서는 Action을 간단하게, 해당 Channel을 통해 보낼지 말지를 골랐던 것과 비교했을 때, Power를 Continuous하게 함께 Control 한다던가, 주기적으로 BS에서 각자의 위치를 Broadcasting 해주고, 이를 DRL에 Input으로 넣는 것도 좋겠다는 생각을 해봤다. 단, Power가 Continuous하게 바뀐다면, Action space가 조금 더 복잡해질테니, DQN보다는 Actor-Critic을 쓰는 것이 더 좋지 않을까라는 생각도 했다. 더 나아가, 5G에 대한 고려가 아직 충분하지 않기 때문에, Channel에 대한 구성에 Flexible Numerology 등의 5G 개념을 추가할 수 있지 않을까라는 생각을 하게 되었다.

     

    Reference

    [1] H. Chang, H. Song, Y. Yi, J. Zhang, H. He and L. Liu, "Distributive Dynamic Spectrum Access Through Deep Reinforcement Learning: A Reservoir Computing-Based Approach," in IEEE Internet of Things Journal, vol. 6, no. 2, pp. 1938-1948, April 2019, doi: 10.1109/JIOT.2018.2872441.

    [2] M. Luko sevi cius and H. Jaeger, “Reservoir computing approaches to recurrent neural network training,” Computer Science Review, vol. 3, no. 3, pp. 127–149, 2009.

    반응형

    댓글

Designed by Tistory.