在Julia中使用Optim.jl向函数添加约束

时间:2017-02-14 14:18:51

标签: optimization julia julia-jump

我正在使用Optim.jl Library来最大化夏普比率值

using Optim
function getSharpeRatioNegative(W,ex_mu,S)
  return  dot(W', ex_mu) / sqrt(dot(W',S*W))  
end
f(W::Vector) = getSharpeRatioNegative(W,ex_mu,S) 
result = optimize(f, [0.2;0.2;0.2;0.2;0.2])

如何添加以下约束:

  1. W的值元素是正数。 (W [i]> 0)
  2. W的值之和为1.(sum(W [1:5])== 1)

1 个答案:

答案 0 :(得分:0)

Optim.jl目前不进行约束优化。 There is a PR to add this, but it's not merged quite yet。查看JuMP进行约束优化。