凸优化

最小化凸区域上的凸函数

凸优化是使受凸约束的凸目标函数最小化的过程,或等效地使受凸约束的凹目标函数最大化的过程。对于许多凸优化问题,都可以有效地找到满足局部最优性条件的点。因为一个点是局部最优也是全局最优,所以找到一个局部最优就足够解决问题了。非凸问题的凸逼近提供了最优目标值和近似解的边界。

下图展示了凸优化和非凸优化问题的例子。

凸和非凸优化问题

凸优化的应用被发现在金融和工程,包括投资组合优化,设计优化,参数估计,信号处理和最优控制。例如,根据基准投资组合,在风险和跟踪误差上界的情况下,选择收益最大化的股票投资组合的问题可以表述为凸优化问题。

凸优化是寻找一个最小化函数的向量\(x\)的数学问题:

$ $ min_ f (x) $ $ {x}

主题:

\(g_i (x)≤0 \)(非线性不等式约束)

\(Ax≤b\)(线性不等式约束)

\(A_{eq} x=b_{eq}\)(线性等式约束)

\(lb≤x≤ub\)(绑定约束)

其中\(g_i,i = 1,…,m\)是凸函数。

线性规划(LP)和凸二次程序(QP)是凸优化问题。锥优化问题,不等式约束是凸锥,也是凸优化问题。具有线性或凸二次目标和线性和凸二次约束(QCQP)的问题可以表示为二阶锥程序(SOCP),可以用有效的凸优化方法求解。

内点算法是求解凸优化问题的常用算法,可以写成MATLAB®使用矩阵运算和柯列斯基分解或者是阻止低密度脂蛋白的分解优化工具箱™内部点算法的实现线性规划二次程序非线性程序,二阶锥规划适用于大规模问题。

有关求解凸优化问题的更多信息,请参见优化工具箱

参见:优化工具箱非线性规划线性规划二次规划优化设计投资组合优化

Baidu
map