@@ 54-79 (lines=26) @@ | ||
51 | Year: 2006 |
|
52 | Main reference: DT Pham, A Ghanbarzadeh, E Koc, S Otri, S Rahim, and M Zaidi. The bees algorithm-a novel tool for complex optimisation problems. In Proceedings of the 2nd Virtual International Conference on Intelligent Production Machines and Systems (IPROMS 2006), pages 454–459, 2006 |
|
53 | """ |
|
54 | @staticmethod |
|
55 | def typeParameters(): |
|
56 | r"""Get dictionary with functions for checking values of parameters. |
|
57 | ||
58 | Returns: |
|
59 | Dict[str, Callable]: |
|
60 | * NP (Callable[[int], bool]): Checks if number of bees parameter has a proper value. |
|
61 | * m (Callable[[int], bool]): Checks if number of selected sites parameter has a proper value. |
|
62 | * e (Callable[[int], bool]): Checks if number of elite selected sites parameter has a proper value. |
|
63 | * nep (Callable[[int], bool]): Checks if number of elite bees parameter has a proper value. |
|
64 | * nsp (Callable[[int], bool]): Checks if number of other bees parameter has a proper value. |
|
65 | * ngh (Callable[[float], bool]): Checks if size of patches parameter has a proper value. |
|
66 | ||
67 | See Also: |
|
68 | * :func:`NiaPy.algorithms.algorithm.Algorithm.typeParameters` |
|
69 | """ |
|
70 | d = Algorithm.typeParameters() |
|
71 | d.update({ |
|
72 | 'NP': lambda x: isinstance(x, int) and x > 0, |
|
73 | 'm': lambda x: isinstance(x, int) and x > 0, |
|
74 | 'e': lambda x: isinstance(x, int) and x > 0, |
|
75 | 'nep': lambda x: isinstance(x, int) and x > 0, |
|
76 | 'nsp': lambda x: isinstance(x, int) and x > 0, |
|
77 | 'ngh': lambda x: isinstance(x, float) and x > 0 |
|
78 | }) |
|
79 | return d |
|
80 | ||
81 | def setParameters(self, NP=40, m=5, e=4, ngh=1, nep=4, nsp=2, **ukwargs): |
|
82 | r"""Set the parameters of the algorithm. |
@@ 57-80 (lines=24) @@ | ||
54 | Main reference: Manizheh Ghaemi, Mohammad-Reza Feizi-Derakhshi, Forest Optimization Algorithm, Expert Systems with Applications, Volume 41, Issue 15, 2014, Pages 6676-6687, ISSN 0957-4174, https://doi.org/10.1016/j.eswa.2014.05.009. |
|
55 | """ |
|
56 | ||
57 | @staticmethod |
|
58 | def typeParameters(): |
|
59 | r"""Get dictionary with functions for checking values of parameters. |
|
60 | ||
61 | Returns: |
|
62 | Dict[str, Callable]: |
|
63 | * lt (Callable[[int], bool]): Checks if life time parameter has a proper value. |
|
64 | * al (Callable[[int], bool]): Checks if area limit parameter has a proper value. |
|
65 | * lsc (Callable[[int], bool]): Checks if local seeding changes parameter has a proper value. |
|
66 | * gsc (Callable[[int], bool]): Checks if global seeding changes parameter has a proper value. |
|
67 | * tr (Callable[[float], bool]): Checks if transfer rate parameter has a proper value. |
|
68 | ||
69 | See Also: |
|
70 | * :func:`NiaPy.algorithms.algorithm.Algorithm.typeParameters` |
|
71 | """ |
|
72 | d = Algorithm.typeParameters() |
|
73 | d.update({ |
|
74 | 'lt': lambda x: isinstance(x, int) and x > 0, |
|
75 | 'al': lambda x: isinstance(x, int) and x > 0, |
|
76 | 'lsc': lambda x: isinstance(x, int) and x > 0, |
|
77 | 'gsc': lambda x: isinstance(x, int) and x > 0, |
|
78 | 'tr': lambda x: isinstance(x, float) and 0 <= x <= 1, |
|
79 | }) |
|
80 | return d |
|
81 | ||
82 | def setParameters(self, NP=10, lt=3, al=10, lsc=1, gsc=1, tr=0.3, **ukwargs): |
|
83 | r"""Set the parameters of the algorithm. |
@@ 98-117 (lines=20) @@ | ||
95 | """ |
|
96 | return r"""Zhenyu Meng, Jeng-Shyang Pan, Monkey King Evolution: A new memetic evolutionary algorithm and its application in vehicle fuel consumption optimization, Knowledge-Based Systems, Volume 97, 2016, Pages 144-157, ISSN 0950-7051, https://doi.org/10.1016/j.knosys.2016.01.009.""" |
|
97 | ||
98 | @staticmethod |
|
99 | def typeParameters(): |
|
100 | r"""Get dictionary with functions for checking values of parameters. |
|
101 | ||
102 | Returns: |
|
103 | Dict[str, Callable]: |
|
104 | * F (Callable[[int], bool]) |
|
105 | * R (Callable[[Union[int, float]], bool]) |
|
106 | * C (Callable[[Union[int, float]], bool]) |
|
107 | * FC (Callable[[Union[int, float]], bool]) |
|
108 | """ |
|
109 | d = Algorithm.typeParameters() |
|
110 | d.update({ |
|
111 | 'NP': lambda x: isinstance(x, int) and x > 0, |
|
112 | 'F': lambda x: isinstance(x, (float, int)) and x > 0, |
|
113 | 'R': lambda x: isinstance(x, (float, int)) and x > 0, |
|
114 | 'C': lambda x: isinstance(x, int) and x > 0, |
|
115 | 'FC': lambda x: isinstance(x, (float, int)) and x > 0 |
|
116 | }) |
|
117 | return d |
|
118 | ||
119 | def setParameters(self, NP=40, F=0.7, R=0.3, C=3, FC=0.5, **ukwargs): |
|
120 | r"""Set Monkey King Evolution v1 algorithms static parameters. |