The result obtained using the SeDuMi solver is inaccurate. The optimal solution is not as good as before the optimization.

QQ截图20231007210156

We have no idea what your program is, other than that it involves a function utilizing the exponential cone.

If you have access to Mosek as solver, use it. Otherwise follow the directions at CVXQUAD: How to use CVXQUAD's Pade Approximant instead of CVX's unreliable Successive Approximation for GP mode, log, exp, entr, rel_entr, kl_div, log_det, det_rootn, exponential cone. CVXQUAD's Quantum (Matrix) Entropy & Matrix Log related functions .

It may also be the case that the numerical scaling in your problem is poor.

Please show all CVX and solver output.


This is what I got using mosek.

Have you checked all the input data to make sure all the non-zero input data is within a small number of orders of magnitude of one? If that is not the case, change the units used in the problem, i.e., re-scale to try to get the non-zero input data to be within a small number of orders of magnitude of one.

Also, it’s possible the latest version of Mosek will do better.
Download the latest stable Mosek version, currently 10.1.13, from the Mosek werbsite. You can use that instead of Mosek 9.1.9, which is bundled with CVX 2.2…

To make sure you don’t wind up using Mosek 9.1.9 which is bundled with CVX 2.2:

First download latest Mosek from the Mosek werbsite and install it under MATLAB. Make sure mosekdiag succeeds. Then reinstall CVX so it will find the new solver.

Either delete or rename the mosek directory under CVX (before reinstalling CVX)
or
cvx_solver shows all the versions of all the solvers available to CVX. Choose the Mosek 10.x version, which might be called something like Mosek_2, then use cvx_solver Mosek_2 to get that version, and you can save_prefs.

In any event, cvx_solver will show all the versions available to CVX.

Thank you! I’ll try. When I use SdDuMi, the result is inaccurate/solved. Can I trust this result? It didn’t make my optimization problems better, it made them worse. What causes this?

I wouldn’t trust that result without further investigation by you.

I don’t know what you mean by making the optimization problem worse. Worse than what? Do you already have a feasible solution, and the solution from CVX/SeDuMi is worse than that solution?

As I have said before, you need to check the scaling of the input data. Bad scaling may be causing or contributing to your problem. Also,l if you are using a solver other than Mosek, CVX is employing its Successive Approximation method, which is not very reliable or robust.

I used an alternate optimization algorithm. The above problem is the second step of my iteration, but its value is reduced compared to the first step.

Unsafeguarded (no line search or trust region)Successive Convex Approximation (SCA) or generally, alternating variables optimization are unreliable. It might not descend (for minimization problem), i.e., iterates could get worse. It might not converge to anything; and if it does converge, it might not be to a local optimum of the original problem, let alone a global optimum. The solution of successive iterations, and therefore subproblem inputs, can become wilder and wilder, until at some point the solver fails, or makes erroneous determination of infeasibility or unboundedness.

https://twitter.com/themarklstone/status/1586795881168265216

Don’t apply crude, unsafeguarded (no Trust Region or Line Search) Successive Convex Approximation (SCA) to a new problem … unless your name happens to be Stephen Boyd.

There’s a reason high quality non-convex nonlinear optimization solvers are more than 10 lines long.

Need Help on quad_over_lin
SOS! I used SCA to optimize the variables Psi_hat, but it seemed that the value of the optimization barely changed each time and there is no upward trend
NaN——Status: Infeasible Optimal value (cvx-optval): - Inf
Optimal value is NaN, after 3th iteration of CVX
The reason of causing 'NaN' value in CVX feasibility solve
Why is there an error in reproducing this alternate optimization implemented using the SCA algorithm and penalty function?
HELP! Why the status of the first status is often Unbounded
What’s the possible reason for my Failed status?
How to use CVX solving optimization problem with coordinate desent algorithm?
The result of CVX solver is not the best point
Can this SINR problem be solved by CVX?
CVX status: solved, but the result doesn't satisfy the constraint
May I ask why the optimal solution obtained when solving this problem with the SCA algorithm does not satisfy this inequality constraint?
I am trying to solve Joint optimization problem with the CVX toolbox and second sub problem becomes concave + Convex as the sub problem gives negative powers (Even if I specify nonnegative ). Then program stops running . Please help me in this regardng
CVX: Ineffectiveness of restraints!
Question on BCD in cvx
How should I write the following positive semidefinite constraint in cvx?
Although the status shows field but it can solve for the correct value and there is a slight drop in the output value when convergence is near, what are the reasons for these problems and how can they be solved?
What if the iteration graph does not converge?
How can i represent x^1.15 in cvx
Problem with geometric programming
SCA method. How to solve the problem with Matlab CVX?
Help. Is there any tips for choosing the initial point of the SCA
Using SCA and CVX does not converge
I am a beginner for CVX and I am trying to solve the below problems, however, I get a wrong message of " Cannot perform the operation norm( {mixed convex/constant}, 2 ),出错 UAV (第 196 行) s1_2=norm([1,x])-x;"
I am a beginner for CVX and I am trying to solve the below problems, however, I get a wrong message of " Cannot perform the operation norm( {mixed convex/constant}, 2 ),出错 UAV (第 196 行) s1_2=norm([1,x])-x;"
Can anyone help with Scaling issue(maybe
Disciplined convex programming error: Invalid numeric values (NaNs) may not be used in CVX expressions.
Help! CVX iteratively solves the Taylor series expansion points

May I ask what I should do now?

Perhaps consider using a non-convex nonlinear solver under YALMIP.

Thank you very much for your valuable advice. I’ll keep debugging.