All Projects → knowledgedefinednetworking → A Deep Rl Approach For Sdn Routing Optimization

knowledgedefinednetworking / A Deep Rl Approach For Sdn Routing Optimization

Licence: mit
A Deep-Reinforcement Learning Approach for Software-Defined Networking Routing Optimization

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to A Deep Rl Approach For Sdn Routing Optimization

Intro To Deep Learning
A collection of materials to help you learn about deep learning
Stars: ✭ 103 (-17.6%)
Mutual labels:  deep-reinforcement-learning
Terraform Provider Zerotier
Create, modify and destroy ZeroTier networks and members through Terraform.
Stars: ✭ 113 (-9.6%)
Mutual labels:  sdn
Advanced Deep Learning And Reinforcement Learning Deepmind
🎮 Advanced Deep Learning and Reinforcement Learning at UCL & DeepMind | YouTube videos 👉
Stars: ✭ 121 (-3.2%)
Mutual labels:  deep-reinforcement-learning
Macad Gym
Multi-Agent Connected Autonomous Driving (MACAD) Gym environments for Deep RL. Code for the paper presented in the Machine Learning for Autonomous Driving Workshop at NeurIPS 2019:
Stars: ✭ 106 (-15.2%)
Mutual labels:  deep-reinforcement-learning
A3c Pytorch
PyTorch implementation of Advantage async actor-critic Algorithms (A3C) in PyTorch
Stars: ✭ 108 (-13.6%)
Mutual labels:  deep-reinforcement-learning
Reinforcementlearning Atarigame
Pytorch LSTM RNN for reinforcement learning to play Atari games from OpenAI Universe. We also use Google Deep Mind's Asynchronous Advantage Actor-Critic (A3C) Algorithm. This is much superior and efficient than DQN and obsoletes it. Can play on many games
Stars: ✭ 118 (-5.6%)
Mutual labels:  deep-reinforcement-learning
Deep Reinforcement Learning Notes
Deep Reinforcement Learning Notes
Stars: ✭ 101 (-19.2%)
Mutual labels:  deep-reinforcement-learning
Rl Quadcopter
Teach a Quadcopter How to Fly!
Stars: ✭ 124 (-0.8%)
Mutual labels:  deep-reinforcement-learning
Tetris Ai
A deep reinforcement learning bot that plays tetris
Stars: ✭ 109 (-12.8%)
Mutual labels:  deep-reinforcement-learning
Deep Rl Tensorflow
TensorFlow implementation of Deep Reinforcement Learning papers
Stars: ✭ 1,552 (+1141.6%)
Mutual labels:  deep-reinforcement-learning
Aws Robomaker Sample Application Deepracer
Use AWS RoboMaker and demonstrate running a simulation which trains a reinforcement learning (RL) model to drive a car around a track
Stars: ✭ 105 (-16%)
Mutual labels:  deep-reinforcement-learning
Deeptraffic
DeepTraffic is a deep reinforcement learning competition, part of the MIT Deep Learning series.
Stars: ✭ 1,528 (+1122.4%)
Mutual labels:  deep-reinforcement-learning
Deep reinforcement learning
Resources, papers, tutorials
Stars: ✭ 119 (-4.8%)
Mutual labels:  deep-reinforcement-learning
Reinforcement Learning
🤖 Implements of Reinforcement Learning algorithms.
Stars: ✭ 104 (-16.8%)
Mutual labels:  deep-reinforcement-learning
Corebgp
CoreBGP is a BGP library written in Go that implements the BGP FSM with an event-driven, pluggable model.
Stars: ✭ 124 (-0.8%)
Mutual labels:  sdn
Torchrl
Highly Modular and Scalable Reinforcement Learning
Stars: ✭ 102 (-18.4%)
Mutual labels:  deep-reinforcement-learning
Hierarchical Actor Critic Hac Pytorch
PyTorch implementation of Hierarchical Actor Critic (HAC) for OpenAI gym environments
Stars: ✭ 116 (-7.2%)
Mutual labels:  deep-reinforcement-learning
Pytorch Trpo
PyTorch Implementation of Trust Region Policy Optimization (TRPO)
Stars: ✭ 123 (-1.6%)
Mutual labels:  deep-reinforcement-learning
Rl Medical
Deep Reinforcement Learning (DRL) agents applied to medical images
Stars: ✭ 123 (-1.6%)
Mutual labels:  deep-reinforcement-learning
Drl Portfolio Management
CSCI 599 deep learning and its applications final project
Stars: ✭ 121 (-3.2%)
Mutual labels:  deep-reinforcement-learning

A Deep-Reinforcement Learning Approach for Software-Defined Networking Routing Optimization

1709.07080: Giorgio Stampa, Marta Arias, David Sanchez-Charles, Victor Muntes-Mulero, Albert Cabellos

In this paper we design and evaluate a Deep-Reinforcement Learning agent that optimizes routing. Our agent adapts automatically to current traffic conditions and proposes tailored configurations that attempt to minimize the network delay. Experiments show very promising performance. Moreover, this approach provides important operational advantages with respect to traditional optimization algorithms.


Code and datasets here.


Keras and Deep Deterministic Policy Gradient to control an OMNeT++ network simulator

How to build?

  1. Use a modern Linux or macOS system.
  2. Install OMNeT++ version 4.6 in your system (please see instructions at http://omnetpp.org).
  3. Run 'make' from inside 'omnet/router'. This will generate networkRL which is needed by the python script.
  4. Install Python 3.6 in your system.
  5. Install the packages listed in requirements.txt (please use exact versions). Virtualenv could be of help (https://pypi.python.org/pypi/virtualenv).

How to train?

Single run with fixed parameters

Reads configuration from DDPG.json

python3 ddpg.py

How to play?

Single run with fixed parameters

Reads configuration (ddpg, neural network weights, etc.) from folder

python3 ddpg.py play folder

EXAMPLE JSON CONFIG

{
    "ACTIVE_NODES": 3,                                          # number of active nodes in the network
    "ACTUM": "NEW",                                             # action: NEW or DELTA
    "BATCH_SIZE": 50,                                           # size of learning batch
    "BUFFER_SIZE": 2000,                                        # max size of replay buffer
    "ENV": "label",                                             # "label" or "balancing"
    "EPISODE_COUNT": 10,                                        # number of episodes
    "EXPLORE": 0.8,                                             # exploration: rate if <=1, number of steps otherwise
    "GAMMA": 0.99,                                              # discount factor
    "HACTI": "selu",                                            # non-linear activation function for hidden layers
    "HIDDEN1_UNITS": 300,                                       # neurons of layer 1
    "HIDDEN2_UNITS": 600,                                       # neurons of layer 2
    "LRA": 0.0001,                                              # learning rate of the actor network
    "LRC": 0.001,                                               # learning rate of the critic network
    "MAX_STEPS": 1000,                                          # number of steps per episode
    "MU": 0.0,                                                  # Ornstein-Uhlenbeck process' μ
    "PRAEMIUM": "MAX",                                          # reward function
    "PRINT": true,                                              # verbosity
    "ROUTING": "Linkweight",                                    # "Balancer", "Linkweight", "Pathchoice"
    "RSEED": null,                                              # random seed: null or number
    "SIGMA": 0.07,                                              # Ornstein-Uhlenbeck process' σ
    "STATUM": "T",                                              # state representation: T or RT
    "TAU": 0.001,                                               # soft target update
    "THETA": 0.03,                                              # Ornstein-Uhlenbeck process' θ
    "TRAFFIC": "EXP"                                            # traffic: static or changing (~randomly)
}

author: [email protected]

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].