info.mrupp.isoak1
Enum VertexEdgeKernel

java.lang.Object
  extended by java.lang.Enum<VertexEdgeKernel>
      extended by info.mrupp.isoak1.VertexEdgeKernel
All Implemented Interfaces:
java.io.Serializable, java.lang.Comparable<VertexEdgeKernel>

public enum VertexEdgeKernel
extends java.lang.Enum<VertexEdgeKernel>

Available vertex and edge subkernels. Vertex and edge kernels implement the same interface IVertexEdgeKernel. This class provides information about all available vertex and edge kernels and acts as a factory for them.


Enum Constant Summary
DIRACE
          Dirac kernel on edges.
DIRACV
          Dirac kernel on vertices.
EXPE
          Gaussian (sigmoid) kernel on edges.
EXPV
          Gaussian (sigmoid) kernel on vertices.
NONE
          No vertex/edge kernel.
TOPOLOGY
          Topological vertex subkernel.
 
Method Summary
 java.lang.String argName()
          Short name of vertex/edge kernel.
abstract  IVertexEdgeKernel create(float[] params)
          Creates a new vertex/edge kernel with given parameters.
 java.lang.String description()
          Human readable description of vertex/edge kernel.
static VertexEdgeKernel fromString(java.lang.String str)
          Retrieve vertex/edge kernel by short name.
 int numArgs()
          Number of arguments needed for construction of vertex/edge kernel.
static VertexEdgeKernel valueOf(java.lang.String name)
          Returns the enum constant of this type with the specified name.
static VertexEdgeKernel[] values()
          Returns an array containing the constants of this enum type, in the order they are declared.
 
Methods inherited from class java.lang.Enum
compareTo, equals, getDeclaringClass, hashCode, name, ordinal, toString, valueOf
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Enum Constant Detail

DIRACE

public static final VertexEdgeKernel DIRACE
Dirac kernel on edges. Returns one if the edge descriptor matches, zero otherwise. First parameter is the index of the edge descriptor. Second parameter is the tolerance for the absolute floating point comparison.


DIRACV

public static final VertexEdgeKernel DIRACV
Dirac kernel on vertices. Returns one if the atom descriptor matches, zero otherwise. First parameter is the index of the atom descriptor. Second parameter is the tolerance for the absolute floating point comparison.


EXPE

public static final VertexEdgeKernel EXPE
Gaussian (sigmoid) kernel on edges. Returns exp(-|x-y|^2/2*sigma^2) for two values x and y of a bond descriptor. The Gaussian kernel as described by Cristianini & Shawe-Taylor, 2004, pp. 296. Equal descriptor values return 1, with exponential decay. First parameter is the index of the bond descriptor. Second parameter is the standard deviation sigma.


EXPV

public static final VertexEdgeKernel EXPV
Gaussian (sigmoid) kernel on vertices. Returns exp(-|x-y|^2/2*sigma^2) for two values x and y of a vertex descriptor. The Gaussian kernel as described by Cristianini & Shawe-Taylor, 2004, pp. 296. Equal descriptor values return 1, with exponential decay. First parameter is the index of the vertex descriptor. Second parameter is the standard deviation sigma.


NONE

public static final VertexEdgeKernel NONE
No vertex/edge kernel. Returns 1, effectively removing the subkernel from the equation. No parameters.


TOPOLOGY

public static final VertexEdgeKernel TOPOLOGY
Topological vertex subkernel. Returns 1 - |deg(v)-deg(v')|/tau, where deg(v) is the degree of vertex v and tau is the maximum degree over all input graphs. No parameters.

Method Detail

argName

public java.lang.String argName()
Short name of vertex/edge kernel.


create

public abstract IVertexEdgeKernel create(float[] params)
Creates a new vertex/edge kernel with given parameters.


description

public java.lang.String description()
Human readable description of vertex/edge kernel.


fromString

public static VertexEdgeKernel fromString(java.lang.String str)
Retrieve vertex/edge kernel by short name.


numArgs

public int numArgs()
Number of arguments needed for construction of vertex/edge kernel.


valueOf

public static VertexEdgeKernel valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)

Parameters:
name - the name of the enum constant to be returned.
Returns:
the enum constant with the specified name
Throws:
java.lang.IllegalArgumentException - if this enum type has no constant with the specified name
java.lang.NullPointerException - if the argument is null

values

public static VertexEdgeKernel[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
for (VertexEdgeKernel c : VertexEdgeKernel.values())
    System.out.println(c);

Returns:
an array containing the constants of this enum type, in the order they are declared