@@ 66-83 (lines=18) @@ | ||
63 | """ |
|
64 | Name = ['EvolutionStrategy1p1', 'EvolutionStrategy(1+1)', 'ES(1+1)'] |
|
65 | ||
66 | @staticmethod |
|
67 | def typeParameters(): |
|
68 | r"""Get dictionary with functions for checking values of parameters. |
|
69 | ||
70 | Returns: |
|
71 | Dict[str, Callable]: |
|
72 | * mu (Callable[[int], bool]) |
|
73 | * k (Callable[[int], bool]) |
|
74 | * c_a (Callable[[Union[float, int]], bool]) |
|
75 | * c_r (Callable[[Union[float, int]], bool]) |
|
76 | * epsilon (Callable[[float], bool]) |
|
77 | """ |
|
78 | return { |
|
79 | 'mu': lambda x: isinstance(x, int) and x > 0, |
|
80 | 'k': lambda x: isinstance(x, int) and x > 0, |
|
81 | 'c_a': lambda x: isinstance(x, (float, int)) and x > 1, |
|
82 | 'c_r': lambda x: isinstance(x, (float, int)) and 0 < x < 1, |
|
83 | 'epsilon': lambda x: isinstance(x, float) and 0 < x < 1 |
|
84 | } |
|
85 | ||
86 | def setParameters(self, mu=1, k=10, c_a=1.1, c_r=0.5, epsilon=1e-20, **ukwargs): |
@@ 58-73 (lines=16) @@ | ||
55 | """ |
|
56 | return r"""Yang, Xin-She. "Harmony search as a metaheuristic algorithm." Music-inspired harmony search algorithm. Springer, Berlin, Heidelberg, 2009. 1-14.""" |
|
57 | ||
58 | @staticmethod |
|
59 | def typeParameters(): |
|
60 | r"""Get dictionary with functions for checking values of parameters. |
|
61 | ||
62 | Returns: |
|
63 | Dict[str, Callable]: |
|
64 | * HMS (Callable[[int], bool]) |
|
65 | * r_accept (Callable[[float], bool]) |
|
66 | * r_pa (Callable[[float], bool]) |
|
67 | * b_range (Callable[[float], bool]) |
|
68 | """ |
|
69 | return { |
|
70 | "HMS": lambda x: isinstance(x, int) and x > 0, |
|
71 | "r_accept": lambda x: isinstance(x, float) and 0 < x < 1, |
|
72 | "r_pa": lambda x: isinstance(x, float) and 0 < x < 1, |
|
73 | "b_range": lambda x: isinstance(x, (int, float)) and x > 0 |
|
74 | } |
|
75 | ||
76 | def setParameters(self, HMS=30, r_accept=0.7, r_pa=0.35, b_range=1.42, **ukwargs): |
@@ 156-162 (lines=7) @@ | ||
153 | """ |
|
154 | return r"""Tan, Ying. "Firework Algorithm: A Novel Swarm Intelligence Optimization Method." (2015).""" |
|
155 | ||
156 | @staticmethod |
|
157 | def typeParameters(): return { |
|
158 | 'N': lambda x: isinstance(x, int) and x > 0, |
|
159 | 'm': lambda x: isinstance(x, int) and x > 0, |
|
160 | 'a': lambda x: isinstance(x, (int, float)) and x > 0, |
|
161 | 'b': lambda x: isinstance(x, (int, float)) and x > 0, |
|
162 | 'epsilon': lambda x: isinstance(x, float) and 0 < x < 1 |
|
163 | } |
|
164 | ||
165 | def setParameters(self, N=40, m=40, a=1, b=2, A=40, epsilon=1e-31, **ukwargs): |