Skip to content

About

Reinforcement learning based approach to secure RIS assisted wireless communications based on DDPG and Experience Prioritized Replay buffer.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Latest commit

 

History

5 Commits

Folders and files

Repository files navigation

DDPG-PER-RIS

Project structure

  • ./algo/ contains algorithm (DDPG) related source files.

    • ddpg.py contains the code for DDPG Agent, Actor and Critic classes based on original paper description & implemantations (OpenAI).
    • noise.py contains code for noise classes (Guassian & OU) used by DDPG.
    • replay_buffer.py contains code for 2 types of replay buffer; Uniform Replay Buffer and PER.
    • per_utils.py contains helper functions and classes for PER.
  • ./env/ contains Environement (RIS assisted wireless system) related source files.

    • channel.py defines Channel class & its attributes, we are using Rician Channel Model currently, but diffirent channel models can be implemanted and used as well.
    • entities.py defines system entities classes (User, Attacker, RIS and BS).
    • env.py contains Environement class which defines the behaviour and interactions of the diffirent env elements with each other and with DDPG agent of RIS controller.
  • main.py

  • test.py

  • train.py & train_2.py.

  • plot.py

How to run

example

py main.py --experiment DDPG --num_eps 1 --num_steps_per_ep 60000 --batch_size 128 --RIS_pos 150,100 --power_t 15 --awgn_var -80 --num_RIS_elements 10 --seed 145  --exploration_noise Normal --noise_scalar 0.25 --num_users 2 --num_eve 2 --random_pos True --prioritized True --per_beta 0.4 --per_importance_sampling True --per_alpha 0.8 --per_beta_annealed False --verbose_t True

How to cite

Related Paper : DDPG-PER for an IRS-Aided Secure Wireless Communication

About

Reinforcement learning based approach to secure RIS assisted wireless communications based on DDPG and Experience Prioritized Replay buffer.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages