在Java中使用JaCop优化函数

在Java中使用JaCop优化函数,java,optimization,constraints,rcaller,jacop,Java,Optimization,Constraints,Rcaller,Jacop,我试图使用Java中的函数进行优化,但在翻译函数时遇到了一些问题 我有一堆变量,比如说:x1到xn,我有一个函数,用它们来输出最大似然估计量(尽管它可以是使用这些参数的任何函数) 我知道如何对变量设置约束,例如x1+..+xn

我试图使用Java中的函数进行优化,但在翻译函数时遇到了一些问题

我有一堆变量,比如说:x1到xn,我有一个函数,用它们来输出最大似然估计量(尽管它可以是使用这些参数的任何函数)

我知道如何对变量设置约束,例如x1+..+xn得到x1到xn,其中max(a_函数(x1,…,xn))。

我现在没有发布任何代码,因为我唯一能做的就是对我的初始变量设置简单的约束。随着JaCoP的进步,我会更新这个问题

如果有人能给我一个正确的方向,如何设置这样一个条件,将不胜感激

谢谢

[编辑]


嗯,我作弊了……因为我以前在Java项目中安装了Rcaller,所以我将使用R来计算带有约束的最大似然模型。我被杰科普打败了。R的使用更加直观(从数学角度来看),而且由于Rcaller与Java“交谈”得非常好,因此我对结果相当满意。

它很好地隐藏了,但有一个包含成本函数的函数

所以IIUIC你需要像

IntVar cost = new IntVar(store, "cost", 0, 1000); 
net.setCostVariable(cost);

如果您没有成本变量,只需创建它并使用约束来确保
cost==a_函数(x1,…,xn)
。如果您想最大化,请翻转标志。

谢谢。我已经放弃了JaCop,将在连接Java和R的RCaller的帮助下使用R来计算我的约束函数。这种方式(对我来说)更直观。