0

我正在尝试解决这个简单的优化问题,包括凝胶功能

 function gsl_cdf_ugaussian_Qinv;
 var x1 >= 0 ;
 minimize obj: (x1^2)-8*x1;
 subject to const1: x1-4 <= gsl_cdf_ugaussian_Qinv(1- 0.05);

然后我尝试在 AMPL 中解决这个问题

 ampl: model test.mod;
 ampl: load amplgsl.dll;
 ampl: option solver ipopt;
 ampl: solve;

 EXIT: Optimal Solution Found.
 Ipopt 3.12.4: Optimal Solution Found
 ampl: display x1;
 x1 = 3.99996
 subject to const1:
-gsl_cdf_ugaussian_Qinv(0.95) + x1 <= 4;
 ampl: display -gsl_cdf_ugaussian_Qinv(0.95) + x1;
-gsl_cdf_ugaussian_Qinv(0.95) + x1 = 5.64481

很明显,约束不满足!我想知道为什么以及如何解决这个问题。

谢谢,

马赫拉兹

4

1 回答 1

0

看来先加载库再加载模型,这个问题就解决了。

ampl: model test.mod;
ampl: load amplgsl.dll
于 2018-04-12T00:40:53.440 回答