def func_impl(self, x):
objval, invalid = None, False
for i, t in enumerate(x):
if t < self.p_min[i] or t > self.p_max[i]:
objval = float("inf")
invalid = True
if not invalid:
x = [int(np.round(x_t)) if p_t is "integer" else x_t for p_t, x_t in zip(self.p_types, x)]
objval = self._coef * self.func(x)
print("{:5d} | {} | {:>15.5f}".format(
self.n_eval,
" | ".join(["{:>15.5f}".format(t) for t in x]),
self._coef * objval
))
self.n_eval += 1
return objval
评论列表
文章目录