Spaces:
Running
Running
# Brent function benchmark | |
import numpy as np | |
import scipy.optimize as opt | |
from .Base import BaseBenchmark | |
class Brent(BaseBenchmark): | |
"""Brent's function benchmark.""" | |
def __init__(self): | |
super().__init__() | |
self.name = "Brent" | |
self.dimensions = 1 | |
self.global_minimum = 1.0 | |
self.global_minimum_value = 0.0 | |
def evaluate(x): | |
"""Evaluate Brent's function.""" | |
return (x - 1)**2 * (x + 1)**2 * (x - 2)**2 | |
def brent_function(x): | |
"""Brent's function.""" | |
return (x - 1)**2 * (x + 1)**2 * (x - 2)**2 | |
def benchmark_brent(): | |
"""Benchmark the Brent function.""" | |
np.random.uniform (-2, 2) | |
result = opt.minimize_scalar(brent_function, bounds=(-2, 2), method='bounded') | |
print(f"Optimized parameter: {result.x}") | |
print(f"Function value at optimum: {result.fun}") | |
print("Optimization successful:", result.success) | |
if __name__ == "__main__": | |
benchmark_brent() | |