Hi Nicolas,
Thanks for your reply! I talked to my friend about this question last week, and surprisingly he sent me your paper (!), the same one you mentioned in your reply.
I spent some time going through your paper, unfortunately the conditions there do not work for my problem....
Your reply is very helpful for a small test case I'm having. However, for larger test cases, it is a little more complicated than I described in the first post.
Here I'm describing my problem in complete details, and there are two possible problem formulations:
(P1)
minimize_x f(x) = x'*C*x
subject to
x' * A_i * x = a_i, where i = 1,2,....,m
x' * B_j * x <= b_j, where j = 1,2,.....n
we know every B_j is positive semi definite and b_j >=0, thus the inequalities are considered "easy". The real trouble is from the equality constraint x' * A_i * x = a_i, and A_i is not symmetric)
(P2)
minimize_W Tr(P*W)
subject to
Tr(Q_i*W) <= q_i, where i = 1,2,..., s
Tr(R_i*W) <= r_i, where i = 1,2,..., t
rank(W) = 1
W >= 0 and W = W'
in this formulation (P2), the trouble is from the rank-1 constraint, all the other constraints are considered easy since they could be handled by semidefinite programming, therefore I did not mention them in the first post.
I went through several examples at
https://github.com/NicolasBoumal/manopt/tree/master/examples
but it seems after choosing the manifold, I cannot add any other constraints. Am I supposed to put everything (constraints) by defining the manifold? All my other constraints are "easy" ones in the sense of convex optimization, hopefully this won't cause too many troubles for manopt.
Thanks!
Steven