Evolving Genetic Neural Network Optimizes Poly Bridge Problems

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

Комментарии • 674

  • @SenatorDodo09
    @SenatorDodo09 Год назад +7520

    As Michael reeves put it: "I made a 5 hour long problem into a 2 and a half month long problem, cause I'm a programmer and that's what we do"

    • @eduardokerber2931
      @eduardokerber2931 Год назад +344

      but now it can be reused every time you need to solve the 5 hour problem, while taking just 4.5 hours, and it works (almost) every time.

    • @Angel-kr4qo
      @Angel-kr4qo Год назад +138

      ​@@eduardokerber2931you captured the minimal worth value programming thinking

    • @MortalWombat1988
      @MortalWombat1988 Год назад +159

      HEY! HEY!
      Why did the Java programmer wear glasses?
      Because...he can't C#.
      Thank you, thank you, I'll be here all week.

    • @danimgmd3510
      @danimgmd3510 Год назад +4

      not funny

    • @eduardokerber2931
      @eduardokerber2931 Год назад +82

      @@danimgmd3510 shortest autobiography ever

  • @packediceisthebestminecraf9007
    @packediceisthebestminecraf9007 Год назад +1886

    5:48 I can't believe you really just went "assume a spherical car"

    • @Roset595
      @Roset595 5 месяцев назад +18

      Glad someone else caught that 😂

    • @ThatBoyAstrooo
      @ThatBoyAstrooo 5 месяцев назад +8

      Google “peel trident”

    • @Achridian
      @Achridian 5 месяцев назад +7

      Physics problems on tests be like

    • @Rando2101
      @Rando2101 2 месяца назад

      @@ThatBoyAstrooo holy car

  • @kerz5383
    @kerz5383 Год назад +2927

    2:00 As an engineer i can confirm that architects will show you some magical item/building that defies the laws of physics and expect you to build it.

    • @revwroth3698
      @revwroth3698 Год назад +89

      Lol it's kinda telling that MC Escher wanted to be an architect and actually enrolled in a school for architecture and decorative arts.

    • @kerz5383
      @kerz5383 Год назад +62

      @@revwroth3698 I can imagine being told to make an escher design. I would die.

    • @revwroth3698
      @revwroth3698 Год назад +38

      @@kerz5383 not to mention having to implement building codes, imagine having to design wheelchair ramps for all those staircases. That sounds awful to me and I'm not an engineer.

    • @benruss4130
      @benruss4130 Год назад +39

      As an engineer I affirm your statement and would like to add "salesmen" to the list.

    • @Mike-mu7tk
      @Mike-mu7tk Год назад +21

      Summoning Real Civil Engineer..

  • @nightartco
    @nightartco Год назад +1657

    "But there is a problem, I am way too busy to be playing this right now" - AstroSam
    Also AstroSam:
    recreate the whole game

    • @justinwhite2725
      @justinwhite2725 Год назад +64

      'i didn't have time to play polybridge so I recreated polybridge exactly so am AI can simulate it and solve it for me.'

    • @maniacone4499
      @maniacone4499 Год назад +41

      @@justinwhite2725 sounds like a normal programmer to me.

    • @cezarcatalin1406
      @cezarcatalin1406 Год назад +7

      Well, he was technically busy redoing the whole game and training an AI to solve it.

  • @realtired3670
    @realtired3670 Год назад +919

    comically overcomplicating a small issue to solve it in unnecessary and often slower ways gotta be my favorite genre of youtube videos

    • @Terminator85BS
      @Terminator85BS Год назад +6

      have you seen Harder Drive by suckerpinch? my absolute favorite when it comes to this

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

      Would also recommend Harder Drive; Tom7 (suckerpinch) commits horrific crimes against maths and computing.

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

      This concept applied to Structural Engineering would be amazing.

    • @oliverwaldock9710
      @oliverwaldock9710 Год назад +2

      Just remember 16 hours of coding can save 20 minutes on planning and/or just actually doing it

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

      @@oliverwaldock9710 If this is done for actual bridges, it'd save a lot of time and money due to optimization.

  • @RealCivilEngineerGaming
    @RealCivilEngineerGaming Год назад +2654

    Respect for the architect dig ❤

    • @mloxard
      @mloxard Год назад +71

      It had to be done

    • @BwompProcessing14
      @BwompProcessing14 Год назад +51

      The man himself!

    • @ZedakiahBoyer
      @ZedakiahBoyer Год назад +7

      Yo wassup rce love your vids

    • @hfbdbsijenbd
      @hfbdbsijenbd Год назад +17

      I like that real engineers treat Civil engineers the same way you treat architects.

    • @craigwhite1202
      @craigwhite1202 Год назад +4

      Hi rce love your videos and architects are the worst and honestly my sister wants to be an architect and I want to be an engineer

  • @hudsonator7259
    @hudsonator7259 Год назад +3351

    "now one problem we have is it is indestructible. Clearly it was made by engineers. So in order to fix this, we just need some architects" sounds like real civil engineer
    EDIT: holy shoot 2.1k likes
    I think that's the most I've gotten before thanks a bunch

  • @ojonathan
    @ojonathan Год назад +1400

    Damn, nice video! About 7:09: Yours didn't performed like Poly Bridge probably because Poly Bridge has its own custom physics engine, this was done because the Unity3D physics engine is not deterministic, which caused a lot of problems on Poly Bridge 1, not only rerunning the simulation will give you a different result, but game speed also affects the outcome. So for Poly Bridge 2 and on, they're using their own physics engine.

    • @AstroSamDev
      @AstroSamDev  Год назад +368

      Yes, I did some research on it and found many differences, so my version is pretty different. One way I get around it not being deterministic is by running the simulation multiple times and taking the mean of the fitness, although this obviously takes more time.

    • @NikoCubeRoot
      @NikoCubeRoot Год назад +31

      @@AstroSamDev Part 2 yes no??

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

      ​@@AstroSamDev and for Android

    • @TlalocTemporal
      @TlalocTemporal Год назад +11

      Since Polybridge is made in unity, I wonder if some bepin tool could extract enough of the physics engine to implement this as an actual solver.

    • @RobertBleattler
      @RobertBleattler Год назад +29

      @@TlalocTemporalsince poly bridge is written in c# you can almost certainly access the physics engine through dependency injection.

  • @ItzTylerOP
    @ItzTylerOP Год назад +474

    "Im way to busy to be playing the game" 0:09
    " To start off im going to need to replicate the entire game" 0:30

    • @justaguy311
      @justaguy311 Год назад +22

      yeah bro was so lazy to run 1km that he ran a whole Earth lap 💀

    • @peterfater8992
      @peterfater8992 4 месяца назад +5

      @@justaguy311 No, he remade earth, and made an ai run on it instead.

    • @sethb3090
      @sethb3090 3 месяца назад

      Well, now you know why he doesn't have time to play the game

  • @masonator__
    @masonator__ Год назад +185

    As someone who has played a ton of Poly Bridge, this is very cool! Also, I dunno if this has been clarified yet, but there is a 1:4 ratio between polygrams and unity's mass units.

    • @AstroSamDev
      @AstroSamDev  Год назад +75

      Oh I see. Since I recorded the audio, I actually changed the weights a lot, and it seems they actually did almost reflect that. But it is good to know now 😁

    • @masonator__
      @masonator__ Год назад +16

      @@AstroSamDev Certainly lol. Also, I don't know how well this can translate into your system, but I might be able to give you the current strengths and weights of each material, along with possibly some models from the game if you plan to make any follow-up videos!

    • @moji3812
      @moji3812 9 месяцев назад

      Ah ok

  • @little_lord_tam
    @little_lord_tam Год назад +92

    I like how this AI shows that trial and error can result in so seemingly complex things like the swining bridge that seemed delibertly made while its just the result of failing many times prior. Just like evolution

    • @enderiume8282
      @enderiume8282 Год назад +4

      Yeah i really found it beautiful and honestly, i tyink it can really be compared to a very young child, just trial and error the lifd

  • @WRLDOfSad
    @WRLDOfSad 5 месяцев назад +8

    My guy really said "if you didn't like the video, dislike it" you deserve my sub

    • @Niloe-M
      @Niloe-M 3 месяца назад

      RUclips algorithm doesn't care about dislikes

  • @rps4400
    @rps4400 Год назад +117

    You are like if Real Civil Engineer and CodeBullet had a child and I love it

    • @StephenOwen
      @StephenOwen Год назад +6

      I’m instantly going to subscribe to both of those based on this sentence alone 😊

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

      your not wrong...

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

      Thought the exact same!

    • @darthkarl99
      @darthkarl99 Год назад +2

      @@StephenOwen If you like real engineering stuff i would recommend PracticalEngineering too.

    • @ImprovementZoneOfTirth
      @ImprovementZoneOfTirth Месяц назад

      Genetic Algorithm in action!

  • @meriabreadsticks
    @meriabreadsticks Год назад +77

    "this bridge is indestructible since it was made with engineers, so we just need need some architects"
    utterly comedic

  • @jvsonyt
    @jvsonyt Год назад +11

    "I don't have time to play the game, so I spent time to program the game in unity and trained an ai to play it"

  • @peptobepto
    @peptobepto Год назад +82

    HE’S BACK!!!

  • @nikolakosanovic9931
    @nikolakosanovic9931 Год назад +4

    3:50 you know that FixedUpdate exist

  • @hayleighhill1726
    @hayleighhill1726 Год назад +9

    Oh man, you would get along so well with RCE.
    "This bridge is indestructible- clearly it was made by engineers."
    "To fix this, we need architects." 😂

  • @ItsVasl
    @ItsVasl Год назад +49

    when the world needed him the most, he returned

  • @DamageMaximo
    @DamageMaximo Год назад +4

    2:41 Looking up at the sun in minecraft be like:

  • @ancientluck6934
    @ancientluck6934 Год назад +14

    The purpose was destroyed by AI holding the car hostage.

  • @Rodasboyy
    @Rodasboyy Год назад +32

    Around 4:22 wouldn't it be better for visualization and filming purposes to do a 10x10 grid of bridges?

    • @AstroSamDev
      @AstroSamDev  Год назад +10

      It actually uses unity's 2d physics system, so having multiple rows moving back in the z axis would overlap collisions, and stacking them vertically could make the ball interfere or bridge pieces.
      The only way to prevent that would be to build extra barriers or delete falling things, which would reduce performance.
      And for visualization, it wouldn't be possible to show all of them at once on screen, and I think just showing a single one evolving gets the point across well.

    • @AstroSamDev
      @AstroSamDev  Год назад +8

      To clarify, it would be possible to show them all at once, but they would be too small. And if you were talking only about the video, I wanted to show what the simulation actually looked like.

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

      @@AstroSamDev I understand!
      Was just a friendly suggestion from someone who gets 0 out of unity
      Thanks for explaining 😁

    • @Rodasboyy
      @Rodasboyy Год назад +3

      @@AstroSamDev great video btw!
      I'm always amazed to see NN getting to the hardest and coolest solution and thinking "Hmm , that's perfect" haha

    • @AstroSamDev
      @AstroSamDev  Год назад +4

      @@Rodasboyy Thank you!

  • @swivvy3037
    @swivvy3037 Год назад +26

    I was really hoping for more from this video. Not sure if I'm being unrealistic but it just felt like it started to gather momentum then stopped dead

  • @Kurokuma10
    @Kurokuma10 Год назад +14

    I think if you made closeness to the flag an exponential reward, that might help incentivize reaching the goal. And if you also awarded points for bridge rigidity, that could be good for preventing dangling messes. The rigidity could be scored based on least amount of average travel for each joint node.

  • @slice6298
    @slice6298 Год назад +13

    6:10 : connecting to all points gives a better bridge
    Meanwhile polybridge players: 😅

    • @b_read6941
      @b_read6941 Год назад +2

      Weight!!!!!!! Money!!!!!!!!!!!!!!!!!!!

  • @mahwiiiife408
    @mahwiiiife408 Год назад +2

    8:30 he's beginning to believe

  • @an_asp
    @an_asp 10 месяцев назад +5

    We gave something like this as an assignment to students in an evolutionary computation class a while back, and it was a lot of fun. We used a "maximum load" fitness function (keep adding weight until the bridge collapses), and also had students add a cost minimization objective at one point for NSGA-II, though that ran into some fun problems (What bridge minimizes cost? The one where you delete the whole bridge, of course!). On one test problem we were getting really weird results only to find that our scenario was missing one of the two anchor points on the sides of the bridge, so the evolutionary algorithms were desperately trying to keep a huge cantilevered pier from falling over with surprising success!

  • @zetrium_
    @zetrium_ Год назад +11

    multiple everything by deltaTime or you're comiting a crime

  • @MrBuyerman
    @MrBuyerman Год назад +5

    Honestly, half this stuff went over my head, but i can totally get on board with the concept of spending 5x as long avoiding doing something than the original task. Fascinating stuff.

  • @sundown456brick
    @sundown456brick Год назад +10

    very good video, only downside I found is that it felt "incomplete"
    I'd absolutely LOVE to see more of this, tweaking, adding different materials, etc etc
    it is a pretty good concept and execution, so you definitely could invest some more resources into it. Will definitely turn out to be very good content.
    Keep up the good work!

  • @braschlosan
    @braschlosan Год назад +12

    I hope there's a second part showing it solving various levels

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

    So many questions:
    1. Why not specify in fitness function, that "car" should cross the bridge?
    2. Where 3d red connection point come from at the bottom?
    3. Why not use gravity and shape for the "car"?
    4. Why not use probability function, bases on fitness to decide parents?
    5. How many spicies do you create per generation?

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

    "Clearly it was built by engineers, to break it you would need an architect" 💀💀

  • @Doctor_XI
    @Doctor_XI Год назад +2

    3:37 doesn't Unity have a built in update function that *does* run at a fixed rate? Was there a specific reason that you didn't use FixedUpdate()?

  • @GIRGHGH
    @GIRGHGH Год назад +9

    Oh, thought you were gonna elaborate on the cheating thing and maybe do something about it but alright.

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

    As an architect who worked with engineers in an A/E firm for 20+ years, I love your dig at us starting at about the 1:55 mark.
    I had many engineer coworkers who I still call my friends -- a couple very good friends -- but professionally we drove each other crazy.

  • @flameofthephoenix8395
    @flameofthephoenix8395 Год назад +3

    The genetic algorithm should be choosing which ones survive differently, each ai makes a bridge, then they have to walk across their bridge's 100 times with the simulation wearing down pieces over time, any of them that fall die, the other ones move on. If they all die repopulate it with another 100 random ais.

  • @davilonchi2114
    @davilonchi2114 Год назад +8

    You know that there is a thing in unity called FixedUpdate(){} right? so your elapse function is useless

    • @AstroSamDev
      @AstroSamDev  Год назад +4

      no

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

      ​​​@@AstroSamDevand you can also set after how much ms it's called, default is 33ms so every frame on 60fps

  • @Drakonus_
    @Drakonus_ Год назад +15

    Typical software engineer mindset, lmao. Don't have the time to do it? Spend way more time to try to automate it.

  • @WolfsKitten
    @WolfsKitten Год назад +16

    i feel robbed, this video kinda ended abruptly, i was expecting to see more out of the evolution and it figuring out different scenarios

  • @marktsh
    @marktsh 7 месяцев назад +4

    When the AI discovers the physics of the game to cheat:

  • @zalatos
    @zalatos 11 месяцев назад +1

    reading the comments and just reminded me of the swinging bridge and throw result. a nice simple way to overcome that would be to have 2 balls one after the other test the same bridge like traffic.

  • @omernomer7429
    @omernomer7429 Год назад +4

    MY MAN! I saw you just a while ago making videos getting less than 1000 views WTF HAPPENED? you blew tf up congrats! I hope you have the best game dev journy ever!

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

    There already is a fixed update function in unity for doing physics calculations

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

    I'd think it would be cool for you to solve custom levels that are made by the RUclipsr Real Civil Engineer.

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

    So bridges in the future just sling your car to the other side, meticulously having it land with minimal impact

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

    Having a maximum penalty for lost balls is an effective improvement; it shouldn't be (much) worse than a ball that hasn't moved at all. As the evaluation function is already composite (anchors, ball distance...), I'd also consider a non-linear evaluation on the ball distance. Closer to the finish should be very important and perhaps the distance should be rated exponentially. Another thing that could be interesting is average velocity of the ball; lower average velocity means smoother bridge. I would love to see a followup with improvements on the evaluation (perhaps my suggestions :))

  • @soundzythedev
    @soundzythedev Год назад +3

    2:48 "new Vector4" I didnt even know Unity had that lol

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

      Great for when you are making 4D games, as we all do.

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

      @@AstroSamDev I should have been doing this from the start! I have been using 2 separate vector2s instead!!!

  • @Hakusheri
    @Hakusheri 10 месяцев назад +1

    9:26 "our reward function was not specific enough, which is actually a big problem with reinforcement learning in..." education systems across the planet lol well said sam

  • @a-blivvy-yus
    @a-blivvy-yus Год назад

    I like that this video demonstrated a safer example of the paperclip optimiser problem at the end. AI's goal isn't specific enough, so it does something ridiculous instead of what was intended. That could be stopping the ball from crossing the space instead of helping it to do so, or it could be consuming the entire galaxy to turn everything into paperclips...

  • @potatosei2103
    @potatosei2103 4 месяца назад

    "I need to get the ball over there"
    "But If the ball falls into the abyss, i lose.."
    "Imma hold it"

  • @Matthias129
    @Matthias129 6 месяцев назад

    I love that 8 months later YT said, "Hey, here's a video you might be interested in!" Yes, thank you YT, I watched it and dropped a like on it, and multiple comments, months ago. Good thing I have the memory of a goldfish, cause here I go watching it again!
    Look forward to seeing this comment in 8 months when YT brings me that fresh new video I might be interested in.

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

    Cool! And it's a great foundation to build on. Would you try to improve the model with more realistic criteria?
    1. Two-way crossing so that the solution can be symmetrical.
    2. Vibration measurement, its minimization...
    3. And anything else I didn't think of.

    • @AstroSamDev
      @AstroSamDev  Год назад +2

      I think I just may in a future video. Thanks for watching!

  • @alvesvaren
    @alvesvaren Год назад +4

    Would be really cool if someone did this but hooked into the actual game and used that to simulate everything. Seems like it may be easier than reimplementing them too

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

      that would get you banned

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

      ​@@daefin9993But they wont be used ng online anyways.

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

      ​@daefin9993 you can literally pirate the game

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

      @@mloxard hadnt thought of that but piracy is illegal and modifying a multiplayer game is against most tos's

  • @latioshunter
    @latioshunter 2 месяца назад

    Maybe double the mass of the ball, forcing the system to find a way to stabilize it. Or maybe do recreate a golf cart, where if the cart tips over, it's game over.

  • @stefanthatcat7143
    @stefanthatcat7143 Год назад +2

    "this bridge is indestructible clearly it was made by engineers so in order to fix this we just need some architects" RCE would be proud

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

    "It isn't the solution we wanted" I instantly thought "It is the solution you deserved." :)

  • @peters972
    @peters972 11 месяцев назад

    The reward function ends up being as complex as just solving the problem without AI, lol.

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

    When creating fitness functions, I’ll often find multiple ways to score it, such as, for example: ‘distance traveled exceeds 5 units’ and ‘minimum distance to goal’ Scoring perfect gets you one point for each. 1 point for a minimum distance of 0, 1 point for traveling 5 units. I’ll then take all these disparate fitness scores and multiply them together for the final fitness score for the bridge. so if the ball never leaves the start (0 points for 0 of 5 units moved) and the ball never gets closer to the goal (0 points for goal proximity) - 0 * 0 = 0… which fair, bad example. the point is, any single fitness function doing poorly penalizes the overall score, and none of these functions need to ‘pass’ before other functions start getting considered. There’s some finagling to do (what if all functions start scoring at zero?) … but the point is, don’t limit yourself to just a linear score. Powers, logs, priorities use what works for you.

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

    While watching Matt(@RealCivilEngineerGaming) tweaking his bridges I thought I'd be cool to replace Matt with genetic algorithm. I don't even thing neural network is required for that.
    Basically we can give the bridge (with suboptimal but working design) to the computer and ask it to move joints around until it'd land on the cheapest possible bridge without structural modification. That would drastically speed up the search (compared to generating the bridge from scratch) and hopefully show what the design actually is capable of.
    And implementing it as a mod/plugin for the original game would be absolutely cool but i have no idea how hard would it be to integrate such thing into the game.

  • @Rasta8889
    @Rasta8889 7 месяцев назад

    The Lebowski Problem: Any sufficiently advanced AI will just hack its own reward function

  • @DrPeeper
    @DrPeeper Год назад +4

    3:40 why don't use fixedupdate?

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

    I fear for humanity. In the future, lowest cost is paramount. All new bridges are dynamic swing bridges.

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

    Kinda wanted to see the final bridge in polybridge. D:
    Oh well. Lol

  • @ickon_
    @ickon_ Год назад +4

    Could you maybe make a part 2? This is an awesome video, and I would love to see how you will improve this project!

  • @Noone-of-your-Business
    @Noone-of-your-Business Год назад

    Very good lesson for evolving genetic AI: find out what you _really _*_want_* BEFORE you put the machine on it.
    Or revise when it goes off the rails.
    This is why AI should _NOT_ be trusted with criticial decisions like steering a vehicle if it has become a completely black box to us.

  • @Markfr0mCanada
    @Markfr0mCanada Год назад +2

    It would be interesting to see what happens if you take some of the more successful bridges and recreate them in Poly Bridge.

  • @Drago_Whooves
    @Drago_Whooves Год назад +5

    is there a way to inject the Neural Network controls directly into the game? could even reach out to the devs and see if they can make a special build of Poly Bridge 3 that allows for injection?

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

      without reverse engineering the game, the easiest way i can think off is tracking the image of the game while played for the simulation part, for the building it think his code may be able to be adapted to work, biggest problem is the amount of time it would take to train it on a single instance running at a time

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

    I can't wait for it to start dropping roads to fling cars to the flag

  • @cpufreak101
    @cpufreak101 Год назад +3

    I hope the poly bridge devs see this and give you a chance to actually test an AI in the real game!

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

    I once heard that an algorithm had been designed to assist in choosing the most efficient route for a road across London. When the program was tested, it came up with an answer in less time than expected - straight down the river.

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

    "as long as the bridge doesn't fall down and cars don't crash you will be paid" engineers: "ChatGPT, design me a 4 lane, 423 meter long bridge east to west..."

  • @MetalHev
    @MetalHev 7 месяцев назад

    AI: "Technically correct, the best kind of correct"

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

    Mans like "I don't got time to play" but has time to remake the entire game

  • @5715klin
    @5715klin Год назад +1

    9:00 thank you. people don't realize ai is shit at problem solving. it can help point us towards a solution but the one it provides is rarely ever optimal or even remotely close. ai loves getting caught on local maximums and it is unreasonable (and probably humanly impossible) for any programmer to be able to fully lay out every necessary parameter to have it give a compelling usable output. for something as complex as video game bridge building, ai already doesn't do the best job so its kind of shocking people can believe it has any chance at doing things infinitely more complicated like creating art or animation in an organic way that doesn't just involve interpolating its data sets and calling it a day

  • @TehJumpingJawa
    @TehJumpingJawa 7 месяцев назад

    Step 1: Decompile poly bridge.
    Step 2: Insert learning algorithm

  • @olli3686
    @olli3686 11 месяцев назад

    Your fitness function could have been based on three things: the changes to the road pieces (max distance change, max angle change) and the max distance change of the balls. Also you should have randomized ball size. With keeping the ball as level as possible the main goal. This will help avoid jumps, hills, swings, and dips. If you’re given a straight path of road joints and told to keep it as level as possibly by only adding bridge connections etc.

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

    That ball who sits there and does nothing while thinking he is winning is just like me

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

    one thing interesting in this video. the difficult way to produce effective reward function, because it's the key to evaluate/reward/select evolution.

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

    "I dont have enough time to play the game so il make a new version of it from scratch"

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

    Ooh just tought it would be really cool if the AstroSam logo closes at the end instead of fading out
    It would close exactly in the same way that it opened at the beginning

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

    It looks more like your void Elapse() is more comparable to Unity's void LateUpdate(), which runs on fixed intervals after the physics has been calculated.

  • @Svaltus0013
    @Svaltus0013 10 месяцев назад

    If left to (most) modern engineers we would all live in cube shaped buildings.

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

    Dad!! The bridge is hitting the griddy!! 8:16

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

    I have never, once in my life heard a RUclipsr say "if you didn't like it, *please hit the dislike button* "

  • @torry2
    @torry2 Год назад +2

    I'd be curious to see if any of the designs would work in the actual game

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

    So i'm sure you already thought of this, but I think the AI would have a better chance if piece placement was changed to emulate the Arc tool.
    Like if the distance between two points it chooses is greater than material.maxLength, add a third point halfway between the two and offset it by a random number * the line's normal (weighted toward 0 offset) to define an arc, then create floor(arcLength/material.maxLength) connections and equally space them along the curve.
    It would probably still be a mess, but it would likely get it closer faster and is closer to how real players think when they plan a bridge.

  • @tommygarson8592
    @tommygarson8592 9 месяцев назад

    watching the bridge grow and twitch as it evolved felt like something out of an Alan Resnick film

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

    I imagine it'd be very fun to see the algorithm that got the car to the end goal in the slowest way possible

  • @Tenajeh
    @Tenajeh 6 месяцев назад

    "I don't have time to play the game, so I reverse engineer it, partially through blackbox-testing, recreate each and every puzzle, and then let my computer play itself." 🤣

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

    I expected a super barebones explanation of how it worked, but I think I know a little bit more about machine learning now as a non-coding layman. great stuff

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

    You can avoid the scaredy cat by adding a reward for moving outside of a set range, or a penalty for moving slow.

  • @corwyncorey3703
    @corwyncorey3703 7 месяцев назад

    It isn't *artists* that should fear AI... It's *ENGINEERS.*
    And maybe drivers. And people....

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

    I suspect the "hold the ball at the start" issue can be solved by scoring it by the closest the ball got to the flag. Ergo, the falling ball would, at least briefly, been closer than the held ball and scored higher.

  • @lolcat69
    @lolcat69 Год назад +2

    OH DAMM, FINALLY, A NEW ASTRO SAM VIDEO!!!

  • @bifrostbeberast3246
    @bifrostbeberast3246 9 месяцев назад

    The further your bridges are away from world origin, the stronger the physics calculation will be distorted. Keep that in mind. You need to distribute the bridge agents in a grid around (0/0/0) to keep their distance from the world origin as smalö as possoble.

  • @reue100
    @reue100 10 месяцев назад

    "I don't have a lot of time to play this game"
    -rebuilds game in unity and builds an AI to play the game which most likely took at least twice as long as playing the game....

  • @SparkeyAvalon
    @SparkeyAvalon 7 месяцев назад

    Yeah... It also found a way to exploit the initial position of the road pieces.
    It should do well after the bridge fully settles.

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

    This man knows his Engineers from his aRcHiTeCtS

  • @atom-xgaming7507
    @atom-xgaming7507 Год назад

    Use a checkpoint system for reward at crossing every point on the bridge, instead of end result only, maybe that will determine the AI to solve the crossing the bridge problem and build an actual bridge.