MCB419 logo  




Homework

MCB 419 Homework 3 (Spring 2009)


Paramecium - collision response

In this assignment you'll learn how to attach sensors to an agent in NetLogo and you'll also explore the idea of using cell membrane voltage as a signal for controlling behavior.

You will start with a template program and make modifications to implement a collision response for a model paramecium. Your paramecium will have two sensors: a front sensor (green) that causes a depolarization of the paramecium's membrane voltage when activated, and a rear sensor (red) that causes a hyperpolarization of the membrane voltage.

Here is the template file: hw03_template.nlogo

Answer the questions found on the 'Assignment' tab and email your responses along with a copy of your simulation file to mcb419@gmail.com with 'hw03' in the Subject line.

This assignment is due by 11:59PM (midnight) on Tue, Feb 10.

Specific Design Requirements/Guidelines

template

sensors

  • sensors are activated when they come in contact with a patch that is not 'water' color (a shade of cyan), or when they come in contact with the mouse pointer
  • front sensor (green): causes depolarization (vm = 1.0) of the paramecium's membrane voltage when activated
  • rear sensor (red): causes a hyperpolarization (vm = -0.5) of the membrane voltage when activated

voltage behavior

  • when neither sensor is activated, the paramecium's membrane voltage should decay toward zero with a time constant of approximately 10 ticks

bot behavior - collision response

  • the bot's normal velocity should be 0.5 units per tick
  • the bot's forward velocity should never be greater than 2.0 or less than -2.0
  • when the front sensor encounters an obstacle, the bot should back away from the obstacle while executing a turn (so that the bot will be pointing in a new direction when it resumes forward motion)
  • the 'backup and turn' motion should be smooth and continuous; the collision response should take place over a time span of approximately 10-20 time steps
  • when the rear sensor encounters an obstacle, the bot should temporarily increase its forward velocity (and optionally execute a turn), for a duration of approximately 10-20 time steps
  • SEE THE DEMO PROGRAM FOR AN ILLUSTRATION OF THE DESIRED BEHAVIOR (use the slider to slow down the execution speed enough so that you can observe the color changes of the paramecium body following a collision)

Assignment

You can access a copy of the assignment file HERE, or copy and paste from the text below.

=================================================================
MCB 419 Homework 3 (Spring 2009)

When you've finished answering all the questions, email a copy 
of this file (hw03.txt) with your responses as PLAIN TEXT in
the main body of the email message, and attach a copy of your
Netlogo simulation file (e.g. hw03.nlogo). 

Email to mcb419@gmail.com with 'hw03' in the Subject line. 

=================================================================

Part I: Paramecium collision response

1. Download the template file (hw03_template.nlogo) 
   and run it with the 'use-stick-pins' switch ON.
   Click 'go' and touch the front and rear sensors 
   with the mouse cursor. What values does the 
   voltage assume?  

2. Modify the simulation so that the membrane voltage
   decays back to zero when the sensors are no longer 
   activated, as in the "Demo" version on the web. 
   (You may want to slow down the speed slider to
    see the transitions more clearly.)

   In your code, use the statement "set vm (K * vm)" 
   where K is a constant that you determine.
   What value of K will cause the membrane voltage to 
   fall to approximately 37% (1/e) of its initial value 
   over the course of 10 ticks?  Show how you
   calculated this value (and use it in your 
   simulation). 
   

3. With the above code modification in place, turn the 
   'use-stick-pins' switch OFF. Run the simulation and
   describe what happens. Set the speed slider to a value
   that is slow enough that you can see the color changes.
   How does the bot react to obstacles and boundaries?

4. Describe the algorithm that you intend to use to 
   implement a voltage-dependent collision response.
   How will the bot's speed depend on membrane voltage?
   How will its turning behavior be influenced by 
   voltage?


Part II: Weekly Reading Assignment


5. (Cariani article) What kind of 'syntax' did you use to 
   create your E. coli simulation of adaptive klinokinesis 
   last week? What kind of 'syntax' is used by the biological 
   organism (E. coli) for this task?  Do you think that the
   syntax an agent uses for controlling behavior determines the 
   level of 'intelligence' that can be achieved?

6. (Braitenberg article) Describe the wiring diagram and the
   behavior of Braitenberg's Vehicle #3b (explorer).  How
   does its behavior differ from that of Vehicle #2a (coward)? 

 
=================================================================
END OF THE ASSIGNMENT
=================================================================

Solution

This is just one possible solution. You can download the full NetLogo file (hw03_solution.nlogo), or just look at the code below.



Copyright © Mark E. Nelson, University of Illinois at Urbana-Champaign, 2005-2009. All rights reserved.