-
Notifications
You must be signed in to change notification settings - Fork 0
Compare NUTS HMC vs CRHMC
This project is about sampling from high dimensional log-concave distributions with No-U-Turn Hamiltonian Monte Carlo (HMC) and Riemmanian HMC Sampler.
The contributor will have to tune and perform benchmarks for those two methods in various metabolic networks. Python interfaces should be implemented wherever needed.
Contributors, please contact both mentors below after completing at least one of the tests below.
-
Vissarion Fisikopoulos <vissarion.fisikopoulos at gmail.com> is an expert in mathematical software, computational geometry and optimization, and has previous GSOC mentoring experience with Boost C++ libraries (2016-2020) and the R-project (2017-2020).
-
Elias Tsigaridas <elias.tsigaridas at inria.fr> is an expert in computational nonlinear algebra and geometry with experience in mathematical software. He has contributed to the implementation, in C and C++, of several solving algorithms for various open-source computer algebra libraries and has previous GSOC mentoring experience with the R-project (2019) and Geomscale (2020).
Contributors, please do one or more of the following tests before contacting the mentors above.
-
Easy: Download, compile and run a simple sampling example with both C++ and R interfaces of volesti. For example, you can sample points from a 100-dimensional cube using the C++ HMC algorithm implemented in
volestifor various distributions. -
Medium: Add counters in C++ code of
volestito count the average number of reflections per HMC step. For different (a) integration time, (b) step length in ODE solver, (c) dimension, compute the PSRF/run-time and Effective Sample Size (ESS)/run-time for a large number of samples and report. -
Hard: Implement in C++ an approximate and an exact oracle for the gradient of the Spherical Gaussian distribution with unit variance and repeat the experiments requested by the
Medium test. Compare the performances of two cases and report.