Giter Site home page Giter Site logo

nmodelppo's Introduction

N-model processing network control via Deep Reinforcement Learning

The repository implements Proximal policy optimization algorithm to optimize N-model control.

N-model

The N-model processing network was first proposed in [1]. It is a processing network system with two independent Poisson input arrival flows, two servers, exponential service times, and linear holding costs. We use uniformization to convert the continuous-time control problem to a discrete-time control problem.
The detailed description of the system and its uniformization can be found in Section 5.3 of [2].
File NmodelDynamics.py contains an object describing the N-model. Its method next_state_N1 generates the next state of the system given the current state and the action.

Proximal policy optimization

We use Proximal policy optimization algorithm [3] for N-model control optimization. The main file is train.py which starts with hyperparaments selection. File actor_utils.py contains actor-related objects and functions, file value_function.py contains critic-related objects and functions.

Value iteration

File 'value_iteration_Nmodel.py' can be used to find optimal actions for the N-model via the value iteration method. File 'value_iteration_Nmodel.py' should be run separately. File action09.npy contains a numpy array with optimal actions for N-model with load 0.9.

References

[1] J Michael Harrison. Heavy traffic analysis of a system with parallel servers: asymptotic optimality of discrete-review policies. The Annals of Applied Probability, 8(3):822โ€“848, 1998.
[2] J. G. Dai, Mark Gluzman. Queueing Network Controls via Deep Reinforcement Learning. https://arxiv.org/abs/2008.01644, 2021.
[3] John Schulman, Filip Wolski, Prafulla Dhariwal, Alec Radford, and Oleg Klimov. Proximal policy optimization algorithms. http://arxiv.org/abs/1707.06347, 2017

nmodelppo's People

Contributors

mark-gluzman avatar

Stargazers

Yurii Zakharian avatar

Watchers

James Cloos avatar  avatar

Forkers

zhuanglineu

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.