Power cone reformulation - MOSEK

Problems with modeling
Post Reply
fermar
User
User
Posts: 7
Joined: 6 years ago

Power cone reformulation - MOSEK

Post by fermar »

Hi all,
I'm editing this post as I've (kind of) succeeded on reformulating my non linear equation into a power cone.
The relationship is between UNITS(i) and X_var(i), both positive variables. The form is as follows: UNITS(i)=constant*X_var(i)**(-1/elasticity(i))
where elasticity(i) is the elasticity between both variables which takes different values by i and could range between -1 and 1.
MOSEK accepts the power cone reformulation as follows:

Auxiliareqn_t(i)$(elasticity(i) < 1).. (t(i)**elasticity(i)) * (z(i)**(1-elasticity(i))) =g= X_var(i) ;

Auxiliareqn_t2(i)$(elasticity(i) > 1).. ( tx(i)**(1/elasticity(i))) * (z(i)**(1-(1/elasticity(i)))) =g= X_var(i) ;

z.fx(i)=1;

However for the purposes of simulation, I need to calibrate X_var. What I notice is that calculating t(i)**elasticity(i) or tx(i)**(1/elasticity(i)) give me the calibrated values.

But then I would have to recover such value and put it into the objective function which involves another cone but ultimately does not solve my problem. In other words, I need the equations Auxiliareqn_t and Auxiliareqn_t2 to hold as an equality (or the closest as possible). Otherwise any condition on X_var is much lower than t(i)**elasticity(i) or tx(i)**(1/elasticity(i)) and no simulation is possilbe.

See the file attached

THank you!
ModelForum.gms
(2.64 KiB) Downloaded 86 times


Last bumped by fermar 1 year ago.
Post Reply