示例#1
0
文件: Funcs.cs 项目: KeithNel/CEC2013
            public CF2(IBoundsFn boundsFn)
                : base(boundsFn, 8)
            {
                for (int i=0; i<nofunc_; ++i) {
                    sigma_[i] = 1.0;
                    bias_[i]  = 0.0;
                    weight_[i]= 0.0;
                }
                lambda_[0] = 1.0;
                lambda_[1] = 1.0;
                lambda_[2] = 10.0;
                lambda_[3] = 10.0;
                lambda_[4] = 1.0/10.0;
                lambda_[5] = 1.0/10.0;
                lambda_[6] = 1.0/7.0;
                lambda_[7] = 1.0/7.0;
                /* load optima */
                if (this.getDimension() == 2 || this.getDimension() == 3 || this.getDimension() == 5
                        || this.getDimension() == 10 || this.getDimension() == 20 ) {
                    String fname = "../../data/CF2_M_D" + this.getDimension() + "_opt.dat";
                    loadOptima(fname);
                } else {
                    initOptimaRandomly();
                }

                /* M_ Identity matrices */
                initRotmatIdentity();

                /* Initialise functions of the composition */
                funcs_ = new List<Func>()
                {
                    new FRastrigin(boundsFn),
                    new FRastrigin(boundsFn),
                    new FWeierstrass(boundsFn),
                    new FWeierstrass(boundsFn),
                    new FGriewank(boundsFn),
                    new FGriewank(boundsFn),
                    new FSphere(boundsFn),
                    new FSphere(boundsFn)
                };

                CalculateFMaxi();
            }
示例#2
0
文件: Funcs.cs 项目: KeithNel/CEC2013
 public CF1(IBoundsFn boundsFn)
     : base(boundsFn, 6)
 {
     for (int i=0; i<nofunc_; ++i) {
         sigma_[i] = 1;
         bias_[i]  = 0;
         weight_[i]= 0;
     }
     lambda_[0] = 1.0;
     lambda_[1] = 1.0;
     lambda_[2] = 8.0;
     lambda_[3] = 8.0;
     lambda_[4] = 1.0/5.0;
     lambda_[5] = 1.0/5.0;
     /* load optima */
     if (this.getDimension() == 2 || this.getDimension() == 3 || this.getDimension() == 5
             || this.getDimension() == 10 || this.getDimension() == 20 ) {
         String fname = "../../data/CF1_M_D" + this.getDimension() + "_opt.dat";
         //String root = System.getProperty("user.dir");
     //		        System.out.println(root+ " : " +fname);
         loadOptima(fname);
     } else {
         Console.WriteLine("Error: NOT SUPPOSED TO BE HERE");
         initOptimaRandomly();
     }
     /* M_ Identity matrices */
     initRotmatIdentity();
     /* Initialise functions of the composition */
     funcs_ = new List<Func>()
     {
         new FGriewank(boundsFn),
         new FGriewank(boundsFn),
         new FWeierstrass(boundsFn),
         new FWeierstrass(boundsFn),
         new FSphere(boundsFn),
         new FSphere(boundsFn)
     };
     //TODO: calculate this correctly in the initialisation phase
     CalculateFMaxi();
 }
示例#3
0
文件: Funcs.cs 项目: KeithNel/CEC2013
 public Shubert(IBoundsFn boundsFn)
     : base(boundsFn)
 {
 }
示例#4
0
文件: Funcs.cs 项目: KeithNel/CEC2013
 public ModifiedRastriginAll(IBoundsFn boundsFn)
     : base(boundsFn)
 {
 }
示例#5
0
文件: Funcs.cs 项目: KeithNel/CEC2013
 public Himmelblau(IBoundsFn boundsFn)
     : base(boundsFn)
 {
 }
示例#6
0
文件: Funcs.cs 项目: KeithNel/CEC2013
 public FWeierstrass(IBoundsFn boundsFn)
     : base(boundsFn)
 {
 }
示例#7
0
文件: Funcs.cs 项目: KeithNel/CEC2013
 public FSphere(IBoundsFn boundsFn)
     : base(boundsFn)
 {
     // TODO Auto-generated constructor stub
 }
示例#8
0
文件: Funcs.cs 项目: KeithNel/CEC2013
 public Vincent(IBoundsFn boundsFn)
     : base(boundsFn)
 {
 }
示例#9
0
文件: Funcs.cs 项目: KeithNel/CEC2013
 public FRastrigin(IBoundsFn boundsFn)
     : base(boundsFn)
 {
 }
示例#10
0
文件: Funcs.cs 项目: KeithNel/CEC2013
 public FiveUnevenPeakTrap(IBoundsFn boundsFn)
     : base(boundsFn)
 {
 }
示例#11
0
文件: Funcs.cs 项目: KeithNel/CEC2013
 public FGriewank(IBoundsFn boundsFn)
     : base(boundsFn)
 {
 }
示例#12
0
文件: Funcs.cs 项目: KeithNel/CEC2013
 public FEF8F2(IBoundsFn boundsFn)
     : base(boundsFn)
 {
 }
示例#13
0
文件: Funcs.cs 项目: KeithNel/CEC2013
 public FAckley(IBoundsFn boundsFn)
     : base(boundsFn)
 {
 }
示例#14
0
文件: Funcs.cs 项目: KeithNel/CEC2013
 public EqualMaxima(IBoundsFn boundsFn)
     : base(boundsFn)
 {
 }
示例#15
0
文件: Funcs.cs 项目: KeithNel/CEC2013
 public SixHumpCamelBack(IBoundsFn boundsFn)
     : base(boundsFn)
 {
 }
示例#16
0
文件: Funcs.cs 项目: KeithNel/CEC2013
 public UnevenDecreasingMaxima(IBoundsFn boundsFn)
     : base(boundsFn)
 {
 }
示例#17
0
文件: Funcs.cs 项目: KeithNel/CEC2013
 public FRosenbrock(IBoundsFn boundsFn)
     : base(boundsFn)
 {
 }
示例#18
0
文件: Funcs.cs 项目: KeithNel/CEC2013
 public FSchwefel(IBoundsFn boundsFn)
     : base(boundsFn)
 {
 }
示例#19
0
文件: Funcs.cs 项目: KeithNel/CEC2013
 public CF3(IBoundsFn boundsFn)
     : base(boundsFn, 6)
 {
     for (int i=0; i<nofunc_; ++i) {
         bias_[i]  = 0.0;
         weight_[i]= 0.0;
     }
     sigma_[0] = 1.0;
     sigma_[1] = 1.0;
     sigma_[2] = 2.0;
     sigma_[3] = 2.0;
     sigma_[4] = 2.0;
     sigma_[5] = 2.0;
     lambda_[0] = 1.0/4.0;
     lambda_[1] = 1.0/10.0;
     lambda_[2] = 2.0;
     lambda_[3] = 1.0;
     lambda_[4] = 2.0;
     lambda_[5] = 5.0;
     /* load optima */
     if (this.getDimension() == 2 || this.getDimension() == 3 || this.getDimension() == 5
             || this.getDimension() == 10 || this.getDimension() == 20 ) {
         String fname;
         fname = "../../data/CF3_M_D" + this.getDimension() + "_opt.dat";
         loadOptima(fname);
         fname = "../../data/CF3_M_D" + this.getDimension() + ".dat";
         loadRotationMatrix(fname);
     } else {
         initOptimaRandomly();
         //TODO: Generate dimension independent rotation matrices
         /* M_ Identity matrices */
         initRotmatIdentity();
     }
     /* Initialise functions of the composition */
     funcs_ = new List<Func>()
     {
         new FEF8F2(boundsFn),
         new FEF8F2(boundsFn),
         new FWeierstrass(boundsFn),
         new FWeierstrass(boundsFn),
         new FGriewank(boundsFn),
         new FGriewank(boundsFn),
     };
     CalculateFMaxi();
 }