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

I am not asking you to fix the data for my optimization problem. Please note this first, sir. I know that this is my own project. I am aware about the forum will help in resolving the issues while coming across the issues in the code but not entire things need to be solved in this forum. You are thinking too much that you are helping everything required for the users, please come out of that illusion Sir.
Just I am asking about the verification of the data before feeding to the solver and the range of data that can be accepted by the solver (Mosek).
And which data to be verified before feeding to the solver, I mean constraints, objectives, or anything in the optimization problem (that is the reason why I have provided the code in my question)?

My optimization problem is convex only. If you know the answer exactly, then only respond to my question, otherwise leave it Sir. If you know, where to verify the data before feeding to solver, plz explain. Otherwise, let other experts respond to the question.
Better to answer properly before saying proverbs. I am sorry to say this Sir.
I hope that your cooperation will continue for my future questions.

If you do

cvx_solver_settings('write', 'dump.ptf')

then you will get a file which contains the problem Mosek received. You can look around that file ina text editor to see what data exactly the solver gets.

There is no way for CVX user, to somehow check the data between the definition of your CVX problem and calling the solver. What you can do is to ensure your data is reasonable and that the operations appearing in your CVX model are reasonable, so that you can convince yourself that you can expect the final solver model will be reasonable, too.

Thank you so much for the response Sir. I will follow your instructions and run the code. I will reach out to you if I have any issues.

The mosek solver file is shown below:



MATLAB command says that it is a version 10.1.25, but it displayed as 9.1.9.

Please help me in analyzing the data so that I can correct my code and if necessary, use a solver or optimization tool.

I have another doubt regarding programming with the solver, I am using MOSEK solver for the CVX code, Can I write program with the mosek syntax (separate programming is available for mosek)? Can I get out of this issues with it?
Please clarify in these things Sir!
Thanks in advance!

The Mosek version in the PTF file is the version of the binary that was used. So if it says 9.1.9 then 9.1.9 was used by CVX. Looks like you didn’t instruct CVX to use Mosek 10.1 but the older one.

Mosek does not support the JPG format so I am not able to read the file and run it. Maybe if you include it as text.

Everything that can be written using CVX can also be written directly in the solver’s API. Since as @Mark_L_Stone correctly noticed your issues seem to be rather fundamental (lack of control over data magnitude, SCA, etc.) I doubt that switching from CVX to the native solver interface will help anything, it will only make your already complicated life a bit more complicated. My best advice is to first address the fundamental issues mentioned by @Mark_L_Stone . This may, or may not, include abandoning the idea of implementing a reliable alternating optimization algorithm on your own.

MATLAB command displays as follows:

Matlab version : 23.2.0.2485118 (R2023b) Update 6
Architecture : PCWIN64
mosekopt path : E:\mosek\10.1\toolbox\R2017aom\mosekopt.mexw64
MOSEK version : 10.1.25
Test linear solve: Success
Mosekopt works OK. You can use MOSEK in MATLAB.

I am unable to upload .ptf file in this forum, it is accepting only jpg, png files . Hence, I have sent it through jpg file. In fact, I have tried to copy the data and paste it, but it is not accepting ( saying that more users will not be accepted as it is treating @ as one user).

When it comes to Alternating Optimization, we are not the first to implement it using the CVX tool. There are good IEEE Transactions papers that use this AO algorithm.
I want you to analyze my .ptf file and please help me in resolving it Sir.

I am thinking to send this data through mail or some medium. Please provide the medium so that I can send you the data Sir. Please help in this matter. I am struggling for last 30 days on this issues.

I understand you have Mosek 10.1 installed, but apparently when you use CVX you instruct it to use the other Mosek installation. cvx_setup gives you all the Mosek versions it found and you have to choose one using cvx_solver. Or if you want then just delete Mosek 9 from your CVX installation and then fix the settings until you get CVX to use your Mosek 10.

You can always copy paste any text using the preformatted text button.

Like here
@and here
@and here
Task ''
    Written by MOSEK v9.1.9
    problemtype: Conic Problem
    numvar:    42
    numcon:    17
    numcone:   7
    numanz:    52
Objective ''
    Minimize + 1e+2 @x0 - 1.31077231617487e-2 @x10 + 1e+2 @x12 + 1e+2 @x13 + 1e+2 @x15
        + 1e+2 @x17 + 1e+2 @x19 + 1.4142135623731 @x21 + 1.05235488562602e-3 @x23
        + 1.4142135623731 @x24 + 2.90114048841379e-2 @x25 + 1.4142135623731 @x27
        + 1.4142135623731 @x30 + 1.4142135623731 @x33 - 2.10854919665757e-1 @x34
        + 1.4142135623731 @x36 - @x39
Constraints
    [0] + 2 @x22
    [0] + 2.76879455606092e-2 @x25
    [0] + 2 @x28
    [0] + 2 @x31
    [-4.42396508569285e-3] + 2 @x37
    [1.48268689995677e-5] + @x1 - 1.77875842403729e-5 @x10 - @x13 + @x14 + 3.0967106784247e-4 @x26
        + 1.53145892515714e-4 @x34
    [1.48268689995677e-5] + @x2 - 2.12297263306913e-5 @x10 - @x15 + @x16 + 1.26779993588125e-3 @x25
        + 3.78182733095547e-5 @x29 + 6.59487748199675e-4 @x34
    [1.48268689995677e-5] + @x3 - 2.09414279051702e-5 @x10 - @x17 + @x18 + 1.75481385053864e-4 @x25
        + 3.28617764046278e-5 @x32 + 2.1406956858667e-4 @x34
    [1.48268689995677e-5] + @x4 - 4.36139157343295e-4 @x10 - @x19 + @x20 + 8.23900866911383e-5 @x25
        + 7.55676815633548e-5 @x35
    [0] + @x5 - 1.4142135623731 @x23
    [0] + @x6 - 1.4142135623731 @x26
    [0] + @x7 - 1.4142135623731 @x29
    [0] + @x8 - 1.4142135623731 @x32
    [0] + @x9 - 1.4142135623731 @x35
    [-1.48268689995677e-5] - @x0 + 1.31081881599046e-4 @x10 + @x11 - @x12 - 1.05235488562602e-5 @x23
        - 5.66954366691454e-4 @x25 - 7.06837633747459e-6 @x34
    [0] + 2.04027889319358 @x38 - @x40
    [0] + 2.11561871206655e-1 @x34 + 3.67879441171442e-1 @x41
Variables
    @x0 [0;+inf]
    @x1 [0;+inf]
    @x2 [0;+inf]
    @x3 [0;+inf]
    @x4 [0;+inf]
    @x5 [0;+inf]
    @x6 [0;+inf]
    @x7 [0;+inf]
    @x8 [0;+inf]
    @x9 [0;+inf]
    @x10 [0;+inf]
    @x11 [0;+inf]
    @x12 [0;+inf]
    @x13 [0;+inf]
    @x14 [0;+inf]
    @x15 [0;+inf]
    @x16 [0;+inf]
    @x17 [0;+inf]
    @x18 [0;+inf]
    @x19 [0;+inf]
    @x20 [0;+inf]
    [RSOC(3)]
        @x21
        @x23
        @x22
    [RSOC(3)]
        @x24
        @x26
        @x25
    [RSOC(3)]
        @x27
        @x29
        @x28
    [RSOC(3)]
        @x30
        @x32
        @x31
    [RSOC(3)]
        @x33
        @x35
        @x34
    [RSOC(3)]
        @x36
        @x38
        @x37
    [PEXP]
        @x41
        @x40
        @x39

Please help me analyze the data and correct me if I am making any mistake

mosek 10.1.25 only sir installed on my system, but it is taking mosek 9.1.9 (which is not there in my computer at all)

You have Mosek 9.1.9 installed, it is the one that comes bundled in the CVX installation. Choose a different Mosek from the list displayed by cvx_setup if you want to use it. Probably Mosek_2 or something.

This problem solves very nicely

Interior-point solution summary
  Problem status  : PRIMAL_AND_DUAL_FEASIBLE
  Solution status : OPTIMAL
  Primal.  obj: 1.7349102716e-03    nrm: 2e+03    Viol.  con: 3e-12    var: 2e-12    acc: 0e+00  
  Dual.    obj: 1.7349105113e-03    nrm: 1e+02    Viol.  con: 0e+00    var: 9e-09    acc: 1e-13

Remove all quiet from your code, study similar log outputs for the other problems being solved, consult the numerical debugging hints in sections 8.1-8.3 of 8 Debugging Tutorials — MOSEK Optimization Toolbox for MATLAB 10.1.27

Thanks Sir. I will try to follow the instructions.