tfocs_SCD with non-unitary A

(Carl Nettelblad) #1

I am playing around with different problem formulations. After finally reading smooth_dual one more time and expanding the equivalent of the prox call on paper, I think I understand how this is equivalent to eq. (6) in the user guide, IF the affine transform is the identity. Doing trivial changes, like setting A to -A, changes behavior markedly. My understanding right now is that the gradient indicated by the smooth part really goes the wrong way then. With a more general A - trying to put all the expensive parts in the linear operator, I encounter runaway scenarios of very high objective function values.

This is not (really) the scaling issue mentioned in 4.5. It would be good if someone could just confirm that I am not missing something and that the problem definition is not exact anymore if A is different from identity.

(Stephen Becker) #2

Hi Carl,
I don’t think we should lose exactness even if A is non-unitary, other than the perturbation by mu*||x||^2. Can you send me example code illustrating the issue?
And I haven’t completely forgotten about the other emails – will try to get to that soon.

(Carl Nettelblad) #3

I’ll try to repro this in a simpler case. Right now, I’ve been working from the end of empirically observed behavior in a practical problem at one end, and trying to understand behavior of single iterates analytically in the other end.

(Carl Nettelblad) #4

My bad, as a followup, I can just recommend everyone to really use linop_test, again and again, to verify your linear operators.