I have a mixed integer programing problem as below

\underset{{\bf w}_k }{\max}\sum_{k=1}^K x_k\alpha_k \log_2(1+\gamma_k)

subject to

\sum_{k=1}^K x_k||{\bf w}_k||^2_2\le P

\sum_{k=1}^Kx_k=L

x_k\in\{0,1\}

where,

\gamma_k=\frac{|{\bf h}_k{\bf w}_k|^2}{\sigma^2+\sum_{i=1,i\neq k}^K |{\bf h}_i{\bf w}_i|^2}.

The vectors {\bf h_k}\in\mathbb{C}^{1\times N}, k=1,2,\cdots, K are known. We can store {\bf h}_k in \bf H as {\bf H}\in\mathbb{C}^{K\times N}=[{\bf h}_1; {\bf h}_2;\cdots; {\bf h}_K]

In this problem, {\bf w_k}\in\mathbb{C}^{N\times1},k=1,2,\cdots, K and x_k,k=1,2,\cdots,K are optimization variables. Similarly, {\bf W}\in\mathbb{C}^{N\times K}=[{\bf w}_1, {\bf w}_2,\cdots, {\bf w}_K]