I am using JuMP to maximize a nonlinear function. The function takes two vector inputs: d and p. The dimension of p is much smaller than the dimension of d.
The trick is that the value of d is determined by p. Given any value of p, I can use the fixed_point function to solve for d. I want to know how I can calculate p in JuMP. I tried to rewrite the fixed point as a constraint, but it takes too long to solve the function because it searches over the entire parameter space of d and p.
Any advice is deeply appreciated!
function fixed_point(d, p, Xmat, Zmat, u, tol=1e-5, maxiter=1e5) d_old = d normdiff = Inf iter = 0 while normdiff > tol && iter <= maxiter s = calc_s(d, p, Xmat, Zmat) d_new = d_old + u - s normdiff = norm(d_new - d_old) d_old = d_new iter += 1 end return d_old end