不同群优化算法的实现与可视化。
swarmlib的Python项目详细描述
斯瓦姆利布
说明
这个存储库实现了几个优化算法。
安装
您可以使用pypi中的pip
安装包:
pip3 install swarmlib
swarm --version
用法
要打印所有可用的算法:
swarm --help
蚁群优化
这个存储库包括一个求解旅行商问题(tsp)的蚁群优化算法,如2006年11月在{a10}中介绍的marco dorigo、mauro biratari和thomas stuetzle(doi:10.1109/mci.2006.329691)。
这是2018/2019年冬季布拉格查尔斯大学(charles university prague)课程Natural computing for learning and optimisation的一部分。
功能
启用使用TSPLIB95文件将蚁群优化算法应用于TSP并打印结果。
该算法求解tsp,并绘制所有迭代的结果。 根据从tsplib95文件中读取的节点坐标绘制节点。边缘的宽度表示与此边缘相关联的信息素的量如果边是blue,则它是best found path的一部分。
要打印所有可用选项,请执行:
swarm ants -h
api
除了客户端之外,您还可以使用API:
fromswarmlib.aco4tsp.aco_problemimportACOProblemproblem=ACOProblem('/path/to/my/tsp-file.tsp',10)ifproblem.solve():problem.show_result()
萤火虫算法
这个存储库包括像杨昕(xin she yang)在2009年的论文Firefly Algorithms for Multimodal Optimization中介绍的萤火虫算法(doi:10.1007/978-3-642-04944-6-u 14)。
这是2018/2019年冬季布拉格查尔斯大学(charles university prague)课程Natural computing for learning and optimisation的一部分。
功能
启用将萤火虫算法应用于提供的一个二维函数。该算法试图找到所选函数的全局最小值。
当前可以选择两个功能:
要打印所有可用选项,请执行:
swarm fireflies -h
api
除了客户端之外,您还可以使用API:
fromswarmlib.fireflyalgorithm.firefly_problemimportFireflyProblemfromswarmlib.fireflyalgorithm.functionsimportFUNCTIONSproblem=FireflyProblem(FUNCTIONS['michalewicz'],14)problem.solve()
贡献
如果发现错误或缺少功能,请毫不犹豫地file an issue。
欢迎拉取请求!
支架
当你喜欢这个包时,一定要star the repository。我一直在寻找新的想法和反馈。
此外,还可以donate via paypal。