Переглядів 47,114
⭐️COURSE INTRODUCTION⭐️
Hi and welcome to the self-driving car (no libraries) JavaScript course.
You will learn to make a self-driving car simulation by implementing every component one by one. I will teach you how to implement the car driving mechanics, how to define the environment, how to simulate some sensors, how to detect collisions and how to make the car control itself using a neural network.
I will explain how artificial neural networks work, by comparing them with the real neural networks in our brain. I will teach you how to implement a neural network and how to visualize it so we can see it in action. You will also learn some optimization techniques to make our car smarter.
The entire system is quite complex, however, each component is relatively easy in and of itself. I made this course keeping in mind my high-school days back in Romania. So, the knowledge you get from school could be enough to follow along (depending on the curriculum).
We use JavaScript to implement this system and I will teach modern JavaScript techniques during this course, so, this course is perfect no matter if you want to become a software engineer or a machine learning specialist (like me - I have over 10 years research experience with machine learning).
JavaScript is not ideal for artificial intelligence. Other languages have better support for these. But since we don't use any libraries, it won't matter. If you do want to learn this in a more useful language, consider studying at Karelia University of Applied Sciences, where I teach these things using Python as well. There, we also experiment with machine learning libraries like:
- Tensorflow: www.tensorflow.org
- Scikit-learn: scikit-learn.org
⭐️LECTURE 1: CAR DRIVING MECHANICS⭐️
We learn to make a car in JavaScript. To make the car we will use basic physics (mechanics) like acceleration and friction. We rotate the car using basic trigonometry (sin & cos) and animate it on an HTML5 canvas element. We will control the car using the keyboard (for now).
⭐️MORE LINKS⭐️
- Visual Studio Code: code.visualstudio.com
- Google Chrome: www.google.com/chrome
- Box2D: box2d.org
- Box2D (JavaScript port): github.com/kripken/box2d.js
- Traian National College: cntseverin.ro
- Karelia University of Applied Sciences: karelia.fi/en
⭐️CODE⭐️
Github: github.com/gniziemazity/Self-... (1. Car driving mechanics)
My website: radufromfinland.com
⭐️ TABLE OF CONTENT ️⭐️
0:00 Course intro
3:44 Lecture intro
4:39 Tools and project setup
8:51 Defining the Car class
12:06 Implementing the Controls
18:08 Car physics
26:50 Trigonometry