Skip to content

Instantly share code, notes, and snippets.

@pcyin
Last active March 12, 2017 16:05
Show Gist options
  • Save pcyin/e4b9ace2e7b255c6ada309e6fda1b10a to your computer and use it in GitHub Desktop.
Save pcyin/e4b9ace2e7b255c6ada309e6fda1b10a to your computer and use it in GitHub Desktop.
数值优化

你的这个优化问题可能属于『带bilinear约束的bilinear优化问题』(抱歉不知道bilinear怎么翻译)。bilinear的意思是类似于$x \cdot y$这样的乘积。

  • 对于式子(1),如果把式子(4)带入(1),再将(1)展开的话,可以发现,最终的式子里有$x_i \cdot y_j$。这说明优化目标是『bilinear』的。

  • 如果把式子(3)(4)带入(2),替换(2)中的$P_i^{'}$和$d'$的话,可以发现,约束(2)里面有$x_i \cdot x_j$的乘积。这说明约束(2)是『bilinear』的。

这类优化问题一般比较难求解。据我所知matlab里面应该没有合适的函数用来专门求解这个问题(不是十分确定)。最合适的函数应该就是你尝试过的fmincon。我没有学过凸优化,不知道能不能通过某些手段把bilinear的优化问题替换为线性优化或二次优化问题。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment