GENIE:GENIEToolbox

Andrew Price, University of Southampton, ([mailto:a.r.price@soton.ac.uk a.r.price@soton.ac.uk])

GENIE Toolbox
The GENIE Toolbox provides functionality to configure, execute and manage GENIE Earth System Models and their output. The toolbox is provided for the Matlab problem solving environment.

Discussion here introduces the philosophy of the GENIE Toolbox and discusses its application in managing GENIE models. This document details the three primary functions of the toolbox that provide a user-friendly means of using Grid computing with GENIE. With the GENIELab software and a suitably prepared model binary a user can execute and restart the model with ease on a variety of distributed platforms, monitor the progress of compute jobs and retrieve output upon completion. Using Matlab scripting it is then easy to define simple ensemble studies such as parametric sweeps for day to day work with the model. We build on these three core routines to demonstrate how GENIE models can be exposed as tuneable functions, accepting as input an array of parameter values and returning (after simulation) a measure of the model’s (mis)match to observational data. Wrapping GENIE models in this way allows optimisers including Matlab’s optimisation toolbox or the OPTIONS Design Search and Optimisation package to tune GENIE models to improve the fit to the provided data. Examples of tuning single objective measures of fitness to data are presented using Kriging and Genetic Algorthms using the OPTIONS package. The application of the multi-objective Non-dominated Sorting Genetic Algorithm (NSGA-II) using surrogate Krig modelling is also explained. The documentation concludes by describing how large collaborative ensemble studies are enabled by using the shared database.

Prerequisites
To make full use of the GENIE Toolbox you will need the following:
 * Matlab
 * Personal X.509 Certificate
 * National Grid Service Registration

Installation
Please install the GENIE Toolbox using the GENIELab installer

Quick Start

 * A quick introduction to the GENIE Toolbox

Tutorial

 * GENIE Toolbox Tutorial

Examples

 * Parametric study
 * LocalRunDirUniq
 * Examples
 * Scripted ensemble study
 * Tuning studies
 * Wrapping GENIE as a tuneable function
 * Parameter Mapping
 * Wrapping GENIE for concurrent evaluation
 * Wrapping optjobparallel2 functions as a single tuneable function
 * OptionsMatlab: Design of Experiment
 * Matlab Optimisation Toolbox: fminsearch
 * OptionsMatlab: Response Surface Modelling
 * 4D Optimisation
 * OptionsMatlab: NSGA2 Multiobjective Optimisation
 * Collaborative ensemble study

Useful Information

 * Grid certificate management
 * Available compute resource
 * Firewall configuration

Frequently Asked Questions

 * FAQ
 * How do I convert a config file for use in the GENIE Toolbox?
 * How do I create a model archiving function for the GENIE Toolbox?
 * How do I use Condor via SSH?

Function Reference
GENIE Toolbox Function Reference
 * Core Functions
 * gc_jobretrieve
 * gc_jobstatus
 * gc_jobsubmit
 * write_condor_submission
 * write_configuration_files
 * write_execute_script
 * write_multiplejobs_script
 * Utility Functions
 * createResource
 * createRuntime
 * gc_findMyDBID
 * gc_findMyHomeDir
 * gc_version
 * GENIE Functionality for OptionsMatlab
 * op_createParameterMapping
 * op_GENIE2OPTIONS
 * op_genieparallel2
 * op_genieparallel2_parse2
 * op_OPTIONS2GENIE
 * op_ParameterMapping