690 likes | 1.12k Views
Computational Support for the Scale Concept: The TerraME Framework for Integrated LUCC Modeling. Authors: Tiago Garcia de Senna Carneiro Dr. Antônio Miguel Vieira Monteiro Dr. Gilberto Câmara IAI-CPTEC Training Institute on Climate, Land Use and Modeling
E N D
Computational Support for the Scale Concept: The TerraME Framework for Integrated LUCC Modeling Authors: Tiago Garcia de Senna Carneiro Dr. Antônio Miguel Vieira Monteiro Dr. Gilberto Câmara IAI-CPTEC Training Institute on Climate, Land Use and Modeling August 13-18, 2006, Cachoeira Paulista, CPTEC, Brazil
Deforestation Map – 2000 (INPE/PRODES Project) Deforestation Forest Non-forest The problem: multiscale spatial dynamic modeling Provide computational modeling support for GEOMA research areas: • Environmental Physics • Wetlands • Biodiversity • LUCC • Population Dynamics • Climate GEOMA network Science and Technology Ministry institutions: • LNCC-Laboratório Nacional de Computação Científica • MPEG-Museu Paraense Emílio Goeldi • INPE-Intituto de Pesquisas Espaciais • IDSM-Instituto de Desenvolvimento Sustentável Mamirauá • IMPA-Instituto de Matemática Pura e Aplicada • CBPF-Centro Brasileiro de Pesquisas Físicas
Main requirement: represent and simulate Amazon region space-time diversity of: • Actors • Processes • Speedy of change • Connectivity relations Matogrosso State Rondônia State Mato Grosso State
Realistic environmental change studies requires multiple scale models (Source: Turner II, 2000)
Spatial Dynamic Modeling What we can do?
Simulate Physical Processes - rain drainage in a terrain -
Espinhaço Range O Brasil “from the space”2000
Lobo’s Range Itacolomido Itambé Peak
Lobo’s Range Itacolomido Itambé Peak 9 km 9 km
rain rain rain Itacolomi do Itambé Peak Lobo’s Range N
Picture direction Itacolomido Itambé Peak Lobo’s Range
Simulation Result (36 min.)
Research Goal • To define the mathematical foundation of a model of computation for multiplescaleLUCC modeling, the Nested Cellular Automata (Nested-CA) model. • To implement the Nested-CA model of computation in a software architecture that provides support for all phases of the development of a multiple scale spatial dynamic model, the TerraME - Terralib Modeling Environment.
Cyclical Model Development Process TerraME provides support for all phases of the development of a multiple LUCC model.
TerraLib EnviromentalModeling Framework C++ Signal Processing librarys C++ Mathematicallibrarys C++ Statisticallibrarys TerraME architecture & applications RondôniaModel DinamicaModel TROLLModel CLUEModel TerraME Language TerraME Compiler TerraME Virtual Machine TerraLib
Content • The state of the art on models of computation for LUCC modeling • The Nested-CA model of computation • The TerraME modeling environment • LUCC applications • A data-driven model for the Brazilian Amazon Region (CLUE model) • A theory driven model for the Rondônia state center-north region, Brazil. • Why use TerraME • Conclusion
State of the Art on Models of Computation for LUCC Modeling (von Neumann, 1966) (Minsky, 1967) (Pedrosa et al, 2003) (Aguiar et al, 2004) (Wooldbridge, 1995) (Straatman et al, 2001) (Rosenschein and Kaelbling, 1995) Cellular automata models Agent based models
TerraME IdeaA Earth’s environment … can be represented as a synthetic environment… … where analytical entities (rules) change the space properties in time. Several interacting entities share the same spatiotemporal structure.
Nested-CA Model of Computation Space function is non-homogeneous
A Scale Model - basic concepts -
The Scale Concept Scale is a generic concept that includes the spatial, temporal, or analytical dimensions used to measure any phenomenon. Extent refers to the magnitude of measurement. Resolution refers to the granularity used in the measures. (Gibson et al. 2000)
TerraME Spatial Model Proximal spaces Actions at distance Non-stationary neighborhoods
Cellular Spaces • Components • Grid of georeferenced cells: • Unique ID • Several attributes • Generalized proximity matrix(GPM) TerraLib Cellular Space A discrete surface of squared cells. Each cell has one ID and several attributes.
GIS The TerraME spatial model The space local properties, constraints, and connectivity can be modeled by: Each cell has a neighborhood that can be, possibly, different. - Space is nether isomorphic nor structurally homogeneous.(Couclelis 1997) - Actions at a distance are considered.(Takeyana 1997), (O’Sullivan 1999) - a spatial structure: a lattice of cells - a set of geographic data: each cell has various attributes
GIS Loading Data -- Loads the TerraLib cellular space csCabecaDeBoi = CellularSpace { dbType = "ADO", host = "amazonas", database = "c:\\cabecaDeBoi.mdb", user = "", password = "", layer = "cellsSerraDoLobo90x90", theme = "cells", select = { "altimetria", “soilWater", “infCap" } } csCabecaDeBoi:load(); csCabecaDeBoi:loadNeighbourhood(“Moore_SerraDoLobo1985");
TerraME Behavioral Model Discrete and continuous Knowledge based Sequential and Parallel Process Trajectory
Rain Automaton Raining cell.soilWater = cell.past.soilWater +2; Global
Rain Automaton in TerraME agRain = GlobalAutomaton{ it = SpatialIterator{ csCabecaDeBoi, function( cell ) return (cell.altimetria >= 1500); end }, ControlMode{ id = "working", Flow{ function(event, agent, cell) cell.soilWater = cell.past.soilWater + 2; return 0; end } } }
(soilWater > infCap) ? WET DRY (soilWater <= infCap) ? Hidrologic Balance Automaton Local overflow = (soilWater – infCap); soilWater = infCap; sendToNeighbour( overflow );
TerraME Temporal Model Asynchronous Processes Multiple Temporal Resolutions
1. Get first pair 2. Execute the ACTION 1. Execute an agent over the cellular space regions 2. 3. Timer =EVENT Save the spatial data 3. Draw cellular spaces and agents states 1:32:10 1:32:00 1:42:00 1:38:07 Mens. 3 Mens. 1 Mens. 2 Mens.4 4. Carrie out the comunication between agents return value . . . true 4. timeToHappen += period The TerraME Timer
Temporal inconsistency OK OK 2º step 1º step update Neighborhood based rules & Time Rule: if ( all neighbors = 1 ) then 0 General rule form: cell.soilWater= cell.soilWater + 2; one copy of the cellular space past present
tn tn+1 Runtime Rule Activity rule count = 0 ; for i, cell ipairs( csValeDoAnary ) do end if ( cell.past.cover == “forest”) then cell.cover =“deforested”; count = count + 1 ; end cell.synchronize( ); ? print(“Number of deforested cells: ”.. count);
Multiple scales Basic concepts
Multiple Scale Approach Cellular Spaces Discrete-Event Schedulers GlobalAutomata LocalAutomata
Multiple scale model construction Using nested scales
Space structure is non-homogeneous Nested scales Multiscale models can be developed Diverse space partitions can have different scales
Spatial Dynamic Modeling What we can do?