I created an A.I. to generate racing tracks in TrackMania

แชร์
ฝัง
  • เผยแพร่เมื่อ 6 ก.ย. 2024
  • Hello everyone. TrackMania mapping is an integral part of the game that provides endless possibilities for players to explore. But can it be automated? In this video I show how I created an A.I. track generator which is able to generate technical tracks that imitate the style of tracks built by humans.
    Download the generator and play with it yourself: github.com/don...
    Generated sample maps (TM2): tm.mania-excha...
    Post about the generator (2018): donadigo.com/t...
    GitHub page: github.com/don...
    PayPal donation: www.paypal.com...
    Additional footage by Spammiej:
    / spammiej
    TTC Keissla Edition with generated maps: • True Talent Cup #129 |...
    Music:
    Mattashi - Tale Of A Knight
    Waterflame - The Wanderer
    Ooyy - Hemisphere
    Lukhash - Proxima
    Humbot - Wave Saver
    Ooyy - Osaka 3AM
    www.epidemicso...
    / waterflame89
    / mattashicomposer
    Thanks for watching!

ความคิดเห็น • 74

  • @RacetasClub
    @RacetasClub 2 ปีที่แล้ว +62

    This was so epic, didn't even think that could be within reach. Funniest part was generation 9 but jokes aside, the 30th generation map is simply beautiful. Wonderful job!

    • @drapsag91
      @drapsag91 2 ปีที่แล้ว +3

      G9 be like: car go zzzoop

    • @alphahawk325
      @alphahawk325 ปีที่แล้ว

      G9 it gained awareness and went I don't want to build tech I want to build lol

  • @PetaPelikan
    @PetaPelikan 2 ปีที่แล้ว +23

    11:58 generation 9 be like: "S P E E D"

  • @yoshtm
    @yoshtm 2 ปีที่แล้ว +38

    11:59 Did the AI put a big jump at the end of the boosts, to try to get the car out of the stadium? That's what all new players do the first time they try the map editor ahah,
    Nice video !

  • @VeritasGames
    @VeritasGames 2 ปีที่แล้ว +8

    As a software engineer and TM fan - this is one of my favorite TM videos to date! GG

    • @Snymen
      @Snymen 2 ปีที่แล้ว

      i love you for all the tarkov science!!! ❤❤❤❤

  • @Underdogger
    @Underdogger 2 ปีที่แล้ว +4

    AI Gen 1-8: Learning... Learning...
    AI Gen 9: Fuck it, booster.

  • @rollintm
    @rollintm 2 ปีที่แล้ว +31

    informative video, really enjoyed it! to give some feedback though, the section where you show the different generations is just way too long without any commentary over it, I would've expected to show maybe gen 1-3, then skip to 10, 20, and so on... to keep it shorter and to see more difference at once. Also I'm not sure what generation even means in this context, is there some way to judge a generated map with some fitness algorithm like I've seen in other neural network videos? I understood that you trained the network with all those tech tracks, and then it would spit out maps, so I don't know where generations come into play there...

    • @donadigotm
      @donadigotm  2 ปีที่แล้ว +12

      Thanks! Yeah the generation section could be a lot shorter, or use a commentary, I agree. I named them "generations" here but in reality these are epochs of training in ML terms. Each epoch N tracks are randomly generated based on the current network weights. Those you see in the video were then picked by me. This is why there isn't a clear progression curve, because the randomness may skew the results. The process is still necessary, as training for longer means more stable results and quicker generation times (the build algorithm doesn't get stuck when networks are accurate). The "fitness" function is the loss so mean error across all tracks in the dataset.

  • @danielkirchhoff7372
    @danielkirchhoff7372 2 ปีที่แล้ว +3

    Well done! Very interesting to watch.
    Even though it would take much more computing time, wouldn't it make more sense, to get a probability by looking at segments of blocks? Like always 4 blocks at a time for example. Give it a start block. Now calculate a segment of 4 blocks, place the first of them. Now you have two blocks. Calculate first, second, and a theoretical third and fourth (judging by common 4 block patterns, with a start block attatched to the front of them). Place your third block. Now calculate your fourth block, by looking at common 4-block-combinations using the last 2 placed blocks. Place your 4th block. As far as I'm not missjudging it, the endresult should be smoother (even if you don't take the one with the highest probability, cause this would end in the same route every time).

  • @FrostKiwi
    @FrostKiwi 2 ปีที่แล้ว +10

    awesome video!
    Now combine that with @Yosh 's TM driver AI to drive AI generated tracks. That way we have completely eliminated the human in the process and fully bowed down to our robot overlords.

  • @DetinuTrackmania
    @DetinuTrackmania 2 ปีที่แล้ว +9

    I just now realized that the Cup of the day is kind of the new version of the TTC, only that you just play one map instead of 5 and have a long warmup. Great video and maps btw.

    • @nmatthes2927
      @nmatthes2927 2 ปีที่แล้ว +2

      Man Detinu ich erinner mich noch an dich, du hast doch damals mit tmspeedy videos gemacht :D

    • @TmSpeedy0407
      @TmSpeedy0407 2 ปีที่แล้ว +1

      @@nmatthes2927 :^)

    • @nmatthes2927
      @nmatthes2927 2 ปีที่แล้ว

      @@TmSpeedy0407 Ich warte immernoch auf die TM Sunrise Lets Play Fortsetzung! AausrufezeichEN1!!elf!

  • @rumrumi7594
    @rumrumi7594 2 ปีที่แล้ว +7

    LETS GO DONADIGO IM SO EXITED TO WATCH THIS

  • @zawo
    @zawo 2 ปีที่แล้ว +4

    Gen9 was everyone's first ever made track

  • @frauddiac
    @frauddiac 2 ปีที่แล้ว +1

    This could be a fine addition to a duel 1v1 gamemode where you compete to be the fastest lap by 3 rounds race in a random generated map. Great work dude

  • @Herbert.
    @Herbert. 2 ปีที่แล้ว +4

    We are moving into a universe where AI will generate maps in TM and will grind out runs with TAS, this cycle will go on for eternity, nothing but the AI playing its own maps until the end of time

    • @wicowan
      @wicowan 2 ปีที่แล้ว

      first create an AI than can use tas ahahahaha, I think it's close to impossible, AI can hardly play trackmania so tas seems no-go

    • @Herbert.
      @Herbert. 2 ปีที่แล้ว

      @@wicowan What? Have you any clue about the current state of machine learning? Or even that there is already an "AI" that has learnt to drive TM maps (albeit not very well)?

    • @wicowan
      @wicowan 2 ปีที่แล้ว

      @@Herbert. Yosh did quite a lot of videos on trackmania ai.

  • @ericdanielski4802
    @ericdanielski4802 2 ปีที่แล้ว +4

    Nice AI.

  • @racheltyrellcorp9694
    @racheltyrellcorp9694 2 ปีที่แล้ว +2

    So so cool ! greatjob
    An idea : maybe you could provide your neural network with a sense of the driving flow by providing it with the trajectory of a player for each block of the track (or at least, player's entry point & speed and exit point & speed for each of the block)
    Maybe with this kind of training data, the network would learn the correlation between common sequences of blocks and the expected trajectory and speed on those sequences ?

  • @par8678
    @par8678 2 ปีที่แล้ว +3

    Crazy, u are like the engineer of the community, u are giving us a lot, thank you and keep up the work

  • @DomikTrackmania
    @DomikTrackmania 2 ปีที่แล้ว +1

    Your going to make Trackmania a scientific playground for yourself... Wondering what's next

  • @PetaPelikan
    @PetaPelikan 2 ปีที่แล้ว +2

    Impressive my dude, you really took trackmania and created something worth its own game. You deserve way more reach than you have.

  • @Mandarin9900
    @Mandarin9900 2 ปีที่แล้ว

    How has this video not blown up yet :O

  • @spacenoodles5570
    @spacenoodles5570 2 ปีที่แล้ว +1

    Wow, absolutely amazing. The finished track is even pretty good

  • @n00bphd84
    @n00bphd84 2 ปีที่แล้ว +1

    Why are we not using reinforcement learning or particle swarm based algorithms to create theoretical speedruns with AI? I kept looking for it and there are some initial works on it but with a legend like Donadigo on board, we might come up with AI speedruns.

  • @ocinsimat6214
    @ocinsimat6214 ปีที่แล้ว +1

    It would be cool to implement this in a club on tm2020 maybe with someway of giving feedback on flow

  • @eblignoi
    @eblignoi 2 ปีที่แล้ว

    Omfg! Great work dude!

  • @Arcsinx
    @Arcsinx 2 ปีที่แล้ว +1

    Wooo lets gooo

  • @getoffme3791
    @getoffme3791 2 ปีที่แล้ว

    Pls do more of these type of videos! they are so fun to watch!

  • @2000Meilen
    @2000Meilen 2 ปีที่แล้ว

    Nice Kacky map generator you've got there ;)

  • @logictm
    @logictm 2 ปีที่แล้ว +1

    sehr gut adam

  • @hakkis1524
    @hakkis1524 2 ปีที่แล้ว +1

    Sick!

  • @shminge7779
    @shminge7779 2 ปีที่แล้ว

    Haha, finally people are finding my favorite Dona creation

  • @Skycrafter_
    @Skycrafter_ 2 ปีที่แล้ว +2

    This really deserved its own video. Nice one!

  • @PugCuber
    @PugCuber 2 ปีที่แล้ว

    you’re a legend

  • @ZeUbinator
    @ZeUbinator 2 ปีที่แล้ว +1

    What's the rationale behind randomly choosing outputs (weighted by probability) rather than choosing the most probable output every time? I can imagine choosing randomly would give more "natural" results in some sense, but would expect overall higher quality tracks from choosing the most probable since results would resemble the training set more closely. Just guessing though, I have little experience working with NNs.

    • @donadigotm
      @donadigotm  2 ปีที่แล้ว +2

      Choosing the most probable output every time generates you the same track, every single time. How conservative we are towards choosing the output is controlled by the "temperature" hyper-parameter. If it's lower, the output will be more conservative, if it's higher - more diverse. For example, setting the parameter to a very low value, will generate mostly straight line tracks with only the same one block repeating. Of course there are many strategies you can take e.g changing the temperature while generating the track.

  • @LuckAss10
    @LuckAss10 2 ปีที่แล้ว +1

    sick performance !! but.. new kacky edition of those generations? give those to mig :D

  • @RyushoYosei
    @RyushoYosei ปีที่แล้ว

    You should try to do this using the new trackmania potentially.

  • @urmelantonny
    @urmelantonny 2 ปีที่แล้ว +1

    lessgo

  • @Jack-wl4vf
    @Jack-wl4vf 2 ปีที่แล้ว +2

    I'm always interested in the coding behind ai as the formation of neural networks always seem so advanced and beyond comprehension when thinking that an computer has the potential to match the thinking of a human from data given to it.
    Anyways congrats on 1 year of TMinterface and may the future remain bright for this community @donadigo

  • @IuAdrien
    @IuAdrien 2 ปีที่แล้ว +2

    Nice video! Made me wonder how you managed to handle giving all blocks as inputs, what type of NN worked for this?

  • @MasterDX420
    @MasterDX420 2 ปีที่แล้ว +1

    Cool video. Although, it sounds like a class presentation since the pacing is kinda slow. Otherwise, nice job!

  • @BabaFroga
    @BabaFroga 2 ปีที่แล้ว

    Nice project and nice video. Great job!

  • @hagrod
    @hagrod 2 ปีที่แล้ว

    Now you can associate with Yoshi and his AI trained car to race this track

  • @vrbaaaa
    @vrbaaaa 2 ปีที่แล้ว

    So this is how lolsport builds his maps...

  • @halbkorn
    @halbkorn 2 ปีที่แล้ว

    Plottwist:
    every campaign and tmgl map is build using an ai

  • @urionandon
    @urionandon 2 ปีที่แล้ว

    wow

  • @KabirSingh-qp4ot
    @KabirSingh-qp4ot 2 ปีที่แล้ว

    Some of you may know, I even held a cup with 30 AI generated maps two months back. Here are the results - th-cam.com/video/GBLd9srf8r8/w-d-xo.html

  • @neoscho8790
    @neoscho8790 2 ปีที่แล้ว

    wicked'

  • @LetsPlayCrazy
    @LetsPlayCrazy ปีที่แล้ว +1

    Who else is here because of wirtuals comments on Fall - 18???

  • @mrle0719
    @mrle0719 2 ปีที่แล้ว

    how did you iterate from generation to generation ? how do you give a score to a track ?

    • @mrle0719
      @mrle0719 2 ปีที่แล้ว

      btw you might want to check your website, bitdefender flagged it as unsafe

  • @krisigogo3743
    @krisigogo3743 2 ปีที่แล้ว

    WOW

  • @zoraa3406
    @zoraa3406 2 ปีที่แล้ว

    how does this work can we also run this within trackmania to generate our own maps?

  • @real_tm_
    @real_tm_ ปีที่แล้ว

    Can you make that for tm2020?

  • @GelberDracheLP
    @GelberDracheLP 2 ปีที่แล้ว

    could this not be a good start for creating a ai that can identify possible stolen tracks?

  • @poczta-krabow
    @poczta-krabow 3 หลายเดือนก่อน

    Are you from poland? Czy jesteś z Polski?

  • @Eta_Bokas_slave
    @Eta_Bokas_slave ปีที่แล้ว

    Bro trackmania turbo did it in 2016

  • @krisigogo3743
    @krisigogo3743 2 ปีที่แล้ว

    6th and 7th

  • @rgr1001
    @rgr1001 2 ปีที่แล้ว

    11:59 +++

  • @maritzjanssens2805
    @maritzjanssens2805 ปีที่แล้ว

    gen 9 was random

  • @wikipavetm707
    @wikipavetm707 2 ปีที่แล้ว

    Yeah A.I. creating a tech map is cool and all, but what about creating a trial with A.I., will it be possible to create a map harder than Final Enigma or creating a more transitionnal and longer fullspeed map. Will it be used for competitive maps and leaving the human mappers behind, or will it be used to push the robot and human limit of trackmania

  • @AlexanderB41
    @AlexanderB41 2 ปีที่แล้ว +2

    First.

  • @EvroCraft
    @EvroCraft 2 ปีที่แล้ว

    Now make one that makes PF tracks 💀

  • @izimsi
    @izimsi 2 ปีที่แล้ว

    Some of these generated maps look like kacky maps