【发布时间】:2019-03-19 21:32:57
【问题描述】:
我一直在使用lpSolveAPI 解决R 中的优化问题,其中包含两个变量。 "
其中一个约束是standarddeviation(ax1,bx2)=1.24。
我无法输入此约束,它会抛出错误消息
"xt的长度必须等于决策变量的个数 lprec"
能否请您在R 中建议合适的包,我可以在其中输入上述约束?
【问题讨论】:
-
也许
simplexrdocumentation.org/packages/boot/versions/1.3-20/topics/simplex 将 >= 和 -
您是否尝试将约束合并到您的目标函数中?如:
if(sd(ax1,bx2)!=1.24) return Inf。在此示例中,我假设您正在最小化一个函数并在不满足约束时返回+Inf,这意味着优化最终会避免不满足约束的值。 -
LPsolve 仅适用于线性问题。涉及标准偏差(涉及决策变量)的约束不是线性的。我不明白你的符号,但这肯定看起来像一个非线性约束。在某些情况下,涉及风险的约束可以表述为凸二次约束,从而允许更广泛的可用求解器集合。
标签: r optimization solver