Design of a Model Base Framework for Model Environment Construction in a Virtual Geographic Environment ( VGE )

The model environment is a key component that enables a virtual geographic environment (VGE) to meet the scientific requirements for simulating dynamic phenomena and performing analyses. Considering the comprehensiveness of geographic processes and the requirements for the replication of model-based research, this paper proposes a model base framework for a model environment of a VGE that supports both model construction and modelling management, resulting in improved reproducibility. In this framework, model management includes model metadata, creation, deposition, encapsulation, integration, and adaptation; while modelling management focuses on invoking the model, model computation, and runtime control of the model. Based on this framework, to consider the problem of ever-worsening air quality, we applied the Linux-Apache-MySQL-Perl stack plus Supervisor to implement the model base to support a VGE prototype using professional meteorological and air quality models. Using this VGE prototype, we simulated a typical air pollution case for January 2010. The prototype not only illustrates how a VGE application can be built on the proposed model base, but also facilitates air quality simulations and emergency management.


Introduction
An important priority of geographic analysis has emerged as researchers have shifted from identifying static snapshots to exploring dynamic phenomena and supporting decision-and policy-making, providing early warnings, crisis management, and so on [1,2].Dynamic phenomena usually include a series of physical or human geographic processes that change across both spatial and temporal dimensions.Such diverse and complex geographic dynamics lead to challenges in connecting the relevant information and understanding the underlying mechanisms [3].Focusing on dynamic geographic research, computer-aided geographic experiments are becoming an increasingly common strategy for simulating and analysing dynamic phenomena with process models-mainly mathematical abstractions representing the essential features of complex systems and often utilized as basic tools [4,5].Hartmann has argued that large portions of current research in the natural and social sciences can no longer be imagined without simulations.In particular, simulations implemented on a computer are highly effective methodological tools [6].In this context, taking the model environment as the most important component, the virtual geographic environment (VGE), as an extension of a GISystem, has been proposed as the new generation of "geographic language" for studying dynamic geography and a fast-growing trend in geographic research [7][8][9][10][11].
By including both geographic processes and analytical models, a VGE can be used to perform geographic analysis, simulate geographic phenomena, represent and predict changes in the geographic environment, and evaluate human influences on the environment [9].In this context, a VGE is generally built with two cores-a geo-database and a geographic process model base.In contrast to the spatial analysis (e.g., network analysis) and spatial statistical analysis algorithms employed by previous GISystems, such as ArcGIS, QGIS, etc., geographic process models refer to models that are used for computing dynamic geographic processes.Combining such geographic process models with GISystem-based analyses can improve the understanding of gradual geographic evolution and allow new quantitative and systematic examinations of spatial and temporal patterns of dynamic geographic processes to occur [4,12,13].Therefore, featuring a model environment along with data, visualization, and interactive and collaborative components, a VGE is considered to be a suitable potential tool for advanced geographic analysis and problem-solving [9,13,14].
With the aim of studying the complex mechanisms of dynamic phenomena, since 2000, extensive research has been published regarding VGEs that has focused on model integration, computing, sharing, etc. Xu et al. developed a platform that integrated a computational grid and a VGE system with a meteorological model to improve model computational efficiency [15].To enable researchers in various fields to collaboratively produce computer-aided geographic environments, researchers have developed collaborative model environments for conducting virtual flood experiments and air pollution simulations [16][17][18].Concerning human geography, Song et al. combined pathogen diffusion and crowd simulation models in a VGE to simulate crowd evacuations for urban management [19].In addition to the aforementioned case studies, several researchers have focused on the theoretical underpinnings of model environments to solve dynamic geographic problems.Lin et al. suggested that technologies related to model management, reuse, and coupling should be explored to support collective modelling and simulation in VGEs [4].To assist modellers and model users in choosing an appropriate modelling approach for their integrated modelling, Kelly et al. compared five common approaches that are able to integrate different models regarding model development, spatiotemporal details and treatment of uncertainty [20].With regard to model sharing, different modelling and model reuse frameworks have been developed as open environments to take advantage of cloud computing [21].
Although these case-based research and theoretical achievements are valuable in enhancing the simulation capacity of VGEs to reproduce or predict geographic processes, they have mostly focused on model integration, sharing and reuse.However, reproducibility, which is a key problem in model-based research, is rarely mentioned because researchers have argued that in geography or ecology, where models tend to be more complex and more closely linked to real systems, modelling starting with replication is virtually absent [22].Axelrod stated that "Replication is one of the hallmarks of cumulative science.It is needed to confirm whether the claimed results of a given simulation are reliable in the sense that they can be reproduced by someone starting from scratch" [23].To replicate an existing simulation, sharing modelling information is required.Such sharing includes not only the model itself but also the modelling information regarding how to run it and how to understand its output files so that the whole simulation process can be traced correctly.To offset this replication limitation in VGEs, researchers developed a model base that includes both model sharing and model management [9,13].For example, Zhang et al. developed a VGE prototype designed to share both data and modelling parameters so that different users could reproduce modelling scenarios by retrieving the database [24].Given that modelling management technologies have contributed to the reproducibility in VGEs, researchers have increasingly realized the potential contribution of the model base theory and modelling management for improving the model reuse and modelling reproducibility of VGE models [13,25].This paper aims to design a framework employing model base theory for model environments of VGEs that supports model and modelling management to improve replication by enhancing model sharing, reuse and modelling traceability.The remainder of this paper is organized into four sections.We first discuss related works concerning (1) the research background and scope of reproducibility in model-based research and (2) the development of a model base and model management for geographic process modelling in Section 2. In Section 3, we propose a conceptual and theoretical framework employing model base theory for designing model environments in VGEs that considers model creation, decomposition, encapsulation, sharing, modelling management, and so on.Section 4 describes the implementation of a VGE prototype built using the Linux-Apache-MySQL-Perl (LAMP) stack and Supervisor to realize the framework design in a model environment, using a case study of air quality management in the Pearl River Delta (PRD), China.This paper culminates with conclusions and a discussion of the challenges in VGE model-based research and development.

Reproducing Model-Based Research
Recognizing that the number of research projects using computational models has steadily increased, the resulting publications often lack a model code and documentation, which hinders replication, the verification of results, and the accumulation of knowledge.A key criterion in science is transparency-the potential for others to replicate a set of research procedures and simulation results.Transparency becomes ever more important as the systems we analyse become more complex [26].Balaban emphasized a need to increase trust in models, a concept related to validity, replicability and tractability [27].In contrast to the definition of replication as "experiment replication," Wilensky and Rand defined replication "as the implementation (replicated model) by one scientist or group of scientists (model replicators) of a conceptual model described and already implemented (original model) by a scientist or group of scientists at a previous time (model builders)" [28].This conception is known as "model replication" and is tested by comparing the output of the re-implementation with the output of the original implementation [22].Model replication can lead to several benefits.Zhong and Kim concluded that replication can improve agent-based model reliability [29].Thus, the model environment should have multiple levels by which not only the information regarding the model itself can be managed but also model execution, with respect to the data used and parameterizations (e.g., the spatial resolution of the air quality model used to compute different air quality indices) [30].
Based on the studies listed above, it can be concluded that, to replicate model-based research, it is necessary to have a sufficiently detailed description of the original computational model, its operation and objectives, as well as an accessible runtime environment (or sufficient information to recreate such an environment) in which to reproduce model-based research procedures [31].The use of software engineering best practices to increase model transparency and improve research reporting practices, disclosing all the necessary data, improves comparisons of simulation results.With such detailed information of a simulation, Seagren conducted a successful replication study of an agent-based computational model and noted that the detailed information permitted them to additionally implement a richer and more complex version of the original model, leading to improved insights regarding the studied phenomena [32].

Model Base and Model Management
The terms model library [31], the Network for Computational Modelling in the Social and Ecological Sciences (CoMSES Net) Computational Model Library (CML) [33], and model bank [34] are treated as having the same meaning in this study and are referred to as "model base," which is an organizational collection of models contained in an electronic storage medium accessible to users and programs [35].The models in the model base are expected to be reused as building blocks for more complex systems, provided that they can be linked together in a meaningful way (matching the variables, scales, etc.) [26].As a valuable supplementation of the archived models in a model base, which is intended for sharing source code, documentation, and so on, managing the organizational models in a model base involves a wide variety of functions.These may include model creation and editing, querying and updating models, executing models, and generating reports so that others can replicate a set of modelling procedures [31,36,37].The term model management was coined in the early-to-mid-seventies in the context of managing models for a decision support system, aiding in the creation, storage, retrieval, manipulation, and utilization of models for decision-makers, so they could make better use of the models [5, 38,39].These functions are analogous to those of a database management system, where the objects of interest are data records instead of models.Thus, a model base management system (MBMS) should be able to store and manipulate models in ways similar to the methods database management systems (DBMS) store and manipulate data [34].Therefore, it is not surprising to see the strong influence of database technology in the creation of model management systems [35,40].
The analysis above shows that one of the key assumptions underlying an MBMS is that models, like data, are important organizational resources and should be managed with as much rigor and attention as data [5].Thus, an MBMS should provide functional counterparts of a DBMS, including model description, model manipulation, and model control, although an MBMS is expected to be much more complex than a DBMS [35].When developing VGEs, researchers have also mentioned the need for a model base frequently in recent years, but investigations of model base theory and of MBMS for VGE models is still in progress [9,13].Based on this foundational research, it is reasonable to investigate the model base and MBMS and design the framework for a VGE model to improve the replication capabilities of model-based research.

Model Base Framework for Model Environments
The model component is the main component of a VGE because the fundamental goal of a VGE is to simulate and investigate dynamic processes by evolving integrated models [41].Meanwhile, the model component is extremely relevant to the remaining three components, as was thoroughly analysed by Zhang et al. [13].In this context, the model environment in a VGE focuses on model registration, sharing, reusing and execution [9].Considering these four aspects, as well as the replication of model-based research, the model base framework is designed as shown in Figure 1.early-to-mid-seventies in the context of managing models for a decision support system, aiding in the creation, storage, retrieval, manipulation, and utilization of models for decision-makers, so they could make better use of the models [5, 38,39].These functions are analogous to those of a database management system, where the objects of interest are data records instead of models.Thus, a model base management system (MBMS) should be able to store and manipulate models in ways similar to the methods database management systems (DBMS) store and manipulate data [34].Therefore, it is not surprising to see the strong influence of database technology in the creation of model management systems [35,40].The analysis above shows that one of the key assumptions underlying an MBMS is that models, like data, are important organizational resources and should be managed with as much rigor and attention as data [5].Thus, an MBMS should provide functional counterparts of a DBMS, including model description, model manipulation, and model control, although an MBMS is expected to be much more complex than a DBMS [35].When developing VGEs, researchers have also mentioned the need for a model base frequently in recent years, but investigations of model base theory and of MBMS for VGE models is still in progress [9,13].Based on this foundational research, it is reasonable to investigate the model base and MBMS and design the framework for a VGE model to improve the replication capabilities of model-based research.

Model Base Framework for Model Environments
The model component is the main component of a VGE because the fundamental goal of a VGE is to simulate and investigate dynamic processes by evolving integrated models [41].Meanwhile, the model component is extremely relevant to the remaining three components, as was thoroughly analysed by Zhang et al. [13].In this context, the model environment in a VGE focuses on model registration, sharing, reusing and execution [9].Considering these four aspects, as well as the replication of model-based research, the model base framework is designed as shown in Figure 1.

Model Definition Language
Models in the model base are defined using model definition language (MDL), yielding a model definition which describes the model information instead of model implementation.Model definitions are mostly relatively independent from model implementation and execution, which occur in model servers.Using MDL, model providers can describe models in a flexible and structured manner and model users can obtain this descriptive information.As a standardized language, MDL reduces the heterogeneity of model descriptions.
In the model base design, model base managers can define the MDL grammar.An example is given in Table 1.Implementing a model environment in a VGE, developers can define models according to MDL grammar accordingly in the formatting of tables.

Model Organization
A large and diverse set of geographic models have been developed in recent years across multiple geographical fields that use various model mechanisms, including agent-based models, dynamic models, statistical models, and so on.When investigating a geographic problem, we first decompose the problem into relevant subfields and search for models that can solve these sub-problems well; then, we consider the model mechanism or its implementation.To assist researchers in searching for and managing models efficiently from a model base, based on the analysis above, a model base dictionary is one possible method for organizing the models.Supported by MDL, one instance of a model base dictionary is shown in Figure 2. In the model base design, model base managers can define the MDL grammar.An example is given in Table 1.Implementing a model environment in a VGE, developers can define models according to MDL grammar accordingly in the formatting of tables.Typical resources and publications of models

Model Organization
A large and diverse set of geographic models have been developed in recent years across multiple geographical fields that use various model mechanisms, including agent-based models, dynamic models, statistical models, and so on.When investigating a geographic problem, we first decompose the problem into relevant subfields and search for models that can solve these subproblems well; then, we consider the model mechanism or its implementation.To assist researchers in searching for and managing models efficiently from a model base, based on the analysis above, a model base dictionary is one possible method for organizing the models.Supported by MDL, one instance of a model base dictionary is shown in Figure 2.

Model Manipulation Language
Using a model manipulation language (MML) compiler in MBMS, advanced model users can add new models to the model base and deploy models for execution in model servers.In addition to such model-relevant manipulation, users also need to manage and maintain models through tasks including model registration, decomposition, encapsulation, integration, etc. (Figure 3).
Model registration enables the model base and model creation by interpreting MDL grammar; thus, new models can be added and stored in the model base.Meanwhile, users of VGEs can retrieve models using key words or search the model base to select desired models for geographic process simulations, using queries that consider modelling assumptions, run-time performance, etc. [42].Sometimes, users may not be able to use a model directly from the model base.Therefore, to improve model reuse and sharing, MML provides capabilities for decomposing models into geographically meaningful submodels.Furthermore, model encapsulation equips models with standardized interfaces, contributes to forming model components in the model base and enables models to be transparently accessed [21].Model integration, herein the same as model composition, involves searching the model base to generate a sequence of models to be executed, as well as identifying the linkage of each model for model execution [42].

Model Manipulation Language
Using a model manipulation language (MML) compiler in MBMS, advanced model users can add new models to the model base and deploy models for execution in model servers.In addition to such model-relevant manipulation, users also need to manage and maintain models through tasks including model registration, decomposition, encapsulation, integration, etc. (Figure 3).
Model registration enables the model base and model creation by interpreting MDL grammar; thus, new models can be added and stored in the model base.Meanwhile, users of VGEs can retrieve models using key words or search the model base to select desired models for geographic process simulations, using queries that consider modelling assumptions, run-time performance, etc. [42].Sometimes, users may not be able to use a model directly from the model base.Therefore, to improve model reuse and sharing, MML provides capabilities for decomposing models into geographically meaningful submodels.Furthermore, model encapsulation equips models with standardized interfaces, contributes to forming model components in the model base and enables models to be transparently accessed [21].Model integration, herein the same as model composition, involves searching the model base to generate a sequence of models to be executed, as well as identifying the linkage of each model for model execution [42].

Modelling Management
Aiming at improving the ability to replicate model-based research, the goal of modelling management in such a framework is to manage model parameters and data, as well as model execution and control.Model parameterization and model data functions are designed to manage both model settings and the relevant input as well as intermediate and output data as a whole in the

Modelling Management
Aiming at improving the ability to replicate model-based research, the goal of modelling management in such a framework is to manage model parameters and data, as well as model execution and control.Model parameterization and model data functions are designed to manage both model settings and the relevant input as well as intermediate and output data as a whole in the MBMS.Furthermore, in comparison to the model definition in the model base, distributed models can be deployed on multiple platforms at geographically dispersed sites; they are activated and executed via the Internet.Thus, the model execution environment and model controls can be manipulated by server managers to provide a suitable modelling environment and give priority to or suspend the execution of a given model, etc.
Based on such a framework, when users begin to interact with a VGE through an interactive environment, they can conduct simulations through the following steps.

1.
Users select a suitable model for simulation from the model base; 2.
They provide required modelling parameters, including the model host, data and the modelling setting; these parameters are then uploaded to the MBMS; 3.
Using the parameters in the database, the system can create a model control file and activate the corresponding model based on the linkage information defined by MDL in the model base via the Internet; 4.
The activated model on a server conducts a simulation that adheres to the model execution function, which is controlled by server managers; 5.
When the simulation is complete, the system uploads the simulation results to the MBMS; 6.
Subsequently, users can retrieve the modelling parameters and the simulation results simultaneously.
Such a modelling management design is helpful in two ways.On one hand, different users can retrieve simulation results from the MBMS to check the data, the model settings, etc., to reach a consensus regarding the simulation result or to conveniently be able to reproduce the simulation.On the other hand, this design can also help new users learn from previous experience, as prior simulation parameters are stored in the database system.

Background
The PRD region in southern China includes nine cities in Guangdong province with a population of approximately 65 million [43].Rapid urbanization and high energy consumption have recently driven air pollution to harmful levels.Air pollution is a growing concern for both the PRD and its geographically adjacent region, the Hong Kong (HK) Special Administrative Region in China.It has long been thought that the air pollution situation in HK is significantly affected by the PRD region, particularly when secondary products such as O 3 and PM 2.5 are considered instead of classical primary pollutants such as SO 2 and the total suspended particulate matter [44][45][46].
Given the severe air quality problem and the regional characteristics of air quality management for HK and the PRD region, which are under the 'one country, two systems' principle, replication of policy-oriented simulations is urgent for both sides [24].On one hand, to implement a scientific policy for managing such cross-boundary and regional air quality problems, different researchers or stakeholders typically simulate a set of scenarios that consider different potential policies [47].However, because the simulations emanating from both HK and PRD have different starting points and targets, the simulation results from one group are difficult for other groups to accept [13].In such a context, being able to replicate simulations would help the different participants in air quality management efforts reproduce the simulation procedures to achieve a consensus regarding the simulation results and even the potential policies, which are an important governing factor for air quality management [48].On the other hand, air quality is such a complex geographic process, affected by geographic ground surface, meteorological conditions and the processing of emission inventory, that the simulation results could be very different due to the inappropriate utilization of datasets or simulation parameters.This scenario reflects the need for modelling management and the capability to replicate each simulation so it can be traced and re-verified when necessary.
The current modelling systems for air quality management in the study area focus primarily on the mechanisms underlying the air quality problem or on collaborative simulations; they pay limited attention to the reproducibility of their modelling studies [17,[49][50][51][52]. Considering this background analysis, we applied the framework of the model base to the model environment and developed one VGE prototype to solve the replication problem in air quality simulation for scientific regional management.

Meteorological and Air Quality Models
To develop the VGE for air quality simulation, a set of models were implemented in the model environment, including the Weather Research & Forecasting Model (WRF) for meteorological simulation, the Community Multiscale Air Quality Modelling System (CMAQ) for air quality simulation and the Sparse Matrix Operator Kernel Emissions Model (SMOKE) to prepare the emission inventory for CMAQ.In more detail, WRF was designed to be a flexible atmospheric simulation system in order to study numerically based weather prediction, regional climate, air quality, regional hydrology and water resources [53,54].The model had numerous options for various physical processes, including a planetary boundary layer scheme, land-surface models, etc. [55].
The CMAQ modelling system was designed to simulate overall air quality, and included state-of-the-art capabilities for modelling multiple air quality issues, such as tropospheric ozone, fine particles, acid deposition, etc.Using the meteorological force field from the WRF, CMAQ simulated various chemical and physical processes that are considered important for understanding atmospheric trace gas transformations and distributions [56].
Air pollutant emission inventories are fundamental information for modelling air pollution formation and transport as well as for guiding air quality management.A localized SMOKE was applied by our research group to prepare the emission inventories for CMAQ that cover HK and the PRD region [57].

Model Base Design and Implementation
In this system, we applied Power Designer to design the conceptual model of the model base to store and manage model definition information (Table 2).Through MDL grammar, new models can be registered into the model base, and each model can be linked and executed on corresponding distributed servers through the linkage.Meanwhile, via an MML compiler, users can decompose, encapsulate and integrate models, and register them in the model base.For example, the definition of WRF in the model base is shown in Table 3; CMAQ and SMOKE have similar definitions.We deployed a MySQL database to store these model definitions and implement the model base.To improve the ability to replicate model-based research, we implemented our framework using LAMP architecture to build the modelling management features, including parameterizations and runtime control [24,58,59].LAMP consists of several open source projects that provide a complete and robust solution for the operating system, the web server, the database, and a scripting language.The server is built on the Linux operating system.The MySQL database manages the modelling process information and is able to integrate well with different operating systems.Apache is used as the web server; Perl can access the MySQL database.Taking the WRF simulation as an example, Table 4 shows the parameters important to modelling and illustrates the database design.In this case, when users activate the WRF model and set parameters in the interface, this information will be uploaded to the database and the config files to execute the WRF model will be created.After the simulation, the results will be stored in the working directory.This approach forms the basic working procedure to implement modelling management and make such processes traceable and replicable, as explained in Section 3.2.2.After launching a simulation, there will undoubtedly be a time when researchers want to stop or restart it, or see its status.The models we used are all deployed in the Linux operating system; therefore, we deployed Supervisor to provide control over the model execution.Supervisor is a client/server system that allows users to monitor and control multiple running processes (http://supervisord.org/).

VGE Prototype Implementation
In addition to the model environment design and implementation, the data and interaction environments were also implemented in the VGE prototype (Figure 4).To facilitate optimal end user interaction, a Graphical User Interface (GUI) was developed using the C++ programming language.The compute-intensive dynamic models were deployed on the Community Enterprise Operating System (CentOS) on eight nodes, each of which has 24 cores.The system activates the dynamic models by calling Perl scripts using the Uniform Resource Locator (URL) to create the GUI via Supervisor.A box-based method was implemented for visualization based on the OpenSceneGraph 3D graphics toolkit to visualize the dynamic air quality process.
therefore, we deployed Supervisor to provide control over the model execution.Supervisor is a client/server system that allows users to monitor and control multiple running processes (http://supervisord.org/).

VGE Prototype Implementation
In addition to the model environment design and implementation, the data and interaction environments were also implemented in the VGE prototype (Figure 4).To facilitate optimal end user interaction, a Graphical User Interface (GUI) was developed using the C++ programming language.The compute-intensive dynamic models were deployed on the Community Enterprise Operating System (CentOS) on eight nodes, each of which has 24 cores.The system activates the dynamic models by calling Perl scripts using the Uniform Resource Locator (URL) to create the GUI via Supervisor.A box-based method was implemented for visualization based on the OpenSceneGraph 3D graphics toolkit to visualize the dynamic air quality process.

Application of the VGE Prototype
Taking the air quality of January 2010 as an example, we conducted a preliminary simulation to illustrate the replicative capabilities of our VGE prototype (Figure 5).Using the VGE GUI, users can select models from the model base and set the modelling parameters for different models or submodels.For example, we executed the CMAQ submodel, as shown in Figure 5a.After defining the modelling parameters and data, they were uploaded to the modelling management database (Figure 5b) and the system created a modelling config file, called Supervisor and activated the corresponding models for computation.When the simulation was completed, the modelling results were uploaded to the modelling management database and the input, modelling parameters and modelling output were linked together for further visual analysis (Figure 5c).Using this approach, different users can adopt the models from the model base and retrieve the modelling settings to reproduce a previously executed simulation conveniently.Therefore, it can be concluded that the framework has been implemented as a prototype, and that it is helpful for improving model reusability and for reproducing results.

Application of the VGE Prototype
Taking the air quality of January 2010 as an example, we conducted a preliminary simulation to illustrate the replicative capabilities of our VGE prototype (Figure 5).Using the VGE GUI, users can select models from the model base and set the modelling parameters for different models or submodels.For example, we executed the CMAQ submodel, as shown in Figure 5a.After defining the modelling parameters and data, they were uploaded to the modelling management database (Figure 5b) and the system created a modelling config file, called Supervisor and activated the corresponding models for computation.When the simulation was completed, the modelling results were uploaded to the modelling management database and the input, modelling parameters and modelling output were linked together for further visual analysis (Figure 5c).Using this approach, different users can adopt the models from the model base and retrieve the modelling settings to reproduce a previously executed simulation conveniently.Therefore, it can be concluded that the framework has been implemented as a prototype, and that it is helpful for improving model reusability and for reproducing results.

Discussion
The sample application illustrates the application of the prototype through a case study conducted solely by our research group.While this example is helpful in allowing users to understand the prototype workflow, a wider evaluation of the prototype conducted by other users would make the work of this paper more convincing.Because this research project is still under development, a wider application of the system and an assessment based on quantitative user experience will be conducted in future studies.Meanwhile, to expand the application and exchange of the system, we will also consider making our system Open Source based on the Berkeley Software Distribution (BSD) license.

Discussion
The sample application illustrates the application of the prototype through a case study conducted solely by our research group.While this example is helpful in allowing users to understand the prototype workflow, a wider evaluation of the prototype conducted by other users would make the work of this paper more convincing.Because this research project is still under development, a wider application of the system and an assessment based on quantitative user experience will be conducted in future studies.Meanwhile, to expand the application and exchange of the system, we will also consider making our system Open Source based on the Berkeley Software Distribution (BSD) license.

Conclusions and Future Work
Models are widely acknowledged as important tools in dynamic geographical research; thus, models have become key components in VGEs.However, in developing a VGE, the ability to replicate model-based research is a challenge faced by geographers.To address this problem, employing model base theory, this paper designed a framework for VGE models that supports both model storage and model management with the goal of improving the ability to replicate models to enhance model sharing, reuse and modelling traceability.The design of such a framework involves designing a model base and an MBMS along with MDL and MML.Applying LAMP and Supervisor, we implemented a framework for the model environment and developed a VGE prototype, including the model data and an interactive environment based on C++ and openscenegraph technologies.Using a case study involving air quality simulation for January 2010, we demonstrated the prototype workflow and showed an example of the database tables that store and manage both data and parameters.Based on the records of model definitions and each executed simulation that is stored in the MBMS, various users can reuse models and reproduce simulations by retrieving existing models and parameters from the database.This prototype VGE demonstrated both modelling management and an improved ability to replicate model-based research.
Although the contribution of the model base framework is apparent for both model-based research and VGE development, many challenges remain.Model replication is complex for both model developers and model users.Thiele et al. even encouraged journal editors to create a new category called "Model replication and analysis" where modellers can publish their replication procedures when they led to new and important insights [22].Concerning interactive geographic processes, interdisciplinary models that address various mechanisms are required, which makes model replication much more difficult to achieve.Furthermore, although designing a model base framework for VGEs is a valuable trial effort, a model base system is more complex than a typical database system.In this context, researchers are still a long way from designing a widely-recognized model base and MBMS with a more widely applicable efficiency assessment.Such a model base and MBMS would require a thorough review of models at suitable abstraction levels that must considering model domains, model details, and many other aspects.

Figure 1 .
Figure 1.Model base framework for the model environment portion of virtual geographic environments (VGEs).

Figure 1 .
Figure 1.Model base framework for the model environment portion of virtual geographic environments (VGEs).
ISPRS Int.J. Geo-Inf.2017, 6, 145 5 of 153.1.Model Base and Model Organization3.1.1.Model Definition LanguageModels in the model base are defined using model definition language (MDL), yielding a model definition which describes the model information instead of model implementation.Model definitions are mostly relatively independent from model implementation and execution, which occur in model servers.Using MDL, model providers can describe models in a flexible and structured manner and model users can obtain this descriptive information.As a standardized language, MDL reduces the heterogeneity of model descriptions.

Figure 2 .
Figure 2. Model organization in model base.Figure 2. Model organization in model base.

Figure 2 .
Figure 2. Model organization in model base.Figure 2. Model organization in model base.

Figure 3 .
Figure 3. Conceptual design of a model base management system (MBMS).

Figure 3 .
Figure 3. Conceptual design of a model base management system (MBMS).

Figure 5 .
Figure 5. Application of a VGE prototype for air quality simulation.(a) Graphical User Interface (GUI) for model selection and model setting; (b) Modelling parameters managed in MySQL database; (c) Visualization of simulated air quality process in the VGE.

Figure 5 .
Figure 5. Application of a VGE prototype for air quality simulation.(a) Graphical User Interface (GUI) for model selection and model setting; (b) Modelling parameters managed in MySQL database; (c) Visualization of simulated air quality process in the VGE.

Table 1 .
One instance of model definition language (MDL) grammar.

Table 1 .
One instance of model definition language (MDL) grammar.

Table 2 .
Model base design in an implementation with Model_name as an identifier.

Table 3 .
Definition of the Weather Research & Forecasting (WRF) model in the model base.

Table 4 .
Modelling management of WRF in an implementation with WRF_casename as an identifier.