ampl vs gams MINLP投资组合优化语法

2024-04-19 08:20:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在寻找一个MINLP优化器,以解决投资组合优化问题,其中x是一个向量,S是一个给定的矩阵。x元素依赖于ex;x[i]=g[i].K[i],其中g[i]是整数,K[i]是给定的向量,因此我们需要在最小化目标的同时找到g[i]s。在

我正在考虑使用AMPL或{a2}。主程序是用python编写的。我不确定这些是否是最好的MINLP,但无论如何,这两个网站似乎都有一些例子。对于最小化目标的矩阵乘法,我不清楚是否有一个简单的方法来写这个,我需要把它写成代数展开吗?你能用AMPL语言提供一个x'.S.x操作的例子吗?在

在gams方面,我看到这个包是免费的,只限于有限的使用一些变量。因此,我考虑了AMPL,但是对于较小的问题,如果我不能计算出矩阵向量乘法的AMPL符号,gams可能是解决方案


Tags: 方法a2元素目标网站矩阵整数向量
1条回答
网友
1楼 · 发布于 2024-04-19 08:20:29

AMPL语法非常简单:

sum{i in I, j in I} x[i]*S[i,j]*x[j]

请注意,许多投资组合模型不需要一个成熟的MINLP解算器,但是可以用Cplex和Gurobi等系统中的二次(和SOCP)能力来求解。你的问题有点难以解析(至少对我来说是这样),但我相信你的模型属于这一类。在

相关问题 更多 >