How to solve optimization Problem

I want to get vector x that has minimum max absolute subject to H*x=S where H is a matrix and S is a vector with dimension less than x (which implies that there are infinite solutions for this equation but I want the solution which has minimum max absolute) I used MATLAB with this script
NR=2;
NT=3;
H=(randn(NR,NT)+1i*randn(NR,NT))/sqrt(2);
S=(2*randint(NR,1)-1+1i*(2*randint(NR,1)-1))/sqrt(2);
X0=H'*inv(H*H')*S;
X = fmincon(@(x) max(abs(x)),X0,[],[],H,S);
this appears in the command windows
"Local minimum possible. Constraints satisfied.
fmincon stopped because the predicted change in the objective function
is less than the default value of the function tolerance and constraints
are satisfied to within the default value of the constraint tolerance."
I want to find the global minimum I used this script
opts = optimoptions(@fmincon,'Algorithm','interior-point');
problem = createOptimProblem('fmincon','objective',...
@(x) max(abs(x)),'x0',X0,'Aeq',H,'beq',S,'options',opts );
gs = GlobalSearch;
[x,f] = run(gs,problem)
but this appear in the command window
Error using globalsearchnlp (line 109)
All elements of X must be real.
Error in GlobalSearch/run (line 336)
[x,fval,exitflag,output] = ...
I want to find the global minimum any Help?

 Accepted Answer

Matt J
Matt J on 13 Oct 2013
Edited: Matt J on 13 Oct 2013
There are several problems with your code
  1. You appear to be trying to minimize over the space of complex-valued vectors. fmincon works with real-to-real functions and constraints only.
  2. Your objective function is not differentiable.

2 Comments

thank you Mr. Matt but could you tell me how to do this optimization over the space of complex-valued vectors
Matt J
Matt J on 13 Oct 2013
Edited: Matt J on 13 Oct 2013
You must rewrite things in terms of the vector [real(X(:));imag(X(:))], and deal similarly with H and S.
You should also look at fminimax()

Sign in to comment.

More Answers (0)

Categories

Asked:

on 13 Oct 2013

Commented:

on 13 Oct 2013

Community Treasure Hunt

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

Start Hunting!