Back in highschool, simulating different elevator algorithms was one of the projects I implemented during my CS class. It wasn't for the class — AP CS did not require anything like actual programming — but it was a fun project.
A cool connection is that a spinning-disk hard drive (HDD) is actually kind of like one really long elevator, just wrapped around a spindle instead of perfectly vertical. The SCAN algorithm is actually a disk-scheduling algorithm!
The elevator algorithm → disk scheduling connection is such a perfect example of how CS concepts keep showing up in unexpected places. Same idea, completely different domain.
It makes me wonder how many other "unrelated" problems we're solving today already have decades-old algorithms waiting to be rediscovered for them. Robot motion planning is basically just elevator scheduling with more degrees of freedom.
It's fun that the same algorithm applies to two different problems. In the disk case, the only unpredictable thing is future requests. Elevators have to deal with two unpredictable things, future requests as well as how long humans take to get in and out of the elevator. So it's doubly fun that the same algorithm works in both cases!
peterldowns · · focus · HN ↗
A cool connection is that a spinning-disk hard drive (HDD) is actually kind of like one really long elevator, just wrapped around a spindle instead of perfectly vertical. The SCAN algorithm is actually a disk-scheduling algorithm!
<a href="https://en.wikipedia.org/wiki/Elevator_algorithm" rel="nofollow">https://en.wikipedia.org/wiki/Elevator_algorithm
bherms · · focus · HN ↗
NKosmatos · · focus · HN ↗
[deleted] · · focus · HN ↗
[deleted]
liesliy · · focus · HN ↗
sobani · · focus · HN ↗
I don't know why, because they all look fine to me...
shmageggy · · focus · HN ↗
NetMageSCW · · focus · HN ↗
toxik · · focus · HN ↗
Certainly a take, ChatGPT. Not a very good one, but a take nonetheless.
amenghra · · focus · HN ↗