H EURISTIC S OLVER Builds and tests alternative fuel treatment schedules (solutions) at each iteration In each iteration: Evaluates the effects of each alternative schedule on the constraints Evaluates the expected loss over time Selects the fuel treatment schedule that provides the minimum overall expected loss over time while satisfying the constraints
H EURISTIC S OLVER Uses Simulated Annealing (SA) Algorithm to select treatments The SA algorithm is based on simulating cooling of materials in a bath (annealing) Heuristic optimization technique widely used to solve large combinatorial problems in various fields Assignment/scheduling problems Transportation network problems Manufacturing problems Monte Carlo approach that uses a local search A subset of all possible solutions is explored by moving to through neighbor solutions Some lower quality solutions are accepted to avoid solutions stagnation at local optimum
B UILDING C LUSTERS OF P OLYGONS FOR T REATMENT Assigns fuel treatments to stand polygons (GIS layer) Treating individual stands is generally not effective at changing fire behavior at the landscape level (Finney 2006) Solver builds clusters of adjacent polygons to form larger treatment units
Clustering adjacent stand polygons No action Select random polygon B UILDING C LUSTERS OF P OLYGONS FOR T REATMENT
Clustering adjacent stand polygons Minimum cluster ac Selected polygon 5.0 ac Clustered area 5.0 ac No action Selected Adjacent Select random polygon Update cluster area Is current cluster area > minimum cluster area ? Identify adjacent polygons No Select random adjacent polygon B UILDING C LUSTERS OF P OLYGONS FOR T REATMENT
Clustering adjacent stand polygons Minimum cluster ac Selected polygon 4.5 ac Clustered area 9.5 ac No action Selected Adjacent Clustered Select random polygon Identify adjacent polygons Select random adjacent polygon Update cluster area Is current cluster area > minimum cluster area ? No B UILDING C LUSTERS OF P OLYGONS FOR T REATMENT
Clustering adjacent stand polygons Minimum cluster ac Selected polygon 5.8 ac Clustered area 15.3 ac No action Selected Adjacent Clustered Select random polygon Identify adjacent polygons Select random adjacent polygon Update cluster area Is current cluster area > minimum cluster area ? No B UILDING C LUSTERS OF P OLYGONS FOR T REATMENT
Clustering adjacent stand polygons Minimum cluster ac Selected polygon 6.1 ac Clustered area 21.4 ac No action Selected Adjacent Clustered Select random polygon Identify adjacent polygons Select random adjacent polygon Update cluster area Is current cluster area > minimum cluster area ? No B UILDING C LUSTERS OF P OLYGONS FOR T REATMENT
Clustering adjacent stand polygons Minimum cluster ac Selected polygon 5.2 ac Clustered area 26.6 ac No action Selected Adjacent Clustered Select random polygon Identify adjacent polygons Select random adjacent polygon Update cluster area Is current cluster area > minimum cluster area ? No B UILDING C LUSTERS OF P OLYGONS FOR T REATMENT
Clustering adjacent stand polygons Minimum cluster ac Selected polygon 7.2 ac Clustered area 33.8 ac No action Selected Adjacent Clustered Select random polygon Identify adjacent polygons Select random adjacent polygon Update cluster area Is current cluster area > minimum cluster area ? No B UILDING C LUSTERS OF P OLYGONS FOR T REATMENT
Clustering adjacent stand polygons Minimum cluster ac Selected polygon 8.1 ac Clustered area 41.9 ac No action Selected Adjacent Clustered Select random polygon Identify adjacent polygons Select random adjacent polygon Update cluster area Is current cluster area > minimum cluster area ? No B UILDING C LUSTERS OF P OLYGONS FOR T REATMENT
Clustering adjacent stand polygons Minimum cluster ac Selected polygon 8.8 ac Clustered area 50.7 ac No action Selected Adjacent Clustered Select random polygon Identify adjacent polygons Select random adjacent polygon Update cluster area Is current cluster area > minimum cluster area ? No B UILDING C LUSTERS OF P OLYGONS FOR T REATMENT
Clustering adjacent stand polygons Minimum cluster ac Selected polygon 7.7 ac Clustered area 58.4 ac No action Selected Adjacent Clustered Select random polygon Identify adjacent polygons Select random adjacent polygon Update cluster area Is current cluster area > minimum cluster area ? No B UILDING C LUSTERS OF P OLYGONS FOR T REATMENT
Clustering adjacent stand polygons Minimum cluster ac Selected polygon 7.8 ac Clustered area 74.0 ac No action Selected Adjacent Clustered Select random polygon Identify adjacent polygons Select random adjacent polygon Update cluster area Is current cluster area > minimum cluster area ? No B UILDING C LUSTERS OF P OLYGONS FOR T REATMENT
Clustering adjacent stand polygons Minimum cluster ac Selected polygon 8.9 ac Clustered area 82.9 ac No action Selected Adjacent Clustered Select random polygon Identify adjacent polygons Select random adjacent polygon Update cluster area Is current cluster area > minimum cluster area ? No B UILDING C LUSTERS OF P OLYGONS FOR T REATMENT
Clustering adjacent stand polygons Minimum cluster ac Selected polygon 8.2 ac Clustered area 91.1 ac No action Selected Adjacent Clustered Select random polygon Identify adjacent polygons Select random adjacent polygon Update cluster area Is current cluster area > minimum cluster area ? No B UILDING C LUSTERS OF P OLYGONS FOR T REATMENT
Clustering adjacent stand polygons Minimum cluster ac Selected polygon 7.8 ac Clustered area 98.9 ac No action Selected Adjacent Clustered Select random polygon Identify adjacent polygons Select random adjacent polygon Update cluster area Is current cluster area > minimum cluster area ? No B UILDING C LUSTERS OF P OLYGONS FOR T REATMENT
Clustering adjacent stand polygons Minimum cluster ac Selected polygon 7.8 ac Clustered area ac No action Selected Clustered Select random polygon Identify adjacent polygons Select random adjacent polygon Update cluster area Is current cluster area > minimum cluster area ? No Stop clustering polygons Yes B UILDING C LUSTERS OF P OLYGONS FOR T REATMENT
Clustering adjacent stand polygons Minimum cluster ac Selected polygon 7.8 ac Clustered area ac Select random polygon Identify adjacent polygons Select random adjacent polygon Update cluster area Is current cluster area > minimum cluster area ? No Stop clustering polygons Yes B UILDING C LUSTERS OF P OLYGONS FOR T REATMENT
H EURISTIC S OLVER Objective is to minimize expected loss where : c : Index of grid cells (pixels) t : Index of time period Loss c,t : Expected loss value for grid cell c for period t, based on the flame length predicted by MTT P c,t : Probability of cell c being burned in period t, based on the fire arrival time predicted by MTT
S TEPS IN EACH I TERATION Build or modify a solution (timing and placement of treatments) Is SA stopping criteria met ? No Data passed to Solver: Landscape fuel parameters Fire scenario Objective Function Constraints Adjacent Polygons topography Run MTT for each planning period and retrieve results by pixel ( flame length, arrival time) Calculate objective function value (total expected loss value) Report Best Found Solution Yes Update the landscape fuel parameters for each period
Build or modify a solution (timing and placement of treatments) Is SA stopping criteria met ? No Data passed to Solver: Landscape fuel parameters Fire scenario Objective Function Constraints Adjacent Polygons topography Run MTT for each planning period and retrieve results by pixel ( flame length, arrival time) Calculate objective function value (total expected loss value) Report Best Found Solution Yes Update the landscape fuel parameters for each period S TEPS IN EACH I TERATION
Build or modify a solution (timing and placement of treatments) Is SA stopping criteria met ? No Data passed to Solver: Landscape fuel parameters Fire scenario Objective Function Constraints Adjacent Polygons topography Run MTT for each planning period and retrieve results by pixel ( flame length, arrival time) Calculate objective function value (total expected loss value) Report Best Found Solution Yes Update the landscape fuel parameters for each period S TEPS IN EACH I TERATION
Build or modify a solution (timing and placement of treatments) Is SA stopping criteria met ? No Data passed to Solver: Landscape fuel parameters Fire scenario Objective Function Constraints Adjacent Polygons topography Run MTT for each planning period and retrieve results by pixel ( flame length, arrival time) Calculate objective function value (total expected loss value) Report Best Found Solution Yes Update the landscape fuel parameters for each period S TEPS IN EACH I TERATION
Build or modify a solution (timing and placement of treatments) Is SA stopping criteria met ? No Data passed to Solver: Landscape fuel parameters Fire scenario Objective Function Constraints Adjacent Polygons topography Run MTT for each planning period and retrieve results by pixel ( flame length, arrival time) Calculate objective function value (total expected loss value) Report Best Found Solution Yes Update the landscape fuel parameters for each period S TEPS IN EACH I TERATION
Build or modify a solution (timing and placement of treatments) Is SA stopping criteria met ? No Data passed to Solver: Landscape fuel parameters Fire scenario Objective Function Constraints Adjacent Polygons topography Run MTT for each planning period and retrieve results by pixel ( flame length, arrival time) Calculate objective function value (total expected loss value) Report Best Found Solution Yes Update the landscape fuel parameters for each period S TEPS IN EACH I TERATION
Build or modify a solution (timing and placement of treatments) Is SA stopping criteria met ? No Data passed to Solver: Landscape fuel parameters Fire scenario Objective Function Constraints Adjacent Polygons topography Run MTT for each planning period and retrieve results by pixel ( flame length, arrival time) Calculate objective function value (total expected loss value) Report Best Found Solution Yes Update the landscape fuel parameters for each period S TEPS IN EACH I TERATION
Build or modify a solution (timing and placement of treatments) Is SA stopping criteria met ? No Data passed to Solver: Landscape fuel parameters Fire scenario Objective Function Constraints Adjacent Polygons topography Run MTT for each planning period and retrieve results by pixel ( flame length, arrival time) Calculate objective function value (total expected loss value) Report Best Found Solution Yes Update the landscape fuel parameters for each period S TEPS IN EACH I TERATION
Build or modify a solution (timing and placement of treatments) Is SA stopping criteria met ? No Data passed to Solver: Landscape fuel parameters Fire scenario Objective Function Constraints Adjacent Polygons topography Run MTT for each planning period and retrieve results by pixel ( flame length, arrival time) Calculate objective function value (total expected loss value) Report Best Found Solution Yes Update the landscape fuel parameters for each period S TEPS IN EACH I TERATION
T REATMENT S ELECTION Selection of treatments and location of clusters to develop alternative schedules (solutions) is conducted in two phases Phase I: Add clusters until the maximum area feasible to treat is reached in each period Iteration zero – “no action” Following iterations – randomly locate and add feasible clusters over the landscape Phase II: Replace clusters with new clusters to find the best allocation and timing of fuel treatments At each iteration – randomly select a new cluster and remove a previously selected cluster Continues until stopping rule is reached
Lower bound Upper bound P1 P2 Phase I – add a cluster Evaluate feasibility Run MTT algorithm arrival time flame length Calculate expected loss Period 1 Period 2 Area constraints Period 1 400 – 650 acres Period 2 400 – 650 acres T REATMENT S ELECTION
Lower bound Upper bound P1 P2 Phase I – add a cluster Evaluate feasibility Run MTT algorithm arrival time flame length Calculate expected loss Period 1 Period 2 Area constraints Period 1 400 – 650 acres Period 2 400 – 650 acres T REATMENT S ELECTION
Lower bound Upper bound P1 P2 Phase I – add a cluster Evaluate feasibility Run MTT algorithm arrival time flame length Calculate expected loss Period 1 Period 2 Area constraints Period 1 400 – 650 acres Period 2 400 – 650 acres T REATMENT S ELECTION
Lower bound Upper bound P1 P2 Phase I – add a cluster Evaluate feasibility Run MTT algorithm arrival time flame length Calculate expected loss Period 1 Period 2 Area constraints Period 1 400 – 650 acres Period 2 400 – 650 acres T REATMENT S ELECTION
Lower bound Upper bound P1 P2 Phase I – add a cluster Evaluate feasibility Run MTT algorithm arrival time flame length Calculate expected loss Period 1 Period 2 Area constraints Period 1 400 – 650 acres Period 2 400 – 650 acres T REATMENT S ELECTION
Lower bound Upper bound P1 P2 Phase I – add a cluster Evaluate feasibility Run MTT algorithm arrival time flame length Calculate expected loss Period 1 Period 2 Area constraints Period 1 400 – 650 acres Period 2 400 – 650 acres T REATMENT S ELECTION
Lower bound Upper bound P1 P2 Phase I – add a cluster Evaluate feasibility Run MTT algorithm arrival time flame length Calculate expected loss Period 1 Period 2 Area constraints Period 1 400 – 650 acres Period 2 400 – 650 acres T REATMENT S ELECTION
Lower bound Upper bound P1 P2 Phase I – add a cluster Evaluate feasibility Run MTT algorithm arrival time flame length Calculate expected loss Period 1 Period 2 Area constraints Period 1 400 – 650 acres Period 2 400 – 650 acres T REATMENT S ELECTION
Lower bound Upper bound P1 P2 Phase I – add a cluster Evaluate feasibility Run MTT algorithm arrival time flame length Calculate expected loss Period 1 Period 2 Area constraints Period 1 400 – 650 acres Period 2 400 – 650 acres T REATMENT S ELECTION
Lower bound Upper bound P1 P2 Phase I – add a cluster Evaluate feasibility Run MTT algorithm arrival time flame length Calculate expected loss Period 1 Period 2 Area constraints Period 1 400 – 650 acres Period 2 400 – 650 acres T REATMENT S ELECTION
Lower bound Upper bound P1 P2 Phase I – add a cluster Evaluate feasibility Run MTT algorithm arrival time flame length Calculate expected loss Period 1 Period 2 Area constraints Period 1 400 – 650 acres Period 2 400 – 650 acres T REATMENT S ELECTION
Lower bound Upper bound P1 P2 Phase I – add a cluster Evaluate feasibility Run MTT algorithm arrival time flame length Calculate expected loss Period 1 Period 2 Area constraints Period 1 400 – 650 acres Period 2 400 – 650 acres Numerous tries found no addition clusters could be added without exceeding the 650–ac Upper Bound ===> Go to Phase II T REATMENT S ELECTION
Lower bound Upper bound P1 P2 Phase II – change cluster locations and timing Evaluate feasibility Run MTT algorithm arrival time flame length Calculate expected loss Period 1 Period 2 Area constraints Period 1 400 – 650 acres Period 2 400 – 650 acres T REATMENT S ELECTION
Lower bound Upper bound P1 P2 Phase II – change cluster locations and timing Evaluate feasibility Run MTT algorithm arrival time flame length Calculate expected loss Period 1 Period 2 Area constraints Period 1 400 – 650 acres Period 2 400 – 650 acres T REATMENT S ELECTION
Lower bound Upper bound P1 P2 Phase II – change cluster locations and timing Evaluate feasibility Run MTT algorithm arrival time flame length Calculate expected loss Period 1 Period 2 Area constraints Period 1 400 – 650 acres Period 2 400 – 650 acres T REATMENT S ELECTION
Lower bound Upper bound P1 P2 Phase II – change cluster locations and timing Evaluate feasibility Run MTT algorithm arrival time flame length Calculate expected loss Period 1 Period 2 Area constraints Period 1 400 – 650 acres Period 2 400 – 650 acres T REATMENT S ELECTION
Lower bound Upper bound P1 P2 Phase II – change cluster locations and timing Evaluate feasibility Run MTT algorithm arrival time flame length Calculate expected loss Period 1 Period 2 Area constraints Period 1 400 – 650 acres Period 2 400 – 650 acres T REATMENT S ELECTION
Lower bound Upper bound P1 P2 Phase II – change cluster locations and timing Evaluate feasibility Run MTT algorithm arrival time flame length Calculate expected loss Period 1 Period 2 Area constraints Period 1 400 – 650 acres Period 2 400 – 650 acres T REATMENT S ELECTION
Lower bound Upper bound P1 P2 Phase II – change cluster locations and timing Evaluate feasibility Run MTT algorithm arrival time flame length Calculate expected loss Period 1 Period 2 Area constraints Period 1 400 – 650 acres Period 2 400 – 650 acres T REATMENT S ELECTION
Lower bound Upper bound P1 P2 Phase II – change cluster locations and timing Evaluate feasibility Run MTT algorithm arrival time flame length Calculate expected loss Period 1 Period 2 Area constraints Period 1 400 – 650 acres Period 2 400 – 650 acres T REATMENT S ELECTION
Lower bound Upper bound P1 P2 Phase II – change cluster locations and timing Evaluate feasibility Run MTT algorithm arrival time flame length Calculate expected loss Period 1 Period 2 Area constraints Period 1 400 – 650 acres Period 2 400 – 650 acres T REATMENT S ELECTION
Lower bound Upper bound P1 P2 Phase II – change cluster locations and timing Evaluate feasibility Run MTT algorithm arrival time flame length Calculate expected loss Period 1 Period 2 Area constraints Period 1 400 – 650 acres Period 2 400 – 650 acres T REATMENT S ELECTION
S OLVER P ERFORMANCE Algorithm performance Phase I Phase II “no action” Expected Loss Iteration Number
H ARDWARE R EQUIREMENTS AND S OLUTION T IMES OptFuels has parallel computing capabilities that use all available processors in a machine For an area of 34,600 acres with 2 treatment period the solver takes: Computer Type (Processor ) Number of processor/Th reads Processor Speed Iterations per minute Solution times Risk Assessment Run Low Intensity Run (~400 iterations) Regular desktop (Intel Core ) 21.8 GHz0.4Several minutes 18 hrs Multi-processor Laptop (Intel i7-2720QM) GHz2.5Seconds2.5 hrs Multi-processor workstation (Intel Xeon X5570) GHz3.5Seconds2 hrs
H EURISTIC S OLVER E NHANCEMENTS Adding selection of individual stands for treatments in the latter stages of Phase II. This selects individual stands for treatment that lie between treatment clusters where the area is too small to generate another cluster Adding the ability to schedule treatments to minimize expected loss from two or more fire scenarios. Different ignition points Different wind direction and speed Integrating OptFuels into IFT-DSS
R ESULTS A VAILABLE FROM O PT F UELS Spatial and temporal treatment schedule that can be mapped in GIS Expected loss Effects functions evaluated for the treatment schedule could include: Treatment costs, treatment acres, volumes of treatment products (if any), treatment revenues (if any), sediment yields, resource effects (eg. acres of aspen) Outputs produced by FlamMap MTT for both the treated and untreated landscapes: GIS display of flame length and arrival time. LCP files that could be used for additional FlamMap analyses. FVS stand parameters for the projected stands for both the treated and untreated landscapes: Tree species, stand size, stand volume, etc.
T HANK Y OU ! Questions?