A new mathematical programming method has been developed and utilized in OPROD, an existing computer code for automatic generation of control rod programs, as an alternative inner-loop routine for the method of approximate programming. The new routine is constructed of a dual feasible direction algorithm, and consists essentially of two stages of iterative optimization procedures, Optimization Procedures I and II. Both follow almost the same algorithm; Optimization Procedure I searches for feasible solutions and Optimization Procedure II optimizes the objective function. Optimization theory and computer simulations have demonstrated that the new routine could find optimum solutions, even if deteriorated initial control rod patterns were given.