particleupdaterandombyparticle.java
来自「這是最近蒐集資料找到的Java PSO Swarm 大家可以下載回去參考使用 」· Java 代码 · 共 41 行
JAVA
41 行
package net.sourceforge.jswarm_pso;/** * Particle update: Each particle selects an rlocal and rother * independently from other particles' values * * @author Pablo Cingolani <pcingola@sinectis.com> */public class ParticleUpdateRandomByParticle extends ParticleUpdate { /** * Constructor * @param particle : Sample of particles that will be updated later */ public ParticleUpdateRandomByParticle(Particle particle) { super(particle); } /** Update particle's velocity and position */ public void update(Swarm swarm, Particle particle) { double position[] = particle.getPosition(); double velocity[] = particle.getVelocity(); double globalBestPosition[] = swarm.getBestPosition(); double particleBestPosition[] = particle.getBestPosition(); double rlocal = Math.random(); double rglobal = Math.random(); // Update velocity and position for( int i = 0; i < position.length; i++ ) { // Update position position[i] = position[i] + velocity[i]; // Update velocity velocity[i] = swarm.getInertia() * velocity[i] // Inertia + rlocal * swarm.getParticleIncrement() * (particleBestPosition[i] - position[i]) // Local best + rglobal * swarm.getGlobalIncrement() * (globalBestPosition[i] - position[i]); // Global best } }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?