In this circle we investigated something called the “falling sand pile”. But sand is boring, so instead we studied falling chickens! The primary rule of falling chickens is

When 4 chickens land in someone's backyard, they "break out" and go to the neighbors' yards instead.

Summary

In the process we discovered a new sequence: When the chickens fall on one square in the middle of the grid, how long does it take for the chicken fractal to spread n units up from the center? Our answer so far:

1, 4, 16, 44, 88, 144, 208, 320, 408, 512, 672, 788, 948, 1096, 1288, 1552.

We have yet to analyze the pattern.

Here is the game and questions

How Many Backyards?

Click on the Yards to Add Chickens

Or Make It "Rain Chickens":

 

Sound Effects?

0 chickens 1 chickens 2 chickens 3 chickens
Number of Yards 0 0 0 0

Math Questions

  1. If one of the yards has 2 or more chickens, is it possible to go back to all yards having less than 2 chickens?
  2. Does the order at which chickens arrive change the result? (or just the locations where they arrive)
  3. How many falling chickens does it take for the locations to stop changing so much?
  4. If chickens always fall in the same spot, how does the total number of chickens relate to the "range" of the chickens?
  5. What percentage of yards end up with 0, 1, 2, or 3 chickens?
  6. Is it possible to add enough chickens to the middle of the neighborhood to result in no chickens in the middle?
  7. Does it matter whether chickens arrive in the "middle" of the neighborhood (versus the yards near the edges)?
  8. What happens if you add chickens to one yard every time?
  9. What happens if you alternate adding chickens between two yards?
  10. Which is better, spreading the chickens out in a consistent way, or letting them fall randomly?

Resources

This activity is an exploration of a class mathematical objects called abelian sandpiles. We highly recommend reading Jordan Ellenberg’s wonderful article about sandpiles.

In addition, we thank Marcel Salathé for a nice outline of the code to implement the “chicken rule”.