pso.js 成为一个干净微小的实现。我目前在我的神经网络库中使用它来优化权重。但是,它足够灵活,可以用于许多不同类型的优化问题。查看如何使用该库的两个示例。

用法

创建一个群体很简单。您需要做的就是指定要优化的粒子数量和参数数量。最后一个参数是选项哈希。


var numParticles = 30;

var numParams = 20;

var swarm = new PSO.swarm(numParticles, numParams, {

    min: -1,

    max: 1,

    velocityMultiplier: .1,

    springCoefficient: .25,

    bounceCoefficient: .25,

    enableJitter: false,

    jitterRatio: 0.2

});