Dear GAMS community,
I am working with a rather nasty MINLP problem. In MINLP, I cannot use the Smin-function of GAMS, which would allow computing an equation only for the element of a certain set which has the smallest value compared to the other set elements. I am now trying to find ideas for alternative ways to make GAMS compute this equation only for the set element with the smallest value. If you have any ideas on how this could be achieved I’d be very thankful!
Below are some more detailed information:
I am programming a bio-economic model of subsistence farm-households, where the level of soil fertility of the household’s land is measured as a continuous variable that serves as an input to the production function. At the same time, production and farm management choices (inputs, technology, fallow) effect soil fertility. This relationship is simulated via a simple linear function.For each modelled time period, I calculate an average Soil Fertility value for the entire land of the household. This avoids the need for the spatially explicit modelling of separate plots.Soil Fertility is approximated by the level of the three macro-nutrients N, P and K, which are the elements of a set called Nutrients. Following Liebig’s Law of the Minimum, the level of Soil Fertility is determined by the level of that nutrient pool which has the lowest availability.
In a LP model, this could look like:
Var_SoilFertility =l= Smin (nutrient, Var_Nutrientlevel(nutrient) ) ;
where nutrient is a set with the elements / N, P, K /.
Other equations determine the level of the variable Var_Nutrientlevel(nutrient) depending on the chosen management option:
Var_Nutrientlevel(nutrient) =l= Sum (technology, Sum (InputUse, Var_AreaOfMgmt(technology,InputUse) * Par_NutrientImpact(nutrient,technology, InputUse) ));
Where the variable “Area under a certain farm-management-option†(e.g. use of inputs or soil conserving technologies) is multiplied by a fixed Parameter “Par_Nut-…†which describes the mean impact of the management option upon the pools of the three nutrients N, P and K (positive and negative). To keep things simply I excluded any time-lags, fallow periods and dynamic formulations of the original model.
My model is rather big and the soil fertility function is at its heart, with links to many other equations of the model. Therefore I don’t post the entire code here, but just the example above.
It would be greatly appreciated if anyone had an idea how an alternative to the Smin-function could look like, e.g. a set of alternative equations, commands or conditional statements.
Thanks a lot for any hint or idea!
Benjamin
P.S.: My system specifics:
GAMS version: GAMS Release 24.3.3 r48116 WEX-WEI x86 64bit/MS Windows
SOLVER: BARON Version 14.0.3
System: Win 7 (Professional) 64-bit
\
To unsubscribe from this group and stop receiving emails from it, send an email to gamsworld+unsubscribe@googlegroups.com.
To post to this group, send email to gamsworld@googlegroups.com.
Visit this group at https://groups.google.com/group/gamsworld.
For more options, visit https://groups.google.com/d/optout.