Class GraphEditDistance<N extends INode,​E extends IEdge>

java.lang.Object
kieker.analysis.generic.graph.clustering.GraphEditDistance<N,​E>
Type Parameters:
N - node type
E - edge type
All Implemented Interfaces:
IDistanceFunction<com.google.common.graph.MutableNetwork<N,​E>>

public class GraphEditDistance<N extends INode,​E extends IEdge>
extends java.lang.Object
implements IDistanceFunction<com.google.common.graph.MutableNetwork<N,​E>>
This class calculates a custom graph edit distance between two Behavior Models. The following operations are allowed: insert/delete nodes; insert/delete edges; insert/delete EventGroups; insert/delete Events; duplicate/remove duplicate events Insertion and Deletion always costs the same to satisfy the symmetry property.
Since:
2.0.0
Author:
Lars Jürgensen
  • Constructor Summary

    Constructors 
    Constructor Description
    GraphEditDistance​(BasicCostFunction<N,​E> costFunction)
    This can be used, to set the node, edge and eventgroup insertion cost for the Graph Edit Distance Algorithm to the values in the configuration.
  • Method Summary

    Modifier and Type Method Description
    double calculate​(com.google.common.graph.MutableNetwork<N,​E> modelA, com.google.common.graph.MutableNetwork<N,​E> modelB)
    Calculates the Graph Edit Distance between two objects.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • GraphEditDistance

      public GraphEditDistance​(BasicCostFunction<N,​E> costFunction)
      This can be used, to set the node, edge and eventgroup insertion cost for the Graph Edit Distance Algorithm to the values in the configuration.
      Parameters:
      costFunction - cost function
  • Method Details

    • calculate

      public double calculate​(com.google.common.graph.MutableNetwork<N,​E> modelA, com.google.common.graph.MutableNetwork<N,​E> modelB)
      Calculates the Graph Edit Distance between two objects.
      Specified by:
      calculate in interface IDistanceFunction<N extends INode>
      Parameters:
      modelA - The first model.
      modelB - The second model.