Evolution of antibiotic resistance

Evolution of antibiotic resistance preview image

1 collaborator

Screen_shot_2018-02-02_at_12.53.50_pm lin xiang (Author)

Tags

(This model has yet to be categorized with any tags)
Visible to everyone | Changeable by the author
Model was written in NetLogo 6.2.0 • Viewed 424 times • Downloaded 25 times • Run 0 times
Download the 'Evolution of antibiotic resistance' modelDownload this modelEmbed this model

Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)


WHAT IS IT?

This model reveals the same scenario in the giant petri dish experiment on the evolution of antibiotic resistance conducted by the researchers from Harvard Medical School and Technion-Israel Institute of Technology (http://news.harvard.edu/gazette/story/2016/09/a-cinematic-approach-to-drug-resistance/). Mutation and reproduction rates are included to expand user's exploration of the process.

HOW IT WORKS

  • The antibiotic concentrations are set at low, medium, high, and peak levels from two sides to the center of the model.
  • The model starts from the strain with resistance between 1-2.
  • The bacteria reproduce asexually.
  • At a chance of defined mutation-rate, the offspring resistance may increase or decrease within the mutation range.
  • In each tick, all bacteria may move a small distance in a random direction.
  • User may adjust the growth rates of the strain with different resistance. Note: we should not assume the growth rate being the same or different. Remember, this is a model. It helps us generate ideas. We need empirical evidence to test the ideas.
  • The nutrient in a patch may run out and lead to the death of the bacteria on the patch. But the nutrient is refilled in the next tick on the patch (which does not happen in real bacterial culture).
  • The model has two views. The bacteria view gives a more realistic view, while the icon view allows the model to run faster.

WHAT CAN YOU TRY?

Quite a few things you can try in this simulation:

  1. How does the mutation range affect the evolution of antibiotic resistance?
  2. How does the growth rate affect the competition among strains with different resistance when antibiotics are present?
  3. How does the growth rate affect the competition among strains with different resistance when antibiotics are absent?
  4. What happens when all strains have the same growth rate?
  5. Does the strain with higher resistance always appear where the antibiotic concentration is higher?
  6. What will happen when you keep increasing dose?

CREDITS AND REFERENCES

This model is made by Dr. Lin Xiang in 2017 and revised in 2021 at the University of Kentucky. If you mention this model in a publication, we ask that you include the citations below.

Xiang, L. (2021). Evolution of antibiotic resistance. Department of STEM Education, University of Kentucky , Lexington, KY.

CC BY-NC-SA 4.0

This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 License. To view a copy of this license, visit https://creativecommons.org/licenses/by-nc-sa/4.0/.

Comments and Questions

Please start the discussion about this model! (You'll first need to log in.)

Click to Run Model

breed [bacteria bacterium]

bacteria-own [resistance age division]
patches-own [drug]

globals [count-clone]

to setup
  ca

 ifelse Choose-view = "Bacteria" [setup-1][setup-2]

  reset-ticks
end 

to setup-1
  setup-bacteria-1
  setup-patches
  ask bacteria [survival]
end 

to setup-2
  setup-bacteria-2
  setup-patches
    ask bacteria [survival]
end 

to setup-bacteria-1
create-bacteria 500
[
  set size 0.75
  set shape "bacteria"
  set age 1
  set resistance 1 + random-float 1
  set-color-resistance
  setxy random-xcor random-ycor]
end 

to setup-bacteria-2
  ask patches with [abs pxcor = max-pxcor]
[sprout-bacteria 1
  [set size 0.85
  set-shape
  set age 1
  set resistance 1 + random-float 1
      ;set color 6]
    set-color-resistance]
  ]
end 

to set-color-resistance
  if resistance < 10 [set color 6]
  if resistance < 25 and resistance >= 10 [set color 66]
  if resistance < 50 and resistance >= 25 [set color 46]
  if resistance >= 50 [set color 15]
end 

to set-shape
  if resistance < 10 [set shape "face happy"]
  if resistance < 25 and resistance >= 10 [set shape "face neutral" ]
  if resistance < 50 and resistance >= 25 [set shape "face sad"]
  if resistance >= 50 [set shape "evil-b"]
end 

to setup-patches
  ask patches [set pcolor 3.25 set drug 50]  ;first set peak drug zone
  ask patches with [pxcor > max-pxcor * 0.2] [set pcolor 2.5 set drug 25]  ;high drug zone
  ask patches with [pxcor < min-pxcor * 0.2] [set pcolor 2.5 set drug 25]  ;high drug zone
  ask patches with [pxcor >= max-pxcor * 0.5] [set pcolor 1.75 set drug 10]  ;medium drug zone
  ask patches with [pxcor <= min-pxcor * 0.5] [set pcolor 1.755 set drug 10]  ;medium drug zone
  ask patches with [pxcor >= max-pxcor * 0.75] [set pcolor 1 set drug 1]  ;low drug zone
  ask patches with [pxcor <= min-pxcor * 0.75] [set pcolor 1 set drug 1]  ;low drug zone
end 

to go
  tick

  ifelse Choose-view = "Bacteria"
  [ask bacteria [move reproduce-1 survival death] overpopulation]
  [ask bacteria [grow reproduce-2 survival death]]

  if count bacteria <= 0 [stop]
end 

to move
  if random 100 < 5
    [rt random 360 fd 0.5 survival]
  set age age + 1
end 

to survival
  if drug > resistance [die]
end 

to reproduce-1
  if color = 6 [if random 20 < Low-res-growth-rate [reproduction]]
  if color = 66 [if random 20 < medium-res-growth-rate [reproduction]]
  if color = 46 [if random 20 < high-res-growth-rate [reproduction]]
  if color = 15 [if random 20 < superbug-growth-rate [reproduction]]
end 

to reproduction
  hatch 1
  [if random 100 < Mutation-rate
    [
    set age 1
    set shape "bacteria"
    ifelse random 2 = 0 [set resistance resistance + random-float mutation-range][set resistance resistance - random-float mutation-range]
    set-color-resistance
    survival
    fd 1
    ]]
end 

to death
  if age >= 10 [die]
end 

to overpopulation
  ask patches [
    let clone bacteria-here
    if clone != nobody and count bacteria-here > 25
    [
     ; if random 2 = 0 [
        ask clone [die]]]
 ; ]
end 

to grow
  set age age + 1
end 

to reproduce-2
  if color = 6 [if random 20 < Low-res-growth-rate [reproduction-1]]
  if color = 66 [if random 20 < medium-res-growth-rate [reproduction-1]]
  if color = 46 [if random 20 < high-res-growth-rate [reproduction-1]]
  if color = 15 [if random 20 < superbug-growth-rate [reproduction-1]]
end 

to reproduction-1
  let p one-of neighbors with [not any? turtles-here]
  if p != nobody [
   hatch 1 [
    set age 1
    set-color-resistance
    set-shape
    if random 100 < Mutation-rate [
    ifelse random 2 = 0
      [set resistance resistance + random-float mutation-range]
      [set resistance resistance - random-float mutation-range]
    ]
      face p
      move-to p
     survival]
  ]
end 

to increase-dose
  ask patches
[set drug drug + 10
if drug >= 200 [set drug 200]]

let no-drug one-of patches with [drug >= 200]
if no-drug != nobody
[user-message ("Certain zones have reached the highest dose. We can't increase it any higher.Click 'OK' to continue.")]

ask patches [
if mean [drug] of patches = 200 and variance [drug] of patches = 0
[set pcolor 0]
]
end 

to decrease-dose
  ask patches
[set drug drug - 5
if drug <= 0 [set drug 0]]

let no-drug one-of patches with [drug <= 0]
if no-drug != nobody
[user-message ("There is no antibiotics in certain zones. Click 'OK' to continue.")]


ask patches [
if mean [drug] of patches = 0 and variance [drug] of patches = 0
[set pcolor 3]
]
end 

There are 4 versions of this model.

Uploaded by When Description Download
lin xiang over 3 years ago Differentiate the shape of agents Download this version
lin xiang over 3 years ago Include two views in the model Download this version
lin xiang over 3 years ago Adjust the parameters Download this version
lin xiang over 3 years ago Initial upload Download this version

Attached files

File Type Description Last updated
Evolution of antibiotic resistance.png preview Preview for 'Evolution of antibiotic resistance' over 3 years ago, by lin xiang Download

This model does not have any ancestors.

This model does not have any descendants.