Skip to content

Deep Reinforcement Learning Environments for User-Centric Mobile Edge Computing

Notifications You must be signed in to change notification settings

qlt315/UCMEC_env

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 

Repository files navigation

User-Centric Mobile Edge Computing Environments

A single/multi-agent environment for Deep Reinforcement Learning

Table of Contents

About The Project

This environment is a mixed cooperative-competitive game, which focuses on the coordination of the agents involved. Agents navigate a world and offload computing tasks to the edge computing-enabled CPU via user-centric wireless transmission.

Getting Started

Installation

Install using pip

pip install UCMEC

Or to ensure that you have the latest version:

git clone https://github.com/qlt315/UCMEC_env.git
cd UCMEC_env
pip install -e .

Usage

Create environments with the gym framework. First import

import UCMEC

Then create an environment:

env = gym.make("MA_UCMEC_env") # for multi-agent

or

env = gym.make("SA_UCMEC_env") # for single-agent

Similarly to Gym, step() function in multi-agent environment is defined as

obs, reward, done, info = env.step(actions)

Where obs, rewards, done and info are LISTS of N items (where N is the number of agents). The i'th element of each list should be assigned to the i'th agent. action space is a LIST of N*M numbers that should be executed in that step.(M is the number of actions for each agent, like offloading decision, power allocation, etc.)

Please Cite

  1. The paper that first uses this implementation of single-agent UCMEC environment:
@ARTICLE{9952196,
  author={Qin, Langtian and Lu, Hancheng and Wu, Feng},
  journal={IEEE Communications Magazine}, 
  title={When the User-Centric Network Meets Mobile Edge Computing: Challenges and Optimization}, 
  year={2023},
  volume={61},
  number={1},
  pages={114-120},
  doi={10.1109/MCOM.006.2200283}}

Contributing

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature)
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Contact

Langtian Qin - qlt315@mail.ustc.edu.cn

Project Link: https://github.com/qlt315/UCMEC_env

About

Deep Reinforcement Learning Environments for User-Centric Mobile Edge Computing

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages