Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用clp java的示例_Java_Android_Optimization_Linear Programming - Fatal编程技术网

如何使用clp java的示例

如何使用clp java的示例,java,android,optimization,linear-programming,Java,Android,Optimization,Linear Programming,我想在我的android应用程序中构建一个新的线性规划模型,使用 我的函数是E+T+U+URam,我想最小化这个函数,但我不知道如何使用这个库以及如何添加我的约束, 我的限制: E<0 and T<0 and U<0.25 and URam<0.25 E根据您的描述,我推断您希望最小化决策变量的总和,E,T,U,URam,受变量边界的约束。由于没有约束将这些决策变量联系起来,因此最佳解决方案是将所有变量设置为其下限 从变量的名称来看,我猜下界实际上是零,而不是负无穷大。

我想在我的android应用程序中构建一个新的线性规划模型,使用

我的函数是E+T+U+URam,我想最小化这个函数,但我不知道如何使用这个库以及如何添加我的约束, 我的限制:

E<0 and T<0 and U<0.25 and URam<0.25

E根据您的描述,我推断您希望最小化决策变量的总和,E,T,U,URam,受变量边界的约束。由于没有约束将这些决策变量联系起来,因此最佳解决方案是将所有变量设置为其下限

从变量的名称来看,我猜下界实际上是零,而不是负无穷大。将所有变量设置为零将使E+T+U+URam最小化,这将产生零的目标值。如果你想要负无穷大作为下界,优化问题,因为它是目前声明将是无界的

中的广泛公式如下所示:

CLP model = new CLP().verbose(1);
CLPVariable energy = model.addVariable();
CLPVariable executionTime = model.addVariable();
CLPVariable cpuUsage = model.addVariable();
CLPVariable ramUsage = model.addVariable();    
model.createExpression().add(energy,executionTime,cpuUsage,ramUsage).asObjective();
model.createExpression().add(energy).leq(0);
model.createExpression().add(executionTime).leq(0);
model.createExpression().add(cpuUsage).leq(0.25);
model.createExpression().add(ramUsage).leq(0.25);
model.minimize();

这是否解决了您的问题?

根据您的描述,我推断您希望最小化决策变量的总和,即E、T、U、URam,并受变量边界的约束。由于没有约束将这些决策变量联系起来,因此最佳解决方案是将所有变量设置为其下限

从变量的名称来看,我猜下界实际上是零,而不是负无穷大。将所有变量设置为零将使E+T+U+URam最小化,这将产生零的目标值。如果你想要负无穷大作为下界,优化问题,因为它是目前声明将是无界的

中的广泛公式如下所示:

CLP model = new CLP().verbose(1);
CLPVariable energy = model.addVariable();
CLPVariable executionTime = model.addVariable();
CLPVariable cpuUsage = model.addVariable();
CLPVariable ramUsage = model.addVariable();    
model.createExpression().add(energy,executionTime,cpuUsage,ramUsage).asObjective();
model.createExpression().add(energy).leq(0);
model.createExpression().add(executionTime).leq(0);
model.createExpression().add(cpuUsage).leq(0.25);
model.createExpression().add(ramUsage).leq(0.25);
model.minimize();
这能解决你的问题吗