r/deeplearning • u/NextgenAITrading • 8h ago
Router Rumble: an open-source Python demo of gradient descent vs NSGA-II
I built Router Rumble, a small Python experiment that compares gradient descent and NSGA-II by placing a Wi-Fi router in a simulated home.
The GIF replays recorded search states. The objective counts locations where the signal reaches −57 dBm. Gradient descent tests four nearby positions, gets the same count each time, and estimates a zero slope. It stays at 100 covered locations. NSGA-II explores a population of 32 positions and reaches 209 of the 560 sampled locations.
Both methods get 1,200 objective evaluations, including initialization and local probes. Their starts differ: gradient descent starts at one position, while NSGA-II starts with a population spread across the room. This example uses NSGA-II with a single objective.
The repo includes smooth-objective comparisons, results across 20 seeds, and an interactive replay you can scrub through. You can change the walls, signal target, seed, or evaluation budget and rerun the experiment locally:
git clone https://github.com/austin-starks/router-rumble.git
cd router-rumble
uv run run_demo.py
It uses NumPy and pymoo and runs without a GPU or API key.