Challenge - 5 Problems
Bounds and Constraints Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
❓ Predict Output
intermediate2:00remaining
Output of constrained optimization with bounds
What is the value of
result.x after running this code that minimizes f(x) = (x-3)^2 with bounds 0 <= x <= 2?SciPy
from scipy.optimize import minimize f = lambda x: (x - 3)**2 bounds = [(0, 2)] result = minimize(f, x0=[0], bounds=bounds) print(result.x)
Attempts:
2 left
💡 Hint
Think about the minimum of the function without bounds and how bounds limit the solution.
✗ Incorrect
The function (x-3)^2 has its minimum at x=3. But the bounds restrict x to be between 0 and 2. So the optimizer picks the closest bound, which is 2.
❓ data_output
intermediate2:00remaining
Number of iterations with linear constraint
How many iterations does the optimizer perform when minimizing
f(x) = (x[0]-1)^2 + (x[1]-2)^2 with constraint x[0] + x[1] = 3 and no bounds?SciPy
from scipy.optimize import minimize f = lambda x: (x[0]-1)**2 + (x[1]-2)**2 cons = {'type': 'eq', 'fun': lambda x: x[0] + x[1] - 3} result = minimize(f, x0=[0,0], constraints=cons) print(result.nit)
Attempts:
2 left
💡 Hint
The problem is simple and quadratic with a linear equality constraint.
✗ Incorrect
The optimizer converges quickly because the problem is convex and simple, requiring only one iteration.
🔧 Debug
advanced2:00remaining
Identify error in constraint definition
What error does this code raise when trying to minimize
f(x) = x[0]^2 + x[1]^2 with constraint x[0] - 1 > 0 defined incorrectly?SciPy
from scipy.optimize import minimize f = lambda x: x[0]**2 + x[1]**2 cons = {'type': 'ineq', 'fun': lambda x: x[0] - 1 > 0} result = minimize(f, x0=[0,0], constraints=cons)
Attempts:
2 left
💡 Hint
Check what the constraint function returns.
✗ Incorrect
The constraint function returns a boolean value instead of a numeric value, causing a TypeError during optimization.
🚀 Application
advanced2:00remaining
Choosing bounds for parameter estimation
You want to estimate parameters
a and b for a model y = a * x + b using least squares. You know a must be positive and b between -5 and 5. Which bounds should you use in scipy.optimize.minimize?Attempts:
2 left
💡 Hint
None means no limit in that direction.
✗ Incorrect
To enforce a > 0, use (0, None). For b between -5 and 5, use (-5, 5).
🧠 Conceptual
expert2:00remaining
Effect of bounds and constraints on solution uniqueness
Which statement is true about the effect of bounds and constraints on the uniqueness of the solution in optimization problems?
Attempts:
2 left
💡 Hint
Think about how restricting the feasible region can create multiple optimal points.
✗ Incorrect
Adding bounds or constraints can reduce the feasible region and sometimes create multiple solutions with the same optimal value, losing uniqueness.