I built security-aware-mec-offloading, a Python simulation of per-task computation offloading between a mobile device and an edge server. It combines analytical bandwidth thresholds, reinforcement-learning agents, queue admission control, and Object Dependency Graph (ODG) security gates. The results describe comparisons inside the simulator’s latency, energy, and security model, not evidence from real networks or real-device deployment.
My security-aware-mec-offloading project dates are Started 2026-09, last updated 2026-10.
The repository author is Brindeshwar Sharma (Department of Information Technology, Manipal University Jaipur).
The project status is research project / preprint draft; not submitted to a journal or conference and not peer reviewed.
All results come from a Python and NumPy simulator; no real-device deployment.
The pipeline combines an analytical local-versus-edge bandwidth threshold, tabular Q-Learning and a hand-written NumPy DQN, Lyapunov drift-plus-penalty (DPP) queue control, and ODG vulnerability scoring and offloading gates.
The analytical break-even bandwidth is 13.71 Mbps for the reference task; 15.0 Mbps with a 50 ms connection setup delay.
The evaluation trains a tabular Q-agent and hand-written NumPy DQN on the same environment and compares them with rule-based baselines over 10 random seeds.
The DQN has 5 inputs: battery, task complexity, vulnerability score, bandwidth, edge load.
The DPP admission rule admits a task only if V * benefit > queue length; Q <= V*b_max + A_max.
In the deterministic queue example, arrival 10, capacity 7 per slot, 100 slots: greedy reaches 297 tasks; throttled queue stays at most 21.
For Poisson arrivals over 20 seeds and 2,000 slots, the stochastic queue results were: greedy mean approximately 3,025; fixed threshold mean 17.6 (max 32); DPP V=20 mean 8.7 (max 19); benefit 4.92 vs 4.20 per slot.
On random graphs, the ratio gate (0.4) lets 74% of objects that reach sensitive data offload, blocking 11% of non-sensitive objects.
On the same ODG evaluation, a taint gate leaks 0% but blocks 44%.
The reward comparison was always local -2.07; rule pipeline -1.97.
The reward comparison was DQN with gates -1.91; DQN alone -1.90; myopic oracle -1.89.
The Q-table reward was -2.42 at discount 0.95; -1.93 at discount 0.0.
Without any gate, high-vulnerability tasks were offloaded by Q-table 33%, DQN 0% across all 10 seeds.
The repository’s results are generated by its experiment code and stored in results/data/results.json. The initial single-script implementation remains in git history at commit 9a3794c; the current version uses a modular, tested implementation with multiple seeds and baselines.
The repository includes simulation code under simulation/mecsim/ for configuration, environment, agents, ODG, queueing, and workloads; experiment, figure-generation, and LaTeX-export scripts; pytest checks; generated results, figures, and tables; references; and the preprint source and PDF under paper/.
The preprint and code archive DOI is 10.5281/zenodo.23143616.
git clone https://github.com/brindeshwar/security-aware-mec-offloading
cd security-aware-mec-offloading
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txt
cd simulation
python -m pytest -q
python run_experiments.py --quick
python run_experiments.py
python make_figures.py
python export_latex.py
Selected cited papers with open licences are stored in references/open_access/; other works use publisher links, except one ResearchGate link and one arXiv link; licence and DOI details are in references/INDEX.md. I cite 29 papers in the manuscript.
My evaluation uses 10 seeds overall and 5 for the discount-factor study; no comparison with algorithms from the literature or with real traces.
My learned policy’s reward margin over the rule pipeline is about 3% in reward.
In these experiments, learned agents respected the security penalty in these experiments, but only the hard gate guarantees it.
The example application graph is hand-built, and ratio scores can understate transitive risk.
My paper PDF is CC BY 4.0 as a preprint draft; cited open-access papers keep their own licences. My code is released under the MIT License.
The quick experiment command python run_experiments.py --quick runs 3 seeds with short training and writes results/data/results_quick.json.
I can build the PDF and LaTeX source in paper/ with python paper/build.py.
My preprint is titled Security-Aware Adaptive Computation Offloading in Mobile Edge Computing Using Reinforcement Learning and Deep Q-Networks and was published on Zenodo in 2026.
The repository requires Python 3.10+.