返回技能列表

simulate-stochastic-process

pjt222
更新于 6 days ago
15 次查看
17
2
17
在 GitHub 上查看
aidesign

关于

This skill simulates stochastic processes like Markov chains, SDEs, and MCMC for generating sample paths, performing Monte Carlo estimation, and sampling complex posteriors. It provides key features including convergence diagnostics, variance reduction, and visualization capabilities. Use it when analytical solutions are intractable or you need to validate results with empirical simulation.

快速安装

Claude Code

推荐
主要方式
npx skills add pjt222/agent-almanac -a claude-code
插件命令备选方式
/plugin add https://github.com/pjt222/agent-almanac
Git 克隆备选方式
git clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/simulate-stochastic-process

在 Claude Code 中复制并粘贴此命令以安装该技能

技能文档

擬機程

擬機程之樣路——含 DTMC、CTMC、SDE、MCMC——含收歛診、減差、軌示。

  • 需自機程生樣路為估、測、示→用
  • 析解難得、唯擬可行→用
  • 行 Monte Carlo 估而需收歛保與不確量→用
  • 欲驗析果(穩分、抵時)於實擬→用
  • 自繁後分以 MCMC 取樣→用
  • 機模試於全析前→用

InputTypeDescription
process_typestringType of process: "dtmc", "ctmc", "random_walk", "brownian_motion", "sde", "mcmc"
parametersdictProcess-specific parameters (transition matrix, drift/diffusion coefficients, target density, etc.)
n_pathsintegerNumber of independent sample paths to simulate
n_stepsintegerNumber of time steps per path (or total MCMC iterations)

InputTypeDefaultDescription
initial_statescalar/vectorprocess-specificStarting state or distribution for each path
dtfloat0.01Time step size for continuous-time discretization
seedintegerrandomRandom seed for reproducibility
burn_inintegern_steps / 10Number of initial steps to discard (MCMC)
thinninginteger1Keep every k-th sample to reduce autocorrelation
variance_reductionstring"none"Method: "none", "antithetic", "stratified", "control_variate"
target_functioncallablenoneFunction to evaluate along paths for Monte Carlo estimation

一:定模與參

1.1 識程類、集諸需參:

  • DTMC:轉陣 P 與態空。驗 P 為行隨
  • CTMC:率陣 Q。驗行和為 0、非對角非負
  • 隨步:步分(如 {-1, +1} 等概)、界若有
  • Brown:漂 mu、波 sigma、維 d
  • SDE(Ito):漂 a(x,t)、擴 b(x,t)
  • MCMC:標對數密、提機(隨步 Metropolis、Hamilton、Gibbs 分量)

1.2 驗參恆:

  • 陣維配態空大
  • SDE 係滿增與 Lipschitz(至少非形)為所擇解
  • MCMC 提於標分支撐良定

1.3 設機種以重現

得:全述機模、參驗、機態可重現。

敗:參不恆(如非隨陣)→正之。SDE 係病態→慮異離散法。

二:擇擬法

2.1 依程類擇宜算:

ProcessMethodKey Property
DTMCDirect sampling from transition rowExact
CTMCGillespie algorithm (SSA)Exact, event-driven
CTMC (approx.)Tau-leapingApproximate, faster for high rates
Random walkDirect sampling of incrementsExact
Brownian motionCumulative sum of Gaussian incrementsExact for fixed dt
SDE (general)Euler-MaruyamaOrder 0.5 strong, order 1.0 weak
SDE (higher order)MilsteinOrder 1.0 strong (scalar noise)
SDE (stiff)Implicit Euler-MaruyamaStable for stiff drift
MCMC (general)Metropolis-HastingsAsymptotically exact
MCMC (gradient)Hamiltonian Monte Carlo (HMC)Better mixing for high dimensions
MCMC (conditional)Gibbs samplerExact conditionals when available

2.2 SDE 法擇 dt 足小以數穩。試啟:始 dt = 0.01、半之至果穩。

2.3 MCMC 調提尺以納率約:

  • 23.4% 為高維隨步 Metropolis
  • 57.4% 為一維標
  • 65-90% 為 HMC(依軌長)

2.4 若請減差→配之:

  • 反變:各路隨增 Z、亦擬 -Z
  • 層樣:分概空、各層內樣
  • 控變:識相關量有知期以減差

得:擇配程類之擬算與宜調參。

敗:法不穩(如 Euler-Maruyama 散)→換隱法或減 dt

三:行擬

3.1 配 n_paths 軌存、各長 n_steps(或為 Gillespie 等事件驅動法動配)。

3.2 各路 i = 1, ..., n_paths

DTMC / 隨步:

  • x[0] = initial_state
  • t = 1, ..., n_steps:自轉分樣 x[t]x[t-1]

CTMC(Gillespie):

  • x[0] = initial_statetime = 0
  • time < T_max
    • 計總率 lambda = -Q[x, x]
    • 樣留時 tau ~ Exp(lambda)
    • 樣次態自 Q[x, j] / lambdaj != x
    • time += tau、記轉

SDE(Euler-Maruyama):

  • x[0] = initial_state
  • t = 1, ..., n_steps
    • dW = sqrt(dt) * N(0, I)(Wiener 增)
    • x[t] = x[t-1] + a(x[t-1], t*dt) * dt + b(x[t-1], t*dt) * dW

MCMC(Metropolis-Hastings):

  • x[0] = initial_state
  • t = 1, ..., n_steps
    • x' ~ q(x' | x[t-1])
    • 計納比 alpha = min(1, p(x') * q(x[t-1]|x') / (p(x[t-1]) * q(x'|x[t-1])))
    • alpha 概納:納則 x[t] = x'、否 x[t] = x[t-1]
    • 記納決

3.3 若 target_function 予→各路各態評之、存值。

3.4 行稀:留每 thinning 樣。

3.5 棄各路始 burn_in 樣(主於 MCMC)。

得:n_paths 全軌存於憶、可選函評。MCMC 納率於目範。

敗:擬生 NaN 或 Inf→減 SDE 之 dt 或察參。MCMC 納率近 0% 或 100%→調提尺。

四:行收歛診

4.1 追圖:繪某路各分量之值於時。目視穩(無趨、差穩)。

4.2 Gelman-Rubin 診(R-hat):MCMC 多鏈:

  • 計鏈內差 W 與鏈間差 B
  • R_hat = sqrt((n-1)/n + B/(n*W))
  • 收歛示於 R_hat < 1.01(嚴)或 R_hat < 1.1(寬)

4.3 有效樣大(ESS)

  • 估增滯之自相
  • ESS = n_samples / (1 + 2 * sum(autocorrelations))
  • 試則:ESS > 400 為可信後總

4.4 Geweke 診:比各鏈首 10% 與末 50% 之均。z 應於 [-2, 2] 為收歛。

4.5 非 MCMC 程:驗時均統(均、差)隨路長穩。繪行均。

4.6 報總表:

DiagnosticValueThresholdStatus
R-hat (max)...< 1.01...
ESS (min)...> 400...
Geweke z (max abs)...< 2.0...
Acceptance rate...0.15-0.50...

得:諸收歛診過閾。追圖示穩、混良鏈。

敗:R-hat > 1.1→行更長鏈或增提。ESS 甚低→增稀或換更佳樣(如 HMC)。Geweke 敗→延 burn-in。

五:計總統含信區

5.1 各關量(態占、函期、抵時):

  • 計點估為跨路樣均(過 burn-in 與稀後)
  • 用 ESS 計標誤:SE = SD / sqrt(ESS)

5.2 建信區:

  • 常近:estimate +/- z_{alpha/2} * SE
  • 偏分→用百分自舉或批均

5.3 若用減差→計減差因:

  • VRF = Var(naive estimator) / Var(reduced estimator)
  • 報有效加速

5.4 Monte Carlo 積估:

  • 報估、標誤、95% CI、ESS、函評數

5.5 分估:

  • 計實百分(中、2.5、97.5)
  • 連量用核密估

5.6 列諸總統與其不確。

得:點估含標誤與信區。減差(若用)生 VRF > 1。

敗:信區過寬→增 n_pathsn_steps。減差敗(VRF < 1)→閉之——控變或反變或不宜。

六:示軌與分

6.1 軌圖:繪代表樣路(5-20)於時。重疊用透明。

6.2 集統:覆均軌與跨路逐點 95% 信帶。

6.3 邊分:選時點繪態跨路之直方或密估。

6.4 穩分比:若析穩分有→覆於末時實直方。

6.5 自相圖:MCMC 繪各分量自相函(ACF)至宜滯。

6.6 診盤:合追、ACF、行均、邊密為一多板圖以全察。

6.7 諸圖存為向量(PDF/SVG)與點陣(PNG)為文。

得:版質之圖示軌為、分收歛、診總。析解(若有)配實果。

敗:示顯非穩或非期之多模→覆步一二察參或法誤。圖亂→減示路或增圖大。

  • 諸擬軌留於有效態空(無越界、無 NaN/Inf)
  • DTMC/CTMC:實穩分收於析者(於期 Monte Carlo 誤內)
  • SDE:半 dt 不質變果(收歛序察)
  • MCMC:R-hat < 1.01、ESS > 400、Geweke z 於 [-2, 2]
  • 信區寬隨 1/sqrt(n_paths) 減(中極限)
  • 減差技生 VRF > 1(估改非劣)
  • 重現:同種重行生同果

  • MCMC burn-in 不足:自劣始態需長 burn-in 乃樣代標分。常察追圖與用收歛診、勿猜
  • 僵 SDE 之 Euler-Maruyama 不穩:漂大梯→明 Euler-Maruyama 散。換隱法或用適步
  • 混 SDE 強弱收歛:強收歛測路誤(要於個軌);弱收歛測分誤(足為期)。Euler-Maruyama 弱序 1.0 而強序 0.5
  • 偽隨數質:甚長擬中、劣 RNG 或生相關樣。用善測者(Mersenne Twister、PCG、Xoshiro)並驗獨
  • 忽 MCMC 自相:視自相 MCMC 樣為獨低估不確。常用 ESS、非原樣數、為標誤
  • 非單調函之反變:反樣唯於估為下均勻之單調函時減差。非單調或增差
  • 大擬之憶:諸長路全步存或耗憶。完軌不需示時、用線統(行均、差)

GitHub 仓库

pjt222/agent-almanac
路径: i18n/wenyan-ultra/skills/simulate-stochastic-process
0
agentsagentskillsai-assisted-developmentclaude-codeskillsteams

相关推荐技能

content-collections

Content Collections 是一个 TypeScript 优先的构建工具,可将本地 Markdown/MDX 文件转换为类型安全的数据集合。它专为构建博客、文档站和内容密集型 Vite+React 应用而设计,提供基于 Zod 的自动模式验证。该工具涵盖从 Vite 插件配置、MDX 编译到生产环境部署的完整工作流。

查看技能

polymarket

这个Claude Skill为开发者提供完整的Polymarket预测市场开发支持,涵盖API调用、交易执行和市场数据分析。关键特性包括实时WebSocket数据流,可监控实时交易、订单和市场动态。开发者可用它构建预测市场应用、实施交易策略并集成实时市场预测功能。

查看技能

creating-opencode-plugins

该Skill帮助开发者创建OpenCode插件,用于接入命令、文件、LSP等25+种事件。它提供了插件结构、事件API规范和JavaScript/TypeScript实现模式,适合需要拦截操作、扩展功能或自定义事件处理的场景。开发者可通过它快速构建响应式模块来增强OpenCode AI助手的能力。

查看技能

sglang

SGLang是一个专为LLM设计的高性能推理框架,特别适用于需要结构化输出的场景。它通过RadixAttention前缀缓存技术,在处理JSON、正则表达式、工具调用等具有重复前缀的复杂工作流时,能实现极速生成。如果你正在构建智能体或多轮对话系统,并追求远超vLLM的推理性能,SGLang是理想选择。

查看技能