This talk focuses on the low-rank matrix completion problem: one is given a subset of the entries of a low-rank matrix, and asked to find one low-rank matrix consistent with the given observations. An algorithm, termed subspace evolution and transfer (SET), is proposed. We show that the low-rank matrix completion problem is equivalent to find a column space that matches the observations. As a result, it can be casted as an optimization problem on the Grassmann manifold. However, the objective function is not a continuous function of column spaces. The discontinuity creates the so called barriers that prevent gradient-descent methods from reaching a global optimum. To address this problem, we design mechanisms to detect barriers and transfer the estimated column space from one side of the barrier to the another. The resulting SET algorithm exhibits excellent empirical performance.