scikit-opt 是一个 Python 库,实现了遗传算法、粒子群优化、模拟退火、蚁群算法、免疫算法、人工鱼群算法和差分进化等群体智能优化算法,并提供 TSP 求解示例。
这个工具是什么
scikit-opt 是一个基于 Python 的开源群体智能优化算法工具包,采用 MIT 许可证,要求 Python 3.5 及以上版本,支持 Windows、Linux 和 macOS。它汇集了多种启发式优化算法,包括遗传算法(GA)、粒子群优化(PSO)、模拟退火(SA)、蚁群算法(ACA)、免疫算法(IA)、人工鱼群算法(AFSA)和差分进化(DE),并提供了求解旅行商问题(TSP)的遗传算法变体。项目文档有中英文版本,在 GitHub 上拥有超过 6700 颗星标,最近仍在更新。
核心能力
- 提供多种经典群体智能优化算法的统一 Python 接口,便于快速调用和比较。
- 支持用户自定义算子(UDF),可注册自定义的选择、交叉、变异和排序函数。
- 内置十余种常用算子,如 ranking、selection、crossover、mutation 等,方便组合使用。
- 包含针对旅行商问题(TSP)的遗传算法实现,可直接应用于路径优化场景。
科研中的典型用法
- 在科研中用于求解连续或离散优化问题,例如函数最小化、参数调优等。
- 利用遗传算法或蚁群算法求解旅行商问题(TSP)及其他组合优化问题。
- 通过自定义算子扩展算法行为,测试新算子或改进现有算法的性能。
快速上手
通过 pip 安装:`pip install scikit-opt`。也可克隆仓库后运行 `pip install .` 安装开发版。入门时从 `sko.GA` 导入遗传算法类,定义目标函数和参数(如维度、种群大小、迭代次数、边界等),调用 `run()` 方法即可获得最优解。详细示例可参考官方文档和 examples 目录。
生态与相近工具
同领域还有 DEAP、PyGMO 等进化计算库。scikit-opt 更侧重于群体智能算法的简洁实现和教学用途,提供统一接口和自定义算子支持;DEAP 功能更全面但学习曲线较陡,PyGMO 则专注于大规模并行优化。用户可根据需求选择。
项目信息
- 仓库:guofei9987/scikit-opt
- 星标:6,714 · 派生:1,107
- 主要语言:Python
- 许可证:MIT
- 最近提交:2026-03-25
- 项目主页:https://scikit-opt.github.io/scikit-opt/#/en/
本文属于《学科研究工具知识库 · 数学》第 6 篇(按 GitHub 星标排序)。收录标准:该学科公开可获取的开源研究工具,星标与活跃度为主要参考,不代表对其性能或适用性的背书;选型前请结合自身场景评估。

发表评论 取消回复