35
On the interaction of VANESA, PNlib, and OpenModelica Lennart Ochel 1,2 and Christoph Brinkrolf 2 1 Department of Applied Mathematics, University of Applied Sciences Bielefeld 2 Bioinformatics Department, Faculty of Technology, Bielefeld University

On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

On the interaction of VANESA, PNlib, and OpenModelica

Lennart Ochel1,2 and Christoph Brinkrolf2

1Department of Applied Mathematics, University of Applied Sciences Bielefeld2Bioinformatics Department, Faculty of Technology, Bielefeld University

Page 2: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Outline

• VANESA

• PNlib

• OpenModelica

• Summary

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 2

VANESA

PNlibOpenModelica

Page 3: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

VANESA in a Nutshell

• Department of Bioinformatics (Prof. Hofestädt), Bielefeld University

• Development since 2009

• Graph-based editor for Systems biology applications– Modeling of Cell-to-Cell Communication Processes with Petri Nets Using

the Example of Quorum Sensing

– Hydrogen production in Chlamydomonas reinhardtii

• Binding to in-house data warehouse DAWIS-M.D.– Integration of several microbiological databases, e.g. KEGG and BRENDA

• Java based, open-source, and free-of-charge

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 3

http://agbi.techfak.uni-bielefeld.de/vanesa/

Page 4: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

VANESA in a Nutshell

• Simulation of biological systems using Petri nets– Biological network Petri net Modelica model

• Visualizing of simulation results– On-the-fly

– Tokens, token flow, firing speed mapped on nodes and edges

• Applying algorithms on networks– Discrete PN: reachability and coverability

– Calculation of centrality measurements

– …

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 4

Page 5: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

VANESA in a Nutshell

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 5

Page 6: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

VANESA: Introductory Example

• Production of isobutanol in Escherichia coli

– Isobutanol is renewable bio fuel

• Database connection

– Exploration of pathways

– Database-supported modeling of pathways

• Network simulation

– Automatic transformation to Petri net formalism

– Modelica-based simulation

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 6

Page 7: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

VANESA: Introductory Example

• Production of isobutanol in Escherichia coli

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 7

Biological network

Petri net

Page 8: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

VANESA: Introductory Example

• Production of isobutanol in Escherichia coli

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 8

Page 9: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Outline

• VANESA

• PNlib

• OpenModelica

• Summary

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 9

VANESA

PNlibOpenModelica

Page 10: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

PNlib

• Implementation of extended hybrid Petri Nets (xHPN) formalism– Discrete and continuous places

– Discrete, stochastic, and continuous transitions

– Test, inhibitor, and read arcs

• Updated to latest Modelica version

• Latest release: v1.2– Added support for 64bit systems

– Revised some internal algorithms to archive less complex equation systems structure

– Minor bug fixes

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 10

https://github.com/modelica-3rdparty/PNlib

Page 11: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

OpenModelica - PNlib Coverage Trend

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 11

https://test.openmodelica.org/libraries/PNlib/BuildModelRecursive.html

Page 12: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

OpenModelica - PNlib Coverage Trend

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 12

https://test.openmodelica.org/libraries/PNlib/BuildModelRecursive.html

100% coverage - even if it doesn‘t look like

Page 13: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Outline

• VANESA

• PNlib

• OpenModelica

• Summary

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 13

VANESA

PNlibOpenModelica

Page 14: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

OpenModelica

• Best Open Source Modelica Compiler on the planet

• Full support of PNlib library

• Simulation results on-the-fly

• Useful feedback, e.g. unit checking

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 14

Page 15: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Why not just using OMEdit?

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 15

Page 16: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Why not just using OMEdit?

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 16

Demonstration of modelling simple Petri nets using PNlib and OpenModelica/OMEdit

0

0

4

5d=0.5

05

d=0.5

Page 17: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Why not just using OMEdit?

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 17

Places/Transitions are using array connectors.

Page 18: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Why not just using OMEdit?

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 18

Places/Transitions are using array connectors.

Page 19: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Why not just using OMEdit?

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 19

Places/Transitions are using array connectors.

Unfortunately, connectorSizing annotation is not supported yet.

OpenModelica compiler generates useful error messages.

Page 20: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Why not just using OMEdit?

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 20

Places/Transitions are using array connectors.

Unfortunately, connectorSizing annotation is not supported yet.

Connector sizes need to be set manually.

Page 21: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Why not just using OMEdit?

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 21

Places/Transitions are using array connectors

Unfortunately, connectorSizing annotation is not supported yet.

Connector sizes need to be set manually.

Page 22: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Why not just using OMEdit?

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 22

Arc weights are stored within transitions.

Arc weights are mapped on corresponding connector array.

Page 23: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Why not just using OMEdit?

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 23

Page 24: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Why not just using OMEdit?

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 24

Problems occur once existing connections are changed/removed.

Page 25: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Why not just using OMEdit?

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 25

Problems occur once existing connections are changed/removed.

After removing one of the places, the system becomes unbalanced without any helpful message.

Page 26: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Why not just using OMEdit?

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 26

Problems occur once existing connections are changed/removed.

After removing one of the places, the system becomes unbalanced without any helpful message.

Page 27: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Why not just using OMEdit?

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 27

Problems occur once existing connections are changed/removed.

After removing one of the places, the system becomes unbalanced without any helpful message.

Connector sizes and arc weights need to be adjusted manually.

Page 28: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Why not just using OMEdit?

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 28

Problems occur once existing connections are changed/removed.

After removing one of the places, the system becomes unbalanced without any helpful message.

Connector sizes and arc weights need to be adjusted manually.

The model still fails without any helpful notification.

Page 29: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Why not just using OMEdit?

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29

Problems occur once existing connections are changed/removed.

After removing one of the places, the system becomes unbalanced without any helpful message.

Connector sizes and arc weights need to be adjusted manually.

The model still fails without any helpful notification.

One need to modify the source code manually.

Page 30: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Why not just using OMEdit?

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 30

Page 31: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Why not just using OMEdit?

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 31

Page 32: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Why not just using OMEdit?

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 32

• Usage of PNlib is inconvenient with any common graphical

Modelica editor

This is solved perfectly with the graphical editor VANESA!

Page 33: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Outline

• VANESA

• PNlib

• OpenModelica

• Summary

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 33

VANESA

PNlibOpenModelica

Page 34: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Summary

• VANESA is network editor for biological use cases

• VANESA can be used as graphical Petri net editor

• PNlib is updated to latest Modelica version

• OpenModelica fully supports PNlib

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 34

Page 35: On the interaction of VANESA, PNlib and …...01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 29 Problems occur once existing connections are changed/removed. After removing

Wish list/Next steps

• Export Modelica models with graphical annotation

• Extract pure Petri net editor from VANESA

• More comprehensive PNlib coverage testing (e.g. hybrid Petri

nets)

• Improve OpenModelica performance – as always

01/02/2016 OpenModelica Workshop 2016 - Ochel and Brinkrolf 35