No preview image

2 collaborators

Default-person Melodie Ting (Author)
Default-person Gina Marcel (Author)


(This model has yet to be categorized with any tags)
Model group MSTU 5027 | Visible to everyone | Changeable by group members (MSTU 5027)
Model was written in NetLogo 6.0-BETA1 • Viewed 256 times • Downloaded 23 times • Run 0 times
Download the 'Firefighters' modelDownload this modelEmbed this model

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


This project allowed for the study of fire and its properties. Two specific additions were created and justified through our interest in exploring the relationship between fires and firefighters. Initially our first response was to expand on this current project by adding wind from the things to add section. However, upon exploration of the work on the Modeling Commons page, this project had already been done.

The most obvious extension that we thought of was the addition of firefighters and the extent of response time. We had created this program to allow for different colors of fire to appear with a longer response time. This means that if it takes a long time for there to be a response, then the fire should burn hotter, thus a difference in color from red to orange to yellow to blue. The addition of firefighters can be generated using the add firefighters button. We had limited the firefighters to a specific range, putting a limitation on the fire that it can stop. This is justified by the thought process that if the fire spreads too far too quickly, it will be beyond the firefighters' control.


This project simulates the spread of a fire through a forest. It shows that the fire's chance of reaching the right edge of the forest depends critically on the density of trees. This is an example of a common feature of complex systems, the presence of a non-linear threshold or critical parameter.


The fire starts on the center of the forest, and spreads to neighboring trees. The fire spreads in four directions: north, east, south, and west.

The model assumes there is no wind. So, the fire must have trees along its path in order to advance. That is, the fire cannot skip over an unwooded area (patch), so such a patch blocks the fire's motion in that direction.


Click the SETUP button to set up the trees (green) and fire (red on the left-hand side).

Click the GO button to start the simulation.

The DENSITY slider controls the density of trees in the forest. (Note: Changes in the DENSITY slider do not take effect until the next SETUP.)

Click the ADD FIREFIGHTERS button to start fighting fire

The time slider controls the color of the flame


When you run the model, how much of the forest burns. If you run it again with the same settings, do the same trees burn? How similar is the burn from run to run?

Each turtle that represents a piece of the fire is born and then dies without ever moving. If the fire is made of turtles but no turtles are moving, what does it mean to say that the fire moves? This is an example of different levels in a system: at the level of the individual turtles, there is no motion, but at the level of the turtles collectively over time, the fire moves.


Set the density of trees to 55%. At this setting, there is virtually no chance that the fire will reach the right edge of the forest. Set the density of trees to 70%. At this setting, it is almost certain that the fire will reach the right edge. There is a sharp transition around 59% density. At 59% density, the fire has a 50/50 chance of reaching the right edge.

Try setting up and running a BehaviorSpace experiment (see Tools menu) to analyze the percent burned at different tree density levels.


What if the fire could spread in eight directions (including diagonals)? To do that, use "neighbors" instead of "neighbors4". How would that change the fire's chances of reaching the right edge? In this model, what "critical density" of trees is needed for the fire to propagate?

Add wind to the model so that the fire can "jump" greater distances in certain directions.

A possible extension to this model could be to relate the response time with the ability to fight the fire. If the flame is too strong, perhaps the firefighters will not survive as opposed to quenching the fire.


Unburned trees are represented by green patches; burning trees are represented by turtles. Two breeds of turtles are used, "fires" and "embers". When a tree catches fire, a new fire turtle is created; a fire turns into an ember on the next turn. Notice how the program gradually darkens the color of embers to achieve the visual effect of burning out.

The neighbors4 primitive is used to spread the fire.

You could also write the model without turtles by just having the patches spread the fire, and doing it that way makes the code a little simpler. Written that way, the model would run much slower, since all of the patches would always be active. By using turtles, it's much easier to restrict the model's activity to just the area around the leading edge of the fire.

See the "CA 1D Rule 30" and "CA 1D Rule 30 Turtle" for an example of a model written both with and without turtles.


  • Percolation
  • Rumor Mill



If you mention this model or the NetLogo software in a publication, we ask that you include the citations below.

For the model itself:

Please cite the NetLogo software as:


Copyright 1997 Uri Wilensky.


This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. To view a copy of this license, visit or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.

Commercial licenses are also available. To inquire about commercial licenses, please contact Uri Wilensky at

This model was created as part of the project: CONNECTED MATHEMATICS: MAKING SENSE OF COMPLEX PHENOMENA THROUGH BUILDING OBJECT-BASED PARALLEL MODELS (OBPML). The project gratefully acknowledges the support of the National Science Foundation (Applications of Advanced Technologies Program) -- grant numbers RED #9552950 and REC #9632612.

This model was developed at the MIT Media Lab using CM StarLogo. See Resnick, M. (1994) "Turtles, Termites and Traffic Jams: Explorations in Massively Parallel Microworlds." Cambridge, MA: MIT Press. Adapted to StarLogoT, 1997, as part of the Connected Mathematics Project.

This model was converted to NetLogo as part of the projects: PARTICIPATORY SIMULATIONS: NETWORK-BASED DESIGN FOR SYSTEMS LEARNING IN CLASSROOMS and/or INTEGRATED SIMULATION AND MODELING ENVIRONMENT. The project gratefully acknowledges the support of the National Science Foundation (REPP & ROLE programs) -- grant numbers REC #9814682 and REC-0126227. Converted from StarLogoT to NetLogo, 2001.

Comments and Questions

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

Click to Run Model

globals [
  initial-trees   ;; how many trees (green patches) we started with
  burned-trees    ;; how many have burned so far

breed [fires fire]    ;; bright red turtles -- the leading edge of the fire
breed [embers ember]  ;; turtles gradually fading from red to near black

to setup
  set-default-shape turtles "square"
  ;; make some green trees
  ask patches with [(random-float 100) < density]
    [ set pcolor green ]
  ;; make a column of burning trees
  ask patches with [pxcor = -5 + random 10]
    [ ignite ]
  ;; set tree counts
  set initial-trees count patches with [pcolor = green]
  set burned-trees 0

to fight-fire
  set-default-shape turtles "person service"

  ;; randomly distribute firefighters
  create-turtles firefighters [
    set color pink
    set xcor -50 + random 100
    set ycor -125 + random 250
    set size 7  ];; easier to see
    ask turtles with [color = pink]
      [ask turtles with [color != pink] in-radius 10 [set pcolor red - 4 die]]

to go
  if not any? turtles with [color != pink]  ;; either fires or embers
    [ stop ]
  ask fires
    [ask neighbors4 with [pcolor = green]
        [ ignite ]
      set breed embers ]

;; creates the fire turtles

to ignite  ;; patch procedure
  sprout-fires 1
  [if (time >= 0) and (time < 10)
    [ set color red ]
    if (time > 10) and (time < 20)
      [ set color orange ]
  if (time > 20) and (time < 30)
    [ set color yellow ]
  if (time <= 40) and (time > 30)
    [set color blue ]
  set pcolor black
  set burned-trees burned-trees + 1

;; achieve fading color effect for the fire as it burns

to fade-embers
  ask embers

    [set color color - 1  ;; make red darker
      if color < red - 3.5     ;; are we almost at black?
        [ set pcolor color
          die ] ]

; Copyright 1997 Uri Wilensky.
; See Info tab for full copyright and license.

There are 6 versions of this model.

Uploaded by When Description Download
Melodie Ting over 5 years ago Firefighters Download this version
Melodie Ting over 5 years ago Firefighters Download this version
Melodie Ting over 5 years ago Firefighters Download this version
Melodie Ting over 5 years ago Firefighters Download this version
Melodie Ting over 5 years ago Firefighters Download this version
Melodie Ting over 5 years ago Firefighters Download this version

Attached files

No files

Parent: Effects of Different Variables on Forest Fires 2

This model does not have any descendants.

Graph of models related to 'Firefighters'