Code Duplication    Length = 15-15 lines in 2 locations

NiaPy/algorithms/basic/fpa.py 1 location

@@ 83-97 (lines=15) @@
80
81
		if ukwargs: logger.info('Unused arguments: %s' % (ukwargs))
82
83
	def repair(self, x, task):
84
		r"""Repair solution to search space.
85
86
		Args:
87
			x (numpy.ndarray): Solution to fix.
88
			task (Task): Optimization task.
89
90
		Returns:
91
			numpy.ndarray: fixed solution.
92
		"""
93
		ir = where(x > task.Upper)
94
		x[ir] = task.Lower[ir] + x[ir] % task.bRange[ir]
95
		ir = where(x < task.Lower)
96
		x[ir] = task.Lower[ir] + x[ir] % task.bRange[ir]
97
		return x
98
99
	def levy(self, D):
100
		r"""Levy function.

NiaPy/algorithms/basic/fwa.py 1 location

@@ 244-258 (lines=15) @@
241
		"""
242
		return self.Mapping(x + self.rand(task.D) * self.normal(1, 1, task.D), task)
243
244
	def Mapping(self, x, task):
245
		r"""Fix value to bounds..
246
247
		Args:
248
			x (numpy.ndarray): Individual to fix.
249
			task (Task): Optimization task.
250
251
		Returns:
252
			numpy.ndarray: Individual in search range.
253
		"""
254
		ir = where(x > task.Upper)
255
		x[ir] = task.Lower[ir] + x[ir] % task.bRange[ir]
256
		ir = where(x < task.Lower)
257
		x[ir] = task.Lower[ir] + x[ir] % task.bRange[ir]
258
		return x
259
260
	def R(self, x, FW):
261
		r"""Calculate ranges.