Model Evaluation with OpenMOLE

Mathieu Leclaire
Jonathan Passerat-Palmbach
Romain Reuillon

Purpose

  • Provide state-of-the-art exploration methods
  • Tackle scalability using distributed computing
  • Is not intrusive in the model logic
  • Interoperate smoothly with your Models

1 - Model?



Your model here, with the plugins and data.

NetLogo on Fire


val model =
  NetLogo6Task(
    workDirectory / "Fire.nlogo",
    List("setup", "while [any? turtles] [go]")) set (
    inputs += seed,
    outputs += (seed, density),
    netLogoInputs += (density, "density"),
    netLogoOutputs += ("burned-trees", burned)
  )

Rrrrrrrrrr


val i = Val[Int]
  
val rTask = 
  RTask("""
    source("function.R")
    function(i)""") set (
    resources += workDirectory / "function.R",
    rInputs += i
  )

Feeling snaky? Python


val pyTask = 
  CARETask(
    workDirectory / "../python.bin",
    "python matrix.py data.csv 2 out.csv"
  ) 

2 - Method?


  • Data reconstruction
  • Parameter estimation
  • Sensitivity analysis
  • Robustness assessment
  • Optimisation
  • Diversity research
  • Hybrid, ex: optimisation + diversity
Designed in a scalable manner, handle stochasticity, is usable on any models and environments.

Genetic Algorithm

Master/slave

Diversity research

3 - Execution environment?


Prototype Small, Scale for Free

Zero deployment approach

  • User code is automatically deployed at runtime
  • No prior knowledge of remote environment needed
  • No installation required on any machine

Transparent access

  • Access as the user would do it
  • Use user credential
  • No preliminary step

Automatic data transfers
(+ Replica management)

Files and folders transfers are handled transparently by OpenMOLE

Today

Multi-thread
Delegation through SSH
PBS (on ssh)
SLURM (on ssh)
Condor (on ssh)
SGE (on ssh)
OAR (on ssh)
EGI Grid (trough DIRAC)

Grid Computing

4000 cores (after a little administrative process... we can help you)

And now: hands on!

The terminology



The interface



Useful Links

Documentation www.openmole.org
Development version next.openmole.org
Source code github.com/openmole
Market place github.com/openmole-market
Demo instance demo.openmole.org

Thanks!

romain.reuillon@iscpif.fr
mathieu.leclaire@iscpif.fr
j.passerat-palmbach@imperial.ac.uk