Presentation is loading. Please wait.

Presentation is loading. Please wait.

A Cellular Automata Wildfire Spread Model

Similar presentations


Presentation on theme: "A Cellular Automata Wildfire Spread Model"— Presentation transcript:

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


Download ppt "A Cellular Automata Wildfire Spread Model"

Similar presentations


Ads by Google