如何对数组的值施加约束?

问题描述 投票:0回答:1

我有这个条件,我想知道如何条件它仅在 S = 常量时创建,否则不创建。我希望它在 1:B 范围内。 这就是约束:

@constraint(model, pf[j=1:B], 
            sum(P[j]*A[i] * y[i,j] * f[j] for i in 1:GX)) >= f[j] * L[j] * phi

我想将条件设置为 S != 'constant' 之类的值,其中常数可以是可定制的值。例如,如果 S = 0.01,则创建约束,否则不创建。 有谁知道我该怎么做?

optimization conditional-statements julia julia-jump
1个回答
0
投票

您可以使用常规的 Julia 控制流:

if S == 0.01
    @constraint(
        model,
        pf[j=1:B], 
        sum(P[j]*A[i] * y[i,j] * f[j] for i in 1:GX) >= f[j] * L[j] * phi,
    )
end

如果这不能回答问题,请将其发布到 JuMP 社区论坛 https://jump.dev/forum 并提供更多信息。

© www.soinside.com 2019 - 2024. All rights reserved.