-
Notifications
You must be signed in to change notification settings - Fork 26
Open
Description
Symmetry reduction does not work properly while doing SOS optimization. Here is a minimal example, which is similar to an example in the SumsOfSquares document. Here, I used poly = sum(x) + sum(x.^4)
instead of poly = sum(x) + sum(x.^2)
import MutableArithmetics as MA
using MultivariatePolynomials
using MultivariateBases
using DynamicPolynomials
@polyvar x[1:3]
poly = sum(x) + sum(x.^4)
using PermutationGroups
G = PermGroup([perm"(1,2,3)",perm"(1,2)"])
import CSDP
solver = CSDP.Optimizer
model = Model(solver)
@variable(model, t)
@objective(model, Max, t)
pattern = Symmetry.Pattern(G, Symmetry.VariablePermutation())
con_ref = @constraint model poly - t in SOSCone() symmetry = pattern
optimize!(model)
value(t)
@kalmarek has checked the problem and said "Indeed this seems to be the problem with SumOfSquares.jl formulation, as SymbolicWedderburn.jl correctly reduces the optimization problem"
For more info:
https://discourse.julialang.org/t/symmetry-reduction-in-sumsofsquares/115727
Metadata
Metadata
Assignees
Labels
No labels