首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于cvx_begin的Matlab误差

基于cvx_begin的Matlab误差
EN

Stack Overflow用户
提问于 2014-10-04 08:43:35
回答 1查看 7.1K关注 0票数 2

因为某种原因,cvx不会为我开箱而动。

我使用windows x64、cvx x64和Matlab x64 R2012a。

但是,即使只是运行简单的示例(\cvx\样例\Quickstart.m),它也会给出一个错误:

代码语言:javascript
复制
>> quickstart

has_quadprog = exist( 'quadprog' );
has_quadprog = has_quadprog == 2 | has_quadprog == 3;
has_linprog  = exist( 'linprog' );
has_linprog  = has_linprog == 2 | has_linprog == 3;
rnstate = randn( 'state' ); randn( 'state', 1 );
s_quiet = cvx_quiet(true);
s_pause = cvx_pause(false);
cvx_clear; echo on

prob = evalin( 'caller', 'cvx_problem', '[]' );
if isa( prob, 'cvxprob' ),

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% SECTION 2.1: LEAST SQUARES %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Input data
m = 16; n = 8;
A = randn(m,n);
b = randn(m,1);

% Matlab version
x_ls = A \ b;

% cvx version
cvx_begin
Attempt to reference field of non-structure array.

Error in cvxprob (line 48)
    selected = cvx___.solvers.selected;

Error in cvx_begin (line 41)
assignin( 'caller', 'cvx_problem', cvxprob( varargin{:} ) );

Error in quickstart (line 25)
cvx_begin
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-10-04 11:39:37

安装相对简单:

  1. 下载CVX (我得到的cvx-rd.zip发行版只包含免费的解题器,所有支持的平台都包含预编译的MEX二进制文件)。
  2. 在某个地方解压ZIP文件,比如C:\cvx
  3. 导航到MATLAB中的该目录,并运行cvx_setup。cd('C:\ CVX ') >> cvx_setup cvx_setup CVX:纪律约束凸编程软件(C)2014年CVX研究版本2.1,2014年9月20日22:03:02安装信息: Path: C:\cvx版本: 8.3 (R2014a)操作系统: Windows 8 amd64版本6.2Java版本: 1.7.0_11验证CVX目录内容:不缺少文件。首选项:找不到;默认加载。设置CVX paths...done。保存更新的path...done。寻找解药者.找到了3只胆小鬼。初始化的两个解决程序(* =默认):* SDPT3 4.0 {cvx}\sdpt3 3 SeDuMi 1.34 {cvx}\sedui1solver跳过: GLPK无法找到GLPK安装。保存更新的preferences...done。使用简单的!model...done进行测试,以更改默认的解决程序,输入"cvx_solver “。若要将此更改保存到以后的会话中,请键入"cvx_save_prefs“。如需更多资料,请参阅使用者指南。
  4. 现在您可以运行其中一个示例:cd(‘C:\cvx\样例’) >>快速启动

如果您想连接到外部求解器(Gurobi和MOSEK),请阅读文档中相应的部分。这需要许可证。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26191167

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档