public static void Test() { Func <double, double> f = x => x * x; Func <double, double> q = x => f(x - 3) + 2; var swarm = new Swarm1D(); swarm.Minimize(q, -100, 100, 1000, out var X, out var Y); Console.WriteLine("X = {0}; Y = {1}", X, Y); Console.ReadLine(); }
public void MinimizeInterval() { var swarm = new Swarm1D(); swarm.Minimize( F, (-100, 100), IterationCount: 1000, out var X, out var Y); Assert.That.Value(X).IsEqual(__X0, 2e-8); Assert.That.Value(Y).IsEqual(__Y0); }
public void Minimize() { var swarm = new Swarm1D(); swarm.Minimize( F, MinX: -100, MaxX: 100, IterationCount: 1000, out var X, out var Y); Assert.That.Value(X).IsEqual(__X0, 2.0e-8); Assert.That.Value(Y).IsEqual(__Y0); }