实干、实践、积累、思考,创新。
- 程序图标 ( Program Icon )
- 程序介绍 ( Program Introduction)
假期花了几天研究粒子群优化算法,顺便写了这个小工具,简单测试无约束最优化问题,也顺便训练一下编程。
软件自带几个经典的PSO粒子群优化算法测试函数,具体包括:
0: Sphere
1: Eggcrate
2: Rosenbrock
3: Ackley
4: Schaffer
5: Rastrigrin
6: Cigar
7: Griewangk
8: Schwefel
几个函数的图像可以在这个博文查看:[笔记][智能算法]几个经典的PSO粒子群优化算法测试函数 (Benchmark function for PSO)
程序可以观察曲面的3D图及等高线图,另外可以看到粒子在迭代过程中的运动过程、查看全局最优位置。
另外体会是,对于不太复杂的问题,约束条件不多,变量不多,或者变量多的无约束优化问题,PSO算法还是不错。
但是当约束条件苛刻,变量多的时候,就很容易陷入局部最优。对于一些实际工程应用问题,往往是复杂的,想着依靠一个算法解决所有问题是不现实的。
- 程序界面 ( Program Interface )
- 操作演示 ( Program Interface )
- 测试算例 (Test Examples )
看看几个测算例子
Sphere曲面:
全局最优点(0,0),最优值0
Eggcrate曲面:
全局最优点(0,0),最优值0
Rosenbrock曲面:
全局最优点(1,1),最优值0
Schwefel曲面:
全局最优点(1,1),最优值0
- 相关博文 ( Related Topics)
[01] [编程][算法][几何] 编程训练: 凸包问题 [Convex-Hull Problem]
[02] [编程][算法][几何] 编程训练: 离散点的闭合路径 [Closed Path for points]
[03] [编程][算法][几何] 编程训练: 3次B样条曲线 [Cubic BSpline]
[05] [编程][算法][几何] 编程训练: 3次Bezier曲线 [Cubic Bezier Curve]
[06] [编程][游戏][开发] 编程训练:数独游戏 ( Sudoku )
[07] [编程][软件][Programming] 编程训练:模拟退火算法(Simulated annealing algorithm)
[08] [编程][算法][优化] 编程训练:函数的CONLIN线性化
[09] [编程][算法][优化] 编程训练:函数的移动渐进线(MMA)近似
[09] [编程训练][Programming Training] URL Encode and Decode
[10] [游戏][编程][挑战] Programming challenge: Tetris Game [编程挑战: 俄罗斯方块游戏]
[11] [编程][软件][Tool] 幸运大抽奖程序 Lucky Draw
[12] Buffon’s Needle problem [蒲丰投针问题]
[13] [Game][游戏]CJD Core Ball[见缝插针游戏]
[14] Sierpinski Triangle by 1D Cellular Automata [1D元包自动机实现Sierpinski三角形]
[15] Cellular Automata Forest Fire Model [元包自动机森林火灾模型]
[16] Conway’s Game of Life [生命游戏]
[17] Mandelbrot Set & Julia Set [分形]
[20] [编程训练][Programming Training] Gaussian Distribution (高斯分布)
[21] [编程训练]Programming Training: Get Host
[22] [编程训练]Programming Training: Rotate Text
[23] [编程训练] 离散点的Delaunay三角形剖分( Delaunay triangulation of a point set)
[24] [编程训练] 图像分割 (Image segmentation)
[25] [编程训练] 拼图游戏 (Jigsaw Puzzle Game)
[26] [编程训练][Programming Training] Random number generator – Uniform Distribution (随机数生成器-均匀分布)
[27] [抽奖][软件][编程][年会] 2020公司年会抽奖 (图片抽奖) (RBS16周年纪念版) (Run by souls)
[28] [编程训练][游戏][数学] 红酒杯与白酒杯里到底有多少红酒和白酒?
[29] [数学][算法] 最小二乘法曲线拟合( Least square curve fitting )
[30] [编程][数学][编程训练] |x|^n+|y|^n=1小米logo轮廓曲线
[31] [数学][编程] 蒙特卡洛模拟法求圆周率π (Monte Carlo method to find PI)
[32] [编程训练] BMP图像缩放 (BMP Image scaling)
[33] [编程训练] 粒子群优化算法 [PSO: Particle Swarm Optimization]
[35] [数学][编程][混沌] 虫口模型的数值模拟 [Numerical simulation of insect population model]
- 微信公众号 ( Wechat Subscription)
您好,崔博士。这个小软件可以发一下学习一下吗