Options
All
  • Public
  • Public/Protected
  • All
Menu

Class GradientDescentVOSLayoutAlgorithm

Gradient descent VOS layout algorithm.

Hierarchy

Index

Properties

DEFAULT_ATTRACTION: number = 2

Default attraction parameter.

DEFAULT_REPULSION: number = 1

Default repulsion parameter.

DEFAULT_EDGE_WEIGHT_INCREMENT: number = 0

Default edge weight increment parameter.

DEFAULT_MAX_N_ITERATIONS: number = 1000

Default maximum number of iterations.

DEFAULT_INITIAL_STEP_SIZE: number = 1

Default initial step size.

DEFAULT_MIN_STEP_SIZE: number = 0.001

Default minimum step size.

DEFAULT_STEP_SIZE_REDUCTION: number = 0.75

Default step size reduction.

DEFAULT_REQUIRED_N_QUALITY_VALUE_IMPROVEMENTS: number = 5

Default required number of quality value improvements.

attraction: number

Attraction parameter.

repulsion: number

Repulsion parameter.

edgeWeightIncrement: number

Edge weight increment parameter.

maxNIterations: number

Maximum number of iterations.

initialStepSize: number

Initial step size.

minStepSize: number

Minimum step size.

stepSizeReduction: number

Step size reduction.

requiredNQualityValueImprovements: number

Required number of quality value improvements.

random: Random

Random number generator.

Methods

  • initializeBasedOnAttractionAndRepulsionAndEdgeWeightIncrement(attraction: number, repulsion: number, edgeWeightIncrement: number): void
  • getAttraction(): number
  • getRepulsion(): number
  • getEdgeWeightIncrement(): number
  • setAttraction(attraction: number): void
  • setRepulsion(repulsion: number): void
  • setEdgeWeightIncrement(edgeWeightIncrement: number): void
  • Calculates the quality of a layout using the VOS quality function.

    The VOS quality function is given by

    1 / attraction * sum(a[i][j] * d(x[i], x[j]) ^
    attraction) - 1 / repulsion * sum(d(x[i], x[j]) ^
    repulsion),

    where a[i][j] is the weight of the edge between nodes i and j and x[i] = (x[i][1], x[i][2]) are the coordinates of node i. The function d(x[i], x[j]) is the Euclidean distance between nodes i and j. The sum is taken over all pairs of nodes i and j with j < i. The attraction parameter must be greater than the repulsion parameter. The lower the value of the VOS quality function, the higher the quality of the layout.

    Parameters

    Returns number

    Quality of the layout

  • initializeBasedOnRandom(random: Random): void
  • initializeBasedOnAttractionAndRepulsionAndEdgeWeightIncrementAndRandom(attraction: number, repulsion: number, edgeWeightIncrement: number, random: Random): void
  • Initializes a gradient descent VOS layout algorithm for a specified attraction parameter, repulsion parameter, and edge weight increment parameter.

    Parameters

    • attraction: number

      Attraction parameter

    • repulsion: number

      Repulsion parameter

    • edgeWeightIncrement: number

      Edge weight increment parameter

    • random: Random

      Random number generator

    Returns void

  • initializeBasedOnAttractionAndRepulsionAndEdgeWeightIncrementAndMaxNIterationsAndInitialStepSizeAndMinStepSizeAndStepSizeReductionAndRequiredNQualityValueImprovementsAndRandom(attraction: number, repulsion: number, edgeWeightIncrement: number, maxNIterations: number, initialStepSize: number, minStepSize: number, stepSizeReduction: number, requiredNQualityValueImprovements: number, random: Random): void
  • Initializes a gradient descent VOS layout algorithm for a specified attraction parameter, repulsion parameter, edge weight increment parameter, maximum number of iterations, initial step size, minimum step size, step size reduction, and required number of quality value improvements.

    Parameters

    • attraction: number

      Attraction parameter

    • repulsion: number

      Repulsion parameter

    • edgeWeightIncrement: number

      Edge weight increment parameter

    • maxNIterations: number

      Maximum number of iterations

    • initialStepSize: number

      Initial step size

    • minStepSize: number

      Minimum step size

    • stepSizeReduction: number

      Step size reduction

    • requiredNQualityValueImprovements: number

      Required number of quality value improvements

    • random: Random

      Random number generator

    Returns void

  • getMaxNIterations(): number
  • getInitialStepSize(): number
  • getMinStepSize(): number
  • getStepSizeReduction(): number
  • getRequiredNQualityValueImprovements(): number
  • setMaxNIterations(maxNIterations: number): void
  • setInitialStepSize(initialStepSize: number): void
  • setMinStepSize(minStepSize: number): void
  • setStepSizeReduction(stepSizeReduction: number): void
  • setRequiredNQualityValueImprovements(requiredNQualityValueImprovements: number): void
  • Sets the required number of quality value improvements.

    Parameters

    • requiredNQualityValueImprovements: number

      Required number of quality value improvements

    Returns void

Constructors

Generated using TypeDoc