如何在 cplex 中的执行下将总和添加到另一个总和中

问题描述 投票:0回答:1

祝大家有美好的一天。我请你帮我解决这个问题。我必须将此公式添加到我的 cplex 代码中:

Probfunction

我正在努力将总和添加到分母的总和中。任何人都可以帮助我了解此代码如何在 cplex 上运行吗?具体来说,在执行下。我预先感谢您的帮助。

我尝试将总和分为两部分,但它不起作用,因为总和需要同时发生。

function sum probability cplex execute
1个回答
0
投票

您可以在 OPL 中编写公式,然后在执行块中使用它。或者您可以在执行块中使用循环。

range r=1..10;
int a[i in r]=i;

float f=sum(i in r)a[i]*a[i]/sum(i in r) i;

execute
{
  var f2a=0;
  var f2b=0;
  for(var i in r)
  {
    f2a+=a[i]*a[i];
    f2b+=i;
  }
  var f2=f2a/f2b;
  writeln("f=",f);
  writeln("f2=",f2);
}

无论哪种方式,你都会得到相同的结果

© www.soinside.com 2019 - 2024. All rights reserved.