MATLAB 调用cplex解二次规划,【Cplex for MATLAB】安装问题以及二次规划的源码解释问题...
问题一:
我在安装好了Cplex并且把图片中的路径加入到MATLAB中后,
在MATLAB命令窗口输入“Cplex”,出现以下错误信息:
Undefined function 'cplexlink1251' for input arguments of type 'double'.
然后 我运行一些Cplex自带的例子,比如blend,会出现如下错误信息:
Error using blend (line 190)
Undefined function 'cplexlink1251' for input arguments of type 'double'.
但是我输入 help cplexqp 这样的命令是可以正确出现对cplexqp的解释的。
根据错误信息,我怀疑是不是我的x86_win32目录下面少了cplexlink1251.m这个文件(该目录下的确没有这个文件)
问题二:
使用 Cplex ClassAPI的一个官方样例的程序代码解释,是qcpex1.m这个例子:
源码如下:
function qcpex1()
% Enter and optimize a quadratically constrained programming problem
%
% This function fills in the data structures for the quadratic constraint
% program:
%
% Maximize
% obj: x1 + 2 x2 + 3 x3
% - 0.5 ( 33x1*x1 + 22*x2*x2 + 11*x3*x3
% - 12*x1*x2 - 23*x2*x3 )
% Subject To
% c1: - x1 + x2 + x3 <= 20
% c2: x1 - 3 x2 + x3 <= 30
% q1: [ x1^2 + x2^2 + x3^3 ] <= 1.0
% Bounds
% 0 <= x1 <= 40
% 0 <= x2
% 0 <= x3
% End
% ---------------------------------------------------------------------------
% File: qcpex1.m
% Version 12.5
% ---------------------------------------------------------------------------
% Licensed Materials - Property of IBM
% 5725-A06 5725-A29 5724-Y48 5724-Y49 5724-Y54 5724-Y55 5655-Y21
% Copyright IBM Corporation 2008, 2013. All Rights Reserved.
%
% US Government Users Restricted Rights - Use, duplication or
% disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
% ---------------------------------------------------------------------------
try
% Initialize the CPLEX object
cplex = Cplex('qcpex1'); %The constructor for Cplex objects.
cplex.Model.sense = 'maximize'; %one of the Properties
% Fill in the data for the problem with populatebyrow
populatebyrow();
% Optimize the problem
cplex.solve();
% Write the solution
fprintf ('\nSolution status = %s\n', cplex.Solution.statusstring);
fprintf ('Solution value = %f\n', cplex.Solution.objval);
disp ('Values = ');
disp (cplex.Solution.x');
disp ('Slacks = ');
disp (cplex.Model.rhs - cplex.Solution.ax);
% Finally, write a copy of the problem to a file
cplex.writeModel('qc.lp');
catch m
throw (m);
end
function populatebyrow()
cplex.addCols([1 2 3]', [], [0; 0; 0], [40; inf; inf]);
cplex.Model.Q = [-33 6 0; ...
6 -22 11.5; ...
0 11.5 -11];
cplex.addRows(-inf, [-1 1 1], 20);
cplex.addRows(-inf, [ 1 -3 1], 30);
cplex.addQCs([0 0 0]', [1 0 0;0 1 0;0 0 1], 'L', 1.0);
end
end
能否详细解释一下尤其是populatebyrow函数中语句是怎么与目标函数以及约束条件等对应的,尤其是cplex.Model.Q、cplex.addQCs 那些系数为什么要这样构造矩阵,怎样与原来模型中的系数对应。
一些可能的解决资料:
1、Cplex IBM官方网站有对Cplex for MATLAB安装、样例等的解释。
2、\cplex\matlab\x86_win32\@Cplex 下的Cplex.m也有对类方法的解释、
求大神,也感谢各位的耐心解答!~
MATLAB 调用cplex解二次规划,【Cplex for MATLAB】安装问题以及二次规划的源码解释问题...相关推荐
- 【Matlab图像加密】正交拉丁方置乱算法图像加解密【含GUI源码 182期】
一.代码运行视频(哔哩哔哩) [Matlab图像加密]正交拉丁方置乱算法图像加解密[含GUI源码 182期] 二.matlab版本及参考文献 一.代码运行视频(哔哩哔哩) [Matlab图像处理]自动 ...
- 【Matlab语音识别】电话按键语音识别(含按键录音)【含源码 1752期】
一.代码运行视频(哔哩哔哩) [Matlab语音识别]电话按键语音识别(含按键录音)[含源码 1752期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]韩纪庆 ...
- 【Matlab指纹识别】指纹识别匹配门禁系统【含GUI源码 587期】
一.代码运行视频(哔哩哔哩) [Matlab指纹识别]指纹识别匹配门禁系统[含GUI源码 587期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 包子阳,余 ...
- 【Matlab风电功率预测】EMD优化LSTM风电功率预测【含源码 1402期】
一.代码运行视频(哔哩哔哩) [Matlab风电功率预测]EMD优化LSTM风电功率预测[含源码 1402期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]曾 ...
- 【Matlab路径规划】A_star算法机器人栅格地图路径规划【含源码 116期】
一.代码运行视频(哔哩哔哩) [Matlab路径规划]A_star算法机器人栅格地图路径规划[含源码 116期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] ...
- FFmpeg入门详解之104:Win10快速安装OpenSSL(不用编译源码)
win10x64安装OpenSSL:不用编译源码 网上一堆的教程教你去下载opensll源代码并用vs进行编译,虽然我有安装vs2015,但是看到那么长的编译步骤,太心累了. 懒人只得找简单的方法,最 ...
- matlab调用c语言驱动函数,[转载]Matlab调用C语言函数
3.3000 要得出以上的结果,那应该怎样做呢? 解决方法之一是要通过使用MEX文件,MEX文件使得调用C函数和调用Matlab的内置函数一样方便.MEX文件是由原C代码加上MEX文件专用的接口函数后 ...
- 【Matlab】结构在傅里叶展开下的周期荷载响应——文末附源码
一.背景 研究振动体系对于周期荷载的结构响应状态,可借助傅里叶变换,将周期荷载 转换为三角波的线性叠加后,运用基本的结构动力学知识即可解出体系位移情况. 本文重点内容: 分段函数的傅里叶展开 计算阻尼 ...
- 【Matlab WSN通信】A_Star改进LEACH多跳传输协议【含源码 487期】
一.代码运行视频(哔哩哔哩) [Matlab路径规划]蚁群算法机器人大规模栅格地图最短路径规划[含源码 1860期] 二.蚁群算法及栅格地图简介 随着机器人技术在诸多领域的应用, 如机器人协作焊接.灾 ...
- [MATLAB] BS期权隐含资产(implied asset)和隐含波动率(implied volatility)计算 迭代法 源码程序
实际问题 已知 实际上公式中的就是implied asset, 就是implied volatility,公式与BS期权公式和equity方程 在实际全网调查中大多数都是对隐含波动率的计算,但是缺少对 ...
最新文章
- 超详细配置教程,搭建 Windows 深度学习环境
- Lua编译实践1-词法分析:
- ASP.NET中Get和Post的用法
- sigmoid函数解决溢出_梯度消失和梯度爆炸及解决方法
- Oracle分析函数详述
- 算法训练 6-1 递归求二项式系数值
- jps、jstack、jmap、jhat、jstat、hprof使用详解
- MS-SQL 时间的操作
- Python稳基修炼的经典案例15(计算机二级、初学者必会字符格式处理)
- QueryPerformanceFrequency
- 模型部署,移动端安卓App开发环境搭建和配置教程 ~
- 企业级即时通讯通信平台的实现
- 如何利用PS动作一秒将字体生成逼真刺绣效果
- 【转载】排列组合公式原理
- 阿里平头哥CPU技术生态负责人陈炜:平头哥的发展之路
- 华硕路由器流量管理QoS设置
- 什么是IDE,ATA,SATA,SCSI和SAS硬盘
- 从Flink SQL doesn't support consuming update and delete changes 错误谈起
- Sperax月报 | 2021年9月
- ERP软件定制开发需注意哪些问题?ERP定制开发要多长时间?
热门文章
- Web学习 第二天作业 做一个在线简历
- 音箱高音测试电脑软件,BOSE MusicMonitor电脑扬声器晒单 使用体验_什么值得买
- Linux下配置JSHOP2环境
- 解决.bat文件打开是记事本的问题
- 白银之手服务器 不稳定,截止TBC CWOW服务器及公会PVE实力排行榜
- 一米村长讲故事机器人_村长讲故事 | 牛牛特工队番外
- Android系统连按5次电源键,手机连按5次电源键,能开启“紧急护主”功能,好多人没注意...
- mysql frm的意思_mysqlfrm
- vue3知识点:Suspense组件
- 电脑黑客用3D打印钥匙解开高安全性能手铐