Team:NAWI Graz/Model


In order to identify potential problems at an early stage and to plan the implementation of our project in the best possible way, we started very early on with the creation of a model that characterizes the entire process. The model shows three working example applications for our bacteria-robot interface. In the first example, the robot can navigate through a maze using the bacteria that express a fluorescent protein upon heat shock. In the second example, it can follow a light source using the bacteria that respond to pH change (see below). In the third case, the robot can use the same bacteria to navigate through a maze. Although controlling the robot through the maze also works with temperature-sensitive bacteria that react (as we were later able to prove in real experiments), pH control works a lot more precisely. But more on that later.


The model was created using the Netlogo programming language. This programming language provides not only a good platform for this task (the robot was implemented as an agent in this agent-based language), it also provided us with a tool to publish the model on the Internet. This way, we could convey the concept of our project to a broad public, other teams were able to investigate our project for weaknesses and help us with planning and creating mazes to test the capabilities of the biohybrid system. Furthermore, we were able to use our model at various events (“Spritzerstandl”, Nerd-Nite,...) to illustrate our project ideas.

The model uses a two-dimensional lattice, consisting of individual cells (patches). These patches are assigned different properties: Part of the visible model is defined as an arena for the robot, another part as a bioreactor with our interaction and measurement chambers. An agent is initiated at a certain point in the arena. This agent has a left and a right distance sensor, which are based on the front of the robot, mimicking its real-life counterpart the THYMIO II robot. The simulated distance sensors function like their real counterparts: They consist of an infrared LED and a brightness sensor that is tuned to the frequency of the LED. If there is no obstacle in front of the sensor, no light is reflected by anything. If an object is in front of the sensor, light is reflected and can be detected by the sensor. The closer the object is, the more light is being reflected. If a threshold is introduced, it can indicate, if exceeded, that an object is in front of one of the sensors. The two sensors used cover an area at an angle of 60 degrees and a maximal distance of about 10 cm. Depending on the mode set, the robot and its associated bacteria behave differently.

Model Download

If you want to try out this software yourself, please just download the .zip file and open the colibot_model.html in your browser! Screenshot of the online video conference discussion.
Fig. 1: Robot and its associated bacteria behave differently according to the mode set.

Drawing the Maze

The patches in the simulation that are marked as belonging to the arena, can have two different characteristics: they can be normal arena surfaces (marked in white, the robot can pass these patches) or impassable walls (marked black, the robot can’t pass these patches). If a maze is about to be designed, the button "draw" must be activated, afterwards the mouse cursor can be used to convert an arena surface to an impassable wall by clicking on empty arena space.

Vid. 1: Drawing the maze.

Temperature based Robot Controller to navigate through a Maze

The simulation consists of a loop of commands. Each loop of the simulation begins with the sensors of the robot being activated. There are only two options for the heat-shock based robot controller: the robot senses a wall in front of it or not. This information is transferred to the bioreactor. The information transfer is displayed in the model by a color change of the receiving antenna (upper antenna of the bioreactor, green indicating no obstacle detection, red indicating a wall detection) of the bioreactor. This step serves to illustrate the functionality of the system. In real experiments, the result of the wall detection is transmitted to the bioreactor without any visible color change of any antenna.

If an obstacle is detected by the robot, the bacteria are heated for a certain time.

Since the heating takes at least 15 minutes in the experiments, the robot cannot move during this time. A relatively sluggish process is the result. In order to increase the speed in the real experiments, we did not heat up and measure the entire bacterial culture, but instead sequestered off a small sample and heated, measured and discarded it. Furthermore, the speed of the videos of the simulation was increased.

After heating, the system measures whether a fluorescing protein has been expressed. If so, a red color should be measurable in the simulated bioreactor, the other case is displayed gray or without color change.

This measurement is in turn sent to the robot (represented by a color change of the bioreactor’s transmission antenna: green with no perceived color change of the bacteria, red with a positive fluorescence measurement). The robot responds accordingly: If no fluorescence protein was measured in the reactor, the robot moves forward approx. 10 cm (sensor range). When detecting a wall, the robot rotates 47 degrees to the right (this prime number was chosen to prevent the robot from getting trapped in certain sections by moving back and forth between walls). The robot does not actively navigate through the arena by creating a map of the environment or similar elaborated methods, it is simply always turning in a certain direction when detecting a wall. This can be interpreted as a random-like-walk, which after a certain time should lead the robot to all areas within a maze, and thus solve it eventually.

Vid. 2: Demonstrating the robotic controller based on the expression of a heatshock protein.

pH based Robot Controler

See pH-response plasmid and pH interaction module
The robot controller based on E. coli that can differentially express two fluorescent proteins (according to the medium’s pH) offers more possibilities than the (single color) temperature-based controller. It allows to navigate the maze in a more sophisticated way, and thus, as a second example, we let the robot follow a light source.

Navigating through a Maze

As with temperature-based control, the robot first uses its proximity sensors to measure whether there is a wall in front of it. As in the previously described controller, not the whole bacterial culture is measured, but only a fraction is exposed to the change in pH (and its fluorescence recorded).

A difference between the controllers is that while the temperature-controller treats the proximity sensors on both sides of the robot equally, the pH-controller makes a distinction between left and right. If the sensorvalue of one of the proximity sensors exceeds a threshold, the robot distincts to which side the obstacle is closer to. If the wall is closer to its left side, the pH value in the measured bacterial sample is lowered. If the wall is closer to its right side, the pH is increased. If the sensor threshold is not reached, the pH of the suspension is reset to its original value (i.e., a new sample of bacteria from the culture replaces the one with altered pH). Thus, the chemical environment of the bacteria acts as a kind of memory of the robot's sensor values and allows the robot to follow curves to the left or to the right without abrupt changes. The pH is displayed by the expression of fluorescent proteins, the fluorescence chamber measures which proteins have been expressed and relays this information to the robot. The robot can either turn to the left or to the right, depending on the expression of either the one or the other fluorescent protein.

Vid. 3: Demonstrating the robotic controller based on altering pH-values of the bacteria environment.

Following a Light Source

As described above, the distance sensors of the robot consist of two different components: an LED and a photosensor. Using only the photosensor of the robot, a controller can be created that allows the robot to follow a light source. The sensor readings ​​correlate with the pH change of the bacterial suspension: depending on the light value of one sensor, the pH value is increased, and according to the light values measured by the other sensor, the pH value is decreased.

For example, the left sensor lowers the pH and the right increases it. If the light source comes from the left side of the robot, the total pH of the bacterial culture is lowered more than it is increased, thus the suspension will be acidic in total. If fluorescence proteins in the measuring chamber are detected that indicate an acidic pH, the robot moves to the left. If the light source comes from the other side, the pH increases in total and an alkaline environment will be indicated by other fluorescence proteins, thus the robot turns to the right. With this simple method, the robot can very robustly follow a light source.

Vid. 4: Robot following a light source.