How do we represent a rotation in 3 dimensions? This is a surprisingly deep question, and one we can learn a lot from. Our goal will be to “rediscover” quaternions from first principles, building t...
It is very common in networking to use a fixed-size header in front of a packet to tell us how big the rest of the packet is. This allows for dynamically sized packets but imposes a limit on the ma...
I was inspired by the thought “How could I get a swarm of robots to split into groups in order to move to different locations?”. Ideally, this means we find a way to allow a network of robots to ...
We previously designed a cluster ID algorithm to dynamically identify clusters (connected components) of MANETs, but it had some issues. The main issue was that a single node was capable of changin...
When you’re walking through a large crowd, how do you avoid colliding with everyone else? You aren’t communicating with each other, and you aren’t being directed by a central director, so how does ...
Fireflies There exists a somewhat magical phenomenon in nature where a swarm of fireflies will begin flashing in synchrony. Let’s recreate that behavior in simulation! “Fireflies” Starting si...
Problem Statement We have a bunch of small identical radios with LEDs, and we want to animate them as if they were one giant screen. This means we need to know the physical location of each radio r...
Problem Statement Today we create a scalable dynamic decentralized cluster identification protocol. An example to explain: We have a large number of drones (colored circles) that can communicate...
Where is brown on the color spectrum? It seems the rainbow left a color out. Why is that? Light has a single variable, frequency. If you only looked at a single photon at a time then the only poss...
Water is wild, let’s see if we can recreate any of its properties from simulations at the “molecular” level. But let’s not get ahead of ourselves, this isn’t some complicated fluid simulation, nor ...
A new version of content is available.