扯皮的cplex-感觉时间不对
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-感觉时间不对的更多相关文章
- mysql通过now()获取的时间不对
先用now()获取系统时间,发现时间不对(差8个小时): mysql> select now(); +---------------------+ | now() | +------------ ...
- php 中date显示时间不对与Linux文件乱码问题
php 中date显示时间不对解决办法如下1.修改/etc/php.ini文件 在里头中找到data.timezone =去掉它前面的分号';' 然后设置data.timezone = “Asia/S ...
- jwt-simple过期时间不对问题
今天用node写后台,登录认证使用了token,然后就使用了简单的jwt-simple,但是发现设置的过期时间不对,一直没有提示过期,但是明明是已经过期了的时间,于是检查了下jwt-simple的源代 ...
- PHP获取系统时间不对的解决办法(转载)
原地址:https://blog.csdn.net/u012124764/article/details/51450958 使用PHP获取系统时间,发现时间不对,是因为PHP默认的时区是UTC,应该将 ...
- Oracle归档日志所在目录时间不对&&Oracle集群日志时间显示错误
Oracle归档日志所在目录时间不对&&Oracle集群日志时间显示错误 前言 这个问题在18年的时候遇到了,基本不注意并且集群或者数据库运行正常是很难注意到的. 忘记当时怎么发现的了 ...
- windows10和ubuntu16.04双系统下时间不对的问题 ZT
最近装了windows10和ubuntu16.04双系统,仍然出现了喜闻乐见的老问题,装完后,在windows下时区不对,之前的老办法是: sudo gedit /etc/default/rcS ut ...
- windows10和ubuntu16.04双系统下时间不对的问题
最近装了windows10和ubuntu16.04双系统,仍然出现了喜闻乐见的老问题,装完后,在windows下时区不对,之前的老办法是: sudo gedit /etc/default/rcS ut ...
- centos 时区正确,时间不对
centos6.5 里面 时区是 Asia/Shanghai ,但是 时间还是不对,在网上收集了如下做法:好像恢复了~~ (主要过程是: 查看各种设置,然后设置时间,最后更新本机时间,最后保持与时间 ...
- php date()获取的时间不对解决办法
因为php默认获取的是格林威治时间,与北京时间相差8小时. 我们要获取到北京时间有两个办法: 1.修改php.ini配置文件: 打开php.ini文件,一般在php配置根目录下,找到其中的 ;date ...
随机推荐
- [LeetCode&Python] Problem 557. Reverse Words in a String III
Given a string, you need to reverse the order of characters in each word within a sentence while sti ...
- 国内Ubuntu镜像源
国内有很多Ubuntu的镜像源,包括阿里的.网易的,还有很多教育网的源,比如:清华源.中科大源. 我们这里以中科大的源为例讲解如何修改Ubuntu 18.04里面默认的源. 编辑/etc/apt/so ...
- YUI JS压缩Ant脚本
<?xml version="1.0" encoding="UTF-8"?><!-- 对指定目录下的所有js进行压缩,放入指定位置 --> ...
- python list 去掉重复元素
貌似用遍历最方便. http://www.cnblogs.com/tudas/p/python-delete-duplicate-element-from-list.html
- MySQL--自增列持久化问题
====================================================================== 自增列持久化问题 5.5/5.6/5.7三个版本中,MyS ...
- 分部视图在ASP.NET MVC中的应用
概述: 在ASP.NET Web Form的开发经验中,对于User Control使用比较频繁,可以减少重复的代码,利于页面模块化,这个概念也被引入了ASP.NET MVC.即“分部视图”. 1.创 ...
- 使用 mysqldump 备份时的一些参数
因为还没有用到 ThinkPHP 的迁移组件,暂时使用 mysqldump 来备份,并版本控制. 有几个参数需要用到. --skip-dump-date 不要完成时间. --skip-extended ...
- Collection与Collections,Array与Arrays的区别
Collection 和 Collections的区别 Collection 在Java.util下的一个接口,它是各种集合结构的父接口.继承与他的接口主要有Set 和List. Collection ...
- ubuntu 14.04 安装Eclipse与配置环境变量
1. 安装JDK 1.1 源码包下载 首先到官网下载jdk,http://www.oracle.com/technetwork/java/javase/downloads/index.html,我下载 ...
- css-深入理解margin和padding
最近一阶段从新学习了css,发现真的有很多很多的地方都是空白的,今天我们来总结一下margin和padding的一些不为人知的秘密! 一利用float和margin实现布局 我们首先来实现一个两列示布 ...