You are on page 1of 21

The Modern Life of a Model

Bert Jagers

15 July 2015

Outline

Brief history
Current status and ongoing developments
Operational forecasting
Integrated modelling
Interactive exploration

15 July 2015

The old days

The old days

Running models: models wrote letters

>
>
>
>
>

edit input
mymodel1 < input
edit fort.7
conversion.bat
mymodel2

Running models

With desktop environments came graphical user


interfaces ...
Files remained
the same, but
input generation
became easier
Running a sequence
of models became
sometimes more
difficult due to
the GUIs...

15 July 2015

These days

Operational Forecasting
Primary focus is reliability and stability!
No fancy model interactions if not absolutely needed.
Auditable: what happened
when and why?
--> Usually file based

However, hardwiring makes the


system hard to adjust, so
increasing use of exchange
standards.
15 July 2015

Example: Delft-FEWS
The system prepares
input in a generic
manner and expects
output in standardized
format.
It doesnt start the model
but just a model
wrapper.
The wrapper triggers the
actual computation
and the necessary
conversion steps.

Delft-FEWS

General Adapter
standardized
output data

standardized
input data

Model
Model
Adapter

model
input data
http://oss.deltares.nl/web/delft-fews/
15 July 2015

Model

model
output data

Example: DRIHM
A cyberinfrastructure that allows researchers
to experiment with forecasting chains
across a heterogeneous architecture
consisting of HPC, grid, cloud computing
resources
http://www.drihm.eu

MAP process to
add new models.
Metadata
Adaptors
Portability
None of this is trivial, e.g.
rapidly changing hardware
architectures.

15 July 2015

Sequential execution
However, all actions are still sequential:
Great for auditing and stability.
But not so great for performance.

Data

Action

However the part of the process (workflow)


that cant be parallellized determines in the
end the scalability

Action
Storage
Action
Action

Results

15 July 2015

Tight coupling: models become more social


Why wait until one model has finished before starting the next model?
Numerous technologies
exist for exchanging data
at runtime
all come with similar
requirements: make a
(shared) library with initialize,
run, finalize, get & set function

OASIS

HLA

The challenge is stability in case of tight interaction

Can we find a solution?


15 July 2015

OMS

More than just water


Many more processes that are
interacting (at different geospatial
scales)

WIND
TRANSPORT

RAINFALL
RUNOFF

CONTROL

WAVES

FLOW

GROUND
WATER

MORPHO

WAQ/ECO
assimilating
observational
data

15 July 2015

also data volumes and data types

Open geospatial data (e.g. Open Street Map)


Satellite data (e.g. via Google Earth Engine)
Lidar and 3D scans
GEOSS data services
New live data feeds (e.g. Twitter)

15 July 2015

and model scale and detail

http://oss.delft3d.nl
15 July 2015

Interactive modelling environments


Dont start, sit and wait but start, pause, reset, and interact with your
model. Coupling your model not just to other models but also to
dynamic user input for:
Education / training (serious gaming)
Iterative design
Emergency planning

15 July 2015

From synchronous to asynchronous


However, you may not have appropriate
computing resources available locally.
Can we do this web-based?
--> Model Message Interface

MMI wrapper

https://www.nuget.org/packages/ModelMessageInterface/

MMI is based on BMI, JSON messages, and MQ protocol


15 July 2015

Model
BMI interface

Asynchronous remote control


Visualizer
Visualizer
Controller

Your model starts to twitter


and to post facebook
updates

Visualizer
Controller

MMI wrapper

Visualizer
Visualizer
Controller

Model
BMI interface

Reusable for operational forecasting?


Dependent
component

Any dependent component


may fail without influencing
the rest of the data flow.

MMI wrapper

Dependent
component

Workflow
Manager

15 July 2015

Data providing
component
Model
BMI interface

The future

Who knows?
Using web-based modelling and
Gogo Inflight, its just a small
step to put your model in
airplane mode

15 July 2015