我正在尝试进行二次规划。我有一个亲和力矩阵A
,我必须最大化某些功能x'*A*x
。这基本上与特征匹配有关,即匹配点到标签
这基本上与在加权图中的主导集和二次函数的局部最大化器之间建立联系有关
maximize(f({x} = x^{T}A{x})
受制于
x \epsilon\Delta, \Delta:\sum_{j}x_j=1
为了解决这个问题,我找到了 Pavan 和 Pelillo IEEE PAMI 2007 给出的一种称为复制器方程的方法
一旦给出初始化x(1)
,离散复制器方程可用于获得局部解 x *
x_i(t+1) = x_i(t+1) \frac{(Ax(t))_i}{x(t)^TAx(t)}
当我使用复制方程时,我得到了正确的结果。但是,当我尝试使用 matlab 的 quadprog 函数来解决它时
X = quadprog(-A,[],[],[],Aeq,Beq,s);
我没有得到正确的价值观。假设我想用 7 个标签匹配 7 个点,我定义我的亲和力矩阵,然后使用上面的。然而,使用复制器方程我得到了正确的结果。但是只使用 quadprog 并不能得到正确的结果。有什么建议么?
难道我做错了什么?