/Chemotaxis

An AP Computer Science A programming assignment for Mr. Simon's APCSA course at Lowell High School, San Francisco, USA

Primary LanguageJavaScript

Chemotaxis

Chemotaxis is when an organism moves toward or away from a chemical stimulus like food. Biologists write software using random walks to model and study how very small organisms like bacteria search for food. In this assignment you will create a simulation of organisms moving away from a starting position using a random walk. To start the assignment, fork this repository. You may find slides 81 - 185 on OOP--Classes and the Arrays of Objects worksheet helpful. NOTE: you must use Math.random() for all the random numbers in this assignment.

Requirements

  1. A class to represent a single bacteria or some other single organism. The class will have the following members:
    • 3 ints which hold the x and y coordinates of the bacteria position, and the bacteria color.
    • A constructor which initializes the 3 ints
    • void move() which moves the bacteria in a random walk pattern.
    • void show() which draws the bacteria using the three member variables
  2. You will then use an array to store many instances of the Bacteria.
  3. Personalize the title, headline and footer of index.html

Extensions

If you have extra time, you might try to have the bacteria move in a "biased random walk" towards some stimulus like a piece of food or the mouse. You can use the mouse buttons to adjust the bias towards or away from the mouse. You can modify your class so the bacteria have a finite lifespan and can reproduce. You can simulate other organisms besides bacteria and even have multiple types of organisms like a predator and prey. Your simulation doesn't have to look like any other. Have fun and be creative.

Samples of Student Work

Marisa
Thomas
Norton
David
Omar
Wen
Briana
Josh
Lawrence
David
Anthony
Angel
Wesley
Jocelyn
Lucian
Nathan
Calvin
Esther
Celina
Frida
Mari
Lily
Jessie
Eloy
Megan
Iryne
Vicky
Mia
Fressia
Juliana
Amy
Dylan
Adam
Alex
David
Akira
Audrey
Caitlin
Brendan
Jun
Daniel
Gordon
Raymond
Alex
Gee
Sean
Emma
Johnny
JT
Michael
Jennifer
Andrew
Michelle
Jayde
Angelica
Ian
Brendan
Branson
Andy
Susan
Marvin
Ian
Megan
Nathan
Eric
Cindy
Willis
Dalton
Jason
Esme
Albert
Henry
Matthew
Mampu
Annie
Brandon
Jalen
Richard
Racine
Kam
Devin
Lu-Aung
Kristi
Timmy
Marc
Ethan
Peter
Andy
Eunice
Alexis
Carmen
Alan
Rowan
Lily
Wilson
Jing
Alyssa
Melinda
Annie
Jack
Kris
Lena
Emi
Lancy
Lianne
Joey
Bryan
Katie
Athena
Sarah
Maxwell
Claudia
Emily
Jacky
Raymond
Natalie
Ashlyn
Jennifer
Wilsomn
Warren
Lalit
Ryan
Emma
Jaime
Erin
Hannah
Zachary
Sherissa
Victor
Emily
Jeffrey
Vincent
Jonathan
Crystal
Wesley
Oona
Emil
Alex
Justin
Nick
Scott
Tristan
Tim
Chanel
Jasmine
Chase
Mariann
Albert
Michelle
Ben
Kelly
Trevor
Gordon