1D Black-Box Convex Minimization (Gradient-Free)
Task
Implement in Python an algorithm to minimize a 1D convex function F(x) over a closed interval [a, b] when gradients are unavailable and only function evaluations are allowed.
Requirements
-
Describe the approach (e.g., golden-section search) and why it works for 1D convex functions.
-
Specify stopping criteria and numerical tolerances.
-
Analyze the number of function evaluations and time/space complexity.
-
Explain how to handle noisy evaluations or flat regions.
-
Provide working code and a brief explanation.
Assumptions
-
F is convex and unimodal on [a, b].
-
Function evaluations may be expensive; gradients are unavailable.
-
Optional: evaluations may be noisy (random noise with zero mean).