finds.dev← search

// the find

sichkar-valentyn/Reinforcement_Learning_in_Python

★ 514 · Python · MIT · updated Apr 2022

Implementing Reinforcement Learning, namely Q-learning and Sarsa algorithms, for global path planning of mobile robot in unknown environment with obstacles. Comparison analysis of Q-learning and Sarsa

A from-scratch Q-learning and Sarsa implementation for grid-world path planning, built to accompany the author's published papers comparing the two algorithms. It's aimed at students or anyone wanting to see tabular RL mechanics (Q-table updates, epsilon-greedy exploration) without a framework like Gym wrapping everything.

Includes an actual head-to-head comparison of Q-learning vs Sarsa with charts and final Q-tables, not just a single algorithm demo. Three environments of increasing obstacle complexity (E1-E3) show how the approach scales. Backed by peer-reviewed papers with a Zenodo DOI, which is unusual rigor for a repo this size.

Each environment folder duplicates the same env.py/agent_brain.py/run_agent.py pattern instead of parameterizing one environment class, so fixing a bug means fixing it three times. No requirements.txt or setup.py, so you're guessing at the Tkinter/matplotlib versions it was built against. No tests at all, and nothing has changed since April 2022, so compatibility with current NumPy/matplotlib is unverified. It's a teaching script collection, not an importable package - you'd be copy-pasting code into your own project, not pip installing it.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →