public void FitBFGS2() { double eps = 1e-5; double rEps = eps*10; int itMax = 50; double step=1; double[] vector = {6,45,22}; double[] expVector = {0,0,0}; Parabola f = new Parabola(); int dim = f.Dimension; BFGS alg = new BFGS(dim,vector,f,step,eps,itMax); alg.FindMinimum(); Assert.IsTrue(Diff(expVector,alg.Minimum,dim)<rEps); }
public void FitBFGS1() { double eps = 1e-5; double rEps = eps*10; double step = 2; double[] vector = {0,0,0}; double[] expVector = {1,-2,3}; int itMax = 50; TestFunction f = new TestFunction(); int dim = f.Dimension; BFGS alg = new BFGS(dim, vector, f, step, eps, itMax); alg.FindMinimum(); Assert.IsTrue(Diff(expVector,alg.Minimum,dim)<rEps); }
public void FitBFGS3() { double eps = 1e-5; double rEps = eps; int itMax = 200; double step=1; double[] vector = {6,-5}; double[] expVector = {1,1}; Banana f = new Banana(); int dim = f.Dimension; BFGS alg = new BFGS(dim,vector,f,step,eps,itMax); alg.FindMinimum(); Assert.IsTrue(Diff(expVector,alg.Minimum,dim)<rEps); }