MVN

de.cit-ec.tcs.alignment : adp

Maven & Gradle

Oct 26, 2018
1 usages

TCS Alignment Toolbox Algebraic Dynamic Programming · This module contains a more general approach to construct AlignmentAlgorithms by relying on the theoretical concept of Algebraic Dynamic Programming (ADP) as developed by Giegerich et al. ADP defines four ingredients for an alignment algorithm: 1.) A signature that defines the permitted alignment operations. Operations are just function templates with an associated arity, meaning the number of arguments it takes from the left sequence and from the right sequence. In the TCSAlignmentToolbox we have a fixed signature with the following operations: REPLACEMENT(1, 1), DELETION(1, 0), INSERTION(0, 1), SKIPDELETION(1, 0) and SKIPINSERTION(0, 1) 2.) A regular tree grammar that produces alignments, that is: sequences of operations, in a restricted fashion. 3.) An algebra that can translate such trees to a cost. In the TCSAlignmentToolbox this is a Comparator. 4.) A choice function, in case of the TCSAlignmentToolbox: the strict minimum or the soft minimum. An alignment algorithm in the TCSAlignmentToolbox sense of the word then is the combination of choice function and grammar. While we provide hardcoded versions of these combinations in the main package, the adp package allows you to create your own grammars. You can combine them with a choice function by instantiating one of the Algorithm classes provided in this package with a grammar of your choice. For example: AlignmentAlgorithm algo = new SoftADPScoreAlgorithm(my_grammar, comparator); creates an alignment algorithm that implicitly produces all possible alignments your grammar can construct with the given input, translates them to a cost using the algebra/comparator you provided and applies the soft minimum to return the score. This all gets efficient by dynamic programming. Note that there is runtime overhead when using this method in comparison with the hardcoded algorithms. But for complicated grammars this is a much easier way to go. For more information on the theory, please refer to my master's thesis: "Adaptive Affine Sequence Alignment using Algebraic Dynamic Programming"

<dependency>
    <groupId>de.cit-ec.tcs.alignment</groupId>
    <artifactId>adp</artifactId>
    <version>3.1.1</version>
</dependency>
Copy
pom.xml
Table Of Contents

Latest Version

Choose a version of de.cit-ec.tcs.alignment : adp to add to Maven or Gradle - Latest Versions:

  • Latest Stable: 3.1.1

All Versions

Choose a version of de.cit-ec.tcs.alignment : adp to add to Maven or Gradle - All Versions:

Version Vulnerabilities Updated
3.1.x
adp-3.1.1
adp-3.1.0
3.0.x
adp-3.0.1
adp-3.0.0
2.1.x
adp-2.1.2
adp-2.1.1
adp-2.1.0
2.0.x
adp-2.0.0

How to add a dependency to Maven

Add the following de.cit-ec.tcs.alignment : adp maven dependency to the pom.xml file with your favorite IDE (IntelliJ / Eclipse / Netbeans):

<dependency>
    <groupId>de.cit-ec.tcs.alignment</groupId>
    <artifactId>adp</artifactId>
    <version>3.1.1</version>
</dependency>

How to add a dependency to Gradle

Gradle Groovy DSL: Add the following de.cit-ec.tcs.alignment : adp gradle dependency to your build.gradle file:

implementation 'de.cit-ec.tcs.alignment:adp:3.1.1'

Gradle Kotlin DSL: Add the following de.cit-ec.tcs.alignment : adp gradle kotlin dependency to your build.gradle.kts file:

implementation("de.cit-ec.tcs.alignment:adp:3.1.1")

How to add a dependency to SBT Scala

SBT Scala: Add the following de.cit-ec.tcs.alignment : adp sbt scala dependency to your build.sbt file:

libraryDependencies += "de.cit-ec.tcs.alignment" % "adp" % "3.1.1"

Advertisement

Dependencies from Group

Oct 26, 2018
1 usages
Oct 26, 2018
1 usages
adp
Oct 26, 2018
1 usages

Discover Dependencies

May 20, 2015
10 usages
7.2k stars
Dec 11, 2020
3 usages
8 stars
Apr 04, 2020
34 usages
985 stars
Jun 26, 2015
2 usages
12.9k stars
Sep 30, 2016
29 usages
12.9k stars
Feb 17, 2019
7 usages
159 stars
May 22, 2015
0 stars
May 23, 2015
0 stars