IntelliJ IDEA配置Cplex12.6.3详细步骤

Cplex12.6.3版IntelliJ IDEA配置详细步骤

一、Cplex12.6.3版下载地址

免费试用有求解规模限制,学术版需要学校邮箱,很难办

因此推荐12.6.3版本的CPLEX Studio软件安装包(源自华中科技秦虎教授团队数据魔术师公众号): cplex12.6 链接: https://pan.baidu.com/s/1E9x1RtY9pqoJM62qeG4PAQ 提取码: 131i

二、Cplex安装步骤

全部默认,一直next即可

三、IDEA配置CPLEX

3.1 添加CPLEX安装目录的cplex.jar包到项目文件中

打开IDEA,快捷键ctrl+alt+shift+s调出Project Structure选项卡,将CPLEX安装目录的cplex.jar包添加到项目文件中:

3.2 将CPLEX的x64_win64文件夹添加到IDEA的VM options中

点击IDEA菜单栏Run------Edit Configuration选项卡------Modify options------Add VM oiptions,在弹出的VM options中输入下面的命令,注意这里和你自己的cplex安装位置有关,不要直接复制,玩了点apply就行。

python 复制代码
-Djava.library.path="CPLEX安装文件夹\cplex\bin\x64_win64"

四、检查IDEA中Cplex是否安装成功

新建一个类,将一下代码复制到类中。如能运行成功,即cplex配置好了。

java 复制代码
public static void main(String[] args) {
        // cplex求解,一般都使用try...catch...
        try {
            // 声明cplex优化模型
            IloCplex cplex = new IloCplex();
            System.out.println(cplex);
            // 设定变量上下限
            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);  // 定义优化变量:IloNumVar,3维,以及对应的边界

            // 设定目标函数
            double[] objvals = {1.0, 2.0, 3.0};  // 目标函数系数
            cplex.addMaximize(cplex.scalProd(x, objvals));  // 定义目标函数:addMaximize最大化,scalProd,连乘

            // 设定约束条件
            double[] coeff1 = {-1.0, 1.0, 1.0};  // 第一组约束条件的系数
            double[] coeff2 = {1.0, -3.0, 1.0};  // 第二组约束条件的系数
            cplex.addLe(cplex.scalProd(x, coeff1), 20.0);  // 定义第一组约束条件的系数,addLe(a,b):a小于等于b
            cplex.addLe(cplex.scalProd(x, coeff2), 30.0);  // 定义第二组约束条件的系数

            // cplex.solve():模型求解
            if (cplex.solve()) {
                // cplex.output(),数据输出,功能类似System.out.println();
                cplex.output().println("Solution status = " + cplex.getStatus());  // cplex.getStatus:求解状态,成功则为Optimal
                // cplex.getObjValue():目标函数的最优值
                cplex.output().println("Solution value = " + cplex.getObjValue());
                // cplex.getValues(x):变量x的最优值
                double[] val = cplex.getValues(x);
                for (int j = 0; j < val.length; j++)
                    cplex.output().println("x" + (j + 1) + "  = " + val[j]);
            }
            // 退出优化模型
            cplex.end();

        } catch (IloException e) {
            System.err.println("Concert exception caught: " + e);
        }
    }

卸载Cplex

控制面板卸载即可,环境变量会自动删除。

相关推荐
坚持就完事了2 分钟前
Java的OOP
java·开发语言
像少年啦飞驰点、14 分钟前
零基础入门 Spring Boot:从“Hello World”到可部署微服务的完整学习路径
java·spring boot·微服务·编程入门·后端开发
undsky_32 分钟前
【RuoYi-SpringBoot3-Pro】:将 AI 编程融入传统 java 开发
java·人工智能·spring boot·ai·ai编程
不光头强37 分钟前
shiro学习要点
java·学习·spring
HAPPY酷39 分钟前
构建即自由:一份为创造者设计的 Windows C++ 自动化构建指南
开发语言·c++·ide·windows·python·策略模式·visual studio
工一木子39 分钟前
Java 的前世今生:从 Oak 到现代企业级语言
java·开发语言
H Journey44 分钟前
Linux su 命令核心用法总结
java·linux·服务器·su
小学仔1 小时前
科大镜像科大镜像科大镜像
java
小旭95271 小时前
Java 反射详解
java·开发语言·jvm·面试·intellij-idea
HalvmånEver1 小时前
Linux:线程创建与终止上(线程五)
java·linux·jvm