CPLEX23法律条款24版权声明25其他注册商标、版权、许可26使用确认:gdtoa 包的 dtoa 例程27进一步确认:AMPL28CPLEX 入门30CPLEX 简介31什么是 CPLEX?32求解的问题类型33CPLEX 组件34优化器选项35并行优化器36数据项选项37CPLEX 不属于的范畴38必备知识39本手册内容40本手册中的表示法41相关文档42设置 CPLEX43安装 CPLEX44在 Windows 上设置 CPLEX45在 GNU/Linux/macOS 上设置 CPLEX46为 CPLEX 的 Java API 设置 Eclipse48设置 CPLEX 的 Python API49CPLEX 目录结构50使用 Component Library52教程 54使用 CPLEX 对 LP 求解55概述56问题陈述57使用 Interactive Optimizer58在 C++ 中使用 Concert Technology59在 Java 中使用 Concert Technology61在 .NET 中使用 Concert Technology62使用 Callable Library64使用 Python API67Interactive Optimizer 教程70启动 CPLEX71使用帮助72输入问题74概述75输入示例76使用 LP 格式77输入数据79Interactive Optimizer 中命令的输入限制80显示问题81
使用 display 命令验证问题82显示问题统计信息84指定项范围85显示变量或约束名称86将变量排序88显示约束89显示目标函数90显示界限91显示非零计数直方图92对问题求解93您的状况94对示例求解95解法选项97显示求解后信息98执行敏感度分析100编写问题和解法文件102概述103选择写文件格式104编写 LP 文件105编写基文件106使用路径名107读取问题文件108概述109选择读文件格式110读取 LP 文件111使用文件扩展名112读取 MPS 文件113读取基文件114设置 CPLEX 参数115添加约束和界限117更改问题118概述119可以更改的内容120更改约束或变量名称121更改含义122更改界限123移除界限124更改变量系数125目标和 RHS 系数126删除整个约束或变量127将小值更改为零129执行操作系统命令130退出 CPLEX131Interactive Optimizer 的高级功能部件132C++ 教程133Concert Technology C++ 应用程序中 CPLEX 的设计134在 Concert Technology C++ 应用程序中编译 CPLEX135
在 UNIX 上测试安装136在 Windows 上测试安装137如果发生问题138Concert Technology C++ 应用程序的剖析139构造环境:IloEnv140创建模型:IloModel141对模型求解:IloCplex143查询结果144处理错误145使用 C++ 对小 LP 模型进行构建和求解146概述147按行建模148按列建模149按非零元素建模150编写和读取模型及文件151选择优化器153从文件读取问题:示例 ilolpex2.cpp154概述155从文件读取模型156选择优化器157访问基础信息158查询质量测量159修改和重新优化160修改优化问题:示例 ilolpex3.cpp161概述162设置 CPLEX 参数164修改优化问题165从先前基入手166完整程序167Java 教程168概述169编译 Concert Technology Java 应用程序中的 CPLEX170路径和 JAR171根据平台改写构建过程172发生问题的情况173Concert Technology Java 应用程序中 CPLEX 的设计174Concert Technology Java 应用程序剖析175应用程序结构176创建模型177对模型求解179查询结果180在 Java 中构建小 LP 模型并对其求解181示例:LPex1.java182按行建模184按列建模185按非零建模186.NET 教程187
提供教程188必备知识:先决条件189您将执行的操作190描述191模型192求解196完整程序198Callable Library 教程199CPLEX Callable Library 的设计200编译和链接 Callable Library 应用程序201概述202在 UNIX 平台上构建 Callable Library 应用程序203在 Win32 平台上构建 Callable Library 应用程序204CPLEX 如何工作205概述206打开 CPLEX 环境207实例化问题对象208填充问题对象209更改问题对象210创建成功的 Callable Library 应用程序211概述212建立模型的原型213确认要调用的例程214应用程序中的测试过程215组合数据216选择优化器217遵循良好编程惯例218调试您的程序219测试应用程序220使用示例221对使用 C 的小 LP 模型进行构建和求解222从文件读取问题:示例 lpex2.c223向问题添加行:示例 lpex3.c224执行敏感度分析226Python 教程228Python 应用程序中 CPLEX 的设计229启动 CPLEX Python API230访问模块 cplex 231使用 Python 构建小 LP 模型并对其求解232使用 Python 对文件读写 CPLEX 模型233在 Python 中选择优化器234示例:从文件 lpex2.py 读取问题235在 CPLEX Python API 修改和重新优化236示例:修改模型 lpex3.py237在 CPLEX Python API 中使用 CPLEX 参数239CPLEX 用户手册241初识 CPLEX242
什么是 CPLEX?243CPLEX 有何作用?244必备知识246联机示例247本手册中的表示法249相关文档250在线服务252补充读物253语言和 API254针对 C++ 用户的 Concert Technology255概述256CPLEX C++ 应用程序的体系结构257编译和链接258使用 Concert Technology 创建 C++ 应用程序259使用 Concert Technology 对优化问题进行建模260概述261创建环境:IloEnv262定义变量和表达式:IloNumVar263声明目标:IloObjective264添加约束:IloConstraint 和 IloRange265阐述问题:IloModel266管理数据267对模型求解268概述269抽取模型270调用求解器271选择优化器272控制优化器274存取解法信息276访问解状态277查询解数据278访问基础信息279执行敏感度分析280分析无可行解的问题281评估解质量282修改模型283概述284删除和移除建模对象285更改变量类型286处理错误287示例:在 C++ 中优化饮食方案问题289概述290问题表示291应用程序描述293使用 IloArray 创建多维数组294将数组用于输入和输出295使用 IloCplex 对模型求解297
完整程序298针对 Java 用户的 Concert Technology299CPLEX Java 应用程序的体系结构300概述301编译和链接 Java 应用程序303使用 Concert Technology 创建 Java 应用程序304使用 Concert Technology 以 Java API 对优化问题进行建模305概述306使用 IloModeler308活动模型310构建模型311对模型求解313存取解法信息314选择优化器315概述316CPLEX 求解何内容?317求解单个连续模型318求解 MIP 中的后续连续松弛319控制 CPLEX 优化器320概述321参数322优先顺序和分支方向323更多解法信息324概述325写解文件326对偶解信息327基础信息328不可行解信息329解质量330使用 IloLPMatrix 进行高级建模331按列建模332何为按列建模?333按列建模的过程334示例:在 Java 中优化饮食方案问题335修改模型337针对 .NET 用户的 Concert Technology338先决条件340描述341步骤 1:描述问题342步骤 2:打开文件343模型345步骤 3:创建模型346步骤 4:创建用于存储变量的数组347步骤 5:指定按行还是按列348按行构建349步骤 6:设置行350步骤 7:创建变量:按行构建并填充351
步骤 8:添加目标352步骤 9:添加营养约束353按列构建354步骤 10:设置列355步骤 11:添加空的目标函数和约束356步骤 12:创建变量357求解358步骤 13:求解359步骤 14:显示解360步骤 15:结束应用程序 361良好编程惯例362步骤 16:读取命令行(用户提供的数据)363步骤 17:显示命令行的正确用法364步骤 18:将应用程序括在 try/catch 语句内365示例:在 C#.NET 中优化饮食方案问题366示例:复制模型367Callable Library369Callable Library 的体系结构370概述371编译和链接372在应用程序中使用 Callable Library373概述374初始化 CPLEX 环境375将问题实例化为对象376将数据放入问题对象377优化问题378更改问题对象379销毁问题对象380释放 CPLEX 环境381在非 Windows 平台上关联 CPLEX 共享库382动态库的 CPLEX C 和 C++ 示例383手动设置关联和运行共享库384CPLEX 编程惯例385概述386变量名称和调用约定387数据类型388问题数据的所有权389问题大小和内存分配事宜390状态和返回值391符号常量392参数例程393空自变量394对象的引用范围395字符串396检查和调试问题数据397回调398FORTRAN 接口399
C++ 接口400从 Callable Library 中管理参数401示例:在 Callable Library 中优化饮食方案问题402概述403问题表示404程序描述406使用 CPXlpopt 对模型求解407完整程序408将 surplus 自变量用于数组分配409示例:使用查询例程 lpex7.c411针对 Python 用户的 CPLEX412何为 Python?413Python API 简介414在 Python API 中修改和查询问题数据415在 Python API 中使用多态性416示例:生成直方图417在 Python API 中查询解法信息418检查解中具有非零值的变量419显示解的高精度非零值420在 Python API 中管理 CPLEX 参数421在 Python API 中使用回调423示例:从 Python API 中以提高的精度显示解424示例:在 Python API 中检查单纯形法表格425示例:在 Python API 中求解一系列相关问题426示例:回调中的复杂终止条件427编程注意事项428在 CPLEX 中使用环境变量429开发 CPLEX 应用程序430成功开发应用程序的提示431建立模型的原型432识别要使用的例程433以交互方式测试434高效组合数据435测试数据436测试和调试模型437选择优化器438在考虑到维护和修改的情况下进行编程439使用 Interactive Optimizer 进行调试441排除常见编程错误443启用数据检查参数444检查您的包含文件445清理空间,然后重试446阅读消息447检查返回值448请注意编号约定449使局部变量临时成为全局变量450对意图的问题求解451