# please, I want someone to help me with MATLAB code for solving the non linear constrained equation as given below

1 view (last 30 days)
Ezra Dzarma on 9 Aug 2022
Commented: William Rose on 12 Aug 2022
Objective function Max f= 5/3 x_1^(3/44) x_2^(4/7) x_3^(3/40) x_4^(2/9) x_5^(1/6)
Constraints
17x_1+20x_2+10x_3+0.4x_4+1.5x_5≤240
x_4 ≤ 30
x_5≤ 100
##### 1 CommentShowHide None
John D'Errico on 9 Aug 2022
Please don't add an answer just to make a comment.

William Rose on 9 Aug 2022
Edited: William Rose on 9 Aug 2022
[edit: added lines to display -f(x) and constraint 1 at the solution point.]
Please carefully read the help for fmincon(). The name is short for "function minimization with constraints". Minimize the negative of your function. fmincon() can do exactly what you want, including the constraints. The examples in the help doc will be useful.
%vector x is what you want to find
fun = @(x)-5/3*x(1)^(3/44)*x(2)^(4/7)*x(3)^(3/40)*x(4)^(2/9)*x(5)^(1/6);
x0=[1,1,1,1,1]; %initial guess for the solution
%express first constraint in the form A*x<=b:
A=[17,20,10,0.4,1.5]; b=240;
%express constraints 2 and 3 by defining vectors lb and ub:
lb=[-Inf,-Inf,-Inf,-Inf,-Inf]; %no lower blound constraints
ub=[Inf,Inf,Inf,30,100]; %upper bounds on x(4),x(5)
x=fmincon(fun,x0,A,b,[],[],lb,ub);
Local minimum found that satisfies the constraints. Optimization completed because the objective function is non-decreasing in feasible directions, to within the value of the optimality tolerance, and constraints are satisfied to within the value of the constraint tolerance.
disp(x) %value of x at the solution
1.0376 7.3919 1.9404 30.0000 28.7462
disp(-fun(x)); %value of the function you wanted to maximize
20.5263
disp(A*x') %check constraint 1
240.0000
Note that constraint 1 is met exactly, constraint 2 is met exactly, and constraint 3 is not approached. Good luck.
William Rose on 12 Aug 2022
@John D'Errico, Thank you for that advice.