Keywords

domain specific languages, landscape, ocelet, interaction graph, relation

Start Date

1-7-2010 12:00 AM

Abstract

Environmental modelling often implies defining elements that relate and interact with each other, in a system that evolves with time. Ocelet is a domain specific environmental modelling language that was designed around a limited set of key concepts chosen to help modellers focus on their model, while leaving the implementation to an automatic code generation phase. Here, we focus more specifically on a concept called Relation in Ocelet that allows to build graphs that describe which elements of the model interact, and how. It is designed to be used in combination with two other main concepts: Entities (elements of the model) and Scenarios (describing the temporal evolution). Every Ocelet Relation can express one specific point of view of a system and several Relations can be combined to integrate different points of view in the same model. By its diversity, points of view convey expressive power: with different expert views on a system, at different spatial scales, or an environment sensed by its different components. Moreover, in this versatile design, a Relation defined for one specific model can be reused in a different modelling context. Libraries of generic interaction behaviours can thus be developed for efficient and reliable modelling practices. An example is given to illustrate how interaction graphs can be built, manipulated, and reused using Ocelet. Finally, we give insight into the code generation phase that produces the simulator.

Share

COinS
 
Jul 1st, 12:00 AM

Modelling the environment using graphs with behaviour: do you speak Ocelet?

Environmental modelling often implies defining elements that relate and interact with each other, in a system that evolves with time. Ocelet is a domain specific environmental modelling language that was designed around a limited set of key concepts chosen to help modellers focus on their model, while leaving the implementation to an automatic code generation phase. Here, we focus more specifically on a concept called Relation in Ocelet that allows to build graphs that describe which elements of the model interact, and how. It is designed to be used in combination with two other main concepts: Entities (elements of the model) and Scenarios (describing the temporal evolution). Every Ocelet Relation can express one specific point of view of a system and several Relations can be combined to integrate different points of view in the same model. By its diversity, points of view convey expressive power: with different expert views on a system, at different spatial scales, or an environment sensed by its different components. Moreover, in this versatile design, a Relation defined for one specific model can be reused in a different modelling context. Libraries of generic interaction behaviours can thus be developed for efficient and reliable modelling practices. An example is given to illustrate how interaction graphs can be built, manipulated, and reused using Ocelet. Finally, we give insight into the code generation phase that produces the simulator.