Sebastian Pokutta
Sebastian Pokutta
The SD steps in blended conditional gradients are not counted correctly anymore in the iteration counter, i.e., they do not increase the iteration counter but the should do not call...
All algorithms should count and report in the state structure: 1. Number of first-order oracle calls so far `\nabla f(x)` 2. Number of zeroth-order oracle calls so far `f(x)` 3....
## TODO - [ ] validate nuclear norm LMO and add clean unit tests (add also various versions: ARPACK, iterative solvers, etc) - [x] add capped SDP cone from CGSDP.jl...
``` lmo = SpectralBlockLMO(big(20.0), M) bx = big.(x) (x, v, primal, dual, trajectory) = FrankWolfe.away_frank_wolfe( f, grad!, lmo, bx, verbose=true, trajectory=true, lazy=true, line_search=FrankWolfe.Adaptive(), ) ``` blows up
add the usual `Ctrl-C` handling to stop the solve but returning feasible solution. Basically we just need to catch it and set a flag in the main loops.
some of the step sizes require relatively expensive calculations. it would be good to make them also `@emphasis` aware and optimize them here and there.