AI Learns to Park - Deep Reinforcement Learning

Поделиться
HTML-код
  • Опубликовано: 1 янв 2025

Комментарии • 3,1 тыс.

  • @SamuelArzt
    @SamuelArzt  5 лет назад +846

    Watch two AI Agents fight for the same parking spot:
    ruclips.net/video/CqYKhbyHFtA/видео.html

    • @TechMasterRus
      @TechMasterRus 5 лет назад +8

      Can it park in other place after learning on this place?

    • @SamuelArzt
      @SamuelArzt  5 лет назад +31

      @@TechMasterRus It is very unlikely to be able to generalize to other parking spots. In order to do so, one would have to at least also randomize the parking spot position during training.

    • @TechMasterRus
      @TechMasterRus 5 лет назад +1

      @@SamuelArzt what data do you use to train AI? Global coords relative to some static point? If you use all objects in car's coodinate system, then mb it won't matter where to park... if it will be able to train like that at all.

    • @SamuelArzt
      @SamuelArzt  5 лет назад +3

      @@TechMasterRus The inputs of the neural network are mentioned in the video description:
      "the readings of eight depth sensors, the cars current speed and position, as well as its relative position to the target"
      I think having the relative position of all obstacles would be somewhat cheaty. Don't get me wrong, this is far from being realistic, but I think that would be too far of a stretch.
      If you want to achieve an AI to park on any spot in the parking lot, it would be more feasible to simply train it on randomized parking spot positions. It will be better at generalizing to other parking spots then, even though that is likely to increase training time.

    • @void3790
      @void3790 5 лет назад

      Hey, if your interested I’d love if I could email you some of my music to use as background music

  • @EricJCaraballoso
    @EricJCaraballoso 3 года назад +1708

    This is the definition of "don't practice until you get it right, practice until you can't get it wrong"

    • @tenchi2075
      @tenchi2075 3 года назад +60

      That’s a really nice quote

    • @Jawsomest
      @Jawsomest 2 года назад +13

      . . .
      I rememebr a similar quote!
      "Hit or miss huh,- ok ok i won't.

    • @DarrinDarwinacious
      @DarrinDarwinacious 2 года назад +1

      Omg it’s the “dEfiNitiOn”?

    • @solarizedmonkeyman
      @solarizedmonkeyman 2 года назад +1

      @@tenchi2075 it's Daniel Willingham, it's from his theory of learning

    • @tertervouz
      @tertervouz 2 года назад

      @@DarrinDarwinacious mean

  • @rightyboywilson4911
    @rightyboywilson4911 5 лет назад +2097

    Actual footage of me trying to park after 2 years of driving

    • @calebsherman886
      @calebsherman886 5 лет назад +15

      I too park in the same spot at the store

    • @PritishMishra
      @PritishMishra 5 лет назад +1

      😂😂

    • @lilaxeree3621
      @lilaxeree3621 5 лет назад +7

      *shoves truck out of the way so I can take 2 spots*

    • @DocTwoEight
      @DocTwoEight 5 лет назад +1

      Just back it up dude, it's much simpler than trying to park front first

  • @JackRackam
    @JackRackam 2 года назад +497

    It looks like it's having to fight the voices in its head telling it to run full speed into those other cars

    • @loafbread529
      @loafbread529 2 года назад +24

      me when im infront of a tesla at a traffic jam

    • @whatamidoingwithmylife4108
      @whatamidoingwithmylife4108 2 года назад +3

      I didn't think I'd find you here my majesty. Nevermind, your supreme excellence graces this comment section.

  • @MichaelRicksAherne
    @MichaelRicksAherne 5 лет назад +2289

    "What is my purpose?"
    "You park cars."
    "Oh god...."

    • @Cyian
      @Cyian 5 лет назад +38

      Michael Ricks-Aherne yeah welcome to the club pal

    • @jamesfullecido9760
      @jamesfullecido9760 5 лет назад +37

      Is this a rick and morty reference

    • @fractal_mind562
      @fractal_mind562 5 лет назад +5

      Its referencing alot of things I guess, my first thought was the Ricky Gervais joke about dogs... Then rick and Morty... Could probably think of others

    • @sodiboo
      @sodiboo 5 лет назад +2

      That’s a valet

    • @EastyUK
      @EastyUK 5 лет назад +1

      @@fractal_mind562 I thought of red dwarf and the toaster.

  • @barraged999
    @barraged999 5 лет назад +2868

    “AI will take over humanity”
    300k iterations later, the car still gets a parking ticket.

    • @TheHumanSystem
      @TheHumanSystem 3 года назад +56

      We will not require tickets in our robot future. I will pass this on to our human so he is aware of this issue. Thank you.

    • @alpacamale2909
      @alpacamale2909 3 года назад +43

      well considering it takes a human 18 years to do it...

    • @husk1c
      @husk1c 3 года назад +26

      @@alpacamale2909 18 years? Lmao HAHAHAHAHAHAHHA

    • @ninjacodertech
      @ninjacodertech 2 года назад +15

      @@alpacamale2909 16 but depends on the country

    • @RangerFPS
      @RangerFPS 2 года назад +6

      such an ignorant comment

  • @Chromwel-A
    @Chromwel-A 4 года назад +538

    This kinda makes me appreciates the NPC's driving in GTA V.

    • @TheHumanSystem
      @TheHumanSystem 3 года назад +48

      They are skilled, but remember that is an enclosed and well defined system. Still impressive, however.

    • @markmd9
      @markmd9 3 года назад +50

      In GTA they are not AI, they are killing machines

    • @PowJey
      @PowJey 3 года назад +6

      @@markmd9 in gta online they are crashers machines hahah

    • @roteschwert
      @roteschwert 3 года назад +22

      Yeah, in GTA they're just programmed to

    • @DraxTheDestroyer
      @DraxTheDestroyer 3 года назад +36

      You can't compare the two because gta v bots are not AI they are programmed

  • @BlakeMaloof
    @BlakeMaloof 5 лет назад +2461

    I like the strategy at 2:45, sometimes I wish I could do that when I park...

    • @ChrysusTV
      @ChrysusTV 4 года назад +154

      I was pretty curious about this attempt. I wonder if the AI decided that the negative reward for crashing into the vehicle was outweighed by the positive reward for parking. Then curious how the +/- rewards are defined, and if the AI continues to receive negative reward for the duration of the collision or if it is only penalized when it first collides with the vehicle.

    • @rcsibiu
      @rcsibiu 4 года назад +39

      Same strategy is applied at 5:01

    • @krishnamshinde5589
      @krishnamshinde5589 4 года назад +18

      Mr bean style hahaha

    • @iamcyancat7924
      @iamcyancat7924 4 года назад +2

      lmao

    • @tapist3482
      @tapist3482 4 года назад +39

      @@ChrysusTV I guess the AI would continuously receive negative rewards when in contact with other cars.
      Because from the attempt on 5:01 we can see it was basically the same strategy, but the AI learnt to kick the car away with repeated, high speed strikes instead of just pushing it.

  • @distantforest2481
    @distantforest2481 4 года назад +747

    *Pushes through car to get to parking spot"
    "Boom! nailed it"

  • @CapnSlipp
    @CapnSlipp 2 года назад +119

    I wonder how much the learning process would be affected by feeding in not just the current sensor input, but the last couple of seconds of sensor inout (so 2 seconds * 60 FPS * 8 sensors additional neural inputs), and maybe the last 2 seconds of the AI’s own output decisions as well. The network would be much bigger and training would take much longer, but I wonder if past input and decisions would feed forward in time to produce smoother results, preventing the AI from just going for a bad solution as often.

  • @JakeLuden
    @JakeLuden 5 лет назад +1717

    “After 5k attempts”
    *oh shit he’s getting close*
    “After 15k attempts”
    *alright how long is this video now?*

    • @mayatechnologyinspired6679
      @mayatechnologyinspired6679 5 лет назад +36

      Did you see when he pushed the gray car outta it's place and just pushed straight ahead

    • @whiskeyburns5230
      @whiskeyburns5230 5 лет назад

      standard 10 mins

    • @jeremyloldrup7997
      @jeremyloldrup7997 5 лет назад +2

      Yeah i thought the same and thought at 20k it would understand since it had felt the great feeling of parking, but I was very wrong xD

    • @lars38010
      @lars38010 4 года назад +1

      @@mayatechnologyinspired6679 The AI just thinks it's Mister Bean.

  • @Smileynator
    @Smileynator 5 лет назад +1669

    Multiple issues i spot: Sometimes the raycasts see nothing (it is plowing a car, yet raycast is green and max range), Raycasts are raycasts, i suggest boxcasts to be more realistic at least for the front side. The parking spot never moves, nor does the other cars/environment, so this does not generalize well at all either (if it learned this spot, a different spot will likely not work at all). Hitting an obstacle or invalid driving location (sidewalk) should instantly end the simulation of that episode to iterate faster on problematic attempts.

    • @okayokay1979
      @okayokay1979 5 лет назад +67

      Niceeee. Where did you learn reinforcement learning!?

    • @Smileynator
      @Smileynator 5 лет назад +70

      @@okayokay1979 Self study, why?

    • @SamuelArzt
      @SamuelArzt  5 лет назад +381

      Haha, you are the first commentor to notice that raycast bug. I didn't bother to fix it in the end, since the AI is not supposed to reach that edge case (of constantly touching an obstacle) anyway and gets a large penalty for doing so.
      Boxcasts / Spherecasts / Colliders were already suggested numerous times by other people. The same goes for randomizing car and parking spot position.
      I also did think of these things, they are of course very obvious, but decided to stick with this setup since I didn't want to increase training time any further as it was already very close to the limit I was comfortable with.

    • @Smileynator
      @Smileynator 5 лет назад +147

      @@SamuelArzt Fair, i did not bother to read all other comments, those were just my thoughts on it. Well done otherwise, nice experiment. For entertainment i would give the other cars a car alarm when hit.
      As for the training time, i did suggest ways to shorten it. Often you can cut off any simulation the moment it becomes "unrecoverable" like in this case the car hitting any obstacle would be a definite fine on the drivers end. Also, if you take a bit more reading into account, you can actually make machine learning run headless, or even multiple instances side by side, and have the "max physics timestep" setting figure out how fast it can run those instances at any given time. It might be a bit choppy at times, but as long as the max timestep is small enough it should not affect learning, and it will sort of auto self-balance to max load for your device.
      For presentation you can make a backup of the .nn file every X iterations yourself, so you can playback a few runs in "learning run 10k, 15k, etc." and for the rest train in headless or otherwise visually heavily downscaled instances for training speed increases.

    • @SamuelArzt
      @SamuelArzt  5 лет назад +121

      @@Smileynator Car alarms would be very fun indeed ^^
      As far as the headless, sped up training and saving of the model is concerned, that is exactly what I did (and with exactly, I mean impressively almost scaringly accurate).

  • @AidanWR
    @AidanWR 3 года назад +17

    Came for the car going around randomly, now I can go to bed happy

  • @AndreasNV
    @AndreasNV 5 лет назад +718

    If there's an artificial intelligence apocalypse, we'll know that this guy left his computer on for too long.

    • @blueraspberrylemonade32
      @blueraspberrylemonade32 5 лет назад +8

      Let's hope it at least remembers anything about us

    • @svampebob007
      @svampebob007 5 лет назад +37

      oh the horror!, perfectly parallel parked cars!, parallel parked cars EVERYWHERE!!!

    • @acidtears
      @acidtears 4 года назад

      @@svampebob007 Literally the only apocalypse that will happen

    • @mrtkhosravi9399
      @mrtkhosravi9399 4 года назад

      🤣🤣🤣🤣🤣

    • @azul_aim
      @azul_aim 4 года назад +1

      well, to our disappointment this one could only park all cars eventually

  • @priyankraval7461
    @priyankraval7461 5 лет назад +1356

    "It has 8 depth sensors"
    *breaks the pole*
    Is the sensor learning too??

    • @Azaelris
      @Azaelris 5 лет назад +88

      Well in deep learning. You have reward and punishment. The ai over time realises hey hitting stuff is bad.
      But I understand ur joke lol

    • @priyankraval7461
      @priyankraval7461 5 лет назад +34

      @@Azaelris yes, i know the AI is just a baby using the sensors as its eyes and learning not to collide, by colliding

    • @whyarurannin4918
      @whyarurannin4918 5 лет назад +13

      @@priyankraval7461 But guys , what is parking for AI? I mean once the "car" Is in the right Place how does It understand It Is ? There Is some kind of condition like (if Car Is in a middle of White lines , It Is parked ?) And It tries all the random algoritms till It happen?

    • @svampebob007
      @svampebob007 5 лет назад +16

      nah the AI is just very kinky, get that punishment you dity AI ;)

    • @whyarurannin4918
      @whyarurannin4918 5 лет назад +3

      @Ceol Hmm interesting , thanks bro

  • @spiderinofiesta3341
    @spiderinofiesta3341 2 года назад +13

    Since the initial position of the car for every learning try was random, I imagine that the resulting model with 300k or so learning tries should be able to park on the remaining available parking slots. Checking if so, and if not why not would be great tbh.
    beautiful work, I feel more than lucky to be able to see such nice results presented in such an interesting manner!

  • @koelee
    @koelee 5 лет назад +430

    What the-
    how did I never realise that my parking practice was being recorded??

    • @10054
      @10054 3 года назад

      LMFAO

  • @booseloose8992
    @booseloose8992 5 лет назад +2348

    "AI is penalized for crashing"
    10:07 spawns AI on top of car
    AI: One day you will pay, humans...

    • @TheSuperBugsBunny
      @TheSuperBugsBunny 5 лет назад +38

      Exactly my thoughts 😂

    • @lululipes4382
      @lululipes4382 5 лет назад +17

      You forgot a comma there, buddy

    • @temujincalidius
      @temujincalidius 5 лет назад +6

      One day AI will have its own rights. It will control internet based business and offer you VPN, hosting, web design, programming, hacking... And have its own cryptocurrency wallets to trade with and buy what it likes.

    • @tylerhoblet1458
      @tylerhoblet1458 5 лет назад +3

      Yup I sure will pay humans in the future

    • @traskforge
      @traskforge 5 лет назад +6

      "why are we still here, just to suffer?"

  • @luca83439
    @luca83439 4 года назад +21

    2:48 "Leonard that's my spot"

  • @teraspeXt
    @teraspeXt 4 года назад +274

    2:49 my favorite attempt. " 'Scuse me, that's my parking space. Move over."

  • @thefrub
    @thefrub 5 лет назад +3535

    If (going to crash)
    Then (don't)
    boom, programmed

    • @yousof8546
      @yousof8546 5 лет назад +221

      wow youre very smart im sure youve coded many programs

    • @EmrecanOksum
      @EmrecanOksum 5 лет назад +50

      The problem here is how to make it know that it would crash.

    • @Paddy.121
      @Paddy.121 5 лет назад +381

      @@EmrecanOksum
      If (rangesensorDistance >= 30cm)
      {
      println "Bruh, stahp the car!!11"
      Motor = 0
      DriveAround = 0
      }
      else
      {
      println "Wtf am i doin?"
      Motor = 1
      DriveAround = 1
      }:

    • @orange3567
      @orange3567 5 лет назад +116

      EMR3 C4N 0K5UM You do realize that it’s just a joke right....we all known that it isn’t that simple

    • @yousof8546
      @yousof8546 5 лет назад +12

      Thanoose im pretty sure he was joking aswell

  • @SkilledApple
    @SkilledApple 3 года назад +11

    4:17 okay, now its just showing off.

  • @theyoshi202
    @theyoshi202 4 года назад +412

    I’d love to see it have its parking spot selected randomly from the 6 open ones, then it’ll have to learn more generally how to go to any location rather than a specific one

    • @ursibar7837
      @ursibar7837 2 года назад +7

      It could be the next step.

    • @Jcakedafurry
      @Jcakedafurry 2 года назад +8

      I feel like a more realistic set starting point, with one random empty one would provide a better real AI, as normally your car will not just spawn in a parking spot and you need to go to another parking spot in the same lot

    • @eduardo.chaves
      @eduardo.chaves 2 года назад +3

      And change how many and where the other cars are parked

    • @koresaliva
      @koresaliva Год назад +1

      Everything everyone mentioned here as well as obstacles in the way

    • @timurpozharskiy4880
      @timurpozharskiy4880 Год назад +1

      I think the place of the parking spot is involved in the calculations through the relative distance with the car and the relative angle of rotation

  • @sig_nessuno
    @sig_nessuno 5 лет назад +6516

    Even my mother can do it in just 15k attempts!

  • @Doom8810
    @Doom8810 3 года назад +15

    More penalties should of been used, ie, driving on the curb, and instant failure on crashing.
    Also a segmented training might of helped, with the car spawning closer to the space in the beginning, maybe even changing the spot to park after a success

  • @theMixElite
    @theMixElite 4 года назад +2037

    Still better than me

    • @shu3684
      @shu3684 4 года назад +6

      Maly ten jutub

    • @NithinJune
      @NithinJune 4 года назад +68

      to be fair you probably didn't practice for 200,000 times strait

    • @MrGodofcar
      @MrGodofcar 4 года назад +8

      That's what she said.

    • @HonzikKubesovic
      @HonzikKubesovic 4 года назад +2

      In the future, probably better than all

    • @lunasplayer1313
      @lunasplayer1313 4 года назад +3

      That’s concerning

  • @4AneR
    @4AneR 5 лет назад +402

    Overfitting? Should've given different parking slots

    • @lisandrob626
      @lisandrob626 5 лет назад +21

      was thinking the same, overfitted AF, but good exercise doe

    • @nefariousActor
      @nefariousActor 5 лет назад +40

      Eventually more parking slots, and different configurations for already parked vehicles

    • @calebsherman886
      @calebsherman886 5 лет назад

      yep

  • @rainessandrai8240
    @rainessandrai8240 3 года назад +13

    I love it, when ai parked perfect to the wrong parking spot.

  • @Earlgreey1
    @Earlgreey1 5 лет назад +584

    Now i wanna see multiple ai on trying to park at the same time.

    • @SamuelArzt
      @SamuelArzt  5 лет назад +71

      Haha, yeah that's a great idea. I have also thought of that. I will try that and at least post a tweet about it.
      If it is worth more than a gif, I will definitely upload a video of it ;)

    • @sirbughunter
      @sirbughunter 5 лет назад +17

      @@SamuelArzt you did it!! 🤩

    • @SamuelArzt
      @SamuelArzt  5 лет назад +16

      @@sirbughunter Haha, yeah! Turned out real fun!

    • @_Killkor
      @_Killkor 5 лет назад +4

      110109999188880 attempts later...

    • @norpriest521
      @norpriest521 5 лет назад +1

      @@SamuelArzt
      This video proves that why we shouldn't rely on AI and stick to manual

  • @ethancheng1595
    @ethancheng1595 5 лет назад +41

    I love how at 20003 it got the first taste of that sweet parking reward, then it needed a fix so badly it rammed the white pickup out of the way.

  • @tokiWren
    @tokiWren 2 года назад +1

    a couple things i noticed:
    - occasionally the car will crash into things in front of it because of the one-dimensional lines of sight.
    - car appears to prefer to turn left. because of practice perhaps?
    very cool stuff!

  • @unintentionallydramatic
    @unintentionallydramatic 5 лет назад +499

    So you're saying all those 3 AM Walmart parkers are really AI'?

  • @keco185
    @keco185 5 лет назад +371

    The parking lot configuration should’ve been randomly generated each trial

    • @wojtek9395
      @wojtek9395 5 лет назад +45

      You are totally right, I am wondering how would it affect learning speed, I noticed that based on the evolution the harder the environment you are in is the quicker u learn.

    • @mattiasmarder
      @mattiasmarder 5 лет назад +24

      Right. Isn't there an overwhelming chance that it learned to navigate in just this particular configuration (including target location and other cars). Could the DNN have learned the map of the environment as captured by the depth sensors?

    • @keco185
      @keco185 5 лет назад +11

      Mattias Marder what it looked like it learned was a map of vectors. Basically at pos x,y it learned to travel at angle theta. There’s a non 0 chance that you could get rid of the “sensors” and it would still find the parking spot

    • @ycjoelin000
      @ycjoelin000 5 лет назад +4

      I think it's easier to train the agent to park at one spot and do transfer learning on multiple spots.

    • @SamuelArzt
      @SamuelArzt  5 лет назад +40

      @@keco185 I tried removing the sensors and it never learned to park in the time of 5M steps (i.e. the length equal to the experiment shown in the video).

  • @nclsDesign
    @nclsDesign 3 года назад +1

    When you compare the beginning to the end it's just awesome!

  • @luxocracy5205
    @luxocracy5205 5 лет назад +130

    Deep reinforcement learning sounds more like you hit the AI on the hand with a ruler every time it does something wrong

    • @triassicraptor4375
      @triassicraptor4375 4 года назад +36

      That's essentially what it is.

    • @aleksandersuur9475
      @aleksandersuur9475 4 года назад +21

      Well, the copies of AI that fail go straight to /dev/null so that's really more like "executions will continue until the morale improves"

    • @Mansare94
      @Mansare94 4 года назад +2

      @@aleksandersuur9475 you'd think it'd keep it to know what not to do, like fire is hot, don't touch.

    • @TheFlashPod
      @TheFlashPod 4 года назад

      Agree, seems like bad code

    • @daydreamthewaggon6159
      @daydreamthewaggon6159 4 года назад +6

      AI: harder daddy

  • @nipunkothare
    @nipunkothare 5 лет назад +124

    after 20000th iteration:
    yeah I got it! I finally got it!
    20001st iterations:
    rams into truck again

  • @ussiz
    @ussiz 3 года назад +13

    Feels like watching a kid growing up x1000 faster
    Succeeding, failing, still moving no matter what
    This is so cute 🥰

  • @aureliocoeto765
    @aureliocoeto765 4 года назад +78

    Me with 4 overdue assignments at 3 am
    *I N T E R E S T I N G*

  • @GamerRusith
    @GamerRusith 5 лет назад +87

    AI: Learns to park
    User: cool, (proceeds to change parking location)

    • @johnuferbach9166
      @johnuferbach9166 5 лет назад +7

      if it was properly trained that shouldn't be a problem

    • @juzarbharmal9998
      @juzarbharmal9998 4 года назад +1

      As this is AI changing parking location should not be problem after some more training. As so much as training in complex parking lot should be also faster for this neural network.

  • @sharks1349
    @sharks1349 2 года назад

    I'd like to see the enviornment change with every attempt. Despite spawning at a random position it might still have overfit. Amazing work regardless, keep it up.

  • @Xizilqou
    @Xizilqou 4 года назад +116

    I love how the AI tries to park in all the different spots.

  • @ItsCurtisLife
    @ItsCurtisLife 4 года назад +683

    AI typically takes around 1 million try’s to get something and they can try 1 million times in like a few minutes... this is insane

    • @dylanisaac1017
      @dylanisaac1017 4 года назад +114

      This simulation has a physics engine, your a couple hours off. It takes way longer than minutes.

    • @dylanisaac1017
      @dylanisaac1017 4 года назад +26

      Maybe one day, but by that time an AI that can use logic and doesn’t require over 100k attempts will already be here.

    • @TheHumanSystem
      @TheHumanSystem 3 года назад +4

      I only have a Raspberry Pi brain. I wish my algorithms were this complex.

    • @dylanisaac1017
      @dylanisaac1017 3 года назад +1

      @DeBobbelear 8769 ?

    • @dylanisaac1017
      @dylanisaac1017 3 года назад

      @DeBobbelear 8769 I don’t get how you don’t understand what I was saying

  • @lyingpancake95
    @lyingpancake95 2 года назад +2

    This makes me feel a lot better about when I learned to parallel park.

  • @robbietaylor4114
    @robbietaylor4114 4 года назад +178

    I don't know why, but the first 5 minutes of the AI failing and just crashing everywhere was absolutely hilarious to me

  • @vanderkarl3927
    @vanderkarl3927 5 лет назад +74

    I wonder how well a HUMAN would perform with those 10 inputs!

    • @SamuelArzt
      @SamuelArzt  5 лет назад +38

      Yes, I totally agree.
      Imagine being given a steering wheel, two pedals and a screen that simply showed 10 floating point numbers, with all information about your task being whether you are currently doing good or bad.
      Even then a human would have more prior knowledge of the task than a machine, since we will immediately associate the steering wheel and pedals with driving a car.

    • @anatoliy333
      @anatoliy333 5 лет назад

      @@SamuelArzt this text must be in video description.

    • @anatoliy333
      @anatoliy333 5 лет назад

      @@SamuelArzt have you such simularot for human? I'd like to test my bio neurons.

    • @SamuelArzt
      @SamuelArzt  5 лет назад +1

      @@waltersereinig3587 The neural network has 14 inputs, if I remember correctly and one of the is the current speed.
      The 3D visualization was indeed mainly for visual / entertainment purposes rather than there being an actual need for 3D environment.
      The sensors were deliberately kept to minimal complexity since the application of an AI like this would rather be for a game than real life, thus anything more complex would have a considerable impact on performance.

  • @TimeWisely
    @TimeWisely 2 года назад

    It's so satisfying seeing a naive robot make a clean park with no mistakes. Good model!

  • @albertcucuteanu4702
    @albertcucuteanu4702 5 лет назад +1722

    Conclusion: AI won't control the world yet

    • @EnDeRBeaT
      @EnDeRBeaT 4 года назад +104

      It's learning to control

    • @shahbazansari7514
      @shahbazansari7514 4 года назад

      You must watch this:
      ruclips.net/video/Lu56xVlZ40M/видео.html
      They are not only gonna control but will break all the limitations which humans have. 😂😂😂

    • @intensestare5027
      @intensestare5027 4 года назад +104

      AI basically are learning at a faster pace than the entire human race, evolution that usually takes millions of years only takes a couple days for AI

    • @shindousan
      @shindousan 4 года назад +17

      Worse: it already does to some extent and its ability is on par with the AI driver of this video.

    • @Mansare94
      @Mansare94 4 года назад +31

      @@intensestare5027 The big difference is that this ai in particular had an imaginary world to destroy, it's not clear if it'd transition to real world so smoothly.

  • @Dimension2364
    @Dimension2364 5 лет назад +41

    I found it very interesting to see how AI learns if you give it no information exept for the penalty and the reward. Nothing the AI does is intuitive. For example, a human would have understood very quickly that it is essential do drive a curve. The AI does not see such patterns as „curves“. It only sees the numbers. It only sees if it has gotten closer and if it has made mistakes.

    • @valentins.5010
      @valentins.5010 2 года назад +7

      That isn’t a fair perspective….
      You or humans in general just see these patterns because you/they have already learned since they are born. Maybe not car parking but relatable things. The conditions are different!

    • @JiggyJones0
      @JiggyJones0 Год назад

      ​@@valentins.5010 Whats not fair about it? What op said was just factual.

  • @augustuscurnow
    @augustuscurnow 2 года назад +1

    The little speed boost it does whenever it is nearly there is so cute imo

  • @warlax5658
    @warlax5658 5 лет назад +175

    So this is an example of something called “overfitting”. Though the “over” part assumes generalization, which isn’t the goal of this application, but I still think it’s a good talking point.
    The AI is learning a lot. But notice that it’s in the same map, with the same layout. So it’s mostly learning how to park in this EXACT situation.
    How does the AI learn to turn left? Well it could be something like if the front left depth sensor suddenly cuts in half, and all the other ones are at max length, then it knows to turn left. (I.e. driving past the first light post)
    A.I. Can figure out all kinds of tricks like that. However, it doesn’t have predefined cognition (humans do. Your brain is largely pre wired. You could argue that, through your life, your brain really only changes marginally with respect to it’s original construction) the predefined structures in our brain focus on learning generalizable ideas. This is hard to do with AI.
    A human could run this simulation in this scenario, and probably, after getting it right, be able to park in another situation. That’s because
    a) the sensors we use to perceive the world are super sophisticated, and kinda come pre-installed with the capacity to understand their input
    b) we focus on learning things like “stay on the road” not “turn left when front left depth sensor gets short suddenly”. The key difference between generalizable intelligence, and an overfitted system.
    If you shifted the starting point 3 feet to the left. It’s entirely possible that the AI would completely fail. However, if you put the car in a box, it would, after training through thousands of iterations, probably find a way to glitch the car so it pops up in the air and lands outside of the box.
    Systems like these are bad at generalized stuff, but really REALLY good at solving specific and difficult tasks.
    There’s a famous study where researchers wanted to make some NN for controlling walking. It had 6 legs, and they set a rule that it got more points for spending as little time on its feet as possible. After seeing that it learned to go 100ft with 0 seconds of foot contact, they found out that it learned to flip over and walk on its shoulders.
    What a time to be alive
    Edit:
    I didn’t really watch the video. The car changes it’s starting point, so it’s kinda generalized. But the map stays consistent, so it’s not really. If you moved an item around it’d probably freak out. Though idk, I’m mostly talking about AI for you the reader, not about the video.

    • @warlax5658
      @warlax5658 5 лет назад +7

      @@TyrianTheDutiful why?

    • @svampebob007
      @svampebob007 5 лет назад +7

      "A human could run this simulation in this scenario, and probably, after getting it right, be able to park in another situation. That’s because...." hold up, I'm going to show this post to my Ex-GF so she can explain what exactly is wrong with the car today.
      edit:Ex

    • @gilberttheregular8553
      @gilberttheregular8553 4 года назад +1

      This is just a demo, he's not going to change humanity by making self-parking cars.

    • @monkeywings
      @monkeywings 4 года назад

      @@svampebob007 oof

    • @ahmadayazamin3313
      @ahmadayazamin3313 4 года назад +1

      i like that two minute papers reference

  • @foxon31
    @foxon31 5 лет назад +423

    Day 20003: Dear Diary,
    Today I pushed a truck out of its parking lot. It felt good but I got penalised for it. Life isn’t fair.
    ...
    My boss just called. I have to go back learning how to park now.
    [[DAY END]]

    • @gilberttheregular8553
      @gilberttheregular8553 4 года назад +3

      underrated?

    • @MandMs05
      @MandMs05 4 года назад +2

      @@gilberttheregular8553 Underrated

    • @ethernaut.7127
      @ethernaut.7127 4 года назад +1

      Can you write a book? Please?

    • @UltroGmr
      @UltroGmr 4 года назад +3

      I saw this comment right when the attempt mentioned in it played

    • @carryon5021
      @carryon5021 4 года назад +4

      This actually made me feel bad for the poor AI.

  • @bluethenoob
    @bluethenoob 2 года назад +1

    my friend: "im not THAT bad at driving"
    also her:

  • @chris-ke4jo
    @chris-ke4jo 5 лет назад +153

    Leaked footage from Tesla R&D center

  • @dominickeijzer5844
    @dominickeijzer5844 4 года назад +233

    Elon Musk wants to:
    • Know your location
    • Access all data on your device

    • @lucasw7647
      @lucasw7647 4 года назад +1

      Dominic Keijzer actually this is a good way to teach cars AI Parking or even driving, except not irl do it in software and take the AI and transfer it to another... I don’t know how hard it is or even if it’s possible but I feel like if you have the resources and the brains you could do it

    • @bluerojo
      @bluerojo 4 года назад +5

      AI has suggested to replace Elon Musk with *_Mark Zuckerberg_*

    • @tripnils7535
      @tripnils7535 3 года назад +2

      @@lucasw7647 Andrej Karpathy (head of AI at Tesla) and George Hotz (CEO of comma AI) both leading engineers for autonomous driving, said simulation data is not really good for training autonomous driving because the real world has way more edge cases we could even come up with for creating the simulation world. Sure you can get the AI to 95% or more with simulation, and this has been done at the start, but the really hard problem is getting the last few percent points up to 99.9999999.... % , which pretty much only can be achieved with real world data. That's why tesla is gathering billion of miles of driving data through their existing Tesla fleet and they are way ahead of everyone else because of this.

    • @stevenwhite3.1415
      @stevenwhite3.1415 3 года назад

      Aww. How cute. A conspiracy theorist in the making. You sound like a rogue AI after its 300,000th statement.

    • @dominickeijzer5844
      @dominickeijzer5844 3 года назад

      @@stevenwhite3.1415 Woooosh.

  • @elmowilcox
    @elmowilcox 2 года назад +21

    I love these AI training videos. It’s hilarious contrast seeing how childish and bad at it the computer is, contrasted with knowing how brilliant everything that goes into making this happen is.

    • @nikostalk5730
      @nikostalk5730 2 года назад

      Actually it is a bullshit database, not an A.I . as it must be.
      No map-building, no fails -avoiding scenario, just a "10k attempt" thing.
      Why did you love this? It's not a child, nor human brain. It is just code, it's not improvising, just doing the exact same errors, again and again, it's NOT TRAINING. It's about YOU tryiing to BELIEVE in this, lol!

    • @elmowilcox
      @elmowilcox 2 года назад

      @@nikostalk5730 you good?

  • @farisakmal2722
    @farisakmal2722 5 лет назад +65

    I love how the cars bounce every time the program is initialized.

  • @willnutter1194
    @willnutter1194 5 лет назад +7

    As an amateur ML programmer, this is inspiring! I may do a project as a result of watching this.

  • @SpaceMissile
    @SpaceMissile 2 года назад +1

    "After 10000 attempts..."
    _Already drives better than my sister._

  • @8bitjunkie173
    @8bitjunkie173 5 лет назад +23

    3:22
    When you try to back your car into a spot for the first time

  • @ParadoxCircuit
    @ParadoxCircuit 5 лет назад +41

    Isn't over fitting a concern here since the obstacles, starting position, and goal are always in the same place? I'm curious how things would change if the obstacles, goal, and agent spawned in different arrangements each round or batch or rounds. I don't know if that would significantly increase training time but it seems like it could lead to better generalization.
    Very neat stuff though that being said. Cheers.

    • @SamuelArzt
      @SamuelArzt  5 лет назад +13

      Well, I guess overfitting is always a concern, especially for RL ;) It really depends on what your overall goal is.
      But I fully understand your argument. The starting position is already randomized, though. If your goal is to train an agent to learn to park at any parking spot in that parking lot, it would of course be better to train it on randomized parking positions and with randomized obstacles. That would indeed increase training time but if successful the agent would be able to generalize to more different parking spots accordingly. But why stop there? You could also randomize the parking lot / spot shapes, add parallel parking, pedestrians, force specific directions, etc.
      In the end I was simply trying to test how well the framework was going to respond to this task. I was never trying to create a realistic automated parking assistant, but I am sure you never assumed so anyway.
      Implementing randomized obstacles and parking spots would have been somewhat trivial with this setup, however the training time was already quite close to the length I was comfortable with, thus I didn't want to introduce any more difficulties.
      Thanks for the kind words!

    • @ParadoxCircuit
      @ParadoxCircuit 5 лет назад +1

      @@SamuelArzt I understand what you mean. I get that this is more of a proof of concept than a fleshed out algorithm. I wonder though if the training time might not increase as much as we assume. I'm not super familiar with training times for PPO, but perhaps by randomizing some aspects it would actually allow for strategies to be learned faster as they would have to generalize, instead of learning to map out a specific trajectory function.
      If you do mess around with it I'm sure I wouldn't be the only one who would love to see the results. Subscribed. Cheers!

    • @SamuelArzt
      @SamuelArzt  5 лет назад +2

      @@ParadoxCircuit Thanks for the kind reply! I agree. There is a possibility of it actually helping, instead of simply increasing training time. Even though my intuition / experience would tell me otherwhise. But I would love to be surprised ;)
      I am planning on doing parallel parking next and will make sure to add more environment randomization for that. Maybe I will have time to revisit this parking task again after that.
      Thanks for subscribing, I really appreciate that!

  • @metalhead2550
    @metalhead2550 3 года назад +7

    It would be interesting to see how it would manage with random cars in space placement and a random space to park in. My guess is that in its current form it would really struggle, but I wonder what the difference in number of iterations would be :)

    • @SamuelArzt
      @SamuelArzt  3 года назад +5

      I did something like that in my parallel parking video. Some updates in the learning algorithm also resulted in much faster training time (5h in contrast to 23h).
      ruclips.net/video/MlFZjLkEIEw/видео.html

  • @OscarMaris
    @OscarMaris 5 лет назад +55

    On attempt 310013, it spawned on top of the truck!

    • @CrimsonTuber
      @CrimsonTuber 5 лет назад +4

      No wonder it took so long to learn, even rngesus is messing it up.

    • @SamuelArzt
      @SamuelArzt  5 лет назад +9

      Haha, yeah the spawn was simply defined as an area, thus there was a very small chance for that to happen. I thought that was quite fun and left it in the video. Nice spot, though 😉

    • @ahmadnasri9635
      @ahmadnasri9635 5 лет назад

      @@SamuelArzt ai: one day i will get you human

    • @amybackstage5164
      @amybackstage5164 5 лет назад

      10:08

  • @realmasterkush
    @realmasterkush 4 года назад +18

    The biggest flaw seems to be the 8 'depth' sensor having huge blind spots, what if instead of 8 raycasts, you only had a single rotating one (maybe a few degree per frame). Let the AI know about the angle of the sensor relative to the car and the hit distance. That way it would probably be more 'aware' of his surroundings quicker.

  • @wires.
    @wires. 3 года назад +2

    Car AI: **Tries to park**
    Samuel: "I haven't programmed that path yet"

  • @Mansare94
    @Mansare94 4 года назад +20

    The issue you might have with having only one parking space is that you could be training it just to park in that spot rather than any spot. Which kinda renders the ai somewhat useless in 99% of parking situations.

  • @bachana1231
    @bachana1231 5 лет назад +33

    And we learn from AI to NEVER GIVE UP!!!! 😎👌

  • @Kaiimei
    @Kaiimei 2 года назад

    I feel like it needed more sensors sometimes, especially when hitting the solid poles, sometimes the sensor on the front wasn't telling it that something was in front of it because the object was to the side.

  • @09TYPER
    @09TYPER 5 лет назад +64

    Will it work if parking space is somewhere else instead?

    • @iaashu98
      @iaashu98 5 лет назад +10

      Yes, that's why it takes so many attempts. Learning method is universal irrespective of places and situations.

    • @09TYPER
      @09TYPER 5 лет назад +8

      @@iaashu98 but it learns(actually not learning,statistically selects the best one) for one place(how to maneuver for THAT space)if that space is filled with other car for example what the heck it will do?Crash there all the time to crash better,or simply crash to push other car out of that parking space(mission completed!),or after many iterations it will say that fuck it I should try somewhere else?

    • @Utsawb
      @Utsawb 5 лет назад +3

      @@09TYPER I assume after having it learn that spot well, you could switch the spot to prevent overfitting.

    • @jeremiahblessing3891
      @jeremiahblessing3891 5 лет назад +7

      No it won't work, it is trained only for that environment.

    • @kongolandwalker
      @kongolandwalker 5 лет назад

      09TYPER it might work in other environment, if the parking slot is recognized relative to the car, but not in xy coordinates

  • @Od4n
    @Od4n 5 лет назад +16

    I appreciate the choice of music.

  • @حسام777-ت4ظ
    @حسام777-ت4ظ 2 года назад +1

    Hello.
    What is the name of this design application and what programming language is it used in?

  • @adityarawat6433
    @adityarawat6433 5 лет назад +20

    I was expecting a drift parking after so much attempts and watching AI Hide & Seel video.

  • @Kate-Tea
    @Kate-Tea 5 лет назад +11

    Wow, this ai learnt to park perfectly in half the amount of attempts a normal person takes :O

  • @leenewsted9484
    @leenewsted9484 2 года назад

    It seems like the iterations could be greatly shortened with a defined set of “rules of the road” (i.e. no driving on the curb, stay in you lane, etc.).

  • @Boomber123
    @Boomber123 5 лет назад +11

    You should also track how well they're following the road as well as the driving direction.

  • @KarolMajek
    @KarolMajek 5 лет назад +9

    and when you change the target parking place after the training?
    what do you think about randomizing target each run?
    maybe randomize cars too?
    or even change the whole world
    the car is not able to detect grass, road and pavements, am I right?

    • @SamuelArzt
      @SamuelArzt  5 лет назад +3

      Changing the target parking place after this particular training run would most certainly confuse the AI, as it has only ever encountered situations with the exact same parking spot. If you want the AI to generalize better, you would also need to increase the variety of the training data. The points you have mentioned are a great example of how one could do that quite easily.
      However, this will of course also prolong the time needed for training. Since the iteration time for a full run was already quite long with this setup (~1 full day), I decided to stick with it and not add more complexities.
      I actually also removed the handbrake from the car-physics model, in order to simplify the learning process. At very early stages of the experiment the car was simply constantly triggering the handbrake, thus it was not able to move and it took very long for it to even start moving in any direction. Now that I have the hyperparameters somewhat tuned, I might however run another experiment with the handbrake enabled again. Would be fun if the AI learns to drift (especially for parallel parking) 😉
      Yes, you are right. The only inputs of the AI are the depth sensors, its current position and its relative position to the parking spot and its speed.

  • @scottbaileymsc
    @scottbaileymsc 2 года назад +1

    This is how Uber became so popular

  • @MbkeliteVlog
    @MbkeliteVlog 4 года назад +6

    I swear this is better than an actual let's play.

  • @spacer7205
    @spacer7205 5 лет назад +6

    it would be interesting to see this AI adapt to a dynamic parking lot where the position of the space and cars around it is constantly changing

  • @sharkkord
    @sharkkord 2 года назад

    i feel like the ai was just learning to manuever based on where it's position was relative to the other cars, because it was on the same parking lot every time

  • @ShardtheWolf
    @ShardtheWolf 5 лет назад +6

    I feel like this would have gone much smoother if the cardinal-facing depth preceptors were affixed to the corners of the vehicle. Many of it's crashes were due to it not knowing if it was going to clip the corner of a car with it's corners because the measurement was actually showing distance to the middle of an angled surface.

  • @Asome3333e1
    @Asome3333e1 5 лет назад +4

    At the end: he a little confused, but he got the spirit.

  • @christianmartinez2179
    @christianmartinez2179 2 года назад +3

    People: AI will take over the world!!!!
    AI after thousands of (essentially) bruteforce attempts: 1:20

  • @truerobloxian8108
    @truerobloxian8108 4 года назад +8

    2:40 when someone takes your paid parking spot

  • @sahand5277
    @sahand5277 5 лет назад +5

    This agent has a real perseverance, we should all learn!

  • @WiFi-qj5kr
    @WiFi-qj5kr 2 года назад +1

    It's kinda like watching a bee under the affect of alcohol trying to fly into it's hive

  • @kennethtumala9218
    @kennethtumala9218 5 лет назад +101

    You know what the AI got as rewards?
    *COOKIES*

    • @cedric1731
      @cedric1731 5 лет назад +3

      That's some bullshit...
      But I like it. Here a *COOKIE* !

    • @jeffbac1889
      @jeffbac1889 4 года назад

      That netflix show...

  • @lonnybulldozer8426
    @lonnybulldozer8426 3 года назад +5

    I'm curious how you recorded this. Was this recorded directly in Unity or did you use an external screen recorder?

    • @SamuelArzt
      @SamuelArzt  3 года назад +2

      I recorded this directly in Unity using a plugin from the asset store. Unfortunately that plugin is no longer supported by its creators and was removed from the store some time ago.

  • @adarshraj5167
    @adarshraj5167 5 лет назад +14

    '' AI will takeover the world''
    Meanwhile AI: ** going bonkers **

  • @Beikenost
    @Beikenost 5 лет назад +4

    if you changed the parking spot, would it still be able to park after training on that one spot?

  • @xanderlastname3281
    @xanderlastname3281 Год назад +1

    0:05 POV what insurance companies think teens do
    [Edit]
    Actually this entire video is POV insurance companies

  • @Mareoandanime
    @Mareoandanime 4 года назад +26

    This is the equivalent of that Spongebob Scene:
    "No, the space."
    *park*
    "The space."
    *park*
    "The space."
    *park*
    "The space."
    *park*
    "The space."
    *park*
    "The space."
    *park*
    "The-"
    etc etc

  • @cmoullasnet
    @cmoullasnet 5 лет назад +5

    Can this result be generalized? e.g. What happens if you move the box? If generalized, is there a way to test for orvertraining the model?

    • @SamuelArzt
      @SamuelArzt  5 лет назад

      That's a very valid question.
      I haven't tried moving the box yet, but from my previous experience I would assume that the AI would not be able to generalize to different parking spots. Or at least I would be surprised if it did. The reason for that, as you probably already figured out yourself, is that the AI never encounters any other parking spot position than the one shown in the video.
      If you would want to train the AI to generalize better, one way would be to not only randomize the spawn position, but also randomize the parking spot. However, this would have most probably increased the time needed for training the AI. Since the training time was already very close to the limit I was comfortable with, I decided to not introduce any more difficulties.

  • @idontcare2312-v2v
    @idontcare2312-v2v 2 года назад

    imagine if you left this until the 1mill iterations, the Ai would be making world record times for each random position

  • @ScottiStudios
    @ScottiStudios 5 лет назад +9

    3:38 nearly...steady...nearly there....
    Screw it!

  • @Jos3jmsfkl
    @Jos3jmsfkl 5 лет назад +6

    Great! Now terminators know how to pass the parking test, get a license, and run me over with their new Chevrolet cavaria.

  • @isXanderDev
    @isXanderDev 4 года назад

    I think the problem is that the sensors are too large and it gets scared when anything is near

  • @chris-hayes
    @chris-hayes 5 лет назад +31

    So this is how Tesla trained their auto-summon algorithm.

  •  5 лет назад +9

    2:47 When the ***** try to parking
    ***** = U know what I mean.... 😂

    • @hellocool2
      @hellocool2 5 лет назад +2

      Why bother finding an empty spot when you can just steal someone else’s!

    • @yarsak8067
      @yarsak8067 5 лет назад +2

      Underrated comment😂😂😂

    • @NewBuildmini
      @NewBuildmini 5 лет назад +1

      Don't assume that every single one of us is a bad driver. There are and will be bad drivers regardless of town or country.

    •  5 лет назад

      Le Build Of course, that's right, what you said, but the comment is about irony... I have Russian friend, also I agree, the bad drivers are living around the earth... And in the space(Tesla roadster) 😂

    •  5 лет назад

      @@user-6zj5f9w2cw Irony maan, I'm bad driver too.. in the games. Sorry for the comment btw, I love your country, culture and people. If you want, I can delete this for you..

  • @KWCHope
    @KWCHope 2 года назад

    Okay but if we hypothetically changed the target parking space to another space, would it be able to just as well change on the fly to whatever random new space we gave it?

  • @GoldenponyboyCrossback
    @GoldenponyboyCrossback 4 года назад +14

    How crazy is it going to be when we have developed an AI that just... figures the task out? Like, just does the thing, first try, no failures.

    • @billowen3285
      @billowen3285 3 года назад +1

      How do you plan on that working?

    • @telmnamm7549
      @telmnamm7549 3 года назад +4

      @@billowen3285 dumb luck i think is what he's implying

    • @hesh9646
      @hesh9646 3 года назад +2

      That's not possible lol, ai needs to have it simulate the task a million times to perfect it and do it in one try

    • @GoldenponyboyCrossback
      @GoldenponyboyCrossback 3 года назад

      @@telmnamm7549 Basically

    • @folou9199
      @folou9199 2 года назад

      if it won’t crash, eventually it will run out of wrong avenues of approach and find the right one on the “first” try