Optimizing a Geomodeling Domain Specific Language

  • Bruno Morais Ferreira
  • Fernando Magno Quintão Pereira
  • Hermann Rodrigues
  • Britaldo Silveira Soares-Filho
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7554)


In this paper we describe Dinamica EGO, a domain specific languages (DSL) for geomodeling. Dinamica EGO provides users with a rich suite of operators available in a script language and in a graphical interface, which they can use to process information extracted from geographic entities, such as maps and tables. We analyze this language through the lens of compiler writers. Under this perspective we describe a key optimization that we have implemented on top of the Dinamica EGO execution environment. This optimization consists in the systematic elimination of memory copies that Dinamica EGO uses to ensure referential transparency. Our algorithm is currently part of the official distribution of this framework. We show, via a real-life case study, that our optimization can speedup geomodeling applications by almost 100x.


Interval Graph Data Replication Domain Specific Language Geographic Entity Storage Index 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Aho, A.V., Lam, M.S., Sethi, R., Ullman, J.D.: Compilers: Principles, Techniques, and Tools, 2nd edn. Addison Wesley (2006)Google Scholar
  2. 2.
    Beven, K.: Towards a coherent philosophy for modelling the environment. Proceedings of the Royal Society 458, 2465–2484 (2002)MathSciNetzbMATHCrossRefGoogle Scholar
  3. 3.
    Carlson, K.M., Curran, L.M., Ratnasari, D., Pittman, A.M., Soares-Filho, B.S., Asner, G.P., Trigg, S.N., Gaveau, D.A., Lawrence, D., Rodrigues, H.O.: Committed carbon emissions, deforestation, and community land conversion from oil palm plantation expansion in West Kalimantan, Indonesia. Proceedings of the National Academy of Sciences (2012)Google Scholar
  4. 4.
    Ferreira, B.M., Pereira, F.M.Q., Rodrigues, H., Soares-Filho, B.S.: Optimizing a geomodeling domain specific language. Tech. Rep. LLP001/2012, Universidade Federal de Minas Gerais (2012)Google Scholar
  5. 5.
    Garey, M.R., Johnson, D.S., Miller, G.L., Papadimitriou, C.H.: The complexity of coloring circular arcs and chords. J. Algebraic Discrete Methods 1, 216–227 (1980)MathSciNetzbMATHCrossRefGoogle Scholar
  6. 6.
    Garey, M.R., Johnson, D.S., Sockmeyer, L.: Some simplified NP-complete problems. Theoretical Computer Science 1, 193–267 (1976)MathSciNetCrossRefGoogle Scholar
  7. 7.
    Golumbic, M.C.: Algorithmic Graph Theory and Perfect Graphs, 1st edn. Elsevier (2004)Google Scholar
  8. 8.
    Hajek, F., Ventresca, M.J., Scriven, J., Castro, A.: Regime-building for redd+: Evidence from a cluster of local initiatives in south-eastern peru. Environmental Science and Policy 14(2), 201–215 (2011)CrossRefGoogle Scholar
  9. 9.
    Huong, H.T.L., Pathirana, A.: Urbanization and climate change impacts on future urban flood risk in Can Tho city, Vietnam. Hydrology and Earth System Sciences Discussions 8(6), 10781–10824 (2011)CrossRefGoogle Scholar
  10. 10.
    Mernik, M., Heering, J., Sloane, A.M.: When and how to develop domain-specific languages. ACM Comput. Surv. 37(4), 316–344 (2005)CrossRefGoogle Scholar
  11. 11.
    Nepstad, D., Soares-Filho, B., Merry, F., Lima, A., Moutinho, P., Carter, J., Bowman, M., Cattaneo, A., Rodrigues, H., Schwartzman, S., McGrath, D., Stickler, C., Lubowski, R., Piris-Cabeza, P., Rivero, S., Alencar, A., Almeida, O., Stella, O.: The end of deforestation in the brazilian amazon. Science 326, 1350–1351 (2009)CrossRefGoogle Scholar
  12. 12.
    Pérez-Vega, A., Mas, J.F., Ligmann-Zielinska, A.: Comparing two approaches to land use/cover change modeling and their implications for the assessment of biodiversity loss in a deciduous tropical forest. Environmental Modelling and Software 29(1), 11–23 (2012)CrossRefGoogle Scholar
  13. 13.
    Soares-Filho, B., Nepstad, D., Curran, L., Cerqueira, G., Garcia, R., Ramos, C., Voll, E., McDonald, A., Lefebvre, P., Schlesinger, P.: Modelling conservation in the Amazon basin. Nature 440, 520–523 (2006)CrossRefGoogle Scholar
  14. 14.
    Soares-Filho, B., Pennachin, C., Cerqueira, G.: Dinamica - a stochastic cellular automata model designed to simulate the landscape dynamics in an Amazonian colonization frontier. Ecological Modeling 154, 217–235 (2002)CrossRefGoogle Scholar
  15. 15.
    Soares-Filho, B., Rodrigues, H., Costa, W.: Modeling Environmental Dynamics with Dinamica EGO. Centro de Sensoriamento Remoto, IGC/UFMG (2009)Google Scholar
  16. 16.
    Spring, J.H., Privat, J., Guerraoui, R., Vitek, J.: Streamflex: high-throughput stream programming in java. In: OOPSLA, pp. 211–228. ACM (2007)Google Scholar
  17. 17.
    Thapa, R.B., Murayama, Y.: Urban growth modeling of Kathmandu metropolitan region, Nepal. Computers, Environment and Urban Systems 35(1), 25–34 (2011)CrossRefGoogle Scholar
  18. 18.
    Zadeck, F.K.: Incremental Data Flow Analysis in a Structured Program Editor. Ph.D. thesis, Rice University (1984)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Bruno Morais Ferreira
    • 1
  • Fernando Magno Quintão Pereira
    • 1
  • Hermann Rodrigues
    • 1
  • Britaldo Silveira Soares-Filho
    • 1
  1. 1.Departamento de Ciência da ComputaçãoUFMGBelo HorizonteBrazil

Personalised recommendations