Matlab中凸优化工具包CVX的配置、注册与使用

CVX工具包可以从官网下载http://cvxr.com/cvx/download/。

CVX是基于Matlab的建模系统,用于处理凸优化问题。如果掌握好了,非常方便。

选择适合自己电脑的版本,我的电脑是64位,因此是下载cvx-w64.

CVX不需要安装,只需要配置一下,特别简单。

下面说一下配置,注册及使用方法

配置

1.下载并进行解压,如C:\cvx-w64

2.打开matlab,选择包含解压文件的文件位置

3.打开名为cvx_setup的文件直接运行,或者在matlab命令行输入命令cvx_setup

如果没有出现error等字样,则说明配置成功,但此时还没有注册。

注册:

在matlab命令行输入:cvx_version

会出现大概不到20行的信息,不用管其他,我们只需要找到我们需要的

License host:ssssss

user Host ID: 64e756441 (eth3)

Installed license:

 No license installed.

最后一句可以看到没有安装序列号,因为接下来我们进行注册。

1.进入官网的序列号页面:http://cvxr.com/cvx/licensing/

我是选用Academic users,其他的我不知道能不能用。

点击进去,需要填写一些基本信息,全名,大学名称,邮箱,和刚才显示的License host: ssssssuser和Host ID: 64e756441,选同意,然后点击submit your license request,就会看到提示:序列号文件已经发送到填写的邮箱了。

需要注意的是:选择学术用户,需要填写学校的邮箱,个人邮箱是不能用的。

2.打开自己邮箱,将附件cvx_license存入一个固定的位置,如C:/cvx_license.dat.

3.matlab命令行输入cvx_setup C:/cvx_license.dat

运行结果结果中出现:status:verified

则注册成功。

使用

跟我们平时写m文件一样,只是格式有些区别,这里示范下官网给出的几个例子。

最小二乘

寻找一个n维矩阵使||Ax-b||2最小化。

这里随机生成矩阵和向量。

m=16;n=8;A=randn(m,n);b=randn(m,1);

cvx_begin

variable x(n)

minimize(norm(A*x-b))

cvx_end

x

你可能感兴趣的:(Matlab中凸优化工具包CVX的配置、注册与使用)