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

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

相关推荐
高林雨露几秒前
Java 转 Kotlin 对照开发指南
java·开发语言·kotlin
java1234_小锋4 分钟前
Spring AI 2.0 开发Java Agent智能体 - 多模态支持
java·人工智能·spring
前端若水5 分钟前
使用 IndexedDB 在客户端存储对话记录
java·前端·人工智能·python·机器学习
Flittly6 分钟前
【日常小问】Spring Cloud Gateway 5.x 跨域和路由配置踩坑实录
java·spring boot·spring cloud
MY_TEUCK12 分钟前
【Java 后端 | 微服务远程调用实战】Nacos + OpenFeign 从入门到公共模块抽取
java·开发语言·微服务
love_muming21 分钟前
Java编程核心技巧全解析
java·开发语言·idea
爱编程的小新☆21 分钟前
Spring-AI入门
java·后端·spring
用户2986985301428 分钟前
Java 获取 Word 文档中修订记录的实现方法
java·后端
Dicky-_-zhang28 分钟前
Redis集群模式详解与实战配置
java·jvm
你的保护色29 分钟前
ensp之STP、RSTP、MSTP协议实验
java·服务器·数据库