Comments (5)
I actually put directly the first two in a more optimized way...
What do you mean by "vector form"? You mean getting Array arguments rather than Hermitian or Symmetric ones?
from proximaloperators.jl.
The variables in MathProgBase corresponding to a SDP cone are represented in a single vector according to loadproblem!
in the link in my original post. So to go from the vector to a Symmetric one would do something like
# Converts a vector representation of a symmetrix matrix.
# The off diagonal elements are assumed to be scaled by a factor of sqrt(2) in the input.
function vec2symmetric(x::AbstractVector)
y = length(x)
n = try
Int(sqrt(1/4+2*y)-1/2)
catch
error("Invalid size of Symmetric matrix represented as vector")
end
A = zeros(n,n)
for j = 1:n, i = j:n
fac = (i==j ? 1.0 : 1.0/sqrt(2))
A[i,j] = x[k]*fac
k = k+1
end
return Symmetric(A, :L)
end
It would be nice if the projection could be done without explicitly constructing this matrix every time prox is called. In particular, there used to be a julia type SymmetricRFP
and corresponding LAPACK commands to do operations on the vector form. I'm still trying to research if it is coming back or if there is a good alternative.
from proximaloperators.jl.
Great that you added Exp cones, that will be very useful for me! I created a PR #3 for SDP in packed matrix form, do what you want with it ;). Not sure why it failed in nightly v0.6
from proximaloperators.jl.
Last item (:SOCRotated, implemented by indRotatedSOC
) solved by #13. Closing.
from proximaloperators.jl.
Great job! I'll definitely use this. I'm planning on releasing a package for first order methods that is using this, probably before summer. It would be nice with some input from you, so you have somewhere we could chat?
from proximaloperators.jl.
Related Issues (20)
- Add prox! method for IndPSD handling matrices
- possible test failure in upcoming Julia version 1.5 HOT 1
- Projection on Stiefel manifold HOT 1
- Polishing docstrings
- Computing proximal operator of a constrained convex function HOT 5
- Nonnegative least squares example HOT 3
- TagBot trigger issue HOT 18
- TV norm prox HOT 6
- Replace exponential cone projection? HOT 3
- Lightweight “base” package with core definitions
- Sums of norms HOT 2
- SqrNormL2 expects λ to be positive HOT 3
- Is ProximableFunction no longer supported? HOT 2
- calculus function fields HOT 4
- nonconvex prox calculus rule HOT 1
- Multi-threaded operators evaluation
- Improve pretty printing HOT 3
- GPU support via CuArrays.jl HOT 12
- Prox of Sum HOT 2
- Locally Low-Rank operator HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from proximaloperators.jl.