Suppose I have an integer programming problem, specifically one with a set of binary decision variables $x_i \in \{0, 1\}$. So I'm trying to optimize a function $c=w \cdot x$ where $w$ is a vector of weights, subject to a set of constraints - mainly linear inequalities in $x$, i.e. $Mx \geq b$ for some matrix $M$ and vector $b$.
So I decide to try linear relaxation, i.e. I solve the same problem but where $x$ can take fractional values between 0 and 1. Now let's say that some, but not all, of the $x_i$ in the optimal solution are on the boundary, meaning that they wound up being either 0 or 1 exactly.
Can I then assume that in the solution to the original IP those same $x_i$ will still be those values? Does it depend on what kind of constraints I have?
No, you can't. For example, consider the problem
$$ \eqalign{\text{maximize } & y\cr \text{subject to } & - 2 x + y \le 0\cr & 2 x + y \le 2\cr x, y \in \{0,1\}& \cr}$$
The linear relaxation has optimal solution $x = 1/2, y=1$. But there is no integer programming solution with $y=1$: the optimal solutions of the integer programming problem are $(x,y) = (0,0)$ and $(1,0)$.