OpenMOLE 1.0

 It’s finally there!

After 6 years of hard work we made it to 1.0 (Heroic Hippo). It combines stability and ergonomic interfaces to provide the best model exploration tool ever made. OpenMOLE is a workflow engine designed to leverage the computing power of distributed execution environments for naturally parallel processes. A process is said naturally parallel if the same computation runs many times for a set of different inputs, such as model experiment or data processing…

We are very proud of this success, that has been made possible thanks to the effort and support of a dynamic community of developers, users and also several academic funding.

This version has mostly focus on stabilization, with some novelties nevertheless:
* the distributed computing feature of OpenMOLE are now very robust and efficient,
* the evolutionary algorithm part has matured and is usable to explore models from the console API,
* a new distributed environments (SLURM) is now available.

In the next versions:
* the graphical interface will be multi-user, web based and run in the browser,
* new environments will be provided (Condor, SGE),
* advanced methods such as genetic algorithm will be usable from the graphical interface,
* it will be possible to generate console scripts from a graphical workflow,
* bootstrapping methods that quickly and automatically embed your models in OpenMOLE will be implemented.

The OpenMOLE team

The OpenMOLE software

OpenMOLE (version 0.5) is a piece of software for intensive scientific computing. OpenMOLE is the result of 4 years of daily work with model exploration issues in diverse fields (Human Sciences, Physics, Geography, Food-processing,…). It is 100% FOSS (Free and Open Source Software), 100% written in Scala.

It targets modelers who explore their models at wide scales. It makes it possible to generate automatically wide design of experiments (full-factorial, LHS, Saltelli…) and to take advantage of the computing power of massively parallel execution environments such as computing grids and clusters. It exposes a workflow formalism to design parallel processings in a natural way.

Strengths of OpenMOLE:

  •  a zero-deployment approach: the programs (C, C++, Python, Java, Scala, NetLogo, etc) are embedded at runtime and do not require installing software on execution machines,
  •  a small number of base concepts to handle (4):
    1. tasks (the executable components containing the model for instance);
    2. prototypes (types variables) which are transferred from one task to another;
    3. samplings (how to explore my model?);
    4. environments (where my jobs are executed?);
  •  a modular development for extending the platform with plug-ins in short time and based on OSGi,
  • an optimized and effortless access to grid resources (automatic resource discovery, eager submission, failure handling, management of data transfer …),
  •  a specific task to embed NetLogo models,
  •  a formal workflow validation prior to the execution based on a strongly typed dataflow,
  •  its scalability: it manages  up to hundreds of thousands of task executions from a laptop;
  •  a scripted interface as well as an ergonomic graphical user interface.

Mathieu Leclaire and Romain Reuillon