Let $G$ be a bipartite graph with two parts $U$ and $V$, and the maximum degree of $G$ is $d$.
I am wondering is there a way to find a large independent set $I$ of G that is more "balanced" than just taking the larger one out of $U$ and $V$? "Balance" means $I$ has some vertices from $U$ and some from $V$. "Large" means $\max(|U|, |V|)-|I|=O(d)$.
Edited: To be more specific of "balanced", here we may assume $|U|=|V|$ and is much larger than $d$. $I$ is balanced means $|I\cap U|/|I\cap V|=\Theta(1)$, i.e., $c\preceq|I\cap U|/|I\cap V|\preceq C$ for some constants $c,C>0$. And $I$ should be large, which means $|U|-|I|= O(d)$.
You can solve the problem via integer linear programming as follows. Let binary decision variables $x_u$ and $y_v$ indicate whether node $u\in U$ or node $v\in V$ is selected, respectively. The problem is to maximize $\sum_u x_u+\sum_v y_v$ subject to linear constraints \begin{align} x_u+y_v &\le 1 &&\text{for $(u,v)\in E$} \\ c \sum_v y_v \le \sum_u x_u &\le C \sum_v y_v \end{align}