Do LP codes require a starting vertex?
No. Any reasonable simplex-based LP code can construct a starting vertex (or “basic solution”) for you, given the constraints and the objective function. Most codes go through a so-called two-phase procedure, wherein they first look for a feasible solution, and then work on getting an optimal solution. (The two phases are often grandly titled phase I and phase II.) The first phase, if properly written, can begin at any infeasible basic solution, and commercial codes typically have a so-called crash routine to pick a reasonable start. It is generally not worth going to a lot of trouble to look for a better starting basic solution, unless you have already solved a similar problem. The optimal basis (the list of basic variables) from a similar problem often does help the simplex solver to get good start that substantially reduces the number of iterations to optimality. Commercial codes generally provide for saving an optimal basis and reusing it in this way, but free codes may not. Interi