Introduction to APE¶
APE (Automated Pipeline Explorer) is a command line tool and Java API for the automated exploration of possible computational pipelines (scientific workflows) from large collections of computational tools.
APE relies on a semantic domain model that includes tool and type taxonomies as controlled vocabularies for the description of computational tools, and functional tool annotations (inputs, outputs, operations performed) using terms from these taxonomies. Based on this domain model and a specification of the available workflow inputs, the intended workflow outputs and possibly additional constraints, APE then computes possible workflows.
Internally, APE uses a component-based program synthesis approach. It translates the domain knowledge and workflow specification into logical formulas that are then fed to a SAT solver to compute satisfying instances. These solutions are then translated into the actual candidate workflows. For detailed description we refer to .
For our paper at ICCS 2020  we created a video that explains APE in 5 minutes:
Our use cases are motivated by practical problems in various domains (e.g. bioinformatics, GIS ). For one of the bioinformatics use cases, our intern Karl Allgaeuer developed a prototype of a web-based interface to APE. It is available at ape.science.uu.nl (alpha). A Docker version of this demonstrator is available at github.com/sanctuuary/Burke_Docker
APE has been inspired by the Loose Programming framework PROPHETS. It uses similar mechanisms for semantic domain modeling, workflow specification and synthesis, but strives to provide the automated exploration and composition functionality independent from a concrete workflow system.
We thank our brave first-generation users for their patience and constructive feedback that helped us to get APE into shape.
APE is licensed under the Apache 2.0 license.
Vedran Kasalica (v.kasalica[at]esciencecenter.nl), lead developer
Maurin Voshol, student developer
Koen Haverkort, student developer
Anna-Lena Lamprecht (anna-lena.lamprecht[at]uni-potsdam.de), project initiator and principal investigator