gpt4 book ai didi

matlab - MATLAB 中的二次约束二次规划 (QCQP)

转载 作者:太空宇宙 更新时间:2023-11-03 20:30:22 24 4
gpt4 key购买 nike

最近我在研究中遇到了二次约束二次规划 (QCQP) 问题。我在 MATLAB 优化工具箱中发现了一些有用的东西,即“fmincon”函数(具有非线性约束的一般非线性优化),它使用“内点算法”来解决我的问题,它包含 8 个变量、1 个等式二次约束和 1 个不等式二次约束. 'fmincon' 带或不带 'Hessian' 和 'Gradient' 提供了很好的解决方案,我唯一不满意的是效率,因为我需要在我的主代码中调用它一百万次。我需要找到一些可能更具体到 QCQP 的东西,可能会提高效率。但是我从 netlib 和 wiki 上找到了很多信息,但是我不知道应该使用哪一个,而且一件一件地尝试会很乏味,我真的需要一些建议。顺便说一下,我主要是在 MATLAB 中为这个问题编程,但是合适的 c/fortran 也很有用。

-严

最佳答案

另一种方法是使用 CVX,available here ,它非常适合 QCQP(在许多其他类型的问题中)。这是解决 QCQP 的代码片段:

close all; clear; clc
n = 10;
H = rand(n); H = H*H'; % make spsd
f = -rand(n,1);
Q = rand(n); Q = Q*Q'; % make spsd
g = -rand(n,1);
cvx_begin
variable x(n)
0.5*x'*Q*x+g'*x <=0
x >= 0
minimize(0.5*x'*H*x + f'*x)
cvx_end

关于matlab - MATLAB 中的二次约束二次规划 (QCQP),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18008628/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com