simplifying an algebraic expression in 6 variables

1 view (last 30 days)
can you please help me with the following , I am trying to write matlab code to simplyfy this expression :
0.95 x1 -0.85 x2-0.14 x3+0.13 x4 -0.88 x5 -1.52 x6 - 1.64 * sqrt{ ( 0.100 x1 + 0.06 x2 + 1.03 x3 + 0.88 x4+0.02 x5 +0.19x6) ^2 + (0.04 x1 -0.05 x2+0.057 x3+0.15 x4-0.01 x5 -0.08 x6) ^2 }
I want to combine all x1 together and x2 as well ..etc
Thank you in advance
Az.Sa on 7 Jun 2022
Edited: Az.Sa on 7 Jun 2022
I am sorry can you give me a clue how to setup my optimization problem correctly. I am not sure how to construct the code corresponding to the above equation. Also, You are right the expression suppose to be squared if I am applying least square. However, If I want to use least absolute deviation insted of least square how can I deal with that ?

Sign in to comment.

Accepted Answer

Torsten on 7 Jun 2022
Edited: Torsten on 8 Jun 2022
fun = @(x) sum( (y - A.'*x - K*sqrt((B.'*x).^2 + (C.'*x).^2) ).^2 );
Aeq = ones(1,6);
beq = 1;
lb = zeros(1,6);
ub = ones(1,6);
x0 = ones(1,6)/6;
x = fmincon(fun,x0,[],[],Aeq,beq,lb,ub)

Sign in to comment.

More Answers (0)


Find more on Symbolic Math Toolbox in Help Center and File Exchange


Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by