安装前提
-
已安装MATLAB
- CVX是MATLAB工具箱,需先安装MATLAB(R2009a或更高版本)
- 验证MATLAB安装:终端执行
matlab -nodesktop -nosplash
应启动MATLAB命令行
-
系统依赖
sudo apt update sudo apt install unzip build-essential gcc gfortran # Ubuntu/Debian # 或 CentOS:sudo yum install unzip gcc-gfortran
安装步骤
-
下载CVX安装包
- 访问官网获取最新版(需注册):
https://cvxr.com/cvx/download/ - 或终端下载(替换版本号):
wget https://cvxr.com/cvx/cvx-linux64.zip # 示例链接,以官网为准 unzip cvx-linux64.zip -d ~/cvx # 解压到用户目录
- 访问官网获取最新版(需注册):
-
配置MATLAB路径
- 启动MATLAB:
matlab # 或使用桌面图标启动图形界面
- 在MATLAB命令行执行:
cd ~/cvx % 进入解压目录 cvx_setup
- 启动MATLAB:
-
验证安装
在MATLAB中运行测试代码:cvx_begin variable x(2) minimize(norm(x-[1;2])) subject to x(1) + x(2) == 3 cvx_end disp(['Optimal value: ', num2str(cvx_optval)]);
预期输出:
Optimal value: 0.5
表示成功
常见问题解决
-
许可证错误
- 首次使用需激活:访问 https://cvxr.com/cvx/academic/ 申请免费学术许可证
- 将收到的
license.dat
放入~/cvx
目录
-
求解器缺失
- 自动安装默认求解器(SDPT3/SeDuMi):
cvx_setup('install','sdpt3') % 或 'sedumi'
- 支持高级求解器(如Gurobi/MOSEK):
- 单独安装求解器并配置环境变量
- 在MATLAB中执行:
cvx_solver('gurobi')
- 自动安装默认求解器(SDPT3/SeDuMi):
-
路径冲突
- 若遇路径错误,在MATLAB中重置:
rmpath(genpath('~/cvx')); addpath(genpath('~/cvx')); savepath % 永久保存路径
- 若遇路径错误,在MATLAB中重置:
维护与升级
- 更新CVX:重新下载安装包覆盖旧版本,重跑
cvx_setup
- 多用户共享:将CVX安装在
/opt/cvx
,所有用户添加该路径到MATLAB - 卸载:删除CVX目录并从MATLAB路径中移除
引用说明:
本文操作基于CVX官方文档(cvxr.com/cvx/doc/)和MATLAB R2025a环境验证,求解器兼容性参考Gurobi官方指南(gurobi.com/documentation),Linux系统测试环境:Ubuntu 22.04 LTS, CentOS 7.9。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/4789.html