Тёмный

[Laser] Firing squad synchronization problem 

udiprod
Подписаться 137 тыс.
Просмотров 1 млн
50% 1

The video shows a theoretical problem in computer science and a solution for it. It is presented as a riddle, but note it's not easy to solve.
The shown solution is based on the first solution proposed for this problem. It requires ~3n steps, and 17 states.
See list of states and some additional information here: www.udiprod.co...

Опубликовано:

 

27 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 2,2 тыс.   
@25usd94
@25usd94 3 года назад
Its important to have all the robots fire at the same time so that any individual robot won't feel guilty from knowing they had pulled the killing shot.
@iwomartofel1849
@iwomartofel1849 3 года назад
Guitly, or perhaps satisfied
@happmacdonald
@happmacdonald 3 года назад
Nah they can't see past their neighbors nor remember the past, I think they're gonna sleep well tonight after their neighbor signals that it's nighttime. xD
@kaidatong1704
@kaidatong1704 3 года назад
nooo u can’t just break the first law of robotics machine gun goes brrr
@usernametaken017
@usernametaken017 3 года назад
@@kaidatong1704 if nobody saw it its not a crime
@nondescripthandle212
@nondescripthandle212 3 года назад
@@happmacdonald that nighttime bit got mw
@ya_boi_salami
@ya_boi_salami 3 года назад
imagine being sentenced to death by a robot autocracy, and the last thing you see before you die is your executioners just grooving
@thepiratepeter4630
@thepiratepeter4630 3 года назад
The war of the sorting robots
@yonatanbeer3475
@yonatanbeer3475 3 года назад
"Sargent, give the order." "Yes sir." *Bonk* "What are they doing, Sargent" "Grooving, sir"
@TheJamesM
@TheJamesM 3 года назад
The goofiest dystopia.
@godlikefish1193
@godlikefish1193 3 года назад
If it's execution by groovin robots I'd be more than willing to accept my fate
@unexpected2475
@unexpected2475 3 года назад
Instead of being blindfolded, you get a nice visual before you get fucking murdered.
@defaultusername9596
@defaultusername9596 3 года назад
“Yeah, we had some budget cuts this year, so we can’t go with the executioner robots.” “What are we using, then?” “The dancers.”
@samuelding7854
@samuelding7854 3 года назад
Hey, at least they’re programmable
@koltrol4370
@koltrol4370 2 года назад
I think it‘s the different way a round
@Totally_Bonkers
@Totally_Bonkers 2 года назад
how are there TWO replies and 2k likes
@ctdaniels7049
@ctdaniels7049 2 года назад
The Clone Wars in a nutshell!
@t-rex1019
@t-rex1019 2 года назад
Roger Roger Now launching, Just Dance!
@onebigchumptm4729
@onebigchumptm4729 2 года назад
I cannot stop laughing at the idea of someone who’s been sentenced to death by robot firing squad, screaming bloody murder while these robots just boogie down to upbeat royalty free music
@ironmatic1
@ironmatic1 3 месяца назад
well it's more or less an abstraction of the Colonel Bogey March, hardly royalty free style.
@TegukiSix
@TegukiSix Год назад
Huh, that's a neat solution. Mine was to use an iterator at the end of the line, but I'm not sure if that breaks the "finite poses" rule: - Build an arbitrary list of poses greater than the number of robots. - Robot 1 assumes the pose that says "I am number 1!" - Each idle robot looks to its right and assumes the pose one higher than that (unless right is also idle). - When you get to the end, you've counted all the robots! - The last robot (which sees a blank space next to it) begins ticking down through all the poses ("blank left & not idle = my pose - 1"). - Each other robot, when it sees a robot with the same pose on its left, ticks down one pose. - When the robots declare "We are number 1!" ("I am number 1 & left is number 1") they're ready to tick over into "Firin' ma lazor!".
@bushbaby4421
@bushbaby4421 Год назад
It specifically mentions a squad of any FINITE size, so I would argue your solution is more elegant and exactly where my head went with this one!
@Poldovico
@Poldovico Год назад
​​​needs to work for ANY finite size of squad, but you have to define A finite amount of poses in your solution. If you can find a finite quantity that is greater than any other finite quantity, hit me up.
@aa01blue38
@aa01blue38 11 месяцев назад
It does break the finite poses rule, as there must be one finite set of poses and rules that works for ALL finite squads, -- so no matter how many poses you have, there is a squad with more robots than you have poses.
@ugielka
@ugielka Месяц назад
@@aa01blue38yeah but i can also come up with one more pose than your biggest squad. even with countably infinite robots i could come up with countably infinite poses and one more
@seanproctor7830
@seanproctor7830 3 года назад
“Here’s a robot firing squad” is possibly the most ominous first line in any RU-vid video
@Natonada
@Natonada 2 года назад
LMAO
@MarieAmeliaFreyaAster
@MarieAmeliaFreyaAster Год назад
Tom Scott
@someguy70
@someguy70 Год назад
*proceeds to activate robot firing squad that is facing towards you*
@Chineseisntalanguageapparently
But very effective
@EndEverEsports
@EndEverEsports Год назад
“vsauce, Michael here”
@i_teleported_bread7404
@i_teleported_bread7404 3 года назад
However, due to a design flaw, in the time the robots take to finish the sequence and set up for firing, the prisoner has already broken free from their restraints, disarmed the guards and escaped over the side of the wall.
@i_teleported_bread7404
@i_teleported_bread7404 3 года назад
@@Warze And that's why you don't drink while designing your robotic executioners.
@52flyingbicycles
@52flyingbicycles 3 года назад
You think you can escape them? They may be slow and limited to finite state machine commands, but they are immortal and relentless. Better to die by the merciful hand of a laser gun than huddling in a dark cave dreading your coming doom
@stelcxantisto
@stelcxantisto 3 года назад
Rearrange them into a circle so that the left leg signal can never meet the right hand signal.
@user6122
@user6122 3 года назад
@@stelcxantisto nah just make this the josephus problem and get it over with
@SoupEarthOfficial
@SoupEarthOfficial 3 года назад
Just get one robot
@EarlHare
@EarlHare 3 года назад
"pause if you want to think about it" Meanwhile on the screen: "problem proposed in 1957, solution found in 1967" Think i'll pass.
@extraintelligence
@extraintelligence 3 года назад
Sometimes the solution to a problem is not solved with careful study and experimention, but with a singular flash of insight. For instance, Archimedes' "eurika" moment, or Newton an the apple.
@kurumi394
@kurumi394 3 года назад
@@extraintelligence I think OC accepts he isn't Archimedes or Isaac Newton
@extraintelligence
@extraintelligence 3 года назад
@@kurumi394 not with that attitude.
@Orlandofurioso95
@Orlandofurioso95 3 года назад
@@extraintelligence Not with that name, either
@eilmiv
@eilmiv 3 года назад
Thanks for that comment! I felt extremely stupid thinking for many hours and being stuck with some sort of binary counting for a long time. Now I feel extremely proud to have found a solution at all. The solution I found in the end is pretty similar to the one presented in the video.
@klobiforpresident2254
@klobiforpresident2254 2 года назад
We went from sorting robots to laser firing squads. Amazing. Is there a cut version of just the "dancing" robots out there? Did you hand-animate each squad or did you create a utility to do these in practice animations for you?
@udiprod
@udiprod 2 года назад
Thanks! It's procedural animation. Yes, a cut version is a nice idea, I'll consider doing that with a few more runs.
@klobiforpresident2254
@klobiforpresident2254 2 года назад
Ah, thank you for the reply. I'll glad if you do release one eventually. I may or may not imagine a tool that can synchronise the firing squad(s) to any song given a BPM and be laughing much too hard at all the inappropriate results. Dang it, now I want to see "Robot execution synched to _I Will Survive_". I hope you enjoy the thought as much as I do.
@HidekiShinichi
@HidekiShinichi Год назад
​@@udiprod i need a version without a beats, just a nice continuus flow of dance and moves.
@joshuapowers4623
@joshuapowers4623 3 года назад
The weird thing about these types of videos is that visually you can see it work, follow it, and it appears simple. But there are likely pages of math computations that prove this out that never get shown. I'd never follow it, but I'd like to see the math behind it.
@MadScientist267
@MadScientist267 Год назад
The weirder part is THIS is the more difficult to understand version 🤣
@jjwkoester
@jjwkoester Год назад
There’s a quote that says “if you can’t explain something simply, then you don’t understand it well enough”
@Catman_CM
@Catman_CM Год назад
​@@jjwkoesterI prefer phrasing that as "You have truly understood a complex concept when you can describe it in a simple manner." It feels more positive, in my opinion :)
@ralexcraft990
@ralexcraft990 Год назад
@@Catman_CMand in general fairness, more correct.
@TheRestedOne
@TheRestedOne Год назад
My thoughts went to waveform interference; the robots act as a medium where you’d normally use water for a demonstration. Eventually the waves bounce enough times to synchronize a “destructive” wave, clearing the signal.
@EnUsUserScreenname
@EnUsUserScreenname 3 года назад
This video felt like some kind of AI is trying to trick me into progamming a dissident-killing subroutine for it.
@WillToWinvlog
@WillToWinvlog 3 года назад
Lol
@shadowling77777
@shadowling77777 3 года назад
Lmfao
@senorpepper3405
@senorpepper3405 3 года назад
no bueño
@skunkfac3
@skunkfac3 3 года назад
Skynet: "Dammit, they're onto us!"
@brady1407
@brady1407 3 года назад
Prisoner: *Dances along to the beat* Warden: *Dances along to the beat* Shooters: *Dancing along to the beat* Prisoner: *Dances away slowly*
@legendgames128
@legendgames128 2 года назад
I'd like, but I'm afraid that I might cause an unsigned integer overflow to 0. If there is no integer overflow though, I will like because I was wrong. (back when it was at 255 likes)
@squidgelad1983
@squidgelad1983 2 года назад
@@legendgames128 Yes you're very clever, this is youtube.
@memegumin
@memegumin 2 года назад
@@squidgelad1983 but that was a joke, a programing joke
@Epic_Droid
@Epic_Droid 2 года назад
@@legendgames128 Gosh dang it, take your like, you fellow programming punster of a mad lad.
@theRPGmaster
@theRPGmaster 2 года назад
@@legendgames128 I assume 32-bit integers are used, not 8-bit, the real question is, what happens when we exceed 4.29 Billion likes
@FurryNonsense
@FurryNonsense Год назад
I love how more rules kept being added so that when he was wrong, he wasn't wrong
@godlyvex5543
@godlyvex5543 3 месяца назад
those were all part of the solution
@undefined6947
@undefined6947 3 года назад
As a musician I very much appreciate that you synced the music, it annoys me to no end when stuff like this is put to random music that doesn't sync and it takes work to sync something like this so well, I owe my life to you.
@frocco7125
@frocco7125 3 года назад
I agree.
@emil.pettersson05
@emil.pettersson05 3 года назад
The only problem is that the robots dance in 3/4 and the music is in 4/4.
@undefined6947
@undefined6947 3 года назад
@@emil.pettersson05 that's called an ostinato, looks like it's intentional here, so no problem :)
@user6122
@user6122 3 года назад
@@emil.pettersson05 anything can be a waltz if you try hard enough
@scottilewis3753
@scottilewis3753 3 года назад
How do you want to pay?
@50shadesofmycow
@50shadesofmycow 2 года назад
This is probably the most random video I've ever watched and I loved every second of it.
@roblxplyr2017
@roblxplyr2017 Год назад
no clue what i just watched but i can tell whoever came up with it is a genius
@Moley1Moleo
@Moley1Moleo 3 года назад
I've been sentenced to death but robocop over here can't stop doing fortnight dances to taunt me.
@DepletedLithium
@DepletedLithium 3 года назад
Brilliant!
@Terraqueo22
@Terraqueo22 2 года назад
Until he finishes dancing
@ITSMRFOXY
@ITSMRFOXY 2 года назад
Ironically, Robocop is now in fortnite
@cye2310
@cye2310 Год назад
​@@ITSMRFOXYIt's fortnight, Fortnite is the kids version
@carykh
@carykh 3 года назад
the more green-lit generals i see, the more nervous i get.
@ultrio325
@ultrio325 3 года назад
Probably because you are the prisoner from abusive AI usage (AI torture for music generation)
@mayabartolabac
@mayabartolabac 3 года назад
POV: You get killed by the robot firing squad after committing genocide on 2 music AIs
@keithplayzstuff2424
@keithplayzstuff2424 3 года назад
TIL cary watches udiprod
@urble
@urble 3 года назад
The living legend himself
@Chumpatrol1
@Chumpatrol1 3 года назад
I keep seeing you in every comment section lol
@ColCoal
@ColCoal 3 года назад
Engineers: “Just make them all shoot once a signal is given, these constraints do nothing but hamper their functions.” Mathematicians be like:
@jebediahkerman8245
@jebediahkerman8245 3 года назад
Yeah if the whole process is started off by hitting the first robot why not just hit all of them at the same time 😂
@samfriend3675
@samfriend3675 3 года назад
Actually this is a real engineering problem. Its from computer science, and the practical considerations are (Surprisingly enough) in computers. When computers are involved, each machine can be far enough away that only adjacent machines on the network can talk, and synchronisation of certain tasks can be important. This is the engineering side of it. It's a bit like the two generals problem - its seems silly to talk about, and like its just a problem for the sake of logic and maths, but its something that actually needs to be considered when dealing with computer networks.
@KavsLockedOut
@KavsLockedOut 3 года назад
@@samfriend3675 what situation would result in only adjacent clients be able to talk in a network?
@arielsproul8811
@arielsproul8811 3 года назад
@@KavsLockedOut daisy chain a bunch of computers together, have first one connected to the server and then have them try play epic dubstep hardest beat drop (not clickbait) (almost died) (shot my neighbors cat with a sawed off) (working 2021) (working free robux) (no survey) (no virus) simultaneously if you mess up it's just going to sound like a loud cacophonous mess rather than a loud mess
@samfriend3675
@samfriend3675 3 года назад
@@KavsLockedOutLong distances in areas with lots of interference could do that easily. Networks of low power devices (not full computers) that can't afford to be constantly transmitting - to name two situations. A slightly different situation is in digital logic circuits - a circuit built on the transistor level. Memory requires a fair number of transistors to make work, but logic states are much easier. Connecting everything to everything may not work just based on space - transistor circuits can be absurdly small.
@SomeoneYouDontKnowOfficial
@SomeoneYouDontKnowOfficial Год назад
Middle of an odd squad general is an absolute chad. Coolest robot in the squad by far
@bustahwoalf2858
@bustahwoalf2858 3 года назад
I like that the leg signal is basically the countdown. In the time it takes for it to move from the first to the last robot, all the other signals would have been set to fire
@DJChiefX197
@DJChiefX197 Год назад
Not quite. If a robot becomes a double-general while queuing the leg signal, the leg signal is delayed by one beat.
@ryannorthup3148
@ryannorthup3148 Год назад
@@DJChiefX197 The point still stands, since the final robot only fires when that final leg signal reaches the end of the line.
@ValeBridges
@ValeBridges Год назад
@@ryannorthup3148 heh, the point still _stands_
@ryannorthup3148
@ryannorthup3148 Год назад
​@@ValeBridges heh
@thetiredladdy
@thetiredladdy Год назад
@@ryannorthup3148 Puns!
@MorningDusk7734
@MorningDusk7734 3 года назад
The best part of this is that there's actually a practical application for simultaneous mechanisms. As long as their clocks are synchronized, pinging the nearest two devices with your state and updating accordingly should allow for simultaneous firing of whatever thing needs to be simultaneous. And if you put it in a machine, the order could carry across the line and back nearly simultaneously!
@Sylfa
@Sylfa Год назад
Mmmm, except you fail at the synchronized clocks. Alternatively, you already had a method to synchronize all devices.
@officersoulknight6321
@officersoulknight6321 Год назад
"there's actually a practical application for simultaneous mechanisms" "whatever thing needs to be simultaneous" Sorry bud but you're not making the greatest point. This argument does prove however that this could happen in real life, so it is a step toward making this useful.
@Henfredemars
@Henfredemars Год назад
This is fragile because it supposes that all of your machines are reliable.
@loganduncan1259
@loganduncan1259 Год назад
Almost as though almost every analogue mechanical device is consistently simultaneous, and this is a superflulous example. You've really not said anything here that isn't already implied, and frankly I've lost some faith in the intelligence of humanity.
@DrakeOola
@DrakeOola Год назад
@@loganduncan1259 This is an example of swarm behavior, try again.
@Elizhium
@Elizhium 3 года назад
as a programmer the only issue I see is giving them a beat that is perfectly synchronous so we can do this fast
@Elizhium
@Elizhium 3 года назад
​@TailExchange can you trust that clock tough? are you sure your thread is not pushed to the back and almost forgotten about when the others are having fun. or when you're communicating with other systems and somehow their message takes a freaking long time to arrive... I'm not stressed working with multi-threaded web services, what are you talking about :p
@spiralhalo
@spiralhalo 3 года назад
I want to see a simulation where each robots propagate their signal at very slightly different rate and see how bad the desync is gonna be..
@martysh1226
@martysh1226 3 года назад
@@Elizhium maybe set a time when the beat should start and have a hardcoded beat?
@ivarangquist9184
@ivarangquist9184 3 года назад
If you had a server, you wouldn’t need the dancing.
@wojtek4p4
@wojtek4p4 3 года назад
If every robot can measure time and can perform actions instantly, it should be pretty easy - every robot performs action exactly on beat, to act as a basic synchronous clock. Before starting the execution dance, they sync their clocks. The leftmost robot sends out a sync signal with no information. It gets passed like the "hand up" signal in the video, bounces back and comes back to the leftmost robot. Every robot automatically syncs their clock to the robot left of them. Only after leftmost robot receives the returned sync signal, the main execution dance begins.
@druid_zephyrus
@druid_zephyrus 3 года назад
n=17 is my favorite. The pirouettes and the high notes make me giggle. Maths is beautiful AND deadly. I love it.
@danielyuan9862
@danielyuan9862 2 года назад
I thought about splitting the problem along the middle of the line, but I didn't think about sending a signal that is 3 times slower than another. Beautiful solution!
@rootabeta9015
@rootabeta9015 3 года назад
Imagine being sentenced to death by firing squad during the robot uprising, and your last sight is a bunch of robots dancing to coordinate your demise
@mrmimeisfunny
@mrmimeisfunny 3 года назад
8:05 Imagine this is the last thing you see before you die.
@pvic6959
@pvic6959 3 года назад
id die amused and that wouldnt be terrible lol
@FlashDrive356
@FlashDrive356 3 года назад
They be groovin'
@shoam2103
@shoam2103 3 года назад
I'd be pretty amused
@tykjpelk
@tykjpelk 3 года назад
Imagine a future where they need 20 coordinated robots to kill you.
@erinboyle2889
@erinboyle2889 3 года назад
sometimes I come back to this video just to watch from 8:05 onwards
@sinom_00
@sinom_00 3 года назад
Ive seen this algorithm before with just colored cells, but its so much easier to visualize with the robots.
@explorer47422
@explorer47422 Год назад
The last bit with the music just had me smiling crazily and don't know why, it bought a lot of happiness
@hamburgerbroz6439
@hamburgerbroz6439 Год назад
mathematicians are the type of guys to go "heres a simple problem" and then add 20 more rules once you get it right
@Nauctshea
@Nauctshea 3 года назад
Executioner: "If you can figure out how to make this robot firing squad fire simultaneously using only body language from neighbors, we'll commute your sentence." Prisoner: "Logic problem? Ugh, just kill me." *robots dance* Prisoner: "Ohhhh, that's ho- *LASERED*
@zlodevil426
@zlodevil426 3 года назад
Can we have 10 hours of these robots please
@walksanator
@walksanator 3 года назад
Yes just a stream where after firing it adds another robot
@eclipse_darkpaw
@eclipse_darkpaw 3 года назад
@@walksanator 10/10 would watch
@yonatanbeer3475
@yonatanbeer3475 3 года назад
Please
@leondost3575
@leondost3575 3 года назад
follow up problem: "at 2 beats per second, what number of robots would take (closest to) 10 hours to fire?"
@redyau_
@redyau_ 3 года назад
@@walksanator Oh that's a nice programming challange
@alansmithee419
@alansmithee419 3 года назад
Now we just need twenty people to learn the choreography for this and do it as a stage performance.
@hueyiroquois3839
@hueyiroquois3839 3 года назад
The audience might not like the plot twist at the end.
@PokeShadow77
@PokeShadow77 3 года назад
@@hueyiroquois3839 Dead men tell no tales
@SniperOnSunday
@SniperOnSunday 3 года назад
@@hueyiroquois3839 What are they gonna do about it?
@aiosquadron
@aiosquadron 2 года назад
@@hueyiroquois3839 Maybe, but they won't live to tell the tale. (Hides mousin negate behind back)
@MadScientist267
@MadScientist267 Год назад
...why... 🤦‍♂️
@somedude8380
@somedude8380 Год назад
imagine being executed and the firing squad does a little jiggle before killing you
@Riolande
@Riolande 3 года назад
Why did you private this video? I watched it halfway before going to sleep and waking up to see you had made this video private.
@TheRabbitPoet
@TheRabbitPoet 3 года назад
"Many years later, as he faced the firing squad, Colonel Aureliano Buendía was to remember that distant afternoon when his father bonked a robot on the head" -one hundred years of solitude
@XCSme
@XCSme 3 года назад
Why the leg has three stages: the hand signal must travel three times faster than the leg signal because it has to travel three halves while the leg signal only one so that they meet in the middle.
@sebasfavaron
@sebasfavaron 2 года назад
Thank you!
@TG-to5nf
@TG-to5nf 2 года назад
good comment.
@HypnosisBear
@HypnosisBear 2 года назад
That's genius!! Thanks for explaining it to my stupid mind! Now I can truly appreciate the solution!
@DrakeOola
@DrakeOola Год назад
And multiple leg signals to handle even or odd amount of squad members since with an odd amount you will have a single person in the middle but with an event amount there will be 2 middle men
@RaExpIn
@RaExpIn 3 года назад
Everytime the robots shoot I'm hearing a friendly voice saying: "Now you are dead."
@_ramar
@_ramar 2 года назад
hello merge sort type solution, very cool to see you here!
@SorryBones
@SorryBones 3 года назад
The mathematical precision of them trying to decide when to kill you is so detached it’s scary. But also I want to dance
@247flashgames
@247flashgames 3 года назад
Wow, this is a really clever solution, and the procedural animations are impressive! Thank you!
@ivarangquist9184
@ivarangquist9184 3 года назад
Wow, this is probably the most clever logic puzzle I’ve ever seen.
@colevilleproductions
@colevilleproductions 2 года назад
6:40 when the laser sound effect said "ch" i felt that
@highoncatnip_
@highoncatnip_ Год назад
pw ch zzt
@o_sch
@o_sch 2 года назад
0:00 "Heres a robot firing squad" in a happy and upbeat tone
@finnaginfrost6297
@finnaginfrost6297 3 года назад
For some reason this is the funniest thing I've seen this week.
@niemandwirklich
@niemandwirklich 3 года назад
Such a fascinating problem and solution!
@isaach.1135
@isaach.1135 3 года назад
All the while, whatever was in the path of 100 robots decided to take a nap and then just leave
@mr.calamity8886
@mr.calamity8886 2 года назад
Honestly the idea that the robots won't fire their weapons until every single one of them has been promoted to general is hilarious to me.
@MillMoxx
@MillMoxx Год назад
Its like a terrifying robot timer. You know its getting closer to shooting you, but you never know exactly when it will
@personman4011
@personman4011 3 года назад
It's amazing to see how people can find ways to emulate things like memory and recursion in such simple and restricted systems like this.
@nowhed
@nowhed 3 года назад
Wow blue moon today, udiprod uploads
@Huntracony
@Huntracony 3 года назад
It's always a great day!
@derfastimmerzustimmer8635
@derfastimmerzustimmer8635 Год назад
A classic divide and conquer approach. I love the solution, it's beautiful.
@bajooder5518
@bajooder5518 3 года назад
4:56 when you find the nerf dart that you lost in 2010
@maccrew612
@maccrew612 Год назад
Good RU-vid algorithm! A video I would have never found but needed.
@G.Aaron.Fisher
@G.Aaron.Fisher Год назад
Thanks for posting. This is just about the proudest I've ever been of solving a logic puzzle. The crazy thing is that as complicated as the solution is, most of it is actually forced by the constraints of the puzzle. There are a few different ways of dealing with parity issues. But most parts of the solution are provably required.
@Xzanah
@Xzanah 3 года назад
Lmao "this is a robot firing squad" being the first thing, sounds like Mark Zuckerberg and his buddies dislike my being alive.
@johnvriezen4696
@johnvriezen4696 3 года назад
I have a copy of the 'Computation' book by Minsky-- college text book. This problem is basically the only thing I specifically remember from the book and it has always intrigued me. When I saw the video title I knew immediately what the topic was about. I'm still, to this day, curious what the 2n-2 step solution is. The book claims the soldiers in that solution have 1000's of states, but the link in the description says "Optimal solution: The fastest solution to this problem uses 2n-2 steps. There’s a proof this is the best possible time. It uses also only 6 states. It is not known whether this is optimal or not."
@YEAHKINDA
@YEAHKINDA 2 года назад
Imagine being a soldier and you approach 11 robots and they just have a synchronized dance session before opening fire
@mayanightstar
@mayanightstar Год назад
uncanny how cheerful the video is for being about a firing squad
@PiercingSight
@PiercingSight 3 года назад
Before the moment to pause and think about it, you probably should have explained that a robot could give two signals simultaneously, and explained that a signal could take more than one beat. Also, how many signals are allowed? If the number of signals is as arbitrary as the number of robots (can change with the number of robots), then the solution is easy. (Though the wording seems to imply that the number of states needs to be the same between all robot numbers?) The robots only need to know the signal of the robot to their right. It will be a countdown starting with a signal representing the number of robots. When a robot sees a numbered signal next to it, on the next step, it gives the signal of n-1. This repeats until the signal of countdown has propagated to all robots and they all fire.
@Tumbolisu
@Tumbolisu 2 года назад
There is no limitation on signals, as "signals" are just our human way of thinking about this. The problem description only mentions a finite number of states and a finite number of transitions, which has nothing to do with signals. Every combination of a hand signal, foot signal, including direction, is a completeley seperate state with accordingly completely seperate transitions. It is easy to describe them all by thinking of them as individual "signals". This is why a large portion of the video is about handling odd numbers of robots, as it is not obvous how these signals are combined in such edge cases. Of course the number of states and transitions should not be dependant on the number of robots, since you can not pre-program that behaviour. If you programmed it for 1000 robots, but then had to do it with 1001 robots, you would need to reprogram all robots to allow for the extra states and transitions.
@samuelfaille-denis8098
@samuelfaille-denis8098 2 года назад
here's the problem to your method, what specifically is "n"? the problem assume that number isn't known
@lgrantcdg
@lgrantcdg 3 года назад
This excellent! Very well presented, and it brought back happy memories of reading Edsger Dijkstra's paper, "Self-Stabilizing Systems In Spite of Distributed Control", back in the day. Thank you.
@TheSpookiestSkeleton
@TheSpookiestSkeleton 3 года назад
This has to be the most upbeat tune I've heard while being executed by firing squad
@Awesomekraken677
@Awesomekraken677 2 года назад
Imagine being on the receiving end of this, just watching the robots do a dance number and knowing once all the robots finish you’re dead
@jonathanpallotto8227
@jonathanpallotto8227 2 года назад
This is a perfect example of a more advanced Turing machine. Great video
@SCRedstone
@SCRedstone 3 года назад
everyone gangsta till the robots start doing their funny dance
@SallinKari
@SallinKari Год назад
Imagine you're sentenced together. You get dragged out in front of a squad of robots armed to the teeth, but they just stand there until one gets knocked on the head, and an entire interpretive dance routine happens.
@Spiker985Studios
@Spiker985Studios Год назад
"Oh look honey, they're dancin" "Darling we need to leave right now"
@dtkedtyjrtyj
@dtkedtyjrtyj 3 года назад
I didn't even attempt to solve it, but my first instinct was "set up some sort of wave that constructively interferes at the end". I was missing the two other critical insights: send two waves at different speeds and make them collide. Also, I want to see a 200 robot execution.
@albertlau867
@albertlau867 3 года назад
mathematician: now do it in 2-D rectangle, or generalize to n-D hypercuboid.
@mymoomin0952
@mymoomin0952 3 года назад
I know this is a joke but the problem was actually solved for squares, rectangles and cubes in 1974 bc mathematicians are just Like That
@Tumbolisu
@Tumbolisu 2 года назад
2D: Assuming each robot can see the 8 neighbours around it, and that the lower left robot is the one that gets activated at the start, do the following: The robots on the lower row of the rectangle perform the hand and foot signals as shown in the video, up until they all turn into generals. The robots in the row above will notice that all robots below them have turned into generals. At this point, they will simply perform the exact same dance going vertically. Eventually ALL robots will become generals and they shoot. It should be easy to see how this can be generalized to any number of dimensions.
@ivarangquist9184
@ivarangquist9184 3 года назад
Before I watch the solution: My idea is to start with two chain reactions moving with different speeds to the right. One that moves right every beat and another one that moves forward every third beat by cycling through three different states. The faster one bounces when it hits the right end of the line, which means the “waves” will meet each other exactly in the middle. When the waves hit each other, they should release four waves, two to the right and two to the left with similar speeds as in the beginning. This will essentially divide the line into two equal parts in which the process will be repeated, diving the line into smaller and smaller similar pieces. We want the robots to fire when the line can’t be divided any further. The robots notices this when two fast waves collide right next to slower beams, which indicates that the beams collided right after they got released. This is by no means a complete solution, but I don’t think the details matter that much.
@banknote501
@banknote501 3 года назад
That's essentially the solution in the video. Count the number of states that the robots use. Now try to do it in as few states as possible and in the shortest time possible. A friend of mine solved that as a PHD thesis. Unfortunately a second researcher was faster in publishing his solution. 6 states is current minimum, 5 states are not proven to be possible or impossible yet.
@debblez
@debblez 3 года назад
Sure bud
@metalgearlikersupreme
@metalgearlikersupreme 3 года назад
Imagine getting lined up against a brick wall as a POW during the human/android war and the last thing you see is a bunch of robots doing a funky little dance before executing you in perfect unison.
@Lovuschka
@Lovuschka 3 года назад
Executions in 2050: "The firing squad is ready when I find that video again!"
@yellowjackets8011
@yellowjackets8011 3 года назад
Imagine being executed and this Music starts playing
@Day13May
@Day13May 3 года назад
It's odd I came across this when I did, I had just come up with a similar solution for syncing groups of objects via signal transferring when I was programming, although my solution was a bit more crude than this. Great stuff!
@MadScientist267
@MadScientist267 Год назад
Damn. More crude than this? What they use? Smoke signals? 🤣
@guillermonicolasdemartinid5572
@guillermonicolasdemartinid5572 2 года назад
Everybody gangsta until the fire squad robots start dancing
@soup5344
@soup5344 Год назад
I keep forgetting about this video and then it pops up again in my recommended a random day
@May825
@May825 3 года назад
The dancing at the end was so cute lol
@timhan8667
@timhan8667 3 года назад
I have a simple solution which might be a bit cheaty, but here it is: You could create a sequential counting system with the positions of arms and legs: starting at bottom-dead-center to represent the value of zero. Rotating the limb one radian clockwise would be adding one, and rotating the limb one radian CCW would be subtracting one. Since the amount of radians in a circle is irrational, you will never have two identical values. The first robot sets it's leg to a value of 1. The leg value travels down the line with each robot increasing the previous leg value by one. Once the last robot receives the signal, it will set it's arm to the same value of the leg. Each robot will copy the arm value of the adjacent robot, minus one. When the arm is at a value of zero, fire. Since you would only need as many values as there are robots, and the amount of robots is finite, the amount of states is therefore finite.
@empty5013
@empty5013 3 года назад
not a bad solution, but it doesn't fit the constraint of 'finite set of states that work for any number of robots', you need a different sized set for each number of robots, or an infinite set if you want it to handle any number.
@FuchsiaShocked
@FuchsiaShocked 2 года назад
I don't know how youtube brought me here but I'm glad I get to see the robots do a nice dance before they shoot me with lasers.
@dyvyby
@dyvyby Год назад
I don't remember my Rhythm heaven toy soldier gameplay having 16 buttons to press
@BlueMelon555
@BlueMelon555 3 года назад
What would happen if we initially hit two robots on the head who are following these rules?
@WillToWinvlog
@WillToWinvlog 3 года назад
Welcome back Udiprod, I just watched the first half and I'm considering solving it on my channel.
@azorath1427
@azorath1427 Год назад
Enemy soldier:"why are they dancing" Enemy general:"Oh shit!"
@MWSin1
@MWSin1 Год назад
Suddenly, Boston Dynamics teaching their robots to dance doesn't seem so innocent.
@TheBcoolGuy
@TheBcoolGuy 3 года назад
That drum fill between the runs makes me feel strange feelings.
@nigeljames6017
@nigeljames6017 3 года назад
The interesting thing here is, unless I’m mistaken, this task was solved by humans. I’d love to know how many iterations it would take for an average computer to solve the problem starting with no prompting except for the arm, leg and body movements. In other words by A.I.. I would have guessed it would have taken many hundreds of thousands of iterations before even the simplest problem would be solved. What do other people think ? I’ve seen other channels where problem solving is taken on by computers, and sometimes the results are quite amazing, but most take hours.
@theredvelvetyfox8814
@theredvelvetyfox8814 2 года назад
Pov you are a war criminal and are being treated to a funky robot dance
@mandolinic
@mandolinic Год назад
If ever I have to face a robot firing squad, I'm not requesting a blindfold. That way I'll die laughing before any shots get fired.
@jupitersky
@jupitersky 2 года назад
The robot dance number of death! Glad to see you showed it with primes too.
@Tumbolisu
@Tumbolisu 2 года назад
Here is the full list of states as used in this video. I'm gonna abbreviate left with L, right with R, hand with H and foot with F. The 3 different levels of a foot signal are simply numbered. 1. Idle 2. RH 3. LH 4. RF1 5. RF2 6. RF3 7. LF1 8. LF2 9. LF3 10. Right General (RH + RF1) 11. Left General (LH + LF1) 12. Double General (RH + LH + RF1 + LF1) 13. Squatting2 (RF2 + LF2) (A double general transitions to this state) 14. Squatting3 (RF3 + LF3) (Same as above) 15. Turned around (A robot turns around when they recieve two hand signals, independant of the surrounding foot signals) 16. Weapon up (RH + LH) (A turned-around robot always transitions to this state)
@wouterlahousse9637
@wouterlahousse9637 2 года назад
Everybody who would like to say something about what they have done this weekend please raise your hand. All the toddlers in kindergarten: 6:55
@Fopenplop
@Fopenplop 3 года назад
I think you could have made some of the double leg signals cause the robots to float. I wouldn't have minded
@ohhiitsmike
@ohhiitsmike Год назад
This video went straight over my head… but I loved it
@KipThe7O
@KipThe7O Год назад
The guy being executed is watching his emotionless robotic executioners do a funny little dance before blasting him to bits
@eris902
@eris902 3 года назад
I love how they dance before they execute me
@SkooterBrother
@SkooterBrother Год назад
I love finding such random videos
@maturegambino2329
@maturegambino2329 2 года назад
im just picturing a prisoner scentenced to death by fireing squad, goes out for his final moments, and just hears this marching band and sees a bunch of robots dancing lol.
@Encarvlucas
@Encarvlucas 3 года назад
I love this channel
@MaximQuantum
@MaximQuantum 3 года назад
In the future, this strategy will be adapted in real Robot combat.
@mohammedabb985
@mohammedabb985 2 года назад
General: The robots should be firing now commander Commander: One robot skipped the national anthem therefore having all of them repeat it.
Далее
Merge Sort vs Quick Sort
5:34
Просмотров 1,3 млн
[Confetti] Firing Squad synchronization problem
8:51
We finally APPROVED @ZachChoi
00:31
Просмотров 7 млн
ДЕНЬ УЧИТЕЛЯ В ШКОЛЕ
01:00
Просмотров 763 тыс.
Shell sort vs Insertion sort
6:23
Просмотров 141 тыс.
Gamification of Bell's Theorem
24:58
Просмотров 104 тыс.
Visualization of Radix sort
7:02
Просмотров 57 тыс.
Heaps and Heap Sort
6:06
Просмотров 562 тыс.
AI Learns to Play Tag (and breaks the game)
10:29
Просмотров 3,5 млн
I Made Sorting Algorithms Race Each Other
8:24
Просмотров 129 тыс.
Recursive PowerPoint Presentations [Gone Fractal!]
14:47