JuliaCon 2020 (times are in UTC)

Boids: Dancing with Friends and Enemies
07-30, 12:40–12:50 (UTC), Purple Track

Boid ("bird" pronounced in New York dialect) is an artificial life program
simulating flocking behaviour. In this fun, short talk I will describe one
boids simulation, a Dance with Friends and Enemies, and demonstrate a Makie
visualization that allows manipulating the swarm behaviour in realtime.


A Dance with Friends and Enemies is a Boids artificer life program introduced on
the Mathematica Forums. In
this simulation each "dancer" has a randomly chosen friend and enemy.

At each beat of the dance, the dancers
1. Take a step to the center of the dancefloor
2. Take a step to their friend
3. Take a step away from their enemy.

Also, at random intervals a dancer will choose new friends and enemies.

The sizes of each of these steps, as well as the frequency of partner switches,
are parameters which affect the emergent, flocking behaviour.

In this talk I will quickly describe a Julia implementation of this simulation,
which is performant with large numbers of dancers.

Further, I will demonstrate the emergent flocking behaviour with a visualization
in Makie.jl. This will highlight some of Makie's features. In particular, the
simulation will have sliders allowing us to modify the parameters and see the
affect on flock behaviour plotted efficiently in realtime.

Graduate student in Machine Learning at University of Toronto