Certainly if you're given the combinatorial type of the Steiner tree, you can efficiently find its position. The length of each edge is a convex function of the positions of the internal vertices of the tree, so their sum is too. So you can approximate the minimum numerically with convex programming.
On the other hand, this book says that finding approximate solutions to the Euclidean Steiner problem is NP-hard. So the part that is NP-hard must be finding the combinatorial type of the tree. Naturally, many NP-hard problems have a lore of heuristic methods, and the same book is a survey of these methods in the case of the Steiner problem.
Note that the affine independence condition doesn't change very much since the points could be close to lying in a hyperplane.
A final comment which is slightly off topic. Some years ago, my mother found an example where the Steiner tree in R3 of a finite set of points on the unit sphere S2 is knotted.