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

Yahia
Yahia 2013년 10월 13일
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에 대해 자세히 알아보기

질문:

2013년 10월 13일

댓글:

2013년 10월 13일

Community Treasure Hunt

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

Start Hunting!

Translated by