Skip to content

Implement a dualizing reformulation.

Maximilian Stahlberg requested to merge dualize2 into future

The current implementation is a skeleton. Solving with dualize=True will invoke the new Dualization reformulation but it does not actually perform a dualization yet.

You can test with ./test.py -o dualize=True. You will find that this already skips more tests as the skeleton reformulation already requires the problem to be posable in continuous conic form.

Note that the legacy option test_via_dual will work if passed "in the old way" (Problem.set_option or as a keyword argument to Problem or Problem.solve) but you cannot test this with ./test.py as the testbench uses "the new way" of setting options (working with the Problem.options object). However, test_via_dual=None is mapped to dualize=False.

Edited by Maximilian Stahlberg

Merge request reports