OptimBench 软件开发方案
1. 项目概述
目标:构建一款桌面端 Python 应用,将优化算法基准测试的全流程(算法选择、函数选择、实验配置、并行运行、统计分析、出版级图表生成、数据导出)集成到一个统一的可视化界面中,降低使用门槛,输出可直接用于论文的素材。
核心价值:
- 零代码操作:通过 GUI 完成所有实验,无需编写脚本。
- 标准化对比:统一接口调用 234+ 算法与 11 套标准测试集,保证公平性。
- 出版级产出:一键生成 600 DPI 图表、三线表、统计检验表,支持 PNG/PDF/SVG/EPS/TIFF 及 Excel/MATLAB 导出。
- 可扩展性:支持导入自定义算法,自动纳入同样的统计与可视化流程。
2. 功能需求梳理
2.1 实验配置
- 多选算法(支持搜索过滤)
- 选择 CEC 测试集(下拉)→ 勾选具体函数(自动识别维度兼容性)
- 设置公共参数:种群大小、迭代次数、独立运行次数、问题维度、并行进程数
- 导入自定义算法文件(.py),批量加载,与内置算法统一对待
2.2 实验执行
- 多进程并行,基于
ProcessPoolExecutor - 滑动窗口任务调度,避免内存溢出
- 实时进度条,支持随时中断实验
- 运行日志实时输出至界面
2.3 统计分析
- 六项描述性统计:Mean、Std、Best、Worst、Median、Time(s)
- 三种非参数检验:
- Wilcoxon 秩和检验
- 符号检验(Sign Test)
- Friedman 排名检验(含 χ² 与 p 值)
- 支持任意切换基准算法,Wilcoxon 与 Sign Test 结果实时刷新
2.4 图表生成
- 平均收敛曲线(每函数一张,对数纵轴)
- 箱线图(每函数一张)
- Friedman 排名柱状图(横向)
- 雷达图(综合多函数性能)
- 图表格式:PNG(600 DPI)、PDF、SVG、EPS、TIFF
- 界面内缩略图预览,点击放大
2.5 数据导出
- Excel 工作簿(多个 Sheet:统计表、Wilcoxon、Sign Test、Friedman、排名)
- MATLAB .mat 文件(原始适应度矩阵、收敛曲线矩阵,便于二次分析)

