Topic
  • 3 replies
  • Latest Post - ‏2013-02-07T21:28:11Z by ghosh.d7
ghosh.d7
ghosh.d7
6 Posts

Pinned topic error - cplex cannot extract expression (nonlinear)

‏2013-02-06T02:31:42Z |
Hi all,

My objective function is the following.

maximize sum (t in techs) (log(q*exp(-(ys[t] - yst-1 - k*(theta - yst-1) - mu)^2 / (2*v^2 + 2*gamma^2)) / sqrt(2*3.1415*(v^2+gamma^2)) + (1-q)*exp(-(ys[t] - yst-1 - k*(theta - yst-1))^2 / (2*v^2)) / sqrt(2*3.1415*(v^2))));

All the variables there are dvars, except for ystechs which is a float data array.

Is this function not possible for CPLEX to compute the optimum for? Or is there a simplified expression that CPLEX will be able to do?

This is for a maximum log likelihood calculation.

Thanks!
Updated on 2013-02-07T21:28:11Z at 2013-02-07T21:28:11Z by ghosh.d7
  • ghosh.d7
    ghosh.d7
    6 Posts

    Re: error - cplex cannot extract expression (nonlinear)

    ‏2013-02-06T02:32:51Z  
    There seems to be an error in displaying the yst-1 terms. It should read like ys[t], except that the argument is (t-1)
  • SystemAdmin
    SystemAdmin
    1883 Posts

    Re: error - cplex cannot extract expression (nonlinear)

    ‏2013-02-07T12:14:17Z  
    The problem, as formulated, is not convex, and as such not even close for the cplex to handle. The equivalent reformulation will not help here, given that even the standard deviation is a decision variable.

    Either try to simplify the problem and bring it to convex quadratic or linear form or use non-linear solver. Least Squares is also a sub-class of maximum-likelihood problems, but it has a fixed standard deviation.

    BTW, what is q in your formulation?

    regards,
    Zahar
  • ghosh.d7
    ghosh.d7
    6 Posts

    Re: error - cplex cannot extract expression (nonlinear)

    ‏2013-02-07T21:28:11Z  
    The problem, as formulated, is not convex, and as such not even close for the cplex to handle. The equivalent reformulation will not help here, given that even the standard deviation is a decision variable.

    Either try to simplify the problem and bring it to convex quadratic or linear form or use non-linear solver. Least Squares is also a sub-class of maximum-likelihood problems, but it has a fixed standard deviation.

    BTW, what is q in your formulation?

    regards,
    Zahar
    Thanks Zahar, I appreciate it. q in the formulation is one of the decision variables. This MLE is used to determine parameters for a jump process, and q is the measure of jump intensity. If you're interested, there's more in the paper "Surpise element: jumps in interest rates" by Sanjiv Das in J. of Econometrics <http://www.sciencedirect.com/science/article/pii/S0304407601000859>.

    I'll just use gradient method in R or Matlab to compute this.