import ilog.cplex.CpxMult;
import ilog.cplex.CpxNumExpr;
import ilog.cplex.IloCplex;
import ilog.concert.*; public class MyCaculate
{ // static
// {
// System.loadLibrary("cplex1271");
// } static int length = 5000000; public static void main(String[] args) throws IloException
{
IloCplex cplex = new IloCplex();
IloRange[] constraint = new IloRange[length];
IloIntVar[] var = new IloIntVar[length];
// 变量取值下界
int[] lb = new int[length];
for (int i = 0; i < length; i++)
lb[i] = i;
// 变量取值上界
int[] ub = new int[length];
for (int i = 0; i < length; i++)
ub[i] = Integer.MAX_VALUE;
// 变量名
String[] varname = new String[length];
for (int i = 0; i < length; i++)
varname[i] = "x" + (i + 1);
var = cplex.intVarArray(length, lb, ub, varname); // x1 + x2
for(int i =1; i <= 10000;i++)
{
IloNumExpr r1 = cplex.sum(cplex.prod(1, var[0]), cplex.prod(1, var[i]));
constraint[i] = cplex.addRange(10, r1, 10*i);
}
// IloNumExpr r2 = cplex.sum(cplex.prod(1, var[0]), cplex.prod(1, var[2]));
// IloNumExpr r3 = cplex.sum(cplex.prod(1, var[0]), cplex.prod(1, var[3]));
// IloNumExpr r4 = cplex.sum(cplex.prod(1, var[1]), cplex.prod(1, var[3]));
// constraint[1] = cplex.addRange(20, r2, 100000, "c2");
// constraint[2] = cplex.addRange(300, r3, 100000, "c3");
// constraint[3] = cplex.addRange(4000, r4, 100000, "c4"); // 变量前系数
// y = -x*x
// 计算y的最大值
int[] objvals = new int[length];
for (int i = 0; i < length; i++)
objvals[i] = 1;
cplex.addMaximize(cplex.scalProd(var, objvals));
cplex.exportModel("my.lp");
long t1 = System.currentTimeMillis();
double d1 = cplex.getCplexTime();
if (cplex.solve())
{
/*
cplex.output().println("status = " + cplex.getStatus());
cplex.output().println("sub status = " + cplex.getCplexSubStatus());
for (int i = 0; i < var.length; i++)
cplex.output().println(
"var x" + (i + 1) + " = " + cplex.getValue(var[i]));
cplex.output().println("y = " + cplex.getObjValue());
cplex.output().println("best y = " + cplex.getBestObjValue());
*/
System.out.println("best y = " + (int) cplex.getBestObjValue());
System.out.println("y = " + (int) cplex.getObjValue()); long t2 = System.currentTimeMillis();
double d2 = cplex.getCplexTime();
System.out.println("pTime = "+(t2-t1));
System.out.println("cpTime = "+(d2-d1));
}
else
{ }
t1 = System.nanoTime();
int j = 0;
double k = 1;
for(int i =0; i < Integer.MAX_VALUE;i++)
{
j=j+1*10;
}
long t2 = System.nanoTime();
System.out.println("pTime2 = "+(t2-t1));
System.out.println(j);
cplex.end();
} }

  

扯皮的cplex-感觉时间不对的更多相关文章

  1. mysql通过now()获取的时间不对

    先用now()获取系统时间,发现时间不对(差8个小时): mysql> select now(); +---------------------+ | now() | +------------ ...

  2. php 中date显示时间不对与Linux文件乱码问题

    php 中date显示时间不对解决办法如下1.修改/etc/php.ini文件 在里头中找到data.timezone =去掉它前面的分号';' 然后设置data.timezone = “Asia/S ...

  3. jwt-simple过期时间不对问题

    今天用node写后台,登录认证使用了token,然后就使用了简单的jwt-simple,但是发现设置的过期时间不对,一直没有提示过期,但是明明是已经过期了的时间,于是检查了下jwt-simple的源代 ...

  4. PHP获取系统时间不对的解决办法(转载)

    原地址:https://blog.csdn.net/u012124764/article/details/51450958 使用PHP获取系统时间,发现时间不对,是因为PHP默认的时区是UTC,应该将 ...

  5. Oracle归档日志所在目录时间不对&&Oracle集群日志时间显示错误

    Oracle归档日志所在目录时间不对&&Oracle集群日志时间显示错误 前言 这个问题在18年的时候遇到了,基本不注意并且集群或者数据库运行正常是很难注意到的. 忘记当时怎么发现的了 ...

  6. windows10和ubuntu16.04双系统下时间不对的问题 ZT

    最近装了windows10和ubuntu16.04双系统,仍然出现了喜闻乐见的老问题,装完后,在windows下时区不对,之前的老办法是: sudo gedit /etc/default/rcS ut ...

  7. windows10和ubuntu16.04双系统下时间不对的问题

    最近装了windows10和ubuntu16.04双系统,仍然出现了喜闻乐见的老问题,装完后,在windows下时区不对,之前的老办法是: sudo gedit /etc/default/rcS ut ...

  8. centos 时区正确,时间不对

    centos6.5 里面 时区是 Asia/Shanghai ,但是 时间还是不对,在网上收集了如下做法:好像恢复了~~ (主要过程是:  查看各种设置,然后设置时间,最后更新本机时间,最后保持与时间 ...

  9. php date()获取的时间不对解决办法

    因为php默认获取的是格林威治时间,与北京时间相差8小时. 我们要获取到北京时间有两个办法: 1.修改php.ini配置文件: 打开php.ini文件,一般在php配置根目录下,找到其中的 ;date ...

随机推荐

  1. BZOJ4403: 序列统计【lucas定理+组合数学】

    Description 给定三个正整数N.L和R,统计长度在1到N之间,元素大小都在L到R之间的单调不降序列的数量.输出答案对10^6+3取模的结果. Input 输入第一行包含一个整数T,表示数据组 ...

  2. ZOJ 3551 吸血鬼 概率DP

    解题报告链接: http://www.cnblogs.com/183zyz/archive/2012/09/13/2683524.html 做法:设当有i个吸血鬼时变成n个吸血鬼的天数的数学期望为dp ...

  3. java二叉树排序实现

    原创:转载请注明出处 目的:想用java实现二叉树排序算法 思想:利用java中面向对象的思想,即: Tree:类 树根Tree:root //static所属于每一个Tree 左节点Tree:lef ...

  4. 使用animate()完成修改图片src切换图片的动画效果

    如下所示,在动画效果中的回调函数中进行src的修改和动画的切换 $(".TopImg").animate( {opacity:'toggle'}, "slow" ...

  5. JavaWeb学习总结(二)-修改Tomcat服务器的端口(半年之后再总结)

    一.Tomcat服务器端口的配置 Tomcat的所有配置都放在conf文件夹之中,里面的server.xml文件是配置的核心文件(hibernate.cfg.xml是核心配置文件). 如果想修改Tom ...

  6. TensorFlow笔记-02-Windows下搭建TensorFlow环境(win版非虚拟机)

    TensorFlow笔记-02-Windows下搭建TensorFlow环境(win版非虚拟机) 本篇介绍的是在windows系统下,使用 Anaconda+PyCharm,不使用虚拟机,也不使用 L ...

  7. JS 网页快捷键设置

    我们希望能用快捷键代替鼠标点击做一些事情,例如一个典型的应用就是论坛上常用的Ctrl + Enter 快捷发帖子.就以Ctrl+Enter快捷发帖子为例,实质上呢,就是通过JS脚本,捕获系统的onke ...

  8. svn 报错及解决

    报错: svn: E155015: One or more conflicts were produced while merging r68508:73308 into '[分支]' -- reso ...

  9. ser2net的编译及测试

    1. 将ser2net编译进内核 1.1 make menuconfig 1.2 选上ser2net NetWork——>ser2net 2. 烧写固件 3.ser2net配置文件: 修改/et ...

  10. GitHub + circleCI 自动构建/自动部署 应用

    GitHub + circleCI 自动构建/自动部署, 这里略过了单元测试,以部署 laravel 应用为例子 比起 gitlab + ansible + genkins 操作起来节省了很多硬件资源 ...