maximizing objective function with equality and inequality constraints

12 views (last 30 days)
Hi,
I want to estimate x_1 ,...,x_4 by maximizing
subject to and ,
which function can help me to solve this problem ,
Also, how can I convert this objective function to be convex if that is possible.
Thanks in advance
  1 Comment
Torsten
Torsten on 20 Jan 2023
Edited: Torsten on 23 Jan 2023
x1=x2=x3=0, x4=1
Should be obvious because the coefficient of x4 has the maximum value of all coefficients.
And your objective function is convex.

Sign in to comment.

Accepted Answer

Aditya
Aditya on 23 Jan 2023
Edited: Aditya on 23 Jan 2023
Hi,
I understand that you want to solve this linear programming problem.
The solution for your example is trivial, as pointed out by @Torsten in comments.
In general, you can also use the linprog function to solve such problems. Here is an example to arrive at the trivial solution for your example.
Based on the documentation of linprog, I have defined the variables:
f = [4.22117991, 4.21111679, 4.22994893, 4.23060394];
Aeq = [1, 1, 1, 1];
lb = [0, 0, 0, 0];
beq = [1];
x = linprog(-f, [], [], Aeq, beq, lb, []);
You can see that the variable x is [0;0;0;1] which is the trivial solution to this problem.
The reason why I have passed negative f ( -f ) is because linprog minimizes the objective function. So, in order to maximize f, we minimize -f.
  8 Comments
Aditya Mahamuni
Aditya Mahamuni on 23 Jun 2023
And what can i do if i want to use the linprog function in simulink and use it at every time step ? Because when i use it, it shows me an error that "the function 'linprog' is not supported for code generation."

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!