Difference between revisions of "CS382:Fire"

From Earlham CS Department
Jump to navigation Jump to search
(Lab)
(Evaluation)
 
(6 intermediate revisions by the same user not shown)
Line 55: Line 55:
 
*** Duration of Burning: where burning trees may stay burning longer
 
*** Duration of Burning: where burning trees may stay burning longer
 
** As with density, tuning these "knobs" can produce different behaviors
 
** As with density, tuning these "knobs" can produce different behaviors
 +
*** In the simple model used in this lab, we only have Density
 +
*** '''''Note: It would be rather easy for a TA (or someone in a similar position) to code up the other attributes.'''''
 +
** This provides the notion of a "critical parameter"
 +
*** That is, one of the attributes of the simulation has the potential to cause radically different behavior based on its value
 +
**** See the "10x{40..70}%" graph in the "Example Graphs" section of the Lab Information below for an example of Density exhibiting this behavior.
  
 
== Lab ==
 
== Lab ==
Line 61: Line 66:
 
The structure of this lab is loosely based on [http://wiki.sc-education.org/images/b/bd/BobsFire.doc this].
 
The structure of this lab is loosely based on [http://wiki.sc-education.org/images/b/bd/BobsFire.doc this].
  
Data should be recorded in a spreadsheet for easy graphing.
+
Data should be recorded in a spreadsheet program (i.e. Excel or OpenOffice) for easy graphing.
  
 
==== Process ====
 
==== Process ====
Line 74: Line 79:
 
# Graph your data.
 
# Graph your data.
 
# ''What does the graph look like?''
 
# ''What does the graph look like?''
## '''Possibilities: constant, linear, logarithmic, exponential'''
+
## '''Possibilities: constant, linear, logarithmic, exponential''' (see the examples below)
 
 
 
# ''What might you be able to conclude from this?''
 
# ''What might you be able to conclude from this?''
 
# Run it 10 times at {50,60,70}% and record the average for each set
 
# Run it 10 times at {50,60,70}% and record the average for each set
Line 89: Line 93:
 
==== Write-up ====
 
==== Write-up ====
 
* Write a description of what you did.
 
* Write a description of what you did.
* Attach a printout of your data, including a graph or two.
+
* Attach a printout of your data, including any graphs that you find necessary to illustrate what you learned.
* Write a conclusion describing how this lab <font color="blue">...?</font>
+
* Write a short conclusion (a paragraph or two) describing how this lab taught you about critical parameters and the necessity of parameter sweeping.
  
 
==== Example graphs ====
 
==== Example graphs ====
Line 144: Line 148:
 
# '''512'''
 
# '''512'''
 
# 1024
 
# 1024
 
* Exclude the one that spreads the fire the least:
 
# Wind
 
# Ground Slope
 
# Dry Wigs
 
# '''Large logs'''
 
  
 
==== Quiz Questions ====
 
==== Quiz Questions ====
 
* Define both Rule 30 and Rule 110 of CA (Cellular automaton) and describe their effect /action.
 
* Define both Rule 30 and Rule 110 of CA (Cellular automaton) and describe their effect /action.
 +
** Rule 30:
 +
*** Cellular Automaton rule that exhibits seemingly random behavior. Often used as a random number generator.
 +
** Rule 110:
 +
*** This is the only Cellular Automaton rule that has been proved to be Turing complete.
 
* Describe one of possible approaches to fire modeling in the best manner you can. (more details better)
 
* Describe one of possible approaches to fire modeling in the best manner you can. (more details better)
 
* Describe the process of applying data assimilation to fire modeling.
 
* Describe the process of applying data assimilation to fire modeling.

Latest revision as of 10:52, 4 May 2009

Fire

Overview

This short unit about the spreading of forest fires is intended to teach some of the basics of using a simple pre-made model/simulation. While there are many benefits to using this model, the ability to physically verify the results proves to be difficult. It turns out that the rudimentary simulation of a wild fire spreading through a forest of varying densities can be implemented in a wide range of tools including NetLogo, AgentSheets, Vensim, Excel, and possibly others. Thus, this single model can teach the basics of simulation techniques like agent modeling, cellular automata, and systems dynamics without requiring students to relearn or rediscover what results to expect and allows them to focus on the methods and the techniques.

Background Reading for Teachers and TAs

WildFire Modeling (wikipedia)

  • Geared a little bit towards the teachers and upper end students. Meant largerly as an intro into what we're looking at.

Agent-based modeling and simulation of wildland fire suppression

  • Much more so geared towards the teachers than students. This is a fairly technical article and is meant to give an overview of an Agent-Based version of wildfires.

Reading Assignments for Students

Cellular Automata (wikipedia)

  • Parts of this article are fairly technical and mathematical, however I think there's a lot of good information here. Perhaps we could write up a summary.

History of Cellular Automata

  • Some of the language might be tough for intro-students, however there's some fascinating information here on why cellular automata are important.

Reference Material

Lecture Notes

Lecture 1

  • Brief cover of wildfires, to understand the basics of what we're going to try to model
    • Fires can start any number of ways (lightning, careless smokers, etc.)
    • Fires can spread in many ways (more lightning, wind, dense undergrowth, etc.)
  • Start covering basic dynamic modeling methods (brief overview, we'll cover Cellular Automata later)
    • Cellular Automata
      • Cells of a grid can be in some state
        • Think of a sheet of graph paper and you can either shade in a square or not
      • One cell's state may or may not affect its neighbors
      • Changes based on a set of rules
    • Agent Modeling
      • Independent agents whose behavior is governed by sets of rules
    • Systems Dynamics
      • Sets of math equations govern the output of a set of graphs
      • Output of equations is governed by rates

Lecture 2

  • More in-depth coverage of cellular automata
  • Game Of Life - canonical example [GoL on Wikipedia]
    • Grid where each cell can either be alive or dead
      • Cells can either be alive or dead based on the number of living/dead cells around them
    • This rule controls the entire simulation and can produce some seemingly complex results
  • The wildfire model we'll use is a special-case of the Game of Life
    • Trees can either be alive, burning, or smoldering
      • Alive trees can be caught on fire by neighboring burning trees and become burning
      • Burning trees can catch neighboring alive trees on fire and can become smoldering after a certain time
      • Smoldering trees can do nothing
    • In the basic model, the average distance between trees (i.e. the forest's density) can be controlled
    • Certain aspects can be seen by varying this control
      • Lightning: where new fires can be started at a random location
      • Wind: where fire has a tendency to spread in certain directions
      • Wetness: where certain trees may have a decreased chance to catch on fire
      • Duration of Burning: where burning trees may stay burning longer
    • As with density, tuning these "knobs" can produce different behaviors
      • In the simple model used in this lab, we only have Density
      • Note: It would be rather easy for a TA (or someone in a similar position) to code up the other attributes.
    • This provides the notion of a "critical parameter"
      • That is, one of the attributes of the simulation has the potential to cause radically different behavior based on its value
        • See the "10x{40..70}%" graph in the "Example Graphs" section of the Lab Information below for an example of Density exhibiting this behavior.

Lab

This lab will consist of learning how to use NetLogo's wildfire model to see how minor changes in parameters can, under certain circumstances, producing wildly different results.

The structure of this lab is loosely based on this.

Data should be recorded in a spreadsheet program (i.e. Excel or OpenOffice) for easy graphing.

Process

  1. Open up NetLogo. Go to the model library and under the Earth Science category, open "Fire".
  2. Experiment with different values for the density.
    1. Try 1%, then 99%. Record the results for each of these.
      1. This result is displayed in the "Percent Burned" box on the screen.
    2. Take a guess at what will happen at 60%, then try it. Record your result.
    3. How close was your guess? How close was your lab partner's?
  3. Start taking some more data:
    1. Record the percent burned at 50%, 60%, 70%.
  4. Graph your data.
  5. What does the graph look like?
    1. Possibilities: constant, linear, logarithmic, exponential (see the examples below)
  6. What might you be able to conclude from this?
  7. Run it 10 times at {50,60,70}% and record the average for each set
  8. Now graph the averages
  9. Does it look different?
    1. Will probably be closer to linear.
  10. What new conclusions can you make, if any?
  11. Record results for burning at {50,55,60,65,70}% and graph it when you have all of them.
    1. How did that change your graph?
  12. Again, do this 10 times for {50,55,60,65,70}%, average each, and graph them.
    1. How did that change your graph?

Write-up

  • Write a description of what you did.
  • Attach a printout of your data, including any graphs that you find necessary to illustrate what you learned.
  • Write a short conclusion (a paragraph or two) describing how this lab taught you about critical parameters and the necessity of parameter sweeping.

Example graphs

Software

Bill of Materials

As long as the students don't try to actually burn down a forest to validate these models, there is no cost for this lab.

Evaluation

CRS Questions

  • Which of these is a reasonable method for simulating Wild Fires?
  1. A technique called "systematic dynamical conflagration"
  2. Going out back campus and ....
  3. Coding all properties of trees into a computer program
  4. A technique called "cellular automata"
  • What is another name for "Cellular Automata"?
  1. Automated Telecomune
  2. Tessellation Automata
  3. Biological Automated Simulation
  4. Systems Dynamics
  • Who is credited for doing some of the first work in Cellular Automata?
  1. Stephen Wolfram
  2. John von Neumann
  3. Alan Turing
  4. Stanislaw Ulam
  • Which of the following affects wildland fire [danger level] the most if present:
  1. ground slope/shape
  2. wind & wind changes
  3. day/night cycle
  4. high air humidity
  • On 2D CA simulation, how many possible (black/white cell)patterns are there for the cell and its neighboring cells?
  1. 128
  2. 256
  3. 512
  4. 1024

Quiz Questions

  • Define both Rule 30 and Rule 110 of CA (Cellular automaton) and describe their effect /action.
    • Rule 30:
      • Cellular Automaton rule that exhibits seemingly random behavior. Often used as a random number generator.
    • Rule 110:
      • This is the only Cellular Automaton rule that has been proved to be Turing complete.
  • Describe one of possible approaches to fire modeling in the best manner you can. (more details better)
  • Describe the process of applying data assimilation to fire modeling.
  • Name and describe objectives and limitations of fire modeling.

Fire's Metadata

Scheduling

This should be very early in the semester as it is a fairly simple and short topic. Given its simplicity, it should only be a single week.

Concepts and Techniques

This unit should teach the basics of using someone else's model, as well the importance of conducting multiple runs with different parameters in order to gain an accurate understanding of the effect of the model. The WildFire model used in this unit provides a brief introduction to the concepts of VVA (Verification/Validation/Accreditation). Specifically, a rough notion of how a WildFire spreads can be obtained using this model, but it should be stressed that this model is nowhere near accurate when compared to one would actually happen.

General Education Alignment

Analytical Reasoning Requirement

Abstract Reasoning

From the [Catalog Description] Courses qualifying for credit in Abstract Reasoning typically share these characteristics:

  • They focus substantially on properties of classes of abstract models and operations that apply to them.
    • None. This unit deals almost entirely will quantitative reasoning, and would be hard to expand into the abstract world.
  • They provide experience in generalizing from specific instances to appropriate classes of abstract models.
    • Partial. Parameter sweeping (one of the primary goals of this unit) can be used in almost every instance of computational simulations. In this sense it can be expanded from this specific model to others, yet it is more of a quantitative method of analysis than it is abstract.
  • They provide experience in solving concrete problems by a process of abstraction and manipulation at the abstract level. Typically this experience is provided by word problems which require students to formalize real-world problems in abstract terms, to solve them with techniques that apply at that abstract level, and to convert the solutions back into concrete results.
    • Partial. The Verification/Validation/Accreditation process teaches the students how to take the procedures they learn using models and apply them to every aspect of scientific discovery. The fire unit attempts to teach students proper use of scientific models to insure that the questions they want answered are being answered by the model they're using.

Quantitative Reasoning

From the [Catalog Description] General Education courses in Quantitative Reasoning foster students' abilities to generate, interpret and evaluate quantitative information. In particular, Quantitative Reasoning courses help students develop abilities in such areas as:

  • Using and interpreting formulas, graphs and tables.
    • Complete. This unit is intended to teach the student how to gather data using a specific tool and analyze that data to come to some conclusion.
  • Representing mathematical ideas symbolically, graphically, numerically and verbally.
    • Complete. The student will need to create a lab write-up in which they express why they went about collecting the necessary amount of data. They will also need to include examples of said data and an explanation of what conclusion(s) can be drawn from that data.
  • Using mathematical and statistical ideas to solve problems in a variety of contexts.
    • Complete. While this unit deals almost entirely with a single tool, the idea of parameter sweeping is necessary in every form of simulation and is thus applicable in a wide range of contexts.
  • Using simple models such as linear dependence, exponential growth or decay, or normal distribution.
    • Complete. This wildfire model clearly shows how the number of burned trees is directly dependent on certain features of the forest (density, wetness, etc) and how minor changes in those features can dramatically change the outcome.
  • Understanding basic statistical ideas such as averages, variability and probability.
    • Complete. At the end of this unit the student should be able to understand that one cannot make sufficiently accurate conclusions about a model with only a single data set.
  • Making estimates and checking the reasonableness of answers.
    • Complete. In the beginning of the lab portion of this unit, the student should take a guess at what the result will be when the density of the forest is varied. After running a number of trials, they should be able to easily assess the accuracy of they're answer as well as the reasonableness of their results from the lab.
  • Recognizing the limitations of mathematical and statistical methods.
    • Complete. The student should clearly note that this model of wildfires is far from indicative of how they actually happen. It should be stressed that this model is simply proof of concept for showing the profound effect a single variable can have on the overall results.

Scientific Inquiry Requirement

From the [Catalog Description] Scientific inquiry:

  • Develops students' understanding of the natural world.
    • Partial. After the completion of this unit, the student should understand the world's dependence on a surprisingly small number of variables even though this model is far from accurate.
  • Strengthens students' knowledge of the scientific way of knowing — the use of systematic observation and experimentation to develop theories and test hypotheses.
    • Complete. The entirety of this lab is to change a variable, observe the results, and repeat, eventually leading to having enough data to make reasonable theories on the model.
  • Emphasizes and provides first-hand experience with both theoretical analysis and the collection of empirical data.
    • Complete. The lab portion of this unit is exactly this: gathering numerical data in order to provide the basis for some sort of conclusion.

Scaffolded Learning

The NetLogo model(s) in question are easy to use and easy to witness the effect of changing parameters to obtain different results. As well there are fairly clear extensions for the student inclined towards taking those steps.

Inquiry Based Learning

This unit should be able to pique the curiosity of the student, most likely in the form of the question: "Why is that that a single variable can have such a dramatic effect on the output of a system?"

Fire's Mechanics

To Do

  • Better CRS questions are needed.
  • Quiz questions are needed.

Lab Feedback

  • Feedback specific to the lab component. Either in-line notes or a link to a separate page.
  • Some thoughts about what to look for:
    • How long did it take?
    • It took me 40 minutes to go back read what to do and go back to Netlogo do everything and record it in Spreadsheet and plotted it.
    • How appropriate is it to the material in the unit?
    • Appropriate - not a hard question.
    • Are the instructions complete or did you have to fill-in gaps.
    • A minor gap related to the left inline comment. Therefore they are mostly complete.
    • Is it too easy? Too hard?
    • If you use the suggested terminology; it is easy or rather said simple; just takes time to do all the steps. Straight forward.
    • Is what to look for, collect, and analyze clearly delineated?
    • It is clearly delineated.
    • Can you easily see what the purpose of the lab is and what you learned from it?
    • As everything else, it is simple and easy to see.


Comments

  • You have all of the required stuff for background reading but the template has shifted, just make sure you update it.
    • Will redo with the new Lab template
  • Don't forget to mark the correct answers by bolding them.
    • Done.
  • I don't understand all of this just because I'm not familiar with NetLogo (or Fire). But, is there a way to incorporate Charlie's idea of having different groups cover different parameters, and then getting all that data together and doing some kind of graphing to see the bigger picture? Perhaps as part of splitting up the 8 points.
    • Yes. Will address with more detail in Lab rewrite.
  • If we did some graphing with the results, that could strengthen this point. I don't know how much time we would have to teach them and what software though. Maybe bring this up in class or with Charlie.
    • The plan would be to have results graphed in Excel/<some spreadsheet>
  • Might want to start with a here's where we're going with this before starting about specifics of the wildfire model, esp. since this is their first unit out of foundations and they don't have a basis for the structure of a unit.
    • Will address in rewrite of lecture notes
  • Some "why we care" to tie it back together at the end, like how we can use it for estimating and planning, would be nice.
    • Will address in rewrite of lecture notes
  • This one might be a bit facetious. :P
    • Possibly, but I don't believe the answer is immediately obvious from a first-year student. The point of the question is to introduce cellular automata, something very few college freshmen are going to have heard about before.
  • Also VVA, if we're talking about how this model isn't a good indicator of real life. And don't forget cellular automata.
    • Briefly addressed. Will elaborate more when this section gets rewritten.
  • It would be nice if we had a set of extension questions for students interested in going further. Possibly trying to get certain situations to occur (a larger percentage of the time) by changing different variables. Or just trying to get certain situations to occur.
    • I agree.
  • I think there's also a lot to be said that the entire lab is based on tweaking parameters and so seeing what happens with different experiments.
    • That is in fact the gist behind the question I pose in the Inquiry Based Learning section.
  • Like we talked about in class, this may be too heavy for them before they actually see these, but if you show the models and then only give a few sentences about it, and ask the differences they saw rather than telling them about each type of modeling, it may go over better.
    • That'll be the plan. We'll cover agent modeling very quickly, i.e. show that it's one other modeling type and fire can be done with it and move on.
  • Will you have covered these earlier, or will you provide examples of each of these so they know what to look for?
    • We have provided simple graph examples.

Authorship

  • Fitz
  • Vlado