使用AMPL+;仅打印非零结果;近地天体服务器

使用AMPL+;仅打印非零结果;近地天体服务器,ampl,neos-server,Ampl,Neos Server,我正在做一个比较大的优化模型。在这个模型中,我将使用15个时间步,但现在当我测试它时,我只使用4个时间步。然而,即使比预期少11个时间步,该模型仍然打印22000行变量,其中可能只有100行与0不同 有人认为这是不可能的吗?即,使用NEOS server仅打印大于0的变量名和相应值的方法 我测试的是: solve; option omit_zero_rows 0; (also tried 1;) display _varname, _var; 同时使用两个省略行0;或省略第1行中的0;

我正在做一个比较大的优化模型。在这个模型中,我将使用15个时间步,但现在当我测试它时,我只使用4个时间步。然而,即使比预期少11个时间步,该模型仍然打印22000行变量,其中可能只有100行与0不同

有人认为这是不可能的吗?即,使用NEOS server仅打印大于0的变量名和相应值的方法

我测试的是:

 solve; 
 option omit_zero_rows 0; (also tried 1;)
 display _varname, _var;
同时使用两个省略行0;或省略第1行中的0;仍然打印每个结果,而不是高于0的结果

我也试过:

solve;
if _var > 0 then {
      display _varname, _var;
}

但它给了我语法错误。这两个(或者实际上,这三个)变体都在我用于NEOS服务器的.run文件中进行了测试

我正在发布这个问题的解决方案,因为我相信这是一个更多人会偶然发现的问题。基本上,为了使用NEOS Server仅打印非零值,请将命令文件(.run file)编写为:

solve;
display {j in 1.._nvars: _var[j] > 0} (_varname[j], _var[j]);