Introduction to APE

About APE

APE logo

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 1.

For our paper at ICCS 2020 2 we created a video that explains APE in 5 minutes:


Note

Our use cases are motivated by practical problems in various domains (e.g. bioinformatics, GIS 3). 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

Credits

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.

License

APE is licensed under the Apache 2.0 license.

Maven dependencies

  1. OWL API - LGPL or Apache 2.0

  2. SAT4J - EPL or GNu LGPL

  3. apache-common-lang - Apache 2.0

  4. graphviz-java - Apache 2.0

  5. org.json - JSON license

The APE team

References

1

Kasalica, V., & Lamprecht, A.-L. (2020). Workflow Discovery with Semantic Constraints: The SAT-Based Implementation of APE. Electronic Communications of the EASST, 78(0). https://doi.org/10.14279/tuj.eceasst.78.1092

2

Kasalica V., Lamprecht AL. (2020) APE: A Command-Line Tool and API for Automated Workflow Composition. ICCS 2020. ICCS 2020. Lecture Notes in Computer Science, vol 12143. Springer, https://doi.org/10.1007/978-3-030-50436-6_34

3

Kasalica, V., & Lamprecht, A.-L. (2019). Workflow discovery through semantic constraints: A geovisualization case study. In Computational science and its applications – ICCSA 2019 (pp. 473–488), Springer International Publishing, https://doi.org/10.1007/978-3-030-24302-9_53