Git Product home page Git Product logo

chemotaxis's Introduction

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 241 - 345 on apjava1.pptx 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 in the correct position and color
  1. You will then use an array to store many instances of the Bacteria.

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

Darren
Schuyler
Wilson
Adolfo
Kendra
Mikaela
Jayden
Vivian
Kirby
Lydia
Eric
Yev
Joanna
Gina
Robert
Garvin
Edmund
Darya
Janet
Nathan
Samantha
Andrew
Preston
Makoi
Amanda
Chang
Gordon
Emily
Maxwell
Dean
Kenneth
Erica
Thanawat
Ryan
Kenny
Michelle
Tatiana
Erika
Michael
Jenny
Andrea
Hannah
Mike
Katie
Joshua
Jenna
Brandon
Andrew
Nghi
Elton
Sophie
Wilson
Raymond
Karen
Nicholas

chemotaxis's People

Contributors

simart avatar theconnieliu avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.