Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction
description
Transcript of Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction
![Page 1: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/1.jpg)
Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction
Mónica Denham, Ana Cortés, Tomàs Margalef and Emilio Luque
[email protected], {ana.cortes,tomas.margalef,emilio.luque}@uab.es
Computer Architecture & Operating Systems Department
![Page 2: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/2.jpg)
![Page 3: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/3.jpg)
Content Problem.
Method description.
Dynamic Data Driven Genetic Algorithm: Analytical Method.
Experiments and Results.
Conclusions.
![Page 4: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/4.jpg)
Problem
Fire behaviorSimulator
Initial fire
Terrain slopeTerrain vegetationWind directionWind velocityLive fuel moistureDead fuel moisture
Uncertainty source
![Page 5: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/5.jpg)
Content Problem.
Method description.
Dynamic Data Driven Genetic Algorithm. Analytical Method.
Experiments and Results.
Conclusions.
![Page 6: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/6.jpg)
Method Description (I)
*
FireSimulator
input parameters
Init (ti) Prediction (ti+1)
realspread
FireSimulator
Init (ti) Calibration (ti+1)
¿
Prediction (ti+2)
realspread
input parameters
FireSimulatorBest set of
parametersinput parameters
![Page 7: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/7.jpg)
Method Description (II)
*
FireSimulator
Init (ti) Calibration (ti+1)
¿
Prediction (ti+2)
realspread
input parameters
FireSimulator
Best set ofparameters
input parameters
multiple scenarioshuge search space
Genetic Algorithm
Terrain slope (static)Terrain vegetation (static)Wind direction (dynamic)Wind velocity (dynamic)Live fuel humidity (dynamic)Dead fuel humidity (dynamics)(1h, 10hs, 100hs)
master worker0
workern
Population dealing
Population gathering
simulationcomparison
simulationcomparison
Genetic Operators
![Page 8: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/8.jpg)
Content Problem.
Method description.
Dynamic Data Driven Genetic Algorithm: Analytical Method.
Experiments and Results.
Conclusions.
![Page 9: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/9.jpg)
Dynamic Data Driven Genetic Algorithm (I)DDDAS: ability to dynamically incorporate additionaldata into an execution application, and in reverse,
ability of an application to dynamically steer the measurement process (F. Darema).
Analyzing real fire spread
(Real fire spread at ti+1)
Inject better parameter values
We can
Improving simulationsat Calibration stage
and improvingoverall Prediction
process results
![Page 10: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/10.jpg)
Dynamic Data Driven Genetic Algorithm (II)
Due to main fire physics aspects, wind and slope determine fire spread main conditions:
We had proposed a method that calculates ideal wind characteristics, with which, in combination with slope aspects,
achieves fire propagation like fire spread observed at instant ti+1.
We know slope main characteristics.
Due to Calibration stage requirements we dispose fire spread information from instant ti to ti+1.
slope
wind
fire
Using fire and slope characteristics we can estimate wind values to imitate real fire spread
slope
windfire
![Page 11: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/11.jpg)
Analytical Method: Simulator uses slope and wind characteristics to calculate fire spread
characteristics. Simulator treats slope and wind as vectors. We use simulator idea to calculate wind characteristics from slope and spread
characteristics.
Dynamic Data Driven Genetic Algorithm: Analytical Method (III)
αβ
Rs
Rw Where:Rs : slope factorβ: slope directionRw: wind factorα: wind direction
X = Rs cos(β) + Rw cos(α)Y = Rs sin(β) + Rw sin(α)x, y
we know X, Y,we have (Rs y β)
We can calculate wind direction and speed (Rw y α )
( x - Rs cos(β) )
Isolating from the equations:
( y - Rs sin(β) )
( x - Rs cos(β) )α = arctan
Rw = cos(α)
Simulator:Real map:
β
Rsα
Rw
![Page 12: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/12.jpg)
Dynamic Data Driven Genetic Algorithm (IV)
*
FireSimulator
Init (ti) Calibration (ti+1)
realspread
input parametersinput parameters
Genetic Algorithm
Terrain slopeTerrain vegetationWind directionWind velocityLive fuel moistureDead fuel moisture(1h, 10hs, 100hs)
slope
maxwind
Selection - ElitismCrossoverMutation
Wind directionWind velocity
![Page 13: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/13.jpg)
Content Problem.
Method description.
Dynamic Data Driven Genetic Algorithm. Analytical Method.
Experiments and Results.
Conclusions.
![Page 14: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/14.jpg)
Experiments & Results (I)
• DDD Genetic Algorithm reduces error for both Calibration and Prediction stages.
• Prediction stage shows bigger errors (this stage works with calibration best individual for previous time step).
![Page 15: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/15.jpg)
Experiments & Results (II)
• DDD Genetic Algorithm reduces error for both Calibration and Prediction stages.
![Page 16: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/16.jpg)
Experiments & Results (III)
• Real map: fire behavior is different through time steps.• Errors are bigger than previous maps (synthetic maps).• Errors are similar for different configurations of our method.
![Page 17: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/17.jpg)
Content Problem.
Method description.
Dynamic Data Driven Genetic Algorithm. Analytical Method.
Experimentation and Results.
Conclusions.
![Page 18: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/18.jpg)
Conclusions
Calibration and Prediction stages have shown expected behavior.
We have used these techniques for real and synthetic burnings. Proposed methods shown good performance.
Using DDD Genetic Algorithm we could improve whole prediction process quality for synthetic cases.
Although real fires are our main objective, synthetic cases are the first step for understanding and improving steering methods.
Real fires characteristics are more difficult to simulate. Simulators implement abstractions of reality. We are working in this topic now.
![Page 19: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/19.jpg)
Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction
Thanks
[email protected], {ana.cortes,tomas.margalef,emilio.luque}@uab.es
Computer Architecture & Operating Systems Department
![Page 20: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/20.jpg)
Pseudocódigos.
Fórmulas Fitness - Error / Volver. Viento / Volver. Pendiente / Volver.
![Page 21: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/21.jpg)
Pseudocódigo: Algoritmo Genético
void evolute(gentype * gen) { double totfitc; gen->num++; newgen.num = gen->num;
cal_fit( gen ,&totfitc); nsort(gen); //keep_best(gen);
indcpy(&newgen.gen[0],*get_best()); indcpy(&newgen.gen[1],gen->gen[1]);
while (i<=(gen->size -2)) {
int p1 =select(totfitc, gen); int p2 =select(totfitc, gen); crossover(gen->gen[p1],gen->gen[p2], &newgen.gen[i], &newgen.gen[i+1]); /*mutation */ mutate(&newgen.gen[i], lmin,lmax); mutate(&newgen.gen[i+1],lmin,lmax);
/ /* stay in the limites */ clip(&newgen.gen[i]); clip(&newgen.gen[i+1]); // next i = i+2; }
Volver
![Page 22: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/22.jpg)
Pseudocódigo: Algoritmo Genético (cont.)
int select( double totfitc,gentype * gen){
double r = random * totfitc; p=0; sumfit=0; while((sumfit <= r)&&(p<gen->size)) sumfit += gen->gen[p++].fitc; p--; return p; }
void crossover(indvtype og1, indvtype og2,indvtype * ng1,indvtype * ng2) {
double cros =rand() % 1000; if (cros <= crosp) //si se supera la probabilidad se cruzan { crospoint = (int) rand()% og1.n; for(int i=0;i<crospoint;i++) { ng1->p[i] = og1.p[i]; ng2->p[i] =(og2.p[i]+og1.p[i])/2; } for(int i=crospoint;i<og1.n;i++) { ng1->p[i] =(og2.p[i]+og1.p[i])/2; ng2->p[i] =og2.p[i]; } } else // se copian directamente los padres a los hijos { indcpy(ng1,og1); indcpy(ng2,og2); }}Volver
![Page 23: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/23.jpg)
Viento Sigma = acumulación de la contribución a la intensidad de reacción
(modelo comb.) Beta = acumulación carga/densidad de todas las partículas del modelo. betaOpt = 3.348 / sigma0.8189
Ratio = beta/betaOpt c = 7.47 * exp(-0.133 * sigma0.55)) e = 0.715 * exp(-0.000359 * sigma) WindK = c * ratio-e
WindB = 0.02526 * sigma0.54
Fuel_PhiWind = WindK * windSpeedWindB
Rw = Fuel_Spread0() * Fuel_PhiWind
Depende del individuoDepende del modelo de combustibleVolver
![Page 24: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/24.jpg)
Pendiente
Volver
Beta = acumulación carga/densidad de todas las partículas del modelo.
SlopeK = 5.275 * beta-0.3
Fuel_PhiSlope = SlopeK * Slope2
Rs = Fuel_Spread0() * Fuel_PhiSlope
Depende del individuoDepende del modelo de combustible
![Page 25: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/25.jpg)
Algoritmo Genético
Algoritmo inspirado en la selección natural y en la genética. - Trabaja sobre una población de individuos.- De forma iterativa, se evoluciona la población mediante las operaciones de:
- Selección: competición de los individuos candidatos: los mejores individuos tienen mayor probabilidad de generar nuevos individuos. Función de evaluación. Elitismo.- Crossover: bajo una probabilidad se elije un crosspoint y los hijos reciben una parte de cada padre.- Mutación: bajo una probabilidad se muta el valor de un “cromosoma”.
hijo2Padre 2
Padre 1
Volver
Elitismo = 2 Nueva Población
CrossPoint
hijo1
Crossover:
mutación
Población
![Page 26: Applying a Dynamic Data Driven Genetic Algorithm to Improve Forest Fire Spread Prediction](https://reader036.fdocuments.net/reader036/viewer/2022062918/568142bd550346895daf0282/html5/thumbnails/26.jpg)
Fitness - Error
Volver
Fitness =
Error =
- Init
∩
- Init ∩
∩)
- Init) - - Init) (∩
Real –Init