跳转至

评估方法论

OptAgent 使用标准化的基准测试框架评估不同策略的性能。

评估框架

graph TB
    subgraph "Benchmark Framework"
        GEN[Problem Generator]
        RUN[Experiment Runner]
        COL[Result Collector]
        ANA[Analysis Engine]
    end

    GEN -->|问题实例| RUN
    RUN -->|原始结果| COL
    COL -->|聚合数据| ANA
    ANA -->|报告| OUT[Markdown / JSON]

评估维度

维度 指标 说明
解质量 目标函数值 与最优解或已知下界的差距
求解速度 时间(秒) 达到可行解/最优解的时间
可扩展性 问题规模 vs 时间 随问题规模增长的性能变化
稳定性 多次运行的方差 同一问题多次求解的结果一致性
可行性 可行解比例 在时间限制内找到可行解的概率

实验设计

问题生成

使用参数化的问题生成器创建不同规模和难度的实例:

from optagent.benchmark import ProblemGenerator

gen = ProblemGenerator(problem_family="job_shop")
instances = gen.generate(
    n_jobs=[10, 20, 50, 100],
    n_machines=[5, 10, 20],
    seed=42
)

实验矩阵

每个预设在每个问题实例上运行多次(通常 5-10 次),以评估稳定性:

预设 实例 1 (10×5) 实例 2 (20×10) 实例 3 (50×20) 实例 4 (100×20)
scheduling_focus run×5 run×5 run×5 run×5
scheduling_evolutionary_repair run×5 run×5 run×5 run×5
scheduling_memetic_quality run×5 run×5 run×5 run×5

结果分析

  • Winner Analysis:每个问题族中哪个预设表现最好
  • Scalability Plot:问题规模 vs 求解时间的对数图
  • Quality Gap:与已知最优解的差距分布