particle-filter

Implements bootstrap particle filters for real-time Bayesian probability updating from streaming observations.

Updated Feb 16, 2026
One-click install
npx skills add https://github.com/travis-burmaster/agentbox --skill particle-filter-travis-burmaster
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: particle-filter
Source: https://github.com/travis-burmaster/agentbox/tree/main/examples/llm-proxy-gitagent/workspace/skills/particle-filter
Command: npx skills add https://github.com/travis-burmaster/agentbox --skill particle-filter-travis-burmaster

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires numpy, scipy.

What problem does it solve? Static probability estimates become stale when new data arrives continuously, such as during election night vote counting or live market trading. This Skill applies Sequential Monte Carlo filtering to update probability estimates dynamically as each new observation arrives, smoothing noise while propagating uncertainty. ## Core Features & Use Cases - Bootstrap Particle Filter: Propagates particles through a logit-space random walk, reweights by observation likelihood, and resamples systematically when effective sample size drops. - Uncertainty Quantification: Produces weighted mean estimates and credible intervals so you know how confident the filtered probability is at any moment. - Use Case: During election night, feed each new vote count or market price into the filter to get a smoothed, noise-resistant probability estimate with a 95% credible interval instead of reacting to every raw price spike. ## Quick Start Use the particle-filter skill to track a live event probability starting from a 0.50 prior and update it with each new observed market price I provide.

Frequently Asked Questions about particle-filter

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I update probabilities in real time with a particle filter in Python?

Create a PredictionMarketParticleFilter with a prior probability, then call update() with each new observation such as a market price or poll result. The filter propagates particles in logit space, reweights by likelihood, and returns a smoothed estimate via estimate().

What is a bootstrap particle filter used for?

A bootstrap particle filter estimates a hidden state, such as a true event probability, from noisy sequential observations. It is used for live tracking scenarios like election night returns or market prices where estimates must update as data streams in.

When should I resample particles in a Sequential Monte Carlo filter?

Resample when the effective sample size (ESS = 1 / sum of squared weights) falls below N/2, indicating weight degeneracy. This implementation uses systematic resampling, which has lower variance than multinomial resampling.

Why use logit space for probability state evolution?

Modeling the random walk in logit space keeps particle values unbounded during propagation while guaranteeing probabilities stay within [0,1] after applying the sigmoid transform. This avoids particles drifting outside valid probability ranges.

How do I tune process_vol and obs_noise in a particle filter?

Set process_vol higher (0.01-0.10) to make the filter more responsive to real changes, and obs_noise higher to smooth noisy observations more aggressively. High process_vol with low obs_noise trusts the data; the reverse trusts the model.

What are the limitations of particle filters for probability tracking?

Particle filters require tuning of process and observation noise, and too few particles cause noisy estimates while too many slow computation. They also assume the state-space model is roughly correct, so misspecified dynamics degrade accuracy.