How rikonenobais/deep-q-learning-for-mobile-edge-computing works
This repository implements a research simulator and Deep-Q-learning workflow for mobile-edge task offloading. A training script creates an Offload environment and per-device DQN agents, runs episodes, and collects reward, cost, delay, and task statistics. The environment models local execution, transmission, fog execution, queues, and delay limits; the agent uses recurrent state and experience replay to select actions and learn. The README identifies train.py as the main entry point; trainPaperParam.py is a parallel experiment script. Excerpts omit some method calls, so internal environment wiring is shown only where directly supported.
Main entry points: fog_env.py Offload environment · train.py Main training · RL_brain.py DQN agent · trainPaperParam.py Paper parameters
Components 14
Training orchestration
- Main training
train.py - Paper parameters
trainPaperParam.py - Episode metrics
train.py
Offloading simulation
- Offload environment
fog_env.py - Local execution
fog_env.py - Task transmission
fog_env.py - Fog execution
fog_env.py - Task queues
fog_env.py - Delay tracking
fog_env.py
DQN learning
- DQN agent
RL_brain.py - Replay memory
RL_brain.py - Q networks
RL_brain.py
Other components
- Researcher
- TensorFlow
Connections 17
- Researcher → Main training: starts training
- Researcher → Paper parameters: starts experiment
- Main training → Offload environment: creates and steps
- Paper parameters → Offload environment: creates and steps
- Main training → DQN agent: creates, selects, learns
- Paper parameters → DQN agent: creates, selects, learns
- Main training → Episode metrics: collects results
- Offload environment → Local execution: processes locally
- Offload environment → Task transmission: transmits offloaded tasks
- Task transmission → Task queues: enqueues for fog
- Local execution → Task queues: reads local work
- Fog execution → Task queues: reads fog work
- Offload environment → Fog execution: processes at fog
- Offload environment → Delay tracking: records delays
- DQN agent → Replay memory: stores transitions
- DQN agent → Q networks: evaluates and trains
- Q networks → TensorFlow: runs graph operations