Download presentation
Presentation is loading. Please wait.
1
A Cellular Automata Wildfire Spread Model
PILOT Presentation Kristen J. Bains November 6, 2006
2
Model Goals To use a cellular automaton to model wildfire
To create an extensible framework To demonstrate spatial control
3
Implementation Overview
GUI: Java 1.5.0 Swing allows easy GUI design and layout JAI 1.1.2 Model: C++ OOP allows easy extensibility
4
GUI Design Image Area Menu Bar Control Panel
5
Walk-through : GUI Load landscape file
6
Walk-through : GUI Load landscape file FileDialog
7
Walk-through : GUI Load landscape file FileDialog
Java Advanced Imaging (JAI) reads images/landscape_1.bmp and draws to image area
8
Walk-through : GUI Load landscape file FileDialog
Java Advanced Imaging (JAI) reads images/landscape_1.bmp and draws to image area Writes data/whichImage.dat & data/whichLandscape.dat Talk about how data is passed between GUI and MODEL
9
Walk-through : GUI After the file is loaded.
Talk about how the landscape is generated.
10
Landscape Files Randomly generated
libnoise ( noiseutils renders image
11
Landscape Files Randomly generated
libnoise ( noiseutils renders image Perlin noise module Source:
12
Landscape Files Create your own Set parameters Bounding Box Rows/Cols
Filename
13
Landscape Files Create your own Set parameters
File → Create new landscape file
14
Landscape Files Create your own Set parameters
File → Create new landscape file Invokes landscape/generateMap C++ routines using libnoise and noiseutils Creates images/landscape_new.bmp & data/landscape_new.dat Loads file into image area of GUI Explain what is contained in landscape_new.dat
15
Walk-through : GUI Select a firebreak
Creates a list of x,y coordinates that is stored to an array.
16
Walk-through : GUI Select a fire start location
17
After firebreak and fire start selection
Walk-through : GUI After firebreak and fire start selection
18
Walk-through: GUI Run → Run the model Writes initialization file
Writes firebreaks & fire starts to separate files Invokes fire readState data/init.dat
19
Walk-through: Model Two classes
CACell CASpace main parses initialization file, sets global variables initialize() initializes CASpace creates vector< vector<CACell> >
20
Walk-through: Model startFire()
looks at fire starts & sets their burnState adds fire starts to burnList
21
Walk-through: Model go()
iterates through burnList (all currently burning cells) fire spreads from burning cells newly burning cells are added to end of burnList done when burnList is empty
22
Spread if(fuelDensity > Threshold1) cell can burn
23
Spread if (fuelDensity > Threshold1) if (usingMultipleTimeSteps)
cell can burn if (usingMultipleTimeSteps) if (fuelDensity > Threshold2) cell can burn 2 time steps
24
Spread 8-neighborhood (3x3) 24-neighborhood (5x5)
25
Walk-through: GUI Final burn state information located in data/final.dat After the model has finished running, the GUI regains control and displays the burned cells in the image area.
26
Walk-through: Optimization
Select fire start location Select firebreak start location Select orientation Select % map to search Popup window to select name
27
Walk-through: Optimization
Run → Run optimization Writes initialization file Optimization flag set Writes firebreak location & fire start to separate files Invokes fire readState data/init.dat
28
Walk-through: Optimization
main parses initialization file, sets global variables initialize() initailizes CASpace startFire() gets start location
29
Walk-through: Optimization
go() burns the fire to completion toList is created while burning cell (x, y)’s toList contains: 1, 3, 4, 7 Baseline numberBurned
30
Walk-through: Optimization
For each selected orientation lengthen the firebreak width = 1
31
Walk-through: Optimization
width = 2 Growth direction for width
32
Walk-through: Optimization
Reverse Fire
33
Walk-through: Optimization
Reverse Fire
34
Walk-through: Optimization
Reverse Fire
35
Walk-through: Optimization
Reverse Fire
36
Walk-through: Optimization
Reverse Fire
37
Walk-through: Optimization
Reverse Fire
38
Walk-through: Optimization
Reverse Fire
39
Walk-through: Optimization
Reverse Fire
40
Walk-through: Optimization
Reverse Fire We know that this firebreak length is optimal because it results in the fewest burned cells
41
Walk-through: Optimization
Output is written to data/*.opt file Best firebreak is calculated and shown on GUI
42
Example Output
43
Example Output
44
Future Directions Implement in OpenInventor ( Customizable 3D simulation environment, C++ Implement interface with ArcGIS Read ascii grid files and convert to array of float values
45
Future Directions Extend with new modules wind slope fuel moisture
46
Survey of Known CA Wildfire Models
Dunn and Milne. Modelling Wildfire Dynamics via Interacting Automata. * Uses Circal process algebra to interact between automata Clarke, Riggan, and Brass. A cellular automaton model of wildfire propagation and extinction. Links remotely sensed data with Monte Carlo based simulation Berjak and Hearne. An improved cellular automaton model for simulating fire in a spatially heterogeneous Savanna system. CA approach based on Rothermel model Most CA wildfire models do not contain control methods or an attempt to optimize them
47
Acknowledgements Funding under NSF Award No. IIS-0427471 Committee:
Dr. David Banks Dr. Michael Berry, chair Dr. Louis Gross TIEM Group
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.