API Reference

API Reference

API Reference

这是 UQPyL 的 API 入口页。

当你知道自己要查某个对象,但不确定它在哪个模块页面里时,从这里进入。教程和工作流优先看 Quick StartExamples

模块页面

模块API 页面主要用途
UQPyL.problemProblem API建模协议、输入空间、评估结果、装饰器和 benchmark problems。
UQPyL.doeDesign of Experiment API采样类、设计元数据、分析专用设计。
UQPyL.analysisAnalysis API敏感性分析方法、指标、结果对象、保存结果 reader。
UQPyL.optimizationOptimization API单目标、多目标和昂贵优化 API。
UQPyL.inferenceInference APIMCMC 风格推断方法、链结果和保存结果 reader。
UQPyL.calibrationCalibration API校准方法、指标处理、结果对象和保存结果 reader。
UQPyL.surrogateSurrogate API代理模型、缩放、切分、指标、uncertainty 输出和调参。

常见调用协议

工作流调用形式返回
问题评估problem.evaluate(X)Eval
采样sampler.sample(problem, nSamples=..., seed=...)np.ndarray
带元数据采样sampler.sampleWithMeta(problem, ...)(X, meta)
分析method.analyze(problem, X, Y=..., meta=...)AnaResult
优化algorithm.run(problem, seed=...)OptResult
推断method.run(problem, gamma=..., seed=...)InfResult
校准method.run(modelProblem, ...)CalResult
代理模型训练model.fit(X, Y)fitted model
代理模型预测model.predict(Xnew)np.ndarray(mean, std/var)

核心数据对象

对象位置作用
ProblemProblem API定义目标、约束、边界、标签和变量类型。
ModelProblemProblem API定义带观测、mask 和仿真上下文的仿真模型。
EvalProblem APIevaluate() 的标准返回对象。
AnaResultAnalysis API敏感性分析结果。
OptResultOptimization API优化结果。
InfResultInference API推断链结果。
CalResultCalibration API校准结果。

Problem.evaluate() 返回 Eval,不是字典:

text
res = problem.evaluate(X)
objs = res.objs
cons = res.cons
sim = res.sim

保存结果 Reader

运行方法在 saveFlag=True 时可以保存 sqlite 结果。

模块Reader常用导入
AnalysisAnaReaderfrom UQPyL.analysis.runtime import AnaReader
OptimizationOptReaderfrom UQPyL.optimization.runtime import OptReader
InferenceInfReaderfrom UQPyL.inference import InfReader
CalibrationCalReaderfrom UQPyL.calibration import CalReader

常见 reader 模式:

text
with Reader("Result/example.sqlite3") as reader:
    summary = reader.get_run_summary()
    result = reader.load_result()

具体 reader 方法见各模块 API 页面。

运行控制项

分析、优化、推断和校准方法通常接受:

选项含义
verboseFlag打印运行进度或最终摘要。
verboseFreq支持时控制进度打印间隔。
logFlag支持时写文本日志。
saveFlag支持时保存 sqlite 结构化结果。
saveFreq支持时控制快照保存间隔。

示例和学习阶段建议使用 verboseFlag=FalselogFlag=FalsesaveFlag=False

导入速查

需求导入
定义普通问题from UQPyL.problem import Problem
定义仿真问题from UQPyL.problem import ModelProblem
生成 LHS 样本from UQPyL.doe import LHS
运行自由设计敏感性分析from UQPyL.analysis import RBDFAST
运行单目标优化from UQPyL.optimization.soea import GA
运行多目标优化from UQPyL.optimization.moea import NSGAII
运行 MCMC 推断from UQPyL.inference import MH
运行 GLUE 校准from UQPyL.calibration import GLUE
训练 RBF 代理模型from UQPyL.surrogate.rbf import RBF

命名说明

名称说明
objs目标矩阵,通常 shape 为 (n_samples, n_obj)
cons约束矩阵,值 <= 0 表示可行。
decs决策/输入矩阵,或推断结果中的链样本。
sims / simModelProblem 的仿真输出,通常 shape 为 (n_samples, n_time, n_series)
bestDecs最优决策行,或多目标方法中的 Pareto 决策矩阵。
bestObjsbestDecs 对应的目标值。