Esempio n. 1
0
def logging_example():
    task = TaskConvPrint(D=50, nFES=50000, nGEN=50000, benchmark=MyBenchmark())
    algo = CamelAlgorithm(NP=50,
                          omega=0.25,
                          alpha=0.15,
                          mu=0.5,
                          S_init=1,
                          E_init=1,
                          T_min=0,
                          T_max=100,
                          task=task)
    best = algo.run()
    logger.info('%s %s' % (best[0], best[1]))
Esempio n. 2
0
 def test_griewank_works_fine(self):
     ca_griewank = CamelAlgorithm(NP=40,
                                  D=self.D,
                                  nGEN=self.nGEN,
                                  nFES=self.nFES,
                                  benchmark=Griewank(),
                                  seed=self.seed)
     ca_griewankc = CamelAlgorithm(NP=40,
                                   D=self.D,
                                   nGEN=self.nGEN,
                                   nFES=self.nFES,
                                   benchmark=Griewank(),
                                   seed=self.seed)
     AlgorithmTestCase.algorithm_run_test(self, ca_griewank, ca_griewankc)
Esempio n. 3
0
 def test_custom_works_fine(self):
     ca_custom = CamelAlgorithm(NP=40,
                                D=self.D,
                                nGEN=self.nGEN,
                                nFES=self.nFES,
                                benchmark=MyBenchmark(),
                                seed=self.seed)
     ca_customc = CamelAlgorithm(NP=40,
                                 D=self.D,
                                 nGEN=self.nGEN,
                                 nFES=self.nFES,
                                 benchmark=MyBenchmark(),
                                 seed=self.seed)
     AlgorithmTestCase.algorithm_run_test(self, ca_custom, ca_customc)
Esempio n. 4
0
def plot_example():
    task = TaskConvPlot(D=50, nFES=50000, nGEN=10000, benchmark=MyBenchmark())
    algo = CamelAlgorithm(NP=50,
                          omega=0.25,
                          alpha=0.15,
                          mu=0.5,
                          S_init=1,
                          E_init=1,
                          T_min=0,
                          T_max=100,
                          task=task)
    best = algo.run()
    logger.info('%s %s' % (best[0], best[1]))
    input('Press [enter] to continue')
Esempio n. 5
0
def simple_example(runs=10):
    for i in range(runs):
        Algorithm = CamelAlgorithm(NP=50,
                                   D=50,
                                   nGEN=50000,
                                   nFES=500000,
                                   omega=0.25,
                                   alpha=0.15,
                                   mu=0.5,
                                   S_init=1,
                                   E_init=1,
                                   T_min=0,
                                   T_max=100,
                                   benchmark=MyBenchmark())
        Best = Algorithm.run()
        logger.info('%s %s' % (Best[0], Best[1]))
Esempio n. 6
0
class CATestCase(TestCase):
	def setUp(self):
		self.D = 40
		self.ca_custom = CamelAlgorithm(NP=40, D=self.D, nGEN=10, nFES=4000, benchmark=MyBenchmark())
		self.ca_griewank = CamelAlgorithm(NP=40, D=self.D, nGEN=10, nFES=4000, benchmark=Griewank())

	def test_custom_works_fine(self):
		fun = MyBenchmark().function()
		x = self.ca_custom.run()
		self.assertTrue(x)
		self.assertAlmostEqual(fun(self.D, asarray(x[0])), x[1], delta=1e3)

	def test_griewank_works_fine(self):
		fun = Griewank().function()
		x = self.ca_griewank.run()
		self.assertTrue(x)
		self.assertAlmostEqual(fun(self.D, asarray(x[0])), x[1], delta=1e3)
Esempio n. 7
0
 def test_type_parameters(self):
     d = CamelAlgorithm.typeParameters()
     self.assertTrue(d['NP'](1))
     self.assertFalse(d['NP'](0))
     self.assertFalse(d['NP'](-1))
     self.assertTrue(d['omega'](.1))
     self.assertTrue(d['omega'](10))
     self.assertFalse(d['omega'](None))
     self.assertTrue(d['alpha'](.342))
     self.assertTrue(d['mu'](.342))
     self.assertTrue(d['omega'](3))
     self.assertTrue(d['omega'](-3))
     self.assertFalse(d['mu'](3))
     self.assertFalse(d['mu'](-3))
     self.assertFalse(d['S_init'](-1))
     self.assertFalse(d['E_init'](-1))
     self.assertFalse(d['T_min'](-1))
     self.assertFalse(d['T_max'](-1))
     self.assertTrue(d['S_init'](10))
     self.assertTrue(d['E_init'](10))
     self.assertTrue(d['T_min'](10))
     self.assertTrue(d['T_max'](10))
Esempio n. 8
0
        self.Lower = -11
        self.Upper = 11

    def function(self):
        def evaluate(D, sol):
            val = 0.0
            for i in range(D):
                val += sol[i] * sol[i]
            return val

        return evaluate


for i in range(10):
    Algorithm = CamelAlgorithm(NP=50,
                               D=50,
                               nGEN=50000,
                               nFES=500000,
                               omega=0.25,
                               alpha=0.15,
                               mu=0.5,
                               S_init=1,
                               E_init=1,
                               T_min=0,
                               T_max=100,
                               benchmark=MyBenchmark())
    Best = Algorithm.run()
    logger.info('%s %s' % (Best[0], Best[1]))

# vim: tabstop=3 noexpandtab shiftwidth=3 softtabstop=3
Esempio n. 9
0
# encoding=utf8
# This is temporary fix to import module from parent folder
# It will be removed when package is published on PyPI
import sys
sys.path.append('../')
# End of fix

import random
from NiaPy.algorithms.basic import CamelAlgorithm
from NiaPy.util import OptimizationType
from NiaPy.task.task import StoppingTask
from NiaPy.benchmarks import Sphere

#we will run Camel Algorithm for 5 independent runs
for i in range(5):
    task = StoppingTask(D=10,
                        nFES=1000,
                        optType=OptimizationType.MINIMIZATION,
                        benchmark=Sphere())
    algo = CamelAlgorithm(NP=40)
    best = algo.run(task=task)
    print('%s -> %s' % (best[0].x, best[1]))
Esempio n. 10
0
 def test_griewank_works_fine(self):
     ca_griewank = CamelAlgorithm(NP=40, seed=self.seed)
     ca_griewankc = CamelAlgorithm(NP=40, seed=self.seed)
     AlgorithmTestCase.algorithm_run_test(self, ca_griewank, ca_griewankc)
Esempio n. 11
0
 def test_custom_works_fine(self):
     ca_custom = CamelAlgorithm(NP=40, seed=self.seed)
     ca_customc = CamelAlgorithm(NP=40, seed=self.seed)
     AlgorithmTestCase.algorithm_run_test(self, ca_custom, ca_customc,
                                          MyBenchmark())
Esempio n. 12
0
	def setUp(self):
		self.D = 40
		self.ca_custom = CamelAlgorithm(NP=40, D=self.D, nGEN=10, nFES=4000, benchmark=MyBenchmark())
		self.ca_griewank = CamelAlgorithm(NP=40, D=self.D, nGEN=10, nFES=4000, benchmark=Griewank())