Closed aisobran closed 8 years ago
oh no! No wonder why it's not working. Shit. I'm glad you found that!
On Sun, Dec 6, 2015 at 11:43 AM, Alexander Sobran notifications@github.com wrote:
I've been trying to determine why we have so many deaths and evaluated the k calculation. It's always 1.0 which pretty much makes it useless and turns it into classical PSO without a Vmax which would explain why we have so many deaths.
— Reply to this email directly or view it on GitHub https://github.com/LambdaConglomerate/x9115lam/issues/39.
Getting rid of the leading term in the denominator helps. Makes it 0.5. I think we want the constriction factor to be 0 < X < 1. We might just want to hard code it in too, if we're not going to play around with either phi
0.25 gave this type of behaviour (500 steps)
That looks like the type of behavior we are looking for.
"K" is the construction factor: K = 2 / ( abs(2 - φ - sqrt(φ * φ) - 4φ)) φ = φ1 + φ2 φ > 4. This is what menzies posted on his lecture.
phi_tot = phi_1 + phi_2 k = (2.0/math.fabs(2.0 - (phi_tot) - math.sqrt(phi_tot*_2.0 - 4.0_phi_tot)))
Does that look the same?
Thats phi_total > 4, we have phi_total = 4.
damnit all. That's the difference.
If you even increase beyond 4 do we end up with similar behavior to what you were showing above through pegging the value of k?
Yeah and it's a huge difference because the constriction factor with exponentially reduce the previous velocities.
Setting it to 0.25 gave some really good results for DTLZ1. Closest ever.
Damn I have to say I'm super happy that worked. I feel like a dick for messing it up though.
Increasing the phi gives the the same type of affect if it's high enough. Changes the learning behavior though.
I've been trying to determine why we have so many deaths and evaluated the k calculation. It's always 1.0 which pretty much makes it useless and turns it into classical PSO without a Vmax which would explain why we have so many deaths.