  A subgradient method is presented for solving general convex optimization
problems, the main requirement being that a strictly-feasible point is known. A
feasible sequence of iterates is generated, which converges to within
user-specified error of optimality. Feasibility is maintained with a
line-search at each iteration, avoiding the need for orthogonal projections
onto the feasible region (the operation that limits practicality of traditional
subgradient methods). Lipschitz continuity is not required, yet the algorithm
is shown to possess a convergence rate analogous to rates for traditional
methods, albeit with error measured relatively, whereas traditionally error has
been absolute. The algorithm is derived using an elementary framework that can
be utilized to design other such algorithms.
