Problem finding maximum of a nonlinear problem

2 views (last 30 days)
I have the following problem.
Minimize subject to and
I am trying to use fmincon to find this point.
My attempt as solutuion is as follows:
close all
clear
clc
fun = @(x) x(1)+x(2)+x(3); %minimize
lb = [];
ub=[];
x0 = [1 1 1];
A = [];
b=[];
Aeq=[];
beq=[];
x = fmincon(fun,x0,A,b, Aeq, beq, lb, ub, @constraints)
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.
x = 1×3
-1.4142 0.2929 -0.7071
function [c,ceq] = constraints(x)
c=[0 0];
c(1) = (x(2)-1).^2+x(3).^2-1; % <=0
c(2) = x(1).^2+(x(2)-1).^2+x(3).^2-3;
ceq = [];
end
Unfortunately, this does not work, since I get as a result
x =
1.0e+52 *
-8.2469 -0.0000 -0.0000
I know that the solution should be but I cannot see what I am doing wrong. Can someone please help me?
Best regards.
  3 Comments
Jaime De La Mota Sanchis
Jaime De La Mota Sanchis on 15 Jul 2022
@Torsten So, are you telling me that all the problem is that I had a typho on the statement of my problem? Anyway, thanks for the help.
Torsten
Torsten on 15 Jul 2022
Edited: Torsten on 15 Jul 2022
Yes, x^3 produces negative values if x is negative. This makes your problem unbounded.

Sign in to comment.

Answers (0)

Products


Release

R2021a

Community Treasure Hunt

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

Start Hunting!