# Max-Min Beamforming Problem

#1

I want to formulate the well-known max-min (fairness) beamforming problem for multi user multiple input single output (MU-MISO) antenna system. Where {\bf{Q}}_k \in \mathbb{C}^{Mt \times Mt}, k=1,\cdots,Mr, are given channel correlation matrices for all users and noise is the variance of noise which is taken equal for all users.

I want to solve the max-min optimization problem for beamforming matrices ${\bf{X}}_k$s such that it gives the maximum SINR for all users, subject to total transmit power constraint, P.

This problem has been repeatedly announced as a convex problem in the literature but I do not know how can I formulate it as a CVX problem because the following form gives the DCP programming error for the first equality constraint, SINR(k) == sp/ip;, is there another way to write this constraint?

One may write the SINR(k) == sp-ip;, but this expression is typically negative and leads to close to zero ${\bf{X}}_k$s.

 cvx_begin
variable X(Mt,Mt,Mr) complex semidefinite;
variable Power(Mr,1);
variable SINR(Mr,1);

maximize (min(SINR))

subject to

for k=1:Mr
sp = trace(Q(:,:,k)*Xs(:,:,k));
ip = noise;

for j=1:k-1
ip = ip + trace(Q(:,:,k)*X(:,:,j));
end
for j=k+1:Mr
ip = ip + trace(Q(:,:,k)*X(:,:,j));
end

SINR(k) == sp/ip;                     % signal to interference ratio on kth user
X(:,:,k)==hermitian_semidefinite(Mt);
Power(k)==trace(X(:,:,k));            % transmit power to kth user

end
sum(Power)<=P;                        % total power constraint

cvx-end

(Michael C. Grant) #2

Is the problem convex?

(Michael C. Grant) #3

I don’t think it is, actually; but it may be quasiconvex. Boyd & Vandenberghe talk about how you can solve quasiconvex problems by solving a sequence of convex feasibility problems; check that out.

#4

Thanks Michael, you’re right. This problem is quasiconvex and can be solved by bisection algorithm as explained in the convex optimization book. I have not tried it with CVX yet but it should work.

(Basem El Halawany) #5

were you able to solve this problem?