packages feed

declarative-0.5.1: declarative.cabal

name:                declarative
version:             0.5.1
synopsis:            DIY Markov Chains.
homepage:            http://github.com/jtobin/declarative
license:             MIT
license-file:        LICENSE
author:              Jared Tobin
maintainer:          jared@jtobin.ca
category:            Math
build-type:          Simple
cabal-version:       >=1.10
description:
  This package presents a simple combinator language for Markov transition
  operators that are useful in MCMC.
  .
  Any transition operators sharing the same stationary distribution and obeying
  the Markov and reversibility properties can be combined in a couple of ways,
  such that the resulting operator preserves the stationary distribution and
  desirable properties amenable for MCMC.
  .
  We can deterministically concatenate operators end-to-end, or sample from
  a collection of them according to some probability distribution.  See
  <http://www.stat.umn.edu/geyer/f05/8931/n1998.pdf Geyer, 2005> for details.
  .
  A useful strategy is to hedge one's 'sampling risk' by occasionally
  interleaving a computationally-expensive transition (such as a gradient-based
  algorithm like Hamiltonian Monte Carlo or NUTS) with cheap Metropolis
  transitions.
  .
  > transition = frequency [
  >     (9, metropolis 1.0)
  >   , (1, hamiltonian 0.05 20)
  >   ]
  .
  Alternatively: sample consecutively using the same algorithm, but over a
  range of different proposal distributions.
  .
  > transition = concatAllT [
  >     slice 0.5
  >   , slice 1.0
  >   , slice 2.0
  >   ]
  .
  Or just mix and match and see what happens!
  .
  > transition =
  >   sampleT
  >     (sampleT (metropolis 0.5) (slice 0.1))
  >     (sampleT (hamiltonian 0.01 20) (metropolis 2.0))
  .
  Check the test suite for example usage.

Source-repository head
  Type:     git
  Location: http://github.com/jtobin/declarative.git

library
  default-language:    Haskell2010
  hs-source-dirs:      lib
  exposed-modules:
      Numeric.MCMC
    , Numeric.MCMC.Anneal
  build-depends:
      base              >= 4 && < 6
    , kan-extensions    >= 5 && < 6
    , mcmc-types        >= 1.0.1
    , mwc-probability   >= 1.0.1
    , mighty-metropolis >= 1.0.4
    , lens              >= 4 && < 5
    , primitive         >= 0.6 && < 1.0
    , pipes             >= 4 && < 5
    , hasty-hamiltonian >= 1.1.5
    , speedy-slice      >= 0.1.5
    , transformers      >= 0.5 && < 1.0

Test-suite rosenbrock
  type:                exitcode-stdio-1.0
  hs-source-dirs:      test
  main-is:             Rosenbrock.hs
  default-language:    Haskell2010
  ghc-options:
    -rtsopts
  build-depends:
      base              >= 4 && < 6
    , mwc-probability   >= 1.0.1
    , declarative