• Post category:StudyBullet-15
  • Reading time:8 mins read


Learn how to build self driving autonomous car simulation using Python, PyGame, and NEAT

What you will learn

Learning the fundamental concepts of self driving autonomous car, getting to know technologies behind it, as well as its capabilities and limitations

Learning and understanding how self driving feature in autonomous car works

Building self driving autonomous car simulation project using PyGame and NEAT from scratch

Testing the self driving autonomous cars to ensures the car has a good decision making ability, solid sensor integrations, and effective collision prevention

Description

Welcome to Self-Driving Simulations: Developing Autonomous Cars with Python course. This is basically an extensive project based course where you will be fully guided step by step on how to build autonomous vehicle simulation with self driving feature using Python programming language alongside with Python libraries, such as Pygame and NEAT where Pygame will be utilised to create a visual and realistic representation of the simulated environment while NEAT which stands for NeuroEvolution of Augmenting Topologies will be used to train the neural networks to control and design self driving behaviour. The neural network takes input from the car’s sensors. In addition, the neural network will also learn and adapt over time through evolutionary algorithms, improving the car’s driving performance and decision-making skills. In the introduction session, you will be learning the basic fundamentals of autonomous car, getting to know technologies behind it as well as understanding how it works. Then, after learning the basic concepts, you will be guided step by step to set up all necessary tools, for instance Visual Studio Code IDE, installing Python, and other relevant tools. Before getting into the project, there will be a basic python training session where you will learn all important concepts in Python that you need to know and master to prepare you for the upcoming project. The basic Python training session is optional since the session was created and intended only for those who are not very confident with their Python programming skills. In the basic Python training session, you will learn different data types or variables, how to build functions and pass down parameters to the function, how to build class, and basic fundamentals of Pygame. Then, once the basic Python training session has been completed, you will move to the project where you will be fully guided step by step on how to build an autonomous car simulation with advanced self driving features from scratch. Once the project has been built, we are going to be conducting testing, not only to test if the code works but also to test if the output of the code is what we expected to get. There will be three main objectives that will be tested, those are the car’s decision making ability, sensor integration, and collision prevention.

First of all, we need to ask ourselves this question. Why should we learn how to build an autonomous car simulator? It might be very interesting to learn how the self-driving feature in cars like Tesla works, obviously the system is very complicated and a bit difficult to be understood but what if you have a chance to learn the self driving mechanism from a more simple perspective and that’s exactly what you are going to learn in this course. The next follow up question might potentially be, well it is near impossible and definitely unrealistic to create my own real autonomous vehicle like Tesla, it will cost you a lot and even if you have the funding, you might not have the right skill sets and knowledge to begin with. That is actually true to some extent, we are not going to build a brand new car with self -driving features, instead, we can potentially build a very cool self-driving game or maybe build an autonomous object simulator.


Get Instant Notification of New Courses on our Telegram channel.


Below are things that we are going to learn from this course:

  • Learning the fundamental concepts of self driving autonomous car, getting to know technologies behind it, as well as its capabilities and limitations
  • Learning and understanding how autonomous car works
  • Basic Python training session which prepares you better for the autonomous car project
  • Building self driving autonomous car simulation project using Pygame and NEAT
  • Learning how to build and design car track using GIMP painting tool
  • Testing the self driving autonomous cars to ensures the car has a good decision making ability, solid sensor integrations, and effective collision prevention system
English
language

Content

Introduction

Introduction to the Course
Highlight of the Course
Whom This Course is Intended for?

Tools, IDE, and Libraries

Tools, IDE, and Libraries

Introduction to Autonomous Cars

Introduction to Autonomous Cars
How Autonomous Car Works?

Setting Up All Required Tools

Installing Visual Studio Code
Installing Python & Adding Extension to VS Code
Installing PyGame & NEAT

Basic Python Training Session

Basic Python Training Session
Data Types Practice
Function & Parameters Practice
Class & Objects Practice
Basics of PyGame

Preparing Assets for Autonomous Car Simulation

Preparing Car Objects for Simulation
Downloading GIMP
Building Car Track with GIMP

Building Self Driving Autonomous Car Project

Creating Folder for the Project
NEAT Configuration File Explained
Create Function to Initialise the Simulation
Functions to Set Position & Avoid Collision
Function to Detect Obstacles
Function to Update Position
Functions to Get Radar’s Data & Calculate Fitness Score
Function to Run Autonomous Car
Autonomous Car Function Explained
Function to Run Simulation

Testing Autonomous Car Simulation

Autonomous Car Testing Objectives
Testing Self Driving Autonomous Car Project

Conclusion & Summary

Conclusion & Summary