Class AbstractGraphEditDistanceSimilarityAlgorithm<D extends org.processmining.models.graphbased.directed.DirectedGraph<? extends org.processmining.models.graphbased.directed.DirectedGraphNode,? extends org.processmining.models.graphbased.directed.DirectedGraphEdge<?,?>>>
- java.lang.Object
-
- org.processmining.petrinets.analysis.gedsim.algorithms.abstr.AbstractGraphEditDistanceSimilarityAlgorithm<D>
-
- Type Parameters:
D-
- All Implemented Interfaces:
GraphEditDistanceSimilarityAlgorithm<D>
- Direct Known Subclasses:
GraphEditDistanceSimilarityAStar,GraphEditDistanceSimilarityExhaustive,GraphEditDistanceSimilarityGreedy,GraphEditDistanceSimilarityLexical,GraphEditDistanceSimilarityProcessHeuristic
public abstract class AbstractGraphEditDistanceSimilarityAlgorithm<D extends org.processmining.models.graphbased.directed.DirectedGraph<? extends org.processmining.models.graphbased.directed.DirectedGraphNode,? extends org.processmining.models.graphbased.directed.DirectedGraphEdge<?,?>>> extends java.lang.Object implements GraphEditDistanceSimilarityAlgorithm<D>
This is an adaptation of the org.processmining.analysis.graphmatching.algos.DistanceAlgoAbstr class originating from ProM 5. The main difference is the adaptation of the class to work with the ProM 6DirectedGraphclass. Note that I am not a fan of the "tidiness" of this code, yet I do not have time to make it a little more tidy.- Author:
- svzelst
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description classAbstractGraphEditDistanceSimilarityAlgorithm.Mapping
-
Field Summary
Fields Modifier and Type Field Description static org.processmining.models.graphbased.directed.DirectedGraphNodeEPSILONprotected Dgraph1protected Dgraph2protected GraphEditDistanceSimilarityParametersparamsprotected inttotalNrEdgesprotected inttotalNrVerticesstatic doubleVERTEX_DELETION_COSTstatic doubleVERTEX_INSERTION_COST
-
Constructor Summary
Constructors Constructor Description AbstractGraphEditDistanceSimilarityAlgorithm(GraphEditDistanceSimilarityParameters params)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected doublecomputeScore(double skippedEdges, double skippedVertices, double substitutedVertices, double nrSubstitutions, double insertedVertices, double deletedVertices)protected doubleeditDistance(java.util.Set<org.processmining.framework.util.Pair<org.processmining.models.graphbased.directed.DirectedGraphNode,org.processmining.models.graphbased.directed.DirectedGraphNode>> m)protected doubleeditDistance(AbstractGraphEditDistanceSimilarityAlgorithm.Mapping m)GraphEditDistanceSimilarityParametersgetParameters()protected voidinit(D g1, D g2)voidsetParameters(GraphEditDistanceSimilarityParameters params)booleanuseEvents()-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.processmining.petrinets.analysis.gedsim.algorithms.GraphEditDistanceSimilarityAlgorithm
compute
-
-
-
-
Field Detail
-
EPSILON
public static final org.processmining.models.graphbased.directed.DirectedGraphNode EPSILON
-
VERTEX_INSERTION_COST
public static final double VERTEX_INSERTION_COST
- See Also:
- Constant Field Values
-
VERTEX_DELETION_COST
public static final double VERTEX_DELETION_COST
- See Also:
- Constant Field Values
-
graph1
protected D extends org.processmining.models.graphbased.directed.DirectedGraph<? extends org.processmining.models.graphbased.directed.DirectedGraphNode,? extends org.processmining.models.graphbased.directed.DirectedGraphEdge<?,?>> graph1
-
graph2
protected D extends org.processmining.models.graphbased.directed.DirectedGraph<? extends org.processmining.models.graphbased.directed.DirectedGraphNode,? extends org.processmining.models.graphbased.directed.DirectedGraphEdge<?,?>> graph2
-
totalNrVertices
protected int totalNrVertices
-
totalNrEdges
protected int totalNrEdges
-
params
protected GraphEditDistanceSimilarityParameters params
-
-
Constructor Detail
-
AbstractGraphEditDistanceSimilarityAlgorithm
public AbstractGraphEditDistanceSimilarityAlgorithm(GraphEditDistanceSimilarityParameters params)
-
-
Method Detail
-
getParameters
public GraphEditDistanceSimilarityParameters getParameters()
- Specified by:
getParametersin interfaceGraphEditDistanceSimilarityAlgorithm<D extends org.processmining.models.graphbased.directed.DirectedGraph<? extends org.processmining.models.graphbased.directed.DirectedGraphNode,? extends org.processmining.models.graphbased.directed.DirectedGraphEdge<?,?>>>
-
setParameters
public void setParameters(GraphEditDistanceSimilarityParameters params)
- Specified by:
setParametersin interfaceGraphEditDistanceSimilarityAlgorithm<D extends org.processmining.models.graphbased.directed.DirectedGraph<? extends org.processmining.models.graphbased.directed.DirectedGraphNode,? extends org.processmining.models.graphbased.directed.DirectedGraphEdge<?,?>>>
-
useEvents
public boolean useEvents()
-
computeScore
protected double computeScore(double skippedEdges, double skippedVertices, double substitutedVertices, double nrSubstitutions, double insertedVertices, double deletedVertices)
-
editDistance
protected double editDistance(AbstractGraphEditDistanceSimilarityAlgorithm.Mapping m)
-
editDistance
protected double editDistance(java.util.Set<org.processmining.framework.util.Pair<org.processmining.models.graphbased.directed.DirectedGraphNode,org.processmining.models.graphbased.directed.DirectedGraphNode>> m)
-
-