이번에는 D2D link scheduling algorithm 중에 하나인 ITLinQ에 대해 배경 및 개념을 조사하고, 시뮬레이션을 돌린 뒤, capacity를 다른 알고리즘과 비교해 보았습니다.
1. 배경 및 개념
ITLinQ란 information-theoretic link scheduling의 약자로, 정보이론을 기반으로 link scheduling algorithm을 정의한 알고리즘 입니다. ITLinQ에서는 information-theoretic independent set 안에 있는 사용자들이 데이터를 보내는 것으로 가정하고 스케쥴링을 진행합니다.
따라서 저희는 이러한 가정 속에서 ITLinQ의 Link scheduling algorithm에 대하여 논의하였습니다.
2. Scheduling Algorithm
먼저 다음과 같은 link 환경을 가정합니다.

FlashLinQ와 마찬가지로 link의 우선순위는 이미 결정되어 있다고 가정합니다.
이때, ITLinQ의 scheduling algorithm의 개념은 다음과 같습니다.
다른 채널의 간섭을 노이즈로 판단할 수 있는 조건인 Treating interference as noise(TIN)을 최적화 시킬 때, channel capacity가 최대가 됩니다. 즉, 다른 채널에 대한 간섭의 영향을 최적화시키면 그 때 channel capacity는 자연스럽게 최적화된다는 것입니다.
따라서 Information-theoretic independent set의 channel들이 아래의 조건을 만족한다면, TIN은 최적화됩니다.

여기서 SNR과 INR은 다음과 같습니다.

위 조건을 기반으로한 channel scheduling algorithm은 다음과 같습니다.
먼저 첫 번째 link는 항상 활성화되어 있습니다.
다음으로 다른 link들은 송신기가 아래의 조건을 만족하고,

수신기가 아래의 조건을 만족했을 때, 활성화 됩니다.
여기서 M = 1 and η = 0.5이라고 가정하면, 위에서의 TIN 최적화 조건을 만족하게 됩니다.

하지만 η = 0.5로 가정하는 것은 매우 비관적인 경우이므로, M과 η를 조금 더 유연하게 정한다면, ITLinQ의 성능을 향상시킬 수 있습니다.
위의 알고리즘을 pseudo-code로 나타내면 다음과 같습니다.[3]

[3] - Navid Naderializadeh and A. Salman Avestimehr, “ITLinQ: A New Approach for Spectrum Sharing” - 2014 IEEE
3. Matlab simulation
ITLinQ의 scheduling 과정이 어떻게 진행되는지 알아보았으므로, 이를 Matlab을 통해서 simulation을 진행하였습니다.
3-1. ITLinQ simulation
위의 scheduling algorithm을 matlab을 통해 구현한 결과는 다음과 같습니다.
M = 1 and η = 0.8로 설정하였습니다. 또한 link의 개수를 1에서부터 1000까지 바꿔가며 one channel capacity와 total channel capacity를 구한 그래프입니다.

3-2. Compare ITLinQ & FlashLinQ & No scheduling
다음은 ITLinQ, FlashLinQ의 스케쥴링 알고리즘을 사용한 경우와 스케쥴링 알고리즘을 사용하지 않았을 때를 비교한 그래프입니다.

위의 결과를 통해 ITLinQ의 스케쥴링 알고리즘을 사용하였을 때, total channel capacity가 FlashLinQ에 비해, 40~50%정도 상승함을 알 수 있었습니다. 즉, 정보이론을 기반으로 한 D2D link power control 알고리즘을 사용하였을 때, 전체 채널 환경이 더욱 좋아짐을 확인할 수 있었습니다.
아래는 위의 시뮬레이션 환경을 만들기위한 Matlab 코드입니다.
'Uni. Project > D2D Link Scheduling Algorithm' 카테고리의 다른 글
D2D Link Scheduling Algorithm (4) - FlashLinQ (0) | 2022.07.28 |
---|---|
D2D Link Scheduling Algorithm (3) - No scheduling & Random power simulation (0) | 2022.07.26 |
D2D Link Scheduling Algorithm (2) - Simulation modeling (0) | 2022.07.18 |
D2D Link Scheduling Algorithm (1) - D2D link power control (0) | 2022.07.17 |