stevenh-tw / AutoBench

Autonomous vehicle training environment with configurable difficulty based on ML-Agents v0.6

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

AutoBench - Autonomous vehicle training and benchmark environment with configurable difficulty

AutoBench Video

AutoBench is an open-source project base on Unity ML-Agents Toolkit featuring high configurability including difficulty, rewards, weather conditions, and visual observation types. Using REAL driving license exam in Taiwan as an example to showcase the applicability of autonomous vehicle in reinforcement learning approach with configurable difficulty technique.

Environment supports:

  • General Machine Learning - letting the user implement their own decide algorithm within the out-of-the-box standard training loop.

  • Reinforcement Learning - Containing the entire RL training loop, based on part of ML-Agents trainer with built-in Proximal Policy Algorithm algorithm, and recurrent support using DRQN

  • OpenAI Gym Compatible - Based on Gym-Unity wrapper, that supports OpenAI Gym interface for further integration meaning users are able to test any Gym-compatible algorithms within AutoBench. Limitation

  • Benchmark Mode - Complement for above every training mode, BenchmarkManager is a static class handling benchmark tracking and analysis. Sample code can be found in learn_ml.py and learn_rl.py

Features

  • Road Geometry based on real license exam.
  • Support Reinforcement learning, General machine learning, and OpenAI Gym interface. (learn more)
  • Configurable Difficulty through Road Width, Visual Details and Image types. (learn more)
  • Various Visual Observation Types support. (learn more)
  • WASD-control Observation Camera in inference mode
  • Configurable Weather Conditions, Time of the Day. (learn more)
  • Configurable Rewards for reward shaping (learn more)
  • Out-of-the-box Benchmark system (learn more)
  • A Pre-train model (learn more)

(future work)

  • More configurable road spec (curvature, bumpiness)
  • More tasks (parallel parking, reverse parking)
  • Configurable agent amount

-> Tutorial and Documentation <-

More info about the Tutorial and Documentation

References

Citation

Paper Citation (TBA)

License

Apache License 2.0

Buy me a coffee

Bitcoin: 1ErZXAEoQVzFSkarXKpxfTRzYrp9SALVp2
Ethereum: 0x312ADcc92c3ff549001ea4437A767c512C9546E3

Feedback

Feel free to give us feedback using the "Issue" section

About

Autonomous vehicle training environment with configurable difficulty based on ML-Agents v0.6

License:Apache License 2.0


Languages

Language:Python 99.0%Language:Batchfile 1.0%