Fire Analytics Toolbox

Table of contents
  1. Overview
  2. Usage alternatives
  3. Installing
  4. First test run
  5. Deployed algorithms
    1. icon-missing Fire Analytics Toolbox

Overview

Our applied fire research as user friendly graphical GIS tools:

  • Simulate large scale wildfires using Cell2Fire++
  • Get threat and risk metrics
  • Use the firebreak location decision support system
  • Combine our algorithms with any other QGIS algorithms easily

Without leaving the graphical environment of QGIS, just by installing our processing algorithm plugin fire2a-toolbox.

This type of plugins differ from the regular plugins -by being much more than a pop-up dialog- because they follow a data-science-pipeline architecture. Clearly delimites: inputs, outputs, algorithms and contexts; achieving seamless integration with all other provided algorithms in the toolbox, providing 5 ways of being run.

Usage alternatives

  1. Simple as filling a form dialog (checkboxes, dropdowns, file-choosers, etc.); with the minimal inputs being a fuel raster and a weather scenario.
  2. Batch of forms: Execute sequential runs configuring them in data-sheet-style where each row is one (column-wise displayed) form, easily experiment parameter sensitivities.
  3. As part of a graphical model workflow: Drag and drop boxes of parameters and algorithms, conect arrows as input-ouputs between them, into a custom GIS-data-science-pipeline.
  4. From a command line tool, run qgis_process cli wrapper to call any processing algorithm without QGIS graphical overhead.
  5. Python script, working both calling it from the QGIS python console or as standalone code

Installing

Full guide here or overview (with video):

  1. Install QGIS latest version
    • Support >= 3.36.1
    • CPLEX Solver in Windows? Stick to 3.36.1 version, read this now
  2. Add fire2a’s plugin store URL as a custom plugin source
    • QGIS menu > Plugins > Manage and Install Plugins > Settings > Add > paste the URL > Ok
    • Why custom? Audit our binaries
  3. Click “Not installed” tab, search “fire”, select and install “Fire Analytics Processing-Toolbox”

  4. Accept on the dialog asking permission to install the plugin’s python dependencies (if needed)
    • Save any open work before installing/updating the plugin. Installing & reloading dependencies on the fly could crash QGIS
    • You can deny and disable this check, that happens every time the plugin is loaded. (Manually install them)
    • Restart QGIS if any install or reloading doesn’t succeed (details at: Log Messages > Plugins)
    • Toggle the plugin checkbox (left of its icon on the Manager list) if it doesn’t appear immediately on the Processing Toolbox Panel

All Done! On the Processing Toolbox Panel, look for “icon-missing Fire Analytics”

First test run

(Check the video at the end!) Getting or generating a fuel model raster can be challenging (tutorial coming soon), so the simplest way is to:

  1. Use the downloader algorithm to get a prepared instance
  2. Save an empty project into the downloaded folder (where fuels, elevation and Weather.csv files are)
  3. Drag and drop layers from the project home (file Browser Panel) into the Layer Panel
  4. Set the same CRS to the layers and project (any in meters suffices)
  5. Open the simulator algorithm , select the proper fuelmodel (Canada, Kitral or S&B), select the fuel layer in the fuel dropdown, press run.

Note: Step 2 can be skipped but it is cumbersome to select each layer from file explorers than to use the dropdown to select between current loaded layers; Also Weather.csv is automatically selected when there’s a saved project.

Deployed algorithms

icon-missing Fire Analytics Toolbox

icon-missing
Cell2 Fire Simulator

Utils

icon-missing
Simulator Instances Downloader, gets ready to simulate instances
icon-missing
Match AII Grid Rasters: Simplifies using gdal translate thrice, to clip extent, then resize and replace geotransform to match an ascii raster into another
icon-missing
Meteo: Simplifies creating Chilean -Kitral fuel model compatible- weather files
icon-missing
Polygonize weighted rasters: A pipeline for creating polygons from multiple raster layers; with nodata and scaling strategies, categorical rasters handling and weight attribute. algorithm

Simulator Post Processing (simpp)

icon-missing
Bundle: all following algorithms combined for convenience
icon-missing
Ignition Point(s): reads the ignition history file from the simulator outputs, creates a point layer
icon-missing
Fire Scar(s): reads the csv.Grids files from the simulator outputs, creates: final scars raster layer, propagation scars polygons & burn probability
icon-missing
Propagation Digraph: reads the csv.Messages files from the simulator outputs, creates a directed graph of the fire propagation, each arrow labeled with the time spread
icon-missing
Spatial Statistics:, any of: Hit Rate Of Spread, Flame Length, Byram Fire Line Intensity, Crown Fire Scar, Crown Fire Fuel Consumption Ratio, Surface Burn Fraction

Simulator Risk Metrics

icon-missing
DownStream Protection Value
icon-missing
Betweenness Centrality
icon-missing
Burn Probability, a subset of the fire scar algorithm

Decision optimization

icon-missing
Raster knapsack optimization
icon-missing
Polygon knapsack optimization : Optimizes the classical knapsack problem using polygons with values and/or weights attributes, returns a polygon layer with the selected polygons.
icon-missing
Polygon treatment optimization : Using possible treatments for each polygon, Maximize the changed value of the treated polygons
icon-missing
Raster treatment optimization : Maximize the changed value of the treated raster, deciding which treatment to apply to each pixel (or no change), subject to budget and area constraints
icon-missing
Raster treatment & teams optimization : Maximize the changed value of the treated raster, deciding which treatment to apply by which team to each pixel (or no change), subject to budget, area constraints and team capabilities

By default QGIS limits the processing algorithms log to about 5000 lines. In the rare case you really need the full log, see number 4 and 5 of usage alternatives