| @@ 15-26 (lines=12) @@ | ||
| 12 | logger.setLevel('INFO') |
|
| 13 | ||
| 14 | ||
| 15 | class MyBenchmark(object): |
|
| 16 | def __init__(self): |
|
| 17 | self.Lower = -5.12 |
|
| 18 | self.Upper = 5.12 |
|
| 19 | ||
| 20 | def function(self): |
|
| 21 | def evaluate(D, sol): |
|
| 22 | val = 0.0 |
|
| 23 | for i in range(D): |
|
| 24 | val = val + sol[i] * sol[i] |
|
| 25 | return val |
|
| 26 | return evaluate |
|
| 27 | ||
| 28 | ||
| 29 | algorithms = ['BatAlgorithm', |
|
| @@ 21-31 (lines=11) @@ | ||
| 18 | # For reproducive results |
|
| 19 | random.seed(1234) |
|
| 20 | ||
| 21 | class MyBenchmark(Benchmark): |
|
| 22 | def __init__(self): |
|
| 23 | self.Lower = -11 |
|
| 24 | self.Upper = 11 |
|
| 25 | ||
| 26 | def function(self): |
|
| 27 | def evaluate(D, sol): |
|
| 28 | val = 0.0 |
|
| 29 | for i in range(D): val += sol[i] ** 2 |
|
| 30 | return val |
|
| 31 | return evaluate |
|
| 32 | ||
| 33 | def simple_example(runs=10): |
|
| 34 | for i in range(runs): |
|
| @@ 20-30 (lines=11) @@ | ||
| 17 | # For reproducive results |
|
| 18 | random.seed(1234) |
|
| 19 | ||
| 20 | class MinMB(object): |
|
| 21 | def __init__(self): |
|
| 22 | self.Lower = -11 |
|
| 23 | self.Upper = 11 |
|
| 24 | ||
| 25 | def function(self): |
|
| 26 | def evaluate(D, sol): |
|
| 27 | val = 0.0 |
|
| 28 | for i in range(D): val = val + sol[i] * sol[i] |
|
| 29 | return val |
|
| 30 | return evaluate |
|
| 31 | ||
| 32 | class MaxMB(MinMB): |
|
| 33 | def function(self): |
|
| @@ 20-30 (lines=11) @@ | ||
| 17 | # For reproducive results |
|
| 18 | random.seed(1234) |
|
| 19 | ||
| 20 | class MinMB(object): |
|
| 21 | def __init__(self): |
|
| 22 | self.Lower = -11 |
|
| 23 | self.Upper = 11 |
|
| 24 | ||
| 25 | def function(self): |
|
| 26 | def evaluate(D, sol): |
|
| 27 | val = 0.0 |
|
| 28 | for i in range(D): val = val + sol[i] * sol[i] |
|
| 29 | return val |
|
| 30 | return evaluate |
|
| 31 | ||
| 32 | class MaxMB(MinMB): |
|
| 33 | def function(self): |
|
| @@ 20-30 (lines=11) @@ | ||
| 17 | # For reproducive results |
|
| 18 | random.seed(1234) |
|
| 19 | ||
| 20 | class MinMB(object): |
|
| 21 | def __init__(self): |
|
| 22 | self.Lower = -11 |
|
| 23 | self.Upper = 11 |
|
| 24 | ||
| 25 | def function(self): |
|
| 26 | def evaluate(D, sol): |
|
| 27 | val = 0.0 |
|
| 28 | for i in range(D): val = val + sol[i] * sol[i] |
|
| 29 | return val |
|
| 30 | return evaluate |
|
| 31 | ||
| 32 | class MaxMB(MinMB): |
|
| 33 | def function(self): |
|
| @@ 20-30 (lines=11) @@ | ||
| 17 | # For reproducive results |
|
| 18 | random.seed(1234) |
|
| 19 | ||
| 20 | class MinMB(object): |
|
| 21 | def __init__(self): |
|
| 22 | self.Lower = -11 |
|
| 23 | self.Upper = 11 |
|
| 24 | ||
| 25 | def function(self): |
|
| 26 | def evaluate(D, sol): |
|
| 27 | val = 0.0 |
|
| 28 | for i in range(D): val = val + sol[i] * sol[i] |
|
| 29 | return val |
|
| 30 | return evaluate |
|
| 31 | ||
| 32 | class MaxMB(MinMB): |
|
| 33 | def function(self): |
|
| @@ 20-30 (lines=11) @@ | ||
| 17 | # For reproducive results |
|
| 18 | random.seed(1234) |
|
| 19 | ||
| 20 | class MinMB(object): |
|
| 21 | def __init__(self): |
|
| 22 | self.Lower = -11 |
|
| 23 | self.Upper = 11 |
|
| 24 | ||
| 25 | def function(self): |
|
| 26 | def evaluate(D, sol): |
|
| 27 | val = 0.0 |
|
| 28 | for i in range(D): val = val + sol[i] * sol[i] |
|
| 29 | return val |
|
| 30 | return evaluate |
|
| 31 | ||
| 32 | class MaxMB(MinMB): |
|
| 33 | def function(self): |
|
| @@ 20-30 (lines=11) @@ | ||
| 17 | # For reproducive results |
|
| 18 | random.seed(1234) |
|
| 19 | ||
| 20 | class MinMB(object): |
|
| 21 | def __init__(self): |
|
| 22 | self.Lower = -11 |
|
| 23 | self.Upper = 11 |
|
| 24 | ||
| 25 | def function(self): |
|
| 26 | def evaluate(D, sol): |
|
| 27 | val = 0.0 |
|
| 28 | for i in range(D): val = val + sol[i] * sol[i] |
|
| 29 | return val |
|
| 30 | return evaluate |
|
| 31 | ||
| 32 | class MaxMB(MinMB): |
|
| 33 | def function(self): |
|
| @@ 20-30 (lines=11) @@ | ||
| 17 | # For reproducive results |
|
| 18 | random.seed(1234) |
|
| 19 | ||
| 20 | class MinMB(object): |
|
| 21 | def __init__(self): |
|
| 22 | self.Lower = -11 |
|
| 23 | self.Upper = 11 |
|
| 24 | ||
| 25 | def function(self): |
|
| 26 | def evaluate(D, sol): |
|
| 27 | val = 0.0 |
|
| 28 | for i in range(D): val = val + sol[i] * sol[i] |
|
| 29 | return val |
|
| 30 | return evaluate |
|
| 31 | ||
| 32 | class MaxMB(MinMB): |
|
| 33 | def function(self): |
|