openModeller - TDWG

clappingknaveSoftware and s/w Development

Dec 14, 2013 (3 years and 8 months ago)

61 views



1

openModeller

Presentation Plan:

Overview of openModeller

OMWS: an open standard for distributed ecological
niche modelling

openModeller in relation to TDWG



2

openModeller Overview

Project started by CRIA, Brazil in 2003

An Open Source project hosted on sourceforge

Written in C++ with SWIG language bindings

Provides an environment for carrying out
fundamental ecological niche modelling



3

openModeller Architecture

libopenmodeller is the core component

Provides data IO for gdal supported raster formats

Seamlessly manages rasters in different formats

Handles sampling of rasters at occurrence sites

Writes model outputs to raster files

Algorithm plugins

Algorithm plugins extend the library with support for
various ecological niche modelling implementations

GARP, Bioclim, CSM etc are already implemented




4

openModeller Architecture

openModeller Desktop

A graphical user interface
for openModeller

Version 0 : A wizard based
gui (stable version)

Version 1: A traditional
desktop application
(unstable)

openModeller console
interface also available



5

openModeller, open architecture

Client

(e.g. openModeller Desktop)

Modelling Engine

(libopenmodeller)

Modelling Algorithm

(e.g. GARP)



6

openModeller,
distributed
,

open architecture

Client

(e.g. openModeller Desktop)

Modelling Engine

(libopenmodeller)

Modelling Algorithm

(e.g. GARP)

SOAP Client Layer

SOAP Server

Internet



7

Modelling Engine

(libopenmodeller)

Modelling Algorithm

(e.g. GARP)

Modelling Engine

(libopenmodeller)

Modelling Algorithm

(e.g. GARP)

openModeller,
distributed
,

open architecture

Client

(e.g. openModeller Desktop)

Modelling Engine

(libopenmodeller)

Modelling Algorithm

(e.g. GARP)

SOAP Client Layer

SOAP Server

Internet

Condor

Cluster



8

openModeller,
distributed
,

open architecture

Client

(e.g. openModeller Desktop)

Modelling Engine

(MaxEnt)

SOAP Client Layer

SOAP Server

Internet



9

openModeller WSI

Using SOAP (Document / Literal)

Separate XML Schema for types & elements

API is very simple (few methods)

Prototype implementation: gSOAP on server
side, Perl with SOAP:Lite on client side
(console) and gSOAP on client side (GUI).

Protocol not specific to openModeller






10

getLayers()

Used to determine what environmental layers
are on the server.



11

getLayers()

Presented to user
as heirachical tree

Layers have
identifiers that could
resolve files,
database urls (WCS
in the future)



12

getAlgorithms()

Used to determine what modelling algorithms
are on the server.



13

getAlgorithms()

Presented to user as list

Users can set parameter values

Document includes descriptive data to aid user
decision making



14

createModel()

Uses locality, algorithm and layer data to invoke
a model creation job on the server
-
> Job Ticket



15

createModel()

Returns a serialised model definition document



16

projectModel()

Used to render a probaility of occurence map



17

getMapAsUrl()



18

Additional Methods

ping()

getProgress()

getLog()

getMapAsUrl()

getMapAsAttachment()



19

Integration With TDWG/OGC

Automated resolution of taxonomy (GBIF Portal)

Automated retrieval of occurrence data (WFS +
GML)

Metadata
-

Provenance of models (what species
was used for this model, using which data from
which institutions etc) (OGC)

Access to environment data via WCS

APIs for analysis (missing from TDWG)




20

Acknowledgements

More Info

http://openmodeller.sf.net

CRIA, Brazil

(http://cria.org.br)

FAPESP, Brazil
(
http://www.fapesp.br)