Add a regularization term to the cost function. This can be a small term to ensure that the solution is unique, such as: small_weight*sum(X.^2)/length(X). Where X contains all unknowns. You can also use a large weight to get a convex cost function, solve that optimization problem, and use it as an initial guess for the new problem with smaller weight. This is similar to Tom's homotopy, except you are modify the cost function rather than the model.
Add a regularization term to the cost function. This can be a small term to ensure that the solution is unique, such as: small_weight*sum(X.^2)/length(X). Where X contains all unknowns. You can also use a large weight to get a convex cost function, solve that optimization problem, and use it as an initial guess for the new problem with smaller weight. This is similar to Tom's homotopy, except you are modify the cost function rather than the model.