如何在具有约束的matlab中求解非凹二次函数。我尝试使用 quadprog 但它不起作用
我必须优化一个函数 f=x'Ax,其约束条件是 xs 的总和等于 1 和 0<=x<=1。我的函数不是凹的。所以我只需要最大化。即使全局会更好,如果我找到局部最大值也没关系。
我尝试使用 matlab 的 quadprog 函数。但是,它的结果并不是那么好。我不知道它会终止,但结果并非如此。我想要一些只会迭代次数的东西,我告诉它并给我结果
我正在尝试实现这样的东西
好吧,我的问题场景是我有一组点和标签。所以工作是将点与标签匹配。我用所有可能的(节点,标签)对定义了一个图。并定义一个大小的亲和矩阵(number_node_label 对,number_node_label 对)
我想最大化函数 x'Ax 与 xs 之和 = 1 的约束。所有 xs >=0 即点位于单纯形中。
对于我的亲和力矩阵
A(u,v) 其中 u 和 v 是点之一,标签对即 u=point1,label1 v=point2, label2 假设
A(u,v) = exp(-abs(||point1-point2||-||label1-label2||)) / sigma A(u,v) = 0 如果 u==v
我想要类似复制器方程的东西