Bumblebee Pollination

About

There is a world with bees and flowers. The bees move from flower to flower collecting pollen and taking it to other flowers, thus pollinating them. Every 14 seconds (14 days in the real world), 1 more bumblebee is born. The bees turn yellow when they are carrying pollen (after they have touched a flower) and turn back to black when they have touched a second flower. The bumblebees die after 25 (days in the real world). One flower is “born” every 30 seconds and dies every 50 seconds. When the flower is pollinated, it turns pink.

Question:

Hypotheses:

Results and Behaviors

As the bees move randomly around the canvas, they bounce off the walls and against the flowers. When a bee first touches a flower, it turns yellow (to show that it is carrying pollen) and when a yellow bee touches a flower, it turns back to black and the flower turns pink to show that the bee has successfully pollinated the flower. We hypothesized that if the number of bees increased, the flowers would be pollinated more quickly. We created three different reset buttons with different numbers of bees and observed the results.

Expectations

Originally, we expected only the flowers that had been pollinated to reproduce, but we found that in order to accurately depict the information that we found, we had to rely on the number of steps (which we used as a way to measure the time that had passed) for the flowers’ death and birth rate. However, the rest of our model matched our expectations in the sense that we created comprehensive indicators that allowed us to show certain scenarios.

Changes that We Had to Make

Once we had created our model, we realized that the flowers needed to have a birth and death rate as well. To account for this increase in organisms, we increased the size of the world as well. We also changed the birth and death rate of the bees and flowers to be more true to the statistics that we found, as well as changing the number of bees that we started with.

What We Learned

From this project, we learned more about different programming concepts and functions in Javascript, such as using the splice function to remove an item from an array and remembering not to use magic numbers. We also learned about the importance of splitting the project into versions and making small changes each time to make the program easier to test along the way.