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?

 采纳的回答

Matt J
Matt J 2013-10-13
编辑:Matt J 2013-10-13

0 个投票

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 个评论

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 2013-10-13
编辑:Matt J 2013-10-13
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()

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Systems of Nonlinear Equations 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by