Problem finding maximum of a nonlinear problem

2 visualizzazioni (ultimi 30 giorni)
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 Commenti
Jaime De La Mota Sanchis
Jaime De La Mota Sanchis il 15 Lug 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 il 15 Lug 2022
Modificato: Torsten il 15 Lug 2022
Yes, x^3 produces negative values if x is negative. This makes your problem unbounded.

Accedi per commentare.

Risposte (0)

Prodotti


Release

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by