public void FWOptimizerTestArithmeticException(InvalidFunc TypeFunc) { FWOptimizer fw = new FWOptimizer(); FWParams param = new FWParams(10, 1000 * 1000, 3, 5, 10, 40); Assert.Throws <InvalidValueFunctionException>(() => GeneralOptimizerTests.TestInavlidFunction(fw, param, TypeFunc)); }
public void FWOptimizerTestOptimization() { FWOptimizer fw = new FWOptimizer(); FWParams param = new FWParams(10, GeneralOptimizerTests.ITER_MAX, 3, 1, 2, 4); bool error = GeneralOptimizerTests.TestOptimizer(fw, param); Assert.False(error); }
public void FWOptimizerTestCancel() { FWOptimizer fw = new FWOptimizer(); // Distance is Manhattan distance. FWParams param = new FWParams(10, 1000 * 1000, 3, 5, 10, 40); bool error = GeneralOptimizerTests.TestCancel(fw, param); Assert.False(error); }
public void FWOptimizerTestReporter() { FWOptimizer fw = new FWOptimizer(); FWParams param = new FWParams(10, GeneralOptimizerTests.ITER_MAX, 3, 1, 4, 5); var reporter = new TestReporter(typeof(FWOptimizer), 0, GeneralOptimizerTests.ITER_MAX - 1); // Optimization f(x,y)=x^2 + y^2 on [-10;10]x[-10;10]. fw.Minimize(param, new OOOptimizationProblem(GeneralOptimizerTests.TargetFunction, GeneralOptimizerTests.LowerBounds, GeneralOptimizerTests.UpperBounds), reporter); Assert.False(reporter.Error); }
private static void Main(string[] args) { IOOOptimizer <BBBCParams> bbbc = new BBBCOptimizer(); IOOOptimizer <FWParams> fw = new FWOptimizer(); IOOOptimizer <GEMParams> gem = new GEMOptimizer(); BBBCParams param1 = new BBBCParams(20, 200, 0.4, 0.5); FWParams param2 = new FWParams(20, 100, 20, 10, 20, 40); GEMParams param3 = new GEMParams(1, 100, 50, 2 * Math.Sqrt(2), 100); IOOOptProblem param = new RastriginProblem(); Console.WriteLine("Exact solution: f(x) = 0, x = (0, 0)."); Console.WriteLine(); Test(bbbc, param1, param, "BBBC"); Test(fw, param2, param, "Fireworks"); Test(gem, param3, param, "GEM"); Console.WriteLine("Complete"); Console.ReadKey(); }
public void FWOptimizerTestWrongParams() { FWOptimizer fw = new FWOptimizer(); Assert.Throws <ArgumentException>(() => GeneralOptimizerTests.TestWrongParams(fw)); }