bives & budhat: invited talk @ ipk gatersleben
DESCRIPTION
Talk at the IPK in Gatersleben to initiate collaborations with the VANTED/e!Dal crews. The slides are also available at our website http://sems.uni-rostock.de/2013/05/research-visit-at-the-ipk-gatersleben/TRANSCRIPT
SYSTEMS BIOLOGY
BIOINFORMATICS
ROSTOCKS E Ssimulation experiment management system
BiVeS & BudHatVersion Control for Computational Models
MARTIN SCHARMDepartment of Systems Biology & BioinformaticsFaculty of Computer Science & Electrical EngineeringUniversity of Rostock
http://sems.uni-rostock.de
Gatersleben 2013
June 11, 2013 Bives & Budhat | Martin Scharm 1 / 13
SYSTEMS BIOLOGY
BIOINFORMATICS
ROSTOCKS E Ssimulation experiment management system
track development
store retrieve
rank
Management
Δ
Δ
Version 1
Version 2
latest
Format-independent,graph-based storage
Information Retrieval-basedsearch and ranking
Diff-basedversion control
http://sems.uni-rostock.de/
June 11, 2013 Bives & Budhat | Martin Scharm 2 / 13
Version ControlIntro
• many models
• multiple versions of each model
• several repositories
time
#mod
els
June 11, 2013 Bives & Budhat | Martin Scharm 3 / 13
Version ControlIntro
• many models
• multiple versions of each model
• several repositories
version x-1 version x version x+1
June 11, 2013 Bives & Budhat | Martin Scharm 3 / 13
Version ControlIntro
• many models
• multiple versions of each model
• several repositories
June 11, 2013 Bives & Budhat | Martin Scharm 3 / 13
Version ControlIntro
• many models
• multiple versions of each model
• several repositories
version x-1 version x version x+1
track versions X
what happened ?
June 11, 2013 Bives & Budhat | Martin Scharm 3 / 13
Version Controlgood news
A r C
B
D
cycE/cdk2
RB/E2F
RB-Hypo
free E2F
A r
B
C
D
E s
RB/E2F
RB-Hypo
free E2F
cycE/cdk2
RB-Phos
new insights
Waltemath et al.: Improving the reuse of computational models through versioncontrol. Bioinformatics (2013) 29(6): 742-728;
June 11, 2013 Bives & Budhat | Martin Scharm 4 / 13
BiVeSDifference Detection
A r C
B
D
cycE/cdk2
RB/E2F
RB-Hypo
free E2F
A r
B
C
D
E s
RB/E2F
RB-Hypo
free E2F
cycE/cdk2
RB-Phos
A
r
B
C
D
A
r
B
C
D
E
s
Biochemical Model Version Control System
• compares models encoded in standadizedformats (currently: and )
• maps hierarchically structured contentmapping
June 11, 2013 Bives & Budhat | Martin Scharm 5 / 13
BiVeSMapping
• input: 2 XML documents• map unambiguos
nodes/subtrees• propagate mapping up/down• exploit further knowledge of
biological systems
same ID
samesubtree
hash
...
... ...... ...
...
... ...... ...
June 11, 2013 Bives & Budhat | Martin Scharm 6 / 13
BiVeSMapping
• input: 2 XML documents• map unambiguos
nodes/subtrees• propagate mapping up/down• exploit further knowledge of
biological systems
eq. netw....
... ...... ...
...
... ...... ...
June 11, 2013 Bives & Budhat | Martin Scharm 6 / 13
BiVeSMapping
• input: 2 XML documents• map unambiguos
nodes/subtrees• propagate mapping up/down• exploit further knowledge of
biological systems
A B
C
D E
A B
C
D E
A B
C
D E
June 11, 2013 Bives & Budhat | Martin Scharm 6 / 13
BiVeSDifference Detection
A r C
B
D
cycE/cdk2
RB/E2F
RB-Hypo
free E2F
A r
B
C
D
E s
RB/E2F
RB-Hypo
free E2F
cycE/cdk2
RB-Phos
A
r
B
C
D
A
r
B
C
D
E
s
Biochemical Model Version Control System
• compares models encoded in standadizedformats (currently: and )
• maps hierarchically structured content
• constructs a diff (in XML format)
• is able to interprete this diff
<XML>Diff
movesproduct of r: C
deletesproduct of r: B
insertsspecies: Eproduct of r: Ereaction s
</XML>
mapping
di� construction
June 11, 2013 Bives & Budhat | Martin Scharm 7 / 13
BudHatDiff Visualization
A r C
B
D
cycE/cdk2
RB/E2F
RB-Hypo
free E2F
A r
B
C
D
E s
RB/E2F
RB-Hypo
free E2F
cycE/cdk2
RB-Phos
A
r
B
C
D
A
r
B
C
D
E
s
<XML>Diff
movesproduct of r: C
deletesproduct of r: B
insertsspecies: Eproduct of r: Ereaction s
</XML>
• calls BiVeS to construct the diff
• displays the result in various formats• the XML diff• a reaction network highlighting the
changes using• a human readable report
A r B
C
D
E s
June 11, 2013 Bives & Budhat | Martin Scharm 8 / 13
BiVeS & BudHatDEMO
The Power of BudHat!
http://budhat.sems.uni-rostock.de
June 11, 2013 Bives & Budhat | Martin Scharm 9 / 13
Rostock goes GaterslebenOur Aim
VANTED BiVeS
June 11, 2013 Bives & Budhat | Martin Scharm 10 / 13
Rostock goes GaterslebenOur Aim
VANTED BiVeS
June 11, 2013 Bives & Budhat | Martin Scharm 10 / 13
Rostock goes GaterslebenOur Aim
VANTED BiVeS
let’s collaborate!
We VANT BiVeS!
June 11, 2013 Bives & Budhat | Martin Scharm 10 / 13
BiVeSIntegration
jvm network cmd
import de.unirostock.sems.bives.api.SBMLDiff;
[...]
SBMLDiff differ = new SBMLDiff (sbmlFileA, sbmlFileB);differ.mapTrees ();String graph = differ.getGraphML ();
[...]
June 11, 2013 Bives & Budhat | Martin Scharm 11 / 13
BiVeSIntegration
jvm network cmd
curl -d "file1=http://some.server/model/version1"-d "file2=http://other.server/model/version2"-d "get=graphml" bives.server/api
June 11, 2013 Bives & Budhat | Martin Scharm 11 / 13
BiVeSIntegration
jvm network cmd
java -jar BiVeS.jar path/to/version1 path/to/version2
git diff 88fea1cddf b64477d742 model.file
June 11, 2013 Bives & Budhat | Martin Scharm 11 / 13
BiVeS & BudHatSummary
• BiVeS = Difference detection for hierarchically structured content
• BudHat = Prototype to demonstrate the capabilities
• Both tools are open source
• Our goal is to extend existing models repositories with a valuable versioncontrol mechanism
June 11, 2013 Bives & Budhat | Martin Scharm 12 / 13
SYSTEMS BIOLOGY
BIOINFORMATICS
ROSTOCKS E Ssimulation experiment management system
That’s it! Stay tuned ;-)
@SemsProjecthttp://sems.uni-rostock.dehttp://budhat.sems.uni-rostock.de
Questions? Suggestions? Recommendations? Drop me an email:<[email protected]>
June 11, 2013 Bives & Budhat | Martin Scharm 13 / 13