Self-Driving Car with JavaScript Course - Neural Networks and Machine Learning

  Рет қаралды 2,107,693

freeCodeCamp.org

freeCodeCamp.org

Күн бұрын

Learn how to create a neural network using JavaScript with no libraries. In this course you will learn to make a self-driving car simulation by implementing every component step-by-step. You will learn 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.
The course covers how artificial neural networks work, by comparing them with the real neural networks in our brain. You will learn how to implement a neural network and how to visualize it so we can see it in action.
✏️ Dr. Radu Mariescu-Istodor created this course. Check out his channel: / @radu
💻 Code: github.com/gniziemazity/Self-...
⭐️ Course Contents ⭐️
⌨️ (0:00:00) Intro
⌨️ (0:03:44) Car driving mechanics
⌨️ (0:32:26) Defining the road
⌨️ (0:50:50) Artificial sensors
⌨️ (1:10:07) Collision detection
⌨️ (1:23:20) Simulating traffic
⌨️ (1:34:57) Neural network
⌨️ (2:03:10) Parallelization
⌨️ (2:18:31) Genetic algorithm
⌨️ (2:29:40) Ending
⭐️ Links ⭐️
🔗 Radu's website (with enhanced version of code): radufromfinland.com
🔗 Radu's workplace (consider applying): karelia.fi/en/front-page
🔗 Segment intersection (Math and JavaScript code): • Segment intersection f...
🔗 Visualizing a neural network in JavaScript: • Self-driving car - No ...
🔗 Visualizer code: radufromfinland.com/projects/...
🔗 Drawing random color cars in JavaScript: • Self-driving car - No ...
🎉 Thanks to our Champion and Sponsor supporters:
👾 Raymond Odero
👾 Agustín Kussrow
👾 aldo ferretti
👾 Otis Morgan
👾 DeezMaster
--
Learn to code for free and get a developer job: www.freecodecamp.org
Read hundreds of articles on programming: freecodecamp.org/news

Пікірлер: 1 400
@freecodecamp
@freecodecamp 10 ай бұрын
After this course, learn from Radu how to make your self-driving cars drive in a virtual world! kzfaq.info/get/bejne/jMVzaq9o38vQqmw.html
@sdexstarlord
@sdexstarlord 9 ай бұрын
is there any part 2 for this video?
@Radu
@Radu 8 ай бұрын
@@sdexstarlord Yes, the playlist linked in the first comment.
@dimanialleyne7033
@dimanialleyne7033 6 күн бұрын
😮😮
@and-ant984
@and-ant984 2 жыл бұрын
no way he really did it in *javascript* with 0 libraries i am definitely watching this video multiple times, thanks for the video yall
@Rppiano
@Rppiano 2 жыл бұрын
Wow
@techtime3125
@techtime3125 2 жыл бұрын
Wow
@_laxman_vijay
@_laxman_vijay 2 жыл бұрын
Wow
@mr.fluffyham
@mr.fluffyham Жыл бұрын
Wow
@juandager5220
@juandager5220 6 ай бұрын
Bogus!
@shira158
@shira158 2 жыл бұрын
I love how he types each character at the same speed, even if it's not necessary fast, it's so mesmerizing to watch such consistency.
@Radu
@Radu 2 жыл бұрын
You noticed :-) I tried a different approach for this one (also did a lot of takes to minimize the typos :-D)
@paschalasobirionwu1183
@paschalasobirionwu1183 Жыл бұрын
@@Radu 100% worth it its just feels so smooth to follow
@santiagomoebio
@santiagomoebio 2 жыл бұрын
"going infinitely far but also going nowhere" that's life for you. Loved this tutorial, full of substance!
@Radu
@Radu 2 жыл бұрын
Thanks :-)
@assasssin5328
@assasssin5328 2 жыл бұрын
Great! Now I can change my Tesla’s default self driving software to my own
@Afashi-vo4vz
@Afashi-vo4vz 2 жыл бұрын
😂😂😂😂
@Tyrone-Ward
@Tyrone-Ward 2 жыл бұрын
This is nowhere near as sophisticated as Tesla’s Full Self Driving software.
@matthewisikhuemen8907
@matthewisikhuemen8907 2 жыл бұрын
Lol haha... I will join you in your mission 😁😁
@daniele5692
@daniele5692 2 жыл бұрын
Would be funny if your implementation is better then 🤣
@motivator8586
@motivator8586 2 жыл бұрын
Yaaa U can 😁
@saicherishpotluri1419
@saicherishpotluri1419 2 жыл бұрын
This is by far one of the best videos in terms of neural networks and their real-time implementation
@Radu
@Radu 2 жыл бұрын
Thank you :-) glad you like it!
@camerinfigueroa7875
@camerinfigueroa7875 Жыл бұрын
This tutorial is absolutely amazing. I've done some tutorials with tensorflow, but this really helps me understand better, and I love the end result. Very cool
@Radu
@Radu Жыл бұрын
Great to hear :-)
@MrThatguy333
@MrThatguy333 Жыл бұрын
@@Radu I know this is old but I'm trying to understand this code better what is happening with #addKeyboardListeners(); under the constructor, why the #? I can't find it through googling and need a little direction if you don't mind helping. edit: never mind I think I figured it out, its "private class fields" right? wow that took me way to long to figure out, assuming thats correct. absolutly beautiful coding and I learned so much! thank you!
@eileenchoong6175
@eileenchoong6175 Жыл бұрын
@@MrThatguy333 aaaaaaàaàààaaààààaaàààààààààààààààààaàaàààààààaààaaaa
@Audionic1
@Audionic1 10 ай бұрын
​@@Raduyou've generated only some traffic I want to generate infinite traffic how can i do that?
@Radu
@Radu 10 ай бұрын
@@Audionic1 infinite won't fit in memory, but an object pool where you repurpose cars so they appear again is possible. Some people did it on my Discord... can't really explain such a thing in a YT comment.
@NavyaVedachala
@NavyaVedachala 2 жыл бұрын
16:50 important tip about using arrow functions instead of function declaration within classes. Arrow functions mean that this.left refer to controls as the context. If we did function declaration, this would refer to the function as the context and as there is no this.left within functions, it would lead to errors.
@Radu
@Radu 2 жыл бұрын
Thank you for making things even clearer :-)
@darkensgaming2649
@darkensgaming2649 Жыл бұрын
debug tip: if you can't get the console.table(this) working at 15:00 or so (aka controls.js does not work) make sure you have added the line "this.controls = new Controls();" in car.js constructor
@vicyoslinuxofficial2607
@vicyoslinuxofficial2607 Жыл бұрын
The way he explains things feels like he's just describing the code in the very simple way things are! When he is coding, it feels like he's telling a story while he writes the code! If this is the way he thinks while coding, he is a genius!!!! I love the way he describes and explains things! 10/10! It's as if we coders/programmers were just talking to the machine/code.
@Radu
@Radu Жыл бұрын
Thank you. This is very scripted, of course and edited (I had multiple takes). But if curious, I do have some unscripted (even live) coding videos on my channel :-)
@vicyoslinuxofficial2607
@vicyoslinuxofficial2607 Жыл бұрын
@@Radu I will take a look at them. :)
@Radu
@Radu Жыл бұрын
@@vicyoslinuxofficial2607 Cool :-)
@___d3p1
@___d3p1 2 жыл бұрын
One of the best courses of this channel! This man is a genius! He structured all the implementation and its improvements in a way that makes you feel inspired. Great content!
@Radu
@Radu 2 жыл бұрын
Thanks again for the feedback :-)
@creatorcode96
@creatorcode96 8 ай бұрын
Yes Bro this man is a genius!
@superrazer3643
@superrazer3643 2 жыл бұрын
This is the First time ever I saw implementing a Neural Network with Coding! Thank You for Bringing this to US!!
@Radu
@Radu 2 жыл бұрын
Congratulations :-)
@markeyboi6545
@markeyboi6545 2 жыл бұрын
I loved this video. I know a lot of JS and some ML basics, but this video put them together in a very cohesive way such that I still learned a lot! You mentioned at the end considering making a follow up course, I would love to see that! Please do, I would be very interested in that. I subbed to your channel and will be watching for new videos, thanks a lot for making this video Radu!
@Radu
@Radu 2 жыл бұрын
Really happy to hear you learned something from this. I'm quite sure I'll do the follow up course someday (maybe this year). Meanwhile, I'll post some lighter content.
@HristoKolevMayvena
@HristoKolevMayvena 2 жыл бұрын
I'm a relatively experienced programmer and JS is perhaps my strongest side. I haven't played with machine learning before (except for reading a couple articles) and this video served as a great introduction. I'm planning to expand on the example code by adding a random traffic generator, design a fitness function (perhaps use the number of dummy vehicles passed as a success metric) and automate the iterations.
@Radu
@Radu 2 жыл бұрын
That sounds like a great plan. Good luck experimenting and learning :-)
@Atzanteol1
@Atzanteol1 Жыл бұрын
This is very well done. The typing is smooth as butter so you're not distracted by typos, corrections, or a very slow typist. The pace is about perfect for somebody who knows how to code but wants to build a model and learn to train an AI. I often find "intro" courses absurdly slow but this was great! I translated your code to Kotlin but my results were about the same. I've been trying to find a good "how does a neural network work" video for some time and this was just perfect. Thanks!
@Radu
@Radu Жыл бұрын
Thank you. Glad you liked it :-)
@PTS1337
@PTS1337 Жыл бұрын
For more great visualizations, look at Sebastian Lague on youtube. He has a series on neural networks where he also goes more into the mathematical functions behind "teaching" a network.
@Radu
@Radu Жыл бұрын
@@PTS1337 Thanks for the tip!
@bkosimi
@bkosimi 2 жыл бұрын
Amazing course and great teaching methods, Radu! Appreciate FCC sharing another excellent resource. 100%!!!
@Radu
@Radu 2 жыл бұрын
Thank you, Botur!
@mirshodoripov1035
@mirshodoripov1035 2 жыл бұрын
This chanel is the best code chanel in the youtube. thank you for everything
@TheFenny
@TheFenny 2 жыл бұрын
Thanks so much ! You guys are helping me make my portfolio a lot better
@mathhack8647
@mathhack8647 2 жыл бұрын
AMAZING TUTORIAL. I really had a great pleasure following all project steps. The developper here, has a genuine pedagogical approach that makes everything easy for learners . Thanks. (btw, your calm voice made the knowledge flow confortable for the audience)
@Radu
@Radu 2 жыл бұрын
Thank you for all the nice words :-)
@caseyvollan8558
@caseyvollan8558 Жыл бұрын
awesome video! im so very noob but i love watching all these videos on coding and what not. it amazes me. i am 35 and just getting into tech now. i wish i would have been more eager with learning as a youth but, better late than never! thank you so much for your info videos! keep them coming!
@mainlinemitch
@mainlinemitch Жыл бұрын
Im almost 39....its never too late! I actually have better study habits now than i ever had in High School or College
@JasonDask
@JasonDask 2 жыл бұрын
Clear, calm and informative 10/10 Thanks a lot!
@Radu
@Radu 2 жыл бұрын
Thanks for watching!
@prabhuofficial6072
@prabhuofficial6072 2 жыл бұрын
One of the best coder and the best teacher to teach programming. Would love to learn more from you bro . Radu , you are really great man ..
@Radu
@Radu 2 жыл бұрын
Thank you :-)
@kosuke5570
@kosuke5570 Жыл бұрын
just finished making my first track! thanks bro for all the help with learning soft soft. much love
@ccamerini8679
@ccamerini8679 Жыл бұрын
many thanks and please do follow-up with more material! we need more guys like you, Dr Mariescu-Istodor i'd like to understand how to add more layers, and delve deeper into it
@Radu
@Radu Жыл бұрын
I'm planning different extensions to this course. Let's see what I come up with :-)
@aitorplaza2560
@aitorplaza2560 2 жыл бұрын
It's a very good channel, it's worth subscribing and watching his other tutorials in vanilla JS.
@Radu
@Radu 2 жыл бұрын
Thanks, Aitor :-) for recommending my content!
@mrh3956
@mrh3956 2 жыл бұрын
Thank you, Radu this was a good lesson. I'm a beginner in Java-script and this kept me motivated to do more complex tasks.
@Radu
@Radu 2 жыл бұрын
You're welcome!
@rajanpoudel7980
@rajanpoudel7980 2 жыл бұрын
Omg I was looking for ml course using Js and when I opened KZfaq I was recommended this gem. Thanks alot
@robolson135
@robolson135 Жыл бұрын
This is such an extremely fun course, great teacher too!
@Radu
@Radu Жыл бұрын
Thank you.
@runtimejpp
@runtimejpp 9 ай бұрын
Man among boys in JS. Coolest thing about no libs is that that courses will last forever
@Radu
@Radu 9 ай бұрын
😎 Thanks!
@AngeloRandazzo
@AngeloRandazzo Жыл бұрын
this tutorial is simply GOLD! thank you man
@PainRUify
@PainRUify 4 ай бұрын
This is really cool! This is the first time I felt like I understood neural networks!
@Radu
@Radu 3 ай бұрын
You might understand them even better if you watch my 'understanding AI playlist' ;-)
@williamikennanwosu
@williamikennanwosu 2 жыл бұрын
You did a great job Radu. I just went through the whole course and I am really happy with the results and learning outcomes. I feel like I have taken my programming skills up to a new level. I liked and subscribed so I will check out your other content. I would be interested in any follow-ups to this course like you mentioned at the end of the video. Overall, I feel confident that I can take it from here with developing this program further thanks to your thorough explanations and consistent typing speed. Coding with Radu 👨‍💻👩‍💻 for the win!
@Radu
@Radu 2 жыл бұрын
Wow :-) glad to hear you learned so much and like my channel! thanks for watching!
@ofirfr4804
@ofirfr4804 2 жыл бұрын
This video was so good! Yes I would LOVE the suggested course, PLEASE!!!
@Radu
@Radu 2 жыл бұрын
Cool :-) It's on my list and I'll make it someday.
@pravinsukumaran6080
@pravinsukumaran6080 2 жыл бұрын
Thank you very much guys ......we need more ppl like yall on this earth
@scientificshiv
@scientificshiv Жыл бұрын
I've been trying to wrap my head around AI and ML since a long time, but this is by far the simplest way to understand how it works, without learning any additional language. I know Javascript. You just got a subscriber. Keep it coming!
@Radu
@Radu Жыл бұрын
Thanks for subscribing :-)
@_flavio_silva
@_flavio_silva 2 жыл бұрын
I was really looking for a machine learning tutorial :)
@abdulrahmansaber9585
@abdulrahmansaber9585 2 жыл бұрын
You're one of the greatest teachers i've ever seen so far! Thank you
@Radu
@Radu 2 жыл бұрын
Thank you!
@5skr0ll3r3
@5skr0ll3r3 6 ай бұрын
Finally understood how machine learning works just thank you, wanted to start some projects but could not understand how
@jeanaimarre8605
@jeanaimarre8605 5 ай бұрын
Exceptional training course with coding in real time with crystal clear explanations during work. Never seen such a valuable video.
@Radu
@Radu 5 ай бұрын
Really happy to hear this :-) Thanks for watching!
@JoeGaffey
@JoeGaffey 2 жыл бұрын
One of the best code tutorials I've seen. Excellent work. Incredibly useful. Well done!
@Radu
@Radu 2 жыл бұрын
You're welcome :-)
@lucasa8710
@lucasa8710 2 жыл бұрын
You can tell it is a great video right in the first five minutes
@Radu
@Radu 2 жыл бұрын
Thank you, Lucas :-) hope you like the rest of it too!
@jageshkoiri8990
@jageshkoiri8990 Жыл бұрын
It's so pleasing. The setuping and mastering softs amazing.
@bones1225
@bones1225 2 ай бұрын
Best Sunday fun I’ve had in a long time. Many thanks.
@Radu
@Radu 2 ай бұрын
:-)
@backstabba
@backstabba 9 ай бұрын
Great course. I think that double localStorage call should be optimized, but other than that, absolutely great!
@Radu
@Radu 9 ай бұрын
I think you're right!
@paulwong7224
@paulwong7224 2 жыл бұрын
He codes without errors and has all the data in his mind so he can just write code without console logging... what a dangerous man! In other words... wow you are very smart and such a talented developer. I am very amazed! Thanks for this tutorial!
@Radu
@Radu 2 жыл бұрын
I practiced a lot to teach this course... it's not how I code in real :-P if curious, you can check the Avatar video I published recently :-D it's 12 hours of normal coding (unscripted).
@tanmaypanadi1414
@tanmaypanadi1414 2 жыл бұрын
he also has the power of editing and multiple takes.
@tanmaypanadi1414
@tanmaypanadi1414 2 жыл бұрын
i am amazed too . I don't mind if it has edits. its still incredible skill
@Radu
@Radu 2 жыл бұрын
@@tanmaypanadi1414 haha :-)
@Radu
@Radu 2 жыл бұрын
@@tanmaypanadi1414 thank you!
@alirazzaq1541
@alirazzaq1541 Жыл бұрын
Amazing tutorial. Learned and enjoyed a ton from it. Thank you, Dr. Radu. You are an amazing teacher.
@Radu
@Radu Жыл бұрын
Thanks :-) glad you liked it!
@migdress
@migdress 5 ай бұрын
This is the best video I've ever seen on youtube in my entire life. The level of this man is so high, he's got javascript, math and ai tattooed in his mind like it is the ability of breathing for any human being
@Radu
@Radu 5 ай бұрын
I'm flattered to read a comment like this :-) I guess it's what you get with many (>20) years of practice... JavaScript is not my forte, though... I like to use it on KZfaq because it's so easy for people to follow along (no need to install anything).
@migdress
@migdress 5 ай бұрын
@@Radu you got it, it is so easy to follow because its live coding, but really? You are live coding a videogame with NPCs powered by AI living in an abstracted physical world, from scratch. In 2.5 hours. Thats just alien bro, I have never seen such a thing, I am following you forever.
@Radu
@Radu 4 ай бұрын
@@migdress thanks for motivating me like that :-)
@Active-AI
@Active-AI 2 жыл бұрын
Why buy a Tesla when you can build it for free and drive it at no risk? What a fantastic course, thanks for making this available!
@Siddhesh1123
@Siddhesh1123 2 жыл бұрын
Your too tapped.
@bayedevilakazi6328
@bayedevilakazi6328 2 жыл бұрын
I was just checking around but ended up watching the entire thing.As a person who knows only C++, I have to say Javascript looks superior
@xaviermagnus8310
@xaviermagnus8310 2 жыл бұрын
How well do you know C++?
@bayedevilakazi6328
@bayedevilakazi6328 2 жыл бұрын
@@xaviermagnus8310 not much,I'm still a beginner but I know it better than any other language.i just don't like it having a separate graphics library
@xaviermagnus8310
@xaviermagnus8310 2 жыл бұрын
@@bayedevilakazi6328 The reason to use C++ would show up fast exposing this to harder tests.
@pimpc7984
@pimpc7984 Жыл бұрын
Lol c++ is all pointers and memory,
@jlc-xr4hu
@jlc-xr4hu Жыл бұрын
Would love it if you continue this series...the best thing i ever saw on KZfaq❤️
@Radu
@Radu Жыл бұрын
Thanks :-) I will make more videos on top of these, but currently have other things in editing, so, it will still take a while.
@Mr0izo84
@Mr0izo84 2 жыл бұрын
Such a great content with a splendid professor, Thank you for the knowledge and the good mood !!!
@Radu
@Radu 2 жыл бұрын
Thanks :-)
@stuartmarsh5574
@stuartmarsh5574 7 ай бұрын
I got imposter syndrome at about an hour and 10 mins in, time to brush up on my trig.
@Radu
@Radu 7 ай бұрын
I do have my 'math and code fundamentals' playlist, if you need any help.
@jcmschott1895
@jcmschott1895 2 жыл бұрын
Thanks freeCodeCamp for bringing that amazing content! I've been watching this video since yesterday afternoon, pausing, writing the code and sometimes my own versions of some snippets of code. After playing again, I always realized that Radu did the same thing in a more elegant way and with much less lines of code! A huge thanks, Radu!!! Following your channel, too!
@Radu
@Radu 2 жыл бұрын
Thanks :-) Glad you liked the course!
@josediazperez9446
@josediazperez9446 Жыл бұрын
Perfectly. I am glad that there are people who are ready to help and promote young talents. Beginner streamers. I can say that you are a hero, brother. Do not listen to idiots.
@vasiloconnell281
@vasiloconnell281 2 жыл бұрын
Очень крутой курс. Огромное спасибо.
@abdomzr6938
@abdomzr6938 2 жыл бұрын
Time to make my own tesla
@priyanshukatuwal
@priyanshukatuwal 2 жыл бұрын
Nice one xD
@rajamohansankarapandian9092
@rajamohansankarapandian9092 Жыл бұрын
@@priyanshukatuwal பரோரரேமரோரேஏப
@unk9
@unk9 9 ай бұрын
Elon Musk should fear us now 😂
@abdomzr6938
@abdomzr6938 9 ай бұрын
@@unk9 he sure will brother
@gamingdude7959
@gamingdude7959 7 ай бұрын
**This is ELON MUSK**
@MrGhosTRideRrR
@MrGhosTRideRrR Жыл бұрын
In case someone runs in the issue where the lines(lanes) disappear from the middle when setting setLineDash([20,20]) -- the problem is that your infinity number is too high. Change it to something like const infinity = 10000000; and it should fix the problem for you
@Kenny-jw7fg
@Kenny-jw7fg Жыл бұрын
Thanks!
@anasalnatsheh9957
@anasalnatsheh9957 Жыл бұрын
Thank you!
@darkensgaming2649
@darkensgaming2649 Жыл бұрын
thank you so much I thought it was a browser not supporting setlinedash issue lol
@flipthecoin.
@flipthecoin. 9 ай бұрын
thanks
@norinormich4663
@norinormich4663 8 ай бұрын
omg, how does this even work. why is everything ok with a regular line, but not with a dashed line? I spent a lot of time trying to figure out what I was doing wrong, huge thanks!
@kruptworld
@kruptworld 2 жыл бұрын
I love you man! just from the fact that you took a quick second to explain the arrow function at 16:00 made me really happy!
@Radu
@Radu 2 жыл бұрын
Cool :-) glad it helped!
@AtNovember
@AtNovember 2 жыл бұрын
That is awesome man! I've started similar project two weeks ago, and got stack with it! Now I see what I did wrong )) Thanks for your manual
@Radu
@Radu 2 жыл бұрын
Wow, really? That's awesome!
@zohebahmad9633
@zohebahmad9633 Жыл бұрын
@57:48 Even after fixing the curly braces, the sensor lines don't show up for me. The error reads "Uncaught TypeError: Cannot read properties of undefined (reading '0') at Sensor.draw (sensor.js:42:29) at Car.draw (car.js:77:21) at main.js:7:5". If I console.log the start and end of each ray in the update method of the Sensor class (instead of the draw method), the console logs out what look like correct pixel values. What am I doing wrong? How do I fix this?
@zohebahmad9633
@zohebahmad9633 Жыл бұрын
For some reason, the this.rays.size is 0 when calling the draw method... I have written the following condition in the draw method and nothing logs out. if (this.rays.size > 0) { console.log(this.rays[i][0].x); console.log(this.rays[i][1].y); }
@Radu
@Radu Жыл бұрын
@@zohebahmad9633 Could you share your code on the Discord linked on my channel? Hard to say without seeing the whole thing.
@zohebahmad9633
@zohebahmad9633 Жыл бұрын
@@Radu sure
@zohebahmad9633
@zohebahmad9633 Жыл бұрын
@@Radu Somehow changing the this.rayCount in the for loop in the draw method to this.rays.length fixes the error... Now my sensors work perfectly! However, only inside the for loop (ensuring the for loop uses this.rays.length and nothing else... not even a constant integer)
@zohebahmad9633
@zohebahmad9633 Жыл бұрын
OMG IT'S THE "car.draw(ctx)" BEFORE THE animate() IN main.js THAT WAS CAUSING ALL THIS TROUBLE!!! DON'T KNOW HOW ANY OF THIS WORKS BUT THAT WAS THE PROBLEM!!!
@justfun591
@justfun591 2 жыл бұрын
I had not believed AI can be implemented using JS. Sir, I wish I could be your student.
@Radu
@Radu 2 жыл бұрын
Well... since you're watching this, I guess you are :-)
@crefelder1
@crefelder1 Жыл бұрын
All what i need for game. Including collision detection, movement physics, raycasting and so on in one course. The best! Also crazy you explained me the spreat operator in two sentences. Before my brain was so in stuck.
@Radu
@Radu Жыл бұрын
Glad to hear it helps :-)
@busraaslan7520
@busraaslan7520 Жыл бұрын
Now I understand how to make loops and export everytNice tutorialng really god bless you.. your way of explaining simply aweso I loved it
@eslof
@eslof 2 жыл бұрын
"I want to get rid of that margin." - Every developer's first instinct.
@Radu
@Radu 2 жыл бұрын
Haha, true :-D
@zile8869
@zile8869 Жыл бұрын
1:09:50 function getIntersection(A,B,C,D){ const tTop=(D.x-C.x)*(A.y-C.y)-(D.y-C.y)*(A.x-C.x); const uTop=(C.y-A.y)*(A.x-B.x)-(C.x-A.x)*(A.y-B.y); const bottom=(D.y-C.y)*(B.x-A.x)-(D.x-C.x)*(B.y-A.y); if(bottom!=0){ const t=tTop/bottom; const u=uTop/bottom; if(t>=0 && t=0 && u
@Radu
@Radu Жыл бұрын
Thanks!
@hapham4788
@hapham4788 Жыл бұрын
This is working for real!!!everyone should try this tutorial!!thankyou somuch
@zohebahmad9633
@zohebahmad9633 Жыл бұрын
@1:47:58 YES ABSOLUTELY READY! Loving the content so far and was quite intrigued by the use of biases. Cheers!
@Radu
@Radu Жыл бұрын
I'm planning some extensions to the course, but it will still take a while (looking for quality rather than quantity).
@kzdm5255
@kzdm5255 2 жыл бұрын
This was an amazing tutorial! Though, I think the sensors are too short ranged!
@Radu
@Radu 2 жыл бұрын
You can experiment :-) the code is available. I think long range means that the car can see further ahead, but it also increases the resolution of the sensors, meaning that training the neural network will become harder. Our optimization method is quite simple and the possibility space grows with longer rays.
@user-zi2fv4df7v
@user-zi2fv4df7v 2 жыл бұрын
OMG, you seem to be an professional! So can ya also share your opinions about Pollen? I'm in deep love with their project. It's simple to use and makes a massive profit!
@Radu
@Radu 2 жыл бұрын
@@user-zi2fv4df7v Can you be more specific, which Pollen you are referring to?
@kzdm5255
@kzdm5255 2 жыл бұрын
@@Radu Yeah it was just an observation I made while watching at the airport. I'm also new to JavaScript and machine learning so I will be going through this tutorial again while hands on to learn more about it. I said the sensors were too short jokingly because I thought giving the car more time to detect traffic may result in the car learning to avoid traffic quicker. I shall experiment on that. I appreciate this tutorial by the way.
@Radu
@Radu 2 жыл бұрын
@@kzdm5255 :-) sure. I actually had longer sensors at first. But it was challenging to find the right parameter values so that I can get the behavior I needed when making the video.
@Afashi-vo4vz
@Afashi-vo4vz 2 жыл бұрын
I can’t watch the video. It says “No stream” any suggestions????
@riigel
@riigel 2 жыл бұрын
same here
@nicksharna
@nicksharna 2 жыл бұрын
Try vpn
@abdelrahmanhedia9483
@abdelrahmanhedia9483 2 жыл бұрын
Same
@omarious
@omarious 2 жыл бұрын
Vpn to France worked
@zellergade2419
@zellergade2419 2 жыл бұрын
Refresh the page, if doesn't work, clear browser cache. If on mobile app, completely stop it and restart it.
@Shalve94
@Shalve94 2 жыл бұрын
Amazing and very clear course! It helped me to start with Neural Networks.
@Radu
@Radu 2 жыл бұрын
Glad to hear!
@shira158
@shira158 2 жыл бұрын
Mulțumim frumos, Radu! Ne faci mândri! 😊
@Radu
@Radu 2 жыл бұрын
Cu placere :-)
@azatgaripov2380
@azatgaripov2380 2 жыл бұрын
At 11:30. I have completely followed the coding. Though after saving the files and refreshing the page, I have the following error: *Uncaught ReferenceError: height is not defined* *at new Car (car.js:6:15)* *at main.js:6:11* Could someone explain what might be the issue please? Thanks in advance.
@Radu
@Radu 2 жыл бұрын
Hard to say without seeing the code. Are you using the 'this' keyword before height?
@liamconverse8950
@liamconverse8950 2 жыл бұрын
Can't wait until the "code your own anime waifu bot in JavaScript" video drops
@Radu
@Radu 2 жыл бұрын
:-)) check the most recent video on my channel (close enough?)
@fakefury1198
@fakefury1198 2 жыл бұрын
What an awesome video! I'm so grateful that I'm in pre-calc right now so I understand all of the trig stuff :)
@Radu
@Radu 2 жыл бұрын
Great! :-)
@auliyaramdini2964
@auliyaramdini2964 Жыл бұрын
definitely diving into your videos. Thank you so much for taking the ti to teach us that are green in the field. Have a great day
@markomwansa
@markomwansa 2 жыл бұрын
Thank you for the great tutorial, Radu! I had a quick js question. I am stuck however at the artificial sensor section. My code produces an error running "this.rays[i][1].x". It's a TypeError that tells me that "undefined" doesn't have "x" property. When I replaced line "this.rays[i][*]" with numbers the code runs and the rays are drawn. But I noticed that the when I console.logged "this.rays", the first term is "undefined." I was wondering if this is something you encountered when coding this project? If so, how did you fix it? Thanks
@Radu
@Radu 2 жыл бұрын
Hi! It would help if I could see the code somehow.
@akshatchouhan5199
@akshatchouhan5199 2 жыл бұрын
I got the same error if you have the solution please send send it to me
@akshatchouhan5199
@akshatchouhan5199 2 жыл бұрын
@@Radu I got the same error please help
@Radu
@Radu 2 жыл бұрын
@@akshatchouhan5199 You might have an extra car.draw(ctx) in main.js, above the animate function.
@akshatchouhan5199
@akshatchouhan5199 2 жыл бұрын
@@Radu thanks the error is gone now
@Coryu805
@Coryu805 2 жыл бұрын
At 57:50 I get a "Uncaught TypeError: Cannot read properties of undefined (reading '0') at Sensor.draw (sensor.js:37:29) at Car.draw (car.js:77:21) at main.js:7:5" error. Any help would be appreciated!!!
@raidarkivistik
@raidarkivistik 2 жыл бұрын
If You left a copy of car.draw(ctx); in main.js outside animation loop, delete it and it should work fine
@Radu
@Radu 2 жыл бұрын
@@raidarkivistik Yeah... unfortunately I move that line down quite quickly in the video.
@Coryu805
@Coryu805 2 жыл бұрын
@@raidarkivistik Thank you so much! It works perfectly now!
@zachc2105
@zachc2105 2 жыл бұрын
@@raidarkivistik godsend
@sneadidol6909
@sneadidol6909 Жыл бұрын
I cannot believe what I am seeing it with my eyes! LOOL TY SO MUCH!
@abdotarek4155
@abdotarek4155 Жыл бұрын
Okay best video out there! Straight to the point and crisp video. Thank you so much! Life Saver!
@Radu
@Radu Жыл бұрын
Thanks :-) Glad you liked it!
@simplex56
@simplex56 Жыл бұрын
At about 42:00 when adding ctx.setLineDash([20, 20]) it instead just removed the middle lines completely. I couldn't figure out where I went wrong. Anyone else have this issue?
@Radu
@Radu Жыл бұрын
Yeah, others complained about it too. Your constant for I infinity is probably too large.
@amitlevy3535
@amitlevy3535 Жыл бұрын
@@Radu That fixed it, thanks! can you explain why it happens?
@fatcat4162
@fatcat4162 Жыл бұрын
Thanks
@davidstefanc
@davidstefanc 6 ай бұрын
@@Radu Multumesc! :D
@rafaelbustillo1308
@rafaelbustillo1308 2 жыл бұрын
I have been following the code and I don't know how to fix the error: "Uncaught ReferenceError: Car is not defined at main.js:7:11" can someone help me please
@Radu
@Radu 2 жыл бұрын
Could you share your whole code somehow? I can't say what the problem is from this error message.
@rafaelbustillo1308
@rafaelbustillo1308 2 жыл бұрын
@@Radu I got it figureed out. the problem is that in the index.html file I had the scripts in a different order so main.js was getting called before car.js. thank you!
@Radu
@Radu 2 жыл бұрын
@@rafaelbustillo1308 ah, OK. Makes sense!
@harishnaitanwar1162
@harishnaitanwar1162 Жыл бұрын
man I missed this kind of tutorials lol. Great work here, thanks!!!
@yakovkemer5062
@yakovkemer5062 2 жыл бұрын
Bravo. Amazing lesson. Thank you very much. I had the best results with 3 layers. 10, 6 ,4
@Radu
@Radu 2 жыл бұрын
Cool :-)
@riju1956
@riju1956 2 жыл бұрын
hi i am radu -> decode -> hi i am raju
@Radu
@Radu 2 жыл бұрын
Raju sounds cooler, though...
@benrogers8390
@benrogers8390 2 жыл бұрын
for all those too lazy to copy the intersect function function lerp(A, B, t) { return A + (B - A) * t; } function getIntersection(A, B, C, D) { const tTop = (D.x - C.x) * (A.y - C.y) - (D.y - C.y) * (A.x - C.x); const uTop = (C.y - A.y) * (A.x - B.x) - (C.x - A.x) * (A.y - B.y); const bottom = (D.y - C.y) * (B.x - A.x) - (D.x - C.x) * (B.y - A.y); if (bottom != 0) { const t = tTop / bottom; const u = uTop / bottom; if (t >= 0 && t = 0 && u
@Radu
@Radu 2 жыл бұрын
Thanks for sharing this :-)
@benrogers8390
@benrogers8390 2 жыл бұрын
@@Radu No worries! Loved the course ;) but I don't know how I feel about you calling me out for using JS oveer Python hahah
@Radu
@Radu 2 жыл бұрын
@@benrogers8390 would you prefer a python version? :-)
@cadenshafer9838
@cadenshafer9838 Жыл бұрын
Thank u for being a great human being and taking ti to help all of us noobs out cheers
@mynewgadget5128
@mynewgadget5128 Жыл бұрын
this is the first video of yours I watched You are a gem, you tried your best to recover his data. I had never watched a video like this before. I am glad to subscribe to your channel.
@Radu
@Radu Жыл бұрын
Glad you liked it :-)
@Morteza_HH
@Morteza_HH Жыл бұрын
I have a problem in 57:48 . it gives me: Uncaught TypeError: Cannot read properties of undefined (reading '0') at Sensor.draw (sensor.js:34:40) at Car.draw (car.js:51:21) at main.js:7:5 I tried removing car.draw(ctx) in main.js file in line 7 as there were said in comments but I can't see rays that way. Help please🤦‍♂
@Radu
@Radu Жыл бұрын
If you can share the code somehow (like in the discord linked on my channel), I can have a look.
@lol51329
@lol51329 Жыл бұрын
same error, did you manage to figure it out?
@ericksasonet
@ericksasonet 9 ай бұрын
@@lol51329 removing the car.draw(ctx) in main.js in line 7 worked for me.
@priyanshjain2624
@priyanshjain2624 Ай бұрын
same error did you get it
@gireeshbhat4158
@gireeshbhat4158 Жыл бұрын
Why the hell he needs vs code
@Radu
@Radu Жыл бұрын
What do you use?
@gireeshbhat4158
@gireeshbhat4158 Жыл бұрын
Iam glad to see your reply ☺️ I also use VS code but as you are not using any syntax highlighting or auto suggestions, I just commented why you use vs code you can use notepad for that.
@Radu
@Radu Жыл бұрын
@@gireeshbhat4158 :-)) ah, ok, I get it now. Well, I like the themes in VS Code and the fonts look nice. There's some anti-aliasing there, I think. I use highlighting and suggestions when coding normally :-P but when making tutorials I like the focus to be in one place (the cursor) as much as possible... Not a bunch of windows jumping all over the place and sometimes covering parts of code that others are still looking at.
@calebcadainoo
@calebcadainoo Жыл бұрын
Woooow this guy's a great teacher... I'm just watching and not coding but I'm really enjoying it 👏
@Radu
@Radu Жыл бұрын
Glad to hear :-)
@EinLinuus
@EinLinuus 2 жыл бұрын
Thank you for that great course! It's really interesting and your explanations are very good. Thanks :)
@Radu
@Radu 2 жыл бұрын
You're welcome! Thanks for watching :-)
@davidmurphy563
@davidmurphy563 2 жыл бұрын
Hmm. Why did they go with JavaScript... I know js - everyone does - but Python is so much nicer to code. I follow the "avoid js if at all possible" route. It's slow though, I'll grant. I suppose it would be easy enough to watch and do it in Python.
@fus3n
@fus3n 2 жыл бұрын
i suppose because its easier to code the game and an easy api so people can focus on the neural network part more the algorithm should be same no matter the language if you understand js then you should be able to apply it in python with pygame so i think its worth it.
@rajanpoudel7980
@rajanpoudel7980 2 жыл бұрын
But python is too slow
@davidmurphy563
@davidmurphy563 2 жыл бұрын
@@rajanpoudel7980 Yeah, like I said, it is slow. I might use the open source Godot game engine. It uses a pythonesque script but it'll run something like this at hundreds of FPS. Plus, it has all the convenient methods for this sort of thing. Yeah, I'll do that.
@Radu
@Radu 2 жыл бұрын
It's because JS is popular, so many people know it already, but JS is not well known for machine learning, so... I want to introduce AI related concepts to JS coders. At work I teach this same thing in Python as well. Since I don't use libraries, it doesn't really matter what you use to follow along if you're comfortable with some other language. Most of the things will be compatible.
@davidmurphy563
@davidmurphy563 2 жыл бұрын
@@fus3n I'm going to try it in Godot. That's basically python and is the lazy man's choice being a dedicated games engine.
@creepercoolest22
@creepercoolest22 2 жыл бұрын
Love this tutorial keep them coming.
@daveanderson8348
@daveanderson8348 2 жыл бұрын
By far the best video and best teacher I've ever seen on KZfaq!
@Radu
@Radu 2 жыл бұрын
Thank you :-)
@georgiiperepechko9321
@georgiiperepechko9321 2 жыл бұрын
This is a great course 👍 If you have a basic knowledge of JS you can follow the explanations and learn a lot.
@Radu
@Radu 2 жыл бұрын
Thank you! I'm happy to hear that :-)
@giannidedrijver3339
@giannidedrijver3339 Жыл бұрын
Great tutorial, links and program worked fine for me. Thanks for sharing.
@jezreelquijano6528
@jezreelquijano6528 Жыл бұрын
You are a life saver! Kudos to you! You rock!!
@a0nmusic
@a0nmusic 2 жыл бұрын
this has been the most fun best interesting tutorial on youtube. well done!
@Radu
@Radu 2 жыл бұрын
Thank you. Glad you liked it :-)
@CrazyFungusGaming
@CrazyFungusGaming 2 жыл бұрын
Great content, keep up the great work mate! Subscribed for more videos! I have been looking for something like this for a long time.
@Radu
@Radu 2 жыл бұрын
Glad you like it! See you around!
@DJ29Joesph
@DJ29Joesph Жыл бұрын
Love it. "Naturally, I want the car to explode on impact" 🤣
@Radu
@Radu Жыл бұрын
:-))
Training an unbeatable AI in Trackmania
20:41
Yosh
Рет қаралды 13 МЛН
Building a Self-Driving Go Kart
13:46
Austin Blake
Рет қаралды 259 М.
Iron Chin ✅ Isaih made this look too easy
00:13
Power Slap
Рет қаралды 36 МЛН
Finger Heart - Fancy Refill (Inside Out Animation)
00:30
FASH
Рет қаралды 27 МЛН
50 YouTubers Fight For $1,000,000
41:27
MrBeast
Рет қаралды 208 МЛН
Learn TensorFlow.js - Deep Learning and Neural Networks with JavaScript
1:19:37
Water powered timers hidden in public restrooms
13:12
Steve Mould
Рет қаралды 491 М.
AI Learns to Walk (deep reinforcement learning)
8:40
AI Warehouse
Рет қаралды 9 МЛН
How I'd Learn AI (If I Had to Start Over)
15:04
Thu Vu data analytics
Рет қаралды 762 М.
How to Create a Neural Network (and Train it to Identify Doodles)
54:51
Sebastian Lague
Рет қаралды 1,8 МЛН
The moment we stopped understanding AI [AlexNet]
17:38
Welch Labs
Рет қаралды 824 М.
$25,000 vs. $25,000,000
29:58
Johnny Harris
Рет қаралды 1,6 МЛН
Machine Learning & Neural Networks without Libraries - No Black Box Course
3:37:32
I learned to code from scratch in 1 year. Here's how.
41:55
Thomas Frank
Рет қаралды 385 М.
Iron Chin ✅ Isaih made this look too easy
00:13
Power Slap
Рет қаралды 36 МЛН