[SciPy-dev] MCMC, Kalman Filtering, AI for SciPy?

chris at fisher.forestry.uga.edu chris at fisher.forestry.uga.edu
Fri Sep 24 19:33:17 CDT 2004

On 9/24/2004, "Charles Harris" <charles.harris at sdl.usu.edu> wrote:

>chris at fisher.forestry.uga.edu wrote:
>>For the past couple of years, I have been maintaining a package called
>>PyMC (http://pymc.sourceforge.net) which provides a general Markov chain
>>Monte Carlo sampler (Metropolis-Hastings), linear and non-linear Kalman
>>filtering algorithms and several reinforcement learning algorithms for
>>AI applications. To date, it has been used mostly for ecological
>>modeling applications, but is far more general than that. This package
>>currently relies on SciPy, particularly for such tasks as plotting, and
>>uses f2py extensively.
>>I am wondering if there is interest in integrating such functionality
>>into SciPy. If so, I would be happy to contribute, integrate and
>>maintain the code under the auspices of the SciPy project. If not, I am
>>equally content to continue maintaining PyMC separately. I encourage
>>those interested to check out PyMC and let me know if it would be
>>worthwhile to add any of this to SciPy.
>>Chris Fonnesbeck
>>chris (at) fisher.forestry.uga.edu
>>Scipy-dev mailing list
>>Scipy-dev at scipy.net
>I'm definitely interested. The problem I always saw with the Montecarlo
>type samplers was that the core routine that I wanted to
>write in Python was always called in the innermost loop, so the sampling
>was slow. Are your routines pure python, or are they
>C code, and how do you get good performance?

The performance is good, relative to extant packages such as the BUGS
project. For the MCMC sampler, the bottleneck is in the repeated
evaluation of statistical likelihoods; scipy's are too slow, so I use
some f2py modules there; for the reinforcement learning stuff, the
innermost loop is coded inline with weave.


More information about the Scipy-dev mailing list