GMLE - Distributed and Generic Maximum Likelihood Evaluation Package

What is GMLE?

GMLE is a distributed generic maximum likelihood evaluator implemented in the MPI/C and SALSA/Java programming languages. Users can define a function to be evaluated in a distributed fashion over distributed data. Different search methods can then be used to find the maximum likelihood. Currently, gradient descent, conjugate gradient descent, simplex and genetic search have been implemented for GMLE.

Updates

GMLE is now version 0.2.

Release Notes:
GMLE has been updated to use salsa 2.0 (salsa "lite"). This involves improved reduced memory overhead and improved performance.
The GeneticSearchProbabilistic search has been added for SALSA. This performs an asynchronous genetic search.
The SALSA Physics package has been updated to use GeneticSearchProbabilistic and GradientDescent.
The SALSA Astronomy package has been updated to use GeneticSearchProbabilistic and Simplex.
The package can be downloaded here.
Previous releases can be accessed here.

Publications


GMLE/MPI

Examples:
sum_of_squares.c
Evaluator API:
evaluator.h
Search Method APIs:
gradient_descent.h
genetic_search.h
simplex.h
Compilation:
sum_of_squares.c (from the gmle/mpi/sum_of_squares/ directory):
    gmle/mpi/sum_of_squares/ $ mpicc -lm -o sum_of_squares sum_of_squares.c ../framework/*.c
    gmle/mpi/sum_of_squares/ $ ./sum_of_squares
astronomy.c (from the /gmle/mpi/astronomy/ directory):
    /gmle/mpi/astronomy/ $ mpicc -lm -o astronomy *.c ../framework/*.c
    /gmle/mpi/astronomy/ $ ./astronomy

GMLE/SALSA

Examples:
SumOfSquares.salsa
Search Method APIs:
GradientDescent.salsa
GeneticSearch.salsa -- Under Development
GeneticSearchProbabilistic.salsa
Simplex.salsa
Compilation and Execution:
Download and install SALSA from here.
Compile the framework package (from the gmle/salsa/framework/ directory):
    gmle/salsa/framework/ $ java salsac.SalsaCompiler. *.salsa
    gmle/salsa/framework/ $ javac *.java
SumOfSquares.salsa (from the gmle/salsa/sum_of_squares/ directory):
    gmle/salsa/sum_of_squares/ $ java salsac.SalsaCompiler. *.salsa
    gmle/salsa/sum_of_squares/ $ javac *.java
    gmle/salsa/sum_of_squares/ $ java gmle.salsa.sum_of_squares.SumOfSquares
    (to get parameters and options)
Astronomy package (from the /gmle/mpi/astronomy/ directory):
    gmle/salsa/astronomy/ $ java salsac.SalsaCompiler. *.salsa
    gmle/salsa/astronomy/ $ javac *.java
    gmle/salsa/astronomy/ $ java gmle.salsa.astronomy.MaxLikelihood
    (to get parameters and options)
Physics package (from the /gmle/mpi/physics/ directory):
    gmle/salsa/physics/ $ java salsac.SalsaCompiler. *.salsa
    gmle/salsa/physics/ $ javac *.java
    gmle/salsa/physics/ $ java gmle.salsa.physics.MaxLikelihood
    (to get parameters and options)

Contact Information

Mailing List:
Astro ()
Graduate Students:
Nathan Cole ()
Travis Desell ()
Professors:
Malik Magdon-Ismail ()
Heidi Newberg ()
Boleslaw Szymanski ()
Carlos Varela ()


Worldwide Computing Laboratory

Department of Computer Science

Rensselaer Polytechnic Institute