1

I am running an optimization problem on a multidimensional surface with unknown derivatives, and no closed form equation. It's problem motivated by an econ paper that tries to value a patent by the future stochastic revenues it generates. Its a dynamic programming problem.

Anyways, problem is every time I try to optimize, the parameter search gets stuck (local minima??). When I search by plugging numbers manually I eventually get to the true parameter values but the matlab built in functions, so far with the options I have chosen, which may be inefficient, is not getting me there.

I am looking for advice, feedback, anything really to help get my code to solve for the true parameters automatically. What can I do to adjust my option to get a better search. Can I change the step size? I would love to get a larger "shake" perturbation in the coefficient value to get to the right solution. Its getting stuck on the same value. Ideally I dont want to put bounds. I really appreciate any advice you can give me. Thank you.

beta=.3  %discount rate  .8
delta=.5 %depreciation rate (obselence existing revenue)   .8
theta=.4 % low theta => higher probability of absorbing state   .9
phi=.9   %revenue discovery enhancing parameter   .9
sigma=100 %variability of revenues
gamma=0   %another parameter in the exponential distribution
mu=100    % initial r(1) mean from log normal
sigma_r=3 % initial r(1) variance from log normal


coeff=[beta, delta, theta, phi, sigma, gamma];
options = optimset('Largescale','off','Display','off');
[objective]=minmle_v3(coeff,y_data,n_data,r_bar_data,rz_mat_data,count_mat_data)
jessica
  • 1,325
  • 2
  • 21
  • 35

0 Answers0