mdsj

Class MDSJ


public class MDSJ
extends java.lang.Object

Multidimensional Scaling for Java. Multidimensional Scaling converts proximity information into geometric coordinates. This implementation is especially suitable for large sparse dissimilarity matrices and can be used as a stand-alone tool or as a building block in larger Java projects. Input is a set of n objects and some or all possible dissimilarities between them, given as nonnegative doubles; the smaller dissimilarity i,j the more similar and proximate are object i and object j. Output is a configuration of all n objects in a low-dimensional space such that the Euclidean distance between two objects is similar to the given dissimilarity between the two objects.

Constructor Summary

MDSJ(String[] args)

Method Summary

static double[][]
classicalScaling(double[][] d)
Performs classical multidimensional scaling on a given sparse dissimilarity matrix.
static double[][]
classicalScaling(double[][] d, int dim)
Performs classical multidimensional scaling on a given sparse dissimilarity matrix.
static void
main(String[] args)
Main program of MDSJ for command line interaction.
static double[][]
stressMinimization(double[][] d)
Performs stress minimization on a given sparse dissimilarity matrix.
static double[][]
stressMinimization(double[][] d, double[][] w)
Performs stress minimization on a given sparse dissimilarity matrix.
static double[][]
stressMinimization(double[][] d, double[][] w, int dim)
Performs stress minimization on a given sparse dissimilarity matrix.
static double[][]
stressMinimization(double[][] d, int dim)
Performs stress minimization on a given sparse dissimilarity matrix.

Constructor Details

MDSJ

public MDSJ(String[] args)
            throws Exception

Method Details

classicalScaling

public static double[][] classicalScaling(double[][] d)
Performs classical multidimensional scaling on a given sparse dissimilarity matrix. The output is two-dimensional. This is a convenience method for the most frequent uses of classical scaling.
Parameters:
d - rectangular dissimilarity matrix
Returns:
matrix of coordinates

classicalScaling

public static double[][] classicalScaling(double[][] d,
                                          int dim)
Performs classical multidimensional scaling on a given sparse dissimilarity matrix. The output is two-dimensional. This is a convenience method for the most frequent uses of classical scaling.
Parameters:
d - rectangular dissimilarity matrix
dim - number of output dimensions
Returns:
matrix of coordinates

main

public static void main(String[] args)
Main program of MDSJ for command line interaction. If no command line arguments are present, a brief documentation of all available command line parameters is output. Otherwise, the command line is parsed; if valid, it provides the necessary parameters for the MDS to be executed on the input data, given as a matrix file.
Parameters:
args - command line arguments

stressMinimization

public static double[][] stressMinimization(double[][] d)
Performs stress minimization on a given sparse dissimilarity matrix. The computation is initialized with the output of classical scaling.
Parameters:
d - rectangular dissimilarity matrix
Returns:
coordinate matrix

stressMinimization

public static double[][] stressMinimization(double[][] d,
                                            double[][] w)
Performs stress minimization on a given sparse dissimilarity matrix. The computation is initialized with the output of classical scaling. The output is two-dimensional.
Parameters:
d - rectangular dissimilarity matrix
w - rectangular weight matrix
Returns:
coordinate matrix

stressMinimization

public static double[][] stressMinimization(double[][] d,
                                            double[][] w,
                                            int dim)
Performs stress minimization on a given sparse dissimilarity matrix. The computation is initialized with the output of classical scaling.
Parameters:
d - rectangular dissimilarity matrix
w - rectangular weight matrix
dim - number of dimensions
Returns:
coordinate matrix

stressMinimization

public static double[][] stressMinimization(double[][] d,
                                            int dim)
Performs stress minimization on a given sparse dissimilarity matrix. The computation is initialized with the output of classical scaling.
Parameters:
d - rectangular dissimilarity matrix
dim - number of dimensions
Returns:
matrix of coordinates