/smTMCMC

simplified manifold TMCMC implementation in Matlab

Primary LanguageMATLABOtherNOASSERTION

I. SOFTWARE COMPONENTS

You will find the following software packages:

Main algorithm)

  • ./engine/functions/BASIS/BASIS_Master.m: control the whole algorithm flow and distribute jobs
  • ./engine/functions/BASIS/BASIS_Worker.m: workers that receive individual parallelized job from Master
  • ./engine/sample/Input_SimpleSystem.m: prepare system parameters to run BASIS_Master.m (Example)
  • ./engine/sample/run_SimpleSystem.m: a dummy file to run the algorithm directly when all setup done (Example)

Supporting materials)

  • plot_results_hist.m: plotting the results of BASIS directly
  • HANDBOOK.txt: overview of the algorithm structure and recent updates
  • README.txt: this file
  • AUTHORS: contains all author and contact information
  • COPYING: legal terms for using this package

Example) Simple System:

Y(1) = -th(1)*Y(1);
Y(2) = th(2)*Y(2); 

y(1) = 50; y(2) = 50;
f(y|theta,t) = Y(1,t) + Y(2,t)
  • run_SimpleSystem.m: main code to run BASIS on the Simple System
  • Input_SimpleSystem.m: setup system parameters for the example

II. PREREQUISITES

  • MATLAB with optimization and parallel package (this package uses parpool)

III. WRITE YOUR OWN SYSTEM

  • copy /engine/functions/simple_system folder
  • create folder in /data/
  • name your system and rename simple_ode_.. functions
  • define your own system in adjoin_ode_simple
  • define function of solution of simple system f(y|theta,t) in your_ode_loglike_cma.m your_ode_loglike_pMALA.m your_ode_loglike_smMALA.m your_ode_loglike_SN.m your_ode_loglike.m
  • run make data, in make data you can specify model parameters, theta and error, respectively sigma
  • move new data file from /engine/functions/your_system/your_system_ode/ to /data/your_system/
  • copy & rename /engine/sample/Input_SimpleSystem.m
  • copy & rename /engine/sample/run_SimpleSystem.m
  • adjust Input_YourSystem.m, run_YourSystem.m, especially check function handles and paths, such that it refers to your_ode_..

IV. NOTES

Read HANDBOOK.txt for overview of the algorithm usage Look into Input_SimpleSystem.m for the important parameters and their purpose

Ask for help, report any problems!: garampat@ethz.ch, wadaniel@ethz.ch