【求教】JAVA新手求各位前辈指点,关于调用

qianmuwangxing 2012-09-24 06:41:17
先谢谢各位高手了。
我需要通过JAVA调用cplex(一个数学规划建模软件,用于在多种约束下求最优解)。
请问调用cplex是怎么实现?是通过接口吗?还是什么技术?
恳求大家指点,说详细一点更好,谢谢!
下面是我找到的,JAVA使用cplex相关的代码,还请各位一看。

import ilog.concert.*;
import ilog.cplex.*;

public class Example {
public static void main(String[] args) {
try {
IloCplex cplex = new IloCplex();

double[] lb = {0.0, 0.0, 0.0};
double[] ub = {40.0, Double.MAX_VALUE, Double.MAX_VALUE};
IloNumVar[] x = cplex.numVarArray(3, lb, ub);

double[] objvals = {1.0, 2.0, 3.0};
cplex.addMaximize(cplex.scalProd(x, objvals));

cplex.addLe(cplex.sum(cplex.prod(-1.0, x[0]),
cplex.prod( 1.0, x[1]),
cplex.prod( 1.0, x[2])), 20.0);
cplex.addLe(cplex.sum(cplex.prod( 1.0, x[0]),
cplex.prod(-3.0, x[1]),
cplex.prod( 1.0, x[2])), 30.0);

if ( cplex.solve() ) {
cplex.output().println("Solution status = " + cplex.getStatus());
cplex.output().println("Solution value = " + cplex.getObjValue());

double[] val = cplex.getValues(x);
int ncols = cplex.getNcols();
for (int j = 0; j < ncols; ++j)
cplex.output().println("Column: " + j + " Value = " + val[j]);
}
cplex.end();
}
catch (IloException e) {
System.err.println("Concert exception '" + e + "' caught");
}
}
}

...全文
119 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
wzhang88 2013-09-16
  • 打赏
  • 举报
回复
我也是跟你一样的情况 你的这段代码是要实现什么功能呢

23,404

社区成员

发帖
与我相关
我的任务
社区描述
Java 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧